/* * $Source$ * $Author$ * $Header$ * * Copyright (C) 1987 by the Massachusetts Institute of Technology * * Miscellaneous string functions. */ #ifndef lint static char *rcsid_strs_c = "$Header$"; #endif lint /* * Random string functions which should be in the C library.. */ /* * Make a copy of a string. */ char * strsave(s) char *s; { register int len = strlen(s) + 1; register char *p = malloc((u_int)len); if (p) bcopy(s, p, len); return p; } /* * Trim whitespace off both ends of a string. */ char *strtrim(s) register char *s; { register char *t; while (isspace(*s)) s++; /* skip to end of string */ for (t = s; *t; t++) continue; while (t > s) { --t; if (!isspace(*t)) { t++; break; } } *t = '\0'; return s; } /* * Case insensitive string compare. */ int cistrcmp(cp1, cp2) char *cp1, *cp2; { register int c1, c2; do { if (isupper(c1 = (*cp1++))) c1 = tolower(c1); if (isupper(c2 = (*cp2++))) c2 = tolower(c2); if (c1 != c2) return c1-c2; } while (c1 && c2); return 0; }