1
0
Fork 0
mirror of https://gitlab.com/sortix/sortix.git synced 2023-02-13 20:55:38 -05:00

Update libc/stdio/fdio to current coding conventions.

This commit is contained in:
Jonas 'Sortie' Termansen 2013-07-11 18:29:11 +02:00
parent 2fa4df7576
commit 8707a0d309

View file

@ -17,7 +17,7 @@
You should have received a copy of the GNU Lesser General Public License You should have received a copy of the GNU Lesser General Public License
along with the Sortix C Library. If not, see <http://www.gnu.org/licenses/>. along with the Sortix C Library. If not, see <http://www.gnu.org/licenses/>.
stdio/fdio.c stdio/fdio.cpp
Handles the file descriptor backend for the FILE* API. Handles the file descriptor backend for the FILE* API.
*******************************************************************************/ *******************************************************************************/
@ -33,11 +33,11 @@
#include "fdio.h" #include "fdio.h"
const int FDIO_WRITING = (1<<0); const int FDIO_WRITING = 1 << 0;
const int FDIO_READING = (1<<1); const int FDIO_READING = 1 << 1;
const int FDIO_APPEND = (1<<2); const int FDIO_APPEND = 1 << 2;
const int FDIO_ERROR = (1<<3); const int FDIO_ERROR = 1 << 3;
const int FDIO_EOF = (1<<4); const int FDIO_EOF = 1 << 4;
typedef struct fdio_struct typedef struct fdio_struct
{ {
@ -60,7 +60,8 @@ static size_t fdio_read(void* ptr, size_t size, size_t nmemb, void* user)
{ {
uint8_t* buf = (uint8_t*) ptr; uint8_t* buf = (uint8_t*) ptr;
fdio_t* fdio = (fdio_t*) user; fdio_t* fdio = (fdio_t*) user;
if ( !(fdio->flags & FDIO_READING) ) { errno = EBADF; return 0; } if ( !(fdio->flags & FDIO_READING) )
return errno = EBADF, 0;
size_t sofar = 0; size_t sofar = 0;
size_t total = size * nmemb; size_t total = size * nmemb;
while ( sofar < total ) while ( sofar < total )
@ -80,7 +81,8 @@ static size_t fdio_write(const void* ptr, size_t size, size_t nmemb, void* user)
{ {
const uint8_t* buf = (const uint8_t*) ptr; const uint8_t* buf = (const uint8_t*) ptr;
fdio_t* fdio = (fdio_t*) user; fdio_t* fdio = (fdio_t*) user;
if ( !(fdio->flags & FDIO_WRITING) ) { errno = EBADF; return 0; } if ( !(fdio->flags & FDIO_WRITING) )
return errno = EBADF, 0;
size_t sofar = 0; size_t sofar = 0;
size_t total = size * nmemb; size_t total = size * nmemb;
while ( sofar < total ) while ( sofar < total )
@ -143,7 +145,7 @@ static int fdio_close(void* user)
return result; return result;
} }
int fdio_open_descriptor(const char* path, const char* mode) extern "C" int fdio_open_descriptor(const char* path, const char* mode)
{ {
int omode = 0; int omode = 0;
int oflags = 0; int oflags = 0;
@ -169,7 +171,7 @@ int fdio_open_descriptor(const char* path, const char* mode)
return open(path, omode | oflags, 0666); return open(path, omode | oflags, 0666);
} }
int fdio_install_fd(FILE* fp, int fd, const char* mode) extern "C" int fdio_install_fd(FILE* fp, int fd, const char* mode)
{ {
fdio_t* fdio = (fdio_t*) calloc(1, sizeof(fdio_t)); fdio_t* fdio = (fdio_t*) calloc(1, sizeof(fdio_t));
if ( !fdio ) if ( !fdio )
@ -210,7 +212,7 @@ int fdio_install_fd(FILE* fp, int fd, const char* mode)
return 1; return 1;
} }
int fdio_install_path(FILE* fp, const char* path, const char* mode) extern "C" int fdio_install_path(FILE* fp, const char* path, const char* mode)
{ {
int fd = fdio_open_descriptor(path, mode); int fd = fdio_open_descriptor(path, mode);
if ( fd < 0 ) if ( fd < 0 )
@ -220,7 +222,7 @@ int fdio_install_path(FILE* fp, const char* path, const char* mode)
return 1; return 1;
} }
FILE* fdio_new_fd(int fd, const char* mode) extern "C" FILE* fdio_new_fd(int fd, const char* mode)
{ {
FILE* fp = fnewfile(); FILE* fp = fnewfile();
if ( !fp ) if ( !fp )
@ -230,7 +232,7 @@ FILE* fdio_new_fd(int fd, const char* mode)
return fp; return fp;
} }
FILE* fdio_new_path(const char* path, const char* mode) extern "C" FILE* fdio_new_path(const char* path, const char* mode)
{ {
FILE* fp = fnewfile(); FILE* fp = fnewfile();
if ( !fp ) if ( !fp )
@ -240,12 +242,12 @@ FILE* fdio_new_path(const char* path, const char* mode)
return fp; return fp;
} }
FILE* fdopen(int fd, const char* mode) extern "C" FILE* fdopen(int fd, const char* mode)
{ {
return fdio_new_fd(fd, mode); return fdio_new_fd(fd, mode);
} }
FILE* fopen(const char* path, const char* mode) extern "C" FILE* fopen(const char* path, const char* mode)
{ {
return fdio_new_path(path, mode); return fdio_new_path(path, mode);
} }