#!/usr/bin/env python3 # Unix SMB/CIFS implementation. # Copyright (C) Jelmer Vernooij 2008-2012 # Copyright (C) Amitay Isaacs 2011 # Copyright (C) Giampaolo Lauria 2011 # # 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 # the Free Software Foundation; either version 3 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License # along with this program. If not, see . # import sys # Find right direction when running from source tree sys.path.insert(0, "bin/python") # make sure the script dies immediately when hitting control-C, # rather than raising KeyboardInterrupt. As we do all database # operations using transactions, this is safe. import signal signal.signal(signal.SIGINT, signal.SIG_DFL) from samba.netcmd.main import cmd_sambatool cmd = cmd_sambatool() subcommand = None args = () if len(sys.argv) > 1: subcommand = sys.argv[1] if len(sys.argv) > 2: args = sys.argv[2:] try: retval = cmd._run("samba-tool", subcommand, *args) except SystemExit as e: retval = e.code except Exception as e: cmd.show_command_error(e) retval = 1 sys.exit(retval)