Changeset 107 for branches/samba-3.0/source/ndpsmb/ndpsmb.c
- Timestamp:
- Dec 10, 2007, 9:00:50 PM (18 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/samba-3.0/source/ndpsmb/ndpsmb.c
r70 r107 156 156 { ND_PROP_ULONG, 0, "LOGLEVEL", "0"}, 157 157 { ND_PROP_ULONG, 0, "EASUPPORT", "1"}, 158 { ND_PROP_ULONG, 0, "KRB5SUPPORT", "1"}, 158 159 {ND_PROP_STRING, 0, NULL, NULL} 159 160 }; … … 208 209 char loglevel; 209 210 int easupport; 211 int krb5support; 210 212 } Resource; 211 213 … … 244 246 sd.FgBg = SSF_FGBG_BACK; 245 247 sd.PgmName = EXECNAME; 248 if (pRes->krb5support) 249 { 250 StrNCat(params, " -k ", sizeof(params) - 1); 251 } 246 252 if (pRes->loglevel) 247 253 { … … 257 263 StrNCat(params, pRes->logfile, sizeof(params) - 1); 258 264 } 265 259 266 log("params <%s>\n", params); 260 267 sd.PgmInputs = *params ? params : NULL; … … 267 274 char failed[CCHMAXPATH + 1] = {0}; 268 275 RESULTCODES res = {0}; 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); 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); 294 281 log("smbcd DosExecPgm codeTerminate %d codeResult %d rc %d\n", res.codeTerminate, res.codeResult, rc); 295 282 } 296 if (!rc) 283 if (!rc) 297 284 { 298 285 DosSleep(500); … … 392 379 pRes->loglevel = 0; 393 380 pRes->easupport = 1; 381 pRes->krb5support = 0; 394 382 395 383 t = 0, q = NULL; … … 496 484 { 497 485 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 else 498 { 499 pRes->krb5support = t; 498 500 } 499 501 }
Note:
See TracChangeset
for help on using the changeset viewer.