[OpenAFS-devel] Re: ptserver coredumps (1.5.78 on FreeBSD 8.1)

u-openafsdev-njsf@aetey.se u-openafsdev-njsf@aetey.se
Wed, 8 Dec 2010 20:03:21 +0100


--CE+1k2dSO48ffgeK
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline

On Wed, Dec 08, 2010 at 10:12:20AM -0600, Andrew Deason wrote:
> > Compiled 1.4.12.1 which needed some tweaking to go through
> 
> Can you share what that tweaking was? I assume you mean you needed to do
> some extra steps to get it to compile?

Applied this patch:
--- src/gtx/curseswindows.c.ori 2010-12-08 13:18:12.128730277 +0100
+++ src/gtx/curseswindows.c     2010-12-08 13:18:34.975377267 +0100
@@ -29,7 +29,7 @@
 #endif
 #include <sys/types.h>
 #include <sys/file.h>
-#if !defined(AFS_SUN5_ENV) && !defined(AFS_LINUX20_ENV)
+#if !defined(AFS_SUN5_ENV) && !defined(AFS_LINUX20_ENV) && !defined(AFS_FBSD80_ENV)
 #include <sgtty.h>
 #endif
 #include <stdio.h>

And another tweak after configure (should be applied to .in instead
but here is what I actually did)
--- src/libuafs/MakefileProto.FBSD.ori	2010-12-08 13:14:02.917567127 +0100
+++ src/libuafs/MakefileProto.FBSD	2010-12-08 13:14:45.570906029 +0100
@@ -21,7 +21,7 @@
 TEST_LDFLAGS=
 <all -i386_fbsd_62 -i386_fbsd_70 -i386_fbsd_71 -i386_fbsd_80 -amd64_fbsd_62 -amd64_fbsd_70 -amd64_fbsd_71 -amd64_fbsd_80>
 TEST_LIBS=-lc_r
-<i386_fbsd_62 i386_fbsd_70 i386_fbsd_71 i386_fbsd_80 amd64_fbsd_62 amd64_fbsd_70 amd64_fbsd_71 amd64_fbsd_80>
+<i386_fbsd_62 i386_fbsd_70 i386_fbsd_71 i386_fbsd_80 amd64_fbsd_62 amd64_fbsd_70 amd64_fbsd_71 amd64_fbsd_80 amd64_fbsd_81>
 TEST_LIBS=-lpthread
 <all>
 

cp .../param.amd64_fbsd_81.h.1.4.12.1 src/config/param.amd64_fbsd_81.h
cp .../afs_sysnames.h src/config/afs_sysnames.h
(attaching both)

./configure --enable-namei-fileserver --enable-supergroups \
            --disable-kernel-module \
            --with-krb5-conf=/usr/bin/krb5-config

Hope you can have some use of this.

I also tried to compile the kernel module but this did not go well
nor seemed probable that it would actually work even if compiled :)

Regards,
Rune

--CE+1k2dSO48ffgeK
Content-Type: text/plain; charset=us-ascii
Content-Disposition: attachment; filename="afs_sysnames.h"

/*
 * Copyright 2000, International Business Machines Corporation and others.
 * All Rights Reserved.
 *
 * This software has been released under the terms of the IBM Public
 * License.  For details, see the LICENSE file in the top-level source
 * directory or online at http://www.openafs.org/dl/license10.html
 *
 * Portions Copyright (c) 2003 Apple Computer, Inc.
 */

/*
 * File: afs_sysnames.h
 *
 * Macros defining AFS systypes and their associated IDs, and generating
 * them from the value of SYS_NAME.
 *
 * Groups of 100 IDs have been allocated to each major system type.
 */

#ifndef __AFS_SYSNAMES_INCL_ENV_
#define __AFS_SYSNAMES_INCL_ENV_ 1

#ifndef	IGNORE_STDS_H
#include "stds.h"
#endif

#define	SYS_NAME_ID_UNDEFINED		   0


#define SYS_NAME_ID_aux_10		 200

#define SYS_NAME_ID_pmax_ul4		 305
#define SYS_NAME_ID_pmax_ul42		 307
#define SYS_NAME_ID_pmax_ul42a		 308
#define SYS_NAME_ID_pmax_ul43		 309
#define SYS_NAME_ID_pmax_ul43a		 310

