fixed bug in child pipe reading code which limited the total readable bytes
[Evergreen.git] / OpenSRF / src / libstack / osrf_prefork.h
index 22d7742..98b334f 100644 (file)
@@ -14,7 +14,8 @@
 #include "osrf_settings.h"
 #include "osrfConfig.h"
 
-#define READ_BUFSIZE 4096
+//#define READ_BUFSIZE 4096
+#define READ_BUFSIZE 1024
 #define MAX_BUFSIZE 10485760 /* 10M enough? ;) */
 #define ABS_MAX_CHILDREN 256 
 
@@ -37,6 +38,7 @@ struct prefork_simple_struct {
        int data_to_child;
        int data_to_parent;
        int current_num_children;
+       int keepalive; /* keepalive time for stateful sessions */
        char* appname;
        struct prefork_child_struct* first_child;
        transport_client* connection;
@@ -53,8 +55,8 @@ struct prefork_child_struct {
        int available;
        int max_requests;
        char* appname;
+       int keepalive;
        struct prefork_child_struct* next;
-       transport_client* connection;
 };
 
 typedef struct prefork_child_struct prefork_child;
@@ -76,7 +78,7 @@ void del_prefork_child( prefork_simple* forker, pid_t pid );
 void check_children( prefork_simple* forker );
 
 void prefork_child_process_request(prefork_child*, char* data);
-void prefork_child_init_hook(prefork_child*);
+int prefork_child_init_hook(prefork_child*);
 
 prefork_child* prefork_child_init( 
                int max_requests, int read_data_fd, int write_data_fd,