#lang syndicate ;; Demonstration stack configuration for various hosts. (require racket/match) (require (only-in mzlib/os gethostname)) (require (only-in racket/string string-split)) (require "configuration.rkt") (spawn (match (gethostname) ["stockholm.ccs.neu.edu" (assert (host-route (bytes 129 10 115 94) 24 "eth0")) (assert (gateway-route (bytes 0 0 0 0) 0 (bytes 129 10 115 1) "eth0"))] [other ;; assume a private network (define interface (match (car (string-split other ".")) ["skip" "en0"] ["leap" "wlp4s0"] ;; wtf [_ "wlan0"])) (assert (gateway-route (bytes 0 0 0 0) 0 (bytes 192 168 1 1) interface)) (assert (host-route (bytes 192 168 1 222) 24 interface))]))