summaryrefslogtreecommitdiff
path: root/tools
diff options
context:
space:
mode:
authorJoe Hershberger <joe.hershberger@ni.com>2012-07-31 06:06:41 (GMT)
committerJoe Hershberger <joe.hershberger@ni.com>2012-09-24 18:17:24 (GMT)
commit7f51898c1b170e0036e6931a17ada46e2b4fd52e (patch)
tree7a7d89b028823b905401395dc7dcfc0b5da38761 /tools
parentee1f4caaa2a3f79d692155eec8a4c7289d60e106 (diff)
downloadu-boot-7f51898c1b170e0036e6931a17ada46e2b4fd52e.tar.xz
net: Make netconsole src and dest ports configurable
It is desirable to use different port numbers for sending and receiving packets with netconsole in the case where you have more than one device on the local subnet with netconsole enabled for broadcast. When they use the same port for both, any output from one will look like input to the other. This is typlically not desirable. This patch allows the input and output ports to be specified separately in the environment. Signed-off-by: Joe Hershberger <joe.hershberger@ni.com> Cc: Mike Frysinger <vapier@gentoo.org> Acked-by: Mike Frysinger <vapier@gentoo.org>
Diffstat (limited to 'tools')
-rwxr-xr-xtools/netconsole18
1 files changed, 11 insertions, 7 deletions
diff --git a/tools/netconsole b/tools/netconsole
index c8109bb..1a0ef22 100755
--- a/tools/netconsole
+++ b/tools/netconsole
@@ -2,7 +2,7 @@
usage() {
(
- echo "Usage: $0 <board IP> [board port]"
+ echo "Usage: $0 <board-IP> [board-port [board-in-port]]"
echo ""
echo "If port is not specified, '6666' will be used"
[ -z "$*" ] && exit 0
@@ -24,9 +24,13 @@ while [ -n "$1" ] ; do
done
ip=$1
-port=${2:-6666}
+board_out_port=${2:-6666}
+board_in_port=${3:-${board_out_port}}
-if [ -z "${ip}" ] || [ -n "$3" ] ; then
+echo Board out port: ${board_out_port}
+echo Board in port: ${board_in_port}
+
+if [ -z "${ip}" ] || [ -n "$4" ] ; then
usage "Invalid number of arguments"
fi
@@ -41,19 +45,19 @@ stty -icanon -echo intr ^T
(
if type ncb 2>/dev/null ; then
# see if ncb is in $PATH
- exec ncb ${port}
+ exec ncb ${board_out_port}
elif [ -x ${0%/*}/ncb ] ; then
# maybe it's in the same dir as the netconsole script
- exec ${0%/*}/ncb ${port}
+ exec ${0%/*}/ncb ${board_out_port}
else
# blah, just use regular netcat
- while ${nc} -u -l -p ${port} < /dev/null ; do
+ while ${nc} -u -l -p ${board_out_port} < /dev/null ; do
:
done
fi
) &
pid=$!
-${nc} -u ${ip} ${port}
+${nc} -u ${ip} ${board_in_port}
kill ${pid} 2>/dev/null