#define SYS_NAME_ID_hp700_ux90		 407
#define SYS_NAME_ID_hp300_ux90		 408
#define SYS_NAME_ID_hp800_ux90		 409
#define SYS_NAME_ID_hp700_ux100	 	 410
#define SYS_NAME_ID_hp800_ux100	 	 411
#define SYS_NAME_ID_hp700_ux101	 	 412
#define SYS_NAME_ID_hp800_ux101	 	 413
#define SYS_NAME_ID_hp_ux102	 	 414
#define SYS_NAME_ID_hp_ux110	 	 415
#define SYS_NAME_ID_hp_ux11i             416
#define SYS_NAME_ID_ia64_hpux1122	 417
#define SYS_NAME_ID_ia64_hpux1123	 418
#define SYS_NAME_ID_hp_ux1123		 419

#define SYS_NAME_ID_mac2_51		 500
#define SYS_NAME_ID_mac_aux10		 501
#define SYS_NAME_ID_mac_mach51		 502
#define SYS_NAME_ID_ppc_darwin_12        503
#define SYS_NAME_ID_ppc_darwin_13        504
#define SYS_NAME_ID_ppc_darwin_14        505
#define SYS_NAME_ID_ppc_darwin_60        506
#define SYS_NAME_ID_ppc_darwin_70        507
#define SYS_NAME_ID_ppc_darwin_80        508
#define SYS_NAME_ID_x86_darwin_80        509
#define SYS_NAME_ID_ppc_darwin_90        510
#define SYS_NAME_ID_x86_darwin_90        511
#define SYS_NAME_ID_ppc_darwin_100       512
#define SYS_NAME_ID_ppc64_darwin_100     513
#define SYS_NAME_ID_x86_darwin_100       514
#define SYS_NAME_ID_amd64_darwin_100     515
#define SYS_NAME_ID_arm_darwin_100       516

#define SYS_NAME_ID_next_mach20		 601
#define SYS_NAME_ID_next_mach30		 602

#define SYS_NAME_ID_rs_aix32		 701
#define SYS_NAME_ID_rs_aix41		 702
#define SYS_NAME_ID_rs_aix42		 703
#define SYS_NAME_ID_rs_aix51		 704
#define SYS_NAME_ID_rs_aix43		 705
#define SYS_NAME_ID_rs_aix52		 706
#define SYS_NAME_ID_rs_aix53		 707
#define SYS_NAME_ID_rs_aix61		 708

#define SYS_NAME_ID_sun3_411		 906
#define SYS_NAME_ID_sun3x_411		 912
#define SYS_NAME_ID_sun4_411		 917
#define SYS_NAME_ID_sun4c_411		 919
#define SYS_NAME_ID_sun4c_51		 920
#define SYS_NAME_ID_sun4m_51		 921
#define SYS_NAME_ID_sun4c_52		 923
#define SYS_NAME_ID_sun4m_52		 924
/* For sun4_52 */
#define SYS_NAME_ID_sun4c_53		 926
#define SYS_NAME_ID_sun4m_53		 927
#define SYS_NAME_ID_sun4_52		 928
#define SYS_NAME_ID_sun4_53		 929
#define SYS_NAME_ID_sun4_54		 930
#define SYS_NAME_ID_sun4m_54		 931
#define SYS_NAME_ID_sun4c_54		 932
#define SYS_NAME_ID_sunx86_54		 933
#define SYS_NAME_ID_sun4x_55           	 934
#define SYS_NAME_ID_sun4x_56           	 935
#define SYS_NAME_ID_sunx86_56          	 936
#define SYS_NAME_ID_sunx86_55          	 937
#define SYS_NAME_ID_sun4x_57		 938
#define SYS_NAME_ID_sun4x_58		 939
#define SYS_NAME_ID_sun4x_59		 940
#define SYS_NAME_ID_sun4x_510		 941
#define SYS_NAME_ID_sun4x_511		 942

/* Sigh. If I leave a gap here IBM will do this sequentially. If I don't
   they won't allocate sunx86 IDs at all. So leave a gap and pray. */
