QZ Forms

The code is data

Theory of Operation

On startup, QZForms will read its configuration file, spawn the tagger process, and start the number of threads specified for handling connections. The main thread does not handle connections. It takes on the role of housekeeper which will periodically clear out memory no longer needed.

The handler threads will wait for an incomming request. Each thread stays with the request it is handling until completion.

The incomming data is parsed. The session key is decoded and a hash table lookup determines the session state. If the current requests includes HTTP post data, the post data is searched for a form tag and the form tag is matched against the requested URL.

If the URL and the form tag match, then the application is deemed to have permission to excute the table action for the form name.