Blob Blame History Raw
Name:           lldpad
Version:        0.9.41
Release:        2%{?dist}
Summary:        Intel LLDP Agent

Group:          System Environment/Daemons
License:        GPLv2
URL:            http://open-lldp.org/
# git://open-lldp.org/lldp-open-lldp.git
Source0:        %{name}-%{version}.tar.bz2
# Generic Fedora patches
Patch0:         lldpad-0.9.41-init.patch
Patch1:         lldpad-0.9.41-make.patch
Patch2:         lldpad-0.9.41-lldptool-invalid-pointer.patch
# Upstream bugfixes
Patch101:       lldpad-0.9.41-new-rework-of-VDP-code-towards-newer-drafts.patch
Patch102:       lldpad-0.9.41-bugfix-set-configured-capabilities-as-well.patch
Patch103:       lldpad-0.9.41-bugfix-state-ECP_TX_IDLE-no-longer-exists.patch
Patch104:       lldpad-0.9.41-cleanup-change-request-from-mode-to-boolean.patch
Patch105:       lldpad-0.9.41-new-change-the-ECP-ack-timer-from-RTE-based-to-fixed.patch
Patch106:       lldpad-0.9.41-new-change-VDP-ACK-timer-value.patch
Patch107:       lldpad-0.9.41-new-call-VDP-station-state-machine-on-demand.patch
Patch108:       lldpad-0.9.41-robustness-proper-handling-of-LINK_DOWN-UP.patch
Patch109:       lldpad-0.9.41-Fix-README-mailing-list-address.patch
Patch110:       lldpad-0.9.41-event-if-always-reject-request-if-link-is-down.patch
Patch111:       lldpad-0.9.41-no-error-if-the-profile-already-exists.patch
Patch112:       lldpad-0.9.41-fix-potential-crash-after-link-up.patch
Patch113:       lldpad-0.9.41-cleanup-only-print-profiles-that-are-removed.patch
Patch114:       lldpad-0.9.41-handle-negative-response-in-VDP-state-machine.patch
Patch115:       lldpad-0.9.41-be-sure-to-stop-timers-on-VSI_EXIT.patch
Patch116:       lldpad-0.9.41-rework-ecp-timer-code-towards-newer-drafts.patch
Patch117:       lldpad-0.9.41-check-if-port-is-enabled-for-RxTx.patch
Patch118:       lldpad-0.9.41-generic-renamed-find_module_user_data_by_if.patch
Patch119:       lldpad-0.9.41-fix-memory-leak-in-vdp_indicate.patch
Patch120:       lldpad-0.9.41-always-flag-changed-profile-in-vdp_add_profile.patch
Patch121:       lldpad-0.9.41-consolidate-ecp_somethingChangedlocal.patch
Patch122:       lldpad-0.9.41-prevent-forgotten-ECP-frame-for-vsi-type.patch
Patch123:       lldpad-0.9.41-lldpad-malloc-could-fail-in-clif_attach_helper.patch
Patch124:       lldpad-0.9.41-lldpad-remove-unused-cmd_buf-variable-in-clif_reques.patch
Patch125:       lldpad-0.9.41-add-pointer-about-EVB-and-VDP-to-manpage.patch
Patch126:       lldpad-0.9.41-add-configuration-info-for-EVB-and-VDP-to-manpage.patch
Patch127:       lldpad-0.9.41-bugfix-in-bridge-implementation.patch
Patch128:       lldpad-0.9.41-add-a-vdp_vsi-to-count-nr-of-VSIs.patch
Patch129:       lldpad-0.9.41-rework-EVB-TLV-code.patch
Patch130:       lldpad-0.9.41-bugfix-avoid-failed-query-of-vdp-role.patch
Patch131:       lldpad-0.9.41-allow-VSI-sm-state-change-from-ASSOC-to-PREASSOC_P.patch
Patch132:       lldpad-0.9.41-avoid-duplicate-deassociation.patch
Patch133:       lldpad-0.9.41-allow-caching-of-deassociate-requests-via-netlink.patch
Patch134:       lldpad-0.9.41-lldpad-DCBx-remove-unused-bchange-value.patch
Patch135:       lldpad-0.9.41-lldpad-dcbx-netlink-cleanup.patch
Patch136:       lldpad-0.9.41-lldpad-rtnl_recv_operstate-uses-incorrect-recv-lengt.patch
Patch137:       lldpad-0.9.41-lldpad-remove-cur_peer-and-last_peer-from-DCBx.patch
Patch138:       lldpad-0.9.41-lldpad-FCoE-app-data-never-sent-to-kernel.patch
Patch139:       lldpad-0.9.41-lldpad-iSCSI-subtype-does-not-send-kernel-setapp-nlm.patch
Patch140:       lldpad-0.9.41-lldpad-remove-print-statements-that-are-not-helpful.patch
Patch141:       lldpad-0.9.41-lldpad-DCBx-should-not-free-TLV-type-0.patch
Patch142:       lldpad-0.9.41-lldpad-add-802.1Qaz-attributes-to-dcbnl.h.patch
Patch143:       lldpad-0.9.41-lldpad-add-802.1Qaz-nlmsg-set-query-support.patch
Patch144:       lldpad-0.9.41-lldpad-get-functions-for-Local-and-Remote-MAC-addres.patch
Patch145:       lldpad-0.9.41-lldpad-invalidate-peer-rx-frame-after-TTL.patch
Patch146:       lldpad-0.9.41-lldpad-cleanup-fix-check-in-gettlv-for-null-ptr-tlvs.patch
Patch147:       lldpad-0.9.41-lldpad-initialize-ports-after-netlink-interface-is-c.patch
Patch148:       lldpad-0.9.41-lldpad-dormantTimer-should-not-be-touched-by-modules.patch
Patch149:       lldpad-0.9.41-lldpad-dcbx-dropped-ifdown-messages-breaks-module.patch
Patch150:       lldpad-0.9.41-lldpad-DCB-remove-iSCSI-tc-qdisc-and-filters.patch
Patch151:       lldpad-0.9.41-lldpad-make-debug-messages-from-netlink-path-helpful.patch

