aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJason A. Donenfeld <Jason@zx2c4.com>2016-09-15 00:41:01 +0200
committerJason A. Donenfeld <Jason@zx2c4.com>2016-09-15 00:41:01 +0200
commite2a402c198dcabf2391184b8e2229b441fab6d78 (patch)
treed96f2353040de9a841181acfea3e4e2a72b02d0d
parentAlso, gprs. (diff)
downloadOpenBSC-Bootstrap-e2a402c198dcabf2391184b8e2229b441fab6d78.tar.xz
OpenBSC-Bootstrap-e2a402c198dcabf2391184b8e2229b441fab6d78.zip
Bring up to dateHEADmaster
-rw-r--r--README.md5
-rwxr-xr-xstart.sh22
-rwxr-xr-xstop.sh2
3 files changed, 26 insertions, 3 deletions
diff --git a/README.md b/README.md
index a1a6e79..ca26ea5 100644
--- a/README.md
+++ b/README.md
@@ -7,12 +7,15 @@ Network from Scratch on Gentoo
=net-wireless/osmobts-9999 **
=net-wireless/osmotrx-9999 **
=net-libs/libosmo-abis-9999 **
+ =net-libs/libosmo-netif-9999 **
=net-wireless/openggsn-9999 **
+ =net-libs/libosmocore-9999 **
+ =net-misc/lcr-9999 **
#### 2. Make sure your portage tree is up to date, and emerge the right packages:
$ sudo emerge --sync
- $ sudo emerge openbsc osmobts osmotrx
+ $ sudo emerge openbsc osmobts osmotrx lcr
#### 3. Customize config files.
diff --git a/start.sh b/start.sh
index fc56804..15fc3ed 100755
--- a/start.sh
+++ b/start.sh
@@ -3,13 +3,19 @@
config_dir="$(readlink -f "$(dirname "$0")")"
openbsc_config="$config_dir/open-bsc.cfg"
osmobts_config="$config_dir/osmo-bts.cfg"
+osmosgsn_config="$config_dir/osmo-sgsn.cfg"
+openggsn_config="$config_dir/ggsn.conf"
+ggsn_state_dir="$config_dir/ggsn-state/"
+ggsn_config="$config_dir/ggsn.conf"
hlr_db="$config_dir/hlr.sqlite3"
window_title="GSM"
lcr=""
channels="1"
+gprs=0
-[[ $2 == "lcr" || $1 == "lcr" ]] && lcr="-m"
-[[ $2 == "mimo" || $1 == "mimo" ]] && channels="2"
+[[ $3 == "lcr" || $2 == "lcr" || $1 == "lcr" ]] && lcr="-m"
+[[ $3 == "mimo" || $2 == "mimo" || $1 == "mimo" ]] && channels="2"
+[[ $3 == "gprs" || $2 == "gprs" || $1 == "gprs" ]] && gprs=1
tmux new-session -s "$window_title" -n close-me -d
@@ -27,6 +33,18 @@ fi
tmux new-window -n OsmoTRX -t "$window_title"
tmux send-keys -t OsmoTRX "osmo-trx -c $channels" Enter
+if [[ $gprs -eq 1 ]]; then
+ #TODO in ebuild: sudo setcap cap_net_admin=ep /usr/bin/ggsn
+ tmux new-window -n OpenGGSN -t "$window_title"
+ tmux send-keys -t OpenGGSN "ggsn --statedir='$ggsn_state_dir' --conf='$openggsn_config' --pidfile='$ggsn_state_dir/ggsn.pid' --fg --debug" Enter
+
+ tmux new-window -n OsmoSGSN -t "$window_title"
+ tmux send-keys -t OsmoSGSN "osmo-sgsn -c '$osmosgsn_config'" Enter
+
+ tmux new-window -n SGSN-Control -t "$window_title"
+ tmux send-keys -t SGSN-Control "while ! /sbin/ss -n -l -t state listening src \"*:4245\" | grep -q :4245; do sleep 0.5; done; telnet 127.0.0.1 4245" Enter
+fi
+
tmux new-window -n BSC-Control -t "$window_title"
tmux send-keys -t BSC-Control "while ! /sbin/ss -n -l -t state listening src \"*:4242\" | grep -q :4242; do sleep 0.5; done; telnet 127.0.0.1 4242" Enter
diff --git a/stop.sh b/stop.sh
index 30bfc98..6fdcc00 100755
--- a/stop.sh
+++ b/stop.sh
@@ -6,4 +6,6 @@ pkill osmo-nitb
pkill osmobts-trx
pkill osmo-trx
pkill lcr
+pkill ggsn
+pkill osmo-sgsn
tmux kill-session -t GSM