Merge tag 'upstream/0.3.5'
[debian/uanytun.git] / README
1 Dependencies
2 ============
3
4 uAnytun can be built by using either libgcrypt, libnettle or the openssl-crypto
5 library. The latter is more performant in most cases but there are some license
6 issues when using this library. It also needs more space when installed.
7
8
9 Linux
10 -----
11 (this includes Debian with FreeBSD Kernel)
12
13 using libgcrypt:
14
15  build-essential
16  libgcrypt11-dev
17
18 using ssl crypto library:
19
20  build-essential
21  libssl-dev
22
23 using nettle crypto library:
24
25  build-essential
26  nettle-dev
27
28 if you want clang as compiler
29
30  clang
31
32 if you want to rebuild the manpage:
33
34  asciidoc
35
36
37 OpenBSD/FreeBSD
38 ---------------
39
40 using libgcrypt:
41
42  devel/gmake
43  security/libgcrypt
44
45 using ssl crypto library:
46
47  devel/gmake
48
49 if you want to rebuild the manpage:
50
51  textproc/asciidoc
52  textproc/libxslt
53  textproc/docbook-xsl
54  sysutils/readlink
55  misc/getopt
56
57
58
59 Installation
60 ============
61
62 Getting the source via subversion:
63 ----------------------------------
64
65 svn co https://svn.anytun.org/uanytun/trunk uanytun
66 cd uanytun
67
68
69 Building from source
70 --------------------
71
72 using libgcrypt:
73
74 # cd src
75 # ./configure
76 # make
77
78 using ssl crypto library:
79
80 # cd src
81 # ./configure --use-ssl-crypto
82 # make
83
84 Notes:
85   - try './configure --help' for further information
86   - if using openssl pre 0.9.8 you have to disable passphrase
87     because openssl had no SHA256 implementation prior to this
88     version
89   - on OpenBSD/FreeBSD you have to use gmake instead of make
90
91
92 Installing
93 ----------
94
95 # sudo make install
96
97 This will install anytun under the --prefix defined with configure.
98
99
100 Uninstalling
101 ------------
102
103 # sudo make remove
104
105 This removes everything except for the config files
106
107 # sudo make purge
108
109 This also removes the config files
110
111
112
113 Usage:
114 ======
115
116 init.d script
117 -------------
118
119 The init.d script can be used to start uanytun at boot time. It searches for
120 configuration files which reside at $CONFIG_DIR. For each instance of uanytun
121 which should be started there must be a directory containing at least a file
122 named config. This file must contain all command line parameter which should
123 be used when starting the daemon. One line for each parameter. Empty lines and
124 lines starting with # are ignored. Besides the config file there may be a script
125 named post-up.sh which will be called when the tun/tap device comes up.
126 This is an example of how the init.d script can be used to start uanytun:
127
128 # /etc/init.d/uanytun start client1 p2p-a
129
130 In this case the script will start 2 instances of uanytun using the config files
131 $CONFIG_DIR/client1/config and $CONFIG_DIR/p2p-a/config.
132 If no instance name is specified the script will use the file $CONFIG_DIR/autostart
133 to determine which instances to start or stop. This file must contain a list
134 of instance names which should be used when no names are specified at the command
135 line. One line for each name. Empty lines and lines starting with # are ignored.