diff options
author | Christopher Faylor <me@cgf.cx> | 2000-09-08 02:56:55 +0000 |
---|---|---|
committer | Christopher Faylor <me@cgf.cx> | 2000-09-08 02:56:55 +0000 |
commit | f0338f545d769143f542338b4d61f771b5a87f93 (patch) | |
tree | b9d5b53c28100c35e10c0232c0e54ce474d6cc7c /winsup/cygwin/security.h | |
parent | 42b6d9648fdd3f78806ac0556338f8fb13707821 (diff) | |
download | newlib-f0338f545d769143f542338b4d61f771b5a87f93.zip newlib-f0338f545d769143f542338b4d61f771b5a87f93.tar.gz newlib-f0338f545d769143f542338b4d61f771b5a87f93.tar.bz2 |
Break out more header info into separate files. Use appropriate header files
throughout.
* shared.h: Remove.
* cygwin_version.h: New file.
* delqueue.h: New file.
* environ.h: New file.
* host_dependent.h: New file.
* perprocess.h: New file.
* registry.h: New file.
* security.h: New file.
Diffstat (limited to 'winsup/cygwin/security.h')
-rw-r--r-- | winsup/cygwin/security.h | 40 |
1 files changed, 40 insertions, 0 deletions
diff --git a/winsup/cygwin/security.h b/winsup/cygwin/security.h new file mode 100644 index 0000000..b6397fe --- /dev/null +++ b/winsup/cygwin/security.h @@ -0,0 +1,40 @@ +/* security.h: security declarations + + Copyright 2000 Red Hat, Inc. + +This file is part of Cygwin. + +This software is a copyrighted work licensed under the terms of the +Cygwin license. Please consult the file "CYGWIN_LICENSE" for +details. */ + +/* File manipulation */ +int __stdcall set_process_privileges (); +int __stdcall get_file_attribute (int, const char *, int *, + uid_t * = NULL, gid_t * = NULL); +int __stdcall set_file_attribute (int, const char *, int); +int __stdcall set_file_attribute (int, const char *, uid_t, gid_t, int, const char *); +extern BOOL allow_ntsec; + +/* `lookup_name' should be called instead of LookupAccountName. + * logsrv may be NULL, in this case only the local system is used for lookup. + * The buffer for ret_sid (40 Bytes) has to be allocated by the caller! */ +BOOL __stdcall lookup_name (const char *, const char *, PSID); +char *__stdcall convert_sid_to_string_sid (PSID, char *); +PSID __stdcall convert_string_sid_to_sid (PSID, const char *); +BOOL __stdcall get_pw_sid (PSID, struct passwd *); + +/* Retrieve a security descriptor that allows all access */ +SECURITY_DESCRIPTOR *__stdcall get_null_sd (void); + +int __stdcall get_id_from_sid (PSID, BOOL); +extern inline int get_uid_from_sid (PSID psid) { return get_id_from_sid (psid, FALSE);} +extern inline int get_gid_from_sid (PSID psid) { return get_id_from_sid (psid, TRUE); } + +/* Various types of security attributes for use in Create* functions. */ +extern SECURITY_ATTRIBUTES sec_none, sec_none_nih, sec_all, sec_all_nih; +extern SECURITY_ATTRIBUTES *__stdcall sec_user (PVOID sa_buf, PSID sid2 = NULL, BOOL inherit = TRUE); +extern SECURITY_ATTRIBUTES *__stdcall sec_user_nih (PVOID sa_buf, PSID sid2 = NULL); + +int __stdcall NTReadEA (const char *file, const char *attrname, char *buf, int len); +BOOL __stdcall NTWriteEA (const char *file, const char *attrname, char *buf, int len); |