diff options
author | Stefan Metzmacher <metze@samba.org> | 2014-01-24 16:43:57 +0100 |
---|---|---|
committer | Günther Deschner <gd@samba.org> | 2014-02-13 11:54:14 +0100 |
commit | 8dac96728aee72f4d5510d53c3b00bdbd250a867 (patch) | |
tree | c99f943677bbb8131f34885259f400890ee52a32 /librpc | |
parent | 77d009898412cfef8f9773152f0728011ec7e304 (diff) | |
download | samba-8dac96728aee72f4d5510d53c3b00bdbd250a867.tar.gz |
librpc/rpc: add dcerpc_binding_[g|s]et_flags()
Signed-off-by: Stefan Metzmacher <metze@samba.org>
Reviewed-by: Guenther Deschner <gd@samba.org>
Diffstat (limited to 'librpc')
-rw-r--r-- | librpc/rpc/binding.c | 18 | ||||
-rw-r--r-- | librpc/rpc/rpc_common.h | 4 |
2 files changed, 22 insertions, 0 deletions
diff --git a/librpc/rpc/binding.c b/librpc/rpc/binding.c index 588738645ea..09c0c8d6cbc 100644 --- a/librpc/rpc/binding.c +++ b/librpc/rpc/binding.c @@ -729,6 +729,24 @@ _PUBLIC_ NTSTATUS dcerpc_binding_set_string_option(struct dcerpc_binding *b, return NT_STATUS_OK; } +_PUBLIC_ uint32_t dcerpc_binding_get_flags(const struct dcerpc_binding *b) +{ + return b->flags; +} + +_PUBLIC_ NTSTATUS dcerpc_binding_set_flags(struct dcerpc_binding *b, + uint32_t additional, + uint32_t clear) +{ + /* + * TODO: in future we may want to reject invalid combinations + */ + b->flags &= ~clear; + b->flags |= additional; + + return NT_STATUS_OK; +} + _PUBLIC_ NTSTATUS dcerpc_floor_get_lhs_data(const struct epm_floor *epm_floor, struct ndr_syntax_id *syntax) { diff --git a/librpc/rpc/rpc_common.h b/librpc/rpc/rpc_common.h index 7cab8a6792b..2ac243b700f 100644 --- a/librpc/rpc/rpc_common.h +++ b/librpc/rpc/rpc_common.h @@ -144,6 +144,10 @@ char *dcerpc_binding_copy_string_option(TALLOC_CTX *mem_ctx, NTSTATUS dcerpc_binding_set_string_option(struct dcerpc_binding *b, const char *name, const char *value); +uint32_t dcerpc_binding_get_flags(const struct dcerpc_binding *b); +NTSTATUS dcerpc_binding_set_flags(struct dcerpc_binding *b, + uint32_t additional, + uint32_t clear); NTSTATUS dcerpc_floor_get_lhs_data(const struct epm_floor *epm_floor, struct ndr_syntax_id *syntax); const char *derpc_transport_string_by_transport(enum dcerpc_transport_t t); enum dcerpc_transport_t dcerpc_transport_by_name(const char *name); |