mirror of
https://github.com/samba-team/samba.git
synced 2024-12-23 17:34:34 +03:00
s4-rap: add rap print helpers.
Guenther
This commit is contained in:
parent
084c8065f8
commit
f85a4ab778
@ -5,7 +5,8 @@
|
||||
*/
|
||||
|
||||
[
|
||||
pointer_default(unique)
|
||||
pointer_default(unique),
|
||||
helper("../librpc/ndr/ndr_rap.h")
|
||||
]
|
||||
interface rap
|
||||
{
|
||||
@ -541,7 +542,7 @@ interface rap
|
||||
uint16 PrinterNameOffsetHigh;
|
||||
} rap_PrintJobInfo3;
|
||||
|
||||
[public] void rap_NetPrintQEnum(
|
||||
[public,noprint] void rap_NetPrintQEnum(
|
||||
[in] uint16 level,
|
||||
[in] uint16 bufsize,
|
||||
[out] uint16 status,
|
||||
|
64
librpc/ndr/ndr_rap.c
Normal file
64
librpc/ndr/ndr_rap.c
Normal file
@ -0,0 +1,64 @@
|
||||
/*
|
||||
Unix SMB/CIFS implementation.
|
||||
|
||||
routines for marshalling/unmarshalling special rap types
|
||||
|
||||
Copyright (C) Guenther Deschner 2010
|
||||
|
||||
This program is free software; you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation; either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
This program is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
#include "includes.h"
|
||||
#include "librpc/gen_ndr/ndr_rap.h"
|
||||
|
||||
_PUBLIC_ void ndr_print_rap_NetPrintQEnum(struct ndr_print *ndr, const char *name, int flags, const struct rap_NetPrintQEnum *r)
|
||||
{
|
||||
uint32_t cntr_info_1;
|
||||
ndr_print_struct(ndr, name, "rap_NetPrintQEnum");
|
||||
ndr->depth++;
|
||||
if (flags & NDR_SET_VALUES) {
|
||||
ndr->flags |= LIBNDR_PRINT_SET_VALUES;
|
||||
}
|
||||
if (flags & NDR_IN) {
|
||||
ndr_print_struct(ndr, "in", "rap_NetPrintQEnum");
|
||||
ndr->depth++;
|
||||
ndr_print_uint16(ndr, "level", r->in.level);
|
||||
ndr_print_uint16(ndr, "bufsize", r->in.bufsize);
|
||||
ndr->depth--;
|
||||
}
|
||||
if (flags & NDR_OUT) {
|
||||
ndr_print_struct(ndr, "out", "rap_NetPrintQEnum");
|
||||
ndr->depth++;
|
||||
ndr_print_WERROR(ndr, "status", W_ERROR(r->out.status));
|
||||
ndr_print_uint16(ndr, "convert", r->out.convert);
|
||||
ndr_print_uint16(ndr, "count", r->out.count);
|
||||
ndr_print_uint16(ndr, "available", r->out.available);
|
||||
ndr_print_ptr(ndr, "info", r->out.info);
|
||||
ndr->depth++;
|
||||
ndr->print(ndr, "%s: ARRAY(%d)", "info", (int)r->out.count);
|
||||
ndr->depth++;
|
||||
for (cntr_info_1=0;cntr_info_1<r->out.count;cntr_info_1++) {
|
||||
char *idx_1=NULL;
|
||||
if (asprintf(&idx_1, "[%d]", cntr_info_1) != -1) {
|
||||
ndr_print_set_switch_value(ndr, &r->out.info[cntr_info_1], r->in.level);
|
||||
ndr_print_rap_printq_info(ndr, "info", &r->out.info[cntr_info_1]);
|
||||
free(idx_1);
|
||||
}
|
||||
}
|
||||
ndr->depth--;
|
||||
ndr->depth--;
|
||||
ndr->depth--;
|
||||
}
|
||||
ndr->depth--;
|
||||
}
|
22
librpc/ndr/ndr_rap.h
Normal file
22
librpc/ndr/ndr_rap.h
Normal file
@ -0,0 +1,22 @@
|
||||
/*
|
||||
Unix SMB/CIFS implementation.
|
||||
|
||||
routines for marshalling/unmarshalling special rap types
|
||||
|
||||
Copyright (C) Guenther Deschner 2010
|
||||
|
||||
This program is free software; you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation; either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
This program is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
_PUBLIC_ void ndr_print_rap_NetPrintQEnum(struct ndr_print *ndr, const char *name, int flags, const struct rap_NetPrintQEnum *r);
|
@ -578,7 +578,7 @@ RPC_NDR_KEYSVC_OBJ_FILES = ../librpc/gen_ndr/ndr_keysvc_c.o
|
||||
[SUBSYSTEM::NDR_RAP]
|
||||
PUBLIC_DEPENDENCIES = LIBNDR
|
||||
|
||||
NDR_RAP_OBJ_FILES = ../librpc/gen_ndr/ndr_rap.o
|
||||
NDR_RAP_OBJ_FILES = ../librpc/gen_ndr/ndr_rap.o ../librpc/ndr/ndr_rap.o
|
||||
|
||||
[SUBSYSTEM::NDR_DCERPC]
|
||||
PUBLIC_DEPENDENCIES = LIBNDR
|
||||
|
@ -264,7 +264,7 @@ bld.SAMBA_SUBSYSTEM('NDR_KEYSVC',
|
||||
)
|
||||
|
||||
bld.SAMBA_SUBSYSTEM('NDR_RAP',
|
||||
source='../../librpc/gen_ndr/ndr_rap.c',
|
||||
source='../../librpc/gen_ndr/ndr_rap.c ../../librpc/ndr/ndr_rap.c',
|
||||
public_deps='LIBNDR'
|
||||
)
|
||||
|
||||
@ -608,7 +608,6 @@ bld.SAMBA_SUBSYSTEM('NDR_DCERPC',
|
||||
header_path= [ ('*gen_ndr*', 'gen_ndr') ],
|
||||
)
|
||||
|
||||
|
||||
bld.SAMBA_LIBRARY('dcerpc',
|
||||
source='rpc/dcerpc.c rpc/dcerpc_auth.c rpc/dcerpc_schannel.c rpc/dcerpc_util.c rpc/dcerpc_smb.c rpc/dcerpc_smb2.c rpc/dcerpc_sock.c rpc/dcerpc_connect.c rpc/dcerpc_secondary.c ../../librpc/rpc/binding.c ../../librpc/rpc/dcerpc_error.c',
|
||||
pc_files='dcerpc.pc',
|
||||
|
Loading…
Reference in New Issue
Block a user