OXIESEC PANEL
- Current Dir:
/
/
usr
/
sbin
Server IP: 10.0.0.4
Upload:
Create Dir:
Name
Size
Modified
Perms
📁
..
-
09/26/2021 03:27:18 AM
rwxr-xr-x
📄
a2disconf
15.89 KB
02/23/2021 04:35:16 PM
rwxr-xr-x
📄
a2dismod
15.89 KB
02/23/2021 04:35:16 PM
rwxr-xr-x
📄
a2dissite
15.89 KB
02/23/2021 04:35:16 PM
rwxr-xr-x
📄
a2enconf
15.89 KB
02/23/2021 04:35:16 PM
rwxr-xr-x
📄
a2enmod
15.89 KB
02/23/2021 04:35:16 PM
rwxr-xr-x
📄
a2ensite
15.89 KB
02/23/2021 04:35:16 PM
rwxr-xr-x
📄
a2query
9.64 KB
06/23/2022 12:51:37 PM
rwxr-xr-x
📄
aa-remove-unknown
2.85 KB
09/27/2018 06:20:54 PM
rwxr-xr-x
📄
aa-status
8.41 KB
09/27/2018 06:20:54 PM
rwxr-xr-x
📄
aad_certhandler
253.48 KB
07/14/2023 12:01:46 AM
rwxr-xr-x
📄
aaduseradd
64.54 KB
07/14/2023 12:01:46 AM
rwxr-xr-x
📄
aaduserdel
55.16 KB
07/14/2023 12:01:46 AM
rwxr-xr-x
📄
accessdb
10.23 KB
08/04/2018 07:16:12 PM
rwxr-xr-x
📄
acpid
50.84 KB
04/28/2017 04:28:10 AM
rwxr-xr-x
📄
add-shell
860 bytes
12/30/2017 06:15:02 PM
rwxr-xr-x
📄
addgnupghome
3.01 KB
07/04/2022 04:20:59 PM
rwxr-xr-x
📄
addgroup
36.45 KB
12/05/2017 04:57:20 PM
rwxr-xr-x
📄
adduser
36.45 KB
12/05/2017 04:57:20 PM
rwxr-xr-x
📄
apache2
659.69 KB
06/23/2022 12:51:37 PM
rwxr-xr-x
📄
apache2ctl
7.06 KB
03/04/2022 10:48:50 AM
rwxr-xr-x
📄
apachectl
7.06 KB
03/04/2022 10:48:50 AM
rwxr-xr-x
📄
apparmor_status
8.41 KB
09/27/2018 06:20:54 PM
rwxr-xr-x
📄
applygnupgdefaults
2.17 KB
07/04/2022 04:20:59 PM
rwxr-xr-x
📄
arp
61.3 KB
01/10/2017 04:25:08 AM
rwxr-xr-x
📄
arpd
54.03 KB
07/15/2020 03:16:31 PM
rwxr-xr-x
📄
atd
26.01 KB
02/20/2018 06:59:43 AM
rwxr-xr-x
📄
bcache-super-show
13.99 KB
08/05/2020 08:44:05 PM
rwxr-xr-x
📄
biosdecode
18.87 KB
01/27/2020 06:09:10 PM
rwxr-xr-x
📄
bpftool
1.58 KB
11/01/2022 04:52:05 PM
rwxr-xr-x
📄
check_forensic
952 bytes
04/26/2011 03:10:00 PM
rwxr-xr-x
📄
chgpasswd
57.83 KB
11/29/2022 12:25:19 PM
rwxr-xr-x
📄
chmem
42.08 KB
09/16/2020 06:43:15 PM
rwxr-xr-x
📄
chpasswd
53.86 KB
11/29/2022 12:25:19 PM
rwxr-xr-x
📄
chroot
38.18 KB
01/18/2018 09:43:49 AM
rwxr-xr-x
📄
cifs.idmap
14.07 KB
06/01/2022 04:19:46 PM
rwxr-xr-x
📄
cifs.upcall
34.28 KB
06/01/2022 04:19:46 PM
rwxr-xr-x
📄
cpgr
55.96 KB
11/29/2022 12:25:19 PM
rwxr-xr-x
📄
cppw
55.96 KB
11/29/2022 12:25:19 PM
rwxr-xr-x
📄
cron
46.3 KB
05/10/2022 08:59:19 PM
rwxr-xr-x
📄
cryptdisks_start
1.11 KB
08/23/2018 02:36:42 PM
rwxr-xr-x
📄
cryptdisks_stop
1.16 KB
08/23/2018 02:36:42 PM
rwxr-xr-x
📄
delgroup
16.11 KB
12/05/2017 04:57:20 PM
rwxr-xr-x
📄
deluser
16.11 KB
12/05/2017 04:57:20 PM
rwxr-xr-x
📄
dmidecode
106.54 KB
01/27/2020 06:09:10 PM
rwxr-xr-x
📄
dnsmasq
379.6 KB
04/18/2022 03:41:06 PM
rwxr-xr-x
📄
dpkg-preconfigure
3.58 KB
05/06/2019 04:30:30 PM
rwxr-xr-x
📄
dpkg-reconfigure
4.34 KB
05/06/2019 04:30:30 PM
rwxr-xr-x
📄
e2freefrag
14.07 KB
06/02/2022 02:37:00 PM
rwxr-xr-x
📄
e4crypt
22.07 KB
06/02/2022 02:37:00 PM
rwxr-xr-x
📄
e4defrag
25.99 KB
06/02/2022 02:37:00 PM
rwxr-xr-x
📄
ephemeral-disk-warning
982 bytes
05/23/2019 09:15:53 PM
rwxr-xr-x
📄
fdformat
30.08 KB
09/16/2020 06:43:15 PM
rwxr-xr-x
📄
filefrag
14.02 KB
06/02/2022 02:37:00 PM
rwxr-xr-x
📄
genl
58.05 KB
07/15/2020 03:16:31 PM
rwxr-xr-x
📄
groupadd
61.92 KB
11/29/2022 12:25:19 PM
rwxr-xr-x
📄
groupdel
70.37 KB
11/29/2022 12:25:19 PM
rwxr-xr-x
📄
groupmems
57.87 KB
11/29/2022 12:25:19 PM
rwxr-xr-x
📄
groupmod
68.18 KB
11/29/2022 12:25:19 PM
rwxr-xr-x
📄
grpck
53.8 KB
11/29/2022 12:25:19 PM
rwxr-xr-x
📄
grpconv
49.68 KB
11/29/2022 12:25:19 PM
rwxr-xr-x
📄
grpunconv
49.68 KB
11/29/2022 12:25:19 PM
rwxr-xr-x
📄
grub-install
1003.51 KB
02/24/2021 07:47:47 PM
rwxr-xr-x
📄
grub-macbless
780.84 KB
02/24/2021 07:47:47 PM
rwxr-xr-x
📄
grub-mkconfig
8.03 KB
02/24/2021 07:47:47 PM
rwxr-xr-x
📄
grub-mkdevicemap
207.62 KB
02/24/2021 07:47:47 PM
rwxr-xr-x
📄
grub-probe
793.09 KB
02/24/2021 07:47:47 PM
rwxr-xr-x
📄
grub-reboot
4.73 KB
02/24/2021 07:47:47 PM
rwxr-xr-x
📄
grub-set-default
3.47 KB
02/24/2021 07:47:47 PM
rwxr-xr-x
📄
httxt2dbm
9.99 KB
06/23/2022 12:51:37 PM
rwxr-xr-x
📄
hv_fcopy_daemon
1.58 KB
11/01/2022 04:52:05 PM
rwxr-xr-x
📄
hv_get_dhcp_info
1.39 KB
11/01/2022 04:52:05 PM
rwxr-xr-x
📄
hv_get_dns_info
622 bytes
11/01/2022 04:52:05 PM
rwxr-xr-x
📄
hv_kvp_daemon
1.58 KB
11/01/2022 04:52:05 PM
rwxr-xr-x
📄
hv_set_ifconfig
7.72 KB
11/01/2022 04:52:05 PM
rwxr-xr-x
📄
hv_vss_daemon
1.58 KB
11/01/2022 04:52:05 PM
rwxr-xr-x
📄
iconvconfig
30.25 KB
01/24/2022 12:53:44 PM
rwxr-xr-x
📄
init.lxc
38.5 KB
11/23/2018 04:49:34 AM
rwxr-xr-x
📄
init.lxc.static
1001.56 KB
11/23/2018 04:49:34 AM
rwxr-xr-x
📄
invoke-rc.d
15.66 KB
10/25/2017 03:38:42 PM
rwxr-xr-x
📄
ip6tables-apply
6.85 KB
11/12/2017 02:52:05 AM
rwxr-xr-x
📄
iptables-apply
6.85 KB
11/12/2017 02:52:05 AM
rwxr-xr-x
📄
irqbalance
62.68 KB
01/09/2019 10:38:44 AM
rwxr-xr-x
📄
irqbalance-ui
34.06 KB
01/09/2019 10:38:44 AM
rwxr-xr-x
📄
iscsi-iname
9.99 KB
05/11/2020 01:27:31 AM
rwxr-xr-x
📄
iscsi_discovery
5.16 KB
09/29/2016 06:33:24 PM
rwxr-xr-x
📄
iscsid
398.15 KB
05/11/2020 01:27:31 AM
rwxr-xr-x
📄
iscsistart
358.13 KB
05/11/2020 01:27:31 AM
rwxr-xr-x
📄
ldattach
30.08 KB
09/16/2020 06:43:15 PM
rwxr-xr-x
📄
locale-gen
4.3 KB
12/07/2020 04:38:09 PM
rwxr-xr-x
📄
logrotate
74.09 KB
08/21/2017 11:01:27 PM
rwxr-xr-x
📄
lsvmbus
1.58 KB
11/01/2022 04:52:05 PM
rwxr-xr-x
📄
luksformat
3.32 KB
08/23/2018 02:36:42 PM
rwxr-xr-x
📄
make-bcache
18.07 KB
08/05/2020 08:44:05 PM
rwxr-xr-x
📄
make-ssl-cert
3.78 KB
04/28/2017 07:58:22 PM
rwxr-xr-x
📄
mkinitramfs
10.79 KB
08/12/2020 08:12:11 PM
rwxr-xr-x
📄
mklost+found
9.99 KB
06/02/2022 02:37:00 PM
rwxr-xr-x
📄
mysqld
23.15 MB
10/19/2022 12:58:42 PM
rwxr-xr-x
📄
netplan
798 bytes
05/28/2020 09:09:51 PM
rwxr-xr-x
📄
newusers
82.39 KB
11/29/2022 12:25:19 PM
rwxr-xr-x
📄
nfnl_osf
13.99 KB
11/12/2017 02:52:05 AM
rwxr-xr-x
📄
nologin
5.99 KB
11/29/2022 12:25:19 PM
rwxr-xr-x
📄
overlayroot-chroot
2.45 KB
09/20/2018 01:29:41 PM
rwxr-xr-x
📄
ownership
10.13 KB
01/27/2020 06:09:10 PM
rwxr-xr-x
📄
pam-auth-update
19.38 KB
07/21/2020 11:40:59 PM
rwxr-xr-x
📄
pam_getenv
2.82 KB
08/23/2018 11:37:53 PM
rwxr-xr-x
📄
pam_timestamp_check
9.99 KB
07/21/2020 11:40:59 PM
rwxr-xr-x
📄
phpdismod
7.11 KB
01/17/2018 11:50:00 PM
rwxr-xr-x
📄
phpenmod
7.11 KB
01/17/2018 11:50:00 PM
rwxr-xr-x
📄
phpquery
6.24 KB
01/17/2018 11:50:00 PM
rwxr-xr-x
📄
popcon-largest-unused
543 bytes
02/22/2018 05:15:22 AM
rwxr-xr-x
📄
popularity-contest
4.92 KB
02/22/2018 05:15:22 AM
rwxr-xr-x
📄
pwck
49.8 KB
11/29/2022 12:25:19 PM
rwxr-xr-x
📄
pwconv
45.7 KB
11/29/2022 12:25:19 PM
rwxr-xr-x
📄
pwunconv
45.68 KB
11/29/2022 12:25:19 PM
rwxr-xr-x
📄
readprofile
18.11 KB
09/16/2020 06:43:15 PM
rwxr-xr-x
📄
remove-shell
904 bytes
12/30/2017 06:15:02 PM
rwxr-xr-x
📄
rmt
58.39 KB
03/15/2022 12:58:06 PM
rwxr-xr-x
📄
rmt-tar
58.39 KB
03/15/2022 12:58:06 PM
rwxr-xr-x
📄
rsyslogd
668.54 KB
05/03/2022 09:20:37 AM
rwxr-xr-x
📄
rtcwake
42.08 KB
09/16/2020 06:43:15 PM
rwxr-xr-x
📄
samba_kcc
11.76 KB
01/25/2022 03:20:03 PM
rwxr-xr-x
📄
service
9.04 KB
10/25/2017 03:38:42 PM
rwxr-xr-x
📄
setvesablank
14.07 KB
01/22/2018 01:49:48 PM
rwxr-xr-x
📄
split-logfile
2.36 KB
06/23/2022 12:51:37 PM
rwxr-xr-x
📄
sshd
772.41 KB
08/11/2021 06:02:09 PM
rwxr-xr-x
📄
tarcat
936 bytes
03/15/2022 12:58:06 PM
rwxr-xr-x
📄
tcpdump
999.6 KB
04/07/2022 03:43:23 PM
rwxr-xr-x
📄
tzconfig
106 bytes
10/12/2022 07:07:15 PM
rwxr-xr-x
📄
ufw
4.82 KB
03/25/2019 09:14:25 PM
rwxr-xr-x
📄
update-ca-certificates
5.27 KB
06/02/2022 02:19:50 PM
rwxr-xr-x
📄
update-grub
64 bytes
02/23/2021 04:23:39 PM
rwxr-xr-x
📄
update-grub2
64 bytes
02/23/2021 04:23:39 PM
rwxr-xr-x
📄
update-info-dir
1.66 KB
02/05/2018 02:48:18 PM
rwxr-xr-x
📄
update-initramfs
8.04 KB
08/12/2020 08:12:11 PM
rwxr-xr-x
📄
update-locale
2.99 KB
12/07/2020 04:38:09 PM
rwxr-xr-x
📄
update-mime
8.84 KB
07/15/2016 12:06:12 PM
rwxr-xr-x
📄
update-passwd
30.41 KB
09/12/2017 09:48:16 PM
rwxr-xr-x
📄
update-pciids
2.84 KB
02/10/2019 06:25:12 PM
rwxr-xr-x
📄
update-rc.d
16.12 KB
10/25/2017 03:38:42 PM
rwxr-xr-x
📄
update-secureboot-policy
7.43 KB
08/27/2020 11:32:46 AM
rwxr-xr-x
📄
update-usbids
1.05 KB
04/21/2017 08:59:17 PM
rwxr-xr-x
📄
useradd
123.28 KB
11/29/2022 12:25:19 PM
rwxr-xr-x
📄
userdel
82.48 KB
11/29/2022 12:25:19 PM
rwxr-xr-x
📄
usermod
123.06 KB
11/29/2022 12:25:19 PM
rwxr-xr-x
📄
uuidd
34.16 KB
09/16/2020 06:43:15 PM
rwxr-xr-x
📄
validlocale
1.73 KB
12/07/2020 04:38:09 PM
rwxr-xr-x
📄
vcstime
9.99 KB
01/22/2018 01:49:48 PM
rwxr-xr-x
📄
vigr
60.18 KB
11/29/2022 12:25:19 PM
rwxr-xr-x
📄
vipw
60.18 KB
11/29/2022 12:25:19 PM
rwxr-xr-x
📄
visudo
208.8 KB
01/19/2021 02:36:00 PM
rwxr-xr-x
📄
vpddecode
14.27 KB
01/27/2020 06:09:10 PM
rwxr-xr-x
📄
waagent
1.48 KB
01/14/2020 04:44:47 PM
rwxr-xr-x
📄
waagent2.0
246.41 KB
01/14/2020 04:44:47 PM
rwxr-xr-x
📄
xfs_admin
1.35 KB
04/18/2018 06:44:31 AM
rwxr-xr-x
📄
xfs_bmap
638 bytes
04/18/2018 06:44:31 AM
rwxr-xr-x
📄
xfs_copy
394.31 KB
04/18/2018 06:44:31 AM
rwxr-xr-x
📄
xfs_db
667.63 KB
04/18/2018 06:44:31 AM
rwxr-xr-x
📄
xfs_estimate
10.01 KB
04/18/2018 06:44:31 AM
rwxr-xr-x
📄
xfs_freeze
767 bytes
04/18/2018 06:44:31 AM
rwxr-xr-x
📄
xfs_fsr
30.02 KB
04/18/2018 06:44:31 AM
rwxr-xr-x
📄
xfs_growfs
382.27 KB
04/18/2018 06:44:31 AM
rwxr-xr-x
📄
xfs_info
472 bytes
04/18/2018 06:44:31 AM
rwxr-xr-x
📄
xfs_io
130.93 KB
04/18/2018 06:44:31 AM
rwxr-xr-x
📄
xfs_logprint
414.27 KB
04/18/2018 06:44:31 AM
rwxr-xr-x
📄
xfs_mdrestore
370.28 KB
04/18/2018 06:44:31 AM
rwxr-xr-x
📄
xfs_metadump
747 bytes
04/18/2018 06:44:31 AM
rwxr-xr-x
📄
xfs_mkfile
1007 bytes
04/18/2018 06:44:31 AM
rwxr-xr-x
📄
xfs_ncheck
650 bytes
04/18/2018 06:44:31 AM
rwxr-xr-x
📄
xfs_quota
86.01 KB
04/18/2018 06:44:31 AM
rwxr-xr-x
📄
xfs_rtcp
13.99 KB
04/18/2018 06:44:31 AM
rwxr-xr-x
📄
zerofree
9.99 KB
11/14/2016 02:44:00 PM
rwxr-xr-x
📄
zic
54.14 KB
01/24/2022 12:53:44 PM
rwxr-xr-x
Editing: hv_set_ifconfig
Close
#!/usr/bin/python3 # # hv_set_ifconfig <config> -- take the hv_kvp_daemon generated configuration # file and apply it to the Ubuntu configuration. # # CONFIG example: # HWADDR=11:22:33:44:55:66 # DEVICE=foo1 # DHCP=yes # CONFIG example: # HWADDR=11:22:33:44:55:66 # DEVICE=foo1 # IPADDR=192.168.99.10 # GATEWAY=192.168.99.1 # DNS1=192.168.88.250 # IPADDR2=192.168.99.11 # IPV6ADDR=2001:DB8:99::10 # IPV6NETMASK=64 # IPV6_DEFAULTGW=2001:DB8:99::10 # set interfaces in hv_kvp_daemon style import fileinput import sys import errno import os import shutil import tempfile import subprocess if_filename="/etc/network/interfaces" # Drop our output (XXX?) sys.stdout = open(os.devnull, 'w') sys.stderr = open(os.devnull, 'w') # Confirm we can open the network configuration. try: if_file=open(if_filename,"r+") except IOError as e: exit(e.errno) else: if_file.close() # Usage: hv_set_ifconfig <config> if len(sys.argv) != 2 : exit(errno.EINVAL) # # Here is the format of the ip configuration file: # # HWADDR=macaddr # DEVICE=interface name # BOOTPROTO=<protocol> (where <protocol> is "dhcp" if DHCP is configured # or "none" if no boot-time protocol should be used) # # IPADDR0=ipaddr1 # IPADDR1=ipaddr2 # IPADDRx=ipaddry (where y = x + 1) # # NETMASK0=netmask1 # NETMASKx=netmasky (where y = x + 1) # # GATEWAY=ipaddr1 # GATEWAYx=ipaddry (where y = x + 1) # # DNSx=ipaddrx (where first DNS address is tagged as DNS1 etc) # # IPV6 addresses will be tagged as IPV6ADDR, IPV6 gateway will be # tagged as IPV6_DEFAULTGW and IPV6 NETMASK will be tagged as # IPV6NETMASK. # kvp=dict(line.strip().split("=") for line in fileinput.input()) # Setting the hwaddress to something azure is not expecting is fatal # to networking. if not "HWADDR" in kvp : exit(errno.EPROTO) # Confirm we have a device specified. if not "DEVICE" in kvp : exit(1) autolist = [] output=[] basename=kvp["DEVICE"] # DNS entries will go with the first interface and there can be a max # of three. These will be emitted with the first interface. dns = [] for count in (1, 2, 3): key = "DNS" + str(count) if key in kvp: dns += [kvp[key]] dns_emitted = False # IPV4 may either be dhcp or static. if ("DHCP" in kvp and kvp["DHCP"] == "yes") or \ ("BOOTPROTO" in kvp and kvp["BOOTPROTO"] == "dhcp"): autolist.append(basename) output += ["iface " + basename + " inet dhcp"] output += [""] else: # Matchup the interface specific lines # No real max for the number of interface + aliases ... # only required is the address (but mate everything up that comes in. # IPv4 -- ensure we sort by numeric suffixes. v4names = [ int(name[6:]) for name in kvp.keys() if name.startswith("IPADDR") ] v4names.sort() for if_count in v4names: ifname = basename which = str(if_count) if if_count: ifname += ":" + str(if_count) which_gw = which else: which_gw = "" if not ifname in autolist: autolist += [ifname] output += [ "iface " + ifname + " inet static" ] output += [ "\t" + "address " + kvp["IPADDR" + which] ] if "NETMASK" + which in kvp: output += [ "\tnetmask " + kvp["NETMASK" + which] ] if "GATEWAY" + which_gw in kvp: output += ["\tgateway " + kvp["GATEWAY" + which_gw]] if not dns_emitted: dns_emitted = True output += ["\tdns-nameservers " + ' '.join(dns)] output += [""] # IPv6 requires a netmask # If an ipv6 exists, you'll want to turn off /proc/sys/net/ipv6/conf/all/autoconf with # echo 0 > /proc/sys/net/ipv6/conf/all/autoconf v6names = [ int(name[8:]) for name in kvp.keys() if name.startswith("IPV6ADDR") ] v6names.sort() for if6_count in v6names: ifname = basename which = str(if6_count) if if6_count: ifname += ":" + str(if6_count) which_gw = which else: which_gw = "" if not ifname in autolist: autolist += [ifname] if "IPV6NETMASK" + which in kvp: output += [ "iface " + ifname + " inet6 static"] output += [ "\taddress " + kvp["IPV6ADDR" + which]] output += [ "\tnetmask " + kvp["IPV6NETMASK" + which]] if "IPV6_DEFAULTGW" + which_gw in kvp: output += [ "\tgateway " + kvp["IPV6_DEFAULTGW" + which_gw] ] if not dns_emitted: dns_emitted = True output += ["\tdns-nameservers " + ' '.join(dns)] output += [""] # Mark this new interface for automatic up. if len(autolist): output = ["auto "+" ".join(autolist)] + output print("===================================") print(output) print("===================================") # Time to clean out the existing interface file # Markers. start_mark = "# The following stanza(s) added by hv_set_ifconfig" end_mark = "#End of hv_set_ifconfig stanzas" f=open(if_filename,"r") flines=f.readlines() f.close() newfile=[] pitchstanza=0 inastanza=0 stanza=[] prev_line=None for line in flines: if line.startswith("auto"): if inastanza: if not pitchstanza: newfile.extend(stanza) stanza=[] inastanza=0 newline="" autoline=line.strip().split(" ") for word in autoline: if (not word == basename) and (not word.startswith(basename+":")): newline+=word + " " newline = newline.strip() if not newline == "auto": newfile += [newline.strip()] elif line.startswith(("iface","mapping","source")): '''Read a stanza''' '''A Stanza can also start with allow- ie allow-hotplug''' if inastanza: if not pitchstanza: newfile.extend(stanza) stanza=[] inastanza=1 pitchstanza=0 autoline=line.strip().split(" ") for word in autoline: if (word == basename) or (word.startswith(basename+":")): pitchstanza=1 if not pitchstanza: stanza+=[line.strip()] elif line.strip() in (start_mark, end_mark): if inastanza: if not pitchstanza: newfile.extend(stanza) stanza=[] inastanza = 0 pitchstanza = 0 # Deduplicate markers. if line != prev_line: newfile += [line.strip()] else: if inastanza: if not pitchstanza: stanza+=[line.strip()] else: if not pitchstanza: newfile += [line.strip()] prev_line=line # Include pending stanza if any. if inastanza and not pitchstanza: newfile.extend(stanza) def emit(line): print(line) output = line + "\n" os.write(fd, output.encode('utf-8')) # Insert the new output at the end and inside the existing markers if found. emitted = False fd, path = tempfile.mkstemp() for line in newfile: if line == end_mark: emit("\n".join(output)) emitted = True emit(line) if not emitted: emit(start_mark) emit("\n".join(output)) emit(end_mark) os.close(fd) shutil.copy(path,if_filename) os.chmod(if_filename,0o644) #print("TMPFILE is at: " + path) #print("Copied file is at: " + if_filename) try: retcode = subprocess.call("ifdown "+basename , shell=True) if retcode < 0: print("Child was terminated by signal", -retcode, file=sys.stderr) else: print("Child returned", retcode, file=sys.stderr) except OSError as e: print("Execution failed:", e, file=sys.stderr) try: retcode = subprocess.call("ifup "+basename , shell=True) if retcode < 0: print("Child was terminated by signal", -retcode, file=sys.stderr) else: print("Child returned", retcode, file=sys.stderr) except OSError as e: print("Execution failed:", e, file=sys.stderr)