#define SYS_NAME_ID_sunx86_57		 950
#define SYS_NAME_ID_sunx86_58		 951
#define SYS_NAME_ID_sunx86_59		 952
#define SYS_NAME_ID_sunx86_510		 953
#define SYS_NAME_ID_sunx86_511		 954

#define SYS_NAME_ID_vax_ul4		1003
#define SYS_NAME_ID_vax_ul40		1004
#define SYS_NAME_ID_vax_ul43		1005

#define SYS_NAME_ID_sgi_50		1100
#define SYS_NAME_ID_sgi_51		1101
#define	SYS_NAME_ID_sgi_52		1102
#define	SYS_NAME_ID_sgi_53		1103
#define	SYS_NAME_ID_sgi_61		1104
#define	SYS_NAME_ID_sgi_62		1105
#define	SYS_NAME_ID_sgi_63		1106
#define	SYS_NAME_ID_sgi_64		1107
#define	SYS_NAME_ID_sgi_65		1108

#define SYS_NAME_ID_alpha_osf1		1200
#define SYS_NAME_ID_alpha_osf20		1201
#define SYS_NAME_ID_alpha_osf30		1202
#define SYS_NAME_ID_alpha_osf32		1203
#define SYS_NAME_ID_alpha_osf32c	1204
#define SYS_NAME_ID_alpha_dux40		1205
#define SYS_NAME_ID_alpha_dux50		1206
#define SYS_NAME_ID_alpha_dux51		1207

#define SYS_NAME_ID_ncrx86_20		1300
#define SYS_NAME_ID_ncrx86_30		1301

#define SYS_NAME_ID_i386_nt35		1400
#define SYS_NAME_ID_i386_win95	        1401
#define SYS_NAME_ID_i386_w2k            1402

#define SYS_NAME_ID_i386_linux2		1500
#define SYS_NAME_ID_i386_linux22	1501
#define SYS_NAME_ID_i386_linux24        1502
#define SYS_NAME_ID_i386_linux26        1503

#define SYS_NAME_ID_ppc_linux2          1600
#define SYS_NAME_ID_ppc_linux22         1601
#define SYS_NAME_ID_ppc_linux24         1602
#define SYS_NAME_ID_ppc_linux26         1603

#define SYS_NAME_ID_sparc_linux2	1700
#define SYS_NAME_ID_sparc_linux22	1701
#define SYS_NAME_ID_sparc_linux24	1702

#define SYS_NAME_ID_sparc64_linux2	1800
#define SYS_NAME_ID_sparc64_linux22	1801
#define SYS_NAME_ID_sparc64_linux24	1802
#define SYS_NAME_ID_sparc64_linux26	1803

#define SYS_NAME_ID_s390_linux2         1900
#define SYS_NAME_ID_s390_linux22        1901
#define SYS_NAME_ID_s390_linux24        1902
#define SYS_NAME_ID_s390_linux26        1907
#define SYS_NAME_ID_s390x_linux2         1903
#define SYS_NAME_ID_s390x_linux22        1904
#define SYS_NAME_ID_s390x_linux24        1905
#define SYS_NAME_ID_s390x_linux26        1906

#define SYS_NAME_ID_alpha_linux_2       2000
#define SYS_NAME_ID_alpha_linux_22      2001
#define SYS_NAME_ID_alpha_linux_24      2002
#define SYS_NAME_ID_alpha_linux_26      2003

#define SYS_NAME_ID_i386_fbsd_42        2100
#define SYS_NAME_ID_i386_fbsd_43        2101
#define SYS_NAME_ID_i386_fbsd_44        2102
#define SYS_NAME_ID_i386_fbsd_45        2103
#define SYS_NAME_ID_i386_fbsd_46        2103
#define SYS_NAME_ID_i386_fbsd_47        2104
#define SYS_NAME_ID_i386_fbsd_50        2105
#define SYS_NAME_ID_i386_fbsd_51        2106
#define SYS_NAME_ID_i386_fbsd_52        2107
#define SYS_NAME_ID_i386_fbsd_53        2108
#define SYS_NAME_ID_i386_fbsd_60        2112
#define SYS_NAME_ID_i386_fbsd_61        2113
#define SYS_NAME_ID_i386_fbsd_62        2114
#define SYS_NAME_ID_i386_fbsd_70        2115
#define SYS_NAME_ID_i386_fbsd_71        2116
#define SYS_NAME_ID_i386_fbsd_80        2117
#define SYS_NAME_ID_i386_fbsd_81        2118
#define SYS_NAME_ID_i386_fbsd_90        2120

