X-Git-Url: https://git.openafs.org/?p=openafs.git;a=blobdiff_plain;f=src%2Futil%2Fcasestrcpy.c;h=c9e038fd1fd466600c4519031276d957b9908644;hp=b3c4107b5005adc012048906c78e5ffd2b5f5aed;hb=a151529de62bd6049ddc507c62bc09747c3ec111;hpb=e7ec0d4213853117dc463a3629651e280c6cf0fa diff --git a/src/util/casestrcpy.c b/src/util/casestrcpy.c index b3c4107..c9e038f 100644 --- a/src/util/casestrcpy.c +++ b/src/util/casestrcpy.c @@ -7,46 +7,80 @@ * directory or online at http://www.openafs.org/dl/license10.html */ -#include #include +#include -RCSID("$Header$"); +#include #include #include #include /* Just like strncpy but shift-case in transit and forces null termination */ -char *lcstring (char *d, char *s, int n) -{ char *original_d = d; - char c; +char * +lcstring(char *d, char *s, int n) +{ + char *original_d = d; + char c; - if ((s == 0) || (d == 0)) return 0; /* just to be safe */ + if ((s == 0) || (d == 0)) + return 0; /* just to be safe */ while (n) { c = *s++; - if (isupper(c)) c = tolower(c); + if (isupper(c)) + c = tolower(c); *d++ = c; - if (c == 0) break; /* quit after transferring null */ - if (--n == 0) *(d-1) = 0; /* make sure null terminated */ + if (c == 0) + break; /* quit after transferring null */ + if (--n == 0) + *(d - 1) = 0; /* make sure null terminated */ } return original_d; } -char *ucstring (char *d, char *s, int n) -{ char *original_d = d; - char c; +char * +ucstring(char *d, char *s, int n) +{ + char *original_d = d; + char c; - if ((s == 0) || (d == 0)) return 0; + if ((s == 0) || (d == 0)) + return 0; while (n) { c = *s++; - if (islower(c)) c = toupper(c); + if (islower(c)) + c = toupper(c); *d++ = c; - if (c == 0) break; - if (--n == 0) *(d-1) = 0; /* make sure null terminated */ + if (c == 0) + break; + if (--n == 0) + *(d - 1) = 0; /* make sure null terminated */ } return original_d; } +void +stolower(char *s) +{ + while (*s) { + if (isupper(*s)) + *s = tolower(*s); + s++; + } + return; +} + +void +stoupper(char *s) +{ + while (*s) { + if (islower(*s)) + *s = toupper(*s); + s++; + } + return; +} + /* strcompose - concatenate strings passed to it. * Input: * buf: storage for the composed string. Any data in it will be lost. @@ -54,32 +88,32 @@ char *ucstring (char *d, char *s, int n) * ...: variable number of string arguments. The last argument must be * NULL. * Returns buf or NULL if the buffer was not sufficiently large. - */ -char *strcompose(char *buf, size_t len, ...) + */ +char * +strcompose(char *buf, size_t len, ...) { - va_list ap; - size_t spaceleft = len - 1; - char *str; - size_t slen; + va_list ap; + size_t spaceleft = len - 1; + char *str; + size_t slen; - if (buf == NULL || len <= 0) - return NULL; + if (buf == NULL || len <= 0) + return NULL; - *buf = '\0'; - va_start(ap, len); - str = va_arg(ap, char *); - while(str) { - slen = strlen(str); - if (spaceleft < slen) /* not enough space left */ - return NULL; - - strcat(buf, str); - spaceleft -= slen; - + *buf = '\0'; + va_start(ap, len); str = va_arg(ap, char *); - } - va_end(ap); + while (str) { + slen = strlen(str); + if (spaceleft < slen) /* not enough space left */ + return NULL; - return buf; -} + strcat(buf, str); + spaceleft -= slen; + + str = va_arg(ap, char *); + } + va_end(ap); + return buf; +}