summaryrefslogtreecommitdiff
path: root/source3
diff options
context:
space:
mode:
authorKai Blin <kai@samba.org>2008-09-24 23:23:01 +0200
committerGünther Deschner <gd@samba.org>2008-09-26 20:52:13 +0200
commit694786b23c30e0a3449c7222433e3fdc7ef7c0e1 (patch)
tree248621f298d710be2f7a3172d7900114bc6f1ad4 /source3
parentf50ebbe29ff13d43ae8544c273247173ff12d45a (diff)
downloadsamba-694786b23c30e0a3449c7222433e3fdc7ef7c0e1.tar.gz
samba-694786b23c30e0a3449c7222433e3fdc7ef7c0e1.tar.bz2
samba-694786b23c30e0a3449c7222433e3fdc7ef7c0e1.zip
net: Make share type lookup a function.
Diffstat (limited to 'source3')
-rw-r--r--source3/utils/net_proto.h2
-rw-r--r--source3/utils/net_rap.c11
-rw-r--r--source3/utils/net_rpc.c4
-rw-r--r--source3/utils/net_util.c12
4 files changed, 17 insertions, 12 deletions
diff --git a/source3/utils/net_proto.h b/source3/utils/net_proto.h
index 1e355e54a3..ee4388f157 100644
--- a/source3/utils/net_proto.h
+++ b/source3/utils/net_proto.h
@@ -471,6 +471,8 @@ int net_run_function(struct net_context *c, int argc, const char **argv,
const char *whoami, struct functable *table);
void net_display_usage_from_functable(struct functable *table);
+const char *net_share_type_str(int num_type);
+
/* The following definitions come from utils/netlookup.c */
NTSTATUS net_lookup_name_from_sid(struct net_context *c,
diff --git a/source3/utils/net_rap.c b/source3/utils/net_rap.c
index 883524dc2d..32f4dd31b4 100644
--- a/source3/utils/net_rap.c
+++ b/source3/utils/net_rap.c
@@ -34,13 +34,6 @@
#define ERRMSG_BOTH_SERVER_IPADDRESS "\nTarget server and IP address both "\
"specified. Do not set both at the same time. The target IP address was used\n"
-const char *share_type[] = {
- "Disk",
- "Print",
- "Dev",
- "IPC"
-};
-
static int errmsg_not_implemented(void)
{
d_printf("\nNot implemented\n");
@@ -201,7 +194,7 @@ static void long_share_fn(const char *share_name, uint32 type,
const char *comment, void *state)
{
d_printf("%-12s %-8.8s %-50s\n",
- share_name, share_type[type], comment);
+ share_name, net_share_type_str(type), comment);
}
static void share_fn(const char *share_name, uint32 type,
@@ -388,7 +381,7 @@ static void display_conns_func(uint16 conn_id, uint16 conn_type, uint16 opens,
const char *username, const char *netname)
{
d_printf("%-14.14s %-8.8s %5d\n",
- netname, share_type[conn_type], opens);
+ netname, net_share_type_str(conn_type), opens);
}
static int rap_session_info(struct net_context *c, int argc, const char **argv)
diff --git a/source3/utils/net_rpc.c b/source3/utils/net_rpc.c
index a849ec4c10..0e91144d33 100644
--- a/source3/utils/net_rpc.c
+++ b/source3/utils/net_rpc.c
@@ -26,8 +26,6 @@
static int net_mode_share;
static bool sync_files(struct copy_clistate *cp_clistate, const char *mask);
-extern const char *share_type[];
-
/**
* @file net_rpc.c
*
@@ -2876,7 +2874,7 @@ static void display_share_info_1(struct net_context *c,
if (c->opt_long_list_entries) {
d_printf("%-12s %-8.8s %-50s\n",
r->shi1_netname,
- share_type[r->shi1_type & ~(STYPE_TEMPORARY|STYPE_HIDDEN)],
+ net_share_type_str(r->shi1_type & ~(STYPE_TEMPORARY|STYPE_HIDDEN)),
r->shi1_remark);
} else {
d_printf("%s\n", r->shi1_netname);
diff --git a/source3/utils/net_util.c b/source3/utils/net_util.c
index 88850d29df..fbb3c24b03 100644
--- a/source3/utils/net_util.c
+++ b/source3/utils/net_util.c
@@ -2,6 +2,7 @@
* Unix SMB/CIFS implementation.
* Helper routines for net
* Copyright (C) Volker Lendecke 2006
+ * Copyright (C) Kai Blin 2008
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@@ -595,3 +596,14 @@ void net_display_usage_from_functable(struct functable *table)
d_printf("%s\n", table[i].usage);
}
}
+
+const char *net_share_type_str(int num_type)
+{
+ switch(num_type) {
+ case 0: return "Disk";
+ case 1: return "Print";
+ case 2: return "Dev";
+ case 3: return "IPC";
+ default: return "Unknown";
+ }
+}