Merge branch 'master' of ssh://git.qubes-os.org/var/lib/qubes/git/joanna/core
This commit is contained in:
commit
9c318f5a7e
@ -8,6 +8,17 @@ if [ x$ip != x ]; then
|
||||
/sbin/ifconfig $INTERFACE $ip netmask 255.255.255.255
|
||||
/sbin/ifconfig $INTERFACE up
|
||||
/sbin/route add default dev $INTERFACE
|
||||
/sbin/ethtool -K $INTERFACE sg off
|
||||
echo "nameserver $gateway" > /etc/resolv.conf
|
||||
echo "nameserver $secondary_dns" >> /etc/resolv.conf
|
||||
network=$(/usr/bin/xenstore-read qubes_netvm_network 2>/dev/null)
|
||||
if [ "x$network" != "x" ]; then
|
||||
gateway=$(/usr/bin/xenstore-read qubes_netvm_gateway)
|
||||
netmask=$(/usr/bin/xenstore-read qubes_netvm_netmask)
|
||||
secondary_dns=$(/usr/bin/xenstore-read qubes_netvm_secondary_dns)
|
||||
echo "NS1=$gateway" > /var/run/qubes/qubes_ns
|
||||
echo "NS2=$secondary_dns" >> /var/run/qubes/qubes_ns
|
||||
/usr/lib/qubes/qubes_setup_dnat_to_ns
|
||||
fi
|
||||
|
||||
fi
|
||||
|
@ -3,9 +3,9 @@ set -e
|
||||
|
||||
PIDFILE=/var/run/qubes/qubes_firewall.pid
|
||||
XENSTORE_IPTABLES=qubes_iptables
|
||||
XENSTORE_IPTABLES_HEADER=qubes_iptables_header
|
||||
XENSTORE_ERROR=qubes_iptables_error
|
||||
OLD_RULES=""
|
||||
|
||||
# PIDfile handling
|
||||
[[ -e $PIDFILE ]] && kill -s 0 $(<$PIDFILE) 2>/dev/null && exit 0
|
||||
echo $$ >$PIDFILE
|
||||
@ -13,24 +13,26 @@ echo $$ >$PIDFILE
|
||||
trap 'exit 0' SIGTERM
|
||||
|
||||
while true; do
|
||||
RULES=$(/usr/bin/xenstore-read $XENSTORE_IPTABLES)
|
||||
|
||||
if [[ "$RULES" != "$OLD_RULES" ]]; then
|
||||
IPTABLES_SAVE=$(/sbin/iptables-save | sed '/^\*filter/,/^COMMIT/d')
|
||||
OUT=`echo -e "$RULES\n$IPTABLES_SAVE" | /sbin/iptables-restore 2>&1 || :`
|
||||
/usr/bin/xenstore-write $XENSTORE_ERROR "$OUT"
|
||||
if [ "$OUT" ]; then
|
||||
DISPLAY=:0 /usr/bin/notify-send -t 3000 "Firewall loading error ($HOSTNAME)" "$OUT" || :
|
||||
fi
|
||||
|
||||
if [[ -z "$OUT" ]]; then
|
||||
# If OK save it for later
|
||||
/sbin/service iptables save >/dev/null
|
||||
fi
|
||||
|
||||
OLD_RULES="$RULES"
|
||||
fi
|
||||
|
||||
# Wait for changes in xenstore file
|
||||
/usr/bin/xenstore-watch-qubes $XENSTORE_IPTABLES
|
||||
TRIGGER=$(/usr/bin/xenstore-read $XENSTORE_IPTABLES)
|
||||
|
||||
if ! [ "$TRIGGER" = "reload" ]; then continue ; fi
|
||||
RULES=$(/usr/bin/xenstore-read $XENSTORE_IPTABLES_HEADER)
|
||||
IPTABLES_SAVE=$(/sbin/iptables-save | sed '/^\*filter/,/^COMMIT/d')
|
||||
OUT=`echo -e "$RULES\n$IPTABLES_SAVE" | /sbin/iptables-restore 2>&1 || :`
|
||||
|
||||
for i in $(xenstore-list qubes_iptables_domainrules) ; do
|
||||
RULES=$(/usr/bin/xenstore-read qubes_iptables_domainrules/"$i")
|
||||
ERRS=`echo -e "$RULES" | /sbin/iptables-restore -n 2>&1 || :`
|
||||
OUT="$OUT""$ERRS"
|
||||
done
|
||||
/usr/bin/xenstore-write $XENSTORE_ERROR "$OUT"
|
||||
if [ "$OUT" ]; then
|
||||
DISPLAY=:0 /usr/bin/notify-send -t 3000 "Firewall loading error ($HOSTNAME)" "$OUT" || :
|
||||
fi
|
||||
if [[ -z "$OUT" ]]; then
|
||||
# If OK save it for later
|
||||
/sbin/service iptables save >/dev/null
|
||||
fi
|
||||
done
|
||||
|
@ -214,6 +214,9 @@ mkdir -p /rw
|
||||
#mv /etc/sysconfig/network-scripts/ifcfg-eth0 /etc/sysconfig/network-scripts/ifcfg-eth0.orig
|
||||
#grep -v HWADDR /etc/sysconfig/network-scripts/ifcfg-eth0.orig > /etc/sysconfig/network-scripts/ifcfg-eth0
|
||||
|
||||
# Prevent unnecessary updates in VMs:
|
||||
echo 'exclude = kernel, xorg-*' >> /etc/yum.conf
|
||||
|
||||
%preun
|
||||
if [ "$1" = 0 ] ; then
|
||||
# no more packages left
|
||||
|
@ -1 +1 @@
|
||||
1.6.11
|
||||
1.6.19
|
||||
|
Loading…
Reference in New Issue
Block a user