82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
|
FILE *httpIn; /* Accept HTTP input from here */
FILE *httpOut; /* Send HTTP output here */
int xlinkClusterOnly; /* Set when cloning. Only process clusters */
int fTimeFormat; /* 1 for UTC. 2 for localtime. 0 not yet selected */
int *aCommitFile; /* Array of files to be committed */
int markPrivate; /* All new artifacts are private if true */
char *zAccessToken; /* X-Fossil-Access-Token HTTP header field */
FILE *sshIn; /* Result of popen("ssh") */
int urlIsFile; /* True if a "file:" url */
int urlIsHttps; /* True if a "https:" url */
int urlIsSsh; /* True if an "ssh:" url */
char *urlName; /* Hostname for http: or filename for file: */
char *urlSshHost; /* Hostname for ssh: tunnels */
char *urlHostname; /* The HOST: parameter on http headers */
|
>
|
>
|
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
|
FILE *httpIn; /* Accept HTTP input from here */
FILE *httpOut; /* Send HTTP output here */
int xlinkClusterOnly; /* Set when cloning. Only process clusters */
int fTimeFormat; /* 1 for UTC. 2 for localtime. 0 not yet selected */
int *aCommitFile; /* Array of files to be committed */
int markPrivate; /* All new artifacts are private if true */
char *zAccessToken; /* X-Fossil-Access-Token HTTP header field */
int sshPid; /* Process id of ssh subprocess */
FILE *sshIn; /* From ssh subprocess to this */
FILE *sshOut; /* From this to ssh subprocess */
int urlIsFile; /* True if a "file:" url */
int urlIsHttps; /* True if a "https:" url */
int urlIsSsh; /* True if an "ssh:" url */
char *urlName; /* Hostname for http: or filename for file: */
char *urlSshHost; /* Hostname for ssh: tunnels */
char *urlHostname; /* The HOST: parameter on http headers */
|
972
973
974
975
976
977
978
979
980
981
982
983
984
985
|
}
return 0;
}
#endif
#endif
/*
** COMMAND: server
** COMMAND: ui
**
** Usage: %fossil server ?-P|--port TCPPORT? ?REPOSITORY?
** Or: %fossil ui ?-P|--port TCPPORT? ?REPOSITORY?
**
** Open a socket and begin listening and responding to HTTP requests on
|
>
|
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
|
}
return 0;
}
#endif
#endif
/*
** COMMAND: sshd
** COMMAND: server
** COMMAND: ui
**
** Usage: %fossil server ?-P|--port TCPPORT? ?REPOSITORY?
** Or: %fossil ui ?-P|--port TCPPORT? ?REPOSITORY?
**
** Open a socket and begin listening and responding to HTTP requests on
|
1019
1020
1021
1022
1023
1024
1025
1026
1027
1028
1029
1030
1031
1032
|
isUiCmd = g.argv[1][0]=='u';
find_server_repository(isUiCmd);
if( zPort ){
iPort = mxPort = atoi(zPort);
}else{
iPort = db_get_int("http-port", 8080);
mxPort = iPort+100;
}
#ifndef __MINGW32__
/* Unix implementation */
if( isUiCmd ){
#if !defined(__DARWIN__) && !defined(__APPLE__)
zBrowser = db_get("web-browser", 0);
if( zBrowser==0 ){
|
>
>
>
>
>
|
1022
1023
1024
1025
1026
1027
1028
1029
1030
1031
1032
1033
1034
1035
1036
1037
1038
1039
1040
|
isUiCmd = g.argv[1][0]=='u';
find_server_repository(isUiCmd);
if( zPort ){
iPort = mxPort = atoi(zPort);
}else{
iPort = db_get_int("http-port", 8080);
mxPort = iPort+100;
}
if( g.argv[1][0]=='s' && g.argv[1][1]=='s' ){
g.zAccessToken = db_text(0, "SELECT lower(hex(randomblob(20)))");
printf("Access-Token: %s\n", g.zAccessToken);
fflush(stdout);
}
#ifndef __MINGW32__
/* Unix implementation */
if( isUiCmd ){
#if !defined(__DARWIN__) && !defined(__APPLE__)
zBrowser = db_get("web-browser", 0);
if( zBrowser==0 ){
|