projects
/
citadel.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (parent:
dffda67
)
serv_read_binary(): abort if the server status returns anything else then 6xx
author
Wilfried Goesgens
<dothebart@citadel.org>
Thu, 14 Jun 2012 22:05:21 +0000
(
00:05
+0200)
committer
Wilfried Goesgens
<dothebart@citadel.org>
Thu, 14 Jun 2012 22:05:21 +0000
(
00:05
+0200)
webcit/tcp_sockets.c
patch
|
blob
|
history
diff --git
a/webcit/tcp_sockets.c
b/webcit/tcp_sockets.c
index e45231f56a3dd21eba074192ca3facc0d4012ae8..e163c9b57f4cc7d8a7bdf4a11a239f22db38c90f 100644
(file)
--- a/
webcit/tcp_sockets.c
+++ b/
webcit/tcp_sockets.c
@@
-396,13
+396,14
@@
int serv_read_binary(StrBuf *Ret, size_t total_len, StrBuf *Buf)
wcsession *WCC = WC;
size_t bytes_read = 0;
size_t this_block = 0;
wcsession *WCC = WC;
size_t bytes_read = 0;
size_t this_block = 0;
- int rc;
+ int rc = 6;
+ int ServerRc = 6;
if (Ret == NULL) {
return -1;
}
if (Ret == NULL) {
return -1;
}
- while (
bytes_read < total_len
) {
+ while (
(bytes_read < total_len) && (ServerRc == 6)
) {
if (WCC->serv_sock==-1) {
FlushStrBuf(Ret);
if (WCC->serv_sock==-1) {
FlushStrBuf(Ret);
@@
-410,7
+411,8
@@
int serv_read_binary(StrBuf *Ret, size_t total_len, StrBuf *Buf)
}
serv_printf("READ "SIZE_T_FMT"|"SIZE_T_FMT, bytes_read, total_len-bytes_read);
}
serv_printf("READ "SIZE_T_FMT"|"SIZE_T_FMT, bytes_read, total_len-bytes_read);
- if ( (rc = StrBuf_ServGetln(Buf) > 0) && (GetServerStatus(Buf, NULL) == 6) )
+ if ( (rc = StrBuf_ServGetln(Buf) > 0) &&
+ (ServerRc = GetServerStatus(Buf, NULL), ServerRc == 6) )
{
if (rc < 0)
return rc;
{
if (rc < 0)
return rc;