mirror of
https://gitlab.com/apparmor/apparmor
synced 2025-08-22 10:07:12 +00:00
The _aa_dirat_for_each() function used the DIR * type for its first parameter. It then switched back and forth between the directory file descriptors, retrieved with dirfd(), and directory streams, retrieved with fdopendir(), when making syscalls and calling the call back function. This patch greatly simplifies the function by simply using directory file descriptors. No functionality is lost since callers can still easily use the function after calling dirfd() to retrieve the underlying file descriptor. Signed-off-by: Tyler Hicks <tyhicks@canonical.com> Acked-by: Seth Arnold <seth.arnold@canonical.com>
39 lines
1.1 KiB
C
39 lines
1.1 KiB
C
/*
|
|
* Copyright 2014 Canonical Ltd.
|
|
*
|
|
* The libapparmor library is licensed under the terms of the GNU
|
|
* Lesser General Public License, version 2.1. Please see the file
|
|
* COPYING.LGPL.
|
|
*
|
|
* This library is distributed in the hope that it will be useful,
|
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
* GNU Lesser General Public License for more details.
|
|
*
|
|
* You should have received a copy of the GNU Lesser General Public License
|
|
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
*/
|
|
|
|
#ifndef _SYS_APPARMOR_PRIVATE_H
|
|
#define _SYS_APPARMOR_PRIVATE_H 1
|
|
|
|
#include <stdio.h>
|
|
#include <sys/stat.h>
|
|
|
|
__BEGIN_DECLS
|
|
|
|
int _aa_is_blacklisted(const char *name, const char *path);
|
|
|
|
void _aa_autofree(void *p);
|
|
void _aa_autoclose(int *fd);
|
|
void _aa_autofclose(FILE **f);
|
|
|
|
int _aa_asprintf(char **strp, const char *fmt, ...);
|
|
|
|
int _aa_dirat_for_each(int dirfd, const char *name, void *data,
|
|
int (* cb)(int, const char *, struct stat *, void *));
|
|
|
|
__END_DECLS
|
|
|
|
#endif /* sys/apparmor_private.h */
|