Lines Matching +full:mem +full:- +full:base
3 /*-
101 * virtual database. 0 is returned on success, -1 on failure.
119 return (-1); in cgetset()
165 * Skip past the current capability field - it's either the in cgetcap()
203 * -1 if the requested record couldn't be found, -2 if a system error was
204 * encountered (couldn't open/read a file, etc.), and -3 if a potential
212 return (getent(buf, &dummy, db_array, -1, name, 0, NULL)); in cgetent()
216 * Getent implements the functions of cgetent. If fd is non-negative,
247 return (-3); in getent()
256 return (-2); in getent()
269 return (-2); in getent()
301 (void)capdbp->close(capdbp); in getent()
308 return (-2); in getent()
310 if (capdbp->close(capdbp) < 0) { in getent()
312 return (-2); in getent()
366 return (-2); in getent()
368 fd = -1; in getent()
381 rp--; in getent()
421 pos = rp - record; in getent()
422 newsize = r_end - record + BFRAG; in getent()
428 return (-2); in getent()
468 return (-1); in getent()
504 *(s - 1) = '\0'; in getent()
507 tcstart = tc - 3; in getent()
508 tclen = s - tcstart; in getent()
517 if (iret < -1) { in getent()
526 if (iret == -1) { in getent()
527 *(s - 1) = ':'; in getent()
528 scan = s - 1; in getent()
542 newilen -= s - newicap; in getent()
545 /* make sure interpolated record is `:'-terminated */ in getent()
547 if (*(s-1) != ':') { in getent()
556 diff = newilen - tclen; in getent()
557 if (diff >= r_end - rp) { in getent()
561 pos = rp - record; in getent()
562 newsize = r_end - record + diff + BFRAG; in getent()
563 tcpos = tcstart - record; in getent()
564 tcposend = tcend - record; in getent()
571 return (-2); in getent()
583 memmove(s, tcend, (size_t)(rp - tcend)); in getent()
592 scan = s-1; in getent()
602 *len = rp - record - 1; /* don't count NUL */ in getent()
605 realloc(record, (size_t)(rp - record))) == NULL) { in getent()
607 return (-2); in getent()
629 switch(capdbp->get(capdbp, &key, &data, 0)) { in cdbget()
630 case -1: in cdbget()
631 return (-2); in cdbget()
633 return (-1); in cdbget()
641 key.size = data.size - 1; in cdbget()
651 * record buf, -1 if not.
680 bp--; /* a '|' or ':' may have stopped the match */ in cgetmatch()
683 return (-1); /* match failed totally */ in cgetmatch()
720 * upon returning an entry with more remaining, and -1 if an error occurs.
735 return (-1);
746 return (-1);
756 return (-1);
761 line[len - 1] = '\0';
768 if (line[len - 2] == '\\')
774 if (line[len - 2] == '\\')
805 return (-1);
812 line[len - 1] = '\0';
831 status = getent(bp, &dummy, db_array, -1, buf, 0, NULL);
832 if (status == -2 || status == -3)
846 * NUL is returned on success, -1 if the requested string capability
847 * couldn't be found, -2 if a system error was encountered (storage
857 char *mem, *nmem; in cgetstr() local
866 return (-1); in cgetstr()
872 if ((mem = malloc(SFRAG)) == NULL) { in cgetstr()
874 return (-2); /* couldn't even allocate the first fragment */ in cgetstr()
877 mp = mem; in cgetstr()
882 * There is always room for one more character in mem. in cgetstr()
883 * Mp always points just past last character in mem. in cgetstr()
901 n = n * 8 + (*bp++ - '0'); in cgetstr()
902 } while (--i && '0' <= *bp && *bp <= '7'); in cgetstr()
932 *mp++ = *(bp-1); in cgetstr()
937 m_room--; in cgetstr()
944 size_t size = mp - mem; in cgetstr()
946 if ((nmem = realloc(mem, size + SFRAG)) == NULL) { in cgetstr()
947 free(mem); in cgetstr()
948 return (-2); in cgetstr()
950 mem = nmem; in cgetstr()
952 mp = mem + size; in cgetstr()
956 m_room--; in cgetstr()
957 len = mp - mem - 1; in cgetstr()
963 if ((nmem = realloc(mem, (size_t)(mp - mem))) == NULL) { in cgetstr()
964 free(mem); in cgetstr()
965 return (-2); in cgetstr()
967 mem = nmem; in cgetstr()
969 *str = mem; in cgetstr()
980 * -1 if the requested string capability couldn't be found, -2 if a system
990 char *mem; in cgetustr() local
996 return (-1); in cgetustr()
1002 if ((mem = malloc(SFRAG)) == NULL) { in cgetustr()
1004 return (-2); /* couldn't even allocate the first fragment */ in cgetustr()
1007 mp = mem; in cgetustr()
1012 * There is always room for one more character in mem. in cgetustr()
1013 * Mp always points just past last character in mem. in cgetustr()
1017 m_room--; in cgetustr()
1024 size_t size = mp - mem; in cgetustr()
1026 if ((mem = realloc(mem, size + SFRAG)) == NULL) in cgetustr()
1027 return (-2); in cgetustr()
1029 mp = mem + size; in cgetustr()
1033 m_room--; in cgetustr()
1034 len = mp - mem - 1; in cgetustr()
1040 if ((mem = realloc(mem, (size_t)(mp - mem))) == NULL) in cgetustr()
1041 return (-2); in cgetustr()
1042 *str = mem; in cgetustr()
1049 * the long pointed to by num. 0 is returned on success, -1 if the requested
1056 int base, digit; in cgetnum() local
1064 return (-1); in cgetnum()
1067 * Look at value and determine numeric base: in cgetnum()
1076 base = 16; in cgetnum()
1078 base = 8; in cgetnum()
1080 base = 10; in cgetnum()
1088 digit = *bp - '0'; in cgetnum()
1090 digit = 10 + *bp - 'a'; in cgetnum()
1092 digit = 10 + *bp - 'A'; in cgetnum()
1096 if (digit >= base) in cgetnum()
1099 n = n * base + digit; in cgetnum()