Files
mars-libowfat/buffer/buffer_init.c
leitner b7b8a0efc1 gcc 15 and C23 force some union trickery on buffer.h :-(
add a few buffer_init*_forread variants to pretend we have type safety
  make sure buffer_init_staticcontents handles flushing attempts
2025-04-22 09:32:03 +00:00

19 lines
392 B
C

#include <libowfat/buffer.h>
void buffer_init(buffer* b,ssize_t (*op)(int fd,const void* buf,size_t l),int fd,
char* y,size_t ylen) {
b->op.wop=op;
b->fd=fd;
b->x=y;
b->a=ylen;
b->p=0;
b->n=0;
b->cookie=0;
b->deinit=0;
}
void buffer_init_forread(buffer* b,ssize_t (*op)(int fd,void* buf,size_t l),int fd,
char* y,size_t ylen) {
buffer_init(b,(void*)op,fd,y,ylen);
}