From a10c2f793b24616d3a04ed7907c53008d443ed27 Mon Sep 17 00:00:00 2001 From: Urban Wallasch Date: Sun, 21 Apr 2019 21:47:52 +0200 Subject: [PATCH] * Fixed preloader script. * Made debug output in _init() less ambiguous. --- fbind/fbind | 21 ++++++++++++++------- fbind/fbind.c | 2 +- 2 files changed, 15 insertions(+), 8 deletions(-) diff --git a/fbind/fbind b/fbind/fbind index f7ab880..4fa9312 100755 --- a/fbind/fbind +++ b/fbind/fbind @@ -1,15 +1,22 @@ #!/bin/bash +NAME="$(basename "$0")" if [ $# -lt 2 ] ; then - echo "Usage: fbind address command [command_args]" + echo "Usage: $NAME address [-d] command [command_args]" exit 1 fi -SO="fbind64dbg.so" -if [ "$(basename "$0")" == "bind32" ] ; then - SO="fbind32dbg.so" -fi -PFX=$(dirname $(realpath "$0")) ADR="$1" shift -BIND_ADDR="$ADR" LD_PRELOAD="$PFX/$SO" $* +PLD="fbind64" +if [ "$NAME" == "fbind32" ] ; then + PLD="fbind32" +fi +if [ "$1" == "-d" ] ; then + PLD="$PLD"d + shift +fi +PFX=$(dirname $(realpath "$0")) +PLD="$PFX/$PLD.so" + +BIND_ADDR="$ADR" LD_PRELOAD="$PLD" $* diff --git a/fbind/fbind.c b/fbind/fbind.c index 7f687bc..c20f968 100644 --- a/fbind/fbind.c +++ b/fbind/fbind.c @@ -108,7 +108,7 @@ void _init(void) { local_sockaddr_in->sin_family = AF_INET; local_sockaddr_in->sin_addr.s_addr = bind_addr_saddr; local_sockaddr_in->sin_port = htons(0); - DBGPRINT("_init: %s:%d\n", inet_ntoa(local_sockaddr_in->sin_addr), ntohs(local_sockaddr_in->sin_port)); + DBGPRINT("_init: bind_addr=%s:%d\n", inet_ntoa(local_sockaddr_in->sin_addr), ntohs(local_sockaddr_in->sin_port)); } } -- 2.30.2