Buckets:
| /* keyutils.h: key utility library interface | |
| * | |
| * Copyright (C) 2005,2011 Red Hat, Inc. All Rights Reserved. | |
| * Written by David Howells (dhowells@redhat.com) | |
| * | |
| * This program is free software; you can redistribute it and/or | |
| * modify it under the terms of the GNU Lesser General Public License | |
| * as published by the Free Software Foundation; either version | |
| * 2 of the License, or (at your option) any later version. | |
| */ | |
| extern "C" { | |
| extern const char keyutils_version_string[]; | |
| extern const char keyutils_build_string[]; | |
| /* key serial number */ | |
| typedef int32_t key_serial_t; | |
| /* special process keyring shortcut IDs */ | |
| /* request-key default keyrings */ | |
| /* key handle permissions mask */ | |
| typedef uint32_t key_perm_t; | |
| /* keyctl commands */ | |
| /* keyctl structures */ | |
| struct keyctl_dh_params { | |
| key_serial_t priv; | |
| key_serial_t prime; | |
| key_serial_t base; | |
| }; | |
| struct keyctl_kdf_params { | |
| char *hashname; | |
| char *otherinfo; | |
| uint32_t otherinfolen; | |
| uint32_t __spare[8]; | |
| }; | |
| struct keyctl_pkey_query { | |
| unsigned int supported_ops; /* Which ops are supported */ | |
| unsigned int key_size; /* Size of the key in bits */ | |
| unsigned short max_data_size; /* Maximum size of raw data to sign in bytes */ | |
| unsigned short max_sig_size; /* Maximum size of signature in bytes */ | |
| unsigned short max_enc_size; /* Maximum size of encrypted blob in bytes */ | |
| unsigned short max_dec_size; /* Maximum size of decrypted blob in bytes */ | |
| unsigned int __spare[10]; | |
| }; | |
| struct keyctl_pkey_params { | |
| key_serial_t key_id; /* Serial no. of public key to use */ | |
| unsigned int in_len; /* Input data size */ | |
| union { | |
| unsigned int out_len; /* Output buffer size (encrypt/decrypt/sign) */ | |
| unsigned int in2_len; /* Second input data size (verify) */ | |
| }; | |
| unsigned int __spare[7]; | |
| }; | |
| /* | |
| * Capabilities flags. The capabilities list is an array of 8-bit integers; | |
| * each integer can carry up to 8 flags. | |
| */ | |
| /* | |
| * syscall wrappers | |
| */ | |
| extern key_serial_t add_key(const char *type, | |
| const char *description, | |
| const void *payload, | |
| size_t plen, | |
| key_serial_t ringid); | |
| extern key_serial_t request_key(const char *type, | |
| const char *description, | |
| const char *callout_info, | |
| key_serial_t destringid); | |
| extern long keyctl(int cmd, ...); | |
| /* | |
| * keyctl function wrappers | |
| */ | |
| extern key_serial_t keyctl_get_keyring_ID(key_serial_t id, int create); | |
| extern key_serial_t keyctl_join_session_keyring(const char *name); | |
| extern long keyctl_update(key_serial_t id, const void *payload, size_t plen); | |
| extern long keyctl_revoke(key_serial_t id); | |
| extern long keyctl_chown(key_serial_t id, uid_t uid, gid_t gid); | |
| extern long keyctl_setperm(key_serial_t id, key_perm_t perm); | |
| extern long keyctl_describe(key_serial_t id, char *buffer, size_t buflen); | |
| extern long keyctl_clear(key_serial_t ringid); | |
| extern long keyctl_link(key_serial_t id, key_serial_t ringid); | |
| extern long keyctl_unlink(key_serial_t id, key_serial_t ringid); | |
| extern long keyctl_search(key_serial_t ringid, | |
| const char *type, | |
| const char *description, | |
| key_serial_t destringid); | |
| extern long keyctl_read(key_serial_t id, char *buffer, size_t buflen); | |
| extern long keyctl_instantiate(key_serial_t id, | |
| const void *payload, | |
| size_t plen, | |
| key_serial_t ringid); | |
| extern long keyctl_negate(key_serial_t id, unsigned timeout, key_serial_t ringid); | |
| extern long keyctl_set_reqkey_keyring(int reqkey_defl); | |
| extern long keyctl_set_timeout(key_serial_t key, unsigned timeout); | |
| extern long keyctl_assume_authority(key_serial_t key); | |
| extern long keyctl_get_security(key_serial_t key, char *buffer, size_t buflen); | |
| extern long keyctl_session_to_parent(void); | |
| extern long keyctl_reject(key_serial_t id, unsigned timeout, unsigned error, | |
| key_serial_t ringid); | |
| struct iovec; | |
| extern long keyctl_instantiate_iov(key_serial_t id, | |
| const struct iovec *payload_iov, | |
| unsigned ioc, | |
| key_serial_t ringid); | |
| extern long keyctl_invalidate(key_serial_t id); | |
| extern long keyctl_get_persistent(uid_t uid, key_serial_t id); | |
| extern long keyctl_dh_compute(key_serial_t priv, key_serial_t prime, | |
| key_serial_t base, char *buffer, size_t buflen); | |
| extern long keyctl_dh_compute_kdf(key_serial_t priv, key_serial_t prime, | |
| key_serial_t base, char *hashname, | |
| char *otherinfo, size_t otherinfolen, | |
| char *buffer, size_t buflen); | |
| extern long keyctl_restrict_keyring(key_serial_t keyring, const char *type, | |
| const char *restriction); | |
| extern long keyctl_pkey_query(key_serial_t key_id, | |
| const char *info, | |
| struct keyctl_pkey_query *result); | |
| extern long keyctl_pkey_encrypt(key_serial_t key_id, | |
| const char *info, | |
| const void *data, size_t data_len, | |
| void *enc, size_t enc_len); | |
| extern long keyctl_pkey_decrypt(key_serial_t key_id, | |
| const char *info, | |
| const void *enc, size_t enc_len, | |
| void *data, size_t data_len); | |
| extern long keyctl_pkey_sign(key_serial_t key_id, | |
| const char *info, | |
| const void *data, size_t data_len, | |
| void *sig, size_t sig_len); | |
| extern long keyctl_pkey_verify(key_serial_t key_id, | |
| const char *info, | |
| const void *data, size_t data_len, | |
| const void *sig, size_t sig_len); | |
| extern long keyctl_move(key_serial_t id, | |
| key_serial_t from_ringid, | |
| key_serial_t to_ringid, | |
| unsigned int flags); | |
| extern long keyctl_capabilities(unsigned char *buffer, size_t buflen); | |
| extern long keyctl_watch_key(key_serial_t id, int watch_queue_fd, int watch_id); | |
| /* | |
| * utilities | |
| */ | |
| extern int keyctl_describe_alloc(key_serial_t id, char **_buffer); | |
| extern int keyctl_read_alloc(key_serial_t id, void **_buffer); | |
| extern int keyctl_get_security_alloc(key_serial_t id, char **_buffer); | |
| extern int keyctl_dh_compute_alloc(key_serial_t priv, key_serial_t prime, | |
| key_serial_t base, void **_buffer); | |
| typedef int (*recursive_key_scanner_t)(key_serial_t parent, key_serial_t key, | |
| char *desc, int desc_len, void *data); | |
| extern int recursive_key_scan(key_serial_t key, recursive_key_scanner_t func, void *data); | |
| extern int recursive_session_key_scan(recursive_key_scanner_t func, void *data); | |
| extern key_serial_t find_key_by_type_and_desc(const char *type, const char *desc, | |
| key_serial_t destringid); | |
| } | |
Xet Storage Details
- Size:
- 11.8 kB
- Xet hash:
- 4cf3f3930b84b1f40997e8ff7f094633f80bf1ff807da40b718719c0b6c7a4f8
·
Xet efficiently stores files, intelligently splitting them into unique chunks and accelerating uploads and downloads. More info.