548
549
550
551
552
553
554
555
556
557
558
559
560
561
|
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
|
+
+
+
|
}
if( zFileGlob ){
blob_appendf(&options, " --files-urlenc %T", zFileGlob);
}
if( g.useLocalauth ){
blob_appendf(&options, " --localauth");
}
if( g.cgiUpperParamsOk ){
blob_appendf(&options, " --cgiupperok");
}
if( g.thTrace ){
blob_appendf(&options, " --th-trace");
}
if( flags & HTTP_SERVER_REPOLIST ){
blob_appendf(&options, " --repolist");
}
zSkin = skin_in_use();
|
982
983
984
985
986
987
988
989
990
991
992
993
994
995
|
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
1001
1002
|
+
+
+
+
|
**
** --localauth
**
** Enables automatic login if the --localauth option is present
** and the "localauth" setting is off and the connection is from
** localhost.
**
** --cgiupperok
**
** Allows CGI parameter names to begin with an uppercase letter.
**
** --repolist
**
** If REPOSITORY is directory, URL "/" lists all repositories.
**
** --scgi
**
** Create an SCGI server instead of an HTTP server
|
1042
1043
1044
1045
1046
1047
1048
1049
1050
1051
1052
1053
1054
1055
|
1049
1050
1051
1052
1053
1054
1055
1056
1057
1058
1059
1060
1061
1062
1063
|
+
|
const char *zStart = find_option("start", "S", 1);
const char *zUsername = find_option("username", "U", 1);
const char *zPassword = find_option("password", "W", 1);
const char *zPort = find_option("port", "P", 1);
const char *zNotFound = find_option("notfound", 0, 1);
const char *zFileGlob = find_option("files", 0, 1);
const char *zLocalAuth = find_option("localauth", 0, 0);
const char *zCgiUpperOk = find_option("cgiupperok", 0, 0);
const char *zRepository = find_repository_option();
int useSCGI = find_option("scgi", 0, 0)!=0;
int allowRepoList = find_option("repolist",0,0)!=0;
Blob binPath;
verify_all_options();
if( g.argc==4 ){
|
1096
1097
1098
1099
1100
1101
1102
1103
1104
1105
1106
1107
1108
1109
|
1104
1105
1106
1107
1108
1109
1110
1111
1112
1113
1114
1115
1116
1117
1118
|
+
|
if( zAltBase ) blob_appendf(&binPath, " --baseurl %s", zAltBase);
if( zPort ) blob_appendf(&binPath, " --port %s", zPort);
if( useSCGI ) blob_appendf(&binPath, " --scgi");
if( allowRepoList ) blob_appendf(&binPath, " --repolist");
if( zNotFound ) blob_appendf(&binPath, " --notfound \"%s\"", zNotFound);
if( zFileGlob ) blob_appendf(&binPath, " --files-urlenc %T", zFileGlob);
if( zLocalAuth ) blob_append(&binPath, " --localauth", -1);
if( zCgiUpperOk ) blob_append(&binPath, " --cgiupperok", -1);
blob_appendf(&binPath, " \"%s\"", g.zRepositoryName);
/* Create the service. */
hScm = OpenSCManagerW(NULL, NULL, SC_MANAGER_ALL_ACCESS);
if( !hScm ) winhttp_fatal("create", zSvcName, win32_get_last_errmsg());
hSvc = CreateServiceW(
hScm, /* Handle to the SCM */
fossil_utf8_to_unicode(zSvcName), /* Name of the service */
|