diff options
author | Christian Grothoff <christian@grothoff.org> | 2019-10-05 15:09:28 +0200 |
---|---|---|
committer | Christian Grothoff <christian@grothoff.org> | 2019-10-05 15:09:28 +0200 |
commit | c4e9ba925ffd758aaa3feee2ccfc0b76f26fe207 (patch) | |
tree | cac3ce030d77b4cbe7c7dc62ed58cfe6d24f73e1 /src/gns/nss/nss_gns_query.c | |
parent | fbb71d527c7d6babf269a8fefce1db291b9f7068 (diff) | |
download | gnunet-c4e9ba925ffd758aaa3feee2ccfc0b76f26fe207.tar.gz gnunet-c4e9ba925ffd758aaa3feee2ccfc0b76f26fe207.zip |
global reindent, now with uncrustify hook enabled
Diffstat (limited to 'src/gns/nss/nss_gns_query.c')
-rw-r--r-- | src/gns/nss/nss_gns_query.c | 138 |
1 files changed, 69 insertions, 69 deletions
diff --git a/src/gns/nss/nss_gns_query.c b/src/gns/nss/nss_gns_query.c index 8af618618..fb431919b 100644 --- a/src/gns/nss/nss_gns_query.c +++ b/src/gns/nss/nss_gns_query.c | |||
@@ -33,12 +33,12 @@ | |||
33 | #define TIMEOUT "5s" | 33 | #define TIMEOUT "5s" |
34 | 34 | ||
35 | static void | 35 | static void |
36 | kwait(pid_t chld) | 36 | kwait (pid_t chld) |
37 | { | 37 | { |
38 | int ret; | 38 | int ret; |
39 | 39 | ||
40 | kill(chld, SIGKILL); | 40 | kill (chld, SIGKILL); |
41 | waitpid(chld, &ret, 0); | 41 | waitpid (chld, &ret, 0); |
42 | } | 42 | } |
43 | 43 | ||
44 | 44 | ||
@@ -55,7 +55,7 @@ kwait(pid_t chld) | |||
55 | * else 0 | 55 | * else 0 |
56 | */ | 56 | */ |
57 | int | 57 | int |
58 | gns_resolve_name(int af, const char *name, struct userdata *u) | 58 | gns_resolve_name (int af, const char *name, struct userdata *u) |
59 | { | 59 | { |
60 | FILE *p; | 60 | FILE *p; |
61 | char line[128]; | 61 | char line[128]; |
@@ -63,85 +63,85 @@ gns_resolve_name(int af, const char *name, struct userdata *u) | |||
63 | int out[2]; | 63 | int out[2]; |
64 | pid_t pid; | 64 | pid_t pid; |
65 | 65 | ||
66 | if (0 != pipe(out)) | 66 | if (0 != pipe (out)) |
67 | return -1; | 67 | return -1; |
68 | pid = fork(); | 68 | pid = fork (); |
69 | if (-1 == pid) | 69 | if (-1 == pid) |
70 | return -1; | 70 | return -1; |
71 | if (0 == pid) | 71 | if (0 == pid) |
72 | { | 72 | { |
73 | char *argv[] = { "gnunet-gns", | 73 | char *argv[] = { "gnunet-gns", |
74 | "-r", | 74 | "-r", |
75 | "-t", | 75 | "-t", |
76 | (AF_INET6 == af) ? "AAAA" : "A", | 76 | (AF_INET6 == af) ? "AAAA" : "A", |
77 | "-u", | 77 | "-u", |
78 | (char *)name, | 78 | (char *) name, |
79 | "-T", | 79 | "-T", |
80 | TIMEOUT, | 80 | TIMEOUT, |
81 | NULL }; | 81 | NULL }; |
82 | 82 | ||
83 | (void)close(STDOUT_FILENO); | 83 | (void) close (STDOUT_FILENO); |
84 | if ((0 != close(out[0])) || | 84 | if ((0 != close (out[0])) || |
85 | (STDOUT_FILENO != dup2(out[1], STDOUT_FILENO))) | 85 | (STDOUT_FILENO != dup2 (out[1], STDOUT_FILENO))) |
86 | _exit(1); | 86 | _exit (1); |
87 | (void)execvp("gnunet-gns", argv); | 87 | (void) execvp ("gnunet-gns", argv); |
88 | _exit(1); | 88 | _exit (1); |
89 | } | 89 | } |
90 | (void)close(out[1]); | 90 | (void) close (out[1]); |
91 | p = fdopen(out[0], "r"); | 91 | p = fdopen (out[0], "r"); |
92 | if (NULL == p) | 92 | if (NULL == p) |
93 | { | ||
94 | kwait (pid); | ||
95 | return -1; | ||
96 | } | ||
97 | while (NULL != fgets (line, sizeof(line), p)) | ||
98 | { | ||
99 | if (u->count >= MAX_ENTRIES) | ||
100 | break; | ||
101 | if (line[strlen (line) - 1] == '\n') | ||
93 | { | 102 | { |
94 | kwait(pid); | 103 | line[strlen (line) - 1] = '\0'; |
95 | return -1; | 104 | if (AF_INET == af) |
96 | } | 105 | { |
97 | while (NULL != fgets(line, sizeof(line), p)) | 106 | if (inet_pton (af, line, &u->data.ipv4[u->count])) |
98 | { | 107 | { |
99 | if (u->count >= MAX_ENTRIES) | 108 | u->count++; |
100 | break; | 109 | u->data_len += sizeof(ipv4_address_t); |
101 | if (line[strlen(line) - 1] == '\n') | 110 | } |
111 | else | ||
112 | { | ||
113 | (void) fclose (p); | ||
114 | kwait (pid); | ||
115 | errno = EINVAL; | ||
116 | return -1; | ||
117 | } | ||
118 | } | ||
119 | else if (AF_INET6 == af) | ||
120 | { | ||
121 | if (inet_pton (af, line, &u->data.ipv6[u->count])) | ||
122 | { | ||
123 | u->count++; | ||
124 | u->data_len += sizeof(ipv6_address_t); | ||
125 | } | ||
126 | else | ||
102 | { | 127 | { |
103 | line[strlen(line) - 1] = '\0'; | 128 | (void) fclose (p); |
104 | if (AF_INET == af) | 129 | kwait (pid); |
105 | { | 130 | errno = EINVAL; |
106 | if (inet_pton(af, line, &u->data.ipv4[u->count])) | 131 | return -1; |
107 | { | ||
108 | u->count++; | ||
109 | u->data_len += sizeof(ipv4_address_t); | ||
110 | } | ||
111 | else | ||
112 | { | ||
113 | (void)fclose(p); | ||
114 | kwait(pid); | ||
115 | errno = EINVAL; | ||
116 | return -1; | ||
117 | } | ||
118 | } | ||
119 | else if (AF_INET6 == af) | ||
120 | { | ||
121 | if (inet_pton(af, line, &u->data.ipv6[u->count])) | ||
122 | { | ||
123 | u->count++; | ||
124 | u->data_len += sizeof(ipv6_address_t); | ||
125 | } | ||
126 | else | ||
127 | { | ||
128 | (void)fclose(p); | ||
129 | kwait(pid); | ||
130 | errno = EINVAL; | ||
131 | return -1; | ||
132 | } | ||
133 | } | ||
134 | } | 132 | } |
133 | } | ||
135 | } | 134 | } |
136 | (void)fclose(p); | 135 | } |
137 | waitpid(pid, &ret, 0); | 136 | (void) fclose (p); |
138 | if (!WIFEXITED(ret)) | 137 | waitpid (pid, &ret, 0); |
138 | if (! WIFEXITED (ret)) | ||
139 | return -1; | 139 | return -1; |
140 | if (4 == WEXITSTATUS(ret)) | 140 | if (4 == WEXITSTATUS (ret)) |
141 | return -2; /* not for GNS */ | 141 | return -2; /* not for GNS */ |
142 | if (3 == ret) | 142 | if (3 == ret) |
143 | return -3; /* timeout -> not found */ | 143 | return -3; /* timeout -> not found */ |
144 | if ((2 == WEXITSTATUS(ret)) || (1 == WEXITSTATUS(ret))) | 144 | if ((2 == WEXITSTATUS (ret)) || (1 == WEXITSTATUS (ret))) |
145 | return -2; /* launch failure -> service unavailable */ | 145 | return -2; /* launch failure -> service unavailable */ |
146 | return 0; | 146 | return 0; |
147 | } | 147 | } |