Disreguard my previous email, there was some stuff missing, and a poor way
of dealing with other things. Use this one instead. Someone explain to me
why in gods name does control have to be passed to game_loop_unix, when its
declared outside anyways?


Anyways, here it is, a text file with the instructions on making rom listen
to multiple ports

Enjoy


__________________________________________________________________
Steven
ICQ#: 2711015
Current ICQ status:
+  More ways to contact me
__________________________________________________________________

First declare a variable outside of your main function for the new control.

Goto the line that says: 

int port, control; 

and add port2,control2; 



inside your int main function 
do:

you have to set port2 = to the new port number. You can either do:

port2 = port+1; which will make your new port, one higher then your previous 

or read it in from a file, or from the argument list when you execute rom. 
Either way
you should be able to figure this out.

now look for where you execute init_socket in main.
and copy it for the new control. Basically add:

control2 = init_socket( port2 );

then add:

close( control2 ); under where it closes the first one.



now in stock rom, this is what you do. I have a modified version but it should 
still work.


Under polling active descriptors add:

FD_SET(control2, &in_set );



then change maxdesc = control; to maxdesc = UMAX( control, control2 ); or if 
you know
control2 will always be the highest, then just set maxdesc = to it. 

then under New Connections:
add:

if ( FD_ISSET( control2, &in_set ) )
   init_descriptor( control2 );


this will cause the mud to listen to the new port.



 

Reply via email to