From owner-svn-src-all@FreeBSD.ORG Sun Sep 2 21:16:11 2012 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 36A69106564A; Sun, 2 Sep 2012 21:16:11 +0000 (UTC) (envelope-from yuri.pankov@gmail.com) Received: from mail-ee0-f54.google.com (mail-ee0-f54.google.com [74.125.83.54]) by mx1.freebsd.org (Postfix) with ESMTP id 321AF8FC15; Sun, 2 Sep 2012 21:16:09 +0000 (UTC) Received: by eeke52 with SMTP id e52so1845586eek.13 for ; Sun, 02 Sep 2012 14:16:09 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=message-id:date:from:user-agent:mime-version:to:cc:subject :references:in-reply-to:content-type:content-transfer-encoding; bh=b9vmjsxdwk506Ue+SGMsygai5PWXgLd+jULRNUR7W+I=; b=0oG3ir6j4qDu3WdERkXcxo6iQUCfL7JpKbCa0vBtPk/SJZB8etHt0BxvX2OrRH9ntK ua+5vGjVI/zRkggu0Yd8PmxPsHH8BgXbA48wespN3EIDiWTAQL/l+Fhu2pIvqpxPLygE s9hiyT8seimHELKPO6tzsnSRQ+xbZsVyYOjERJU8Pj5y5YPbNFEVUwZoEiZtDAlyaX9b WycfvPB+DP0jswtys9LZqUtRJjlsFB6SbVGvurUhgbxyrNKWyw9o1g0Vbb0CRdiCzBWR KYsfmFqne+hImaddKCBQlKJfLd4LkP4QBB6C+cdVwhtWVwt9RkoVAtecWu0lJk/3ocyA Q+gw== Received: by 10.14.215.193 with SMTP id e41mr18810280eep.44.1346620569034; Sun, 02 Sep 2012 14:16:09 -0700 (PDT) Received: from ?IPv6:2001:470:28:4ba:bd0d:c674:d614:f7e2? ([2001:470:28:4ba:bd0d:c674:d614:f7e2]) by mx.google.com with ESMTPS id l42sm30968756eep.1.2012.09.02.14.16.06 (version=SSLv3 cipher=OTHER); Sun, 02 Sep 2012 14:16:08 -0700 (PDT) Message-ID: <5043CC95.9090707@gmail.com> Date: Mon, 03 Sep 2012 01:16:05 +0400 From: Yuri Pankov User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:15.0) Gecko/20120824 Thunderbird/15.0 MIME-Version: 1.0 To: "Pedro F. Giffuni" References: <201209022104.q82L4eru068961@svn.freebsd.org> In-Reply-To: <201209022104.q82L4eru068961@svn.freebsd.org> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org Subject: Re: svn commit: r240060 - in head: include/rpc sys/rpc X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 02 Sep 2012 21:16:11 -0000 On Sun, 2 Sep 2012 21:04:40 +0000 (UTC), Pedro F. Giffuni wrote: > Author: pfg > Date: Sun Sep 2 21:04:40 2012 > New Revision: 240060 > URL: http://svn.freebsd.org/changeset/base/240060 > > Log: > Fix RPC headers for C++ > > C++ mangling will cause trouble with variables like __rpc_xdr > in xdr.h so rename this to XDR. > While here add proper C++ guards to RPC headers. > > PR: 137443 > MFC after: 2 weeks > > Modified: > head/include/rpc/auth.h > head/include/rpc/auth_unix.h > head/include/rpc/clnt.h > head/include/rpc/clnt_soc.h > head/include/rpc/des_crypt.h > head/include/rpc/nettype.h > head/include/rpc/pmap_clnt.h > head/include/rpc/pmap_rmt.h > head/include/rpc/rpc_com.h > head/include/rpc/rpc_msg.h > head/include/rpc/rpcb_clnt.h > head/include/rpc/rpcent.h > head/include/rpc/rpcsec_gss.h > head/include/rpc/svc.h > head/include/rpc/svc_soc.h > head/include/rpc/xdr.h > head/sys/rpc/rpc_com.h > head/sys/rpc/xdr.h > > Modified: head/include/rpc/auth.h > ============================================================================== > --- head/include/rpc/auth.h Sun Sep 2 18:54:51 2012 (r240059) > +++ head/include/rpc/auth.h Sun Sep 2 21:04:40 2012 (r240060) > @@ -51,6 +51,10 @@ > #include > #include > > +#ifdef __cplusplus > +extern "C" { > +#endif > + > #define MAX_AUTH_BYTES 400 > #define MAXNETNAMELEN 255 /* maximum length of network user's name */ > > @@ -366,4 +370,8 @@ __END_DECLS > #define RPCSEC_GSS_KRB5I 390004 > #define RPCSEC_GSS_KRB5P 390005 > > +#ifdef __cplusplus > +} > +#endif > + > #endif /* !_RPC_AUTH_H */ > > Modified: head/include/rpc/auth_unix.h > ============================================================================== > --- head/include/rpc/auth_unix.h Sun Sep 2 18:54:51 2012 (r240059) > +++ head/include/rpc/auth_unix.h Sun Sep 2 21:04:40 2012 (r240060) > @@ -48,6 +48,10 @@ > #define _RPC_AUTH_UNIX_H > #include > > +#ifdef __cplusplus > +extern "C" { > +#endif > + > /* The machine name is part of a credential; it may not exceed 255 bytes */ > #define MAX_MACHINE_NAME 255 > > @@ -81,4 +85,8 @@ struct short_hand_verf { > struct opaque_auth new_cred; > }; > > +#ifdef __cplusplus > +} > +#endif > + > #endif /* !_RPC_AUTH_UNIX_H */ > > Modified: head/include/rpc/clnt.h > ============================================================================== > --- head/include/rpc/clnt.h Sun Sep 2 18:54:51 2012 (r240059) > +++ head/include/rpc/clnt.h Sun Sep 2 21:04:40 2012 (r240060) > @@ -64,6 +64,10 @@ > #include > #include > > +#ifdef __cplusplus > +extern "C" { > +#endif > + > /* > * Well-known IPV6 RPC broadcast address. > */ > @@ -551,6 +555,10 @@ extern enum clnt_stat rpc_broadcast_exp( > const int, const char *); > __END_DECLS > > +#ifdef __cplusplus > +} > +#endif > + > /* For backward compatibility */ > #include > > > Modified: head/include/rpc/clnt_soc.h > ============================================================================== > --- head/include/rpc/clnt_soc.h Sun Sep 2 18:54:51 2012 (r240059) > +++ head/include/rpc/clnt_soc.h Sun Sep 2 21:04:40 2012 (r240060) > @@ -49,6 +49,10 @@ > > #include > > +#ifdef __cplusplus > +extern "C" { > +#endif > + > #define UDPMSGSIZE 8800 /* rpc imposed limit on udp msg size */ > > /* > @@ -103,4 +107,8 @@ extern CLIENT *clntudp_bufcreate(struct > struct timeval, int *, u_int, u_int); > __END_DECLS > > +#ifdef __cplusplus > +} > +#endif > + > #endif /* _RPC_CLNT_SOC_H */ > > Modified: head/include/rpc/des_crypt.h > ============================================================================== > --- head/include/rpc/des_crypt.h Sun Sep 2 18:54:51 2012 (r240059) > +++ head/include/rpc/des_crypt.h Sun Sep 2 21:04:40 2012 (r240060) > @@ -47,6 +47,10 @@ > #include > #include > > +#ifdef __cplusplus > +extern "C" { > +#endif > + > #define DES_MAXDATA 8192 /* max bytes encrypted in one call */ > #define DES_DIRMASK (1 << 0) > #define DES_ENCRYPT (0*DES_DIRMASK) /* Encrypt */ > @@ -103,4 +107,8 @@ __BEGIN_DECLS > void des_setparity( char *); > __END_DECLS > > +#ifdef __cplusplus > +} > +#endif > + > #endif /* _DES_DES_CRYPT_H */ > > Modified: head/include/rpc/nettype.h > ============================================================================== > --- head/include/rpc/nettype.h Sun Sep 2 18:54:51 2012 (r240059) > +++ head/include/rpc/nettype.h Sun Sep 2 21:04:40 2012 (r240060) > @@ -44,6 +44,10 @@ > > #include > > +#ifdef __cplusplus > +extern "C" { > +#endif > + > #define _RPC_NONE 0 > #define _RPC_NETPATH 1 > #define _RPC_VISIBLE 2 > @@ -61,4 +65,8 @@ extern struct netconfig *__rpc_getconf(v > extern struct netconfig *__rpc_getconfip(const char *); > __END_DECLS > > +#ifdef __cplusplus > +} > +#endif > + > #endif /* !_RPC_NETTYPE_H */ > > Modified: head/include/rpc/pmap_clnt.h > ============================================================================== > --- head/include/rpc/pmap_clnt.h Sun Sep 2 18:54:51 2012 (r240059) > +++ head/include/rpc/pmap_clnt.h Sun Sep 2 21:04:40 2012 (r240060) > @@ -66,6 +66,10 @@ > #define _RPC_PMAP_CLNT_H_ > #include > > +#ifdef __cplusplus > +extern "C" { > +#endif > + > __BEGIN_DECLS > extern bool_t pmap_set(u_long, u_long, int, int); > extern bool_t pmap_unset(u_long, u_long); > @@ -83,4 +87,8 @@ extern u_short pmap_getport(struct sock > u_long, u_long, u_int); > __END_DECLS > > +#ifdef __cplusplus > +} > +#endif > + > #endif /* !_RPC_PMAP_CLNT_H_ */ > > Modified: head/include/rpc/pmap_rmt.h > ============================================================================== > --- head/include/rpc/pmap_rmt.h Sun Sep 2 18:54:51 2012 (r240059) > +++ head/include/rpc/pmap_rmt.h Sun Sep 2 21:04:40 2012 (r240060) > @@ -44,6 +44,10 @@ > #define _RPC_PMAP_RMT_H > #include > > +#ifdef __cplusplus > +extern "C" { > +#endif > + > struct rmtcallargs { > u_long prog, vers, proc, arglen; > caddr_t args_ptr; > @@ -62,4 +66,8 @@ extern bool_t xdr_rmtcall_args(XDR *, st > extern bool_t xdr_rmtcallres(XDR *, struct rmtcallres *); > __END_DECLS > > +#ifdef __cplusplus > +} > +#endif > + > #endif /* !_RPC_PMAP_RMT_H */ > > Modified: head/include/rpc/rpc_com.h > ============================================================================== > --- head/include/rpc/rpc_com.h Sun Sep 2 18:54:51 2012 (r240059) > +++ head/include/rpc/rpc_com.h Sun Sep 2 21:04:40 2012 (r240060) > @@ -42,9 +42,13 @@ > #ifndef _RPC_RPCCOM_H > #define _RPC_RPCCOM_H > > +/* #pragma ident "@(#)rpc_com.h 1.11 93/07/05 SMI" */ > + > #include > > -/* #pragma ident "@(#)rpc_com.h 1.11 93/07/05 SMI" */ > +#ifdef __cplusplus > +extern "C" { > +#endif > > /* > * The max size of the transport, if the size cannot be determined > @@ -80,4 +84,8 @@ char *_get_next_token(char *, int); > > __END_DECLS > > +#ifdef __cplusplus > +} > +#endif > + > #endif /* _RPC_RPCCOM_H */ > > Modified: head/include/rpc/rpc_msg.h > ============================================================================== > --- head/include/rpc/rpc_msg.h Sun Sep 2 18:54:51 2012 (r240059) > +++ head/include/rpc/rpc_msg.h Sun Sep 2 21:04:40 2012 (r240060) > @@ -43,6 +43,10 @@ > #ifndef _RPC_RPC_MSG_H > #define _RPC_RPC_MSG_H > > +#ifdef __cplusplus > +extern "C" { > +#endif > + > #define RPC_MSG_VERSION ((u_int32_t) 2) > #define RPC_SERVICE_PORT ((u_short) 2048) > > @@ -211,4 +215,8 @@ extern bool_t xdr_rejected_reply(XDR *, > extern void _seterr_reply(struct rpc_msg *, struct rpc_err *); > __END_DECLS > > +#ifdef __cplusplus > +} > +#endif > + > #endif /* !_RPC_RPC_MSG_H */ > > Modified: head/include/rpc/rpcb_clnt.h > ============================================================================== > --- head/include/rpc/rpcb_clnt.h Sun Sep 2 18:54:51 2012 (r240059) > +++ head/include/rpc/rpcb_clnt.h Sun Sep 2 21:04:40 2012 (r240060) > @@ -61,6 +61,10 @@ > #include > #include > > +#ifdef __cplusplus > +extern "C" { > +#endif > + > __BEGIN_DECLS > extern bool_t rpcb_set(const rpcprog_t, const rpcvers_t, > const struct netconfig *, const struct netbuf *); > @@ -82,4 +86,8 @@ extern char *rpcb_taddr2uaddr(struct net > extern struct netbuf *rpcb_uaddr2taddr(struct netconfig *, char *); > __END_DECLS > > +#ifdef __cplusplus > +} > +#endif > + > #endif /* !_RPC_RPCB_CLNT_H */ > > Modified: head/include/rpc/rpcent.h > ============================================================================== > --- head/include/rpc/rpcent.h Sun Sep 2 18:54:51 2012 (r240059) > +++ head/include/rpc/rpcent.h Sun Sep 2 21:04:40 2012 (r240060) > @@ -45,6 +45,9 @@ > /* #pragma ident "@(#)rpcent.h 1.13 94/04/25 SMI" */ > /* @(#)rpcent.h 1.1 88/12/06 SMI */ > > +#ifdef __cplusplus > +extern "C" { > +#endif > > struct rpcent { > char *r_name; /* name of server for this rpc program */ > @@ -64,4 +67,8 @@ extern void setrpcent(int); > extern void endrpcent(void); > __END_DECLS > > +#ifdef __cplusplus > +} > +#endif > + > #endif /* !_RPC_CENT_H */ > > Modified: head/include/rpc/rpcsec_gss.h > ============================================================================== > --- head/include/rpc/rpcsec_gss.h Sun Sep 2 18:54:51 2012 (r240059) > +++ head/include/rpc/rpcsec_gss.h Sun Sep 2 21:04:40 2012 (r240060) > @@ -29,6 +29,10 @@ > #ifndef _RPCSEC_GSS_H > #define _RPCSEC_GSS_H > > +#ifdef __cplusplus > +extern "C" { > +#endif > + > #include > > #ifndef MAX_GSS_MECH > @@ -176,4 +180,8 @@ bool_t __rpc_gss_set_error(int rpc_gss_e > > __END_DECLS > > +#ifdef __cplusplus > +} > +#endif > + > #endif /* !_RPCSEC_GSS_H */ > > Modified: head/include/rpc/svc.h > ============================================================================== > --- head/include/rpc/svc.h Sun Sep 2 18:54:51 2012 (r240059) > +++ head/include/rpc/svc.h Sun Sep 2 21:04:40 2012 (r240060) > @@ -65,6 +65,10 @@ > * parameters, struct svc_req * and SVCXPRT *, defined below. > */ > > +#ifdef __cplusplus > +extern "C" { > +#endif > + > /* > * Service control requests > */ > @@ -467,6 +471,9 @@ int __rpc_get_local_uid(SVCXPRT *_transp > > __END_DECLS > > +#ifdef __cplusplus > +} > +#endif > > /* for backward compatibility */ > #include > > Modified: head/include/rpc/svc_soc.h > ============================================================================== > --- head/include/rpc/svc_soc.h Sun Sep 2 18:54:51 2012 (r240059) > +++ head/include/rpc/svc_soc.h Sun Sep 2 21:04:40 2012 (r240060) > @@ -49,6 +49,10 @@ > * with TS-RPC > */ > > +#ifdef __cplusplus > +extern "C" { > +#endif > + > /* > * Approved way of getting address of caller > */ > @@ -113,4 +117,8 @@ __BEGIN_DECLS > extern SVCXPRT *svcfd_create(int, u_int, u_int); > __END_DECLS > > +#ifdef __cplusplus > +} > +#endif > + > #endif /* !_RPC_SVC_SOC_H */ > > Modified: head/include/rpc/xdr.h > ============================================================================== > --- head/include/rpc/xdr.h Sun Sep 2 18:54:51 2012 (r240059) > +++ head/include/rpc/xdr.h Sun Sep 2 21:04:40 2012 (r240060) > @@ -43,6 +43,10 @@ > #define _RPC_XDR_H > #include > > +#ifdef __cplusplus > +extern "C" { > +#endif > + > /* > * XDR provides a conventional way for converting between C data > * types and an external bit-string representation. Library supplied > @@ -97,26 +101,26 @@ enum xdr_op { > * an operations vector for the particular implementation (e.g. see xdr_mem.c), > * and two private fields for the use of the particular implementation. > */ > -typedef struct __rpc_xdr { > +typedef struct XDR { > enum xdr_op x_op; /* operation; fast additional param */ > const struct xdr_ops { > /* get a long from underlying stream */ > - bool_t (*x_getlong)(struct __rpc_xdr *, long *); > + bool_t (*x_getlong)(struct XDR *, long *); > /* put a long to " */ > - bool_t (*x_putlong)(struct __rpc_xdr *, const long *); > + bool_t (*x_putlong)(struct XDR *, const long *); > /* get some bytes from " */ > - bool_t (*x_getbytes)(struct __rpc_xdr *, char *, u_int); > + bool_t (*x_getbytes)(struct XDR *, char *, u_int); > /* put some bytes to " */ > - bool_t (*x_putbytes)(struct __rpc_xdr *, const char *, u_int); > + bool_t (*x_putbytes)(struct XDR *, const char *, u_int); > /* returns bytes off from beginning */ > - u_int (*x_getpostn)(struct __rpc_xdr *); > + u_int (*x_getpostn)(struct XDR *); > /* lets you reposition the stream */ > - bool_t (*x_setpostn)(struct __rpc_xdr *, u_int); > + bool_t (*x_setpostn)(struct XDR *, u_int); > /* buf quick ptr to buffered data */ > - int32_t *(*x_inline)(struct __rpc_xdr *, u_int); > + int32_t *(*x_inline)(struct XDR *, u_int); > /* free privates of this xdr_stream */ > - void (*x_destroy)(struct __rpc_xdr *); > - bool_t (*x_control)(struct __rpc_xdr *, int, void *); > + void (*x_destroy)(struct XDR *); > + bool_t (*x_control)(struct XDR *, int, void *); > } *x_ops; > char * x_public; /* users' data */ > void * x_private; /* pointer to private data */ > @@ -366,4 +370,8 @@ extern bool_t xdrrec_eof(XDR *); > extern u_int xdrrec_readbytes(XDR *, caddr_t, u_int); > __END_DECLS > > +#ifdef __cplusplus > +} > +#endif > + > #endif /* !_RPC_XDR_H */ > > Modified: head/sys/rpc/rpc_com.h > ============================================================================== > --- head/sys/rpc/rpc_com.h Sun Sep 2 18:54:51 2012 (r240059) > +++ head/sys/rpc/rpc_com.h Sun Sep 2 21:04:40 2012 (r240060) > @@ -114,8 +114,8 @@ extern int __rpc_sockisbound(struct sock > extern int bindresvport(struct socket *so, struct sockaddr *sa); > > struct xucred; > -struct __rpc_xdr; > -bool_t xdr_authunix_parms(struct __rpc_xdr *xdrs, uint32_t *time, struct xucred *cred); > +struct XDR; > +bool_t xdr_authunix_parms(struct XDR *xdrs, uint32_t *time, struct xucred *cred); > #endif > > __END_DECLS > > Modified: head/sys/rpc/xdr.h > ============================================================================== > --- head/sys/rpc/xdr.h Sun Sep 2 18:54:51 2012 (r240059) > +++ head/sys/rpc/xdr.h Sun Sep 2 21:04:40 2012 (r240060) > @@ -97,26 +97,26 @@ enum xdr_op { > * an operations vector for the particular implementation (e.g. see xdr_mem.c), > * and two private fields for the use of the particular implementation. > */ > -typedef struct __rpc_xdr { > +typedef struct XDR { > enum xdr_op x_op; /* operation; fast additional param */ > const struct xdr_ops { > /* get a long from underlying stream */ > - bool_t (*x_getlong)(struct __rpc_xdr *, long *); > + bool_t (*x_getlong)(struct XDR *, long *); > /* put a long to " */ > - bool_t (*x_putlong)(struct __rpc_xdr *, const long *); > + bool_t (*x_putlong)(struct XDR *, const long *); > /* get some bytes from " */ > - bool_t (*x_getbytes)(struct __rpc_xdr *, char *, u_int); > + bool_t (*x_getbytes)(struct XDR *, char *, u_int); > /* put some bytes to " */ > - bool_t (*x_putbytes)(struct __rpc_xdr *, const char *, u_int); > + bool_t (*x_putbytes)(struct XDR *, const char *, u_int); > /* returns bytes off from beginning */ > - u_int (*x_getpostn)(struct __rpc_xdr *); > + u_int (*x_getpostn)(struct XDR *); > /* lets you reposition the stream */ > - bool_t (*x_setpostn)(struct __rpc_xdr *, u_int); > + bool_t (*x_setpostn)(struct XDR *, u_int); > /* buf quick ptr to buffered data */ > - int32_t *(*x_inline)(struct __rpc_xdr *, u_int); > + int32_t *(*x_inline)(struct XDR *, u_int); > /* free privates of this xdr_stream */ > - void (*x_destroy)(struct __rpc_xdr *); > - bool_t (*x_control)(struct __rpc_xdr *, int, void *); > + void (*x_destroy)(struct XDR *); > + bool_t (*x_control)(struct XDR *, int, void *); > } *x_ops; > char * x_public; /* users' data */ > void * x_private; /* pointer to private data */ Don't __BEGIN_DECLS and __END_DECLS do exactly that? i.e. it looks like some of the #ifdef's you added are redundant.