Lines Matching refs:buffer

65 	/* Use one malloc for dbargs, result struct and buffer */
72 b->buffer = (char *)(b->result) + struct_size;
91 char *buffer, *buf_offset, *new_buffer;
94 /* Allocate initial input buffer */
95 buffer = malloc(LINE_MAX);
96 if (buffer == NULL) {
102 buf_offset = buffer;
110 if (buffer[len - 1] == '\n' || feof(f)) {
114 /* Allocate larger buffer to continue input */
115 new_buffer = realloc(buffer, bufsize + LINE_MAX);
117 free(buffer);
122 buffer = new_buffer;
124 buf_offset = buffer + len;
129 free(buffer);
137 * to copy the buffer, appending a null terminator to the copy.
140 if (buffer[len - 1] == '\n') {
145 parsestat = (*b->str2ent)(buffer, len, b->buf.result, b->buf.buffer,
154 /* Release the input buffer */
155 free(buffer);
159 * parse the aliases string into the buffer and if successful return
162 * CAUTION: (instr, instr+lenstr) and (buffer, buffer+buflen) are
167 _nss_netdb_aliases(const char *instr, int lenstr, char *buffer, int buflen)
169 /* "buffer" has the return val for success */
170 /* "buflen" is the length of the buffer available for aliases */
173 * Build the alias-list in the start of the buffer, and copy
174 * the strings to the end of the buffer.
178 char *copyptr = buffer + buflen;
179 char **aliasp = (char **)ROUND_UP(buffer, sizeof (*aliasp));
220 * pack well known getXbyY keys to packed buffer prior to the door_call
399 * buffer - Start of the key buffer location [in packed buffer]
400 * length - Length of key buffer component
401 * Key offsets are relative to start of key buffer location.
424 nss_pack_key2str(void *buffer, size_t length, nss_XbyY_args_t *arg,
437 if (buffer == NULL || length == 0 || arg == NULL ||
449 (void) strlcpy(buffer, arg->key.name, len);
456 *(nssuint_t *)buffer = (nssuint_t)arg->key.number;
463 *(nssuint_t *)buffer = (nssuint_t)arg->key.uid;
470 *(nssuint_t *)buffer = (nssuint_t)arg->key.gid;
481 *(nssuint_t *)buffer =
483 buffer = (void *)((char *)buffer + sizeof (nssuint_t));
484 *(nssuint_t *)buffer =
486 buffer = (void *)((char *)buffer + sizeof (nssuint_t));
487 (void) memcpy(buffer, arg->key.hostaddr.addr,
499 *(nssuint_t *)buffer =
501 buffer = (void *)((char *)buffer + sizeof (nssuint_t));
502 *(nssuint_t *)buffer =
504 buffer = (void *)((char *)buffer + sizeof (nssuint_t));
505 (void) strlcpy(buffer, arg->key.ipnode.name, len);
512 *(nssuint_t *)buffer = (nssuint_t)arg->key.projid;
526 (void) strlcpy(buffer, arg->key.serv.serv.name, len);
527 buffer = (void *)((char *)buffer + len);
529 (void) strlcpy(buffer, arg->key.serv.proto,
532 *(char *)buffer = '\0';
542 uptr = (nssuint_t *)buffer;
557 *(struct ether_addr *)buffer =
571 (void) strlcpy(buffer, arg->key.pkey.name, len);
572 buffer = (void *)((char *)buffer + len);
573 (void) strlcpy(buffer, arg->key.pkey.keytype, len2);
577 uptr = (nssuint_t *)buffer;
591 /* for sizeof (_priv_execattr) static buffer */
610 (void) memset((void *)buffer, 0, slop);
611 uptr = (nssuint_t *)((void *)((char *)buffer + slop));
647 uptr = (nssuint_t *)buffer;
660 pptr = (nss_pnetgr_t *)buffer;
697 uptr = (nssuint_t *)((void *)((char *)buffer + offv));
699 dptr = (char *)buffer + offc;
768 (void) strlcpy(buffer, sng->netgroup, len);
779 nss_default_key2str(void *buffer, size_t length, nss_XbyY_args_t *arg,
784 if (buffer == NULL || length == 0 || arg == NULL ||
796 return (nss_pack_key2str(buffer, length, arg, dbname,
802 nss_packed_set_status(void *buffer, size_t length, nss_status_t status,
805 nss_pheader_t *pbuf = (nss_pheader_t *)buffer;
810 pdbd = (nss_dbd_t *)((void *)((char *)buffer + pbuf->dbd_off));
878 * buffer - Start of the key buffer location [in packed buffer]
879 * length - Length of key buffer component
880 * Key offsets are relative to start of key buffer location.
904 nss_upack_key2arg(void *buffer, size_t length, char **dbname,
907 nss_pheader_t *pbuf = (nss_pheader_t *)buffer;
923 bptr = (char *)buffer + off;
1151 nss_packed_getkey(void *buffer, size_t length, char **dbname,
1154 nss_pheader_t *pbuf = (nss_pheader_t *)buffer;
1159 if (buffer == NULL || length == 0 || dbop == NULL ||
1165 pdbd = (nss_dbd_t *)((void *)((char *)buffer + off));
1170 *dbname = (char *)buffer + off + pdbd->o_name;
1173 return (nss_upack_key2arg(buffer, length, dbname, dbop, arg, index));
1184 * store the entry in the buffer we were passed by the caller.
1193 char *buffer,
1197 if (buflen <= lenstr) { /* not enough buffer */
1200 (void) memmove(buffer, instr, lenstr);
1201 buffer[lenstr] = '\0';
1207 * Initialize db_root, initf, dbop and arg from a packed buffer
1212 nss_packed_arg_init(void *buffer, size_t length, nss_db_root_t *db_root,
1215 nss_pheader_t *pbuf = (nss_pheader_t *)buffer;
1224 if (buffer == NULL || length == 0 ||
1231 pdbd = (nss_dbd_t *)((void *)((char *)buffer + off));
1236 dbname = (char *)buffer + off + pdbd->o_name;
1244 if (nss_upack_key2arg(buffer, length, &dbname,
1252 bptr = (char *)buffer + pbuf->data_off;
1282 * Initialize db_root, initf, dbop, contextp and arg from a packed buffer
1287 nss_packed_context_init(void *buffer, size_t length, nss_db_root_t *db_root,
1291 nss_pheader_t *pbuf = (nss_pheader_t *)buffer;
1298 bptr = (char *)buffer + pbuf->data_off;