| version 1.7, 1994/03/06 07:54:35 |
version 1.8, 1994/03/26 02:51:45 |
| Line 251 getent(cap, len, db_array, fd, name, dep |
|
| Line 251 getent(cap, len, db_array, fd, name, dep |
|
| != NULL) { |
!= NULL) { |
| free(record); |
free(record); |
| retval = cdbget(capdbp, &record, name); |
retval = cdbget(capdbp, &record, name); |
| clen = strlen(record); |
if (retval < 0) { |
| if ((cbuf = malloc(clen + 1)) == NULL) { |
/* no record available */ |
| errno = ENOMEM; |
(void)capdbp->close(capdbp); |
| return (-2); |
return (retval); |
| } |
} |
| memmove(cbuf, record, clen + 1); |
/* save the data; close frees it */ |
| |
clen = strlen(record); |
| |
cbuf = malloc(clen + 1); |
| |
memcpy(cbuf, record, clen + 1); |
| if (capdbp->close(capdbp) < 0) { |
if (capdbp->close(capdbp) < 0) { |
| free(cbuf); |
free(cbuf); |
| return (-2); |
return (-2); |