From: wesommer Date: Wed, 2 Sep 1987 17:16:20 +0000 (+0000) Subject: Initial revision X-Git-Tag: BETA5-24-88~75 X-Git-Url: http://andersk.mit.edu/gitweb/moira.git/commitdiff_plain/68687902dc2545c9339284591d00d08e0494a836 Initial revision --- diff --git a/lib/strs.c b/lib/strs.c new file mode 100644 index 00000000..86f96c9e --- /dev/null +++ b/lib/strs.c @@ -0,0 +1,71 @@ +/* + * $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; +} +