packages: libtirpc/libtirpc.spec, libtirpc/libtirpc-nis.patch (NEW), libtir...
arekm
arekm at pld-linux.org
Sun Jun 12 15:55:32 CEST 2011
Author: arekm Date: Sun Jun 12 13:55:32 2011 GMT
Module: packages Tag: HEAD
---- Log message:
- headers in place where it was in glibc
---- Files affected:
packages/libtirpc:
libtirpc.spec (1.28 -> 1.29) , libtirpc-nis.patch (NONE -> 1.1) (NEW), libtirpc-rpc-des-prot.patch (NONE -> 1.1) (NEW), libtirpc-des-in-libc.patch (1.1 -> NONE) (REMOVED)
---- Diffs:
================================================================
Index: packages/libtirpc/libtirpc.spec
diff -u packages/libtirpc/libtirpc.spec:1.28 packages/libtirpc/libtirpc.spec:1.29
--- packages/libtirpc/libtirpc.spec:1.28 Tue May 3 15:16:43 2011
+++ packages/libtirpc/libtirpc.spec Sun Jun 12 15:55:26 2011
@@ -7,7 +7,7 @@
Summary(pl.UTF-8): Biblioteka RPC niezależnego od transportu
Name: libtirpc
Version: 0.2.2
-Release: 1
+Release: 1.2
Epoch: 1
License: BSD-like
Group: Libraries
@@ -16,7 +16,8 @@
Patch0: %{name}-link.patch
Patch1: %{name}-heimdal.patch
Patch2: %{name}-XDR_GETPOS.patch
-Patch3: %{name}-des-in-libc.patch
+Patch3: %{name}-rpc-des-prot.patch
+Patch4: %{name}-nis.patch
URL: http://sourceforge.net/projects/libtirpc/
BuildRequires: autoconf >= 2.50
BuildRequires: automake
@@ -34,6 +35,10 @@
%endif
BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
+# FIXME: this allows invalid (unresolved symbols) library to be installed.
+# Left until upstream fixes this properly.
+%define no_install_post_check_so 1
+
%description
This package contains SunLib's implementation of transport-independent
RPC (TI-RPC) documentation. This library forms a piece of the base of
@@ -95,6 +100,7 @@
%patch1 -p1
%patch2 -p1
%patch3 -p1
+%patch4 -p1
%build
%{__libtoolize}
@@ -122,6 +128,14 @@
ln -sf /%{_lib}/$(cd $RPM_BUILD_ROOT/%{_lib}; echo lib*.so.*.*) \
$RPM_BUILD_ROOT%{_libdir}/libtirpc.so
+# rpc headers for glibc 2.14+
+install -d $RPM_BUILD_ROOT%{_includedir}/rpc
+ln -s tirpc/netconfig.h $RPM_BUILD_ROOT%{_includedir}/netconfig.h
+for i in $RPM_BUILD_ROOT%{_includedir}/tirpc/rpc/*.h; do
+ i="$(basename $i)"
+ ln -s ../tirpc/rpc/$i $RPM_BUILD_ROOT%{_includedir}/rpc/$i
+done
+
%clean
rm -rf $RPM_BUILD_ROOT
@@ -139,7 +153,8 @@
%files devel
%defattr(644,root,root,755)
%attr(755,root,root) %{_libdir}/libtirpc.so
-%{_libdir}/libtirpc.la
+%{_includedir}/netconfig.h
+%{_includedir}/rpc/*.h
%{_includedir}/tirpc
%{_pkgconfigdir}/libtirpc.pc
%{_mandir}/man3/bindresvport.3t*
@@ -159,6 +174,9 @@
All persons listed below can be reached at <cvs_login>@pld-linux.org
$Log$
+Revision 1.29 2011/06/12 13:55:26 arekm
+- headers in place where it was in glibc
+
Revision 1.28 2011/05/03 13:16:43 qboosh
- updated to 0.2.2
- added des-in-libc patch (revert des_crypt.c inclusion - libc already contains
================================================================
Index: packages/libtirpc/libtirpc-nis.patch
diff -u /dev/null packages/libtirpc/libtirpc-nis.patch:1.1
--- /dev/null Sun Jun 12 15:55:32 2011
+++ packages/libtirpc/libtirpc-nis.patch Sun Jun 12 15:55:26 2011
@@ -0,0 +1,1405 @@
+diff -urN libtirpc-0.2.2.org/Makefile.am libtirpc-0.2.2/Makefile.am
+--- libtirpc-0.2.2.org/Makefile.am 2011-05-02 14:10:40.000000000 +0200
++++ libtirpc-0.2.2/Makefile.am 2011-06-08 10:36:48.142344407 +0200
+@@ -4,6 +4,10 @@
+ nobase_include_HEADERS = tirpc/netconfig.h \
+ tirpc/rpcsvc/crypt.x \
+ tirpc/rpcsvc/crypt.h \
++ tirpc/rpcsvc/nis.h \
++ tirpc/rpcsvc/nis_tags.h \
++ tirpc/rpcsvc/nislib.h \
++ tirpc/rpc/key_prot.h \
+ tirpc/rpc/xdr.h \
+ tirpc/rpc/types.h \
+ tirpc/rpc/svc_soc.h \
+diff -urN libtirpc-0.2.2.org/tirpc/rpcsvc/nis.h libtirpc-0.2.2/tirpc/rpcsvc/nis.h
+--- libtirpc-0.2.2.org/tirpc/rpcsvc/nis.h 1970-01-01 01:00:00.000000000 +0100
++++ libtirpc-0.2.2/tirpc/rpcsvc/nis.h 2011-06-08 10:36:10.210407017 +0200
+@@ -0,0 +1,616 @@
++/*
++ * Copyright (c) 2010, Oracle America, Inc.
++ *
++ * Redistribution and use in source and binary forms, with or without
++ * modification, are permitted provided that the following conditions are
++ * met:
++ *
++ * * Redistributions of source code must retain the above copyright
++ * notice, this list of conditions and the following disclaimer.
++ * * 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.
++ * * Neither the name of the "Oracle America, Inc." 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 COPYRIGHT HOLDERS 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
++ * COPYRIGHT HOLDER 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.
++ */
++
++#ifndef _RPCSVC_NIS_H
++#define _RPCSVC_NIS_H 1
++
++#include <features.h>
++#include <rpc/rpc.h>
++#include <rpcsvc/nis_tags.h>
++
++__BEGIN_DECLS
++
++/*
++ * nis.h
++ *
++ * This file is the main include file for NIS clients. It contains
++ * both the client library function defines and the various data
++ * structures used by the NIS service. It includes the file nis_tags.h
++ * which defines the tag values. This allows the tags to change without
++ * having to change the nis.x file.
++ *
++ * NOTE : THIS FILE IS NOT GENERATED WITH RPCGEN ! SO YOU HAVE TO
++ * ADD ALL THE CHANGES ON nis_*.x FILES HERE AGAIN !
++ *
++ * I have removed all the Solaris internal structs and variables,
++ * because they are not supported, Sun changed them between various
++ * releases and they shouldn't be used in user programs.
++ * <kukuk at suse.de>
++ */
++
++
++#ifndef __nis_object_h
++#define __nis_object_h
++
++#define NIS_MAXSTRINGLEN 255
++#define NIS_MAXNAMELEN 1024
++#define NIS_MAXATTRNAME 32
++#define NIS_MAXATTRVAL 2048
++#define NIS_MAXCOLUMNS 64
++#define NIS_MAXATTR 16
++#define NIS_MAXPATH 1024
++#define NIS_MAXREPLICAS 128
++#define NIS_MAXLINKS 16
++#define NIS_PK_NONE 0
++#define NIS_PK_DH 1
++#define NIS_PK_RSA 2
++#define NIS_PK_KERB 3
++#define NIS_PK_DHEXT 4
++
++struct nis_attr {
++ char *zattr_ndx;
++ struct {
++ u_int zattr_val_len;
++ char *zattr_val_val;
++ } zattr_val;
++};
++typedef struct nis_attr nis_attr;
++
++typedef char *nis_name;
++
++enum zotypes {
++ BOGUS_OBJ = 0,
++ NO_OBJ = 1,
++ DIRECTORY_OBJ = 2,
++ GROUP_OBJ = 3,
++ TABLE_OBJ = 4,
++ ENTRY_OBJ = 5,
++ LINK_OBJ = 6,
++ PRIVATE_OBJ = 7,
++ NIS_BOGUS_OBJ = 0,
++ NIS_NO_OBJ = 1,
++ NIS_DIRECTORY_OBJ = 2,
++ NIS_GROUP_OBJ = 3,
++ NIS_TABLE_OBJ = 4,
++ NIS_ENTRY_OBJ = 5,
++ NIS_LINK_OBJ = 6,
++ NIS_PRIVATE_OBJ = 7
++};
++typedef enum zotypes zotypes;
++
++enum nstype {
++ UNKNOWN = 0,
++ NIS = 1,
++ SUNYP = 2,
++ IVY = 3,
++ DNS = 4,
++ X500 = 5,
++ DNANS = 6,
++ XCHS = 7,
++ CDS = 8,
++};
++typedef enum nstype nstype;
++
++struct oar_mask {
++ uint32_t oa_rights;
++ zotypes oa_otype;
++};
++typedef struct oar_mask oar_mask;
++
++struct endpoint {
++ char *uaddr;
++ char *family;
++ char *proto;
++};
++typedef struct endpoint endpoint;
++
++struct nis_server {
++ nis_name name;
++ struct {
++ u_int ep_len;
++ endpoint *ep_val;
++ } ep;
++ uint32_t key_type;
++ netobj pkey;
++};
++typedef struct nis_server nis_server;
++
++struct directory_obj {
++ nis_name do_name;
++ nstype do_type;
++ struct {
++ u_int do_servers_len;
++ nis_server *do_servers_val;
++ } do_servers;
++ uint32_t do_ttl;
++ struct {
++ u_int do_armask_len;
++ oar_mask *do_armask_val;
++ } do_armask;
++};
++typedef struct directory_obj directory_obj;
++
++#define EN_BINARY 1
++#define EN_CRYPT 2
++#define EN_XDR 4
++#define EN_MODIFIED 8
++#define EN_ASN1 64
++
++struct entry_col {
++ uint32_t ec_flags;
++ struct {
++ u_int ec_value_len;
++ char *ec_value_val;
++ } ec_value;
++};
++typedef struct entry_col entry_col;
++
++struct entry_obj {
++ char *en_type;
++ struct {
++ u_int en_cols_len;
++ entry_col *en_cols_val;
++ } en_cols;
++};
++typedef struct entry_obj entry_obj;
++
++struct group_obj {
++ uint32_t gr_flags;
++ struct {
++ u_int gr_members_len;
++ nis_name *gr_members_val;
++ } gr_members;
++};
++typedef struct group_obj group_obj;
++
++struct link_obj {
++ zotypes li_rtype;
++ struct {
++ u_int li_attrs_len;
++ nis_attr *li_attrs_val;
++ } li_attrs;
++ nis_name li_name;
++};
++typedef struct link_obj link_obj;
++
++#define TA_BINARY 1
++#define TA_CRYPT 2
++#define TA_XDR 4
++#define TA_SEARCHABLE 8
++#define TA_CASE 16
++#define TA_MODIFIED 32
++#define TA_ASN1 64
++
++struct table_col {
++ char *tc_name;
++ uint32_t tc_flags;
++ uint32_t tc_rights;
++};
++typedef struct table_col table_col;
++
++struct table_obj {
++ char *ta_type;
++ int ta_maxcol;
++ u_char ta_sep;
++ struct {
++ u_int ta_cols_len;
++ table_col *ta_cols_val;
++ } ta_cols;
++ char *ta_path;
++};
++typedef struct table_obj table_obj;
++
++struct objdata {
++ zotypes zo_type;
++ union {
++ struct directory_obj di_data;
++ struct group_obj gr_data;
++ struct table_obj ta_data;
++ struct entry_obj en_data;
++ struct link_obj li_data;
++ struct {
++ u_int po_data_len;
++ char *po_data_val;
++ } po_data;
++ } objdata_u;
++};
++typedef struct objdata objdata;
++
++struct nis_oid {
++ uint32_t ctime;
++ uint32_t mtime;
++};
++typedef struct nis_oid nis_oid;
++
++struct nis_object {
++ nis_oid zo_oid;
++ nis_name zo_name;
++ nis_name zo_owner;
++ nis_name zo_group;
++ nis_name zo_domain;
++ uint32_t zo_access;
++ uint32_t zo_ttl;
++ objdata zo_data;
++};
++typedef struct nis_object nis_object;
++
++#endif /* if __nis_object_h */
++
++enum nis_error {
++ NIS_SUCCESS = 0,
++ NIS_S_SUCCESS = 1,
++ NIS_NOTFOUND = 2,
++ NIS_S_NOTFOUND = 3,
++ NIS_CACHEEXPIRED = 4,
++ NIS_NAMEUNREACHABLE = 5,
++ NIS_UNKNOWNOBJ = 6,
++ NIS_TRYAGAIN = 7,
++ NIS_SYSTEMERROR = 8,
++ NIS_CHAINBROKEN = 9,
++ NIS_PERMISSION = 10,
++ NIS_NOTOWNER = 11,
++ NIS_NOT_ME = 12,
++ NIS_NOMEMORY = 13,
++ NIS_NAMEEXISTS = 14,
++ NIS_NOTMASTER = 15,
++ NIS_INVALIDOBJ = 16,
++ NIS_BADNAME = 17,
++ NIS_NOCALLBACK = 18,
++ NIS_CBRESULTS = 19,
++ NIS_NOSUCHNAME = 20,
++ NIS_NOTUNIQUE = 21,
++ NIS_IBMODERROR = 22,
++ NIS_NOSUCHTABLE = 23,
++ NIS_TYPEMISMATCH = 24,
++ NIS_LINKNAMEERROR = 25,
++ NIS_PARTIAL = 26,
++ NIS_TOOMANYATTRS = 27,
++ NIS_RPCERROR = 28,
++ NIS_BADATTRIBUTE = 29,
++ NIS_NOTSEARCHABLE = 30,
++ NIS_CBERROR = 31,
++ NIS_FOREIGNNS = 32,
++ NIS_BADOBJECT = 33,
++ NIS_NOTSAMEOBJ = 34,
++ NIS_MODFAIL = 35,
++ NIS_BADREQUEST = 36,
++ NIS_NOTEMPTY = 37,
++ NIS_COLDSTART_ERR = 38,
++ NIS_RESYNC = 39,
++ NIS_FAIL = 40,
++ NIS_UNAVAIL = 41,
++ NIS_RES2BIG = 42,
++ NIS_SRVAUTH = 43,
++ NIS_CLNTAUTH = 44,
++ NIS_NOFILESPACE = 45,
++ NIS_NOPROC = 46,
++ NIS_DUMPLATER = 47,
++};
++typedef enum nis_error nis_error;
++
++struct nis_result {
++ nis_error status;
++ struct {
++ u_int objects_len;
++ nis_object *objects_val;
++ } objects;
++ netobj cookie;
++ uint32_t zticks;
++ uint32_t dticks;
++ uint32_t aticks;
++ uint32_t cticks;
++};
++typedef struct nis_result nis_result;
++
++struct ns_request {
++ nis_name ns_name;
++ struct {
++ u_int ns_object_len;
++ nis_object *ns_object_val;
++ } ns_object;
++};
++typedef struct ns_request ns_request;
++
++struct ib_request {
++ nis_name ibr_name;
++ struct {
++ u_int ibr_srch_len;
++ nis_attr *ibr_srch_val;
++ } ibr_srch;
++ uint32_t ibr_flags;
++ struct {
++ u_int ibr_obj_len;
++ nis_object *ibr_obj_val;
++ } ibr_obj;
++ struct {
++ u_int ibr_cbhost_len;
++ nis_server *ibr_cbhost_val;
++ } ibr_cbhost;
++ u_int ibr_bufsize;
++ netobj ibr_cookie;
++};
++typedef struct ib_request ib_request;
++
++struct ping_args {
++ nis_name dir;
++ uint32_t stamp;
++};
++typedef struct ping_args ping_args;
++
++enum log_entry_t {
++ LOG_NOP = 0,
++ ADD_NAME = 1,
++ REM_NAME = 2,
++ MOD_NAME_OLD = 3,
++ MOD_NAME_NEW = 4,
++ ADD_IBASE = 5,
++ REM_IBASE = 6,
++ MOD_IBASE = 7,
++ UPD_STAMP = 8,
++};
++typedef enum log_entry_t log_entry_t;
++
++struct log_entry {
++ uint32_t le_time;
++ log_entry_t le_type;
++ nis_name le_princp;
++ nis_name le_name;
++ struct {
++ u_int le_attrs_len;
++ nis_attr *le_attrs_val;
++ } le_attrs;
++ nis_object le_object;
++};
++typedef struct log_entry log_entry;
++
++struct log_result {
++ nis_error lr_status;
++ netobj lr_cookie;
++ struct {
++ u_int lr_entries_len;
++ log_entry *lr_entries_val;
++ } lr_entries;
++};
++typedef struct log_result log_result;
++
++struct cp_result {
++ nis_error cp_status;
++ uint32_t cp_zticks;
++ uint32_t cp_dticks;
++};
++typedef struct cp_result cp_result;
++
++struct nis_tag {
++ uint32_t tag_type;
++ char *tag_val;
++};
++typedef struct nis_tag nis_tag;
++
++struct nis_taglist {
++ struct {
++ u_int tags_len;
++ nis_tag *tags_val;
++ } tags;
++};
++typedef struct nis_taglist nis_taglist;
++
++struct dump_args {
++ nis_name da_dir;
++ uint32_t da_time;
++ struct {
++ u_int da_cbhost_len;
++ nis_server *da_cbhost_val;
++ } da_cbhost;
++};
++typedef struct dump_args dump_args;
++
++struct fd_args {
++ nis_name dir_name;
++ nis_name requester;
++};
++typedef struct fd_args fd_args;
++
++struct fd_result {
++ nis_error status;
++ nis_name source;
++ struct {
++ u_int dir_data_len;
++ char *dir_data_val;
++ } dir_data;
++ struct {
++ u_int signature_len;
++ char *signature_val;
++ } signature;
++};
++typedef struct fd_result fd_result;
++
++/* Generic client creating flags */
++#define ZMH_VC 1
++#define ZMH_DG 2
++#define ZMH_AUTH 4
++
++/* Testing Access rights for objects */
++
++#define NIS_READ_ACC 1
++#define NIS_MODIFY_ACC 2
++#define NIS_CREATE_ACC 4
++#define NIS_DESTROY_ACC 8
++/* Test macros. a == access rights, m == desired rights. */
++#define NIS_WORLD(a, m) (((a) & (m)) != 0)
++#define NIS_GROUP(a, m) (((a) & ((m) << 8)) != 0)
++#define NIS_OWNER(a, m) (((a) & ((m) << 16)) != 0)
++#define NIS_NOBODY(a, m) (((a) & ((m) << 24)) != 0)
++/*
++ * EOL Alert - The following non-prefixed test macros are
++ * here for backward compatability, and will be not be present
++ * in future releases - use the NIS_*() macros above.
++ */
++#define WORLD(a, m) (((a) & (m)) != 0)
++#define GROUP(a, m) (((a) & ((m) << 8)) != 0)
++#define OWNER(a, m) (((a) & ((m) << 16)) != 0)
++#define NOBODY(a, m) (((a) & ((m) << 24)) != 0)
++
++#define OATYPE(d, n) (((d)->do_armask.do_armask_val+n)->oa_otype)
++#define OARIGHTS(d, n) (((d)->do_armask.do_armask_val+n)->oa_rights)
++#define WORLD_DEFAULT (NIS_READ_ACC)
++#define GROUP_DEFAULT (NIS_READ_ACC << 8)
++#define OWNER_DEFAULT ((NIS_READ_ACC + NIS_MODIFY_ACC + NIS_CREATE_ACC +\
++ NIS_DESTROY_ACC) << 16)
++#define DEFAULT_RIGHTS (WORLD_DEFAULT | GROUP_DEFAULT | OWNER_DEFAULT)
++
++/* Result manipulation defines ... */
++#define NIS_RES_NUMOBJ(x) ((x)->objects.objects_len)
++#define NIS_RES_OBJECT(x) ((x)->objects.objects_val)
++#define NIS_RES_COOKIE(x) ((x)->cookie)
++#define NIS_RES_STATUS(x) ((x)->status)
++
++/* These defines make getting at the variant part of the object easier. */
<<Diff was trimmed, longer than 597 lines>>
---- CVS-web:
http://cvs.pld-linux.org/cgi-bin/cvsweb.cgi/packages/libtirpc/libtirpc.spec?r1=1.28&r2=1.29&f=u
More information about the pld-cvs-commit
mailing list