krb5_donot_replay *rep)
{
size_t clientlen, serverlen;
+ ssize_t buflen;
unsigned int len;
krb5_error_code ret;
struct k5buf buf, extbuf;
- char *ptr, *extstr;
+ char *bufptr, *extstr;
clientlen = strlen(rep->client);
serverlen = strlen(rep->server);
krb5int_buf_add_len(&buf, (char *) &rep->cusec, sizeof(rep->cusec));
krb5int_buf_add_len(&buf, (char *) &rep->ctime, sizeof(rep->ctime));
- ptr = krb5int_buf_data(&buf);
- if (ptr == NULL)
+ bufptr = krb5int_buf_data(&buf);
+ buflen = krb5int_buf_len(&buf);
+ if (bufptr == NULL || buflen < 0)
return KRB5_RC_MALLOC;
- ret = krb5_rc_io_write(context, &t->d, ptr, krb5int_buf_len(&buf));
+ ret = krb5_rc_io_write(context, &t->d, bufptr, buflen);
krb5int_free_buf(&buf);
return ret;
}