3EW77BFEOSHSFK3GDO6ULXRY3YTHEDNG3OF53LN7Q5ESKDNDJLAAC (let ((template-inputs nil)((ifs (assoc-path '(:ethernet-interfaces) chromebox-networking)))(if-on-vlan (assoc-path '(:interface-on-vlan)chromebox-networking)))(dolist (if ifs)(do-vlans(when on-firewall-p(when (interface-on-vlan if number)(push (list (sprintf "INTERFACE_%d" name)(sprintf "%s.%d" if number))template-inputs)))))
(let ((template-inputs nil))(do-ifs-and-vlans chromebox-networking(cond(fwp (push (list (sprintf "INTERFACE_%s" name) vif)template-inputs))))
(push (sprintf "mkpeer %s: netflow lower iface%d" if nf-port) ngc)(push (sprintf "name %s:lower netflow" if) ngc)(push (sprintf "connect %s: netflow: upper out%d" if nf-port) ngc)
(push (sprintf "mkpeer %s: netflow lower iface%d" ifc nf-port) ngc)(push (sprintf "name %s:lower netflow" ifc) ngc)(push (sprintf "connect %s: netflow: upper out%d" ifc nf-port) ngc)
(true(push (sprintf "connect %s: netflow: lower iface%d" if nf-port) ngc)(push (sprintf "connect %s: netflow: upper out%d" if nf-port) ngc)))
(true(push (sprintf "connect %s: netflow: lower iface%d" ifc nf-port) ngc)(push (sprintf "connect %s: netflow: upper out%d" ifc nf-port) ngc)))
;; this isn't going to get an address before the jail starts but i;; think that's ok.(sysrc-set "ifconfig_epair72_ipv6" "accept_rtadv"))
(sysrc-set "ifconfig_epair72a_ipv6" "inet6 fd74:1c54:7975:6875::6875/64")(sysrc-set "defaultrouter" "fd74:1c54:7975:6875::1"))
(let ((ifs (assoc-path '(:ethernet-interfaces) chromebox-networking))(if-on-vlan (assoc-path '(:interface-on-vlan)chromebox-networking)))(dolist (if ifs)(dolist (he6 he-6in4s)(let ((v (cadr he6)))(file-exists-templated-from(sprintf "/etc/dhclient-exit-hooks.d/20-henet_gif_%s"(cadr (assoc :name v)))"644" "root" "wheel""templates/henet_gif_tunnel.tmpl"`(("HGT_INTERFACE" interface)("HGT_FAR_IPV4" (cadr (assoc :far-ipv4 v)))("HGT_USERNAME" (cadr (assoc :username v)))("HGT_PASSWORD" (cadr (assoc :password v)))("HGT_TUNNELID" (cadr (assoc :tunnel-id v)))("HGT_NEAR_IPV6" (cadr (assoc :near-ipv6 v)))("HGT_FAR_IPV6" (cadr (assoc :far-ipv6 v))))))))))
(do-ifs-and-vlans chromebox-networking(dolist (ifcpair he-6in4s)(when (equal (car ifcpair) vif)(dolist (he6 (cadr ifcpair))(let ((v (cadr he6)))(file-exists-with-contents-gsubbed(sprintf "/etc/dhclient-exit-hooks.d/20-henet_gif_%s"(cadr (assoc :name v)))"644" "root" "wheel""templates/henet_gif_tunnel.tmpl"`(("HGT_INTERFACE" interface)("HGT_FAR_IPV4" (cadr (assoc :far-ipv4 v)))("HGT_USERNAME" (cadr (assoc :username v)))("HGT_PASSWORD" (cadr (assoc :password v)))("HGT_TUNNELID" (cadr (assoc :tunnel-id v)))("HGT_NEAR_IPV6" (cadr (assoc :near-ipv6 v)))("HGT_FAR_IPV6" (cadr (assoc :far-ipv6 v)))))))))))
chromebox-networking)))(dolist (if ifs)(do-vlans(if dnsmasq-dhcp-p(progn(let ((min 100) (max 250))(push (sprintf "dhcp-range=set:%s,%s.%d.%d,%s.%d.%d"nameinternal-ipv4-16 v4sub mininternal-ipv4-16 v4sub max)ipv4-ranges))(push (sprintf "dhcp-range=set:%s,::,constructor:%s%s"name (sprintf "%s.%d" if number)(strcat "," (apply string-join "," v6opts)))ipv6-ranges))(push (sprintf "%s.%d" if number) no-dhcp-interfaces))(when dnsmasq-dns-p(push (sprintf "%s.%d" if number) dns-listen-interfaces))))
chromebox-networking)))(do-ifs-and-vlans chromebox-networking(cond(dhcpp(let ((min 100) (max 250))(push (sprintf "dhcp-range=set:%s,%s.%d.%d,%s.%d.%d"nameinternal-ipv4-16 v4sub mininternal-ipv4-16 v4sub max)ipv4-ranges))(push (sprintf "dhcp-range=set:%s,::,constructor:%s%s"name (sprintf "%s.%d" if number)(strcat "," (apply string-join "," v6opts)))ipv6-ranges))(true(push (sprintf "%s.%d" if number) no-dhcp-interfaces)))(cond(dnsp (push (sprintf "%s.%d" if number) dns-listen-interfaces))))
(let ((ifs (assoc-path '(:ethernet-interfaces) chromebox-networking))(if-for-vlan (assoc-path '(:interface-for-vlan)chromebox-networking)))(dolist (if ifs)(do-vlans(when (and fw (eq kw :pfsync))(sysrc-set "pfsync_enable" "YES")(sysrc-set "pfsync_syncdev" if)(sysrc-set "pfsync_syncpeer" "ff12::f0"))))))
(do-ifs-and-vlans chromebox-networking(when (and fwp (eq kw :pfsync))(sysrc-set "pfsync_enable" "YES")(sysrc-set "pfsync_syncdev" if)(sysrc-set "pfsync_syncpeer" "ff12::f0"))))