along with this program; if not, write to the Free Software
Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
- $Id: meta.c,v 1.1.2.31 2002/09/10 09:40:25 guus Exp $
+ $Id: meta.c,v 1.1.2.32 2003/03/19 11:43:42 guus Exp $
*/
#include "config.h"
char *bufp;
int outlen;
char outbuf[MAXBUFSIZE];
+ int result;
cp();
} else
bufp = buffer;
- if(write(c->socket, bufp, length) < 0) {
- syslog(LOG_ERR, _("Sending meta data to %s (%s) failed: %s"), c->name,
- c->hostname, strerror(errno));
- return -1;
+ while(length) {
+ result = write(c->socket, bufp, length);
+ if(result <= 0) {
+ if(errno = EINTR)
+ continue;
+ syslog(LOG_ERR, _("Sending meta data to %s (%s) failed: %s"), c->name,
+ c->hostname, strerror(errno));
+ return -1;
+ }
+ bufp += result;
+ length -= result;
}
-
+
return 0;
}