rpms/netlabel_tools/F-7 netlabel_tools-0.17-newlibnl.patch, NONE, 1.1 netlabel_tools.spec, 1.6, 1.7

Daniel Williams (dcbw) fedora-extras-commits at redhat.com
Fri Mar 7 00:25:17 UTC 2008


Author: dcbw

Update of /cvs/pkgs/rpms/netlabel_tools/F-7
In directory cvs-int.fedora.redhat.com:/tmp/cvs-serv26900

Modified Files:
	netlabel_tools.spec 
Added Files:
	netlabel_tools-0.17-newlibnl.patch 
Log Message:
* Thu Mar  6 2008 Dan Williams <dcbw at redhat.com> - 0.17-6
- bz#431766 added patch to build with new libnl



netlabel_tools-0.17-newlibnl.patch:

--- NEW FILE netlabel_tools-0.17-newlibnl.patch ---
diff -up netlabel_tools-0.17/libnetlabel/netlabel_internal.h.libnl netlabel_tools-0.17/libnetlabel/netlabel_internal.h
--- netlabel_tools-0.17/libnetlabel/netlabel_internal.h.libnl	2006-09-28 17:18:05.000000000 -0500
+++ netlabel_tools-0.17/libnetlabel/netlabel_internal.h	2008-02-11 09:24:06.000000000 -0600
@@ -8,19 +8,17 @@
 /*
  * (c) Copyright Hewlett-Packard Development Company, L.P., 2006
  *
- * This program is free software;  you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of version 2 of the GNU General Public License as
+ * published by the Free Software Foundation.
  *
  * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY;  without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See
- * the GNU General Public License for more details.
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
  *
  * You should have received a copy of the GNU General Public License
- * along with this program;  if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>.
  *
  */
 
