* use strbuffer as wprintf backend
[citadel.git] / webcit / tcp_sockets.c
index e94c8a5fac36e78813049fc2d1df811de7f77017..fa5429d32b8099f4381af5d51e4863fe9b5ece04 100644 (file)
@@ -182,7 +182,7 @@ int StrBuf_ServGetln(StrBuf *buf)
        const char *ErrStr;
        int rc;
 
-       rc = StrBufTCP_read_line(buf, WC->serv_sock, 0, &ErrStr);
+       rc = StrBufTCP_read_line(buf, &WC->serv_sock, 0, &ErrStr);
        if (rc < 0)
        {
                lprintf(1, "Server connection broken: %s\n",
@@ -195,6 +195,24 @@ int StrBuf_ServGetln(StrBuf *buf)
        return rc;
 }
 
+int StrBuf_ServGetBLOB(StrBuf *buf, long BlobSize)
+{
+       const char *Err;
+       int rc;
+       
+       rc = StrBufReadBLOB(buf, &WC->serv_sock, 1, BlobSize, &Err);
+       if (rc < 0)
+       {
+               lprintf(1, "Server connection broken: %s\n",
+                       Err);
+               wc_backtrace();
+               WC->serv_sock = (-1);
+               WC->connected = 0;
+               WC->logged_in = 0;
+       }
+       return rc;
+}
+
 /**
  * \brief send binary to server
  * \param buf the buffer to write to citadel server