rem: Ns_PdSendData(END_DATA, strlen(END_DATA));
add: Ns_PdSendData(END_DATA, (int)strlen(END_DATA));
context: PdReadFile(char *readParams){    char errbuf[512];    char readBuf[4096];    int  bytesRead;    char bytesReadStr[64];    int  matchedArgs;    int  fd, offset, bytecount;    Ns_PdLog(Trace, "PdReadFile:");    matchedArgs = sscanf(readParams, "%d#%d#%d",			 &fd, &offset, &bytecount);    if (matchedArgs != 3) {        sprintf(errbuf, "Error parsing read parameters: %s",		readParams);        Ns_PdLog(Error, "nspd: failed reading file: '%s'", errbuf);        Ns_PdSendString(errbuf);    } else {        lseek(fd, offset, SEEK_SET);        if ((bytesRead = read(fd, readBuf, bytecount)) < 0) {            sprintf(errbuf, "Read error on fd %d (%d bytes): %s",		    fd, bytecount, strerror(errno));            Ns_PdLog(Error, "failed reading file: '%s'", errbuf);            Ns_PdSendString(errbuf);        } else {            Ns_PdSendString(OK_STATUS);            sprintf(bytesReadStr, "%d", bytesRead);            Ns_PdSendString(bytesReadStr);            Ns_PdSendData(readBuf, bytesRead);            Ns_PdSendData(END_DATA, strlen(END_DATA));        }    }}