summaryrefslogtreecommitdiff
path: root/userland/libc/include
diff options
context:
space:
mode:
authorAnton Kling <anton@kling.gg>2023-11-22 21:07:36 +0100
committerAnton Kling <anton@kling.gg>2023-11-22 21:07:36 +0100
commitbf2d121899c028eed140b679b4e059db8af91fe8 (patch)
tree3e3fe6cc4c6cfe7090fb8ab8a2141f8ad9788631 /userland/libc/include
parentf0af695b6c3289a041e8fce8926721063796c596 (diff)
LibC: Add fflush() and buffer writes to file descriptors
Diffstat (limited to 'userland/libc/include')
-rw-r--r--userland/libc/include/stdio.h10
1 files changed, 6 insertions, 4 deletions
diff --git a/userland/libc/include/stdio.h b/userland/libc/include/stdio.h
index 43700e0..8ac4e59 100644
--- a/userland/libc/include/stdio.h
+++ b/userland/libc/include/stdio.h
@@ -28,6 +28,7 @@ struct __IO_FILE {
size_t (*write)(FILE *, const unsigned char *, size_t);
size_t (*read)(FILE *, unsigned char *, size_t);
int (*seek)(FILE *, long, int);
+ void (*fflush)(FILE *);
long offset_in_file;
int buffered_char;
int has_buffered_char;
@@ -35,6 +36,8 @@ struct __IO_FILE {
uint8_t is_eof;
uint8_t has_error;
uint64_t file_size;
+ uint8_t *write_buffer;
+ uint32_t write_buffer_stored;
uint8_t *read_buffer;
uint32_t read_buffer_stored;
uint32_t read_buffer_has_read;
@@ -44,6 +47,7 @@ struct __IO_FILE {
size_t write_fd(FILE *f, const unsigned char *s, size_t l);
size_t read_fd(FILE *f, unsigned char *s, size_t l);
int seek_fd(FILE *stream, long offset, int whence);
+void fflush_fd(FILE *f);
typedef struct {
int fd;
@@ -114,8 +118,6 @@ int fsetpos(FILE *stream, const fpos_t *pos);
int fgetpos(FILE *restrict stream, fpos_t *restrict pos);
char *tmpnam(char *s);
int rename(const char *old, const char *new);
-size_t getdelim(char ** lineptr, size_t * n,
- int delimiter, FILE * stream);
-size_t getline(char ** lineptr, size_t * n,
- FILE * stream);
+size_t getdelim(char **lineptr, size_t *n, int delimiter, FILE *stream);
+size_t getline(char **lineptr, size_t *n, FILE *stream);
#endif