X-Git-Url: https://git.exim.org/exim.git/blobdiff_plain/0a49a7a4f1090b6f1ce1d0f9d969804c9226b53e..a85c067ba6c6940512cf57ec213277a370d87e70:/src/src/osfunctions.h diff --git a/src/src/osfunctions.h b/src/src/osfunctions.h index 67f7b0ebd..454e9f77f 100644 --- a/src/src/osfunctions.h +++ b/src/src/osfunctions.h @@ -1,11 +1,11 @@ -/* $Cambridge: exim/src/src/osfunctions.h,v 1.5 2009/11/16 19:50:37 nm4 Exp $ */ - /************************************************* * Exim - an Internet mail transport agent * *************************************************/ -/* Copyright (c) University of Cambridge 1995 - 2009 */ +/* Copyright (c) University of Cambridge 1995 - 2016 */ +/* Copyright (c) The Exim Maintainers 2020 */ /* See the file NOTICE for conditions of use and distribution. */ +/* SPDX-License-Identifier: GPL-2.0-only */ /* Prototypes for os-specific functions. For utilities, we don't need the one that uses a type that isn't defined for them. */ @@ -14,10 +14,31 @@ that uses a type that isn't defined for them. */ extern ip_address_item *os_common_find_running_interfaces(void); #endif -extern int os_getloadavg(void); -extern void os_restarting_signal(int, void (*)(int)); -extern void os_non_restarting_signal(int, void (*)(int)); -extern char *os_strexit(int); /* char to match os_strsignal */ -extern char *os_strsignal(int); /* char to match strsignal in some OS */ +/* If these exist as a macro, then they're overridden away from us and we +rely upon the system headers to provide prototype declarations for us. +Notably, strsignal() is not in the Single Unix Specification (v3) and +predicting constness is awkward. */ + +#ifndef os_getloadavg +extern int os_getloadavg(void); +#endif +#ifndef os_restarting_signal +extern void os_restarting_signal(int, void (*)(int)); +#endif +#ifndef os_non_restarting_signal +extern void os_non_restarting_signal(int, void (*)(int)); +#endif +#ifndef os_strexit +extern const char *os_strexit(int); /* char to match os_strsignal */ +#endif +#ifndef os_strsignal +extern const char *os_strsignal(int); /* char to match strsignal in some OS */ +#endif +#ifndef os_unsetenv +extern int os_unsetenv(const uschar *); +#endif +#ifndef os_getcwd +extern uschar *os_getcwd(uschar *, size_t); +#endif /* End of osfunctions.h */