X-Git-Url: http://git.ozlabs.org/?a=blobdiff_plain;f=pppd%2Fplugins%2Fradius%2Fclientid.c;h=eea516505d730436569aa0070ec197d9be4fbf0f;hb=HEAD;hp=09ec3d04c56346e309d0c209690214dcbe9dd3d8;hpb=ef8ec1132273c3dbff2387f117630bbeb3f23f8e;p=ppp.git diff --git a/pppd/plugins/radius/clientid.c b/pppd/plugins/radius/clientid.c index 09ec3d0..94a23a6 100644 --- a/pppd/plugins/radius/clientid.c +++ b/pppd/plugins/radius/clientid.c @@ -1,6 +1,4 @@ /* - * $Id: clientid.c,v 1.1 2004/11/14 07:26:26 paulus Exp $ - * * Copyright (C) 1995,1996,1997 Lars Fenneberg * * See the file COPYRIGHT for the respective terms and conditions. @@ -68,10 +66,15 @@ int rc_read_mapfile(char *filename) if ((p = (struct map2id_s *)malloc(sizeof(*p))) == NULL) { novm("rc_read_mapfile"); + fclose(mapfd); return (-1); } - p->name = strdup(name); + if ((p->name = strdup(name)) == NULL) { + novm("rc_read_mapfile"); + fclose(mapfd); + return (-1); + } p->id = atoi(id); p->next = map2id_list; map2id_list = p; @@ -79,6 +82,7 @@ int rc_read_mapfile(char *filename) } else { error("rc_read_mapfile: malformed line in %s, line %d", filename, lnr); + fclose(mapfd); return (-1); } @@ -101,7 +105,7 @@ int rc_read_mapfile(char *filename) * Returns: port id, zero if no entry found */ -UINT4 rc_map2id(char *name) +UINT4 rc_map2id(const char *name) { struct map2id_s *p; char ttyname[PATH_MAX];