Compare commits

..

No commits in common. "master" and "f23" have entirely different histories.
master ... f23

2 changed files with 13 additions and 142 deletions

View File

@ -1,69 +0,0 @@
commit 3a25ae2361da048f24524d8e63d70f4cd40444f3
Author: Sanket Shah <sanket.shah@cyberoam.com>
Date: Wed Jul 31 21:40:08 2013 +0200
Add --noflush command line support for ebtables-restore
diff --git a/ebtables-restore.c b/ebtables-restore.c
index ea02960..bb4d0cf 100644
--- a/ebtables-restore.c
+++ b/ebtables-restore.c
@@ -22,13 +22,25 @@
#include <string.h>
#include <errno.h>
#include <unistd.h>
+#include <getopt.h>
#include "include/ebtables_u.h"
+static const struct option options[] = {
+ {.name = "noflush", .has_arg = 0, .val = 'n'},
+ { 0 }
+};
+
static struct ebt_u_replace replace[3];
void ebt_early_init_once();
#define OPT_KERNELDATA 0x800 /* Also defined in ebtables.c */
+static void print_usage()
+{
+ fprintf(stderr, "Usage: ebtables-restore [ --noflush ]\n");
+ exit(1);
+}
+
static void copy_table_names()
{
strcpy(replace[0].name, "filter");
@@ -41,11 +53,20 @@ static void copy_table_names()
int main(int argc_, char *argv_[])
{
char *argv[EBTD_ARGC_MAX], cmdline[EBTD_CMDLINE_MAXLN];
- int i, offset, quotemode = 0, argc, table_nr = -1, line = 0, whitespace;
+ int i, offset, quotemode = 0, argc, table_nr = -1, line = 0, whitespace, c, flush = 1;
char ebtables_str[] = "ebtables";
- if (argc_ != 1)
- ebtrest_print_error("options are not supported");
+ while ((c = getopt_long(argc_, argv_, "n", options, NULL)) != -1) {
+ switch(c) {
+ case 'n':
+ flush = 0;
+ break;
+ default:
+ print_usage();
+ break;
+ }
+ }
+
ebt_silent = 0;
copy_table_names();
ebt_early_init_once();
@@ -68,7 +89,7 @@ int main(int argc_, char *argv_[])
ebtrest_print_error("table '%s' was not recognized", cmdline+1);
table_nr = i;
replace[table_nr].command = 11;
- ebt_get_kernel_table(&replace[table_nr], 1);
+ ebt_get_kernel_table(&replace[table_nr], flush);
replace[table_nr].command = 0;
replace[table_nr].flags = OPT_KERNELDATA; /* Prevent do_command from initialising replace */
continue;

View File

@ -2,11 +2,11 @@
Name: ebtables
Version: 2.0.10
Release: 28%{?dist}
Release: 18%{?dist}
Summary: Ethernet Bridge frame table administration tool
License: GPLv2+
Group: System Environment/Base
URL: http://ebtables.sourceforge.net/
Source0: http://downloads.sourceforge.net/ebtables/ebtables-v%{version}-%{ebminor}.tar.gz
Source1: ebtables-save
Source2: ebtables.systemd
@ -19,18 +19,10 @@ Patch5: ebtables-2.0.0-audit.patch
Patch6: 0001-add-RARP-and-update-iana-url.patch
# Move lockfile to /run/ebtables.lock
Patch7: ebtables-2.0.10-lockdirfix.patch
Patch8: ebtables-2.0.10-noflush.patch
BuildRequires: gcc
BuildRequires: systemd
BuildRequires: systemd-units
Requires(post): systemd
Requires(preun): systemd
Requires(postun): systemd
%if 0%{?fedora} > 24
Conflicts: setup < 2.10.4-1
%endif
Requires(post): %{_sbindir}/update-alternatives
Requires(postun): %{_sbindir}/update-alternatives
%description
Ethernet bridge tables is a firewalling tool to transparently filter network
@ -52,13 +44,12 @@ like iptables. There are no known incompatibility issues.
%patch5 -p1 -b .AUDIT
%patch6 -p1 -b .RARP
%patch7 -p1 -b .lockdirfix
%patch8 -p1 -b .noflush
# Convert to UTF-8
f=THANKS; iconv -f iso-8859-1 -t utf-8 $f -o $f.utf8 ; mv $f.utf8 $f
%build
make %{?_smp_mflags} CFLAGS="${RPM_OPT_FLAGS}" LIBDIR="/%{_lib}/ebtables" BINDIR="%{_sbindir}" MANDIR="%{_mandir}" LDFLAGS="${RPM_LD_FLAGS} -Wl,-z,now"
make %{?_smp_mflags} CFLAGS="${RPM_OPT_FLAGS}" LIBDIR="/%{_lib}/ebtables" BINDIR="/sbin" MANDIR="%{_mandir}" LDFLAGS="${RPM_LD_FLAGS} -Wl,-z,now"
%install
mkdir -p %{buildroot}%{_initrddir}
@ -68,7 +59,7 @@ chmod -x %{buildroot}%{_unitdir}/*.service
mkdir -p %{buildroot}%{_libexecdir}
install -m0755 %{SOURCE2} %{buildroot}%{_libexecdir}/ebtables
mkdir -p %{buildroot}%{_sysconfdir}/sysconfig
make DESTDIR="%{buildroot}" LIBDIR="/%{_lib}/ebtables" BINDIR="%{_sbindir}" MANDIR="%{_mandir}" install
make DESTDIR="%{buildroot}" LIBDIR="/%{_lib}/ebtables" BINDIR="/sbin" MANDIR="%{_mandir}" install
touch %{buildroot}%{_sysconfdir}/sysconfig/ebtables.filter
touch %{buildroot}%{_sysconfdir}/sysconfig/ebtables.nat
touch %{buildroot}%{_sysconfdir}/sysconfig/ebtables.broute
@ -77,90 +68,39 @@ touch %{buildroot}%{_sysconfdir}/sysconfig/ebtables.broute
rm -rf %{buildroot}%{_initrddir}
# install ebtables-save bash script
rm -f %{buildroot}%{_sbindir}/ebtables-save
install %{SOURCE1} %{buildroot}%{_sbindir}/ebtables-save
rm -f %{buildroot}/sbin/ebtables-save
install %{SOURCE1} %{buildroot}/sbin/ebtables-save
# move libebtc.so into the ldpath
mv %{buildroot}/%{_lib}/ebtables/libebtc.so %{buildroot}/%{_lib}/
# Remove /etc/ethertypes (now part of setup)
rm -f %{buildroot}%{_sysconfdir}/ethertypes
# Prepare for Alternatives system
mv %{buildroot}%{_sbindir}/ebtables %{buildroot}%{_sbindir}/ebtables-legacy
touch %{buildroot}%{_sbindir}/ebtables
%post
%systemd_post ebtables.service
%?ldconfig
if [ "$(readlink -e %{_sbindir}/ebtables)" == %{_sbindir}/ebtables ]; then
rm -f %{_sbindir}/ebtables
fi
%{_sbindir}/update-alternatives --install \
%{_sbindir}/ebtables ebtables %{_sbindir}/ebtables-legacy 10
/sbin/ldconfig
%preun
%systemd_preun ebtables.service
%postun
%systemd_postun_with_restart ebtables.service
%?ldconfig
if [ $1 -eq 0 ]; then
%{_sbindir}/update-alternatives --remove ebtables %{_sbindir}/ebtables-legacy
fi
/sbin/ldconfig
%files
%license COPYING
%doc ChangeLog THANKS
%defattr(-, root, root, 0755)
%doc ChangeLog COPYING THANKS
%doc %{_mandir}/man8/ebtables.8*
%if 0%{?fedora} <= 24
%{_sysconfdir}/ethertypes
%endif
%config(noreplace) %{_sysconfdir}/ethertypes
%config(noreplace) %{_sysconfdir}/sysconfig/ebtables-config
%{_unitdir}/ebtables.service
%{_libexecdir}/ebtables
/%{_lib}/libebtc.so
/%{_lib}/ebtables/
%{_sbindir}/ebtables-*
%ghost %{_sbindir}/ebtables
/sbin/ebtables*
%ghost %{_sysconfdir}/sysconfig/ebtables.filter
%ghost %{_sysconfdir}/sysconfig/ebtables.nat
%ghost %{_sysconfdir}/sysconfig/ebtables.broute
%changelog
* Sun Jul 22 2018 Peter Robinson <pbrobinson@fedoraproject.org> 2.0.10-28
- Add gcc dep, spec cleanups
* Thu Jul 12 2018 Fedora Release Engineering <releng@fedoraproject.org> - 2.0.10-27
- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
* Tue Jul 10 2018 Phil Sutter <psutter@redhat.com> - 2.0.10-26
- Replace calls to ldconfig with newly introduced macro.
- Install binaries in /usr/sbin instead of /sbin.
- Make use of Alternatives system.
* Wed Feb 07 2018 Fedora Release Engineering <releng@fedoraproject.org> - 2.0.10-25
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
* Wed Aug 02 2017 Fedora Release Engineering <releng@fedoraproject.org> - 2.0.10-24
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild
* Wed Jul 26 2017 Fedora Release Engineering <releng@fedoraproject.org> - 2.0.10-23
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
* Fri Feb 10 2017 Fedora Release Engineering <releng@fedoraproject.org> - 2.0.10-22
- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild
* Fri Jul 22 2016 Thomas Woerner <twoerner@redhat.com> - 2.0.10-21
- /etc/ethertypes has been moved into the setup package for F-25+.
(RHBZ#1329256)
* Mon May 9 2016 Thomas Woerner <twoerner@redhat.com> - 2.0.10-20
- add upstream --noflush option patch for ebtables-restore
* Wed Feb 03 2016 Fedora Release Engineering <releng@fedoraproject.org> - 2.0.10-19
- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild
* Mon Jan 18 2016 Tom Callaway <spot@fedoraproject.org> - 2.0.10-18
- Move lock file to /run/ebtables.lock (bz 1290327)