Changeset 818 for trunk/client/src/smbwrp.c
- Timestamp:
- Sep 27, 2013, 1:57:24 PM (12 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/client/src/smbwrp.c
r808 r818 39 39 static int 40 40 net_share_enum_rpc(struct cli_state *cli, 41 42 43 44 45 41 void (*fn)(const char *name, 42 uint32 type, 43 const char *comment, 44 void *state), 45 void *state) 46 46 { 47 47 int i; … … 78 78 info_ctr.ctr.ctr1 = &ctr1; 79 79 status = rpccli_srvsvc_NetShareEnumAll(pipe_hnd, mem_ctx, 80 81 82 83 84 85 80 pipe_hnd->desthost, 81 &info_ctr, 82 0xffffffff, 83 &total_entries, 84 &resume_handle, 85 &werr); 86 86 87 87 /* Was it successful? */ … … 128 128 char slogfilename[] = "log.smbc"; 129 129 char *env = getenv("LOGFILES"); 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 130 if (env != NULL) 131 { 132 strncpy(slogfile, env, sizeof(slogfile) -1); 133 strncat(slogfile, "\\", sizeof(slogfile) - strlen(slogfile) -1); 134 strncat(slogfile, slogfilename, sizeof(slogfile) - strlen(slogfile) -1); 135 } 136 else 137 { 138 strncpy(slogfile, slogfilename, sizeof(slogfile) -1); 139 } 140 141 // init samba for debug messages 142 setup_logging(slogfile, false); 143 lp_set_logfile(slogfile); 144 debug_parse_levels("10"); 145 145 146 146 } … … 201 201 { 202 202 /* 203 *Block SIGPIPE (from lib/util_sock.c: write())204 *It is not needed and should not stop execution205 203 Block SIGPIPE (from lib/util_sock.c: write()) 204 It is not needed and should not stop execution 205 */ 206 206 BlockSignals(True, SIGPIPE); 207 207 } … … 316 316 char *rparam=NULL, *rdata=NULL; 317 317 char *p; 318 318 319 319 param = SMB_MALLOC_ARRAY(char, 6+nlen+2); 320 320 if (!param) { … … 331 331 332 332 if (!cli_send_trans(cli, SMBtrans2, 333 NULL,/* name */334 -1, 0,/* fid, flags */335 &setup, 1, 0,/* setup, length, max */336 param, param_len, 10,/* param, length, max */337 NULL, data_len, cli->max_xmit/* data, length, max */338 333 NULL, /* name */ 334 -1, 0, /* fid, flags */ 335 &setup, 1, 0, /* setup, length, max */ 336 param, param_len, 10, /* param, length, max */ 337 NULL, data_len, cli->max_xmit /* data, length, max */ 338 )) { 339 339 return False; 340 340 } … … 342 342 SAFE_FREE(param); 343 343 if (!cli_receive_trans(cli, SMBtrans2, 344 345 344 &rparam, ¶m_len, 345 &rdata, &data_len)) { 346 346 return False; 347 347 } … … 402 402 403 403 if (!cli_send_trans(cli, SMBtrans2, 404 NULL,/* name */405 -1, 0,/* fid, flags */406 &setup, 1, 0,/* setup, length, max */407 param, param_len, 2,/* param, length, max */408 NULL, data_len, cli->max_xmit/* data, length, max */409 404 NULL, /* name */ 405 -1, 0, /* fid, flags */ 406 &setup, 1, 0, /* setup, length, max */ 407 param, param_len, 2, /* param, length, max */ 408 NULL, data_len, cli->max_xmit /* data, length, max */ 409 )) { 410 410 return False; 411 411 } 412 412 413 413 if (!cli_receive_trans(cli, SMBtrans2, 414 415 414 &rparam, ¶m_len, 415 &rdata, &data_len)) { 416 416 return False; 417 417 } … … 635 635 } 636 636 file->fd = fd; 637 file-> newmtime = 0;637 file->updatetime = 0; 638 638 file->offset = 0; 639 639 return 0; … … 686 686 } 687 687 688 file-> newmtime = 1;688 file->updatetime = 1; 689 689 file->offset += ret; 690 690 *result = ret; … … 703 703 } 704 704 705 debuglocal(4,"smpwrp_close updatetime: %d\n", file->updatetime); 706 707 if (file->updatetime == 1) 708 { 709 file->mtime = time(NULL); 710 debuglocal(4,"cli_close new mtime %lu\n", file->mtime); 711 } 705 712 706 713 if (!NT_STATUS_IS_OK(cli_close(cli, file->fd))) 707 714 { 708 return os2cli_errno(cli); 709 } 710 if (file->newmtime) 711 { 712 file->newmtime = 0; 713 file->mtime = time(NULL); 714 debuglocal(4,"cli_close new mtime %lu\n", file->mtime); 715 } 715 rc = os2cli_errno(cli); 716 } 717 718 if (!rc && (file->openattr || file->mtime || file->ctime)) 719 { 720 debuglocal(4,"Set pathinfo on close %s %08x %d %d\n", file->fname, file->openattr, file->mtime, file->ctime); 721 if (!NT_STATUS_IS_OK(cli_setpathinfo(cli, file->fname, file->ctime, 0, file->mtime, 0, file->openattr))) 722 { 723 debuglocal(4,"Set pathinfo on close failed %d\n", os2cli_errno(cli)); 724 //rc = os2cli_errno(cli); 725 } 726 } 727 728 file->openattr = 0; 729 file->mtime = 0; 730 file->ctime = 0; 731 file->updatetime = 0; 716 732 file->fd = -1; 717 733 file->offset = 0; 718 if (file->openattr || file->mtime)719 {720 debuglocal(4,"Set attr on close %s %08x %d %d\n", file->fname, file->openattr, file->mtime, file->mtime);721 if (!NT_STATUS_IS_OK(cli_setatr(cli, file->fname, file->openattr, file->mtime)))722 {723 debuglocal(4,"Set attr on close failed %d\n", os2cli_errno(cli));724 //rc = os2cli_errno(cli);725 }726 727 file->openattr = 0;728 file->mtime = 0;729 }730 734 *file->fname = 0; 731 735 return rc;
Note:
See TracChangeset
for help on using the changeset viewer.