mod_webkeep.h #3

  • //
  • guest/
  • stephen_vance/
  • webkeep/
  • mod_webkeep.h
  • View
  • Commits
  • Open Download .zip Download (2 KB)
/*
 * Copyright 1995, 1998 Perforce Software.  
 *
 * This file is part of WebKeeper, a perforce client apache module.
 *
 * License is hereby granted to use this software and distribute it
 * freely, as long as this copyright notice is retained and modifications
 * are clearly marked.
 *
 * ALL WARRANTIES ARE HEREBY DISCLAIMED.
 *
 * $Id: //public/perforce/webkeeper/mod_webkeep.h#1 $
 */

/*
 * webkeep.h - glue mod_webkeep.c to the Perforce api via webkeep.cc
 *
 * This header file is for inclusion by mod_webkeep.c when building
 * webkeeper into an Apache web server.
 */

typedef struct _WebKeepPrinter WebKeepPrinter;
typedef struct _WebKeepConnect WebKeepConnect;

/*
 * WebKeepConnect - pointers to configuration data stored by Apache
 */

struct _WebKeepConnect {

	char *port;	/* WebKeepPort - default $P4PORT, perforce:1666 */
	char *user;	/* WebKeepUser - default $P4USER, $USERNAME */
	char *pass;	/* WebKeepPasswd - no default */
	char *client;	/* WebKeepClient - default $P4CLIENT, hostname */
	int   sync;     /* WebKeepSync - Should client be sync'ed */
} ;

/*
 * WebKeepPrinter - callbacks to Apache code 
 */

struct _WebKeepPrinter {

	int status;
	void *closure;
	void (*data)(WebKeepPrinter *,int isBinary);
	void (*text)(WebKeepPrinter *,char *,int);
	void (*error)(WebKeepPrinter *,char *);

} ;

# ifdef CPLUSPLUS
extern "C" {
# endif

void webKeepPrint( WebKeepConnect *p4, char *path, WebKeepPrinter *printer );
void webKeepSync( WebKeepConnect *p4, char *path, WebKeepPrinter *printer );
int webKeepFileExists( WebKeepConnect *p4, char *path );
int webKeepDirExists( WebKeepConnect *p4, char *path );

# ifdef CPLUSPLUS
}
# endif

# Change User Description Committed
#3 803 Stephen Vance Update to Apache 1.3 API.
 Eliminate compilation warning.  Add WebKeepDirectoryIndex.
#2 766 Stephen Vance Add WebKeepSync to configuration directives, allowing a local workspace to be sync'ed based on the web request and letting the normal Apache mechanisms do the rest.
#1 603 Stephen Vance First public checkin of Webkeeper updated for Apache 1.3.X.
 Tested on FreeBSD 3.5 and Red Hat Linux 6.2 and 7.0.