#define SYS_NAME_ID_ia64_linux2		2200
#define SYS_NAME_ID_ia64_linux22	2201
#define SYS_NAME_ID_ia64_linux24	2202
#define SYS_NAME_ID_ia64_linux26	2203

#define SYS_NAME_ID_m68k_linux22        2301
#define SYS_NAME_ID_m68k_linux24        2302

#define SYS_NAME_ID_parisc_linux22      2401
#define SYS_NAME_ID_parisc_linux24      2402

#define SYS_NAME_ID_i386_nbsd15         2501
#define SYS_NAME_ID_alpha_nbsd15        2502
#define SYS_NAME_ID_sparc_nbsd15        2503
#define SYS_NAME_ID_sparc64_nbsd15      2504

#define SYS_NAME_ID_i386_nbsd16		2510
#define SYS_NAME_ID_alpha_nbsd16	2511
#define SYS_NAME_ID_sparc_nbsd16	2512
#define SYS_NAME_ID_sparc64_nbsd16	2513
#define SYS_NAME_ID_macppc_nbsd16	2514

#define SYS_NAME_ID_i386_nbsd20		2520
#define SYS_NAME_ID_alpha_nbsd20	2521
#define SYS_NAME_ID_sparc_nbsd20	2522
#define SYS_NAME_ID_sparc64_nbsd20	2523
#define SYS_NAME_ID_macppc_nbsd20	2524
#define SYS_NAME_ID_i386_nbsd21		2525
#define SYS_NAME_ID_i386_nbsd30		2526
#define SYS_NAME_ID_amd64_nbsd20	2527
#define SYS_NAME_ID_i386_nbsd40 2528
#define SYS_NAME_ID_i386_nbsd50 2529
#define SYS_NAME_ID_sparc64_nbsd30 2530
#define SYS_NAME_ID_sparc64_nbsd40 2531
#define SYS_NAME_ID_sparc64_nbsd50 2532
#define SYS_NAME_ID_amd64_nbsd30 2533
#define SYS_NAME_ID_amd64_nbsd40 2534
#define SYS_NAME_ID_amd64_nbsd50 2535
#define SYS_NAME_ID_alpha_nbsd30 2536
#define SYS_NAME_ID_alpha_nbsd40 2537
#define SYS_NAME_ID_alpha_nbsd50 2538
#define SYS_NAME_ID_macppc_nbsd30 2539
#define SYS_NAME_ID_macppc_nbsd40 2540
#define SYS_NAME_ID_macppc_nbsd50 2541

#define SYS_NAME_ID_i386_obsd31		2600
#define SYS_NAME_ID_i386_obsd32		2601
#define SYS_NAME_ID_i386_obsd33		2602
#define SYS_NAME_ID_i386_obsd34		2603
#define SYS_NAME_ID_i386_obsd35		2604
#define SYS_NAME_ID_i386_obsd36		2605
#define SYS_NAME_ID_i386_obsd37		2606
#define SYS_NAME_ID_i386_obsd38		2607
#define SYS_NAME_ID_i386_obsd39		2608
#define SYS_NAME_ID_i386_obsd40         2609
#define SYS_NAME_ID_i386_obsd41         2610
#define SYS_NAME_ID_i386_obsd42         2611
#define SYS_NAME_ID_i386_obsd43         2612
#define SYS_NAME_ID_i386_obsd44         2613
#define SYS_NAME_ID_i386_obsd45         2614
#define SYS_NAME_ID_i386_obsd46         2615
#define SYS_NAME_ID_i386_obsd47         2616

#define SYS_NAME_ID_amd64_linux2        2700
#define SYS_NAME_ID_amd64_linux22       2701
#define SYS_NAME_ID_amd64_linux24       2702
#define SYS_NAME_ID_amd64_linux26       2703

#define SYS_NAME_ID_i386_umlinux2	2800
#define SYS_NAME_ID_i386_umlinux22	2801
#define SYS_NAME_ID_i386_umlinux24	2802
#define SYS_NAME_ID_i386_umlinux26	2803

