selftest: Add python version of socket wrapper utilities.
[ira/wip.git] / selftest / socket_wrapper.py
1 #!/usr/bin/python
2 # Bootstrap Samba and run a number of tests against it.
3 # Copyright (C) 2005-2007 Jelmer Vernooij <jelmer@samba.org>
4
5 # This program is free software; you can redistribute it and/or modify
6 # it under the terms of the GNU General Public License as published by
7 # the Free Software Foundation; either version 3 of the License, or
8 # (at your option) any later version.
9
10 # This program is distributed in the hope that it will be useful,
11 # but WITHOUT ANY WARRANTY; without even the implied warranty of
12 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
13 # GNU General Public License for more details.
14
15 # You should have received a copy of the GNU General Public License
16 # along with this program.  If not, see <http://www.gnu.org/licenses/>.
17
18 __all__ = ['setup_dir', 'setup_pcap', 'set_default_iface']
19
20 import os
21 import shutil
22
23 def setup_dir(dir, pcap):
24     pcap_dir = None
25
26     if dir is not None:
27         if os.path.isdir(dir):
28             shutil.rmtree(dir)
29         os.mkdir(dir, 0777)
30
31         if pcap is not None:
32             pcap_dir = os.path.join(dir, "pcap")
33
34             if os.path.isdir(pcap_dir):
35                 shutil.rmtree(pcap_dir)
36             os.mkdir(pcap_dir, 0777)
37
38     if pcap_dir is not None:
39         os.environ["SOCKET_WRAPPER_PCAP_DIR"] = pcap_dir
40     else:
41         del os.environ["SOCKET_WRAPPER_PCAP_DIR"]
42
43     if dir is not None:
44         os.environ["SOCKET_WRAPPER_DIR"] = dir
45     else:
46         del os.environ["SOCKET_WRAPPER_DIR"]
47
48     return dir
49
50 def setup_pcap(pcap_file):
51     os.environ["SOCKET_WRAPPER_PCAP_FILE"] = pcap_file
52
53 def set_default_iface(i):
54     os.environ["SOCKET_WRAPPER_DEFAULT_IFACE"] = i