vfs:fruit: implement copyfile style copy_chunk
[Samba.git] / selftest / socket_wrapper.py
blob371bad958f2a0d25e0bd5c6e641eea4693521937
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>
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.
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.
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/>.
18 __all__ = ['setup_dir', 'setup_pcap', 'set_default_iface']
20 import os
21 import shutil
23 def setup_dir(dir, pcap):
24 """Setup a socket wrapper directory.
26 :param dir: Socket wrapper directory (None if socket wrapper should be
27 disabled)
28 :param pcap: Whether to generate pcap files
29 :return: The socket wrapper directory
30 """
31 pcap_dir = None
33 if dir is not None:
34 if os.path.isdir(dir):
35 shutil.rmtree(dir)
36 os.mkdir(dir, 0777)
38 if pcap:
39 pcap_dir = os.path.join(dir, "pcap")
41 if os.path.isdir(pcap_dir):
42 shutil.rmtree(pcap_dir)
43 os.mkdir(pcap_dir, 0777)
45 if pcap_dir is not None:
46 os.environ["SOCKET_WRAPPER_PCAP_DIR"] = pcap_dir
47 else:
48 del os.environ["SOCKET_WRAPPER_PCAP_DIR"]
50 if dir is not None:
51 os.environ["SOCKET_WRAPPER_DIR"] = dir
52 else:
53 del os.environ["SOCKET_WRAPPER_DIR"]
55 return dir
57 def setup_pcap(pcap_file):
58 os.environ["SOCKET_WRAPPER_PCAP_FILE"] = pcap_file
60 def set_default_iface(i):
61 os.environ["SOCKET_WRAPPER_DEFAULT_IFACE"] = str(i)