From c98a8c06d074ef75118d3f7eb276ea260e22cf2f Mon Sep 17 00:00:00 2001
From: George Oikonomou <george@contiki-ng.org>
Date: Tue, 31 Oct 2017 22:31:25 +0000
Subject: [PATCH] Delete platform-specific border-router example (jn516x/rpl/)

---
 .../jn516x/rpl/border-router/Makefile         |  29 ----
 .../jn516x/rpl/border-router/README.md        |  10 --
 .../jn516x/rpl/border-router/border-router.c  | 106 ------------
 .../jn516x/rpl/border-router/project-conf.h   |  47 ------
 .../jn516x/rpl/border-router/slip-bridge.c    | 157 ------------------
 tests/03-compile-nxp-ports/Makefile           |   1 -
 6 files changed, 350 deletions(-)
 delete mode 100644 examples/platform-specific/jn516x/rpl/border-router/Makefile
 delete mode 100644 examples/platform-specific/jn516x/rpl/border-router/README.md
 delete mode 100644 examples/platform-specific/jn516x/rpl/border-router/border-router.c
 delete mode 100644 examples/platform-specific/jn516x/rpl/border-router/project-conf.h
 delete mode 100644 examples/platform-specific/jn516x/rpl/border-router/slip-bridge.c

diff --git a/examples/platform-specific/jn516x/rpl/border-router/Makefile b/examples/platform-specific/jn516x/rpl/border-router/Makefile
deleted file mode 100644
index 006055734e..0000000000
--- a/examples/platform-specific/jn516x/rpl/border-router/Makefile
+++ /dev/null
@@ -1,29 +0,0 @@
-CONTIKI_PROJECT = border-router
-all: $(CONTIKI_PROJECT)
-
-TARGET ?= jn516x
-
-CONTIKI=../../../../..
-
-MAKE_MAC = MAKE_MAC_TSCH
-PROJECTDIRS += .. ../tools
-PROJECT_SOURCEFILES += rpl-tools.c
-PROJECT_SOURCEFILES += slip-bridge.c slip.c
-
-ifeq ($(PREFIX),)
- PREFIX = fd00::1/64
-endif
-
-include $(CONTIKI)/Makefile.include
-
-#using XON/XOFF flow control
-connect-router-sw:	$(CONTIKI)/tools/tunslip6
-	sudo $(CONTIKI)/tools/tunslip6 -X -B 1000000 $(PREFIX)
-
-#using hw flow control
-connect-router-hw:	$(CONTIKI)/tools/tunslip6
-	sudo $(CONTIKI)/tools/tunslip6 -H -B 1000000 $(PREFIX)
-
-#using no flow control
-connect-router-no:	$(CONTIKI)/tools/tunslip6
-	sudo $(CONTIKI)/tools/tunslip6 -B 1000000 $(PREFIX)
diff --git a/examples/platform-specific/jn516x/rpl/border-router/README.md b/examples/platform-specific/jn516x/rpl/border-router/README.md
deleted file mode 100644
index c2af3f3b66..0000000000
--- a/examples/platform-specific/jn516x/rpl/border-router/README.md
+++ /dev/null
@@ -1,10 +0,0 @@
-A RPL border router. 
-To indicate the hardware target for the border router, add one of the following
-options in the command line:
-If rpl-border-router runs on dongle:
-JN516x_WITH_DONGLE=1
-If rpl-border-router runs on DR1174:
-JN516x_WITH_DR1174=1
-If building for a new platform, first execute : make clean
-
-See ../README.md for more.
\ No newline at end of file
diff --git a/examples/platform-specific/jn516x/rpl/border-router/border-router.c b/examples/platform-specific/jn516x/rpl/border-router/border-router.c
deleted file mode 100644
index 3e829b4cc6..0000000000
--- a/examples/platform-specific/jn516x/rpl/border-router/border-router.c
+++ /dev/null
@@ -1,106 +0,0 @@
-/*
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- *    notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- *    notice, this list of conditions and the following disclaimer in the
- *    documentation and/or other materials provided with the distribution.
- * 3. Neither the name of the Institute nor the names of its contributors
- *    may be used to endorse or promote products derived from this software
- *    without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE INSTITUTE AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED.  IN NO EVENT SHALL THE INSTITUTE OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- *
- * This file is part of the Contiki operating system.
- *
- */
-
-#include "contiki.h"
-#include "dev/slip.h"
-#include "rpl.h"
-#include "tools/rpl-tools.h"
-
-#define DEBUG DEBUG_PRINT
-#include "net/ipv6/uip-debug.h"
-
-static uip_ipaddr_t prefix;
-static uint8_t prefix_set;
-
-PROCESS(border_router_process, "Border router process");
-
-AUTOSTART_PROCESSES(&border_router_process);
-
-/*---------------------------------------------------------------------------*/
-void
-request_prefix(void)
-{
-  /* mess up uip_buf with a dirty request... */
-  uip_buf[0] = '?';
-  uip_buf[1] = 'P';
-/*  uip_buf[2] = '\n'; */
-  uip_len = 2;
-  slip_send();
-  uip_len = 0;
-}
-/*---------------------------------------------------------------------------*/
-void
-set_prefix_64(uip_ipaddr_t *prefix_64)
-{
-  memcpy(&prefix, prefix_64, 16);
-  prefix_set = 1;
-}
-/*---------------------------------------------------------------------------*/
-PROCESS_THREAD(border_router_process, ev, data)
-{
-  static struct etimer et;
-
-  PROCESS_BEGIN();
-
-/* While waiting for the prefix to be sent through the SLIP connection, the future
- * border router can join an existing DAG as a parent or child, or acquire a default
- * router that will later take precedence over the SLIP fallback interface.
- * Prevent that by turning the radio off until we are initialized as a DAG root.
- */
-  prefix_set = 0;
-
-  PROCESS_PAUSE();
-
-  PRINTF("RPL-Border router started\n");
-
-  /* Request prefix until it has been received */
-  while(!prefix_set) {
-    etimer_set(&et, CLOCK_SECOND);
-    request_prefix();
-    PROCESS_WAIT_EVENT_UNTIL(etimer_expired(&et));
-    PRINTF("Waiting for prefix\n");
-  }
-
-  PRINTF("Obtained prefix: ");
-  uip_debug_ipaddr_print(&prefix);
-  PRINTF("\n");
-
-  rpl_tools_init(&prefix);
-
-  /* Print out routing tables every minute */
-  etimer_set(&et, CLOCK_SECOND * 60);
-  while(1) {
-    print_network_status();
-    PROCESS_YIELD_UNTIL(etimer_expired(&et));
-    etimer_reset(&et);
-  }
-
-  PROCESS_END();
-}
-/*---------------------------------------------------------------------------*/
diff --git a/examples/platform-specific/jn516x/rpl/border-router/project-conf.h b/examples/platform-specific/jn516x/rpl/border-router/project-conf.h
deleted file mode 100644
index 2673d895e7..0000000000
--- a/examples/platform-specific/jn516x/rpl/border-router/project-conf.h
+++ /dev/null
@@ -1,47 +0,0 @@
-/*
- * Copyright (c) 2015, SICS Swedish ICT.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- *    notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- *    notice, this list of conditions and the following disclaimer in the
- *    documentation and/or other materials provided with the distribution.
- * 3. Neither the name of the Institute nor the names of its contributors
- *    may be used to endorse or promote products derived from this software
- *    without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE INSTITUTE AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED.  IN NO EVENT SHALL THE INSTITUTE OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- *
- */
-
-/**
- * \author Simon Duquennoy <simonduq@sics.se>
- */
-
-#ifndef BR_PROJECT_CONF_H_
-#define BR_PROJECT_CONF_H_
-
-#ifndef UIP_FALLBACK_INTERFACE
-#define UIP_FALLBACK_INTERFACE rpl_interface
-#endif
-
-/* Needed for slip-bridge */
-#define SLIP_BRIDGE_CONF_NO_PUTCHAR 0
-
-#include "../common-conf.h"
-
-#endif /* PROJECT_CONF_H_ */
diff --git a/examples/platform-specific/jn516x/rpl/border-router/slip-bridge.c b/examples/platform-specific/jn516x/rpl/border-router/slip-bridge.c
deleted file mode 100644
index a4aff20e08..0000000000
--- a/examples/platform-specific/jn516x/rpl/border-router/slip-bridge.c
+++ /dev/null
@@ -1,157 +0,0 @@
-/*
- * Copyright (c) 2010, SICS Swedish ICT.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- *    notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- *    notice, this list of conditions and the following disclaimer in the
- *    documentation and/or other materials provided with the distribution.
- * 3. Neither the name of the Institute nor the names of its contributors
- *    may be used to endorse or promote products derived from this software
- *    without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE INSTITUTE AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED.  IN NO EVENT SHALL THE INSTITUTE OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- *
- */
-
-/**
- * \file
- *         Slip fallback interface
- * \author
- *         Niclas Finne <nfi@sics.se>
- *         Joakim Eriksson <joakime@sics.se>
- *         Joel Hoglund <joel@sics.se>
- *         Nicolas Tsiftes <nvt@sics.se>
- */
-
-#include "net/ipv6/uip.h"
-#include "net/ipv6/uip-ds6.h"
-#include "dev/slip.h"
-#if CONTIKI_TARGET_JN516X
-#include "dev/uart0.h"
-#else
-#include "dev/uart1.h"
-#endif
-#include <string.h>
-
-#define UIP_IP_BUF        ((struct uip_ip_hdr *)&uip_buf[UIP_LLH_LEN])
-
-#define DEBUG DEBUG_NONE
-#include "net/ipv6/uip-debug.h"
-
-void set_prefix_64(uip_ipaddr_t *);
-
-static uip_ipaddr_t last_sender;
-/*---------------------------------------------------------------------------*/
-static void
-slip_input_callback(void)
-{
-  PRINTF("SIN: %u\n", uip_len);
-  if(uip_buf[0] == '!') {
-    PRINTF("Got configuration message of type %c\n", uip_buf[1]);
-    uip_len = 0;
-    if(uip_buf[1] == 'P') {
-      uip_ipaddr_t prefix;
-      /* Here we set a prefix !!! */
-      memset(&prefix, 0, 16);
-      memcpy(&prefix, &uip_buf[2], 8);
-      PRINTF("Setting prefix ");
-      PRINT6ADDR(&prefix);
-      PRINTF("\n");
-      set_prefix_64(&prefix);
-    }
-  } else if(uip_buf[0] == '?') {
-    PRINTF("Got request message of type %c\n", uip_buf[1]);
-    if(uip_buf[1] == 'M') {
-      char *hexchar = "0123456789abcdef";
-      int j;
-      /* this is just a test so far... just to see if it works */
-      uip_buf[0] = '!';
-      for(j = 0; j < 8; j++) {
-        uip_buf[2 + j * 2] = hexchar[uip_lladdr.addr[j] >> 4];
-        uip_buf[3 + j * 2] = hexchar[uip_lladdr.addr[j] & 15];
-      }
-      uip_len = 18;
-      slip_send();
-    }
-    uip_len = 0;
-  }
-  /* Save the last sender received over SLIP to avoid bouncing the
-     packet back if no route is found */
-  uip_ipaddr_copy(&last_sender, &UIP_IP_BUF->srcipaddr);
-}
-/*---------------------------------------------------------------------------*/
-static void
-init(void)
-{
-  slip_arch_init();
-  process_start(&slip_process, NULL);
-  slip_set_input_callback(slip_input_callback);
-}
-/*---------------------------------------------------------------------------*/
-static int
-output(void)
-{
-  if(uip_ipaddr_cmp(&last_sender, &UIP_IP_BUF->srcipaddr)) {
-    /* Do not bounce packets back over SLIP if the packet was received
-       over SLIP */
-    PRINTF("slip-bridge: Destination off-link but no route src=");
-    PRINT6ADDR(&UIP_IP_BUF->srcipaddr);
-    PRINTF(" dst=");
-    PRINT6ADDR(&UIP_IP_BUF->destipaddr);
-    PRINTF("\n");
-  } else {
-    PRINTF("SUT: %u\n", uip_len);
-    slip_send();
-  }
-  return 0;
-}
-/*---------------------------------------------------------------------------*/
-#if !SLIP_BRIDGE_CONF_NO_PUTCHAR
-#undef putchar
-int
-putchar(int c)
-{
-#define SLIP_END     0300
-  static char debug_frame = 0;
-
-  if(!debug_frame) {            /* Start of debug output */
-    slip_arch_writeb(SLIP_END);
-    slip_arch_writeb('\r');     /* Type debug line == '\r' */
-    debug_frame = 1;
-  }
-
-  /* Need to also print '\n' because for example COOJA will not show
-     any output before line end */
-  slip_arch_writeb((char)c);
-
-  /*
-   * Line buffered output, a newline marks the end of debug output and
-   * implicitly flushes debug output.
-   */
-  if(c == '\n') {
-    slip_arch_writeb(SLIP_END);
-    debug_frame = 0;
-  }
-  return c;
-}
-#endif
-/*---------------------------------------------------------------------------*/
-const struct uip_fallback_interface rpl_interface = {
-  init, output
-};
-/*---------------------------------------------------------------------------*/
diff --git a/tests/03-compile-nxp-ports/Makefile b/tests/03-compile-nxp-ports/Makefile
index b69444f659..3614a8545b 100644
--- a/tests/03-compile-nxp-ports/Makefile
+++ b/tests/03-compile-nxp-ports/Makefile
@@ -5,7 +5,6 @@ TOOLSDIR=../../tools
 EXAMPLES = \
 hello-world/jn516x \
 platform-specific/jn516x/dr1175-sensors/jn516x \
-platform-specific/jn516x/rpl/border-router/jn516x \
 platform-specific/jn516x/rpl/node/jn516x \
 platform-specific/jn516x/rpl/coap-dongle-node/jn516x \
 platform-specific/jn516x/rpl/coap-dr1175-node/jn516x \
-- 
GitLab