Find Jobs
Hire Freelancers

C++ daemon that interacts with a php script and blackbox module

$2-30 USD / hour

Closed
Posted over 13 years ago

$2-30 USD / hour

Your task is to write a program that runs as a background process on a web server. The process should listen on some arbitrary port, and accept input in the form of properly-formatted JSON (or some other lightweight data-interchange format). The ultimate goal is eventual integration with a server-side PHP script that prompts a user for information. ## Deliverables Here is the proposed user/PHP/daemon interaction, from a high-level view: 1. The user logs into the web site, and is assigned a session id from the PHP script (the PHP script handles ALL user authentication/access verification); 2. The PHP script prompts the user with input forms, which the user completes and submits; 3. The PHP script verifies that the input is correctly formatted and "safe" (e.g., taint checking), and connects (if it's not already connected) to the daemon on some arbitrary port; 4. The daemon will only create connections with the localhost or a finite list of servers. It will not respond to requests from other entities; 5. The PHP script requests instantiation of a new citation object; 6. The daemon creates a new citation object, and requests the form data; 7. The PHP script passes the form data to the daemon; 8. The daemon attaches the form to the citation object and tries to render a full citation; 9. The daemon might determine that it needs more information. This means steps 6-9 loop until the citation is rendered; 10. Once the citation is complete, the object is destroyed. I want to give you complete freedom in writing this program, but there are a few required performance elements that necessitate initial discussion. First, the program should be extremely robust, and able to handle many simultaneous requests. I like the way Windows runs its message queue, so that type of model would be acceptable. Additionally, the program should be relatively secure; I've pushed much of the authentication burden onto the PHP script, so really your job is to map session ids with citation object. Additionally, we don't want citation objects to last forever, so some finite lifetime before they're destroyed would be appropriate. Relatively, this should be a straightforward C++ job. You're free to make use of any libraries with non-copyleft, permissive licenses. The citation modules are blackbox, so you don't have to incorporate that functionality--rather, you may replace those functions with something like printf. What you're designing is the shell, and we will finish the rest of the program. In your proposal, please indicate: (1) your experience with C++; (2) how you propose to handle the 'authentication' issue; (3) a rough estimation of how long you think this would take; and (4) your availability.
Project ID: 2661803

About the project

7 proposals
Remote project
Active 13 yrs ago

Looking to make some money?

Benefits of bidding on Freelancer

Set your budget and timeframe
Get paid for your work
Outline your proposal
It's free to sign up and bid on jobs
7 freelancers are bidding on average $13 USD/hour for this job
User Avatar
See private message.
$27.30 USD in 20 days
5.0 (23 reviews)
4.6
4.6
User Avatar
See private message.
$7.28 USD in 20 days
5.0 (15 reviews)
4.4
4.4
User Avatar
See private message.
$10 USD in 50 days
5.0 (10 reviews)
3.8
3.8
User Avatar
See private message.
$13.65 USD in 50 days
5.0 (3 reviews)
2.1
2.1
User Avatar
See private message.
$7.28 USD in 20 days
5.0 (1 review)
0.0
0.0
User Avatar
See private message.
$18.20 USD in 20 days
0.0 (2 reviews)
0.0
0.0
User Avatar
See private message.
$9.10 USD in 40 days
0.0 (0 reviews)
0.0
0.0

About the client

Flag of UNITED STATES
United States
0.0
0
Member since May 22, 2010

Client Verification

Thanks! We’ve emailed you a link to claim your free credit.
Something went wrong while sending your email. Please try again.
Registered Users Total Jobs Posted
Freelancer ® is a registered Trademark of Freelancer Technology Pty Limited (ACN 142 189 759)
Copyright © 2024 Freelancer Technology Pty Limited (ACN 142 189 759)
Loading preview
Permission granted for Geolocation.
Your login session has expired and you have been logged out. Please log in again.