diff options
Diffstat (limited to 'rtr-origin')
-rw-r--r-- | rtr-origin/Makefile.in | 30 | ||||
-rwxr-xr-x | rtr-origin/rtr-origin.py | 14 | ||||
-rw-r--r-- | rtr-origin/rules.darwin.mk | 9 | ||||
-rw-r--r-- | rtr-origin/rules.freebsd.mk | 37 | ||||
-rw-r--r-- | rtr-origin/rules.linux.mk | 29 | ||||
-rw-r--r-- | rtr-origin/rules.unknown.mk | 8 |
6 files changed, 113 insertions, 14 deletions
diff --git a/rtr-origin/Makefile.in b/rtr-origin/Makefile.in index 80ff2b50..9eb2ac55 100644 --- a/rtr-origin/Makefile.in +++ b/rtr-origin/Makefile.in @@ -4,8 +4,9 @@ BASE = rtr-origin SRC = ${BASE}.py BIN = ${BASE} -INSTALL = @INSTALL@ -m 555 +INSTALL = @INSTALL@ PYTHON = @PYTHON@ +AWK = @AWK@ prefix = @prefix@ exec_prefix = @exec_prefix@ @@ -22,29 +23,38 @@ libdir = @libdir@ abs_top_srcdir = @abs_top_srcdir@ abs_top_builddir = @abs_top_builddir@ +RTR_ORIGIN_INSTALL_TARGETS = @RCYNIC_INSTALL_TARGETS@ + +RPKI_RTR_PORT = 43779 + all: ${BIN} clean: rm -f ${BIN} -install: all - if test -d ${DESTDIR}${bindir} ; then :; else ${INSTALL} -d ${DESTDIR}${bindir}; fi - ${INSTALL} ${BIN} ${DESTDIR}${bindir}/${BIN} +install: all ${RTR_ORIGIN_INSTALL_TARGETS} + +install-binary: + if test -d ${DESTDIR}${bindir} ; then :; else ${INSTALL} -m 555 -d ${DESTDIR}${bindir}; fi + ${INSTALL} -m 555 ${BIN} ${DESTDIR}${bindir}/${BIN} deinstall uninstall: rm -f ${DESTDIR}${bindir}/${BIN} -installation-manifest: - echo >>${abs_top_builddir}/installation-manifest F %%BINDIR%%/${BIN} - distclean: clean rm -rf current sockets *.ax *.ix.* rm -f Makefile ${BIN} : ${SRC} - echo >$@ '#!${PYTHON}' - cat >>$@ ${SRC} - chmod a+x ${BIN} + AC_PYTHON_INTERPRETER='${PYTHON}' AC_SCAN_ROAS='${bindir}/scan_roas' \ + ${PYTHON} ${abs_top_srcdir}/buildtools/make-rcynic-script.py <${SRC} >$@ + chmod a+x $@ test: @true + +.FORCE: + +# Platform-specific rules below here. + +@RTR_ORIGIN_MAKE_RULES@ diff --git a/rtr-origin/rtr-origin.py b/rtr-origin/rtr-origin.py index 95bef50e..70a0bb1d 100755 --- a/rtr-origin/rtr-origin.py +++ b/rtr-origin/rtr-origin.py @@ -9,7 +9,7 @@ # # $Id$ # -# Copyright (C) 2009-2012 Internet Systems Consortium ("ISC") +# Copyright (C) 2009-2013 Internet Systems Consortium ("ISC") # # Permission to use, copy, modify, and distribute this software for any # purpose with or without fee is hereby granted, provided that the above @@ -1805,9 +1805,15 @@ def bgpdump_server_main(argv): except KeyboardInterrupt: sys.exit(0) - -scan_roas = os.path.normpath(os.path.join(sys.path[0], "..", "utils", - "scan_roas", "scan_roas")) +# Figure out where the scan_roas utility program is today +try: + # Set from autoconf + scan_roas = ac_scan_roas +except NameError: + # Source directory + scan_roas = os.path.normpath(os.path.join(sys.path[0], "..", "utils", + "scan_roas", "scan_roas")) +# If that didn't work, use $PATH and hope for the best if not os.path.exists(scan_roas): scan_roas = "scan_roas" diff --git a/rtr-origin/rules.darwin.mk b/rtr-origin/rules.darwin.mk new file mode 100644 index 00000000..1230db92 --- /dev/null +++ b/rtr-origin/rules.darwin.mk @@ -0,0 +1,9 @@ +# $Id$ + +install-always: install-binary + +install-postconf: install-listener + +install-listener: + @echo "No rule for $@ on this platform (yet), you'll have to do that yourself if it matters." + diff --git a/rtr-origin/rules.freebsd.mk b/rtr-origin/rules.freebsd.mk new file mode 100644 index 00000000..4cb21f3b --- /dev/null +++ b/rtr-origin/rules.freebsd.mk @@ -0,0 +1,37 @@ +# $Id$ + +install-always: install-binary + +install-postconf: install-listener + +install-listener: .FORCE + @if /usr/bin/egrep -q '^rpki-rtr' /etc/services ; \ + then \ + echo "You already have a /etc/services entry for rpki-rtr, so I will use it."; \ + elif echo >>/etc/services "rpki-rtr ${RPKI_RTR_PORT}/tcp #RFC 6810" ; \ + then \ + echo "Added rpki-rtr to /etc/services."; \ + else \ + echo "Adding rpki-rtr to /etc/services failed, please fix this, then try again."; \ + exit 1; \ + fi + @if /usr/bin/egrep -q "rpki-rtr[ ]+stream[ ]+tcp[ ]" /etc/inetd.conf; \ + then \ + echo "You already have an inetd.conf entry for rpki-rtr on TCPv4, so I will use it."; \ + elif echo >>/etc/inetd.conf "rpki-rtr stream tcp nowait nobody /usr/local/bin/rtr-origin rtr-origin --server /var/rcynic/rpki-rtr"; \ + then \ + echo "Added rpki-rtr for TCPv4 to /etc/inetd.conf."; \ + else \ + echo "Adding rpki-rtr for TCPv4 to /etc/inetd.conf failed, please fix this, then try again."; \ + exit 1; \ + fi + @if /usr/bin/egrep -q "rpki-rtr[ ]+stream[ ]+tcp6[ ]" /etc/inetd.conf; \ + then \ + echo "You already have an inetd.conf entry for rpki-rtr on TCPv6, so I will use it."; \ + elif echo >>/etc/inetd.conf "rpki-rtr stream tcp6 nowait nobody /usr/local/bin/rtr-origin rtr-origin --server /var/rcynic/rpki-rtr"; \ + then \ + echo "Added rpki-rtr for TCPv6 to /etc/inetd.conf."; \ + else \ + echo "Adding rpki-rtr for TCPv6 to /etc/inetd.conf failed, please fix this, then try again."; \ + exit 1; \ + fi diff --git a/rtr-origin/rules.linux.mk b/rtr-origin/rules.linux.mk new file mode 100644 index 00000000..2faa0e41 --- /dev/null +++ b/rtr-origin/rules.linux.mk @@ -0,0 +1,29 @@ +# $Id$ + +install-always: install-binary install-listener + +install-postconf: + @true + +# Only need to make listener if not already present + +install-listener: ${DESTDIR}/etc/xinetd.d/rpki-rtr + +${DESTDIR}/etc/xinetd.d/rpki-rtr: + @${AWK} 'BEGIN { \ + print "service rpki-rtr"; \ + print "{"; \ + print " type = UNLISTED"; \ + print " flags = IPv4"; \ + print " socket_type = stream"; \ + print " protocol = tcp"; \ + print " port = ${RPKI_RTR_PORT}"; \ + print " wait = no"; \ + print " user = nobody"; \ + print " server = /usr/bin/rtr-origin"; \ + print " server_args = --server /var/rcynic/rpki-rtr"; \ + print "}"; \ + }' >xinetd.rpki-rtr + ${INSTALL} -d ${DESTDIR}/etc/xinetd.d + ${INSTALL} -m 644 xinetd.rpki-rtr $@ + rm xinetd.rpki-rtr diff --git a/rtr-origin/rules.unknown.mk b/rtr-origin/rules.unknown.mk new file mode 100644 index 00000000..fb16e93a --- /dev/null +++ b/rtr-origin/rules.unknown.mk @@ -0,0 +1,8 @@ +# $Id$ + +install-always: install-binary + +install-postconf: install-listener + +install-listener: + @echo "Don't know how to make $@ on this platform"; exit 1 |