@@ -37,11 +35,13 @@ struct nlbl_handle_s {
 /* Specify which version of libnl we are using */
 /*  1.0-pre5 => 1005 */
 /*  1.0-pre6 => 1006 */
-#define LIBNL_VERSION           1005
+/*  1.0-pre8 => 1008 */
+/*  1.1      => 1100 */
+#define LIBNL_VERSION           1100
 
 /* XXX - this whole block will most likely go away once libnl supports Generic
  * Netlink */
-#if 1 /* Generic Netlink types */
+#if LIBNL_VERSION <= 1006 /* Generic Netlink types */
 
 /* Generic Netlink message header */
 struct genlmsghdr {
diff -up netlabel_tools-0.17/libnetlabel/netlabel_msg.c.libnl netlabel_tools-0.17/libnetlabel/netlabel_msg.c
--- netlabel_tools-0.17/libnetlabel/netlabel_msg.c.libnl	2006-09-28 17:18:05.000000000 -0500
+++ netlabel_tools-0.17/libnetlabel/netlabel_msg.c	2008-02-11 09:22:13.000000000 -0600
@@ -8,19 +8,17 @@
 /*
  * (c) Copyright Hewlett-Packard Development Company, L.P., 2006
  *
- * This program is free software;  you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of version 2 of the GNU General Public License as
+ * published by the Free Software Foundation.
  *
  * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY;  without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See
- * the GNU General Public License for more details.
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
  *
  * You should have received a copy of the GNU General Public License
- * along with this program;  if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>.
  *
  */
 
@@ -52,7 +50,11 @@ nlbl_msg *nlbl_msg_new(void)
   struct genlmsghdr genl_hdr;
 
   /* create the message with a simple netlink header */
+#if LIBNL_VERSION >= 1008
+  msg = nlmsg_alloc();
+#else
   msg = nlmsg_build_no_hdr();
+#endif
   if (msg == NULL)
     goto msg_new_failure;
 
diff -up netlabel_tools-0.17/libnetlabel/netlabel_comm.c.libnl netlabel_tools-0.17/libnetlabel/netlabel_comm.c
--- netlabel_tools-0.17/libnetlabel/netlabel_comm.c.libnl	2006-09-28 17:18:05.000000000 -0500
+++ netlabel_tools-0.17/libnetlabel/netlabel_comm.c	2008-02-11 09:24:06.000000000 -0600
@@ -8,28 +8,33 @@
 /*
  * (c) Copyright Hewlett-Packard Development Company, L.P., 2006
  *
- * This program is free software;  you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of version 2 of the GNU General Public License as
+ * published by the Free Software Foundation.
  *
  * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY;  without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See
- * the GNU General Public License for more details.
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
  *
  * You should have received a copy of the GNU General Public License
- * along with this program;  if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>.
  *
  */
 
 #include <stdlib.h>
 #include <errno.h>
 #include <unistd.h>
+#include <linux/types.h>
 #include <sys/types.h>
+
+#ifndef __USE_GNU
+#define __USE_GNU
 #include <sys/socket.h>
-#include <linux/types.h>
+#undef __USE_GNU
+#else
+#include <sys/socket.h>
+#endif
 
 #include <libnetlabel.h>
 
@@ -100,7 +105,10 @@ nlbl_handle *nlbl_comm_open(void)
     goto open_failure;
 
   /* set the netlink handle properties */
-#if LIBNL_VERSION >= 1006
+#if LIBNL_VERSION >= 1008
+  nl_socket_set_peer_port(hndl->nl_hndl, 0);
+  nl_set_passcred(hndl->nl_hndl, 1);
+#elif LIBNL_VERSION == 1006
   nl_handle_set_peer_pid(hndl->nl_hndl, 0);
   nl_set_passcred(hndl->nl_hndl, 1);
 #endif
@@ -177,7 +185,11 @@ int nlbl_comm_recv_raw(nlbl_handle *hndl
    * is waiting to be read from the handle */
   timeout.tv_sec = nlcomm_read_timeout;
   timeout.tv_usec = 0;
+#if LIBNL_VERSION >= 1008
+  nl_fd = nl_socket_get_fd(hndl->nl_hndl);
+#else
   nl_fd = nl_handle_get_fd(hndl->nl_hndl);
+#endif
   FD_ZERO(&read_fds);
   FD_SET(nl_fd, &read_fds);
   ret_val = select(nl_fd + 1, &read_fds, NULL, NULL, &timeout);
@@ -188,14 +200,12 @@ int nlbl_comm_recv_raw(nlbl_handle *hndl
 
   /* perform the read operation */
   *data = NULL;
-#if LIBNL_VERSION == 1005
-  ret_val = nl_recv(hndl->nl_hndl, &peer_nladdr, data);
+#if LIBNL_VERSION >= 1006
+  ret_val = nl_recv(hndl->nl_hndl, &peer_nladdr, data, &creds);
   if (ret_val < 0)
     return ret_val;
-  /* XXX - avoid a compiler warning about unused variables */
-  creds = NULL;
-#elif LIBNL_VERSION >= 1006
-  ret_val = nl_recv(hndl->nl_hndl, &peer_nladdr, data, &creds);
+#else
+  ret_val = nl_recv(hndl->nl_hndl, &peer_nladdr, data);
   if (ret_val < 0)
     return ret_val;
 #endif
@@ -250,7 +260,11 @@ int nlbl_comm_recv(nlbl_handle *hndl, nl
    * is waiting to be read from the handle */
   timeout.tv_sec = nlcomm_read_timeout;
   timeout.tv_usec = 0;
+#if LIBNL_VERSION >= 1008
+  nl_fd = nl_socket_get_fd(hndl->nl_hndl);
+#else
   nl_fd = nl_handle_get_fd(hndl->nl_hndl);
+#endif
   FD_ZERO(&read_fds);
   FD_SET(nl_fd, &read_fds);
   ret_val = select(nl_fd + 1, &read_fds, NULL, NULL, &timeout);
@@ -260,12 +274,16 @@ int nlbl_comm_recv(nlbl_handle *hndl, nl
     return -EAGAIN;
 
   /* perform the read operation */
-#if LIBNL_VERSION == 1005
-  ret_val = nl_recv(hndl->nl_hndl, &peer_nladdr, &data);
+#if LIBNL_VERSION >= 1100
+  ret_val = nl_recv(hndl->nl_hndl, &peer_nladdr, &data, &creds);
   if (ret_val < 0)
     return ret_val;
 #elif LIBNL_VERSION >= 1006
-  ret_val = nl_recv(hndl->nl_hndl, &peer_nladdr, &data, &creds);
+  ret_val = nl_recv(hndl->nl_hndl, &peer_nladdr, data, &creds);
+  if (ret_val < 0)
+    return ret_val;
+#else
+  ret_val = nl_recv(hndl->nl_hndl, &peer_nladdr, data);
   if (ret_val < 0)
     return ret_val;
 #endif
@@ -349,6 +367,6 @@ int nlbl_comm_send(nlbl_handle *hndl, nl
 #if LIBNL_VERSION == 1005
   return nl_send_auto_complete(hndl->nl_hndl, nlbl_msg_nlhdr(msg));
 #elif LIBNL_VERSION >= 1006
-  return = nl_send_auto_complete(hndl->nl_hndl, msg);
+  return nl_send_auto_complete(hndl->nl_hndl, msg);
 #endif
 }


Index: netlabel_tools.spec
===================================================================
RCS file: /cvs/pkgs/rpms/netlabel_tools/F-7/netlabel_tools.spec,v
retrieving revision 1.6
retrieving revision 1.7
diff -u -r1.6 -r1.7
--- netlabel_tools.spec	16 Oct 2006 20:54:59 -0000	1.6
+++ netlabel_tools.spec	7 Mar 2008 00:24:44 -0000	1.7
@@ -4,7 +4,7 @@
 Summary: Tools to manage the Linux NetLabel subsystem
 Name: netlabel_tools
 Version: 0.17
-Release: 5%{?dist}
+Release: 6%{?dist}
 License: GPL
 Group: System Environment/Daemons
 URL: %{home_base_url}
@@ -13,6 +13,7 @@
 Source2: netlabel.rules
 Patch1: netlabel_tools-0.17-new-hdrs.patch
 Patch2: netlabel_tools-27_28.patch
+Patch3: netlabel_tools-0.17-newlibnl.patch
 BuildRoot: %{_tmppath}/%{name}-%{version}
 BuildRequires: kernel-headers >= 2.6.18
 BuildRequires: libnl-devel
@@ -31,6 +32,7 @@
 %patch1 -p1
 # Upstream patch.
 %patch2 -p0
+%patch3 -p1 -b .libnl
 
 %build
 # Don't use _smp_mflags, it's small and a hand crafted Makefile
@@ -57,6 +59,9 @@
 %attr(0644,root,root) %{_mandir}/man8/*
 
 %changelog
+* Thu Mar  6 2008 Dan Williams <dcbw at redhat.com> - 0.17-6
+- bz#431766 added patch to build with new libnl
+
 * Mon Oct 16 2006 James Antill <james at and.org> - 0.17-3
 - Add upstream patch.
 - s/p1/p0/ for upstream patch.




More information about the fedora-extras-commits mailing list