1 # Buildsheet autogenerated by ravenadm tool -- Do not edit.
7 SDESC[standard]= User-space implementation of the NFSv3 server spec
8 HOMEPAGE= https://unfs3.github.io
9 CONTACT= Michael_Reim[kraileth@elderlinux.org]
12 SITES[main]= https://github.com/unfs3/unfs3/releases/download/unfs3-0.9.23/
13 DISTFILE[1]= unfs3-0.9.23.tar.gz:main
15 SPKGS[standard]= single
17 OPTIONS_AVAILABLE= none
18 OPTIONS_STANDARD= none
22 USES= autoreconf bison:build gmake pkgconfig
24 DISTNAME= unfs3-0.9.23
26 LICENSE= BSD3CLAUSE:single
27 LICENSE_FILE= BSD3CLAUSE:{{WRKSRC}}/LICENSE
30 FPC_EQUIVALENT= net/unfs3
33 CONFIGURE_ENV= YACC=bison
38 ${STRIP_CMD} ${STAGEDIR}${PREFIX}/sbin/unfsd
40 [FILE:531:descriptions/desc.single]
41 UNFS3 is a user-space implementation of the NFSv3 server specification.
43 It supports all NFSv3 procedures with the exception of the READDIRPLUS
44 procedure. It tries to provide as much information to NFS clients as
45 possible, within the limits possible from user-space.
47 This is the last version before UNFS3 dropped SunRPC support, accidentally
48 making the project Linux-only. This port will be dropped when the issue is
51 Since it runs in user-space, it can be used in jails on FreeBSD as well as
56 380b36d6559c0b18100807e93872da72b64415427566992e8bf34673a161d4c7 147949 unfs3-0.9.23.tar.gz
59 [FILE:62:manifests/plist.single]
61 share/man/man7/tags.7.gz
62 share/man/man8/unfsd.8.gz
65 [FILE:381:patches/patch-Config_Makefile.in]
66 --- Config/Makefile.in.orig 2023-01-04 21:24:49.419237000 +0100
67 +++ Config/Makefile.in 2023-01-04 21:24:59.476740000 +0100
69 $(AR) crs lib.a $(OBJS)
71 y.tab.h y.tab.c: $(srcdir)/exports.y
72 - $(YACC) -d $(srcdir)/exports.y
73 + $(YACC) -dy $(srcdir)/exports.y
75 y.tab.o: y.tab.c $(srcdir)/exports.h $(top_srcdir)/nfs.h $(top_srcdir)/mount.h $(top_srcdir)/daemon.h
79 [FILE:199:patches/patch-Config_exports.l]
80 --- Config/exports.l.orig 2023-01-07 22:25:45.429616000 +0100
81 +++ Config/exports.l 2023-01-07 22:26:06.542037000 +0100
92 [FILE:203:patches/patch-attr.c]
93 --- attr.c.orig 2022-11-17 12:28:15 UTC
101 #include <sys/types.h>
102 #include <sys/stat.h>
106 [FILE:537:patches/patch-configure.ac]
107 --- configure.ac.orig 2019-06-12 14:22:57 UTC
109 @@ -31,14 +31,12 @@ AC_CHECK_FUNCS(xdr_int xdr_u_int)
110 AC_CHECK_FUNCS(xdr_int32 xdr_int32_t)
111 AC_CHECK_FUNCS(xdr_uint32 xdr_uint32_t xdr_u_int32_t)
112 AC_CHECK_FUNCS(xdr_uint64 xdr_uint64_t xdr_u_int64_t)
113 -AC_CHECK_FUNCS(svc_getreq_poll)
114 AC_CHECK_FUNCS(statvfs)
115 AC_CHECK_FUNCS(seteuid setegid)
116 AC_CHECK_FUNCS(setresuid setresgid)
117 AC_CHECK_FUNCS(vsyslog)
118 AC_CHECK_FUNCS(lchown)
119 AC_CHECK_FUNCS(setgroups)
122 UNFS3_COMPILE_WARNINGS
126 [FILE:846:patches/patch-fh.c]
127 --- fh.c.orig 2022-11-17 12:27:07 UTC
129 @@ -86,7 +86,7 @@ uint32 get_gen(backend_statstruct obuf, U(int fd), U(c
133 - if (fd != FD_NONE) {
135 res = ioctl(fd, EXT2_IOC_GETVERSION, &gen);
138 @@ -220,7 +220,7 @@ unfs3_fh_t fh_comp_raw(const char *path, struct svc_re
142 - fh.gen = backend_get_gen(buf, FD_NONE, path);
143 + fh.gen = backend_get_gen(buf, -1, path);
145 /* special case for root directory */
146 if (strcmp(path, "/") == 0)
147 @@ -341,7 +341,7 @@ post_op_fh3 fh_extend_type(nfs_fh3 fh, const char *pat
150 return fh_extend_post(fh, buf.st_dev, buf.st_ino,
151 - backend_get_gen(buf, FD_NONE, path));
152 + backend_get_gen(buf, -1, path));
158 [FILE:287:patches/patch-fh.h]
159 --- fh.h.orig 2022-11-17 12:27:31 UTC
161 @@ -30,8 +30,6 @@ typedef struct {
165 -#define FD_NONE (-1) /* used for get_gen */
167 extern int st_cache_valid; /* stat value is valid */
168 extern backend_statstruct st_cache; /* cached stat value */
172 [FILE:591:patches/patch-md5.c]
173 --- md5.c.orig 2022-11-17 12:35:16 UTC
181 #undef BYTE_ORDER /* 1 = big-endian, -1 = little-endian,
183 @@ -162,7 +163,7 @@ static void md5_process(md5_state_t * pms, const md5_b
184 * On little-endian machines, we can process properly aligned
185 * data without copying it.
187 - if (!((data - (const md5_byte_t *) 0) & 3)) {
188 + if (((uintptr_t)data & 3) == 0) {
189 /* data are properly aligned */
190 X = (const md5_word_t *) data;
194 [FILE:419:patches/patch-nfs.c]
195 --- nfs.c.orig 2022-11-17 12:27:52 UTC
197 @@ -209,7 +209,7 @@ LOOKUP3res *nfsproc3_lookup_3_svc(LOOKUP3args * argp,
198 strcmp(argp->what.name, "..") == 0) {
199 fh = fh_comp_ptr(obj, rqstp, 0);
201 - gen = backend_get_gen(buf, FD_NONE, obj);
202 + gen = backend_get_gen(buf, -1, obj);
203 fh = fh_extend(argp->what.dir, buf.st_dev, buf.st_ino, gen);
204 fh_cache_add(buf.st_dev, buf.st_ino, obj);
208 [FILE:257:patches/patch-nfs.h]
209 --- nfs.h.orig 2022-11-07 12:11:48 UTC
211 @@ -65,6 +65,9 @@ typedef int32_t int32;
213 typedef off_t off64_t;
215 +#if defined __NetBSD__ || defined __DragonFly__
216 +typedef off_t off64_t;
220 typedef char *filename3;