aboutsummaryrefslogtreecommitdiffstats
path: root/src/common.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/common.h')
-rw-r--r--src/common.h99
1 files changed, 51 insertions, 48 deletions
diff --git a/src/common.h b/src/common.h
index ab788e1..92e8444 100644
--- a/src/common.h
+++ b/src/common.h
@@ -1,7 +1,7 @@
/**
* cerberus-logging – Log-in logging extension for cerberus
*
- * Copyright © 2014, 2015 Mattias Andrée (maandree@member.fsf.org)
+ * Copyright © 2014, 2015 Mattias Andrée (m@maandree.se)
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@@ -52,71 +52,74 @@
#define LIST_ARGUMENTS X(action) X(username) X(ttyname) X(pid) X(hostname)
-#define streq(a, b) (((a == NULL) == (b == NULL)) || (a && b && !strcmp(a, b)))
+#define streq(a, b) (!a == !b || (a && b && !strcmp(a, b)))
#define xstrcpy(d, s) (s ? snprintf(d, sizeof(d) / sizeof(char), "%s", s) : 0)
#define xmemcpy(d, s) (s ? memcpy(d, s, sizeof(d)) : NULL)
-#define X(A) extern const char* A;
- LIST_ARGUMENTS
+#define X(A) extern const char *A;
+LIST_ARGUMENTS
#undef X
-static inline const char* first_digit(const char* str)
+static inline const char *
+first_digit(const char *str)
{
- for (; str && *str; str++)
- if (('0' <= *str) && (*str <= '9'))
- return str;
- return NULL;
+ for (; str && *str; str++)
+ if ('0' <= *str && *str <= '9')
+ return str;
+ return NULL;
}
-static const char* get_hostaddress(const char* host)
+static const char *
+get_hostaddress(const char *host)
{
- static char rc[32 * 4 / 8];
- struct addrinfo hints;
- struct addrinfo *info = NULL;
-
- if (host == NULL)
- return NULL;
-
- memset(rc, 0, sizeof(rc));
- memset(&hints, 0, sizeof(hints));
- hints.ai_flags = AI_ADDRCONFIG;
-
- if (getaddrinfo(host, NULL, &hints, &info)) return NULL;
- if (info == NULL) return NULL;
-
- if (info->ai_family == AF_INET)
- {
- struct sockaddr_in* addr = (struct sockaddr_in*)(info->ai_addr);
- memcpy(rc, &(addr->sin_addr), sizeof(addr->sin_addr));
- }
- else if (info->ai_family == AF_INET6)
- {
- struct sockaddr_in6* addr = (struct sockaddr_in6*)(info->ai_addr);
- memcpy(rc, &(addr->sin6_addr), sizeof(addr->sin6_addr));
- }
-
- freeaddrinfo(info);
- return rc;
+ static char rc[32 * 4 / 8];
+ struct addrinfo hints;
+ struct addrinfo *info = NULL;
+
+ if (!host)
+ return NULL;
+
+ memset(rc, 0, sizeof(rc));
+ memset(&hints, 0, sizeof(hints));
+ hints.ai_flags = AI_ADDRCONFIG;
+
+ if (getaddrinfo(host, NULL, &hints, &info) || !info)
+ return NULL;
+
+ if (info->ai_family == AF_INET) {
+ struct sockaddr_in *addr = (struct sockaddr_in *)(info->ai_addr);
+ memcpy(rc, &(addr->sin_addr), sizeof(addr->sin_addr));
+ } else if (info->ai_family == AF_INET6) {
+ struct sockaddr_in6 *addr = (struct sockaddr_in6 *)(info->ai_addr);
+ memcpy(rc, &(addr->sin6_addr), sizeof(addr->sin6_addr));
+ }
+
+ freeaddrinfo(info);
+ return rc;
}
-static inline int write_all(int fd, char* data, size_t n)
+static inline int
+write_all(int fd, char *data, size_t n)
{
- ssize_t wrote;
-
- while (n > 0)
- if (wrote = write(fd, data, n), wrote >= 0)
- data += wrote, n -= (size_t)wrote;
- else if (errno != EINTR)
- return -1;
-
- return 0;
+ ssize_t wrote;
+
+ while (n > 0) {
+ wrote = write(fd, data, n);
+ if (wrote >= 0) {
+ data += wrote;
+ n -= (size_t)wrote;
+ } else if (errno != EINTR) {
+ return -1;
+ }
+ }
+
+ return 0;
}
int do_log(void);
-