int
get_reply(struct event_queue *eq, char **buf, int *code_min)
{
- char *msg;
+ char *msg=NULL;
int ret, code;
size_t len, l;
struct timeval tv;
data.gss = &eq->gss;
data.timeout = &tv;
len = read_il_data(&data, &msg, gss_reader);
- if(len < 0)
+ if(len < 0) {
+ set_error(IL_PROTO, LB_PROTO, "get_reply: error reading server reply");
return(-1);
-
+ }
ret = decode_il_reply(&code, code_min, buf, msg);
- free(msg);
+ if(msg) free(msg);
if(ret < 0) {
set_error(IL_PROTO, LB_PROTO, "get_reply: error decoding server reply");
return(-1);