#include "msgbase.h"
#include "internet_addressing.h"
#include "clientsocket.h"
-#include "file_ops.h"
#include "citadel_dirs.h"
#include "threads.h"
#include "context.h"
CtdlAideFPMessage(
ChrPtr(NW->IO.ErrMsg),
"Networker error",
- 2, strs, (long*) &lens);
+ 2, strs, (long*) &lens,
+ IO->Now,
+ IO->ID, CCID);
return eAbort;
}
NWC_DBG_READ();
if (ChrPtr(NW->IO.IOBuf)[0] == '2')
{
+ int LogLevel = LOG_DEBUG;
NW->IO.IOB.TotalSentAlready = 0;
+
TotalSendSize = atol (ChrPtr(NW->IO.IOBuf) + 4);
- EVN_syslog(LOG_DEBUG, "Expecting to transfer %d bytes\n", TotalSendSize);
+
+ if (TotalSendSize > 0)
+ LogLevel = LOG_INFO;
+
+ EVN_syslog(LogLevel,
+ "Expecting to transfer %d bytes to %s\n",
+ TotalSendSize,
+ ChrPtr(NW->tempFileName));
+
if (TotalSendSize <= 0) {
NW->State = eNUOP - 1;
}
SetNWCState(IO, eNWCVSFail);
return eAbort;
}
- StrBufPrintf(NW->IO.SendBuf.Buf, "READ %ld|%ld\n",
+ StrBufPrintf(NW->IO.SendBuf.Buf, "READ "LOFF_T_FMT"|%ld\n",
NW->IO.IOB.TotalSentAlready,
NW->IO.IOB.TotalSendSize);
/*
ChrPtr(NW->SpoolFileName),
strerror(errno));
}
-
+ else {
+ EVN_syslog(LOG_INFO,
+ "moved %s to %s\n",
+ ChrPtr(NW->tempFileName),
+ ChrPtr(NW->SpoolFileName));
+ }
+
unlink(ChrPtr(NW->tempFileName));
rc = NWC_DispatchWriteDone(&NW->IO);
NW->State --;
ChrPtr(NW->SpoolFileName),
strerror(errno));
}
+ else {
+ EVN_syslog(LOG_INFO,
+ "moved %s to %s\n",
+ ChrPtr(NW->tempFileName),
+ ChrPtr(NW->SpoolFileName));
+ }
unlink(ChrPtr(NW->tempFileName));
rc = NWC_DispatchWriteDone(&NW->IO);
if (fd > 0) close(fd);
return rc;
}
+ else
+ {
+ EVN_syslog(LOG_INFO,
+ "sending %s to %s\n",
+ ChrPtr(NW->SpoolFileName),
+ ChrPtr(NW->node));
+ }
+
FDIOBufferInit(&NW->IO.IOB, &NW->IO.SendBuf, fd, TotalSendSize);
StrBufPlain(NW->IO.SendBuf.Buf, HKEY("NUOP\n"));
eNextState NWC_SendWRIT(AsyncNetworker *NW)
{
AsyncIO *IO = &NW->IO;
- StrBufPrintf(NW->IO.SendBuf.Buf, "WRIT %ld\n",
+ StrBufPrintf(NW->IO.SendBuf.Buf, "WRIT "LOFF_T_FMT"\n",
NW->IO.IOB.TotalSendSize - NW->IO.IOB.TotalSentAlready);
NWC_DBG_SEND();
return eSendReply;
AsyncIO *IO = &NW->IO;
NWC_DBG_READ();
- EVN_syslog(LOG_NOTICE, "Sent %ld octets to <%s>\n", NW->IO.IOB.ChunkSize, ChrPtr(NW->node));
+ EVN_syslog(LOG_NOTICE,
+ "Sent %s [%ld] octets to <%s>\n",
+ ChrPtr(NW->SpoolFileName),
+ NW->IO.IOB.ChunkSize,
+ ChrPtr(NW->node));
+
if (ChrPtr(NW->IO.IOBuf)[0] == '2') {
EVN_syslog(LOG_DEBUG, "Removing <%s>\n", ChrPtr(NW->SpoolFileName));
unlink(ChrPtr(NW->SpoolFileName));
rc = NWC_ReadHandlers[NW->State](NW);
if (rc != eReadMore)
NW->State++;
- NWC_SetTimeout(rc, NW);
+
+ if (rc != eAbort)
+ NWC_SetTimeout(rc, NW);
+
return rc;
}
eNextState NWC_DispatchWriteDone(AsyncIO *IO)