1 /*
2 * Copyright (c) 1980 Regents of the University of California.
3 * All rights reserved. The Berkeley software License Agreement
4 * specifies the terms and conditions for redistribution.
5 */
6
7 #if defined(LIBC_SCCS) && !defined(lint)
8 static char sccsid[] = "@(#)strcatn.c 4.3 (Berkeley) 03/09/86";
9 #endif LIBC_SCCS and not lint
10
11 /*
12 * Concatenate s2 on the end of s1. S1's space must be large enough.
13 * At most n characters are moved.
14 * Return s1.
15 */
16
17 char *
strcatn(s1,s2,n)18 strcatn(s1, s2, n)
19 register char *s1, *s2;
20 register n;
21 {
22 register char *os1;
23
24 os1 = s1;
25 while (*s1++)
26 ;
27 --s1;
28 while (*s1++ = *s2++)
29 if (--n < 0) {
30 *--s1 = '\0';
31 break;
32 }
33 return(os1);
34 }
35