summaryrefslogtreecommitdiff
path: root/tools/netconsole
diff options
context:
space:
mode:
authorJoe Hershberger <joe.hershberger@ni.com>2012-07-31 06:06:41 +0000
committerJoe Hershberger <joe.hershberger@ni.com>2012-09-24 13:17:24 -0500
commit7f51898c1b170e0036e6931a17ada46e2b4fd52e (patch)
tree7a7d89b028823b905401395dc7dcfc0b5da38761 /tools/netconsole
parentee1f4caaa2a3f79d692155eec8a4c7289d60e106 (diff)
downloadu-boot-imx-7f51898c1b170e0036e6931a17ada46e2b4fd52e.zip
u-boot-imx-7f51898c1b170e0036e6931a17ada46e2b4fd52e.tar.gz
u-boot-imx-7f51898c1b170e0036e6931a17ada46e2b4fd52e.tar.bz2
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/netconsole')
-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