1 /* 2 ** Copyright 2001, Travis Geiselbrecht. All rights reserved. 3 ** Distributed under the terms of the NewOS License. 4 */ 5 /* 6 * Copyright (c) 2008 Travis Geiselbrecht 7 * 8 * Use of this source code is governed by a MIT-style 9 * license that can be found in the LICENSE file or at 10 * https://opensource.org/licenses/MIT 11 */ 12 #include <string.h> 13 #include <sys/types.h> 14 15 char * strncat(char * dest,char const * src,size_t count)16strncat(char *dest, char const *src, size_t count) { 17 char *tmp = dest; 18 19 if (count > 0) { 20 while (*dest) 21 dest++; 22 while ((*dest++ = *src++)) { 23 if (--count == 0) { 24 *dest = '\0'; 25 break; 26 } 27 } 28 } 29 30 return tmp; 31 } 32 33