Changeset 292
- Timestamp:
- 07/11/07 14:45:49 (1 year ago)
- Files:
-
- upstream/selinux/checkpolicy/ChangeLog (modified) (1 diff)
- upstream/selinux/checkpolicy/Makefile (modified) (1 diff)
- upstream/selinux/checkpolicy/VERSION (modified) (1 diff)
- upstream/selinux/checkpolicy/checkmodule.8 (modified) (1 diff)
- upstream/selinux/checkpolicy/checkpolicy.8 (modified) (1 diff)
- upstream/selinux/checkpolicy/module_compiler.c (modified) (2 diffs)
- upstream/selinux/libselinux/ChangeLog (modified) (1 diff)
- upstream/selinux/libselinux/Makefile (modified) (1 diff)
- upstream/selinux/libselinux/VERSION (modified) (1 diff)
- upstream/selinux/libselinux/include/Makefile (modified) (1 diff)
- upstream/selinux/libselinux/include/selinux/avc.h (modified) (20 diffs)
- upstream/selinux/libselinux/include/selinux/label.h (added)
- upstream/selinux/libselinux/include/selinux/selinux.h (modified) (20 diffs)
- upstream/selinux/libselinux/man/Makefile (modified) (1 diff)
- upstream/selinux/libselinux/man/man3/avc_add_callback.3 (modified) (2 diffs)
- upstream/selinux/libselinux/man/man3/avc_cache_stats.3 (modified) (2 diffs)
- upstream/selinux/libselinux/man/man3/avc_compute_create.3 (modified) (1 diff)
- upstream/selinux/libselinux/man/man3/avc_context_to_sid.3 (modified) (2 diffs)
- upstream/selinux/libselinux/man/man3/avc_has_perm.3 (modified) (2 diffs)
- upstream/selinux/libselinux/man/man3/avc_init.3 (modified) (2 diffs)
- upstream/selinux/libselinux/man/man3/freecon.3 (modified) (1 diff)
- upstream/selinux/libselinux/man/man3/get_ordered_context_list.3 (modified) (1 diff)
- upstream/selinux/libselinux/man/man3/getcon.3 (modified) (1 diff)
- upstream/selinux/libselinux/man/man3/getexeccon.3 (modified) (1 diff)
- upstream/selinux/libselinux/man/man3/getfilecon.3 (modified) (1 diff)
- upstream/selinux/libselinux/man/man3/getfscreatecon.3 (modified) (1 diff)
- upstream/selinux/libselinux/man/man3/getseuserbyname.3 (modified) (1 diff)
- upstream/selinux/libselinux/man/man3/is_selinux_enabled.3 (modified) (2 diffs)
- upstream/selinux/libselinux/man/man3/matchmediacon.3 (modified) (1 diff)
- upstream/selinux/libselinux/man/man3/matchpathcon.3 (modified) (1 diff)
- upstream/selinux/libselinux/man/man3/security_check_context.3 (modified) (2 diffs)
- upstream/selinux/libselinux/man/man3/security_class_to_string.3 (modified) (1 diff)
- upstream/selinux/libselinux/man/man3/security_compute_av.3 (modified) (1 diff)
- upstream/selinux/libselinux/man/man3/security_getenforce.3 (modified) (2 diffs)
- upstream/selinux/libselinux/man/man3/security_load_policy.3 (modified) (1 diff)
- upstream/selinux/libselinux/man/man3/security_policyvers.3 (modified) (1 diff)
- upstream/selinux/libselinux/man/man3/selabel_close.3 (added)
- upstream/selinux/libselinux/man/man3/selabel_lookup.3 (added)
- upstream/selinux/libselinux/man/man3/selabel_open.3 (added)
- upstream/selinux/libselinux/man/man3/selabel_stats.3 (added)
- upstream/selinux/libselinux/man/man3/selinux_check_securetty_context.3 (modified) (1 diff)
- upstream/selinux/libselinux/man/man3/selinux_getenforcemode.3 (modified) (1 diff)
- upstream/selinux/libselinux/man/man3/selinux_policy_root.3 (modified) (1 diff)
- upstream/selinux/libselinux/man/man3/selinux_set_callback.3 (added)
- upstream/selinux/libselinux/man/man3/setfilecon.3 (modified) (1 diff)
- upstream/selinux/libselinux/man/man5 (added)
- upstream/selinux/libselinux/man/man5/selabel_file.5 (added)
- upstream/selinux/libselinux/man/man5/selabel_media.5 (added)
- upstream/selinux/libselinux/man/man5/selabel_x.5 (added)
- upstream/selinux/libselinux/man/man8/matchpathcon.8 (modified) (1 diff)
- upstream/selinux/libselinux/src/Makefile (modified) (4 diffs)
- upstream/selinux/libselinux/src/avc.c (modified) (8 diffs)
- upstream/selinux/libselinux/src/avc_internal.c (modified) (2 diffs)
- upstream/selinux/libselinux/src/avc_internal.h (modified) (1 diff)
- upstream/selinux/libselinux/src/callbacks.c (added)
- upstream/selinux/libselinux/src/callbacks.h (added)
- upstream/selinux/libselinux/src/checkAccess.c (modified) (1 diff)
- upstream/selinux/libselinux/src/compute_av.c (modified) (3 diffs)
- upstream/selinux/libselinux/src/compute_create.c (modified) (2 diffs)
- upstream/selinux/libselinux/src/compute_member.c (modified) (2 diffs)
- upstream/selinux/libselinux/src/compute_relabel.c (modified) (2 diffs)
- upstream/selinux/libselinux/src/fgetfilecon.c (modified) (1 diff)
- upstream/selinux/libselinux/src/fsetfilecon.c (modified) (1 diff)
- upstream/selinux/libselinux/src/getfilecon.c (modified) (1 diff)
- upstream/selinux/libselinux/src/init.c (modified) (5 diffs)
- upstream/selinux/libselinux/src/label.c (added)
- upstream/selinux/libselinux/src/label_file.c (added)
- upstream/selinux/libselinux/src/label_internal.h (added)
- upstream/selinux/libselinux/src/label_media.c (added)
- upstream/selinux/libselinux/src/label_x.c (added)
- upstream/selinux/libselinux/src/lgetfilecon.c (modified) (1 diff)
- upstream/selinux/libselinux/src/load_policy.c (modified) (9 diffs)
- upstream/selinux/libselinux/src/mapping.c (added)
- upstream/selinux/libselinux/src/mapping.h (added)
- upstream/selinux/libselinux/src/matchpathcon.c (modified) (14 diffs)
- upstream/selinux/libselinux/src/policy.h (modified) (1 diff)
- upstream/selinux/libselinux/src/policyvers.c (modified) (1 diff)
- upstream/selinux/libselinux/src/selinux.py (modified) (4 diffs)
- upstream/selinux/libselinux/src/selinuxswig.i (modified) (2 diffs)
- upstream/selinux/libselinux/src/selinuxswig_python.i (added)
- upstream/selinux/libselinux/src/selinuxswig_wrap.c (modified) (45 diffs)
- upstream/selinux/libselinux/src/setrans_client.c (modified) (3 diffs)
- upstream/selinux/libselinux/src/stringrep.c (added)
- upstream/selinux/libselinux/utils/Makefile (modified) (2 diffs)
- upstream/selinux/libsemanage/ChangeLog (modified) (1 diff)
- upstream/selinux/libsemanage/VERSION (modified) (1 diff)
- upstream/selinux/libsemanage/include/Makefile (modified) (1 diff)
- upstream/selinux/libsemanage/man/man3/semanage_bool.3 (modified) (1 diff)
- upstream/selinux/libsemanage/man/man3/semanage_bool_set_active.3 (modified) (1 diff)
- upstream/selinux/libsemanage/man/man3/semanage_count.3 (modified) (1 diff)
- upstream/selinux/libsemanage/man/man3/semanage_del.3 (modified) (1 diff)
- upstream/selinux/libsemanage/man/man3/semanage_exists.3 (modified) (1 diff)
- upstream/selinux/libsemanage/man/man3/semanage_fcontext.3 (modified) (1 diff)
- upstream/selinux/libsemanage/man/man3/semanage_iface.3 (modified) (1 diff)
- upstream/selinux/libsemanage/man/man3/semanage_iterate.3 (modified) (1 diff)
- upstream/selinux/libsemanage/man/man3/semanage_list.3 (modified) (1 diff)
- upstream/selinux/libsemanage/man/man3/semanage_modify.3 (modified) (1 diff)
- upstream/selinux/libsemanage/man/man3/semanage_node.3 (modified) (1 diff)
- upstream/selinux/libsemanage/man/man3/semanage_port.3 (modified) (1 diff)
- upstream/selinux/libsemanage/man/man3/semanage_query.3 (modified) (1 diff)
- upstream/selinux/libsemanage/man/man3/semanage_seuser.3 (modified) (1 diff)
- upstream/selinux/libsemanage/man/man3/semanage_user.3 (modified) (1 diff)
- upstream/selinux/libsemanage/src/Makefile (modified) (1 diff)
- upstream/selinux/libsemanage/src/booleans_activedb.c (modified) (2 diffs)
- upstream/selinux/libsemanage/src/direct_api.c (modified) (1 diff)
- upstream/selinux/libsepol/ChangeLog (modified) (1 diff)
- upstream/selinux/libsepol/VERSION (modified) (1 diff)
- upstream/selinux/libsepol/include/Makefile (modified) (1 diff)
- upstream/selinux/libsepol/man/man3/sepol_check_context.3 (modified) (1 diff)
- upstream/selinux/libsepol/src/Makefile (modified) (1 diff)
- upstream/selinux/libsepol/src/context.c (modified) (1 diff)
- upstream/selinux/libsepol/src/context_record.c (modified) (2 diffs)
- upstream/selinux/libsepol/src/sidtab.c (modified) (1 diff)
- upstream/selinux/libsepol/utils/Makefile (modified) (1 diff)
- upstream/selinux/policycoreutils/ChangeLog (modified) (1 diff)
- upstream/selinux/policycoreutils/Makefile (modified) (1 diff)
- upstream/selinux/policycoreutils/VERSION (modified) (1 diff)
- upstream/selinux/policycoreutils/audit2why/Makefile (modified) (3 diffs)
- upstream/selinux/policycoreutils/load_policy/Makefile (modified) (1 diff)
- upstream/selinux/policycoreutils/load_policy/load_policy.8 (modified) (1 diff)
- upstream/selinux/policycoreutils/load_policy/load_policy.c (modified) (4 diffs)
- upstream/selinux/policycoreutils/newrole/Makefile (modified) (3 diffs)
- upstream/selinux/policycoreutils/newrole/hashtab.c (added)
- upstream/selinux/policycoreutils/newrole/hashtab.h (added)
- upstream/selinux/policycoreutils/newrole/newrole.1 (modified) (3 diffs)
- upstream/selinux/policycoreutils/newrole/newrole.c (modified) (7 diffs)
- upstream/selinux/policycoreutils/restorecond/Makefile (modified) (2 diffs)
- upstream/selinux/policycoreutils/restorecond/restorecond.init (modified) (1 diff)
- upstream/selinux/policycoreutils/run_init/Makefile (modified) (2 diffs)
- upstream/selinux/policycoreutils/scripts/chcat (modified) (2 diffs)
- upstream/selinux/policycoreutils/scripts/fixfiles (modified) (1 diff)
- upstream/selinux/policycoreutils/scripts/genhomedircon (modified) (9 diffs)
- upstream/selinux/policycoreutils/secon/Makefile (modified) (2 diffs)
- upstream/selinux/policycoreutils/semanage/semanage (modified) (1 diff)
- upstream/selinux/policycoreutils/semodule/Makefile (modified) (1 diff)
- upstream/selinux/policycoreutils/semodule_deps/Makefile (modified) (1 diff)
- upstream/selinux/policycoreutils/semodule_expand/Makefile (modified) (1 diff)
- upstream/selinux/policycoreutils/semodule_link/Makefile (modified) (1 diff)
- upstream/selinux/policycoreutils/semodule_package/Makefile (modified) (1 diff)
- upstream/selinux/policycoreutils/sestatus/Makefile (modified) (2 diffs)
- upstream/selinux/policycoreutils/setfiles/Makefile (modified) (2 diffs)
- upstream/selinux/policycoreutils/setfiles/restorecon.8 (added)
- upstream/selinux/policycoreutils/setfiles/setfiles.c (modified) (23 diffs)
- upstream/selinux/policycoreutils/setsebool/Makefile (modified) (1 diff)
- upstream/selinux/policycoreutils/setsebool/setsebool.c (modified) (6 diffs)
- upstream/selinux/scripts (added)
- upstream/selinux/scripts/Lindent (added)
- upstream/selinux/scripts/selinux-maint (added)
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
upstream/selinux/checkpolicy/ChangeLog
r234 r292 1 2.0.3 2007-05-31 2 * Merged fix for segfault on duplicate require of sensitivity from Caleb Case. 3 * Merged fix for dead URLs in checkpolicy man pages from Dan Walsh. 4 1 5 2.0.2 2007-04-12 2 6 * Merged checkmodule man page fix from Dan Walsh. upstream/selinux/checkpolicy/Makefile
r10 r292 59 59 60 60 indent: 61 ../ Lindent $(filter-out $(GENERATED),$(wildcard *.[ch]))61 ../scripts/Lindent $(filter-out $(GENERATED),$(wildcard *.[ch])) upstream/selinux/checkpolicy/VERSION
r234 r292 1 2.0. 21 2.0.3 upstream/selinux/checkpolicy/checkmodule.8
r234 r292 48 48 .SH "SEE ALSO" 49 49 .B semodule(8), semodule_package(8) 50 SELinux documentation at http://www.nsa.gov/selinux /docs.html,50 SELinux documentation at http://www.nsa.gov/selinux, 51 51 especially "Configuring the SELinux Policy". 52 52 upstream/selinux/checkpolicy/checkpolicy.8
r10 r292 35 35 36 36 .SH "SEE ALSO" 37 SELinux documentation at http://www.nsa.gov/selinux /docs.html,37 SELinux documentation at http://www.nsa.gov/selinux, 38 38 especially "Configuring the SELinux Policy". 39 39 upstream/selinux/checkpolicy/module_compiler.c
r28 r292 143 143 key); 144 144 assert(s != NULL); 145 *dest_value = s->value; 145 146 if (symbol_type == SYM_LEVELS) { 147 *dest_value = ((level_datum_t *)s)->level->sens; 148 } else { 149 *dest_value = s->value; 150 } 146 151 } else if (retval == -2) { 147 152 return -2; … … 497 502 key); 498 503 assert(s != NULL); 499 *dest_value = s->value; 504 505 if (symbol_type == SYM_LEVELS) { 506 *dest_value = ((level_datum_t *)s)->level->sens; 507 } else { 508 *dest_value = s->value; 509 } 500 510 } else if (retval == -2) { 501 511 /* ignore require statements if that symbol was upstream/selinux/libselinux/ChangeLog
r234 r292 1 2.0.24 2007-09-07 2 * Fix for getfilecon() for zero-length contexts from Stephen Smalley. 3 4 2.0.23 2007-06-22 5 * Refactored SWIG bindings from James Athey. 6 7 2.0.22 2007-06-20 8 * Labeling and callback interface patches from Eamon Walsh. 9 10 2.0.21 2007-06-11 11 * Class and permission mapping support patches from Eamon Walsh. 12 13 2.0.20 2007-06-07 14 * Object class discovery support patches from Chris PeBenito. 15 16 2.0.19 2007-06-05 17 * Refactoring and errno support in string representation code. 18 19 2.0.18 2007-05-31 20 * Merged patch to reduce size of libselinux and remove need for libsepol for embedded systems from Yuichi Nakamura. 21 This patch also turns the link-time dependency on libsepol into a runtime (dlopen) dependency even in the non-embedded case. 22 23 2.0.17 2007-05-31 24 * Updated Lindent script and reindented two header files. 25 26 2.0.16 2007-05-09 27 * Merged additional swig python bindings from Dan Walsh. 28 29 2.0.15 2007-04-27 30 * Merged helpful message when selinuxfs mount fails patch from Dax Kelson. 31 32 2.0.14 2007-04-24 33 * Merged build fix for avc_internal.c from Joshua Brindle. 34 1 35 2.0.13 2007-04-12 2 36 * Merged rpm_execcon python binding fix, matchpathcon man page fix, and getsebool -a handling for EACCES from Dan Walsh. upstream/selinux/libselinux/Makefile
r10 r292 1 DISABLE_AVC ?= n 2 DISABLE_SETRANS ?= n 3 DISABLE_RPM ?= n 4 DISABLE_BOOL ?= n 5 ifeq ($(EMBEDDED),y) 6 override DISABLE_AVC=y 7 override DISABLE_SETRANS=y 8 override DISABLE_RPM=y 9 override DISABLE_BOOL=y 10 endif 11 ifeq ($(DISABLE_BOOL),y) 12 EMFLAGS+= -DDISABLE_BOOL 13 endif 14 ifeq ($(DISABLE_SETRANS),y) 15 EMFLAGS+= -DDISABLE_SETRANS 16 endif 17 export DISABLE_AVC DISABLE_SETRANS DISABLE_RPM DISABLE_BOOL EMFLAGS 18 1 19 all: 2 20 $(MAKE) -C src upstream/selinux/libselinux/VERSION
r234 r292 1 2.0. 131 2.0.24 upstream/selinux/libselinux/include/Makefile
r10 r292 8 8 9 9 indent: 10 ../../ Lindent $(wildcard selinux/*.h)10 ../../scripts/Lindent $(wildcard selinux/*.h) 11 11 upstream/selinux/libselinux/include/selinux/avc.h
r234 r292 19 19 * SID format and operations 20 20 */ 21 struct security_id {22 security_context_t ctx;23 unsigned int refcnt;24 };25 typedef struct security_id *security_id_t;21 struct security_id { 22 security_context_t ctx; 23 unsigned int refcnt; 24 }; 25 typedef struct security_id *security_id_t; 26 26 27 27 #define SECSID_WILD (security_id_t)NULL /* unspecified SID */ … … 38 38 * available to make the copy, or %EINVAL if the input SID is invalid. 39 39 */ 40 int avc_sid_to_context(security_id_t sid, security_context_t * ctx);41 int avc_sid_to_context_raw(security_id_t sid, security_context_t * ctx);40 int avc_sid_to_context(security_id_t sid, security_context_t * ctx); 41 int avc_sid_to_context_raw(security_id_t sid, security_context_t * ctx); 42 42 43 43 /** … … 52 52 * returning %0 on success or -%1 on error with @errno set. 53 53 */ 54 int avc_context_to_sid(security_context_t ctx, security_id_t * sid);55 int avc_context_to_sid_raw(security_context_t ctx, security_id_t * sid);54 int avc_context_to_sid(security_context_t ctx, security_id_t * sid); 55 int avc_context_to_sid_raw(security_context_t ctx, security_id_t * sid); 56 56 57 57 /** … … 65 65 * increments reference counts. 66 66 */ 67 int sidget(security_id_t sid);67 int sidget(security_id_t sid); 68 68 69 69 /** … … 77 77 * be called to obtain a new SID for the security context. 78 78 */ 79 int sidput(security_id_t sid);79 int sidput(security_id_t sid); 80 80 81 81 /** … … 88 88 * avc_context_to_sid() to get the corresponding SID. 89 89 */ 90 int avc_get_initial_sid(const char *name, security_id_t * sid);90 int avc_get_initial_sid(const char *name, security_id_t * sid); 91 91 92 92 /* 93 93 * AVC entry 94 94 */ 95 struct avc_entry;96 struct avc_entry_ref {97 struct avc_entry *ae;98 };95 struct avc_entry; 96 struct avc_entry_ref { 97 struct avc_entry *ae; 98 }; 99 99 100 100 /** … … 120 120 * If no locking callbacks are passed, no locking will take place. 121 121 */ 122 struct avc_memory_callback {123 /* malloc() equivalent. */124 void *(*func_malloc) (size_t size);125 /* free() equivalent. */126 void (*func_free) (void *ptr);127 /* Note that these functions should set errno on failure.128 If not, some avc routines may return -1 without errno set. */129 };130 131 struct avc_log_callback {132 /* log the printf-style format and arguments. */133 void (*func_log) (const char *fmt, ...);134 /* store a string representation of auditdata (corresponding135 to the given security class) into msgbuf. */136 void (*func_audit) (void *auditdata, security_class_t cls,137 char *msgbuf, size_t msgbufsize);138 };139 140 struct avc_thread_callback {141 /* create and start a thread, returning an opaque pointer to it;142 the thread should run the given function. */143 void *(*func_create_thread) (void (*run) (void));144 /* cancel a given thread and free its resources. */145 void (*func_stop_thread) (void *thread);146 };147 148 struct avc_lock_callback {149 /* create a lock and return an opaque pointer to it. */150 void *(*func_alloc_lock) (void);151 /* obtain a given lock, blocking if necessary. */152 void (*func_get_lock) (void *lock);153 /* release a given lock. */154 void (*func_release_lock) (void *lock);155 /* destroy a given lock (free memory, etc.) */156 void (*func_free_lock) (void *lock);157 };122 struct avc_memory_callback { 123 /* malloc() equivalent. */ 124 void *(*func_malloc) (size_t size); 125 /* free() equivalent. */ 126 void (*func_free) (void *ptr); 127 /* Note that these functions should set errno on failure. 128 If not, some avc routines may return -1 without errno set. */ 129 }; 130 131 struct avc_log_callback { 132 /* log the printf-style format and arguments. */ 133 void (*func_log) (const char *fmt, ...); 134 /* store a string representation of auditdata (corresponding 135 to the given security class) into msgbuf. */ 136 void (*func_audit) (void *auditdata, security_class_t cls, 137 char *msgbuf, size_t msgbufsize); 138 }; 139 140 struct avc_thread_callback { 141 /* create and start a thread, returning an opaque pointer to it; 142 the thread should run the given function. */ 143 void *(*func_create_thread) (void (*run) (void)); 144 /* cancel a given thread and free its resources. */ 145 void (*func_stop_thread) (void *thread); 146 }; 147 148 struct avc_lock_callback { 149 /* create a lock and return an opaque pointer to it. */ 150 void *(*func_alloc_lock) (void); 151 /* obtain a given lock, blocking if necessary. */ 152 void (*func_get_lock) (void *lock); 153 /* release a given lock. */ 154 void (*func_release_lock) (void *lock); 155 /* destroy a given lock (free memory, etc.) */ 156 void (*func_free_lock) (void *lock); 157 }; 158 158 159 159 /* … … 176 176 * structures above). 177 177 */ 178 int avc_init(const char *msgprefix,179 const struct avc_memory_callback *mem_callbacks,180 const struct avc_log_callback *log_callbacks,181 const struct avc_thread_callback *thread_callbacks,182 const struct avc_lock_callback *lock_callbacks);178 int avc_init(const char *msgprefix, 179 const struct avc_memory_callback *mem_callbacks, 180 const struct avc_log_callback *log_callbacks, 181 const struct avc_thread_callback *thread_callbacks, 182 const struct avc_lock_callback *lock_callbacks); 183 183 184 184 /** … … 190 190 * to return memory to the system. 191 191 */ 192 void avc_cleanup(void);192 void avc_cleanup(void); 193 193 194 194 /** … … 200 200 * -%1 with @errno set on error. 201 201 */ 202 int avc_reset(void);202 int avc_reset(void); 203 203 204 204 /** … … 211 211 * User must call avc_init() if further use of AVC is desired. 212 212 */ 213 void avc_destroy(void);213 void avc_destroy(void); 214 214 215 215 /** … … 234 234 * should be released for the auditing. 235 235 */ 236 int avc_has_perm_noaudit(security_id_t ssid, 237 security_id_t tsid, 238 security_class_t tclass, 239 access_vector_t requested, 240 struct avc_entry_ref *aeref, 241 struct av_decision *avd); 236 int avc_has_perm_noaudit(security_id_t ssid, 237 security_id_t tsid, 238 security_class_t tclass, 239 access_vector_t requested, 240 struct avc_entry_ref *aeref, struct av_decision *avd); 242 241 243 242 /** … … 259 258 * are denied or to another value upon other errors. 260 259 */ 261 int avc_has_perm(security_id_t ssid, security_id_t tsid,262 security_class_t tclass, access_vector_t requested,263 struct avc_entry_ref *aeref, void *auditdata);260 int avc_has_perm(security_id_t ssid, security_id_t tsid, 261 security_class_t tclass, access_vector_t requested, 262 struct avc_entry_ref *aeref, void *auditdata); 264 263 265 264 /** … … 282 281 * before calling the auditing code. 283 282 */ 284 void avc_audit(security_id_t ssid, security_id_t tsid,285 security_class_t tclass, access_vector_t requested,286 struct av_decision *avd, int result, void *auditdata);283 void avc_audit(security_id_t ssid, security_id_t tsid, 284 security_class_t tclass, access_vector_t requested, 285 struct av_decision *avd, int result, void *auditdata); 287 286 288 287 /** … … 300 299 * error with @errno set. 301 300 */ 302 int avc_compute_create(security_id_t ssid, 303 security_id_t tsid, 304 security_class_t tclass, 305 security_id_t *newsid); 301 int avc_compute_create(security_id_t ssid, 302 security_id_t tsid, 303 security_class_t tclass, security_id_t * newsid); 306 304 307 305 /* … … 334 332 * -%1 if insufficient memory exists to add the callback. 335 333 */ 336 int avc_add_callback(int (*callback)337 (uint32_t event, security_id_t ssid,338 security_id_t tsid, security_class_t tclass,339 access_vector_t perms,340 access_vector_t * out_retained),341 uint32_t events, security_id_t ssid,342 security_id_t tsid, security_class_t tclass,343 access_vector_t perms);334 int avc_add_callback(int (*callback) 335 (uint32_t event, security_id_t ssid, 336 security_id_t tsid, security_class_t tclass, 337 access_vector_t perms, 338 access_vector_t * out_retained), 339 uint32_t events, security_id_t ssid, 340 security_id_t tsid, security_class_t tclass, 341 access_vector_t perms); 344 342 345 343 /* … … 352 350 #define AVC_CACHE_STATS 1 353 351 354 struct avc_cache_stats {355 unsigned entry_lookups;356 unsigned entry_hits;357 unsigned entry_misses;358 unsigned entry_discards;359 unsigned cav_lookups;360 unsigned cav_hits;361 unsigned cav_probes;362 unsigned cav_misses;363 };352 struct avc_cache_stats { 353 unsigned entry_lookups; 354 unsigned entry_hits; 355 unsigned entry_misses; 356 unsigned entry_discards; 357 unsigned cav_lookups; 358 unsigned cav_hits; 359 unsigned cav_probes; 360 unsigned cav_misses; 361 }; 364 362 365 363 /** … … 372 370 * details. 373 371 */ 374 void avc_cache_stats(struct avc_cache_stats *stats);372 void avc_cache_stats(struct avc_cache_stats *stats); 375 373 376 374 /** … … 381 379 * callback is used to print the message. 382 380 */ 383 void avc_av_stats(void);381 void avc_av_stats(void); 384 382 385 383 /** … … 390 388 * is used to print the message. 391 389 */ 392 void avc_sid_stats(void);390 void avc_sid_stats(void); 393 391 394 392 #ifdef __cplusplus upstream/selinux/libselinux/include/selinux/selinux.h
r234 r292 10 10 11 11 /* Return 1 if we are running on a SELinux kernel, or 0 if not or -1 if we get an error. */ 12 extern int is_selinux_enabled(void);12 extern int is_selinux_enabled(void); 13 13 /* Return 1 if we are running on a SELinux MLS kernel, or 0 otherwise. */ 14 extern int is_selinux_mls_enabled(void);15 16 typedef char *security_context_t;14 extern int is_selinux_mls_enabled(void); 15 16 typedef char *security_context_t; 17 17 18 18 /* Free the memory allocated for a context by any of the below get* calls. */ 19 extern void freecon(security_context_t con);19 extern void freecon(security_context_t con); 20 20 21 21 /* Free the memory allocated for a context array by security_compute_user. */ 22 extern void freeconary(security_context_t * con);22 extern void freeconary(security_context_t * con); 23 23 24 24 /* Wrappers for the /proc/pid/attr API. */ … … 26 26 /* Get current context, and set *con to refer to it. 27 27 Caller must free via freecon. */ 28 extern int getcon(security_context_t * con);29 extern int getcon_raw(security_context_t * con);28 extern int getcon(security_context_t * con); 29 extern int getcon_raw(security_context_t * con); 30 30 31 31 /* Set the current security context to con. … … 37 37 as a result of a setcon() unless policy allows it to use descriptors opened 38 38 by the old context. */ 39 extern int setcon(security_context_t con);40 extern int setcon_raw(security_context_t con);39 extern int setcon(security_context_t con); 40 extern int setcon_raw(security_context_t con); 41 41 42 42 /* Get context of process identified by pid, and 43 43 set *con to refer to it. Caller must free via freecon. */ 44 extern int getpidcon(pid_t pid, security_context_t * con);45 extern int getpidcon_raw(pid_t pid, security_context_t * con);44 extern int getpidcon(pid_t pid, security_context_t * con); 45 extern int getpidcon_raw(pid_t pid, security_context_t * con); 46 46 47 47 /* Get previous context (prior to last exec), and set *con to refer to it. 48 48 Caller must free via freecon. */ 49 extern int getprevcon(security_context_t * con);50 extern int getprevcon_raw(security_context_t * con);49 extern int getprevcon(security_context_t * con); 50 extern int getprevcon_raw(security_context_t * con); 51 51 52 52 /* Get exec context, and set *con to refer to it. 53 53 Sets *con to NULL if no exec context has been set, i.e. using default. 54 54 If non-NULL, caller must free via freecon. */ 55 extern int getexeccon(security_context_t * con);56 extern int getexeccon_raw(security_context_t * con);55 extern int getexeccon(security_context_t * con); 56 extern int getexeccon_raw(security_context_t * con); 57 57 58 58 /* Set exec security context for the next execve. 59 59 Call with NULL if you want to reset to the default. */ 60 extern int setexeccon(security_context_t con);61 extern int setexeccon_raw(security_context_t con);60 extern int setexeccon(security_context_t con); 61 extern int setexeccon_raw(security_context_t con); 62 62 63 63 /* Get fscreate context, and set *con to refer to it. 64 64 Sets *con to NULL if no fs create context has been set, i.e. using default. 65 65 If non-NULL, caller must free via freecon. */ 66 extern int getfscreatecon(security_context_t * con);67 extern int getfscreatecon_raw(security_context_t * con);66 extern int getfscreatecon(security_context_t * con); 67 extern int getfscreatecon_raw(security_context_t * con); 68 68 69 69 /* Set the fscreate security context for subsequent file creations. 70 70 Call with NULL if you want to reset to the default. */ 71 extern int setfscreatecon(security_context_t context);72 extern int setfscreatecon_raw(security_context_t context);71 extern int setfscreatecon(security_context_t context); 72 extern int setfscreatecon_raw(security_context_t context); 73 73 74 74 /* Get keycreate context, and set *con to refer to it. 75 75 Sets *con to NULL if no key create context has been set, i.e. using default. 76 76 If non-NULL, caller must free via freecon. */ 77 extern int getkeycreatecon(security_context_t * con);78 extern int getkeycreatecon_raw(security_context_t * con);77 extern int getkeycreatecon(security_context_t * con); 78 extern int getkeycreatecon_raw(security_context_t * con); 79 79 80 80 /* Set the keycreate security context for subsequent key creations. 81 81 Call with NULL if you want to reset to the default. */ 82 extern int setkeycreatecon(security_context_t context);83 extern int setkeycreatecon_raw(security_context_t context);82 extern int setkeycreatecon(security_context_t context); 83 extern int setkeycreatecon_raw(security_context_t context); 84 84 85 85 /* Get sockcreate context, and set *con to refer to it. 86 86 Sets *con to NULL if no socket create context has been set, i.e. using default. 87 87 If non-NULL, caller must free via freecon. */ 88 extern int getsockcreatecon(security_context_t * con);89