Requires:         kernel >= 2.6.32
BuildRequires:    libconfig-devel >= 1.3.2 kernel-headers >= 2.6.32
BuildRequires:    flex >= 2.5.33
BuildRequires:    automake autoconf libtool
BuildRequires:    libnl-devel libnl
Requires(post):   chkconfig
Requires(preun):  chkconfig initscripts
Requires(postun): initscripts
Provides:         dcbd = %{version}-%{release}
Obsoletes:        dcbd < 0.9.26

%description
This package contains the Linux user space daemon and configuration tool for
Intel LLDP Agent with Enhanced Ethernet support for the Data Center.

%package        devel
Summary:        Development files for %{name}
Group:          Development/Libraries
Requires:       %{name} = %{version}-%{release}
Provides:       dcbd-devel = %{version}-%{release}
Obsoletes:      dcbd-devel < 0.9.26

%description    devel
The %{name}-devel package contains header files for developing applications
that use %{name}.

%prep
%setup -q -c -n %{name}-%{version}
# Upstream first
%patch101 -p1
%patch102 -p1
%patch103 -p1
%patch104 -p1
%patch105 -p1
%patch106 -p1
%patch107 -p1
%patch108 -p1
%patch109 -p1
%patch110 -p1
%patch111 -p1
%patch112 -p1
%patch113 -p1
%patch114 -p1
%patch115 -p1
%patch116 -p1
%patch117 -p1
%patch118 -p1
%patch119 -p1
%patch120 -p1
%patch121 -p1
%patch122 -p1
%patch123 -p1
%patch124 -p1
%patch125 -p1
%patch126 -p1
%patch127 -p1
%patch128 -p1
%patch129 -p1
%patch130 -p1
%patch131 -p1
%patch132 -p1
%patch133 -p1
%patch134 -p1
%patch135 -p1
%patch136 -p1
%patch137 -p1
%patch138 -p1
%patch139 -p1
%patch140 -p1
%patch141 -p1
%patch142 -p1
%patch143 -p1
%patch144 -p1
%patch145 -p1
%patch146 -p1
%patch147 -p1
%patch148 -p1
%patch149 -p1
%patch150 -p1
%patch151 -p1
# Fedora patches on top of that...
%patch0 -p1 -b .make
%patch1 -p1 -b .init
%patch2 -p1 -b .invalid-pointer

%build
./bootstrap.sh
%configure
make %{?_smp_mflags}

%install
make install DESTDIR=%{buildroot}
mkdir -p %{buildroot}%{_initddir}
mv %{buildroot}/etc/init.d/%{name} %{buildroot}%{_initddir}
rm -rf %{buildroot}/etc/init.d
rm -f %{buildroot}%{_mandir}/man8/dcbd.8

%post
/sbin/chkconfig --add %{name}

%preun
if [ $1 = 0 ]; then
        /sbin/service %{name} stop > /dev/null 2>&1
        /sbin/chkconfig --del %{name}
fi

%postun
if [ "$1" -ge "1" ]; then
        /sbin/service %{name} condrestart > /dev/null  2>&1 || :
fi

%post devel
## provide legacy support for apps that use the old dcbd interface.
if [ ! -e %{_includedir}/dcbd ]; then
    ln -T -s %{_includedir}/lldpad %{_includedir}/dcbd
fi
if [ ! -e %{_includedir}/dcbd/clif_cmds.h ]; then
    ln -T -s %{_includedir}/lldpad/lldp_dcbx_cmds.h %{_includedir}/dcbd/clif_cmds.h
fi

