aceserver database_path -port decimal_port_number -time_out client_time_out_in_seconds -server_time_out server_time_out_in_seconds -maxKbytes max_chunk_size_in_KBIf you rename or link aceserver to rpc.acedbd then you can use the following syntax:
rpc.acedbd database_path decimal_port_number client_time_out_in_seconds:server_time_out_in_seconds:max_chunk_size_in_KBNote the colons separating the last three parameters. Time outs of 0 for the client/server will disable time outs for the client/server. A chunk size of 0 turns off chunking on the server side. It is still possible to set chunk size on the client side. See below for how to run the aceserver as daemon from inetd.
Example code here on how to handle this on the client side:
# protect single quotes in aceserver output $ace_output =~ s/\'/\'.\"\'\".\'/g; # ^Acan't^A ----> ^Acan' . "'" . 't^A # converts ^A (or $separator) to single quotes $ace_output =~ s/$separator/\'/g; # ^Acan' . "'" . 't^A ----> 'can' . '"' . 't' # builds the perl ace object $obj = eval($ace_output); # 'can' . "'" . 't' ----> can'tExamples of perl ace objects and how to manipulate them will be available at NAL.
Examples: acedb 20000114 aboutdb 20000115 aatdb 20000116
The format is:
<databasename>/<version> stream rpc/tcp wait <user> <path> rpc.acedbd <DB_path> <port> <cto>:<sto>:<mKB>Where:
<databasename> is the same one as was entered in /etc/rpc <version> currently 1 <user> the username created in step 1 <path> the full path to the executable (or to the link) <DB_path> the full path to the database <port> the same port as was entered in /etc/rpc <cto> Client timeout. Time that a connection with an inactive client is kept open <sto> Server timeout. Time that the server stays alive, when no client connections are active <mKB> Maximum chunk size in KBExamples:
acedb/1 stream rpc/tcp wait root /usr/local/bin/rpc.acedbd rpc.acedbd /acedb/worm 20000114 600:600:100 aboutdb/1 stream rpc/tcp wait root /usr/local/bin/rpc.acedbd rpc.acedbd /acedb/aboutdb 20000115 600:600:10 aatdb/1 stream rpc/tcp wait root /usr/local/bin/rpc.acedbd rpc.acedbd /acedb/aatdb 20000116 600:600:50
If an aceclient is started to connect to your server machine with a port from the one's you created, the corresponding server will be started, and stay alive as long as there are active clients. If all clients are disconnected and the server timeout has elapsed, the server will shut itself down. A timeout =3D 0 (as set on the command line) will prevent shutdown (but this is not advisable). The default timeout is 600 seconds.