From d9fe0617ee0ababd9b7b2d6edf34cb1b6d9a6012 Mon Sep 17 00:00:00 2001 From: Sebastian Huber Date: Wed, 28 Sep 2016 13:23:16 +0200 Subject: Split rtems-bsd-shell-netcmds.c This improves garbage collection by the linker. --- libbsd.py | 7 ++- libbsd_waf.py | 7 ++- rtemsbsd/rtems/rtems-bsd-shell-ifconfig.c | 20 +++++++++ rtemsbsd/rtems/rtems-bsd-shell-netcmds.c | 74 ------------------------------- rtemsbsd/rtems/rtems-bsd-shell-netstat.c | 20 +++++++++ rtemsbsd/rtems/rtems-bsd-shell-pfctl.c | 40 +++++++++++++++++ rtemsbsd/rtems/rtems-bsd-shell-ping.c | 20 +++++++++ rtemsbsd/rtems/rtems-bsd-shell-route.c | 20 +++++++++ rtemsbsd/rtems/rtems-bsd-shell-sysctl.c | 20 +++++++++ rtemsbsd/rtems/rtems-bsd-shell-tcpdump.c | 20 +++++++++ 10 files changed, 172 insertions(+), 76 deletions(-) create mode 100644 rtemsbsd/rtems/rtems-bsd-shell-ifconfig.c delete mode 100644 rtemsbsd/rtems/rtems-bsd-shell-netcmds.c create mode 100644 rtemsbsd/rtems/rtems-bsd-shell-netstat.c create mode 100644 rtemsbsd/rtems/rtems-bsd-shell-pfctl.c create mode 100644 rtemsbsd/rtems/rtems-bsd-shell-ping.c create mode 100644 rtemsbsd/rtems/rtems-bsd-shell-route.c create mode 100644 rtemsbsd/rtems/rtems-bsd-shell-sysctl.c create mode 100644 rtemsbsd/rtems/rtems-bsd-shell-tcpdump.c diff --git a/libbsd.py b/libbsd.py index 575edbb7..8f001ac5 100755 --- a/libbsd.py +++ b/libbsd.py @@ -68,7 +68,12 @@ def rtems(mm): 'rtems/rtems-bsd-rc-conf-pf.c', 'rtems/rtems-bsd-rc-conf.c', 'rtems/rtems-bsd-shell.c', - 'rtems/rtems-bsd-shell-netcmds.c', + 'rtems/rtems-bsd-shell-ifconfig.c', + 'rtems/rtems-bsd-shell-netstat.c', + 'rtems/rtems-bsd-shell-ping.c', + 'rtems/rtems-bsd-shell-route.c', + 'rtems/rtems-bsd-shell-sysctl.c', + 'rtems/rtems-bsd-shell-tcpdump.c', 'rtems/rtems-bsd-syscall-api.c', 'rtems/rtems-kernel-assert.c', 'rtems/rtems-kernel-autoconf.c', diff --git a/libbsd_waf.py b/libbsd_waf.py index 1f8e2685..ba10d5ba 100644 --- a/libbsd_waf.py +++ b/libbsd_waf.py @@ -1083,7 +1083,12 @@ def build(bld): 'rtemsbsd/rtems/rtems-bsd-rc-conf-pf.c', 'rtemsbsd/rtems/rtems-bsd-rc-conf.c', 'rtemsbsd/rtems/rtems-bsd-shell-dhcpcd.c', - 'rtemsbsd/rtems/rtems-bsd-shell-netcmds.c', + 'rtemsbsd/rtems/rtems-bsd-shell-ifconfig.c', + 'rtemsbsd/rtems/rtems-bsd-shell-netstat.c', + 'rtemsbsd/rtems/rtems-bsd-shell-ping.c', + 'rtemsbsd/rtems/rtems-bsd-shell-route.c', + 'rtemsbsd/rtems/rtems-bsd-shell-sysctl.c', + 'rtemsbsd/rtems/rtems-bsd-shell-tcpdump.c', 'rtemsbsd/rtems/rtems-bsd-shell.c', 'rtemsbsd/rtems/rtems-bsd-syscall-api.c', 'rtemsbsd/rtems/rtems-kernel-assert.c', diff --git a/rtemsbsd/rtems/rtems-bsd-shell-ifconfig.c b/rtemsbsd/rtems/rtems-bsd-shell-ifconfig.c new file mode 100644 index 00000000..6d975d6b --- /dev/null +++ b/rtemsbsd/rtems/rtems-bsd-shell-ifconfig.c @@ -0,0 +1,20 @@ +/* + * COPYRIGHT (c) 1989-2012. + * On-Line Applications Research Corporation (OAR). + * + * The license and distribution terms for this file may be + * found in the file LICENSE in this distribution or at + * http://www.rtems.com/license/LICENSE. + */ + +#include +#include + +rtems_shell_cmd_t rtems_shell_IFCONFIG_Command = { + "ifconfig", /* name */ + "ifconfig [args]", /* usage */ + "net", /* topic */ + rtems_bsd_command_ifconfig, /* command */ + NULL, /* alias */ + NULL /* next */ +}; diff --git a/rtemsbsd/rtems/rtems-bsd-shell-netcmds.c b/rtemsbsd/rtems/rtems-bsd-shell-netcmds.c deleted file mode 100644 index fe63a5aa..00000000 --- a/rtemsbsd/rtems/rtems-bsd-shell-netcmds.c +++ /dev/null @@ -1,74 +0,0 @@ -/* - * COPYRIGHT (c) 1989-2012. - * On-Line Applications Research Corporation (OAR). - * - * The license and distribution terms for this file may be - * found in the file LICENSE in this distribution or at - * http://www.rtems.com/license/LICENSE. - */ - -#include -#include - -rtems_shell_cmd_t rtems_shell_IFCONFIG_Command = { - "ifconfig", /* name */ - "ifconfig [args]", /* usage */ - "net", /* topic */ - rtems_bsd_command_ifconfig, /* command */ - NULL, /* alias */ - NULL /* next */ -}; - -rtems_shell_cmd_t rtems_shell_NETSTAT_Command = { - "netstat", /* name */ - "netstat [args]", /* usage */ - "net", /* topic */ - rtems_bsd_command_netstat, /* command */ - NULL, /* alias */ - NULL /* next */ -}; - -rtems_shell_cmd_t rtems_shell_PFCTL_Command = { - "pfctl", /* name */ - "pfctl [args]", /* usage */ - "net", /* topic */ - rtems_bsd_command_pfctl, /* command */ - NULL, /* alias */ - NULL /* next */ -}; - -rtems_shell_cmd_t rtems_shell_PING_Command = { - "ping", /* name */ - "ping [args]", /* usage */ - "net", /* topic */ - rtems_bsd_command_ping, /* command */ - NULL, /* alias */ - NULL /* next */ -}; - -rtems_shell_cmd_t rtems_shell_ROUTE_Command = { - "route", /* name */ - "route [args]", /* usage */ - "net", /* topic */ - rtems_bsd_command_route, /* command */ - NULL, /* alias */ - NULL /* next */ -}; - -rtems_shell_cmd_t rtems_shell_TCPDUMP_Command = { - "tcpdump", /* name */ - "tcpdump [args]", /* usage */ - "net", /* topic */ - rtems_bsd_command_tcpdump, /* command */ - NULL, /* alias */ - NULL /* next */ -}; - -rtems_shell_cmd_t rtems_shell_SYSCTL_Command = { - "sysctl", /* name */ - "sysctl [-bdehiNnoRTqx] [-f filename] name[=value] ...", /* usage */ - "net", /* topic */ - rtems_bsd_command_sysctl, /* command */ - NULL, /* alias */ - NULL /* next */ -}; diff --git a/rtemsbsd/rtems/rtems-bsd-shell-netstat.c b/rtemsbsd/rtems/rtems-bsd-shell-netstat.c new file mode 100644 index 00000000..9cfe7d73 --- /dev/null +++ b/rtemsbsd/rtems/rtems-bsd-shell-netstat.c @@ -0,0 +1,20 @@ +/* + * COPYRIGHT (c) 1989-2012. + * On-Line Applications Research Corporation (OAR). + * + * The license and distribution terms for this file may be + * found in the file LICENSE in this distribution or at + * http://www.rtems.com/license/LICENSE. + */ + +#include +#include + +rtems_shell_cmd_t rtems_shell_NETSTAT_Command = { + "netstat", /* name */ + "netstat [args]", /* usage */ + "net", /* topic */ + rtems_bsd_command_netstat, /* command */ + NULL, /* alias */ + NULL /* next */ +}; diff --git a/rtemsbsd/rtems/rtems-bsd-shell-pfctl.c b/rtemsbsd/rtems/rtems-bsd-shell-pfctl.c new file mode 100644 index 00000000..070edb2a --- /dev/null +++ b/rtemsbsd/rtems/rtems-bsd-shell-pfctl.c @@ -0,0 +1,40 @@ +/* + * Copyright (c) 2016 embedded brains GmbH. All rights reserved. + * + * embedded brains GmbH + * Dornierstr. 4 + * 82178 Puchheim + * Germany + * + * + * 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. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR 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 AUTHOR 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. + */ + +#include +#include + +rtems_shell_cmd_t rtems_shell_PFCTL_Command = { + .name = "pfctl", + .usage = "pfctl [args]", + .topic = "net", + .command = rtems_bsd_command_pfctl +}; diff --git a/rtemsbsd/rtems/rtems-bsd-shell-ping.c b/rtemsbsd/rtems/rtems-bsd-shell-ping.c new file mode 100644 index 00000000..59791b45 --- /dev/null +++ b/rtemsbsd/rtems/rtems-bsd-shell-ping.c @@ -0,0 +1,20 @@ +/* + * COPYRIGHT (c) 1989-2012. + * On-Line Applications Research Corporation (OAR). + * + * The license and distribution terms for this file may be + * found in the file LICENSE in this distribution or at + * http://www.rtems.com/license/LICENSE. + */ + +#include +#include + +rtems_shell_cmd_t rtems_shell_PING_Command = { + "ping", /* name */ + "ping [args]", /* usage */ + "net", /* topic */ + rtems_bsd_command_ping, /* command */ + NULL, /* alias */ + NULL /* next */ +}; diff --git a/rtemsbsd/rtems/rtems-bsd-shell-route.c b/rtemsbsd/rtems/rtems-bsd-shell-route.c new file mode 100644 index 00000000..3fc6dfc4 --- /dev/null +++ b/rtemsbsd/rtems/rtems-bsd-shell-route.c @@ -0,0 +1,20 @@ +/* + * COPYRIGHT (c) 1989-2012. + * On-Line Applications Research Corporation (OAR). + * + * The license and distribution terms for this file may be + * found in the file LICENSE in this distribution or at + * http://www.rtems.com/license/LICENSE. + */ + +#include +#include + +rtems_shell_cmd_t rtems_shell_ROUTE_Command = { + "route", /* name */ + "route [args]", /* usage */ + "net", /* topic */ + rtems_bsd_command_route, /* command */ + NULL, /* alias */ + NULL /* next */ +}; diff --git a/rtemsbsd/rtems/rtems-bsd-shell-sysctl.c b/rtemsbsd/rtems/rtems-bsd-shell-sysctl.c new file mode 100644 index 00000000..d0ee82c8 --- /dev/null +++ b/rtemsbsd/rtems/rtems-bsd-shell-sysctl.c @@ -0,0 +1,20 @@ +/* + * COPYRIGHT (c) 1989-2012. + * On-Line Applications Research Corporation (OAR). + * + * The license and distribution terms for this file may be + * found in the file LICENSE in this distribution or at + * http://www.rtems.com/license/LICENSE. + */ + +#include +#include + +rtems_shell_cmd_t rtems_shell_SYSCTL_Command = { + "sysctl", /* name */ + "sysctl [-bdehiNnoRTqx] [-f filename] name[=value] ...", /* usage */ + "net", /* topic */ + rtems_bsd_command_sysctl, /* command */ + NULL, /* alias */ + NULL /* next */ +}; diff --git a/rtemsbsd/rtems/rtems-bsd-shell-tcpdump.c b/rtemsbsd/rtems/rtems-bsd-shell-tcpdump.c new file mode 100644 index 00000000..c501ee51 --- /dev/null +++ b/rtemsbsd/rtems/rtems-bsd-shell-tcpdump.c @@ -0,0 +1,20 @@ +/* + * COPYRIGHT (c) 1989-2012. + * On-Line Applications Research Corporation (OAR). + * + * The license and distribution terms for this file may be + * found in the file LICENSE in this distribution or at + * http://www.rtems.com/license/LICENSE. + */ + +#include +#include + +rtems_shell_cmd_t rtems_shell_TCPDUMP_Command = { + "tcpdump", /* name */ + "tcpdump [args]", /* usage */ + "net", /* topic */ + rtems_bsd_command_tcpdump, /* command */ + NULL, /* alias */ + NULL /* next */ +}; -- cgit v1.2.3