2 * Copyright 2000, International Business Machines Corporation and others.
5 * This software has been released under the terms of the IBM Public
6 * License. For details, see the LICENSE file in the top-level source
7 * directory or online at http://www.openafs.org/dl/license10.html
10 #include <afsconfig.h>
11 #include <afs/param.h>
19 /* Just like strncpy but shift-case in transit and forces null termination */
21 lcstring(char *d
, const char *s
, int n
)
32 break; /* quit after transferring null */
34 *(d
- 1) = 0; /* make sure null terminated */
40 ucstring(char *d
, const char *s
, int n
)
53 *(d
- 1) = 0; /* make sure null terminated */
80 /* strcompose - concatenate strings passed to it.
82 * buf: storage for the composed string. Any data in it will be lost.
83 * len: length of the buffer.
84 * ...: variable number of string arguments. The last argument must be
86 * Returns buf or NULL if the buffer was not sufficiently large.
89 strcompose(char *buf
, size_t len
, ...)
92 size_t spaceleft
= len
- 1;
101 str
= va_arg(ap
, char *);
104 if (spaceleft
< slen
) /* not enough space left */
110 str
= va_arg(ap
, char *);