Changeset 110 for branches/samba-3.0/source/ndpsmb/ndpsmb.c
- Timestamp:
- Jan 21, 2008, 9:55:43 AM (18 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/samba-3.0/source/ndpsmb/ndpsmb.c
r107 r110 156 156 { ND_PROP_ULONG, 0, "LOGLEVEL", "0"}, 157 157 { ND_PROP_ULONG, 0, "EASUPPORT", "1"}, 158 { ND_PROP_ULONG, 0, "KRB5SUPPORT", "1"},159 158 {ND_PROP_STRING, 0, NULL, NULL} 160 159 }; … … 209 208 char loglevel; 210 209 int easupport; 211 int krb5support;212 210 } Resource; 213 211 … … 246 244 sd.FgBg = SSF_FGBG_BACK; 247 245 sd.PgmName = EXECNAME; 248 if (pRes->krb5support)249 {250 StrNCat(params, " -k ", sizeof(params) - 1);251 }252 246 if (pRes->loglevel) 253 247 { … … 263 257 StrNCat(params, pRes->logfile, sizeof(params) - 1); 264 258 } 265 266 259 log("params <%s>\n", params); 267 260 sd.PgmInputs = *params ? params : NULL; … … 274 267 char failed[CCHMAXPATH + 1] = {0}; 275 268 RESULTCODES res = {0}; 276 UCHAR pszArgString[CCHMAXPATH+41] ; /* Argument string */ 277 sprintf(pszArgString, "smbcd %s\0", params); 278 if (params!=NULL) 279 pszArgString[5] = '\0' ; 280 rc = DosExecPgm(failed, sizeof(failed), EXEC_BACKGROUND, pszArgString, NULL, &res, EXECNAME); 269 char * p = params; 270 StrCpy(p, EXECNAME); 271 p += StrLen(p) + 1; 272 if (*pRes->logfile) 273 { 274 StrCpy(p, "-l "); 275 StrNCat(p, pRes->logfile, sizeof(params) - (p - (char *)params)); 276 p += StrLen(p) + 1; 277 if (pRes->loglevel) 278 { 279 char level[2]; 280 level[0] = pRes->loglevel + '0'; 281 level[1] = 0; 282 StrCpy(p, "-d "); 283 StrNCat(p, level, sizeof(params) - (p - (char *)params)); 284 p += StrLen(p) + 1; 285 } 286 } 287 else 288 { 289 StrCpy(p, "-q"); 290 p += StrLen(p) + 1; 291 } 292 *p = 0; 293 rc = DosExecPgm(failed, sizeof(failed), EXEC_BACKGROUND, params, NULL, &res, EXECNAME); 281 294 log("smbcd DosExecPgm codeTerminate %d codeResult %d rc %d\n", res.codeTerminate, res.codeResult, rc); 282 295 } 283 if (!rc) 296 if (!rc) 284 297 { 285 298 DosSleep(500); … … 379 392 pRes->loglevel = 0; 380 393 pRes->easupport = 1; 381 pRes->krb5support = 0;382 394 383 395 t = 0, q = NULL; … … 484 496 { 485 497 pRes->memlen = t * 65536; 486 }487 }488 489 t = 0;490 rc = ph->fsphQueryUlongProperty (pRes->properties, "KRB5SUPPORT", &t);491 if (!rc)492 {493 if (t > 1)494 {495 rc = ERROR_INVALID_PARAMETER;496 }497 else498 {499 pRes->krb5support = t;500 498 } 501 499 } … … 2019 2017 int APIENTRY NdpIOCTL (int type, HRESOURCE resource, char *path, int function, void *in, ULONG insize, PULONG poutlen) 2020 2018 { 2021 2019 log("NdpIOCTL <%s> %d %d\n", path, function, ERROR_NOT_SUPPORTED); 2022 2020 return ERROR_NOT_SUPPORTED; 2023 2021 }
Note:
See TracChangeset
for help on using the changeset viewer.