Mercurial > irccd
comparison irccdctl/irccdctl.c @ 1079:8f26ee9cc6dd
misc: unconditionnally add BSD->POSIX extensions
author | David Demelier <markand@malikania.fr> |
---|---|
date | Fri, 16 Jul 2021 20:18:29 +0200 |
parents | 4ed442cf25c0 |
children | 84d567d1c641 |
comparison
equal
deleted
inserted
replaced
1078:d0adbcc0768e | 1079:8f26ee9cc6dd |
---|---|
54 char buf[IRC_BUF_LEN] = {0}; | 54 char buf[IRC_BUF_LEN] = {0}; |
55 ssize_t nr; | 55 ssize_t nr; |
56 | 56 |
57 if ((nr = recv(sock, buf, sizeof (buf) - 1, 0)) <= 0) | 57 if ((nr = recv(sock, buf, sizeof (buf) - 1, 0)) <= 0) |
58 irc_util_die("abort: %s\n", strerror(nr == 0 ? ECONNRESET : errno)); | 58 irc_util_die("abort: %s\n", strerror(nr == 0 ? ECONNRESET : errno)); |
59 if (strlcat(in, buf, sizeof (in)) >= sizeof (in)) | 59 if (irc_util_strlcat(in, buf, sizeof (in)) >= sizeof (in)) |
60 irc_util_die("abort: %s\n", strerror(EMSGSIZE)); | 60 irc_util_die("abort: %s\n", strerror(EMSGSIZE)); |
61 } | 61 } |
62 | 62 |
63 *nl = '\0'; | 63 *nl = '\0'; |
64 strlcpy(ret, in, sizeof (ret)); | 64 irc_util_strlcpy(ret, in, sizeof (ret)); |
65 memmove(in, nl + 1, sizeof (in) - (nl - in) - 1); | 65 memmove(in, nl + 1, sizeof (in) - (nl - in) - 1); |
66 | 66 |
67 return ret; | 67 return ret; |
68 } | 68 } |
69 | 69 |
103 | 103 |
104 va_start(ap, fmt); | 104 va_start(ap, fmt); |
105 vsnprintf(buf, sizeof (buf), fmt, ap); | 105 vsnprintf(buf, sizeof (buf), fmt, ap); |
106 va_end(ap); | 106 va_end(ap); |
107 | 107 |
108 if (strlcat(out, buf, sizeof (out)) >= sizeof (out) || | 108 if (irc_util_strlcat(out, buf, sizeof (out)) >= sizeof (out) || |
109 strlcat(out, "\n", sizeof (out)) >= sizeof (out)) | 109 irc_util_strlcat(out, "\n", sizeof (out)) >= sizeof (out)) |
110 irc_util_die("abort: %s\n", strerror(EMSGSIZE)); | 110 irc_util_die("abort: %s\n", strerror(EMSGSIZE)); |
111 | 111 |
112 while (out[0]) { | 112 while (out[0]) { |
113 ssize_t ns, len; | 113 ssize_t ns, len; |
114 | 114 |
978 ++argv; | 978 ++argv; |
979 | 979 |
980 for (int ch; (ch = ketopt(&ko, argc, argv, 0, "s:v", NULL)) != -1; ) { | 980 for (int ch; (ch = ketopt(&ko, argc, argv, 0, "s:v", NULL)) != -1; ) { |
981 switch (ch) { | 981 switch (ch) { |
982 case 's': | 982 case 's': |
983 strlcpy(sockaddr.sun_path, ko.arg, sizeof (sockaddr.sun_path)); | 983 irc_util_strlcpy(sockaddr.sun_path, ko.arg, sizeof (sockaddr.sun_path)); |
984 break; | 984 break; |
985 case 'v': | 985 case 'v': |
986 verbose = 1; | 986 verbose = 1; |
987 break; | 987 break; |
988 default: | 988 default: |