#!/bin/sh
#
# Compatibility wrapper for netresolve that runs a program with libc functions
# replaced by netresolve based implementations.

export LD_PRELOAD="libnetresolve-libc.so.0 libnetresolve-asyncns.so.0"

usage()
{
	cat <<EOF
Usage: ${0} [-b <backend>] [-4|-6] [-v] command ...
	-b <backend> comma-separated list of backedns
	-4           IPv4 only query
	-6           IPv6 only query
	-v           show more verbose output
	-h           print help
EOF
}

if [ "$#" = 0 ]
then
    usage
    exit 0
fi

while [ $# -gt 0 ]; do
    case "$1" in
        (-v|--verbose)
            export NETRESOLVE_VERBOSE=yes
            ;;
        (-b|--backends)
            shift
            export NETRESOLVE_BACKENDS="$1"
            ;;
        (-4)
            export NETRESOLVE_FORCE_FAMILY=ip4
            ;;
        (-6)
            export NETRESOLVE_FORCE_FAMILY=ip6
            ;;
	(-h)
            usage
            exit 0
            ;;
        (-*)
            echo "unknown option: $1" >&2
            exit 1
            ;;
        (*)
            exec "$@"
            ;;
    esac
    shift
done
