1
0
mirror of https://github.com/samba-team/samba.git synced 2025-01-13 13:18:06 +03:00

r3401: Fix IDL for SetForm RPC.

(This used to be commit 206f3de297)
This commit is contained in:
Tim Potter 2004-10-31 03:54:20 +00:00 committed by Gerald (Jerry) Carter
parent b24fcfc1aa
commit 75f1497c32
2 changed files with 45 additions and 11 deletions

View File

@ -483,13 +483,28 @@
[in,out,ref] uint32 *buf_size
);
typedef struct {
uint32 flags;
unistr *formname;
uint32 width;
uint32 length;
uint32 left;
uint32 top;
uint32 right;
uint32 bottom;
} spoolss_SetFormInfo1;
typedef union {
[case(1)] spoolss_AddFormInfo1 *info1;
} spoolss_SetFormInfo;
/******************/
/* Function: 0x21 */
WERROR spoolss_SetForm(
[in,ref] policy_handle *handle,
[in] unistr formname,
[in] uint32 level,
[in,switch_is(level)] spoolss_AddFormInfo info
[in,switch_is(level)] spoolss_SetFormInfo info
);
typedef [nodiscriminant,public] union {

View File

@ -129,6 +129,26 @@ def test_GetForm(pipe, handle, formname):
return result['info']['info1']
def test_SetForm(pipe, handle, form):
print 'testing spoolss_SetForm'
r = {}
r['handle'] = handle
r['level'] = 1
r['formname'] = form['info1']['formname']
r['info'] = form
dcerpc.spoolss_SetForm(pipe, r)
newform = test_GetForm(pipe, handle, r['formname'])
if form['info1'] != newform:
print 'SetForm: mismatch: %s != %s' % \
(r['info']['info1'], f)
sys.exit(1)
def test_AddForm(pipe, handle):
print 'testing spoolss_AddForm'
@ -141,13 +161,13 @@ def test_AddForm(pipe, handle):
r['info'] = {}
r['info']['info1'] = {}
r['info']['info1']['formname'] = formname
r['info']['info1']['flags'] = 0
r['info']['info1']['width'] = 1
r['info']['info1']['length'] = 2
r['info']['info1']['left'] = 3
r['info']['info1']['top'] = 4
r['info']['info1']['right'] = 5
r['info']['info1']['bottom'] = 6
r['info']['info1']['flags'] = 0x0002
r['info']['info1']['width'] = 100
r['info']['info1']['length'] = 100
r['info']['info1']['left'] = 0
r['info']['info1']['top'] = 1000
r['info']['info1']['right'] = 2000
r['info']['info1']['bottom'] = 3000
try:
result = dcerpc.spoolss_AddForm(pipe, r)
@ -159,14 +179,13 @@ def test_AddForm(pipe, handle):
f = test_GetForm(pipe, handle, formname)
if r['info']['info1'] != f:
print 'Form type mismatch: %s != %s' % \
print 'AddForm: mismatch: %s != %s' % \
(r['info']['info1'], f)
sys.exit(1)
r['formname'] = formname
r['info']['info1']['unknown'] = 1
dcerpc.spoolss_SetForm(pipe, r)
test_SetForm(pipe, handle, r['info'])
test_DeleteForm(pipe, handle, formname)