#define SYS_NAME_ID_ppc64_linux2	2900
#define SYS_NAME_ID_ppc64_linux22	2901
#define SYS_NAME_ID_ppc64_linux24	2902
#define SYS_NAME_ID_ppc64_linux26	2903

#define SYS_NAME_ID_amd64_fbsd_53       3008
#define SYS_NAME_ID_amd64_fbsd_70       3009
#define SYS_NAME_ID_amd64_fbsd_71       3010
#define SYS_NAME_ID_amd64_fbsd_80       3011
#define SYS_NAME_ID_amd64_fbsd_81       3012
#define SYS_NAME_ID_amd64_fbsd_90       3020

#define SYS_NAME_ID_amd64_w2k           3400

#define SYS_NAME_ID_i64_w2k             3500

#define SYS_NAME_ID_arm_linux2          3800
#define SYS_NAME_ID_arm_linux22         3801
#define SYS_NAME_ID_arm_linux24         3802
#define SYS_NAME_ID_arm_linux26         3803

#define SYS_NAME_ID_i386_dfbsd_22        3900
#define SYS_NAME_ID_i386_dfbsd_23        3901
#define SYS_NAME_ID_i386_dfbsd_24        3902
#define SYS_NAME_ID_i386_dfbsd_25        3903
#define SYS_NAME_ID_i386_dfbsd_26        3904
#define SYS_NAME_ID_i386_dfbsd_27        3905

#define SYS_NAME_ID_amd64_obsd36        4005
#define SYS_NAME_ID_amd64_obsd37        4006
#define SYS_NAME_ID_amd64_obsd38        4007
#define SYS_NAME_ID_amd64_obsd39        4008
#define SYS_NAME_ID_amd64_obsd40        4009
#define SYS_NAME_ID_amd64_obsd41        4010
#define SYS_NAME_ID_amd64_obsd42        4011
#define SYS_NAME_ID_amd64_obsd43        4012
#define SYS_NAME_ID_amd64_obsd44        4013
#define SYS_NAME_ID_amd64_obsd45        4014
#define SYS_NAME_ID_amd64_obsd46        4015

/*
 * Placeholder to keep system-wide standard flags since this file is included by all
 * files (i.e in afs/param.h)
 */
#ifdef	notdef
/* Should be enabled by src sites that are compiling afs in a kerberos environment
 * (i.e. use their headers and libs) and want to use the realm-related kerberos code
 */
#define	AFS_ATHENA_STDENV		1
#endif
#ifdef	AFS_ATHENA_STDENV
/* So that they don't get our own version of the kerb-related function  in libutil.a */
#define	afs_krb_get_lrealm(r,n)	krb_get_lrealm(r,n)
#define	AFS_REALM_SZ		REALM_SZ
#endif

/* Should be enabled by src sites that are compiling afs without the kerb headers/libs
 * but want to use the kerberos realm-related code
 */
#define	AFS_KERBREALM_ENV	1
#ifdef	AFS_KERBREALM_ENV
#define	AFS_REALM_SZ		64
#endif
/* Specifies the number of equivalent local realm names */
#define AFS_NUM_LREALMS 4
#endif /* __AFS_SYSNAMES_INCL_ENV_ */

--CE+1k2dSO48ffgeK
Content-Type: text/plain; charset=us-ascii
Content-Disposition: attachment; filename="param.amd64_fbsd_81.h.1.4.12.1"

#ifndef	AFS_PARAM_H
#define	AFS_PARAM_H

/* Machine / Operating system information */
#define SYS_NAME	"amd64_fbsd_81"
#define SYS_NAME_ID	SYS_NAME_ID_amd64_fbsd_81

#define AFSLITTLE_ENDIAN    1
#define AFS_HAVE_FFS        1	/* Use system's ffs. */
#define AFS_HAVE_STATVFS    1	/* System doesn't support statvfs */
#define AFS_VM_RDWR_ENV	    1	/* read/write implemented via VM */


#ifndef UKERNEL
/* This section for kernel libafs compiles only */

#ifndef IGNORE_STDS_H
#include <sys/param.h>
#endif

