#------------------------------------------------------------------------------------- # Name - hpd.conf # Purpose - Configuration file for HPD process # If you need to change any of these configuration parameters, please make a copy of hpd.conf as hpd.conf.save and then make changes in hpd.conf. After that stop and start HPD. #------------------------------------------------------------------------------------- #IPv4 Ports #HTTP Port HPD_PORT 7908 #HTTPS port HPD_SPORT 7909 #IPv6 Ports HPD6_PORT 6880 HPD6_SPORT 6443 #Keep Alive Timeout in milliseconds for HTTP connections KEEP_ALIVE_TIMEOUT 60000 #Timeout in milliseconds for HTTP connections for First request, #default is 30000 (30sec) FIRST_REQ_TIMEOUT 30000 # To parse ACCESS_LOG keyword # ACCESS_LOG , Ex: ACCESS_LOG 1 10 # Mode: 0 for disable, 1 for enable # Size: size is rollover size of file, its in MB. Default value of file size will be 10 MB ACCESS_LOG 1 10 #Set Service Time for CGI embedded, static, correlated URL. #SVC_TIME #For Example: #SVC_TIME 0 #SVC_TIME 1 1500 #SVC_TIME 2 5000 #SVC_TIME 3 1000 6000 #Set Service Time for CGI main URL. #SVC_CGI_TIME #For Example: #SVC_CGI_TIME testpg 0 #SVC_CGI_TIME testpg 1 1500 #SVC_CGI_TIME testpg 2 5000 #SVC_CGI_TIME testpg 3 1000 6000 #Set OPTIMIZE_ETHER_FLOW to usual defauls 0f 0 for 10 packets per connection 5 on each side # set it to 1 to reduce Netocean packets to 4 (from 5) # set it to 2 to reduce Netocean packets to 3 (from 5) and NetStorm to 4 OPTIMIZE_ETHER_FLOW 0 # Use multiple Ports - Not Used now #USE_MULTIPLE_PORTS 0 #Max Request bytes that are validated #MAX_REQUEST_VALIDATE_SIZE 56000 MAX_REQUEST_VALIDATE_SIZE 1073741824 # Maximum number of HPD processes to be started (excluding parent process) # If defined, then these number + 1 of HPD processes are started. # If not defined, then number of HPD processes depends on the # number of CPU and core on you machine. # Generally there are 2 HPD per CPU and/or core. # For example, if you have machine with 2 Dual core CPUs, # then total of 9 HPD (1 + 2*4) processes will be started. #NUM_PROCESS 3 #Max size of hpd_debug.log Default is approx 100MB #MAX_DEBUG_LOG_FILE_SIZE 100000000 #Max size of hpd_error.log file. Default is approx 10MB #MAX_ERROR_LOG_FILE_SIZE 10000000 #CONTENT_LENGTH_INDICATOR [ ] # ## will be: # 0 - Use Content-Length Header (Default) # 1 - Use Chunked Encoding # 2 - Closing Connection - content length header should not be sent ## will be: # 0 - Size that has to define by User (Default size is 1440 Bytes) # 1 - No. of chunks that has to define by User (Default No. of chunks is 2) ##[] will be: # 0 . Size in Bytes that has to define by User (Default Size is 1440 Byte) # 1 - No. of chunks that has to define by User (Default No. of chunks is 2) # #For Example - #CONTENT_LENGTH_INDICATOR 1 0 1024 #START_UP_MODE # #HPD Start Mode. # 0 - HPD starts in normal mode. It will start number of child processes based on # NUM_PROCESS keyword. This is default mode. # 1 - HPD starts in set mode. It will start one child process per server IP address assigned using IP Mgmt # In this case, NUM_PROCESS keyword is not used. Max of 100 processes can be started in this mode # 2 - Not yet Implemented # 3 - In this mode, HPD will start the process depending on the conf/hpd_auto_start.conf file. # Num process, CPU Mask and ethernet Interface are specified in hpd_auto_start.conf. #START_UP_MODE 0 #MAX_CON_PER_CHILD # is number of connections HPD is able to work with at any point in time. Value defaults to 32768 if not specified. #MAX_CON_PER_CHILD 32768 # DirectoryIndex: sets the file that HPD will serve if a directory # is requested. #DirectoryIndex #If DirectoryIndex is not configured, then 404 is returned #If DirectoryIndex is configured, then directory is searched in this order and first file found is served. If none of these files are found, then 404 is returned #DirectoryIndex index.html index.htm index.jsp #SSL_CLIENT_AUTHENTICATION # will be: # 0 - Client Authentication during handshake is OFF (Default) # 1 - Client Authentication during handshake is ON #To enable handshake use SSL_VERIFY_PEER or any other two bits, the last 2 options are 'ored' with SSL_VERIFY_PEER if they are desired #SSL_VERIFY_NONE 0x00 #SSL_VERIFY_PEER 0x01 #SSL_VERIFY_FAIL_IF_NO_PEER_CERT 0x02 #SSL_VERIFY_CLIENT_ONCE 0x04 # Server Certificate Chain: # Point SSLCertificateChainFile at a file containing the concatenation of PEM encoded CA certificates which form the # certificate chain for the server certificate. Alternatively the referenced file can be the same as SSLCertificateFile # when the CA certificates are directly appended to the server certificate for convinience. #SSLCertificateChainFile #Where: Certificate chain file path: Certificate chain file can be in absolute or relative path. #Default Certificate chain file path is /home/cavisson/work/cert/server.pem #For Example: #SSLCertificateChainFile /home/cavisson/work/cert/server.pem #SSLCertificateChainFile server_chain.crt #SSLCertificateChainFile server_chain2.crt # Certificate Authority (CA): # Set the CA certificate verification path where to find CA certificates for client authentication or alternatively one # huge file containing all of them (file must be PEM encoded) #SSLCACertificateFile #Where: CA Certificate file path: This is a root CA Certificate file, this can be in absolute or relative path. #Default CA Certificate file path is /home/cavisson/work/hpd/cert/root.pem #SSLCACertificateFile /home/cavisson/work/root.pem #SSLCACertificateFile root.pem # Certificate Revocation Lists (CRL): # Assemble the certificate revocation lists of certification authorities, which are used to reject revoked certificates. #SSLCARevocationFile #Where: CRL Certificate file path: This is a CRL file, this can be in absolute or relative path. #Default certificate revocation list is Disabled #SSLCARevocationFile /home/cavisson/work/cert/rootca.crl #SSLCARevocationFile rootca.crl # Client Authentication depth: # Client certificate verification depth. #SSLVerifyDepth #Where: Depth value is a number which specifies how deeply to verify the certificate issuer chain before deciding the certificate is not valid. #Default Depth value is 1 #For Example: #SSLVerifyDepth 10 #SSLRecordLength #Where Size is the maximum number of bytes each SSL Record Packet can carry as data #This is the maximum size that the SSL Record layer will fragment the application layer data with. #Default Value is 16384 #For Example: #SSLRecordLength 4096 # HPD error logging: #HPD_ERROR #Default is Enable(1) #For Example: #HPD_ERROR 1 # HPD debug logging level: # Debug level is used to specify what level of logs user wants to enable for logging. #HPD_DEBUG #Where: debug-level can be 1 to 4 #Default debug log is 0(disable) #For Example: #HPD_DEBUG 2 # Module mask logging: # HPD having different modules, so for each module there should be a masks, specifying the particular module. #MODULEMASK #Where: following module-mask list available in hpd: #module-mask Description #HTTP : Debug logging of HTTP request and responses #POLL : Debug logging of epoll event #CON : Debug logging of connection make and break #VARS : Debug logging of all variables – scratch, search, static varaible etc... #SP : Debug logging of Set-Production #CGI : Debug logging of CGI URL - tours, testpg, login, findflight etc... #API : Debug logging of API,s #CR : Debug logging of Correlated (CR) URL or files #SSL : Debug logging of SSL module #CONF : Debug logging of hpd.conf file – parsing keyword and file. #TIMER : Debug logging of timer #STATIC: Debug logging of static url #MISC : Debug logging of miscellaneous files, read global header, child/parent process, etc... #VHOSTS: Debug logging of Virtual hosts #MEMORY: Debug logging of memory For ex – malloc, realloc, free etc. #SVC_TIME : Debug logging of Service-Time #HASHCODE : Debug logging of hash methods #IPMGMT : Debug logging of IP management, protocol #CPU_AFFINITY: Debug logging of CPU affinity #Default module mask is disable. #For Example: #MODULEMASK SP SSL CONF #Note: Modulemask has dependency on hpd log level, # If user specified debug log disable then no debug log will come even modulemask has given. # Debug log level 4 means all debug log will come(1 to 4 level) for specified modulemask. #To enable url request and url response file feature in hpd need to do following things: #HPD_DEBUG 4 #MODULEMASK HTTP #URL request and response file will be unique. And should be debug level 4 and modulemask HTTP #HPD_HTTP3_MQ_SETTINGS 100 # Number of HTTP's request and response files. # Following keyword is for creating specified numbers of URL req/rep files. #Syntax: # KEYWORD