X-Git-Url: http://git.silcnet.org/gitweb/?a=blobdiff_plain;f=lib%2Fsilcutil%2Fbeos%2Fsilcbeossockconn.c;h=875442cb0a9da313371e79ac429a790361dce553;hb=40f8443d8d3a6577336ee66d18e04d9ac4d956bb;hp=3b26deec127abe927e45526c0714f5ba7f0f33b2;hpb=a818c5b5411bbc4436d1c5f011236985c96bb787;p=silc.git diff --git a/lib/silcutil/beos/silcbeossockconn.c b/lib/silcutil/beos/silcbeossockconn.c index 3b26deec..875442cb 100644 --- a/lib/silcutil/beos/silcbeossockconn.c +++ b/lib/silcutil/beos/silcbeossockconn.c @@ -22,7 +22,7 @@ #ifdef SILC_BEOS_BONE #include "../unix/silcunixsockconn.c" #else -#include "silcincludes.h" +#include "silc.h" /* Writes data from encrypted buffer to the socket connection. If the data cannot be written at once, it will be written later with a timeout. @@ -52,6 +52,13 @@ int silc_socket_write(SilcSocketConnection sock) return -1; } + if (ret < src->len) { + SILC_LOG_DEBUG(("Wrote data %d of %d bytes, will write rest later", + ret, src->len)); + silc_buffer_pull(src, ret); + return -2; + } + silc_buffer_pull(src, ret); } @@ -109,7 +116,7 @@ int silc_socket_read(SilcSocketConnection sock) /* Returns human readable socket error message */ -bool silc_socket_get_error(SilcSocketConnection sock, char *error, +SilcBool silc_socket_get_error(SilcSocketConnection sock, char *error, SilcUInt32 error_len) { char *err;