I was really hoping to get something functional using threads and function calls into the server. If it is standalone, then my scripts will need some hokey magic with message queues or some such interface. That is actually the current interface - a standalone server written in C waiting to accept udp messages, and when one is accepted, just do a system call with the contents of the message to launch a new browser with an argument of a new cgi script. Any way I can simplify the situation would be the best-case. The perl cgi scripts are driving the project, as they serve up html to a browser, and sockets from the main system need to interface and control things (both coming and going).