s = socket(AF_UNIX, SOCK_STREAM, 0);
if (s < 0) {
- lprintf(1, "Can't create socket: %s\n",
+ lprintf(1, "Can't create socket[%s]: %s\n",
+ sockpath,
strerror(errno));
return(-1);
}
if (connect(s, (struct sockaddr *) &addr, sizeof(addr)) < 0) {
- lprintf(1, "Can't connect: %s\n",
+ lprintf(1, "Can't connect [%s]: %s\n",
+ sockpath,
strerror(errno));
close(s);
return(-1);
return rc;
}
+int StrBuf_ServGetBLOBBuffered(StrBuf *buf, long BlobSize)
+{
+ wcsession *WCC = WC;
+ const char *Err;
+ int rc;
+
+ rc = StrBufReadBLOBBuffered(buf,
+ WCC->ReadBuf,
+ &WCC->ReadPos,
+ &WCC->serv_sock,
+ 1,
+ BlobSize,
+ NNN_TERM,
+ &Err);
+ if (rc < 0)
+ {
+ lprintf(1, "Server connection broken: %s\n",
+ Err);
+ wc_backtrace();
+ WCC->serv_sock = (-1);
+ WCC->connected = 0;
+ WCC->logged_in = 0;
+ }
+ return rc;
+}
+
int StrBuf_ServGetBLOB(StrBuf *buf, long BlobSize)
{
wcsession *WCC = WC;