xref: /aosp_15_r20/external/arm-trusted-firmware/lib/libc/puts.c (revision 54fd6939e177f8ff529b10183254802c76df6d08)
1*54fd6939SJiyong Park /*
2*54fd6939SJiyong Park  * Copyright (c) 2013-2018, ARM Limited and Contributors. All rights reserved.
3*54fd6939SJiyong Park  *
4*54fd6939SJiyong Park  * SPDX-License-Identifier: BSD-3-Clause
5*54fd6939SJiyong Park  */
6*54fd6939SJiyong Park 
7*54fd6939SJiyong Park #include <stdio.h>
8*54fd6939SJiyong Park 
puts(const char * s)9*54fd6939SJiyong Park int puts(const char *s)
10*54fd6939SJiyong Park {
11*54fd6939SJiyong Park 	int count = 0;
12*54fd6939SJiyong Park 
13*54fd6939SJiyong Park 	while (*s != '\0') {
14*54fd6939SJiyong Park 		if (putchar(*s) == EOF)
15*54fd6939SJiyong Park 			return EOF;
16*54fd6939SJiyong Park 		s++;
17*54fd6939SJiyong Park 		count++;
18*54fd6939SJiyong Park 	}
19*54fd6939SJiyong Park 
20*54fd6939SJiyong Park 	if (putchar('\n') == EOF)
21*54fd6939SJiyong Park 		return EOF;
22*54fd6939SJiyong Park 
23*54fd6939SJiyong Park 	return count + 1;
24*54fd6939SJiyong Park }
25