1b4a14382bncd: add if module
ambrop7
2011-01-10 00:02:15 +00:00
716691f00bncd/modules/net_iptables: run all iptables commands synchronously, use BEventLock to achieve that. Otherwise, if two iptables commands are run concurrently, one might fail.
ambrop7
2011-01-09 23:56:47 +00:00
a62da7a439BProcess: support specifying a list of file descriptors to preserve and fd numbers to map them to inside the child
ambrop7
2010-12-29 18:57:01 +00:00
3cdee2a3b6BSocket: BSocket_Reactor is for windows too
ambrop7
2010-12-28 13:45:20 +00:00
5219871b0bBProcess: move to process/
ambrop7
2010-12-28 13:43:40 +00:00
99333ee64dexamples/ipc_client: do cleanup in one place
ambrop7
2010-12-27 13:35:01 +00:00
9924fef1f3examples/bprocess_example: do cleanup in one place
ambrop7
2010-12-27 13:21:33 +00:00
aac81b5bcaexamples/dhcpclient_test: do cleanup in one place
ambrop7
2010-12-27 13:11:16 +00:00
cf2b736cd0tun2socks: do cleanup in one place
ambrop7
2010-12-27 12:49:44 +00:00
2939d5706dflooder: do cleanup in one place (error and normal exit). This is possible now that all processing is done using jobs, and there are no error reporters enforcing immediate cleanup with dead vars.
ambrop7
2010-12-27 12:14:31 +00:00
0b916dfca2server: do cleanup in one place (error and normal exit). This is possible now that all processing is done using jobs, and there are no error reporters enforcing immediate cleanup with dead vars.
ambrop7
2010-12-27 10:51:01 +00:00
2fe3fbf8dcclient: do cleanup in one place (error and normal exit). This is possible now that all processing is done using jobs, and there are no error reporters enforcing immediate cleanup with dead vars.
ambrop7
2010-12-27 00:04:36 +00:00
481b171588DebugError: don't use a dead var, use a job to enforce destruction, allowing the destruction to be done from the handler's jobs (rather than just the handler)
ambrop7
2010-12-26 23:40:34 +00:00
5a34d9b18aNCDModule: port to DebugError
ambrop7
2010-12-26 23:31:25 +00:00
a2972f08a3ServerConnection: remove unused dead var
ambrop7
2010-12-26 23:11:32 +00:00
5d4028ff49examples/ipc_client.c: remove unused dead var
ambrop7
2010-12-26 23:08:15 +00:00
fb36530668examples/ipc_server.c: remove unused dead var
ambrop7
2010-12-26 23:07:33 +00:00
7efb19f024PasswordSender: port to DebugError
ambrop7
2010-12-26 23:05:27 +00:00
f288c81ef2flooder: remove unused dead var
ambrop7
2010-12-26 23:03:16 +00:00
71a1e88546DataProto: remove unused dead vars
ambrop7
2010-12-26 23:00:37 +00:00
19091bc38aBIPCServer: don't include misc/dead.h
ambrop7
2010-12-26 22:54:00 +00:00
ec7bc60c54BIPC: port to DebugError
ambrop7
2010-12-26 22:53:01 +00:00
288a969301BSocksClient: port to DebugError
ambrop7
2010-12-26 22:48:54 +00:00
f939a00937PRStreamSink: port to DebugError
ambrop7
2010-12-26 22:45:32 +00:00
502b77d1b8PRStreamSource: port to DebugError
ambrop7
2010-12-26 22:42:48 +00:00
adaa666328SinglePacketSender: port to DebugError
ambrop7
2010-12-26 22:39:34 +00:00
ced69b1b88StreamSocketSink: port to DebugError
ambrop7
2010-12-26 22:36:58 +00:00
32ee730ed1StreamSocketSource: port to DebugError
ambrop7
2010-12-26 22:34:10 +00:00
a72cb44424flow: simplify implementation of flow interfaces
ambrop7
2010-12-26 22:25:04 +00:00
12fe99ea8dBProcess: port to DebugError
ambrop7
2010-12-26 21:08:44 +00:00
3197c8a986BTap: port to DebugError
ambrop7
2010-12-26 20:57:53 +00:00
feb875f9dcServerConnection: use DebugError
ambrop7
2010-12-26 20:28:58 +00:00
ddbddb4438PasswordListener: remove unused dead var
ambrop7
2010-12-26 19:39:43 +00:00
fc2561fa55Listener: Remove the socket event handler when freeing. Use a job for default accepting instead of directly using a dead var.
ambrop7
2010-12-26 19:22:49 +00:00
49a56089a7system/BAddr.h: replace *_IsRecognized in favour of *_Assert
ambrop7
2010-12-26 11:50:07 +00:00
d8f27fac92ncd: minor changes
ambrop7
2010-12-26 00:09:57 +00:00
18ce64753dNCDConfigParser: increase stack size, workaround token leak when the stack overflows
ambrop7
2010-12-23 21:07:04 +00:00
de849d2500ncd: allow a module to export multiple statement types
ambrop7
2010-12-23 15:21:21 +00:00
f7e4dff34ancd: use jobs instead of direct iteration when initializing processes and when initiating their shutdown. This allows a module to do its job work before NCD does something with another module, and allows modules not to be independent. Otherwise, if modules were not independent, problems would arise when a job event between a module and NCD is scheduled but not yet delivered, and another module causes an internal event at the module.
ambrop7
2010-12-23 14:46:13 +00:00
443def606fncd: major rework, make NCD into a much more general system
ambrop7
2010-12-23 13:45:59 +00:00
63ef9fa528NCDIfConfig: use "ip" instead of "route" for setting up routes (or we have problem with "host" routes), fix TUNSETOWNER
ambrop7
2010-12-23 13:31:29 +00:00
b760ee95ebncd: gracefully finish modules when terminating
ambrop7
2010-12-19 15:10:46 +00:00
e084b20f1fncd/interface_modules/interface_badvpn: support running the client program as a specific user
ambrop7
2010-12-19 13:14:59 +00:00
8e73c9d4b3BUnixSignal: don't provide any information about a signal other than the signal number. This is because multiple signals (at least SIGCHLD) may be merged into one, so it is useless to provide additional info about a signal.
ambrop7
2010-12-19 10:10:00 +00:00
2b5d2cdfb0ncd/interface_modules/interface_badvpn: log error if we can't destory the device
ambrop7
2010-12-18 23:22:22 +00:00
5e6176ebf1BProcess: Wait for any process in waitpid(), not just the pid that came with the signal. Needed because we may only get a single signal when multiple processes terminate.
ambrop7
2010-12-18 23:21:20 +00:00
501ea0f98bncd: Improve interface module interface. Support routes without a gateway. NCDIfConfig: add functions for creating and removing TUN/TAP devices.
ambrop7
2010-12-18 20:26:52 +00:00
7dd1d83522BProcess: call waitpid() for all processes, not just recognized ones. This is needed so that BProcess processes whose BProcess objects have been freed don't remain zombies. Be quiet if we wait for an unknown process, or if the wait fails. This is because we may catch SIGCHLD signals for processes which were ran synchronously and were already waited for, e.g. with system().
ambrop7
2010-12-18 20:17:28 +00:00
d40051f9c1ncd: add some convenience functions for interface modules
ambrop7
2010-12-18 14:10:31 +00:00