%preun devel
if [ -e %{_includedir}/dcbd/clif_cmds.h ]; then
    rm -f %{_includedir}/dcbd/clif_cmds.h
fi
if [ -e %{_includedir}/dcbd ]; then
    rm -f %{_includedir}/dcbd
fi


%files
%defattr(-,root,root,-)
%doc COPYING README ChangeLog
%{_sbindir}/*
%dir %{_sharedstatedir}/%{name}
%{_initddir}/%{name}
%{_mandir}/man8/*

%files devel
%defattr(-,root,root,-)
%doc COPYING
%doc README
%{_includedir}/*
%{_libdir}/pkgconfig/*.pc


%changelog
* Thu Apr 21 2011 Petr Sabata <psabata@redhat.com> - 0.9.41-2
- Bring in upstream 802.1Qbg bugfixes

* Thu Feb 10 2011 Petr Sabata <psabata@redhat.com> - 0.9.41-1
- 0.9.41 bump
- New BR: autotools, flex
- Buildroot garbage removed
- Devel post and preun scriptlets sanitized

* Tue Feb 08 2011 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.9.38-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild

* Mon Jun 28 2010 Jan Zeleny <jzeleny@redhat.com> - 0.9.38-1
- rebased to 0.9.38 (various enhancements and bugfixes, see 
  lldpad-0.9.38-relnotes.txt on http://e1000.sf.net for complete list)

* Mon May 10 2010 Jan Zeleny <jzeleny@redhat.com> - 0.9.32-2
- rebuild to match new libconfig

* Mon Apr 12 2010 Jan Zeleny <jzeleny@redhat.com> - 0.9.32-1
- rebased to 0.9.32 (various enhancements and bugfixes, see 
  lldpad-0.9.32-relnotes.txt on http://e1000.sf.net for complete list)

* Thu Mar 25 2010 Jan Zeleny <jzeleny@redhat.com> - 0.9.29-2
- added Provides and Obsoletes tags to devel subpackage

* Mon Mar 15 2010 Jan Zeleny <jzeleny@redhat.com> - 0.9.29-1
- updated package to 0.9.29, improved compatibility with fcoe-utils

* Fri Feb 26 2010 Jan Zeleny <jzeleny@redhat.com> - 0.9.26-2
- updated spec file and LSB init script patch for re-review
  (#568641)

* Thu Feb 25 2010 Jan Zeleny <jzeleny@redhat.com> - 0.9.26-1
- rebased to 0.9.26
- package renamed to lldpad
- enahanced functionality (LLDP supported as well as DCBX)

* Fri Nov 13 2009 Jan Zeleny <jzeleny@redhat.com> - 0.9.19-2
- init script patch adding LSB compliance

* Thu Oct 08 2009 Jan Zeleny <jzeleny@redhat.com> - 0.9.19-1
- update to new upstream version

* Mon Oct 05 2009 Jan Zeleny <jzeleny@redhat.com> - 0.9.15-5
- replaced the last patch, which was not fully functional, with
  the new one

* Wed Sep 09 2009 Karsten Hopp <karsten@redhat.com> 0.9.15-4
- buildrequire libconfig-devel >= 1.3.2, it doesn't build with 1.3.1 due to
  the different config_lookup_string api

* Thu Aug 20 2009 Jan Zeleny <jzeleny@redhat.com> - 0.9.15-3
- update of config_lookup_string() function calls

* Thu Aug 20 2009 Jan Zeleny <jzeleny@redhat.com> - 0.9.15-2
- rebuild in order to match new libconfig

* Mon Aug 17 2009 Jan Zeleny <jzeleny@redhat.com> - 0.9.15-1
- rebase to 0.9.15

* Fri Jul 24 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.9.7-5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild

* Fri Mar 20 2009 Jan Zeleny <jzeleny@redhat.com> - 0.9.7-4
- updated scriptlets in spec file to follow the rules

* Wed Mar 11 2009 Jan Zeleny <jzeleny@redhat.com> - 0.9.7-3
- added devel files again to support fcoe-utils package
- added kernel >= 2.6.29 to Requires, deleted dcbnl.h, since it is
  aviable in kernel 2.6.29-rc7
- changed config dir from /etc/sysconfig/dcbd to /etc/dcbd
- updated init script: added mandatory Short description tag,
  deleted default runlevels, which should start the script

* Tue Mar 10 2009 Jan Zeleny <jzeleny@redhat.com> - 0.9.7-2
- added patch to enable usage of libconfig shared in system
- removed devel part of package

* Mon Mar 2 2009 Chris Leech <christopher.leech@intel.com> - 0.9.7-1
- Updated to 0.9.7
- Added a private copy of dcbnl.h until kernel-headers includes it.
  Export patch is making it's way to the upstream kernel via net-2.6,
  expected in 2.6.29-rc7

* Thu Feb 26 2009 Chris Leech <christopher.leech@intel.com> - 0.9.5-1
- initial RPM packaging