#define AFS_XBSD_ENV 1		/* {Free,Open,Net}BSD */
#define AFS_X86_XBSD_ENV 1

#define AFS_NAMEI_ENV     1	/* User space interface to file system */
#define AFS_64BIT_ENV 1
#define AFS_64BIT_CLIENT 1
#define AFS_64BITPOINTER_ENV 1
#define AFS_64BIT_IOPS_ENV 1	/* Needed for NAMEI */
#define AFS_FBSD_ENV 1
#define AFS_FBSD40_ENV 1
#define AFS_FBSD42_ENV 1
#define AFS_FBSD43_ENV 1
#define AFS_FBSD44_ENV 1
#define AFS_FBSD45_ENV 1
#define AFS_FBSD46_ENV 1
#define AFS_FBSD47_ENV 1
#define AFS_FBSD50_ENV 1
#define AFS_FBSD51_ENV 1
#define AFS_FBSD52_ENV 1
#define AFS_FBSD53_ENV 1
#define AFS_FBSD60_ENV 1
#define AFS_FBSD61_ENV 1
#define AFS_FBSD62_ENV 1
#define AFS_FBSD70_ENV 1
#define AFS_FBSD71_ENV 1
#define AFS_FBSD80_ENV 1
#define AFS_FBSD81_ENV 1
#define AFS_X86_FBSD_ENV 1
#define AFS_X86_FBSD40_ENV 1
#define AFS_X86_FBSD42_ENV 1
#define AFS_X86_FBSD43_ENV 1
#define AFS_X86_FBSD46_ENV 1
#define AFS_X86_FBSD47_ENV 1
#define AFS_X86_FBSD50_ENV 1
#define AFS_X86_FBSD60_ENV 1 /* added at 70--ie, some changes should port <-- */
#define AFS_X86_FBSD62_ENV 1
#define AFS_X86_FBSD70_ENV 1
#define AFS_X86_FBSD71_ENV 1
#define AFS_X86_FBSD80_ENV 1
#define AFS_X86_FBSD81_ENV 1
#define AFS_X86_ENV 1
#define AFS_NONFSTRANS 1
#define FTRUNC O_TRUNC

#define IUPD 0x0010
#define IACC 0x0020
#define ICHG 0x0040
#define IMOD 0x0080

#define IN_LOCK(ip)     lockmgr(&ip->i_lock, LK_EXCLUSIVE, \
                                NULL, curproc)
#define IN_UNLOCK(ip)   lockmgr(&ip->i_lock, LK_RELEASE, \
                                NULL, curproc)

#include <afs/afs_sysnames.h>

#define AFS_VFS_ENV	1
#define AFS_VFSINCL_ENV 1
#define AFS_GREEDY43_ENV	1
#define AFS_ENV  	1

#define AFS_SYSCALL	339
#define AFS_MOUNT_AFS	"afs"

#ifndef MOUNT_UFS
#define MOUNT_UFS "ufs"
#endif

#ifndef	MOUNT_AFS
#define	MOUNT_AFS AFS_MOUNT_AFS
#endif

#define RXK_LISTENER_ENV 1
#define AFS_GCPAGS	        0	/* if nonzero, garbage collect PAGs */
#define AFS_USE_GETTIMEOFDAY    1	/* use gettimeofday to implement rx clock */

/* Extra kernel definitions (from kdefs file) */
#ifdef _KERNEL
#define AFS_GLOBAL_SUNLOCK        1
#define	AFS_VFS34	1	/* What is VFS34??? */
#define	AFS_SHORTGID	0	/* are group id's short? */
#define	afsio_iov	uio_iov
#define	afsio_iovcnt	uio_iovcnt
#define	afsio_offset	uio_offset
#define	afsio_seg	uio_segflg
#define	afsio_resid	uio_resid
#define	AFS_UIOSYS	UIO_SYSSPACE
#define	AFS_UIOUSER	UIO_USERSPACE
#define	AFS_CLBYTES	CLBYTES
#define	osi_GetTime(x)	microtime(x)
#define AFS_KALLOC(x)   osi_fbsd_alloc((x), 1)
#undef	AFS_KALLOC_NOSLEEP
#define	AFS_KALLOC_NOSLEEP(x) osi_fbsd_alloc((x), 0)
#define AFS_KFREE(x,y)  osi_fbsd_free((x))
#define	v_count		v_usecount
#define v_vfsp		v_mount
#define vfs_bsize	mnt_stat.f_bsize
#define vfs_fsid	mnt_stat.f_fsid
#define va_nodeid	va_fileid
#define vfs_vnodecovered mnt_vnodecovered
#define direct		dirent
#define vnode_t		struct vnode

