+1998-10-30 Thorsten Kukuk <kukuk@vt.uni-paderborn.de>
+
+ * sunrpc/Versions: Add xdr_uint32_t and xdr_int32_t.
+ * sunrpc/pmap_rmt.c: Initialize clnt_stat variable.
+ * sunrpc/rpc/auth_des.h: Use uint32_t for time values.
+ * sunrpc/rpc/xdr.h: Add INT32 support.
+ * sunrpc/xdr.c: Implement xdr_int32_t and xdr_uint32_t .
+
+ * nis/nis_call.c: Changes for new 64bit clean NIS+ interface.
+ * nis/nis_callback.c: Likewise.
+ * nis/nis_creategroup.c: Likewise.
+ * nis/nis_defaults.c: Likewise.
+ * nis/nis_intern.h: Likewise.
+ * nis/nis_lookup.c: Likewise.
+ * nis/nis_ping.c: Likewise.
+ * nis/nis_print.c: Likewise.
+ * nis/nis_table.c: Likewise.
+ * nis/nis_util.c: Likewise.
+ * nis/nis_xdr.c: Likewise.
+ * nis/rpcsvc/nis.h: Likewise.
+ * nis/rpcsvc/nis.x: Likewise.
+ * nis/rpcsvc/nis_callback.h: Likewise.
+ * nis/rpcsvc/nis_object.x: Likewise.
+ * nis/rpcsvc/nislib.h: Likewise.
+
+ * nis/rpcsvc/yp.h: Remove casts to (u_long).
+ * nis/rpcsvc/yp_prot.h: Likewise.
+ * nis/rpcsvc/ypupd.h: Likewise.
+ * nis/ypclnt.c: Change %ld to %d in sprintf.
+
1998-10-29 Andreas Schwab <schwab@issan.cs.uni-dortmund.de>
* manual/locale.texi (Formatting Numbers): Fix strfmon examples.
}
nis_error
-__nisbind_create (dir_binding *dbp, const nis_server *serv_val, u_int serv_len,
- u_long flags)
+__nisbind_create (dir_binding *dbp, const nis_server *serv_val,
+ unsigned int serv_len, unsigned int flags)
{
dbp->clnt = NULL;
So we could use the same binding twice */
nis_error
__do_niscall3 (dir_binding *dbp, u_long prog, xdrproc_t xargs, caddr_t req,
- xdrproc_t xres, caddr_t resp, u_long flags, nis_cb *cb)
+ xdrproc_t xres, caddr_t resp, unsigned int flags, nis_cb *cb)
{
enum clnt_stat result;
nis_error retcode;
nis_error
__do_niscall2 (const nis_server *server, u_int server_len, u_long prog,
xdrproc_t xargs, caddr_t req, xdrproc_t xres, caddr_t resp,
- u_long flags, nis_cb *cb)
+ unsigned int flags, nis_cb *cb)
{
dir_binding dbp;
nis_error status;
nis_error
__do_niscall (const_nis_name name, u_long prog, xdrproc_t xargs,
- caddr_t req, xdrproc_t xres, caddr_t resp, u_long flags,
+ caddr_t req, xdrproc_t xres, caddr_t resp, unsigned int flags,
nis_cb *cb)
{
nis_error retcode;
char pkey[HEXKEYBYTES + 1];
char *cp, *domain;
nis_result *res;
- u_int len = 0;
+ unsigned int len = 0;
domain = strchr (sname, '.');
if (domain == NULL)
case CBPROC_RECEIVE:
{
- u_long i;
+ unsigned int i;
xdr_argument = (xdrproc_t) xdr_cback_data;
xdr_result = (xdrproc_t) xdr_bool;
struct nis_cb *
__nis_create_callback (int (*callback) (const_nis_name, const nis_object *,
const void *),
- const void *userdata, u_long flags)
+ const void *userdata, unsigned int flags)
{
struct nis_cb *cb;
int sock = RPC_ANYSOCK;
#include <rpcsvc/nis.h>
nis_error
-nis_creategroup (const_nis_name group, u_long flags)
+nis_creategroup (const_nis_name group, unsigned int flags)
{
if (group != NULL && group[0] != '\0')
{
return strndup (cptr, i);
}
-static u_long
+static uint32_t
searchttl (char *str)
{
char buf[strlen (str) + 1];
char *cptr, *dptr;
- u_long time;
+ uint32_t time;
int i;
dptr = strstr (str, "ttl=");
return time;
}
-static u_long
-searchaccess (char *str, u_long access)
+static unsigned int
+searchaccess (char *str, unsigned int access)
{
char buf[strlen (str) + 1];
char *cptr;
- u_long result = access;
+ unsigned int result = access;
int i;
int n, o, g, w;
result = result & ~(NIS_DESTROY_ACC);
break;
default:
- return ULONG_MAX;
+ return (~0U);
}
cptr++;
}
result = result | (NIS_DESTROY_ACC);
break;
default:
- return ULONG_MAX;
+ return (~0U);
}
cptr++;
}
result = result | (NIS_DESTROY_ACC);
break;
default:
- return result = ULONG_MAX;
+ return result = (~0U);
}
cptr++;
}
n = o = g = w = 0;
break;
default:
- return result = ULONG_MAX;
+ return result = (~0U);
}
if (*cptr != '\0')
cptr++;
return strdup (default_group);
}
-u_long
+uint32_t
__nis_default_ttl (char *defaults)
{
char *cptr, *dptr;
/* Default access rights are ----rmcdr---r---, but we could change
this with the NIS_DEFAULTS variable. */
-u_long
-__nis_default_access (char *param, u_long defaults)
+unsigned int
+__nis_default_access (char *param, unsigned int defaults)
{
- u_long result;
+ unsigned int result;
char *cptr;
if (defaults == 0)
extern nis_error __do_niscall2 __P ((const nis_server *serv, u_int serv_len,
u_long prog, xdrproc_t xargs, caddr_t req,
xdrproc_t xres, caddr_t resp,
- u_long flags, nis_cb *cb));
+ unsigned int flags, nis_cb *cb));
extern nis_error __do_niscall __P ((const_nis_name name, u_long prog,
xdrproc_t xargs, caddr_t req,
xdrproc_t xres, caddr_t resp,
- u_long flags, nis_cb *cb));
+ unsigned int flags, nis_cb *cb));
/* NIS+ callback */
extern nis_error __nis_do_callback __P ((struct dir_binding *bptr,
netobj *cookie, struct nis_cb *cb));
extern struct nis_cb *__nis_create_callback
__P ((int (*callback)(const_nis_name, const nis_object *, const void *),
- const void *userdata, u_long flags));
+ const void *userdata, unsigned int flags));
extern nis_error __nis_destroy_callback __P ((struct nis_cb *cb));
__END_DECLS
#include "nis_intern.h"
nis_result *
-nis_lookup (const_nis_name name, const u_long flags)
+nis_lookup (const_nis_name name, const unsigned int flags)
{
nis_result *res = calloc (1, sizeof (nis_result));
struct ns_request req;
#include "nis_intern.h"
void
-nis_ping (const_nis_name dirname, u_long utime, const nis_object *dirobj)
+nis_ping (const_nis_name dirname, unsigned int utime,
+ const nis_object *dirobj)
{
nis_result *res = NULL;
nis_object *obj;
ping_args args;
- u_int i;
+ unsigned int i;
if (dirname == NULL && dirobj == NULL)
abort ();
}
static void
-print_ttl (const u_long ttl)
+print_ttl (const uint32_t ttl)
{
- unsigned long int time, s, m, h;
+ uint32_t time, s, m, h;
time = ttl;
m = time / 60;
time %= 60;
s = time;
- printf ("%lu:%lu:%lu\n", h, m, s);
+ printf ("%u:%u:%u\n", h, m, s);
}
static void
-print_flags (const u_long flags)
+print_flags (const unsigned int flags)
{
fputs ("(", stdout);
}
void
-nis_print_rights (const u_long access)
+nis_print_rights (const unsigned int access)
{
char result[17];
- u_long acc;
+ unsigned int acc;
int i;
acc = access; /* Parameter is const ! */
fputs (_("Group Flags :"), stdout);
if (obj->gr_flags)
- printf ("0x%08lX", obj->gr_flags);
+ printf ("0x%08X", obj->gr_flags);
fputs (_("\nGroup Members :\n"), stdout);
for (i = 0; i < obj->gr_members.gr_members_len; i++)
nis_print_rights (obj->zo_access);
printf (_("\nTime to Live : "));
print_ttl (obj->zo_ttl);
- printf (_("Creation Time : %s"), ctime (&obj->zo_oid.ctime));
- printf (_("Mod. Time : %s"), ctime (&obj->zo_oid.mtime));
+ printf (_("Creation Time : %s"), ctime ((time_t *)&obj->zo_oid.ctime));
+ printf (_("Mod. Time : %s"), ctime ((time_t *)&obj->zo_oid.mtime));
fputs (_("Object Type : "), stdout);
nis_print_objtype (obj->zo_data.zo_type);
switch (obj->zo_data.zo_type)
static struct ib_request *
-__create_ib_request (const_nis_name name, u_long flags)
+__create_ib_request (const_nis_name name, unsigned int flags)
{
struct ib_request *ibreq = calloc (1, sizeof (ib_request));
char buf[strlen (name) + 1];
}
nis_result *
-nis_list (const_nis_name name, u_long flags,
+nis_list (const_nis_name name, unsigned int flags,
int (*callback) (const_nis_name name,
const nis_object *object,
const void *userdata),
}
nis_result *
-nis_add_entry (const_nis_name name, const nis_object *obj2, u_long flags)
+nis_add_entry (const_nis_name name, const nis_object *obj2, unsigned int flags)
{
nis_object obj;
nis_result *res;
}
nis_result *
-nis_modify_entry (const_nis_name name, const nis_object *obj2, u_long flags)
+nis_modify_entry (const_nis_name name, const nis_object *obj2,
+ unsigned int flags)
{
nis_object obj;
nis_result *res;
nis_result *
nis_remove_entry (const_nis_name name, const nis_object *obj,
- u_long flags)
+ unsigned int flags)
{
nis_result *res;
ib_request *ibreq;
*
* OZ's original sdbm hash
*/
-unsigned long
+uint32_t
__nis_hash (const void *keyarg, register size_t len)
{
register const u_char *key;
register size_t loop;
- register u_int32_t h;
+ register uint32_t h;
#define HASHC h = *key++ + 65599 * h
static bool_t
xdr_oar_mask (XDR *xdrs, oar_mask *objp)
{
- if (!xdr_u_long (xdrs, &objp->oa_rights))
+ if (!xdr_u_int (xdrs, &objp->oa_rights))
return FALSE;
if (!xdr_zotypes (xdrs, &objp->oa_otype))
return FALSE;
if (!xdr_array (xdrs, (char **) &objp->ep.ep_val, (u_int *) &objp->ep.ep_len,
~0, sizeof (endpoint), (xdrproc_t) xdr_endpoint))
return FALSE;
- if (!xdr_u_long (xdrs, &objp->key_type))
+ if (!xdr_u_int (xdrs, &objp->key_type))
return FALSE;
if (!xdr_netobj (xdrs, &objp->pkey))
return FALSE;
sizeof (nis_server), (xdrproc_t) _xdr_nis_server))
return FALSE;
- if (!xdr_u_long (xdrs, &objp->do_ttl))
+ if (!xdr_uint32_t (xdrs, &objp->do_ttl))
return FALSE;
if (!xdr_array (xdrs, (char **) &objp->do_armask.do_armask_val,
(u_int *) & objp->do_armask.do_armask_len, ~0,
static bool_t
xdr_entry_col (XDR *xdrs, entry_col *objp)
{
- if (!xdr_u_long (xdrs, &objp->ec_flags))
+ if (!xdr_u_int (xdrs, &objp->ec_flags))
return FALSE;
if (!xdr_bytes (xdrs, (char **) &objp->ec_value.ec_value_val,
(u_int *) &objp->ec_value.ec_value_len, ~0))
static bool_t
xdr_group_obj (XDR *xdrs, group_obj *objp)
{
- if (!xdr_u_long (xdrs, &objp->gr_flags))
+ if (!xdr_u_int (xdrs, &objp->gr_flags))
return FALSE;
if (!xdr_array (xdrs, (char **) &objp->gr_members.gr_members_val,
(u_int *) &objp->gr_members.gr_members_len, ~0,
{
if (!xdr_string (xdrs, &objp->tc_name, 64))
return FALSE;
- if (!xdr_u_long (xdrs, &objp->tc_flags))
+ if (!xdr_u_int (xdrs, &objp->tc_flags))
return FALSE;
- if (!xdr_u_long (xdrs, &objp->tc_rights))
+ if (!xdr_u_int (xdrs, &objp->tc_rights))
return FALSE;
return TRUE;
}
static bool_t
xdr_nis_oid (XDR *xdrs, nis_oid *objp)
{
- if (!xdr_u_long (xdrs, &objp->ctime))
+ if (!xdr_uint32_t (xdrs, &objp->ctime))
return FALSE;
- if (!xdr_u_long (xdrs, &objp->mtime))
+ if (!xdr_uint32_t (xdrs, &objp->mtime))
return FALSE;
return TRUE;
}
return FALSE;
if (!_xdr_nis_name (xdrs, &objp->zo_domain))
return FALSE;
- if (!xdr_u_long (xdrs, &objp->zo_access))
+ if (!xdr_u_int (xdrs, &objp->zo_access))
return FALSE;
- if (!xdr_u_long (xdrs, &objp->zo_ttl))
+ if (!xdr_uint32_t (xdrs, &objp->zo_ttl))
return FALSE;
if (!xdr_objdata (xdrs, &objp->zo_data))
return FALSE;
bool_t
_xdr_nis_result (XDR *xdrs, nis_result *objp)
{
- register long *buf;
-
- if (xdrs->x_op == XDR_ENCODE)
- {
- if (!_xdr_nis_error (xdrs, &objp->status))
- return FALSE;
- if (!xdr_array (xdrs, (char **) &objp->objects.objects_val,
- (u_int *) &objp->objects.objects_len, ~0,
- sizeof (nis_object), (xdrproc_t) _xdr_nis_object))
- return FALSE;
- if (!xdr_netobj (xdrs, &objp->cookie))
- return FALSE;
- buf = XDR_INLINE (xdrs, 4 * BYTES_PER_XDR_UNIT);
- if (buf == NULL)
- {
- if (!xdr_u_long (xdrs, &objp->zticks))
- return FALSE;
- if (!xdr_u_long (xdrs, &objp->dticks))
- return FALSE;
- if (!xdr_u_long (xdrs, &objp->aticks))
- return FALSE;
- if (!xdr_u_long (xdrs, &objp->cticks))
- return FALSE;
- }
- else
- {
- IXDR_PUT_U_LONG (buf, objp->zticks);
- IXDR_PUT_U_LONG (buf, objp->dticks);
- IXDR_PUT_U_LONG (buf, objp->aticks);
- IXDR_PUT_U_LONG (buf, objp->cticks);
- }
- return TRUE;
- }
- else if (xdrs->x_op == XDR_DECODE)
- {
- if (!_xdr_nis_error (xdrs, &objp->status))
- return FALSE;
- if (!xdr_array (xdrs, (char **) &objp->objects.objects_val,
- (u_int *) &objp->objects.objects_len, ~0,
- sizeof (nis_object), (xdrproc_t) _xdr_nis_object))
- return FALSE;
- if (!xdr_netobj (xdrs, &objp->cookie))
- return FALSE;
- buf = XDR_INLINE (xdrs, 4 * BYTES_PER_XDR_UNIT);
- if (buf == NULL)
- {
- if (!xdr_u_long (xdrs, &objp->zticks))
- return FALSE;
- if (!xdr_u_long (xdrs, &objp->dticks))
- return FALSE;
- if (!xdr_u_long (xdrs, &objp->aticks))
- return FALSE;
- if (!xdr_u_long (xdrs, &objp->cticks))
- return FALSE;
- }
- else
- {
- objp->zticks = IXDR_GET_U_LONG (buf);
- objp->dticks = IXDR_GET_U_LONG (buf);
- objp->aticks = IXDR_GET_U_LONG (buf);
- objp->cticks = IXDR_GET_U_LONG (buf);
- }
- return TRUE;
- }
-
if (!_xdr_nis_error (xdrs, &objp->status))
return FALSE;
if (!xdr_array (xdrs, (char **) &objp->objects.objects_val,
return FALSE;
if (!xdr_netobj (xdrs, &objp->cookie))
return FALSE;
- if (!xdr_u_long (xdrs, &objp->zticks))
+ if (!xdr_uint32_t (xdrs, &objp->zticks))
return FALSE;
- if (!xdr_u_long (xdrs, &objp->dticks))
+ if (!xdr_uint32_t (xdrs, &objp->dticks))
return FALSE;
- if (!xdr_u_long (xdrs, &objp->aticks))
+ if (!xdr_uint32_t (xdrs, &objp->aticks))
return FALSE;
- if (!xdr_u_long (xdrs, &objp->cticks))
+ if (!xdr_uint32_t (xdrs, &objp->cticks))
return FALSE;
return TRUE;
}
(u_int *) &objp->ibr_srch.ibr_srch_len, ~0,
sizeof (nis_attr), (xdrproc_t) xdr_nis_attr))
return FALSE;
- if (!xdr_u_long (xdrs, &objp->ibr_flags))
+ if (!xdr_u_int (xdrs, &objp->ibr_flags))
return FALSE;
if (!xdr_array (xdrs, (char **) &objp->ibr_obj.ibr_obj_val,
(u_int *) &objp->ibr_obj.ibr_obj_len, 1,
(u_int *) &objp->ibr_cbhost.ibr_cbhost_len, 1,
sizeof (nis_server), (xdrproc_t) _xdr_nis_server))
return FALSE;
- if (!xdr_u_long (xdrs, &objp->ibr_bufsize))
+ if (!xdr_u_int (xdrs, &objp->ibr_bufsize))
return FALSE;
if (!xdr_netobj (xdrs, &objp->ibr_cookie))
return FALSE;
{
if (!_xdr_nis_name (xdrs, &objp->dir))
return FALSE;
- if (!xdr_u_long (xdrs, &objp->stamp))
+ if (!xdr_uint32_t (xdrs, &objp->stamp))
return FALSE;
return TRUE;
}
{
if (!_xdr_nis_error (xdrs, &objp->cp_status))
return FALSE;
- if (!xdr_u_long (xdrs, &objp->cp_zticks))
+ if (!xdr_uint32_t (xdrs, &objp->cp_zticks))
return FALSE;
- if (!xdr_u_long (xdrs, &objp->cp_dticks))
+ if (!xdr_uint32_t (xdrs, &objp->cp_dticks))
return FALSE;
return TRUE;
}
bool_t
_xdr_nis_tag (XDR *xdrs, nis_tag *objp)
{
- if (!xdr_u_long (xdrs, &objp->tag_type))
- {
- return FALSE;
- }
- if (!xdr_string (xdrs, &objp->tag_val, 1024))
- {
- return FALSE;
- }
+ if (!xdr_u_int (xdrs, &objp->tag_type))
+ return FALSE;
+ if (!xdr_string (xdrs, &objp->tag_val, ~0))
+ return FALSE;
return TRUE;
}
#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;
typedef enum nstype nstype;
struct oar_mask {
- u_long oa_rights;
+ u_int oa_rights;
zotypes oa_otype;
};
typedef struct oar_mask oar_mask;
u_int ep_len;
endpoint *ep_val;
} ep;
- u_long key_type;
+ u_int key_type;
netobj pkey;
};
typedef struct nis_server nis_server;
u_int do_servers_len;
nis_server *do_servers_val;
} do_servers;
- u_long do_ttl;
+ uint32_t do_ttl;
struct {
u_int do_armask_len;
oar_mask *do_armask_val;
#define EN_ASN1 64
struct entry_col {
- u_long ec_flags;
+ u_int ec_flags;
struct {
u_int ec_value_len;
char *ec_value_val;
typedef struct entry_obj entry_obj;
struct group_obj {
- u_long gr_flags;
+ u_int gr_flags;
struct {
u_int gr_members_len;
nis_name *gr_members_val;
struct table_col {
char *tc_name;
- u_long tc_flags;
- u_long tc_rights;
+ u_int tc_flags;
+ u_int tc_rights;
};
typedef struct table_col table_col;
typedef struct objdata objdata;
struct nis_oid {
- u_long ctime;
- u_long mtime;
+ uint32_t ctime;
+ uint32_t mtime;
};
typedef struct nis_oid nis_oid;
nis_name zo_owner;
nis_name zo_group;
nis_name zo_domain;
- u_long zo_access;
- u_long zo_ttl;
+ u_int zo_access;
+ uint32_t zo_ttl;
objdata zo_data;
};
typedef struct nis_object nis_object;
nis_object *objects_val;
} objects;
netobj cookie;
- u_long zticks;
- u_long dticks;
- u_long aticks;
- u_long cticks;
+ uint32_t zticks;
+ uint32_t dticks;
+ uint32_t aticks;
+ uint32_t cticks;
};
typedef struct nis_result nis_result;
u_int ibr_srch_len;
nis_attr *ibr_srch_val;
} ibr_srch;
- u_long ibr_flags;
+ u_int ibr_flags;
struct {
u_int ibr_obj_len;
nis_object *ibr_obj_val;
u_int ibr_cbhost_len;
nis_server *ibr_cbhost_val;
} ibr_cbhost;
- u_long ibr_bufsize;
+ u_int ibr_bufsize;
netobj ibr_cookie;
};
typedef struct ib_request ib_request;
struct ping_args {
nis_name dir;
- u_long stamp;
+ uint32_t stamp;
};
typedef struct ping_args ping_args;
typedef enum log_entry_t log_entry_t;
struct log_entry {
- u_long le_time;
+ uint32_t le_time;
log_entry_t le_type;
nis_name le_princp;
nis_name le_name;
struct cp_result {
nis_error cp_status;
- u_long cp_zticks;
- u_long cp_dticks;
+ uint32_t cp_zticks;
+ uint32_t cp_dticks;
};
typedef struct cp_result cp_result;
struct nis_tag {
- u_long tag_type;
+ u_int tag_type;
char *tag_val;
};
typedef struct nis_tag nis_tag;
struct dump_args {
nis_name da_dir;
- u_long da_time;
+ uint32_t da_time;
struct {
u_int da_cbhost_len;
nis_server *da_cbhost_val;
#ifndef __nis_3_h
#define __nis_3_h
-#define NIS_PROG ((u_long)100300)
-#define NIS_VERSION ((u_long)3)
+#define NIS_PROG 100300
+#define NIS_VERSION 3
-#define NIS_LOOKUP ((u_long)1)
+#define NIS_LOOKUP 1
extern nis_result * nis_lookup_3 __P ((ns_request *, CLIENT *));
extern nis_result * nis_lookup_3_svc __P ((ns_request *, struct svc_req *));
-#define NIS_ADD ((u_long)2)
+#define NIS_ADD 2
extern nis_result * nis_add_3 __P ((ns_request *, CLIENT *));
extern nis_result * nis_add_3_svc __P ((ns_request *, struct svc_req *));
-#define NIS_MODIFY ((u_long)3)
+#define NIS_MODIFY 3
extern nis_result * nis_modify_3 __P ((ns_request *, CLIENT *));
extern nis_result * nis_modify_3_svc __P ((ns_request *, struct svc_req *));
-#define NIS_REMOVE ((u_long)4)
+#define NIS_REMOVE 4
extern nis_result * nis_remove_3 __P ((ns_request *, CLIENT *));
extern nis_result * nis_remove_3_svc __P ((ns_request *, struct svc_req *));
-#define NIS_IBLIST ((u_long)5)
+#define NIS_IBLIST 5
extern nis_result * nis_iblist_3 __P ((ib_request *, CLIENT *));
extern nis_result * nis_iblist_3_svc __P ((ib_request *, struct svc_req *));
-#define NIS_IBADD ((u_long)6)
+#define NIS_IBADD 6
extern nis_result * nis_ibadd_3 __P ((ib_request *, CLIENT *));
extern nis_result * nis_ibadd_3_svc __P ((ib_request *, struct svc_req *));
-#define NIS_IBMODIFY ((u_long)7)
+#define NIS_IBMODIFY 7
extern nis_result * nis_ibmodify_3 __P ((ib_request *, CLIENT *));
extern nis_result * nis_ibmodify_3_svc __P ((ib_request *, struct svc_req *));
-#define NIS_IBREMOVE ((u_long)8)
+#define NIS_IBREMOVE 8
extern nis_result * nis_ibremove_3 __P ((ib_request *, CLIENT *));
extern nis_result * nis_ibremove_3_svc __P ((ib_request *, struct svc_req *));
-#define NIS_IBFIRST ((u_long)9)
+#define NIS_IBFIRST 9
extern nis_result * nis_ibfirst_3 __P ((ib_request *, CLIENT *));
extern nis_result * nis_ibfirst_3_svc __P ((ib_request *, struct svc_req *));
-#define NIS_IBNEXT ((u_long)10)
+#define NIS_IBNEXT 10
extern nis_result * nis_ibnext_3 __P ((ib_request *, CLIENT *));
extern nis_result * nis_ibnext_3_svc __P ((ib_request *, struct svc_req *));
-#define NIS_FINDDIRECTORY ((u_long)12)
+#define NIS_FINDDIRECTORY 12
extern fd_result * nis_finddirectory_3 __P ((fd_args *, CLIENT *));
extern fd_result * nis_finddirectory_3_svc __P ((fd_args *,
struct svc_req *));
-#define NIS_STATUS ((u_long)14)
+#define NIS_STATUS 14
extern nis_taglist * nis_status_3 __P ((nis_taglist *, CLIENT *));
extern nis_taglist * nis_status_3_svc __P ((nis_taglist *, struct svc_req *));
-#define NIS_DUMPLOG ((u_long)15)
+#define NIS_DUMPLOG 15
extern log_result * nis_dumplog_3 __P ((dump_args *, CLIENT *));
extern log_result * nis_dumplog_3_svc __P ((dump_args *, struct svc_req *));
-#define NIS_DUMP ((u_long)16)
+#define NIS_DUMP 16
extern log_result * nis_dump_3 __P ((dump_args *, CLIENT *));
extern log_result * nis_dump_3_svc __P ((dump_args *, struct svc_req *));
-#define NIS_CALLBACK ((u_long)17)
+#define NIS_CALLBACK 17
extern bool_t * nis_callback_3 __P ((netobj *, CLIENT *));
extern bool_t * nis_callback_3_svc __P ((netobj *, struct svc_req *));
-#define NIS_CPTIME ((u_long)18)
-extern u_long * nis_cptime_3 __P ((nis_name *, CLIENT *));
-extern u_long * nis_cptime_3_svc __P ((nis_name *, struct svc_req *));
-#define NIS_CHECKPOINT ((u_long)19)
+#define NIS_CPTIME 18
+extern uint32_t * nis_cptime_3 __P ((nis_name *, CLIENT *));
+extern uint32_t * nis_cptime_3_svc __P ((nis_name *, struct svc_req *));
+#define NIS_CHECKPOINT 19
extern cp_result * nis_checkpoint_3 __P ((nis_name *, CLIENT *));
extern cp_result * nis_checkpoint_3_svc __P ((nis_name *, struct svc_req *));
-#define NIS_PING ((u_long)20)
+#define NIS_PING 20
extern void * nis_ping_3 __P ((ping_args *, CLIENT *));
extern void * nis_ping_3_svc __P ((ping_args *, struct svc_req *));
-#define NIS_SERVSTATE ((u_long)21)
+#define NIS_SERVSTATE 21
extern nis_taglist * nis_servstate_3 __P ((nis_taglist *, CLIENT *));
extern nis_taglist * nis_servstate_3_svc __P ((nis_taglist *,
struct svc_req *));
-#define NIS_MKDIR ((u_long)22)
+#define NIS_MKDIR 22
extern nis_error * nis_mkdir_3 __P ((nis_name *, CLIENT *));
extern nis_error * nis_mkdir_3_svc __P ((nis_name *, struct svc_req *));
-#define NIS_RMDIR ((u_long)23)
+#define NIS_RMDIR 23
extern nis_error * nis_rmdir_3 __P ((nis_name *, CLIENT *));
extern nis_error * nis_rmdir_3_svc __P ((nis_name *, struct svc_req *));
-#define NIS_UPDKEYS ((u_long)24)
+#define NIS_UPDKEYS 24
extern nis_error * nis_updkeys_3 __P ((nis_name *, CLIENT *));
extern nis_error * nis_updkeys_3_svc __P ((nis_name *, struct svc_req *));
__END_DECLS
-#endif /* !_NIS_H_RPCGEN */
+#endif /* ! _RPCSVC_NIS_H */
nis_error status; /* Status of the response */
nis_object objects<>; /* objects found */
netobj cookie; /* Cookie Data */
- u_long zticks; /* server ticks */
- u_long dticks; /* DBM ticks. */
- u_long aticks; /* Cache (accel) ticks */
- u_long cticks; /* Client ticks */
+ uint32_t zticks; /* server ticks */
+ uint32_t dticks; /* DBM ticks. */
+ uint32_t aticks; /* Cache (accel) ticks */
+ uint32_t cticks; /* Client ticks */
};
/*
struct ib_request {
nis_name ibr_name; /* The name of the Table */
nis_attr ibr_srch<>; /* The search critereia */
- u_long ibr_flags; /* Optional flags */
+ u_int ibr_flags; /* Optional flags */
nis_object ibr_obj<1>; /* optional object (add/modify) */
nis_server ibr_cbhost<1>; /* Optional callback info */
- u_long ibr_bufsize; /* Optional first/next bufsize */
+ u_int ibr_bufsize; /* Optional first/next bufsize */
netobj ibr_cookie; /* The first/next cookie */
};
*/
struct ping_args {
nis_name dir; /* Directory that had the change */
- u_long stamp; /* timestamp of the transaction */
+ uint32_t stamp; /* timestamp of the transaction */
};
/*
* 'name'.
*/
struct log_entry {
- u_long le_time; /* Time in seconds */
+ uint32_t le_time; /* Time in seconds */
log_entry_t le_type; /* Type of log entry */
nis_name le_princp; /* Principal making the change */
nis_name le_name; /* Name of table/dir involved */
struct cp_result {
nis_error cp_status; /* Status of the checkpoint */
- u_long cp_zticks; /* Service 'ticks' */
- u_long cp_dticks; /* Database 'ticks' */
+ uint32_t cp_zticks; /* Service 'ticks' */
+ uint32_t cp_dticks; /* Database 'ticks' */
};
/*
* This structure defines a generic NIS tag list. The taglist contains
- * zero or tags, each of which is a type and a value. (u_long).
+ * zero or tags, each of which is a type and a value. (u_int).
* These are used to report statistics (see tag definitions below)
* and to set or reset state variables.
*/
struct nis_tag {
- u_long tag_type; /* Statistic tag (may vary) */
- string tag_val<1024>; /* Statistic value may also vary */
+ u_int tag_type; /* Statistic tag (may vary) */
+ string tag_val<>; /* Statistic value may also vary */
};
struct nis_taglist {
struct dump_args {
nis_name da_dir; /* Directory to dump */
- u_long da_time; /* From this timestamp */
+ uint32_t da_time; /* From this timestamp */
nis_server da_cbhost<1>; /* Callback to use. */
};
endpoint ep;
int generation;
int rank;
- u_long flags;
+ u_int flags;
int hostnum;
int epnum;
nis_name uaddr;
bool NIS_CALLBACK(netobj) = 17;
/* Return last update time for named dir */
- u_long NIS_CPTIME(nis_name) = 18;
+ uint32_t NIS_CPTIME(nis_name) = 18;
/* Checkpoint directory or table named */
cp_result NIS_CHECKPOINT(nis_name) = 19;
%/* Structure for storing dynamically allocated static data */
%struct nis_sdata {
% void *buf; /* Memory allocation pointer */
-% u_long size; /* Buffer size */
+% u_int size; /* Buffer size */
%};
%
%/* Generic client creating flags */
};
typedef struct cback_data cback_data;
-#define CB_PROG ((u_long)100302)
-#define CB_VERS ((u_long)1)
+#define CB_PROG 100302
+#define CB_VERS 1
-#define CBPROC_RECEIVE ((u_long)1)
+#define CBPROC_RECEIVE 1
extern bool_t * cbproc_receive_1 __P ((cback_data *, CLIENT *));
extern bool_t * cbproc_receive_1_svc __P ((cback_data *, struct svc_req *));
-#define CBPROC_FINISH ((u_long)2)
+#define CBPROC_FINISH 2
extern void * cbproc_finish_1 __P ((void *, CLIENT *));
extern void * cbproc_finish_1_svc __P ((void *, struct svc_req *));
-#define CBPROC_ERROR ((u_long)3)
+#define CBPROC_ERROR 3
extern void * cbproc_error_1 __P ((nis_error *, CLIENT *));
extern void * cbproc_error_1_svc __P ((nis_error *, struct svc_req *));
extern int cb_prog_1_freeresult __P ((SVCXPRT *, xdrproc_t, caddr_t));
* All Rights Reserved.
*/
-%#pragma ident "@(#)nis_object.x 1.9 96/07/09 SMI"
+%#pragma ident "@(#)nis_object.x 1.12 97/11/19 SMI"
#if RPC_HDR
%
const NIS_PK_DH = 1; /* Public key is Diffie-Hellman type */
const NIS_PK_RSA = 2; /* Public key if RSA type */
const NIS_PK_KERB = 3; /* Use kerberos style authentication */
+const NIS_PK_DHEXT = 4; /* Extended Diffie-Hellman for RPC-GSS */
/*
* The fundamental name type of NIS. The name may consist of two parts,
* administrator's approval.
*/
struct oar_mask {
- u_long oa_rights; /* Access rights mask */
+ u_int oa_rights; /* Access rights mask */
zotypes oa_otype; /* Object type */
};
struct nis_server {
nis_name name; /* Principal name of the server */
endpoint ep<>; /* Universal addr(s) for server */
- u_long key_type; /* Public key type */
+ u_int key_type; /* Public key type */
netobj pkey; /* server's public key */
};
nis_name do_name; /* Name of the directory being served */
nstype do_type; /* one of NIS, DNS, IVY, YP, or X.500 */
nis_server do_servers<>; /* <0> == Primary name server */
- u_long do_ttl; /* Time To Live (for caches) */
+ uint32_t do_ttl; /* Time To Live (for caches) */
oar_mask do_armask<>; /* Create/Destroy rights by object type */
};
const EN_ASN1 = 64; /* Means contents use ASN.1 encoding */
struct entry_col {
- u_long ec_flags; /* Flags for this value */
+ u_int ec_flags; /* Flags for this value */
opaque ec_value<>; /* It's textual value */
};
* name.directory and recursive groups are expressed as @groupname.directory
*/
struct group_obj {
- u_long gr_flags; /* Flags controlling group */
+ u_int gr_flags; /* Flags controlling group */
nis_name gr_members<>; /* List of names in group */
};
struct table_col {
string tc_name<64>; /* Column Name */
- u_long tc_flags; /* control flags */
- u_long tc_rights; /* Access rights mask */
+ u_int tc_flags; /* control flags */
+ u_int tc_rights; /* Access rights mask */
};
struct table_obj {
* new position and calculate the size.
*/
struct nis_oid {
- u_long ctime; /* Time of objects creation */
- u_long mtime; /* Time of objects modification */
+ uint32_t ctime; /* Time of objects creation */
+ uint32_t mtime; /* Time of objects modification */
};
struct nis_object {
nis_name zo_owner; /* NIS name of object owner. */
nis_name zo_group; /* NIS name of access group. */
nis_name zo_domain; /* The administrator for the object */
- u_long zo_access; /* Access rights (owner, group, world) */
- u_long zo_ttl; /* Object's time to live in seconds. */
+ u_int zo_access; /* Access rights (owner, group, world) */
+ uint32_t zo_ttl; /* Object's time to live in seconds. */
objdata zo_data; /* Data structure for this type */
};
#if RPC_HDR
* nis_lookup (name, flags) resolves a NIS+ name and returns a copy of
* that object from a NIS+ server.
* const nis_name name: name of the object to be resolved
- * u_long flags: logically ORing zero or more flags (FOLLOW_LINKS,
- * HARD_LOOKUP, [NO_CACHE], MASTER_ONLY, EXPAND_NAME)
+ * unsigned int flags: logically ORing zero or more flags (FOLLOW_LINKS,
+ * HARD_LOOKUP, [NO_CACHE], MASTER_ONLY, EXPAND_NAME)
*
* nis_add (name, obj) adds objects to the NIS+ namespace.
* const nis_name name: fully qualified NIS+ name.
* nis_modify (name, obj) can change specific attributes of an object
* that already exists in the namespace.
*/
-extern nis_result *nis_lookup __P ((const_nis_name name, u_long flags));
+extern nis_result *nis_lookup __P ((const_nis_name name, unsigned int flags));
extern nis_result *nis_add __P ((const_nis_name name, const nis_object *obj));
extern nis_result *nis_remove __P ((const_nis_name name,
const nis_object *obj));
* nis_list (table_name, flags, callback(table_name, obj, userdata), userdata)
* search a table in the NIS+ namespace.
* const nis_name table_name: indexed name ([xx=yy],table.dir)
- * u_long flags: logically ORing one or more flags (FOLLOW_LINKS,
- * [FOLLOW_PATH], HARD_LOOKUP, [ALL_RESULTS], [NO_CACHE],
- * MASTER_ONLY, EXPAND_NAME, RETURN_RESULT)
+ * unsigned int flags: logically ORing one or more flags (FOLLOW_LINKS,
+ * [FOLLOW_PATH], HARD_LOOKUP, [ALL_RESULTS], [NO_CACHE],
+ * MASTER_ONLY, EXPAND_NAME, RETURN_RESULT)
* callback(): callback is an optional pointer to a function that will
* process the ENTRY type objects that are returned from the
* search. If this pointer is NULL, then all entries that match
* NIS+ table_name.
* const nis_name table_name
* const nis_object *obj
- * u_long flags: 0, ADD_OVERWRITE, RETURN_RESULT
+ * unsigned int flags: 0, ADD_OVERWRITE, RETURN_RESULT
*
* nis_modify_entry (name, obj, flags) modifies an object identified by name.
* const nis_name name: object identifier
* const nis_object *obj: should point to an entry with the EN_MODIFIED
* flag set in each column that contains new
* information.
- * u_long flags: 0, MOD_SAMEOBJ, RETURN_RESULT
+ * unsigned int flags: 0, MOD_SAMEOBJ, RETURN_RESULT
*
* nis_remove_entry (table_name, obj, flags) removes a set of entries
* identified by table_name from the table.
* is not the same as the cached object pointed to
* by object then the operation will fail with an
* NIS_NOTSAMEOBJ error
- * u_long flags: 0, REM_MULTIPLE
+ * unsigned int flags: 0, REM_MULTIPLE
*
* nis_first_entry (table_name) fetches entries from a table one at a time.
* const nis_name table_name
* const netobj *cookie: The value of cookie from the nis_result structure
* form the previous call.
*/
-extern nis_result *nis_list __P ((const_nis_name name, u_long flags,
+extern nis_result *nis_list __P ((const_nis_name name, unsigned int flags,
int (*callback)(const_nis_name table_name,
const nis_object *obj,
const void *userdata),
const void *userdata));
extern nis_result *nis_add_entry __P ((const_nis_name table_name,
- const nis_object *obj, u_long flags));
+ const nis_object *obj,
+ unsigned int flags));
extern nis_result *nis_modify_entry __P ((const_nis_name name,
const nis_object *obj,
- u_long flags));
+ unsigned int flags));
extern nis_result *nis_remove_entry __P ((const_nis_name table_name,
const nis_object *obj,
- u_long flags));
+ unsigned int flags));
extern nis_result *nis_first_entry __P ((const_nis_name table_name));
extern nis_result *nis_next_entry __P ((const_nis_name table_name,
const netobj *cookie));
const_nis_name group));
extern nis_error nis_removemember __P ((const_nis_name member,
const_nis_name group));
-extern nis_error nis_creategroup __P ((const_nis_name group, u_long flags));
+extern nis_error nis_creategroup __P ((const_nis_name group,
+ unsigned int flags));
extern nis_error nis_destroygroup __P ((const_nis_name group));
extern void nis_print_group_entry __P ((const_nis_name group));
extern nis_error nis_verifygroup __P ((const_nis_name group));
/*
** nis_ping
*/
-extern void nis_ping __P ((const_nis_name dirname, u_long utime,
+extern void nis_ping __P ((const_nis_name dirname, uint32_t utime,
const nis_object *dirobj));
extern nis_result *nis_checkpoint __P ((const_nis_name dirname));
** nis_print (XXX INTERNAL FUNCTIONS, SHOULD NOT BE USED !!)
*/
extern void nis_print_result __P ((const nis_result *result));
-extern void nis_print_rights __P ((u_long rights));
+extern void nis_print_rights __P ((unsigned int rights));
extern void nis_print_directory __P ((const directory_obj *dirobj));
extern void nis_print_group __P ((const group_obj *grpobj));
extern void nis_print_table __P ((const table_obj *tblobj));
/* (XXX INTERNAL FUNCTIONS, SHOULD NOT BE USED !!) */
extern nis_name __nis_default_owner __P ((char *));
extern nis_name __nis_default_group __P ((char *));
-extern u_long __nis_default_ttl __P ((char *));
-extern u_long __nis_default_access __P ((char *, u_long));
+extern uint32_t __nis_default_ttl __P ((char *));
+extern unsigned int __nis_default_access __P ((char *, unsigned int));
extern fd_result *__nis_finddirectory __P ((directory_obj *, const_nis_name));
extern void __free_fdresult __P ((fd_result *));
-extern u_long __nis_hash __P ((const void *keyarg, register size_t len));
+extern uint32_t __nis_hash __P ((const void *keyarg, register size_t len));
/* NIS+ cache locking */
extern int __nis_lock_cache __P ((void));
{
CLIENT *clnt; /* RPC CLIENT handle */
nis_server *server_val; /* List of servers */
- u_int server_len; /* # of servers */
- u_int server_used; /* Which server we are bind in the moment ? */
- u_int current_ep; /* Which endpoint of the server are in use? */
- u_int trys; /* How many server have we tried ? */
- u_int class; /* From which class is server_val ? */
+ unsigned int server_len; /* # of servers */
+ unsigned int server_used; /* Which server we are bind in the moment ? */
+ unsigned int current_ep; /* Which endpoint of the server are in use? */
+ unsigned int trys; /* How many server have we tried ? */
+ unsigned int class; /* From which class is server_val ? */
bool_t master_only; /* Is only binded to the master */
bool_t use_auth; /* Do we use AUTH ? */
bool_t use_udp; /* Do we use UDP ? */
typedef struct dir_binding dir_binding;
extern nis_error __nisbind_create __P ((dir_binding *, const nis_server *,
- u_int, u_long));
+ unsigned int, unsigned int));
extern nis_error __nisbind_connect __P ((dir_binding *));
extern nis_error __nisbind_next __P ((dir_binding *));
extern void __nisbind_destroy __P ((dir_binding *));
__BEGIN_DECLS
-#define YPPROG ((u_long)100004)
-#define YPVERS ((u_long)2)
+#define YPPROG 100004
+#define YPVERS 2
-#define YPPROC_NULL ((u_long)0)
+#define YPPROC_NULL 0
extern void *ypproc_null_2 __P ((void *, CLIENT *));
extern void *ypproc_null_2_svc __P ((void *, struct svc_req *));
-#define YPPROC_DOMAIN ((u_long)1)
+#define YPPROC_DOMAIN 1
extern bool_t *ypproc_domain_2 __P ((domainname *, CLIENT *));
extern bool_t *ypproc_domain_2_svc __P ((domainname *, struct svc_req *));
-#define YPPROC_DOMAIN_NONACK ((u_long)2)
+#define YPPROC_DOMAIN_NONACK 2
extern bool_t *ypproc_domain_nonack_2 __P ((domainname *, CLIENT *));
extern bool_t *ypproc_domain_nonack_2_svc __P ((domainname *, struct svc_req *));
-#define YPPROC_MATCH ((u_long)3)
+#define YPPROC_MATCH 3
extern ypresp_val *ypproc_match_2 __P ((ypreq_key *, CLIENT *));
extern ypresp_val *ypproc_match_2_svc __P ((ypreq_key *, struct svc_req *));
-#define YPPROC_FIRST ((u_long)4)
+#define YPPROC_FIRST 4
extern ypresp_key_val *ypproc_first_2 __P ((ypreq_key *, CLIENT *));
extern ypresp_key_val *ypproc_first_2_svc __P ((ypreq_key *, struct svc_req *));
-#define YPPROC_NEXT ((u_long)5)
+#define YPPROC_NEXT 5
extern ypresp_key_val *ypproc_next_2 __P ((ypreq_key *, CLIENT *));
extern ypresp_key_val *ypproc_next_2_svc __P ((ypreq_key *, struct svc_req *));
-#define YPPROC_XFR ((u_long)6)
+#define YPPROC_XFR 6
extern ypresp_xfr *ypproc_xfr_2 __P ((ypreq_xfr *, CLIENT *));
extern ypresp_xfr *ypproc_xfr_2_svc __P ((ypreq_xfr *, struct svc_req *));
-#define YPPROC_CLEAR ((u_long)7)
+#define YPPROC_CLEAR 7
extern void *ypproc_clear_2 __P ((void *, CLIENT *));
extern void *ypproc_clear_2_svc __P ((void *, struct svc_req *));
-#define YPPROC_ALL ((u_long)8)
+#define YPPROC_ALL 8
extern ypresp_all *ypproc_all_2 __P ((ypreq_nokey *, CLIENT *));
extern ypresp_all *ypproc_all_2_svc __P ((ypreq_nokey *, struct svc_req *));
-#define YPPROC_MASTER ((u_long)9)
+#define YPPROC_MASTER 9
extern ypresp_master *ypproc_master_2 __P ((ypreq_nokey *, CLIENT *));
extern ypresp_master *ypproc_master_2_svc __P ((ypreq_nokey *, struct svc_req *));
-#define YPPROC_ORDER ((u_long)10)
+#define YPPROC_ORDER 10
extern ypresp_order *ypproc_order_2 __P ((ypreq_nokey *, CLIENT *));
extern ypresp_order *ypproc_order_2_svc __P ((ypreq_nokey *, struct svc_req *));
-#define YPPROC_MAPLIST ((u_long)11)
+#define YPPROC_MAPLIST 11
extern ypresp_maplist *ypproc_maplist_2 __P ((domainname *, CLIENT *));
extern ypresp_maplist *ypproc_maplist_2_svc __P ((domainname *, struct svc_req *));
extern int ypprog_2_freeresult __P ((SVCXPRT *, xdrproc_t, caddr_t));
-#define YPPUSH_XFRRESPPROG ((u_long)0x40000000)
-#define YPPUSH_XFRRESPVERS ((u_long)1)
+#define YPPUSH_XFRRESPPROG (0x40000000)
+#define YPPUSH_XFRRESPVERS 1
-#define YPPUSHPROC_NULL ((u_long)0)
+#define YPPUSHPROC_NULL 0
extern void *yppushproc_null_1 __P ((void *, CLIENT *));
extern void *yppushproc_null_1_svc __P ((void *, struct svc_req *));
-#define YPPUSHPROC_XFRRESP ((u_long)1)
+#define YPPUSHPROC_XFRRESP 1
extern void *yppushproc_xfrresp_1 __P ((yppushresp_xfr *, CLIENT *));
extern void *yppushproc_xfrresp_1_svc __P ((yppushresp_xfr *, struct svc_req *));
extern int yppush_xfrrespprog_1_freeresult __P ((SVCXPRT *, xdrproc_t, caddr_t));
-#define YPBINDPROG ((u_long)100007)
-#define YPBINDVERS ((u_long)2)
+#define YPBINDPROG 100007
+#define YPBINDVERS 2
-#define YPBINDPROC_NULL ((u_long)0)
+#define YPBINDPROC_NULL 0
extern void *ypbindproc_null_2 __P ((void *, CLIENT *));
extern void *ypbindproc_null_2_svc __P ((void *, struct svc_req *));
-#define YPBINDPROC_DOMAIN ((u_long)1)
+#define YPBINDPROC_DOMAIN 1
extern ypbind_resp *ypbindproc_domain_2 __P ((domainname *, CLIENT *));
extern ypbind_resp *ypbindproc_domain_2_svc __P ((domainname *, struct svc_req *));
-#define YPBINDPROC_SETDOM ((u_long)2)
+#define YPBINDPROC_SETDOM 2
extern void *ypbindproc_setdom_2 __P ((ypbind_setdom *, CLIENT *));
extern void *ypbindproc_setdom_2_svc __P ((ypbind_setdom *, struct svc_req *));
extern int ypbindprog_2_freeresult __P ((SVCXPRT *, xdrproc_t, caddr_t));
/* Program and version symbols, magic numbers */
-#define YPPROG ((u_long)100004)
-#define YPVERS ((u_long)2)
-#define YPVERS_ORIG ((u_long)1)
+#define YPPROG 100004
+#define YPVERS 2
+#define YPVERS_ORIG 1
#define YPMAXRECORD 1024
-#define YPMAXDOMAIN 64 /* XXX orig. yp_prot.h defines ((u_long)256) */
+#define YPMAXDOMAIN 64 /* XXX orig. yp_prot.h defines 256 */
#define YPMAXMAP 64
-#define YPMAXPEER 64 /* XXX orig. yp_prot.h defines ((u_long)256) */
+#define YPMAXPEER 64 /* XXX orig. yp_prot.h defines 256 */
/* byte size of a large NIS packet */
#define YPMSGSZ 1600
* of the protocol.
*/
-#define YPPROC_NULL ((u_long)0)
-#define YPPROC_DOMAIN ((u_long)1)
-#define YPPROC_DOMAIN_NONACK ((u_long)2)
-#define YPPROC_MATCH ((u_long)3)
-#define YPPROC_FIRST ((u_long)4)
-#define YPPROC_NEXT ((u_long)5)
-#define YPPROC_XFR ((u_long)6)
-#define YPPROC_CLEAR ((u_long)7)
-#define YPPROC_ALL ((u_long)8)
-#define YPPROC_MASTER ((u_long)9)
-#define YPPROC_ORDER ((u_long)10)
-#define YPPROC_MAPLIST ((u_long)11)
-#define YPPROC_NEWXFR ((u_long)12)
+#define YPPROC_NULL 0
+#define YPPROC_DOMAIN 1
+#define YPPROC_DOMAIN_NONACK 2
+#define YPPROC_MATCH 3
+#define YPPROC_FIRST 4
+#define YPPROC_NEXT 5
+#define YPPROC_XFR 6
+#define YPPROC_CLEAR 7
+#define YPPROC_ALL 8
+#define YPPROC_MASTER 9
+#define YPPROC_ORDER 10
+#define YPPROC_MAPLIST 11
+#define YPPROC_NEWXFR 12
/*
* Protocol between clients and NIS binder servers
/* Program and version symbols, magic numbers */
-#define YPBINDPROG ((u_long)100007)
-#define YPBINDVERS ((u_long)2)
-#define YPBINDVERS_ORIG ((u_long)1)
+#define YPBINDPROG 100007
+#define YPBINDVERS 2
+#define YPBINDVERS_ORIG 1
/* Procedure symbols */
-#define YPBINDPROC_NULL ((u_long)0)
-#define YPBINDPROC_DOMAIN ((u_long)1)
-#define YPBINDPROC_SETDOM ((u_long)2)
+#define YPBINDPROC_NULL 0
+#define YPBINDPROC_DOMAIN 1
+#define YPBINDPROC_SETDOM 2
/*
* Response structure and overall result status codes. Success and failure
* represent two separate response message types.
* is supplied to ypxfr as a command-line parameter when it
* is activated by ypserv.
*/
-#define YPPUSHVERS ((u_long)1)
-#define YPPUSHVERS_ORIG ((u_long)1)
+#define YPPUSHVERS 1
+#define YPPUSHVERS_ORIG 1
/* Procedure symbols */
-#define YPPUSHPROC_NULL ((u_long)0)
-#define YPPUSHPROC_XFRRESP ((u_long)1)
+#define YPPUSHPROC_NULL 0
+#define YPPUSHPROC_XFRRESP 1
/* Status values for yppushresp_xfr.status */
extern bool_t xdr_ypdelete_args __P ((XDR *, ypdelete_args*));
-#define YPU_PROG ((u_long)100028)
-#define YPU_VERS ((u_long)1)
+#define YPU_PROG 100028
+#define YPU_VERS 1
-#define YPU_CHANGE ((u_long)1)
+#define YPU_CHANGE 1
extern u_int * ypu_change_1 __P ((ypupdate_args *, CLIENT *));
extern u_int * ypu_change_1_svc __P((ypupdate_args *, struct svc_req *));
-#define YPU_INSERT ((u_long)2)
+#define YPU_INSERT 2
extern u_int * ypu_insert_1 __P ((ypupdate_args *, CLIENT *));
extern u_int * ypu_insert_1_svc __P ((ypupdate_args *, struct svc_req *));
-#define YPU_DELETE ((u_long)3)
+#define YPU_DELETE 3
extern u_int * ypu_delete_1 __P ((ypdelete_args *, CLIENT *));
extern u_int * ypu_delete_1_svc __P ((ypdelete_args *, struct svc_req *));
-#define YPU_STORE ((u_long)4)
+#define YPU_STORE 4
extern u_int * ypu_store_1 __P ((ypupdate_args *, CLIENT *));
extern u_int * ypu_store_1_svc __P ((ypupdate_args *, struct svc_req *));
unsigned short port;
int fd;
- sprintf (path, "%s/%s.%ld", BINDINGDIR, domain, YPBINDVERS);
+ sprintf (path, "%s/%s.%d", BINDINGDIR, domain, YPBINDVERS);
fd = open (path, O_RDONLY);
if (fd >= 0)
{
char *val, int vallen, char *data));
static bool_t
-__xdr_ypresp_all (XDR * xdrs, u_long * objp)
+__xdr_ypresp_all (XDR *xdrs, u_long *objp)
{
while (1)
{
# x*
xdecrypt; xdr_authdes_cred; xdr_authdes_verf;
xdr_cryptkeyarg; xdr_cryptkeyarg2; xdr_cryptkeyres; xdr_des_block;
- xdr_getcredres; xdr_key_netstarg; xdr_key_netstres;
- xdr_keybuf; xdr_keystatus; xdr_netnamestr; xdr_sizeof; xdr_unixcred;
+ xdr_getcredres; xdr_int32_t; xdr_key_netstarg; xdr_key_netstres;
+ xdr_keybuf; xdr_keystatus; xdr_netnamestr; xdr_sizeof; xdr_uint32_t;
+ xdr_unixcred;
}
}
caddr_t resultsp; /* pointer to results */
resultproc_t eachresult; /* call with each result obtained */
{
- enum clnt_stat stat;
+ enum clnt_stat stat = RPC_FAILED;
AUTH *unix_auth = authunix_create_default ();
XDR xdr_stream;
XDR *xdrs = &xdr_stream;
{
char *name; /* network name of client, up to MAXNETNAMELEN */
des_block key; /* conversation key */
- u_long window; /* associated window */
+ uint32_t window; /* associated window */
};
/* A credential */
{
enum authdes_namekind adc_namekind;
struct authdes_fullname adc_fullname;
- u_long adc_nickname;
+ uint32_t adc_nickname;
};
/* A des authentication verifier */
des_block adv_xtime; /* crypt time */
}
adv_time_u;
- u_long adv_int_u;
+ uint32_t adv_int_u;
};
/* des authentication verifier: client variety
enum xdr_op x_op; /* operation; fast additional param */
struct xdr_ops
{
- bool_t (*x_getlong) __PMT ((XDR * __xdrs, long *__lp));
+ bool_t (*x_getlong) __PMT ((XDR *__xdrs, long *__lp));
/* get a long from underlying stream */
- bool_t (*x_putlong) __PMT ((XDR * __xdrs, __const long *__lp));
+ bool_t (*x_putlong) __PMT ((XDR *__xdrs, __const long *__lp));
/* put a long to " */
- bool_t (*x_getbytes) __PMT ((XDR * __xdrs, caddr_t __addr,
+ bool_t (*x_getbytes) __PMT ((XDR *__xdrs, caddr_t __addr,
u_int __len));
/* get some bytes from " */
- bool_t (*x_putbytes) __PMT ((XDR * __xdrs, __const char *__addr,
+ bool_t (*x_putbytes) __PMT ((XDR *__xdrs, __const char *__addr,
u_int __len));
/* put some bytes to " */
- u_int (*x_getpostn) __PMT ((__const XDR * __xdrs));
+ u_int (*x_getpostn) __PMT ((__const XDR *__xdrs));
/* returns bytes off from beginning */
- bool_t (*x_setpostn) __PMT ((XDR * __xdrs, u_int pos));
+ bool_t (*x_setpostn) __PMT ((XDR *__xdrs, u_int pos));
/* lets you reposition the stream */
- long *(*x_inline) __PMT ((XDR * __xdrs, int len));
+ long *(*x_inline) __PMT ((XDR *__xdrs, int len));
/* buf quick ptr to buffered data */
- void (*x_destroy) __PMT ((XDR * __xdrs));
+ void (*x_destroy) __PMT ((XDR *__xdrs));
/* free privates of this xdr_stream */
}
*x_ops;
* u_int len;
* u_int pos;
*/
+#define XDR_GETINT32(xdrs, int32p) \
+ (*(xdrs)->x_ops->x_getlong)(xdrs, (long *)int32p)
+#define xdr_getint32(xdrs, int32p) \
+ (*(xdrs)->x_ops->x_getlong)(xdrs, (long *)int32p)
+
+#define XDR_PUTINT32(xdrs, int32p) \
+ (*(xdrs)->x_ops->x_putlong)(xdrs, (long *)int32p)
+#define xdr_putint32(xdrs, int32p) \
+ (*(xdrs)->x_ops->x_putlong)(xdrs, (long *)int32p)
+
#define XDR_GETLONG(xdrs, longp) \
(*(xdrs)->x_ops->x_getlong)(xdrs, longp)
#define xdr_getlong(xdrs, longp) \
* also, the XDR structure is always updated by some of these calls.
*/
extern bool_t xdr_void __P ((void));
-extern bool_t xdr_int __P ((XDR * __xdrs, int *__ip));
-extern bool_t xdr_u_int __P ((XDR * __xdrs, u_int * __up));
-extern bool_t xdr_long __P ((XDR * __xdrs, long *__lp));
-extern bool_t xdr_u_long __P ((XDR * __xdrs, u_long * __ulp));
-extern bool_t xdr_short __P ((XDR * __xdrs, short *__sp));
-extern bool_t xdr_u_short __P ((XDR * __xdrs, u_short * __usp));
-extern bool_t xdr_bool __P ((XDR * __xdrs, bool_t * __bp));
-extern bool_t xdr_enum __P ((XDR * __xdrs, enum_t * __ep));
-extern bool_t xdr_array __P ((XDR * _xdrs, caddr_t * __addrp, u_int * __sizep,
+extern bool_t xdr_int __P ((XDR *__xdrs, int *__ip));
+extern bool_t xdr_u_int __P ((XDR *__xdrs, u_int *__up));
+extern bool_t xdr_int32_t __P ((XDR *__xdrs, int32_t *__ip));
+extern bool_t xdr_uint32_t __P ((XDR *__xdrs, uint32_t *__up));
+extern bool_t xdr_long __P ((XDR *__xdrs, long *__lp));
+extern bool_t xdr_u_long __P ((XDR *__xdrs, u_long *__ulp));
+extern bool_t xdr_short __P ((XDR *__xdrs, short *__sp));
+extern bool_t xdr_u_short __P ((XDR *__xdrs, u_short *__usp));
+extern bool_t xdr_bool __P ((XDR *__xdrs, bool_t *__bp));
+extern bool_t xdr_enum __P ((XDR *__xdrs, enum_t *__ep));
+extern bool_t xdr_array __P ((XDR * _xdrs, caddr_t *__addrp, u_int *__sizep,
u_int __maxsize, u_int __elsize,
xdrproc_t __elproc));
-extern bool_t xdr_bytes __P ((XDR * __xdrs, char **__cpp, u_int * __sizep,
+extern bool_t xdr_bytes __P ((XDR *__xdrs, char **__cpp, u_int *__sizep,
u_int __maxsize));
-extern bool_t xdr_opaque __P ((XDR * __xdrs, caddr_t __cp, u_int __cnt));
-extern bool_t xdr_string __P ((XDR * __xdrs, char **__cpp, u_int __maxsize));
-extern bool_t xdr_union __P ((XDR * __xdrs, enum_t * __dscmp, char *__unp,
- __const struct xdr_discrim * __choices,
+extern bool_t xdr_opaque __P ((XDR *__xdrs, caddr_t __cp, u_int __cnt));
+extern bool_t xdr_string __P ((XDR *__xdrs, char **__cpp, u_int __maxsize));
+extern bool_t xdr_union __P ((XDR *__xdrs, enum_t *__dscmp, char *__unp,
+ __const struct xdr_discrim *__choices,
xdrproc_t dfault));
-extern bool_t xdr_char __P ((XDR * __xdrs, char *__cp));
-extern bool_t xdr_u_char __P ((XDR * __xdrs, u_char * __cp));
-extern bool_t xdr_vector __P ((XDR * __xdrs, char *__basep, u_int __nelem,
+extern bool_t xdr_char __P ((XDR *__xdrs, char *__cp));
+extern bool_t xdr_u_char __P ((XDR *__xdrs, u_char *__cp));
+extern bool_t xdr_vector __P ((XDR *__xdrs, char *__basep, u_int __nelem,
u_int __elemsize, xdrproc_t __xdr_elem));
-extern bool_t xdr_float __P ((XDR * __xdrs, float *__fp));
-extern bool_t xdr_double __P ((XDR * __xdrs, double *__dp));
-extern bool_t xdr_reference __P ((XDR * __xdrs, caddr_t * __xpp, u_int __size,
+extern bool_t xdr_float __P ((XDR *__xdrs, float *__fp));
+extern bool_t xdr_double __P ((XDR *__xdrs, double *__dp));
+extern bool_t xdr_reference __P ((XDR *__xdrs, caddr_t *__xpp, u_int __size,
xdrproc_t __proc));
-extern bool_t xdr_pointer __P ((XDR * __xdrs, char **__objpp,
+extern bool_t xdr_pointer __P ((XDR *__xdrs, char **__objpp,
u_int __obj_size, xdrproc_t __xdr_obj));
-extern bool_t xdr_wrapstring __P ((XDR * __xdrs, char **__cpp));
+extern bool_t xdr_wrapstring __P ((XDR *__xdrs, char **__cpp));
extern u_long xdr_sizeof __P ((xdrproc_t, void *));
/*
char *n_bytes;
};
typedef struct netobj netobj;
-extern bool_t xdr_netobj __P ((XDR * __xdrs, struct netobj * __np));
+extern bool_t xdr_netobj __P ((XDR *__xdrs, struct netobj *__np));
/*
* These are the public routines for the various implementations of
*/
/* XDR using memory buffers */
-extern void xdrmem_create __P ((XDR * __xdrs, __const caddr_t __addr,
+extern void xdrmem_create __P ((XDR *__xdrs, __const caddr_t __addr,
u_int __size, enum xdr_op __xop));
/* XDR using stdio library */
-extern void xdrstdio_create __P ((XDR * __xdrs, FILE * __file,
+extern void xdrstdio_create __P ((XDR *__xdrs, FILE *__file,
enum xdr_op __xop));
/* XDR pseudo records for tcp */
-extern void xdrrec_create __P ((XDR * __xdrs, u_int __sendsize,
+extern void xdrrec_create __P ((XDR *__xdrs, u_int __sendsize,
u_int __recvsize, caddr_t __tcp_handle,
int (*__readit) (char *, char *, int),
int (*__writeit) (char *, char *, int)));
/* make end of xdr record */
-extern bool_t xdrrec_endofrecord __P ((XDR * __xdrs, bool_t __sendnow));
+extern bool_t xdrrec_endofrecord __P ((XDR *__xdrs, bool_t __sendnow));
/* move to beginning of next record */
-extern bool_t xdrrec_skiprecord __P ((XDR * __xdrs));
+extern bool_t xdrrec_skiprecord __P ((XDR *__xdrs));
/* true if no more input */
-extern bool_t xdrrec_eof __P ((XDR * __xdrs));
+extern bool_t xdrrec_eof __P ((XDR *__xdrs));
/* free memory buffers for xdr */
extern void xdr_free __P ((xdrproc_t __proc, char *__objp));
/*
* for unit alignment
*/
-static const char xdr_zero[BYTES_PER_XDR_UNIT] =
-{0, 0, 0, 0};
+static const char xdr_zero[BYTES_PER_XDR_UNIT] = {0, 0, 0, 0};
/*
* Free a data structure using XDR
* Not a filter, but a convenient utility nonetheless
*/
void
-xdr_free (proc, objp)
- xdrproc_t proc;
- char *objp;
+xdr_free (xdrproc_t proc, char *objp)
{
XDR x;
* XDR integers
*/
bool_t
-xdr_int (xdrs, ip)
- XDR *xdrs;
- int *ip;
+xdr_int (XDR *xdrs, int *ip)
{
#if INT_MAX < LONG_MAX
* XDR unsigned integers
*/
bool_t
-xdr_u_int (xdrs, up)
- XDR *xdrs;
- u_int *up;
+xdr_u_int (XDR *xdrs, u_int *up)
{
#if UINT_MAX < ULONG_MAX
u_long l;
}
/*
+ * XDR 32bit integers
+ */
+bool_t
+xdr_int32_t (XDR *xdrs, int32_t *lp)
+{
+
+ if (xdrs->x_op == XDR_ENCODE)
+ return XDR_PUTINT32 (xdrs, lp);
+
+ if (xdrs->x_op == XDR_DECODE)
+ return XDR_GETINT32 (xdrs, lp);
+
+ if (xdrs->x_op == XDR_FREE)
+ return TRUE;
+
+ return FALSE;
+}
+
+/*
+ * XDR 32bit unsigned integers
+ */
+bool_t
+xdr_uint32_t (XDR *xdrs, uint32_t *ulp)
+{
+ switch (xdrs->x_op)
+ {
+ case XDR_DECODE:
+ return XDR_GETINT32 (xdrs, (uint32_t *) ulp);
+
+ case XDR_ENCODE:
+ return XDR_PUTINT32 (xdrs, (uint32_t *) ulp);
+
+ case XDR_FREE:
+ return TRUE;
+ }
+ return FALSE;
+}
+
+/*
* XDR long integers
* same as xdr_u_long - open coded to save a proc call!
*/
bool_t
-xdr_long (xdrs, lp)
- XDR *xdrs;
- long *lp;
+xdr_long (XDR *xdrs, long *lp)
{
if (xdrs->x_op == XDR_ENCODE)
* same as xdr_long - open coded to save a proc call!
*/
bool_t
-xdr_u_long (xdrs, ulp)
- XDR *xdrs;
- u_long *ulp;
+xdr_u_long (XDR *xdrs, u_long *ulp)
{
switch (xdrs->x_op)
{