commit 90e504337fba8846ec1b5ffa3e37f4454feb486a from: Omar Polo date: Wed Dec 21 10:35:16 2022 UTC add compat for errc and warnc while here also fix the prototypes for warn and warnx commit - 3cf47875ce561b7c72ed68934d8fd735d78af608 commit + 90e504337fba8846ec1b5ffa3e37f4454feb486a blob - 244909c09b1829522fc3429f5e207de7edd34bc2 blob + abe930fd1c8fdfb5d615f779712057195cad7781 --- compat/err.c +++ compat/err.c @@ -53,6 +53,19 @@ err(int ret, const char *fmt, ...) } void +errc(int ret, int code, const char *fmt, ...) +{ + va_list ap; + + errno = code; + + va_start(ap, fmt); + vwarn(fmt, ap); + va_end(ap); + exit(ret); +} + +void errx(int ret, const char *fmt, ...) { va_list ap; @@ -74,6 +87,18 @@ warn(const char *fmt, ...) } void +warnc(int code, const char *fmt, ...) +{ + va_list ap; + + errno = code; + + va_start(ap, fmt); + vwarn(fmt, ap); + va_end(ap); +} + +void warnx(const char *fmt, ...) { va_list ap; blob - 0b4bec6afcb8406227560256b9f6cb773814b829 blob + 0d56ff81a5dea90c1e7050620265bccdd11a85c3 --- compat.h +++ compat.h @@ -110,9 +110,11 @@ int vasprintf(char **, const char *, ...); #ifndef HAVE_ERR void err(int, const char *, ...); +void errc(int, int, const char *, ...); void errx(int, const char *, ...); -void warn(int, const char *, ...); -void warnx(int, const char *, ...); +void warn(const char *, ...); +void warnc(int, const char *, ...); +void warnx(const char *, ...); #else #include #endif