1SOCKET(7ctrlproxy) SOCKET(7ctrlproxy)
2
3
4
6 socket - Support for IPv4, IPv6 and pipes
7
9 This module provides support for connecting to remote servers using
10 IPv4, IPv6 and unix pipes, as well as listening for client connections
11 using these connection types.
12
13 As this module is currently the only module providing connection
14 support, it is essential for basic use of ctrlproxy.
15
16 Connecting or listening using SSL over IPv4 or IPv6 is supported when a
17 SSL library was found at configure time.
18
19 When acting as a SSL server (e.g. waiting for connections from clients
20 and communicating with them using SSL), ctrlproxy needs to have a
21 certificate file and a private key file. This can be generated using
22 the mksslcert.sh script distributed with ctrlproxy.
23
25 The following XML elements are supported:
26
27 sslkeyfile
28 Name of file to load private SSL key from. Only required when
29 acting as a server
30
31 sslcertfile
32 Name of file to load certificate from. Only required when acting
33 as a server
34
36 After this module is loaded, the following three new elements are
37 supported in <listen> and <servers>:
38
39 ipv4
40
41 ipv6
42
43 pipe
44
45 ipv4 and ipv6 support the following attributes:
46
47 ssl Enable SSL
48
49 host Host name or IP address to connect to.
50
51 port Port to connect to or listen on.
52
53 When connecting, the pipe element can contain one member element <path>
54 and several <arg> elements. These should contain a program with
55 arguments to execute.
56
57 In listen mode, a file attribute (attribute, not element!) should be
58 specified, containing the file name of the unix socket to create. If no
59 file name is specified, one will be generated.
60
62
63 <ctrlproxy>
64 <plugins>
65 <plugin autoload="1" file="socket">
66 <sslcertfile>ctrlproxy.pem</sslcertfile>
67 <sslkeyfile>ctrlproxy.pem</sslkeyfile>
68 </plugin>
69 </plugins>
70 <networks>
71 <network name="BEE">
72 <servers>
73 <pipe>
74 <path>/usr/sbin/bitlbee</path>
75 </pipe>
76 <ipv4 host="localhost"/>
77 </servers>
78 <listen>
79 <ipv4 ssl="1" port="6667"/>
80 </network>
81 <network name="DSR">
82 <servers>
83 <ipv6 host="irc.ipv6.distributed.net"/>
84 <ipv4 host="irc.distributed.net" port="994" ssl="1"/>
85 </servers>
86 <listen>
87 <ipv4 port="6668"/>
88 <ipv6 port="6669" ssl="1"/>
89 </listen>
90 </network>
91 </networks>
92 </ctrlproxy>
93
94
95
97 This man page is valid for version 0.1 of the plugin.
98
100 ctrlproxyrc(5), ctrlproxy(1), [1]http://ctrlproxy.vernstok.nl/
101
103 [2]Jelmer Vernooij
104
106 1. http://ctrlproxy.vernstok.nl/
107 http://ctrlproxy.vernstok.nl/
108
109 2. Jelmer Vernooij
110 mailto:
111
112
113
114 08/27/2006 SOCKET(7ctrlproxy)