*************************************************/
/* Copyright (c) University of Cambridge 1995 - 2018 */
-/* Copyright (c) The Exim Maintainers 2020 */
+/* Copyright (c) The Exim Maintainers 2020 - 2021 */
/* See the file NOTICE for conditions of use and distribution. */
extern void tls_client_creds_reload(BOOL);
extern void tls_close(void *, int);
-extern BOOL tls_could_read(void);
+extern BOOL tls_could_getc(void);
extern void tls_daemon_init(void);
extern int tls_daemon_tick(void);
extern BOOL tls_dropprivs_validate_require_cipher(BOOL);
extern void enq_end(uschar *);
extern BOOL enq_start(uschar *, unsigned);
#ifndef DISABLE_EVENT
-extern uschar *event_raise(uschar *, const uschar *, uschar *);
+extern uschar *event_raise(uschar *, const uschar *, uschar *, int *);
extern void msg_event_raise(const uschar *, const address_item *);
#endif
extern int sieve_interpret(uschar *, int, uschar *, uschar *, uschar *,
uschar *, address_item **, uschar **);
extern void sigalrm_handler(int);
-extern BOOL smtp_buffered(void);
extern void smtp_closedown(uschar *);
extern void smtp_command_timeout_exit(void) NORETURN;
extern void smtp_command_sigterm_exit(void) NORETURN;
*/
static inline uschar *
-string_copylc(const uschar *s)
+string_copylc(const uschar * s)
{
-uschar *ss = store_get(Ustrlen(s) + 1, is_tainted(s));
-uschar *p = ss;
-while (*s != 0) *p++ = tolower(*s++);
+uschar * ss = store_get(Ustrlen(s) + 1, is_tainted(s));
+uschar * p = ss;
+while (*s) *p++ = tolower(*s++);
*p = 0;
return ss;
}
*/
static inline uschar *
-string_copynlc(uschar *s, int n)
+string_copynlc(uschar * s, int n)
{
uschar *ss = store_get(n + 1, is_tainted(s));
uschar *p = ss;
outfdptr, make_leader, purpose);
}
+/* Return 1 if fd is usable per pollbits, else 0 */
+static inline int
+poll_one_fd(int fd, short pollbits, int tmo_millisec)
+{
+struct pollfd p = {.fd = fd, .events = pollbits};
+return poll(&p, 1, tmo_millisec);
+}
+
# endif /* !COMPILE_UTILITY */
/******************************************************************************/