… | |
… | |
33 | #include <signal.h> |
33 | #include <signal.h> |
34 | #include <termios.h> |
34 | #include <termios.h> |
35 | |
35 | |
36 | #include <sys/mman.h> |
36 | #include <sys/mman.h> |
37 | |
37 | |
|
|
38 | #include <openssl/err.h> |
38 | #include <openssl/rand.h> |
39 | #include <openssl/rand.h> |
39 | |
40 | |
40 | #include "gettext.h" |
41 | #include "gettext.h" |
41 | #include "pidfile.h" |
42 | #include "pidfile.h" |
42 | |
43 | |
… | |
… | |
209 | } |
210 | } |
210 | |
211 | |
211 | int |
212 | int |
212 | main (int argc, char **argv, char **envp) |
213 | main (int argc, char **argv, char **envp) |
213 | { |
214 | { |
|
|
215 | ERR_load_crypto_strings (); // we have the RAM |
|
|
216 | |
214 | set_loglevel (L_INFO); |
217 | set_loglevel (L_INFO); |
215 | set_identity (argv[0]); |
218 | set_identity (argv[0]); |
216 | log_to (LOGTO_SYSLOG | LOGTO_STDERR); |
219 | log_to (LOGTO_SYSLOG | LOGTO_STDERR); |
217 | |
220 | |
218 | setlocale (LC_ALL, ""); |
221 | setlocale (LC_ALL, ""); |
… | |
… | |
221 | |
224 | |
222 | parse_options (argc, argv, envp); |
225 | parse_options (argc, argv, envp); |
223 | |
226 | |
224 | if (show_version) |
227 | if (show_version) |
225 | { |
228 | { |
226 | printf (_("%s version %s (built %s %s, protocol %d:%d)\n"), get_identity (), |
229 | printf (_("%s version %s (built %s %s, protocol %d.%d)\n"), get_identity (), |
227 | VERSION, __DATE__, __TIME__, PROTOCOL_MAJOR, PROTOCOL_MINOR); |
230 | VERSION, __DATE__, __TIME__, PROTOCOL_MAJOR, PROTOCOL_MINOR); |
228 | printf (_ |
231 | printf (_ |
229 | ("Copyright (C) 2003 Marc Lehmann <vpe@plan9.de> and others.\n" |
232 | ("Copyright (C) 2003 Marc Lehmann <vpe@plan9.de> and others.\n" |
230 | "See the AUTHORS file for a complete list.\n\n" |
233 | "See the AUTHORS file for a complete list.\n\n" |
231 | "tinc comes with ABSOLUTELY NO WARRANTY. This is free software,\n" |
234 | "tinc comes with ABSOLUTELY NO WARRANTY. This is free software,\n" |