mirror of
https://github.com/samba-team/samba.git
synced 2025-01-21 18:04:06 +03:00
s3: make idl
metze
This commit is contained in:
parent
1e80221b23
commit
07ee1a6e14
@ -240,7 +240,7 @@ interface security
|
||||
} sec_privilege;
|
||||
|
||||
|
||||
typedef [bitmap8bit] bitmap {
|
||||
typedef [public,bitmap8bit] bitmap {
|
||||
SEC_ACE_FLAG_OBJECT_INHERIT = 0x01,
|
||||
SEC_ACE_FLAG_CONTAINER_INHERIT = 0x02,
|
||||
SEC_ACE_FLAG_NO_PROPAGATE_INHERIT = 0x04,
|
||||
@ -251,7 +251,7 @@ interface security
|
||||
SEC_ACE_FLAG_FAILED_ACCESS = 0x80
|
||||
} security_ace_flags;
|
||||
|
||||
typedef [enum8bit] enum {
|
||||
typedef [public,enum8bit] enum {
|
||||
SEC_ACE_TYPE_ACCESS_ALLOWED = 0,
|
||||
SEC_ACE_TYPE_ACCESS_DENIED = 1,
|
||||
SEC_ACE_TYPE_SYSTEM_AUDIT = 2,
|
||||
@ -288,7 +288,7 @@ interface security
|
||||
[switch_is(flags & SEC_ACE_INHERITED_OBJECT_TYPE_PRESENT)] security_ace_object_inherited_type inherited_type;
|
||||
} security_ace_object;
|
||||
|
||||
typedef [nodiscriminant] union {
|
||||
typedef [public,nodiscriminant] union {
|
||||
[case(SEC_ACE_TYPE_ACCESS_ALLOWED_OBJECT)] security_ace_object object;
|
||||
[case(SEC_ACE_TYPE_ACCESS_DENIED_OBJECT)] security_ace_object object;
|
||||
[case(SEC_ACE_TYPE_SYSTEM_AUDIT_OBJECT)] security_ace_object object;
|
||||
|
@ -5,13 +5,13 @@
|
||||
|
||||
#include "librpc/gen_ndr/ndr_misc.h"
|
||||
#include "librpc/gen_ndr/ndr_dom_sid.h"
|
||||
static enum ndr_err_code ndr_push_security_ace_flags(struct ndr_push *ndr, int ndr_flags, uint8_t r)
|
||||
_PUBLIC_ enum ndr_err_code ndr_push_security_ace_flags(struct ndr_push *ndr, int ndr_flags, uint8_t r)
|
||||
{
|
||||
NDR_CHECK(ndr_push_uint8(ndr, NDR_SCALARS, r));
|
||||
return NDR_ERR_SUCCESS;
|
||||
}
|
||||
|
||||
static enum ndr_err_code ndr_pull_security_ace_flags(struct ndr_pull *ndr, int ndr_flags, uint8_t *r)
|
||||
_PUBLIC_ enum ndr_err_code ndr_pull_security_ace_flags(struct ndr_pull *ndr, int ndr_flags, uint8_t *r)
|
||||
{
|
||||
uint8_t v;
|
||||
NDR_CHECK(ndr_pull_uint8(ndr, NDR_SCALARS, &v));
|
||||
@ -34,13 +34,13 @@ _PUBLIC_ void ndr_print_security_ace_flags(struct ndr_print *ndr, const char *na
|
||||
ndr->depth--;
|
||||
}
|
||||
|
||||
static enum ndr_err_code ndr_push_security_ace_type(struct ndr_push *ndr, int ndr_flags, enum security_ace_type r)
|
||||
_PUBLIC_ enum ndr_err_code ndr_push_security_ace_type(struct ndr_push *ndr, int ndr_flags, enum security_ace_type r)
|
||||
{
|
||||
NDR_CHECK(ndr_push_uint8(ndr, NDR_SCALARS, r));
|
||||
return NDR_ERR_SUCCESS;
|
||||
}
|
||||
|
||||
static enum ndr_err_code ndr_pull_security_ace_type(struct ndr_pull *ndr, int ndr_flags, enum security_ace_type *r)
|
||||
_PUBLIC_ enum ndr_err_code ndr_pull_security_ace_type(struct ndr_pull *ndr, int ndr_flags, enum security_ace_type *r)
|
||||
{
|
||||
uint8_t v;
|
||||
NDR_CHECK(ndr_pull_uint8(ndr, NDR_SCALARS, &v));
|
||||
@ -279,7 +279,7 @@ _PUBLIC_ void ndr_print_security_ace_object(struct ndr_print *ndr, const char *n
|
||||
ndr->depth--;
|
||||
}
|
||||
|
||||
static enum ndr_err_code ndr_push_security_ace_object_ctr(struct ndr_push *ndr, int ndr_flags, const union security_ace_object_ctr *r)
|
||||
_PUBLIC_ enum ndr_err_code ndr_push_security_ace_object_ctr(struct ndr_push *ndr, int ndr_flags, const union security_ace_object_ctr *r)
|
||||
{
|
||||
if (ndr_flags & NDR_SCALARS) {
|
||||
int level = ndr_push_get_switch_value(ndr, r);
|
||||
@ -332,7 +332,7 @@ static enum ndr_err_code ndr_push_security_ace_object_ctr(struct ndr_push *ndr,
|
||||
return NDR_ERR_SUCCESS;
|
||||
}
|
||||
|
||||
static enum ndr_err_code ndr_pull_security_ace_object_ctr(struct ndr_pull *ndr, int ndr_flags, union security_ace_object_ctr *r)
|
||||
_PUBLIC_ enum ndr_err_code ndr_pull_security_ace_object_ctr(struct ndr_pull *ndr, int ndr_flags, union security_ace_object_ctr *r)
|
||||
{
|
||||
int level;
|
||||
level = ndr_pull_get_switch_value(ndr, r);
|
||||
@ -432,25 +432,6 @@ _PUBLIC_ enum ndr_err_code ndr_push_security_ace(struct ndr_push *ndr, int ndr_f
|
||||
return NDR_ERR_SUCCESS;
|
||||
}
|
||||
|
||||
_PUBLIC_ enum ndr_err_code ndr_pull_security_ace(struct ndr_pull *ndr, int ndr_flags, struct security_ace *r)
|
||||
{
|
||||
if (ndr_flags & NDR_SCALARS) {
|
||||
NDR_CHECK(ndr_pull_align(ndr, 4));
|
||||
NDR_CHECK(ndr_pull_security_ace_type(ndr, NDR_SCALARS, &r->type));
|
||||
NDR_CHECK(ndr_pull_security_ace_flags(ndr, NDR_SCALARS, &r->flags));
|
||||
NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->size));
|
||||
NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->access_mask));
|
||||
NDR_CHECK(ndr_pull_set_switch_value(ndr, &r->object, r->type));
|
||||
NDR_CHECK(ndr_pull_security_ace_object_ctr(ndr, NDR_SCALARS, &r->object));
|
||||
NDR_CHECK(ndr_pull_dom_sid(ndr, NDR_SCALARS, &r->trustee));
|
||||
}
|
||||
if (ndr_flags & NDR_BUFFERS) {
|
||||
NDR_CHECK(ndr_pull_security_ace_object_ctr(ndr, NDR_BUFFERS, &r->object));
|
||||
NDR_CHECK(ndr_pull_dom_sid(ndr, NDR_BUFFERS, &r->trustee));
|
||||
}
|
||||
return NDR_ERR_SUCCESS;
|
||||
}
|
||||
|
||||
_PUBLIC_ void ndr_print_security_ace(struct ndr_print *ndr, const char *name, const struct security_ace *r)
|
||||
{
|
||||
ndr_print_struct(ndr, name, "security_ace");
|
||||
|
@ -8,12 +8,18 @@
|
||||
|
||||
#include "librpc/gen_ndr/ndr_dom_sid.h"
|
||||
#define NDR_SECURITY_CALL_COUNT (0)
|
||||
enum ndr_err_code ndr_push_security_ace_flags(struct ndr_push *ndr, int ndr_flags, uint8_t r);
|
||||
enum ndr_err_code ndr_pull_security_ace_flags(struct ndr_pull *ndr, int ndr_flags, uint8_t *r);
|
||||
void ndr_print_security_ace_flags(struct ndr_print *ndr, const char *name, uint8_t r);
|
||||
enum ndr_err_code ndr_push_security_ace_type(struct ndr_push *ndr, int ndr_flags, enum security_ace_type r);
|
||||
enum ndr_err_code ndr_pull_security_ace_type(struct ndr_pull *ndr, int ndr_flags, enum security_ace_type *r);
|
||||
void ndr_print_security_ace_type(struct ndr_print *ndr, const char *name, enum security_ace_type r);
|
||||
void ndr_print_security_ace_object_flags(struct ndr_print *ndr, const char *name, uint32_t r);
|
||||
void ndr_print_security_ace_object_type(struct ndr_print *ndr, const char *name, const union security_ace_object_type *r);
|
||||
void ndr_print_security_ace_object_inherited_type(struct ndr_print *ndr, const char *name, const union security_ace_object_inherited_type *r);
|
||||
void ndr_print_security_ace_object(struct ndr_print *ndr, const char *name, const struct security_ace_object *r);
|
||||
enum ndr_err_code ndr_push_security_ace_object_ctr(struct ndr_push *ndr, int ndr_flags, const union security_ace_object_ctr *r);
|
||||
enum ndr_err_code ndr_pull_security_ace_object_ctr(struct ndr_pull *ndr, int ndr_flags, union security_ace_object_ctr *r);
|
||||
void ndr_print_security_ace_object_ctr(struct ndr_print *ndr, const char *name, const union security_ace_object_ctr *r);
|
||||
enum ndr_err_code ndr_push_security_ace(struct ndr_push *ndr, int ndr_flags, const struct security_ace *r);
|
||||
enum ndr_err_code ndr_pull_security_ace(struct ndr_pull *ndr, int ndr_flags, struct security_ace *r);
|
||||
|
@ -243,7 +243,7 @@ struct security_ace_object {
|
||||
|
||||
union security_ace_object_ctr {
|
||||
struct security_ace_object object;/* [case(SEC_ACE_TYPE_ACCESS_ALLOWED_OBJECT)] */
|
||||
}/* [nodiscriminant] */;
|
||||
}/* [public,nodiscriminant] */;
|
||||
|
||||
struct security_ace {
|
||||
enum security_ace_type type;
|
||||
@ -252,7 +252,7 @@ struct security_ace {
|
||||
uint32_t access_mask;
|
||||
union security_ace_object_ctr object;/* [switch_is(type)] */
|
||||
struct dom_sid trustee;
|
||||
}/* [gensize,public,nosize] */;
|
||||
}/* [gensize,public,nopull,nosize] */;
|
||||
|
||||
enum security_acl_revision
|
||||
#ifndef USE_UINT_ENUMS
|
||||
|
Loading…
x
Reference in New Issue
Block a user