Changeset 746 for vendor/current/source3/utils
- Timestamp:
- Nov 27, 2012, 4:56:06 PM (13 years ago)
- Location:
- vendor/current/source3/utils
- Files:
-
- 5 edited
Legend:
- Unmodified
- Added
- Removed
-
vendor/current/source3/utils/net_ads.c
r740 r746 2208 2208 attrs = (argv + 1); 2209 2209 2210 rc = ads_do_search_ all(ads, ads->config.bind_path,2210 rc = ads_do_search_retry(ads, ads->config.bind_path, 2211 2211 LDAP_SCOPE_SUBTREE, 2212 2212 ldap_exp, attrs, &res); -
vendor/current/source3/utils/net_groupmap.c
r740 r746 824 824 d_printf("%s\n%s", 825 825 _("Usage:"), 826 _("net groupmap member ofsid\n"));826 _("net groupmap memberships sid\n")); 827 827 return -1; 828 828 } -
vendor/current/source3/utils/net_idmap_check.c
r740 r746 891 891 } 892 892 893 status = dbwrap_traverse(ctx->db, traverse_check, ctx );893 status = dbwrap_traverse(ctx->db, traverse_check, ctx, NULL); 894 894 895 895 if (!NT_STATUS_IS_OK(status)) { … … 928 928 929 929 static void check_diff_list(struct check_ctx* ctx) { 930 NTSTATUS status = dbwrap_traverse(ctx->diff, traverse_print_diff, ctx );930 NTSTATUS status = dbwrap_traverse(ctx->diff, traverse_print_diff, ctx, NULL); 931 931 932 932 if (!NT_STATUS_IS_OK(status)) { … … 964 964 } 965 965 966 status = dbwrap_traverse(ctx->diff, traverse_commit, ctx );966 status = dbwrap_traverse(ctx->diff, traverse_commit, ctx, NULL); 967 967 968 968 if (!NT_STATUS_IS_OK(status)) { -
vendor/current/source3/utils/net_lookup.c
r740 r746 277 277 krb5_error_code rc; 278 278 krb5_context ctx; 279 struct sockaddr_in *addrs; 280 int num_kdcs,i; 281 krb5_data realm; 282 char **realms; 279 struct ip_service *kdcs; 280 const char *realm; 281 int num_kdcs = 0; 282 int i; 283 NTSTATUS status; 283 284 284 285 initialize_krb5_error_table(); … … 290 291 } 291 292 292 if (argc>0) { 293 realm.data = CONST_DISCARD(char *, argv[0]); 294 realm.length = strlen(argv[0]); 293 if (argc > 0) { 294 realm = argv[0]; 295 295 } else if (lp_realm() && *lp_realm()) { 296 realm.data = lp_realm(); 297 realm.length = strlen((const char *)realm.data); 296 realm = lp_realm(); 298 297 } else { 298 char **realms; 299 299 300 rc = krb5_get_host_realm(ctx, NULL, &realms); 300 301 if (rc) { … … 303 304 return -1; 304 305 } 305 realm.data = (char *) *realms; 306 realm.length = strlen((const char *)realm.data); 307 } 308 309 rc = smb_krb5_locate_kdc(ctx, &realm, (struct sockaddr **)(void *)&addrs, &num_kdcs, 0); 310 if (rc) { 311 DEBUG(1, ("smb_krb5_locate_kdc failed (%s)\n", error_message(rc))); 312 return -1; 313 } 314 for (i=0;i<num_kdcs;i++) 315 if (addrs[i].sin_family == AF_INET) 316 d_printf("%s:%hd\n", inet_ntoa(addrs[i].sin_addr), 317 ntohs(addrs[i].sin_port)); 318 return 0; 319 306 realm = (const char *) *realms; 307 } 308 309 status = get_kdc_list(realm, NULL, &kdcs, &num_kdcs); 310 if (!NT_STATUS_IS_OK(status)) { 311 DEBUG(1,("get_kdc_list failed (%s)\n", nt_errstr(status))); 312 return -1; 313 } 314 315 for (i = 0; i < num_kdcs; i++) { 316 char addr[INET6_ADDRSTRLEN]; 317 318 print_sockaddr(addr, sizeof(addr), &kdcs[i].ss); 319 320 d_printf("%s:%hd\n", addr, kdcs[i].port); 321 } 322 323 return 0; 320 324 #endif 321 325 DEBUG(1, ("No kerberos support\n")); -
vendor/current/source3/utils/net_rpc.c
r740 r746 4903 4903 } 4904 4904 4905 struct share_list {4906 int num_shares;4907 char **shares;4908 };4909 4910 static void collect_share(const char *name, uint32 m,4911 const char *comment, void *state)4912 {4913 struct share_list *share_list = (struct share_list *)state;4914 4915 if (m != STYPE_DISKTREE)4916 return;4917 4918 share_list->num_shares += 1;4919 share_list->shares = SMB_REALLOC_ARRAY(share_list->shares, char *, share_list->num_shares);4920 if (!share_list->shares) {4921 share_list->num_shares = 0;4922 return;4923 }4924 share_list->shares[share_list->num_shares-1] = SMB_STRDUP(name);4925 }4926 4927 4905 /** 4928 4906 * List shares on a remote RPC server, including the security descriptors. … … 4950 4928 const char **argv) 4951 4929 { 4952 int ret;4953 4930 bool r; 4954 uint32 i;4955 4931 FILE *f; 4932 NTSTATUS nt_status = NT_STATUS_OK; 4933 uint32_t total_entries = 0; 4934 uint32_t resume_handle = 0; 4935 uint32_t preferred_len = 0xffffffff; 4936 uint32_t i; 4937 struct dcerpc_binding_handle *b = NULL; 4938 struct srvsvc_NetShareInfoCtr info_ctr; 4939 struct srvsvc_NetShareCtr1 ctr1; 4940 WERROR result; 4956 4941 4957 4942 struct user_token *tokens = NULL; 4958 4943 int num_tokens = 0; 4959 4960 struct share_list share_list;4961 4944 4962 4945 if (argc == 0) { … … 4984 4967 collect_alias_memberships(&tokens[i].token); 4985 4968 4986 share_list.num_shares = 0; 4987 share_list.shares = NULL; 4988 4989 ret = cli_RNetShareEnum(cli, collect_share, &share_list); 4990 4991 if (ret == -1) { 4992 DEBUG(0, ("Error returning browse list: %s\n", 4993 cli_errstr(cli))); 4994 goto done; 4995 } 4996 4997 for (i = 0; i < share_list.num_shares; i++) { 4998 char *netname = share_list.shares[i]; 4999 5000 if (netname[strlen(netname)-1] == '$') 4969 ZERO_STRUCT(info_ctr); 4970 ZERO_STRUCT(ctr1); 4971 4972 info_ctr.level = 1; 4973 info_ctr.ctr.ctr1 = &ctr1; 4974 4975 b = pipe_hnd->binding_handle; 4976 4977 /* Issue the NetShareEnum RPC call and retrieve the response */ 4978 nt_status = dcerpc_srvsvc_NetShareEnumAll(b, 4979 talloc_tos(), 4980 pipe_hnd->desthost, 4981 &info_ctr, 4982 preferred_len, 4983 &total_entries, 4984 &resume_handle, 4985 &result); 4986 4987 /* Was it successful? */ 4988 if (!NT_STATUS_IS_OK(nt_status)) { 4989 /* Nope. Go clean up. */ 4990 goto done; 4991 } 4992 4993 if (!W_ERROR_IS_OK(result)) { 4994 /* Nope. Go clean up. */ 4995 nt_status = werror_to_ntstatus(result); 4996 goto done; 4997 } 4998 4999 if (total_entries == 0) { 5000 goto done; 5001 } 5002 5003 /* For each returned entry... */ 5004 for (i = 0; i < info_ctr.ctr.ctr1->count; i++) { 5005 const char *netname = info_ctr.ctr.ctr1->array[i].name; 5006 5007 if (info_ctr.ctr.ctr1->array[i].type != STYPE_DISKTREE) { 5001 5008 continue; 5009 } 5002 5010 5003 5011 d_printf("%s\n", netname); … … 5011 5019 } 5012 5020 SAFE_FREE(tokens); 5013 SAFE_FREE(share_list.shares); 5014 5015 return NT_STATUS_OK; 5021 5022 return nt_status; 5016 5023 } 5017 5024
Note:
See TracChangeset
for help on using the changeset viewer.