#ifndef MUTEX_DEFAULT
#define MUTEX_DEFAULT   0
#endif /* MUTEX_DEFAULT */

#ifndef SSYS
#define SSYS            0x00002
#endif /* SSYS */

#define p_rcred         p_ucred

#if	!defined(ASSEMBLER) && !defined(__LANGUAGE_ASSEMBLY__)
enum vcexcl { NONEXCL, EXCL };

#ifdef KERNEL
#ifndef MIN
#define MIN(A,B) ((A) < (B) ? (A) : (B))
#endif
#ifndef MAX
#define MAX(A,B) ((A) > (B) ? (A) : (B))
#endif
#endif /* KERNEL */

#endif /* ! ASSEMBLER & ! __LANGUAGE_ASSEMBLY__ */
#endif /* _KERNEL */

#else /* !defined(UKERNEL) */

/* This section for user space compiles only */

#define UKERNEL			1	/* user space kernel */
#define AFS_ENV			1
#define AFS_VFSINCL_ENV         1
#define AFS_USR_FBSD40_ENV	1
#define AFS_USR_FBSD42_ENV	1
#define AFS_USR_FBSD43_ENV	1
#define AFS_USR_FBSD44_ENV	1
#define AFS_USR_FBSD45_ENV	1
#define AFS_USR_FBSD46_ENV	1
#define AFS_USR_FBSD47_ENV	1
#define AFS_USR_FBSD50_ENV	1
#define AFS_USR_FBSD51_ENV	1
#define AFS_USR_FBSD52_ENV	1
#define AFS_USR_FBSD53_ENV	1
#define AFS_USR_FBSD60_ENV	1
#define AFS_USR_FBSD61_ENV	1
#define AFS_USR_FBSD70_ENV	1
#define AFS_USR_FBSD71_ENV	1
#define AFS_USR_FBSD80_ENV	1
#define AFS_USR_FBSD81_ENV	1
#define AFS_USR_FBSD_ENV	1
#define AFS_NONFSTRANS 1

#define AFS_MOUNT_AFS "afs"	/* The name of the filesystem type. */
#define AFS_SYSCALL 339
#define AFS_NAMEI_ENV         1	/* User space interface to file system */
#define AFS_64BIT_ENV 1
#define AFS_64BITPOINTER_ENV  1
#define AFS_64BIT_IOPS_ENV    1	/* Needed for NAMEI */
#define AFS_USERSPACE_IP_ADDR 1
#define RXK_LISTENER_ENV      1
#define AFS_GCPAGS	      0	/* if nonzero, garbage collect PAGs */

#include <afs/afs_sysnames.h>

#define	afsio_iov	uio_iov
#define	afsio_iovcnt	uio_iovcnt
#define	afsio_offset	uio_offset
#define	afsio_seg	uio_segflg
#define	afsio_fmode	uio_fmode
#define	afsio_resid	uio_resid
#define	AFS_UIOSYS	1
#define	AFS_UIOUSER	UIO_USERSPACE
#define	AFS_CLBYTES	MCLBYTES
#define	AFS_MINCHANGE	2
#define	VATTR_NULL	usr_vattr_null

#define AFS_DIRENT
#ifndef CMSERVERPREF
#define CMSERVERPREF
#endif

#include <sys/param.h>
#include <sys/types.h>
#include <sys/mount.h>
#include <sys/fcntl.h>
#include <sys/uio.h>
#include <sys/socket.h>
#include <netinet/in.h>
#include <limits.h>

#endif /* !defined(UKERNEL) */

/* general user-space compiles */

#if defined(UKERNEL) || !defined(KERNEL)
#define STDLIB_HAS_MALLOC_PROTOS 1
#endif

#endif /* AFS_PARAM_H */

--CE+1k2dSO48ffgeK--