// Copyright 1999 (c) by Perforce Software, Inc. All rights reserved. // // p4wThread: // Manages a single HTTP request. #ifndef p4wThread_H #define p4wThread_H #include "p4wAllCommands.h" #define OPTSFLAGS "?abBc:C:d:F:g:hH:I+iJ:L:lMm:n:o:p:P:r:s:tT:u:U:v:Vw:Z:0" // // External classes class p4wRequest; class Options; // // p4wThread class class p4wThread : public Thread { public: // // Constructors and destructor. p4wThread(NetTransport * t, Options * opts, const char *hostPort, const char *progName, int isNTService=0, int isHTTPS=0, int securityFlags=0, ErrorLog *reportLog=0); virtual ~p4wThread(); // // Thread entry point. void Run(); private: // // The security information for this p4web instance. int Authenticate(); // // Write the log file record for this request void writeLog( StrBuf & headers ); // // Big switch statement for dispatching specified p4 command void doCommand( AllCommands cmd ); // // Issue Init or Final, generating error page upon failure int doP4Init(); void doP4Final(); // // The Perforce client handle and Web822 object. ClientApi fClient; Web822 fWeb822; // // The p4wRequest for this connection. p4wRequest *fRequest; // // Browse-only mode (or not) int fBrowseOnly; // // Browse-only mode that requires authorization int fAuthBrowseOnly; // // Still requires authorization? int fNeedsAuth; // // Bypass authorization? int fNoAuth; // // Javascript handling int fJavascript; StrBuf fJavaScriptViewName; StrBuf fJavaScriptViewPath; // // Restrict access to localhost? int fRestrictLocal; // // host:port needed by p4wRequest StrBuf fHostPort; // https flag needed by p4wRequest int fIsHTTPS; // security flags needed by p4wRequest int fSecurityFlags; // // Did I set the password? int fSetPassword; // int fFirstAuth; // // Are we running as an NT service? int fIsNTService; // // P4CHARSET (if set) StrBuf fCharSet; // // p4 init failure? int fInitFailed; // int fLoginAll; // // Name of the program or service StrBuf fProgName; // // Restricted to this Group StrBuf fGroup; // // Show only these tabs StrBuf fTabs; // // Request Log and extra log message buffer ErrorLog *fReportLog; StrBuf fReportLogMore; // // Startup options Options *fOpts; // // Multiuser flag int fIsMultiUser; }; #endif // p4wThread_H
# | Change | User | Description | Committed | |
---|---|---|---|---|---|
#1 | 12234 | Matt Attaway |
Rejigger P4Web project in preparation for official sunsetting The bin directory contains the last official builds of P4Web from the Perforce download site. P4Web is soon to be completely sunsetted; these builds are here for folks who don't want to build their own. To better handle the archived builds the source code has been moved into a separate src directory. |
||
//guest/perforce_software/p4web/Main/p4wThread.h | |||||
#1 | 8914 | Matt Attaway | Initial add of the P4Web source code |