diff --git a/libwrap/sys/puts.c b/libwrap/sys/puts.c index 9ec4de3..73d804a 100644 --- a/libwrap/sys/puts.c +++ b/libwrap/sys/puts.c @@ -9,7 +9,8 @@ int __wrap_puts(const char* s) { const char* str = s; while(*str) ++str; - *(char*)str='\n'; - return _bsp_write(STDOUT_FILENO, s, (str - s)+1); + if (_bsp_write(STDOUT_FILENO, s, str - s) != str - s) + return -1; + return _bsp_write(STDOUT_FILENO, "\n", 1) == 1 ? 0 : -1; } weak_under_alias(puts);