0
     )ˆÃÅƒL·À¾È ›    )/* SPDX-License-Identifier: GPL-2.0 */
/*
 * File: linux/nfsacl.h
 *
 * (C) 2003 Andreas Gruenbacher <agruen@suse.de>
 */
#ifndef __LINUX_NFSACL_H
#define __LINUX_NFSACL_H


#include <linux/posix_acl.h>
#include <linux/sunrpc/xdr.h>
#include <uapi/linux/nfsacl.h>

/* Maximum number of ACL entries over NFS */
#define NFS_ACL_MAX_ENTRIES	1024

#define NFSACL_MAXWORDS		(2*(2+3*NFS_ACL_MAX_ENTRIES))
#define NFSACL_MAXPAGES		((2*(8+12*NFS_ACL_MAX_ENTRIES) + PAGE_SIZE-1) \
				 >> PAGE_SHIFT)

#define NFS_ACL_MAX_ENTRIES_INLINE	(5)
#define NFS_ACL_INLINE_BUFSIZE	((2*(2+3*NFS_ACL_MAX_ENTRIES_INLINE)) << 2)

static inline unsigned int
nfsacl_size(struct posix_acl *acl_access, struct posix_acl *acl_default)
{
	unsigned int w = 16;
	w += max(acl_access ? (int)acl_access->a_count : 3, 4) * 12;
	if (acl_default)
		w += max((int)acl_default->a_count, 4) * 12;
	return w;
}

extern int
nfsacl_encode(struct xdr_buf *buf, unsigned int base, struct inode *inode,
	      struct posix_acl *acl, int encode_entries, int typeflag);
extern int
nfsacl_decode(struct xdr_buf *buf, unsigned int base, unsigned int *aclcnt,
	      struct posix_acl **pacl);
extern bool
nfs_stream_decode_acl(struct xdr_stream *xdr, unsigned int *aclcnt,
		      struct posix_acl **pacl);
extern bool
nfs_stream_encode_acl(struct xdr_stream *xdr, struct inode *inode,
		      struct posix_acl *acl, int encode_entries, int typeflag);

#endif  /* __LINUX_NFSACL_H */
  
   +ˆƒ€{Ê¾È 
0    +<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
 <head>
  <title>Index of /FSS-OZR/root/usr/src/kernels/5.14.0-687.31.1.el9_8.x86_64/scripts/genksyms</title>
 </head>
 <body>
<h1>Index of /FSS-OZR/root/usr/src/kernels/5.14.0-687.31.1.el9_8.x86_64/scripts/genksyms</h1>
  <table>
   <tr><th valign="top">&nbsp;</th><th><a href="?C=N;O=D">Name</a></th><th><a href="?C=M;O=A">Last modified</a></th><th><a href="?C=S;O=A">Size</a></th><th><a href="?C=D;O=A">Description</a></th></tr>
   <tr><th colspan="5"><hr></th></tr>
<tr><td valign="top">&nbsp;</td><td><a href="/FSS-OZR/root/usr/src/kernels/5.14.0-687.31.1.el9_8.x86_64/scripts/">Parent Directory</a>       </td><td>&nbsp;</td><td align="right">  - </td><td>&nbsp;</td></tr>
<tr><td valign="top">&nbsp;</td><td><a href="Makefile">Makefile</a>               </td><td align="right">2026-08-01 06:03  </td><td align="right">929 </td><td>&nbsp;</td></tr>
<tr><td valign="top">&nbsp;</td><td><a href="genksyms">genksyms</a>               </td><td align="right">2026-08-01 06:34  </td><td align="right"> 55K</td><td>&nbsp;</td></tr>
<tr><td valign="top">&nbsp;</td><td><a href="genksyms.c">genksyms.c</a>             </td><td align="right">2026-08-01 06:03  </td><td align="right"> 22K</td><td>&nbsp;</td></tr>
<tr><td valign="top">&nbsp;</td><td><a href="genksyms.h">genksyms.h</a>             </td><td align="right">2026-08-01 06:03  </td><td align="right">2.1K</td><td>&nbsp;</td></tr>
<tr><td valign="top">&nbsp;</td><td><a href="keywords.c">keywords.c</a>             </td><td align="right">2026-08-01 06:03  </td><td align="right">2.2K</td><td>&nbsp;</td></tr>
<tr><td valign="top">&nbsp;</td><td><a href="lex.l">lex.l</a>                  </td><td align="right">2026-08-01 06:03  </td><td align="right">8.3K</td><td>&nbsp;</td></tr>
<tr><td valign="top">&nbsp;</td><td><a href="lex.lex.c">lex.lex.c</a>              </td><td align="right">2026-08-01 06:03  </td><td align="right"> 56K</td><td>&nbsp;</td></tr>
<tr><td valign="top">&nbsp;</td><td><a href="parse.tab.c">parse.tab.c</a>            </td><td align="right">2026-08-01 06:03  </td><td align="right"> 75K</td><td>&nbsp;</td></tr>
<tr><td valign="top">&nbsp;</td><td><a href="parse.tab.h">parse.tab.h</a>            </td><td align="right">2026-08-01 06:03  </td><td align="right">4.9K</td><td>&nbsp;</td></tr>
<tr><td valign="top">&nbsp;</td><td><a href="parse.y">parse.y</a>                </td><td align="right">2026-08-01 06:03  </td><td align="right"> 11K</td><td>&nbsp;</td></tr>
   <tr><th colspan="5"><hr></th></tr>
</table>
</body><