X-Git-Url: http://git.silcnet.org/gitweb/?a=blobdiff_plain;f=lib%2Fsilcutil%2Fsilcfileutil.h;h=b3b0312c31b14cac69ea23e78f411bf9657dfc7c;hb=e7b6c157b80152bf9fb9266e6bdd93f9fb0db776;hp=80e9d99a45be468e4ec1a3942af1bf135b8e2797;hpb=cb7c2ffa5dbe4332ca22ddb46b0517aadbf49714;p=silc.git diff --git a/lib/silcutil/silcfileutil.h b/lib/silcutil/silcfileutil.h index 80e9d99a..b3b0312c 100644 --- a/lib/silcutil/silcfileutil.h +++ b/lib/silcutil/silcfileutil.h @@ -4,7 +4,7 @@ Author: Pekka Riikonen - Copyright (C) 1997 - 2005 Pekka Riikonen + Copyright (C) 1997 - 2007 Pekka Riikonen This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -41,7 +41,8 @@ * * Opens a file indicated by the filename `filename' with flags indicated * by `flags'. The opening permission defaults to 0600. The `flags' - * are defined in open(2). + * are defined in open(2). Returns the opened file descriptor or -1 on + * error. * ***/ int silc_file_open(const char *filename, int flags); @@ -57,6 +58,7 @@ int silc_file_open(const char *filename, int flags); * Opens a file indicated by the filename `filename' with flags indicated * by `flags'. The argument `mode' specifies the permissions to use in * case a new file is created. The `flags' are defined in open(2). + * Returns the opened file descriptor or -1 on error and sets silc_errno. * ***/ int silc_file_open_mode(const char *filename, int flags, int mode); @@ -69,7 +71,8 @@ int silc_file_open_mode(const char *filename, int flags, int mode); * * DESCRIPTION * - * Reads data from file descriptor `fd' to `buf'. + * Reads data from file descriptor `fd' to `buf'. Returns the amount of + * bytes read, 0 on EOF or -1 on error and sets silc_errno. * ***/ int silc_file_read(int fd, unsigned char *buf, SilcUInt32 buf_len); @@ -82,7 +85,8 @@ int silc_file_read(int fd, unsigned char *buf, SilcUInt32 buf_len); * * DESCRIPTION * - * Writes `buffer' of length of `len' to file descriptor `fd'. + * Writes `buffer' of length of `len' to file descriptor `fd'. Returns + * the amount of bytes written, 0 on EOF or -1 on error and sets silc_errno. * ***/ int silc_file_write(int fd, const char *buffer, SilcUInt32 len); @@ -96,6 +100,7 @@ int silc_file_write(int fd, const char *buffer, SilcUInt32 len); * DESCRIPTION * * Closes file descriptor previously opened with silc_file_open(). + * Returns 0 on success or -1 on error and sets silc_errno. * ***/ int silc_file_close(int fd); @@ -117,7 +122,8 @@ int silc_file_set_nonblock(int fd); * * SYNOPSIS * - * char *silc_file_readfile(const char *filename, SilcUInt32 *return_len); + * char *silc_file_readfile(const char *filename, SilcUInt32 *return_len, + * SilcStack stack); * * DESCRIPTION * @@ -129,8 +135,13 @@ int silc_file_set_nonblock(int fd); * If the `return_len' pointer is not NULL, it's filled with the length of * the file. * + * If `stack' is non-NULL the returned buffer is allocated from `stack'. + * The allocation consumes `stack' so caller should push the stack before + * calling this function and pop it later. + * ***/ -char *silc_file_readfile(const char *filename, SilcUInt32 *return_len); +char *silc_file_readfile(const char *filename, SilcUInt32 *return_len, + SilcStack stack); /****f* silcutil/SilcFileUtilAPI/silc_file_writefile *