etc/system-release
etc/issue
+etc/rc.d/helpers/aws-setup
+etc/rc.d/helpers/azure-setup
+etc/rc.d/helpers/exoscale-setup
+etc/rc.d/helpers/gcp-setup
+etc/rc.d/helpers/oci-setup
+etc/rc.d/init.d/networking/any
+etc/rc.d/init.d/networking/red
srv/web/ipfire/cgi-bin/credits.cgi
+usr/local/bin/setaliases
--- /dev/null
+../../../common/setup
\ No newline at end of file
DIR_APP = $(DIR_SRC)/$(THISAPP)
TARGET = $(DIR_INFO)/$(THISAPP)
PROG = wio
-PAK_VER = 10
+PAK_VER = 11
###############################################################################
# Top-level Rules
local prefix="${subnet#*/}"
local netmask="$(prefix2netmask "${prefix}")"
- local netmask_num="$(to_integer "${netmask}")"
# Calculate the network and broadcast addresses
local netaddress="${subnet%/*}"
local netaddress_num="$(to_integer "${netaddress}")"
- local broadcast="$(to_address $(( ipv4_address_num | (0xffffffff ^ netmask_num) )))"
case "${device_number}" in
# RED
echo "RED_ADDRESS=${ipv4_address}"
echo "RED_NETMASK=${netmask}"
echo "RED_NETADDRESS=${netaddress}"
- echo "RED_BROADCAST=${broadcast}"
echo "RED_MTU=1500"
echo "DEFAULT_GATEWAY=${gateway}"
) >> /var/ipfire/ethernet/settings
echo "GREEN_ADDRESS=${ipv4_address}"
echo "GREEN_NETMASK=${netmask}"
echo "GREEN_NETADDRESS=${netaddress}"
- echo "GREEN_BROADCAST=${broadcast}"
echo "GREEN_MTU=${DEFAULT_MTU}"
) >> /var/ipfire/ethernet/settings
;;
echo "ORANGE_ADDRESS=${ipv4_address}"
echo "ORANGE_NETMASK=${netmask}"
echo "ORANGE_NETADDRESS=${netaddress}"
- echo "ORANGE_BROADCAST=${broadcast}"
echo "ORANGE_MTU=${DEFAULT_MTU}"
) >> /var/ipfire/ethernet/settings
;;
local ipv4_address_num="$(to_integer "${ipv4_address}")"
local prefix="$(get "network/interface/${device_number}/ipv4/subnet/0/prefix")"
local netmask="$(prefix2netmask "${prefix}")"
- local netmask_num="$(to_integer "${netmask}")"
- # Calculate the network and broadcast addresses
+ # Get the network address
local netaddress="$(get "network/interface/${device_number}/ipv4/subnet/0/address")"
local netaddress_num="$(to_integer "${netaddress}")"
- local broadcast="$(to_address $(( ipv4_address_num | (0xffffffff ^ netmask_num) )))"
case "${device_number}" in
# RED
echo "RED_ADDRESS=${ipv4_address}"
echo "RED_NETMASK=${netmask}"
echo "RED_NETADDRESS=${netaddress}"
- echo "RED_BROADCAST=${broadcast}"
echo "DEFAULT_GATEWAY=${gateway}"
) >> /var/ipfire/ethernet/settings
echo "GREEN_ADDRESS=${ipv4_address}"
echo "GREEN_NETMASK=${netmask}"
echo "GREEN_NETADDRESS=${netaddress}"
- echo "GREEN_BROADCAST=${broadcast}"
) >> /var/ipfire/ethernet/settings
;;
echo "ORANGE_ADDRESS=${ipv4_address}"
echo "ORANGE_NETMASK=${netmask}"
echo "ORANGE_NETADDRESS=${netaddress}"
- echo "ORANGE_BROADCAST=${broadcast}"
) >> /var/ipfire/ethernet/settings
;;
esac
GREEN_ADDRESS="10.0.0.1"
GREEN_NETMASK="255.255.255.0"
GREEN_NETADDRESS="10.0.0.0"
- GREEN_BROADCAST="10.0.0.255"
fi
(
echo "GREEN_ADDRESS=${GREEN_ADDRESS}"
echo "GREEN_NETMASK=${GREEN_NETMASK}"
echo "GREEN_NETADDRESS=${GREEN_NETADDRESS}"
- echo "GREEN_BROADCAST=${GREEN_BROADCAST}"
echo "GREEN_MTU=${DEFAULT_MTU}"
) >> /var/ipfire/ethernet/settings
;;
ORANGE_ADDRESS="10.0.1.1"
ORANGE_NETMASK="255.255.255.0"
ORANGE_NETADDRESS="10.0.1.0"
- ORANGE_BROADCAST="10.0.1.255"
fi
(
echo "ORANGE_ADDRESS=${ORANGE_ADDRESS}"
echo "ORANGE_NETMASK=${ORANGE_NETMASK}"
echo "ORANGE_NETADDRESS=${ORANGE_NETADDRESS}"
- echo "ORANGE_BROADCAST=${ORANGE_BROADCAST}"
echo "ORANGE_MTU=${DEFAULT_MTU}"
) >> /var/ipfire/ethernet/settings
;;
# Calculate the network and broadcast addresses
local netaddress="$(to_address $(( ipv4_address_num & netmask_num )))"
- local broadcast="$(to_address $(( ipv4_address_num | (0xffffffff ^ netmask_num) )))"
case "${device_number}" in
# RED
echo "RED_ADDRESS=${ipv4_address}"
echo "RED_NETMASK=${netmask}"
echo "RED_NETADDRESS=${netaddress}"
- echo "RED_BROADCAST=${broadcast}"
echo "RED_MTU=${DEFAULT_MTU}"
echo "DEFAULT_GATEWAY=${gateway}"
) >> /var/ipfire/ethernet/settings
echo "GREEN_ADDRESS=${ipv4_address}"
echo "GREEN_NETMASK=${netmask}"
echo "GREEN_NETADDRESS=${netaddress}"
- echo "GREEN_BROADCAST=${broadcast}"
echo "GREEN_MTU=${DEFAULT_MTU}"
) >> /var/ipfire/ethernet/settings
;;
echo "ORANGE_ADDRESS=${ipv4_address}"
echo "ORANGE_NETMASK=${netmask}"
echo "ORANGE_NETADDRESS=${netaddress}"
- echo "ORANGE_BROADCAST=${broadcast}"
echo "ORANGE_MTU=${DEFAULT_MTU}"
) >> /var/ipfire/ethernet/settings
;;
local prefix="${subnet#*/}"
local netmask="$(prefix2netmask "${prefix}")"
- local netmask_num="$(to_integer "${netmask}")"
# Calculate the network and broadcast addresses
local netaddress="${subnet%/*}"
- local broadcast="$(to_address $(( ipv4_address_num | (0xffffffff ^ netmask_num) )))"
local index="$(oci_get_interface_param "${id}" "nicIndex")"
echo "RED_ADDRESS=${ipv4_address}"
echo "RED_NETMASK=${netmask}"
echo "RED_NETADDRESS=${netaddress}"
- echo "RED_BROADCAST=${broadcast}"
echo "RED_MTU=1500"
echo "DEFAULT_GATEWAY=${gateway}"
) >> /var/ipfire/ethernet/settings
echo "GREEN_ADDRESS=${ipv4_address}"
echo "GREEN_NETMASK=${netmask}"
echo "GREEN_NETADDRESS=${netaddress}"
- echo "GREEN_BROADCAST=${broadcast}"
echo "GREEN_MTU=${DEFAULT_MTU}"
) >> /var/ipfire/ethernet/settings
;;
echo "ORANGE_ADDRESS=${ipv4_address}"
echo "ORANGE_NETMASK=${netmask}"
echo "ORANGE_NETADDRESS=${netaddress}"
- echo "ORANGE_BROADCAST=${broadcast}"
echo "ORANGE_MTU=${DEFAULT_MTU}"
) >> /var/ipfire/ethernet/settings
;;
if [ "$(basename $0)" == "green" ]; then
DEVICE="${GREEN_DEV}"
ADDRESS="${GREEN_ADDRESS}"
- BROADCAST="${GREEN_BROADCAST}"
NETADDRESS="${GREEN_NETADDRESS}"
NETMASK="${GREEN_NETMASK}"
DEVICE="${GREEN_DEV}"
elif [ "$(basename $0)" == "blue" ]; then
DEVICE="${BLUE_DEV}"
ADDRESS="${BLUE_ADDRESS}"
- BROADCAST="${BLUE_BROADCAST}"
NETADDRESS="${BLUE_NETADDRESS}"
NETMASK="${BLUE_NETMASK}"
DEVICE="${BLUE_DEV}"
elif [ "$(basename $0)" == "orange" ]; then
DEVICE="${ORANGE_DEV}"
ADDRESS="${ORANGE_ADDRESS}"
- BROADCAST="${ORANGE_BROADCAST}"
NETADDRESS="${ORANGE_NETADDRESS}"
NETMASK="${ORANGE_NETMASK}"
DEVICE="${ORANGE_DEV}"
MTU="${ORANGE_MTU}"
fi
-if [ -z "${BROADCAST}" ]; then
- boot_mesg "BROADCAST variable missing from input, cannot continue." ${FAILURE}
- echo_failure
- exit 1
-fi
-
if [ -n "${ADDRESS}" -a -n "${NETMASK}" ]; then
PREFIX=`whatmask ${NETMASK} | grep -e ^CIDR | awk -F': ' '{ print $2 }' | cut -c 2-`
- args="${args} ${ADDRESS}/${PREFIX} broadcast ${BROADCAST}"
+ args="${args} ${ADDRESS}/${PREFIX}"
else
boot_mesg "ADDRESS and/or NETMASK variable missing from input, cannot continue." ${FAILURE}
echo_failure
if [ "${TYPE}" == "STATIC" ]; then
if [ "${DEVICE}" != "${GREEN_DEV}" ]; then
ADDRESS="${RED_ADDRESS}"
- BROADCAST="${RED_BROADCAST}"
NETADDRESS="${RED_NETADDRESS}"
NETMASK="${RED_NETMASK}"
MTU="${RED_MTU}"
else
ADDRESS="${GREEN_ADDRESS}"
- BROADCAST="${GREEN_BROADCAST}"
NETADDRESS="${GREEN_NETADDRESS}"
NETMASK="${GREEN_NETMASK}"
MTU="${GREEN_MTU}"
# DNS1
# DNS2
- if [ -z "${BROADCAST}" ]; then
- boot_mesg "BROADCAST variable missing, cannot continue." ${FAILURE}
- echo_failure
- exit 1
- fi
if [ -n "${ADDRESS}" -a -n "${NETMASK}" ]; then
PREFIX=`whatmask ${NETMASK} | grep -e ^CIDR | awk -F': ' '{ print $2 }' | cut -c 2-`
- args="${args} ${ADDRESS}/${PREFIX} broadcast ${BROADCAST}"
+ args="${args} ${ADDRESS}/${PREFIX}"
else
boot_mesg "ADDRESS and/or NETMASK variable missing from input, cannot continue." ${FAILURE}
echo_failure
char s[STRING_SIZE];
char command[STRING_SIZE];
char red_netmask[STRING_SIZE];
- char red_broadcast[STRING_SIZE];
char red_dev[STRING_SIZE];
char default_gateway[STRING_SIZE];
char *aliasip;
exit(0);
/* Get the RED interface details */
- if((!findkey(kv, "RED_NETMASK", red_netmask)) || (!findkey(kv, "RED_BROADCAST", red_broadcast)) ||
+ if((!findkey(kv, "RED_NETMASK", red_netmask)) ||
(!findkey(kv, "RED_DEV", red_dev)) || (!findkey(kv, "DEFAULT_GATEWAY", default_gateway)))
{
fprintf(stderr, "Cannot read RED settings\n");
exit(1);
}
- if (!VALID_IP(red_broadcast))
- {
- fprintf(stderr, "Bad red_broadcast : %s\n", red_broadcast);
- exit(1);
- }
-
if (!VALID_IP(default_gateway))
{
fprintf(stderr, "Bad default_gateway : %s\n", default_gateway);
memset(command, 0, STRING_SIZE);
snprintf(command, STRING_SIZE-1,
- "/sbin/ifconfig %s:%d %s netmask %s broadcast %s up",
- red_dev, alias, aliasip, red_netmask, red_broadcast);
+ "/sbin/ifconfig %s:%d %s netmask %s up",
+ red_dev, alias, aliasip, red_netmask);
safe_system(command);
memset(command, 0, STRING_SIZE);
snprintf(command, STRING_SIZE-1,
return 0;
}
-/* 0.9.9: calculates broadcast too. */
int setnetaddress(struct keyvalue *kv, char *colour)
{
char addressfield[STRING_SIZE];
char netaddressfield[STRING_SIZE];
char netmaskfield[STRING_SIZE];
- char broadcastfield[STRING_SIZE];
char address[STRING_SIZE];
char netmask[STRING_SIZE];
unsigned long int intaddress;
unsigned long int intnetaddress;
unsigned long int intnetmask;
- unsigned long int intbroadcast;
struct in_addr temp;
char *netaddress;
- char *broadcast;
-
+
/* Build some key strings. */
sprintf(addressfield, "%s_ADDRESS", colour);
sprintf(netaddressfield, "%s_NETADDRESS", colour);
sprintf(netmaskfield, "%s_NETMASK", colour);
- sprintf(broadcastfield, "%s_BROADCAST", colour);
strcpy(address, ""); findkey(kv, addressfield, address);
strcpy(netmask, ""); findkey(kv, netmaskfield, netmask);
replacekeyvalue(kv, netaddressfield, netaddress);
- intbroadcast = intnetaddress | ~intnetmask;
- temp.s_addr = intbroadcast;
- broadcast = inet_ntoa(temp);
-
- replacekeyvalue(kv, broadcastfield, broadcast);
-
return 1;
}
foreach (@devs_color) {
if ( $netsettings{"${_}_DEV"} ne '' ) {
$wiosettings{"${_}_IPLOW"} = &Network::find_next_ip_address($netsettings{"${_}_NETADDRESS"}, 1);
- $wiosettings{"${_}_IPHIGH"} = &Network::find_next_ip_address($netsettings{"${_}_BROADCAST"}, -1);
+
+ my $broadcast = &Network::get_broadcast($netsettings{"${_}_NETADDRESS"} . "/" . $netsettings{"${_}_NETMASK"});
+ $wiosettings{"${_}_IPHIGH"} = &Network::find_next_ip_address($broadcast, -1);
}
}