From 88d3eb3fd52c9973b0a9f0a76f0488014318ce00 Mon Sep 17 00:00:00 2001 From: tpot Date: Mon, 28 Apr 2003 04:44:54 +0000 Subject: Move the specific rights dissection function and name into a structure instead of passing them around as separate parameters. This is a prelude to adding generic and standard mapping to the access mask dissection. git-svn-id: http://anonsvn.wireshark.org/wireshark/trunk@7591 f5534014-38df-0310-8fa8-9805f1628bb7 --- packet-dcerpc-spoolss.c | 18 +++++++++++------- 1 file changed, 11 insertions(+), 7 deletions(-) (limited to 'packet-dcerpc-spoolss.c') diff --git a/packet-dcerpc-spoolss.c b/packet-dcerpc-spoolss.c index a9503c1c5c..db7b50de35 100644 --- a/packet-dcerpc-spoolss.c +++ b/packet-dcerpc-spoolss.c @@ -2,7 +2,7 @@ * Routines for SMB \PIPE\spoolss packet disassembly * Copyright 2001-2003, Tim Potter * - * $Id: packet-dcerpc-spoolss.c,v 1.96 2003/04/27 00:49:14 sahlberg Exp $ + * $Id: packet-dcerpc-spoolss.c,v 1.97 2003/04/28 04:44:54 tpot Exp $ * * Ethereal - Network traffic analyzer * By Gerald Combs @@ -333,6 +333,11 @@ spoolss_specific_rights(tvbuff_t *tvb, gint offset, proto_tree *tree, tree, hf_server_access_admin, tvb, offset, 4, access); } +struct access_mask_info spoolss_access_mask_info = { + "SPOOLSS", + spoolss_specific_rights +}; + /* * Routines to dissect a spoolss BUFFER */ @@ -2244,7 +2249,7 @@ static int dissect_PRINTER_INFO_2(tvbuff_t *tvb, int offset, dissect_nt_sec_desc( tvb, secdesc_offset, pinfo, tree, drep, tvb_length_remaining(tvb, secdesc_offset), - spoolss_specific_rights, "SPOOLSS"); + &spoolss_access_mask_info); offset = dissect_printer_attributes(tvb, offset, pinfo, tree, drep); @@ -2293,8 +2298,7 @@ static int dissect_PRINTER_INFO_3(tvbuff_t *tvb, int offset, offset = dissect_nt_sec_desc( tvb, offset, pinfo, tree, drep, - tvb_length_remaining(tvb, offset), - spoolss_specific_rights, "SPOOLSS"); + tvb_length_remaining(tvb, offset), &spoolss_access_mask_info); return offset; } @@ -2477,7 +2481,7 @@ static int SpoolssOpenPrinterEx_q(tvbuff_t *tvb, int offset, offset = dissect_nt_access_mask( tvb, offset, pinfo, tree, drep, hf_access_required, - spoolss_specific_rights, "SPOOLSS"); + &spoolss_access_mask_info); offset = dissect_USER_LEVEL_CTR(tvb, offset, pinfo, tree, drep); @@ -3319,7 +3323,7 @@ dissect_SEC_DESC_BUF(tvbuff_t *tvb, int offset, packet_info *pinfo, dissect_nt_sec_desc( tvb, offset, pinfo, subtree, drep, len, - spoolss_specific_rights, "SPOOLSS"); + &spoolss_access_mask_info); offset += len; @@ -4465,7 +4469,7 @@ dissect_spoolss_JOB_INFO_2(tvbuff_t *tvb, int offset, packet_info *pinfo, dissect_nt_sec_desc( tvb, secdesc_offset, pinfo, subtree, drep, tvb_length_remaining(tvb, secdesc_offset), - spoolss_specific_rights, "SPOOLSS"); + &spoolss_access_mask_info); offset = dissect_job_status(tvb, offset, pinfo, subtree, drep); -- cgit v1.2.3