X-Git-Url: http://git.silcnet.org/gitweb/?a=blobdiff_plain;f=lib%2Fsilcsftp%2Fsftp_util.h;h=fe92bd5850154c9c9d400be881fa1fc325b2f8da;hb=1ea936cbf1bb3b19bd55839b904ef59ada84b8b5;hp=ac43b06a9de8fdadce3e93963ccc18e4ad4f818b;hpb=2dc218143c7859f7529396dc121ae08e2fd78da0;p=silc.git diff --git a/lib/silcsftp/sftp_util.h b/lib/silcsftp/sftp_util.h index ac43b06a..fe92bd58 100644 --- a/lib/silcsftp/sftp_util.h +++ b/lib/silcsftp/sftp_util.h @@ -1,6 +1,6 @@ /* - sftp_util.h + sftp_util.h Author: Pekka Riikonen @@ -20,7 +20,7 @@ #ifndef SFTP_UTIL_H #define SFTP_UTIL_H -typedef uint32 SilcSFTPPacket; +typedef SilcUInt32 SilcSFTPPacket; /* SFTP packet types */ #define SILC_SFTP_INIT 1 @@ -61,12 +61,16 @@ typedef uint32 SilcSFTPPacket; /* Encodes a SFTP packet of type `packet' of length `len'. The variable argument list is encoded as data payload to the buffer. Returns the encoded packet or NULL on error. The caller must free the returned - buffer. */ -SilcBuffer silc_sftp_packet_encode(SilcSFTPPacket packet, uint32 len, ...); + buffer. If `packet_buf' is non-NULL then the new packet data is put + to that buffer instead of allocating new one. If the new data cannot + fit to `packet_buf' will be reallocated. */ +SilcBuffer silc_sftp_packet_encode(SilcSFTPPacket packet, + SilcBuffer packet_buf, SilcUInt32 len, ...); /* Same as silc_sftp_packet_encode but takes the variable argument list pointer as argument. */ -SilcBuffer silc_sftp_packet_encode_vp(SilcSFTPPacket packet, uint32 len, +SilcBuffer silc_sftp_packet_encode_vp(SilcSFTPPacket packet, + SilcBuffer packet_buf, SilcUInt32 len, va_list vp); /* Decodes the SFTP packet data `data' and return the SFTP packet type. @@ -74,7 +78,7 @@ SilcBuffer silc_sftp_packet_encode_vp(SilcSFTPPacket packet, uint32 len, NULL if error occurred during decoding. */ SilcSFTPPacket silc_sftp_packet_decode(SilcBuffer packet, unsigned char **payload, - uint32 *payload_len); + SilcUInt32 *payload_len); /* Encodes the SFTP attributes to a buffer and returns the allocated buffer. The caller must free the buffer. */ @@ -91,19 +95,19 @@ void silc_sftp_attr_free(SilcSFTPAttributes attr); void silc_sftp_name_add(SilcSFTPName name, const char *short_name, const char *long_name, SilcSFTPAttributes attrs); -/* Encodes the SilcSFTPName to a buffer and returns the allocated buffer. +/* Encodes the SilcSFTPName to a buffer and returns the allocated buffer. The caller must free the buffer. */ SilcBuffer silc_sftp_name_encode(SilcSFTPName name); /* Decodes a SilcSFTPName structure from the `buffer' that must include `count' many name, longname and attribute values. Returns the allocated structure or NULL on error. */ -SilcSFTPName silc_sftp_name_decode(uint32 count, SilcBuffer buffer); +SilcSFTPName silc_sftp_name_decode(SilcUInt32 count, SilcBuffer buffer); /* Frees the name context and its internals. */ void silc_sftp_name_free(SilcSFTPName name); /* Maps errno to SFTP status message. */ -SilcSFTPStatus silc_sftp_map_errno(int err); +SilcSFTPStatus silc_sftp_map_errno(SilcResult err); #endif /* SFTP_UTIL_H */