very simple http wrapper around c program

Job Description

I have a simple c program (with source code) that runs on linux that controls a piece of hardware. The hardware is used to capture video, the program that I have already is very simple, all the heavy lifting of saving encoding video formatting images etc is handled in a library that comes with the hardware.

The current program operates via command line options, so you would start the program with some options and save an image to disc, the program then exits. Or you might start the program with some options and it starts writing video to disc, you stop writing video with a ctrl+c.

What I need is the ability to do this via a http request.

High level requirements;

1. http listener, configurable by port and bindable to specific ip address
2. http listener app is self contained and will respond to requests and control the video capture without the need for any other applications
3. The following commands should be supported
- take still image
- start recording video
- stop recording video
- get status - returning if the hardware is present, is it recording etc
4. software should be able to handle multiple simultaneous inbound requests, if there is an active request, subsequent requests should be rejected, except the status request.

The above is the high level requirements, I will fill expand more for the successful candidate and be able to answer any questions.

Initial development should be done on your own hardware, when you are ready to test I can make a machine available to you with hardware attached.

Delivery should be source code with build instructions.

Current target is ubuntu 12.04, but the code should be as portable as possible.