svn commit: samba r25488 - in branches/4.0-python: . source/scripting/bin source/scripting/swig source/setup

jelmer at samba.org jelmer at samba.org
Wed Oct 3 19:22:03 GMT 2007


Author: jelmer
Date: 2007-10-03 19:22:02 +0000 (Wed, 03 Oct 2007)
New Revision: 25488

WebSVN: http://websvn.samba.org/cgi-bin/viewcvs.cgi?view=rev&root=samba&rev=25488

Log:
Convert smbstatus as far as I can atm.
Modified:
   branches/4.0-python/
   branches/4.0-python/source/scripting/bin/smbstatus
   branches/4.0-python/source/scripting/swig/config.mk
   branches/4.0-python/source/setup/provision


Changeset:

Property changes on: branches/4.0-python
___________________________________________________________________
Name: bzr:revision-info
...skipped...
Name: bzr:revision-id:v3-trunk0
...skipped...

Modified: branches/4.0-python/source/scripting/bin/smbstatus
===================================================================
--- branches/4.0-python/source/scripting/bin/smbstatus	2007-10-03 19:12:39 UTC (rev 25487)
+++ branches/4.0-python/source/scripting/bin/smbstatus	2007-10-03 19:22:02 UTC (rev 25488)
@@ -1,96 +1,79 @@
-#!/bin/sh
-exec smbscript "$0" ${1+"$@"}
-/*
-  provide information on connected users and open files
-  Copyright Andrew Tridgell 2005
-  Released under the GNU GPL v2 or later
-*/	
+#!/usr/bin/python
+#
+#  provide information on connected users and open files
+#  Copyright Andrew Tridgell 2005
+#  Copyright Jelmer Vernooij 2007
+#  Released under the GNU GPL v2 or later
 
-libinclude("base.js");
-libinclude("management.js");
 
-var options = new Object();
+import getopt
+import optparse
+import sys
 
-options = GetOptions(ARGV,
-		"POPT_AUTOHELP",
-		"POPT_COMMON_SAMBA",
-		"POPT_COMMON_VERSION",
-		"nbt");
-if (options == undefined) {
-	println("Failed to parse options: " + options.ERROR);
-	return -1;
-}
+sys.path.append("scripting/python")
 
-/*
-  show open sessions
-*/
-function show_sessions()
-{
-	var sessions = smbsrv_sessions();
-	var i;
-	var sys = sys_init();
-	if (sessions == undefined) {
-		println("No sessions open");
-		return;
-	}
-	printf("User                                  Client      Connected at\n");
-	printf("-------------------------------------------------------------------------------\n");
-	for (i=0;i<sessions.length;i++) {
-		var info = sessions[i];
-		var fulluser = sprintf("%s/%s", info.account_name, info.domain_name);
-		printf("%-30s %16s   %s\n", 
-		       fulluser, info.client_ip, sys.httptime(info.connect_time));
-	}
-	printf("\n");
-}
+import options
+import param
 
-/*
-  show open tree connects
-*/
-function show_tcons()
-{
-	var tcons = smbsrv_tcons();
-	var sys = sys_init();
-	if (tcons == undefined) {
-		println("No tree connects");
-		return;
-	}
-	printf("Share                                 Client      Connected at\n");
-	printf("-------------------------------------------------------------------------------\n");
-	for (i=0;i<tcons.length;i++) {
-		var info = tcons[i];
-		printf("%-30s %16s   %s\n", 
-		       info.share_name, info.client_ip, sys.httptime(info.connect_time));
-	}
-}
+parser = optparse.OptionParser("smbstatus [options]")
+parser.add_option_group(options.SambaOptions(parser))
+parser.add_option_group(options.VersionOptions(parser))
+parser.add_option("--nbt", help="Show NetBIOS status")
 
-/*
-  show nbtd information
-*/
-function show_nbt()
-{
-	var stats = nbtd_statistics();
-	if (stats == undefined) {
-		println("nbt server not running");
-		return;
-	}
-	var r;
-	println("NBT server statistics:");
-	for (r in stats) {
-		print("\t" + r + ":\t" + stats[r] + "\n");
-	}
-	println("");
-}
+opts = parser.parse_args()[0]
 
-var lp = loadparm_init();
+#
+#  show open sessions
+#
+def show_sessions():
+	sessions = smbsrv_sessions();
+	if sessions == []:
+		print "No sessions open\n"
+		return
 
-printf("%s\n\n", lp.get("server string"));
+	print "User                                  Client      Connected at\n"
+	print "-------------------------------------------------------------------------------\n"
+	for info in sessions:
+		fulluser = "%s/%s" % (info.account_name, info.domain_name)
+		print "%-30s %16s   %s\n" % (fulluser, info.client_ip, 
+				                     sys.httptime(info.connect_time))
+	print "\n"
 
-if (options['nbt'] != undefined) {
-	show_nbt();
-} else {
-	show_sessions();
-	show_tcons();
-}
+#
+#  show open tree connects
+#
+def show_tcons():
+	tcons = smbsrv_tcons();
+	if tcons == []:
+		print "No tree connects\n"
+		return
 
-return 0;
+	print "Share                                 Client      Connected at\n"
+	print "-------------------------------------------------------------------------------\n"
+	for info in tcons:
+		print "%-30s %16s   %s\n" % (info.share_name, info.client_ip, 
+				                     sys.httptime(info.connect_time))
+
+#
+# show nbtd information
+#
+def show_nbt():
+	stats = nbtd_statistics();
+	if stats is None:
+		print "nbt server not running"
+		return
+
+	println("NBT server statistics:");
+	for r in stats:
+		print "\t" + r + ":\t" + stats[r] + "\n"
+
+	print "\n"
+
+lp = param.ParamFile(opts.configfile)
+print "%s\n\n" % lp.get("server string")
+
+if opts.nbt:
+	show_nbt()
+else:
+	show_sessions()
+	show_tcons()

Modified: branches/4.0-python/source/scripting/swig/config.mk
===================================================================
--- branches/4.0-python/source/scripting/swig/config.mk	2007-10-03 19:12:39 UTC (rev 25487)
+++ branches/4.0-python/source/scripting/swig/config.mk	2007-10-03 19:22:02 UTC (rev 25488)
@@ -13,7 +13,7 @@
 .SUFFIXES: _wrap.c .i
 
 .i_wrap.c:
-	swig -I$(srcdir)/scripting/swig -python $<
+	swig -Wall -I$(srcdir)/scripting/swig -python $<
 
 SWIG_INCLUDES = librpc/gen_ndr/samr.i librpc/gen_ndr/lsa.i librpc/gen_ndr/spoolss.i
 

Modified: branches/4.0-python/source/setup/provision
===================================================================
--- branches/4.0-python/source/setup/provision	2007-10-03 19:12:39 UTC (rev 25487)
+++ branches/4.0-python/source/setup/provision	2007-10-03 19:22:02 UTC (rev 25488)
@@ -11,6 +11,7 @@
 
 # Add path to the library for in-tree use
 sys.path.append("scripting/python")
+sys.path.append("lib/ldb/swig")
 
 from credentials import system_session
 import options



More information about the samba-cvs mailing list