2005-04-28 09:50:03 +00:00
/* DO NOT EDIT
2005-10-11 09:32:09 +00:00
This filter was automatically generated
from dssetup . idl and dssetup . cnf .
2014-03-07 15:32:18 +00:00
2005-10-11 09:32:09 +00:00
Pidl is a perl based IDL compiler for DCE / RPC idl files .
2006-05-21 04:49:01 +00:00
It is maintained by the Samba team , not the Wireshark team .
2005-10-11 09:32:09 +00:00
Instructions on how to download and install Pidl can be
2006-05-21 04:49:01 +00:00
found at http : //wiki.wireshark.org/Pidl
2005-10-11 09:32:09 +00:00
*/
2002-11-01 00:42:00 +00:00
# include "config.h"
2013-10-21 19:41:54 +00:00
# ifdef _MSC_VER
# pragma warning(disable:4005)
# pragma warning(disable:4013)
# pragma warning(disable:4018)
# pragma warning(disable:4101)
# endif
2002-11-01 00:42:00 +00:00
# include <glib.h>
# include <string.h>
# include <epan/packet.h>
2005-10-11 09:32:09 +00:00
2002-11-01 00:42:00 +00:00
# include "packet-dcerpc.h"
# include "packet-dcerpc-nt.h"
2004-08-03 02:28:49 +00:00
# include "packet-windows-common.h"
2005-04-28 09:50:03 +00:00
# include "packet-dcerpc-dssetup.h"
2002-11-14 04:39:39 +00:00
2013-12-14 10:29:26 +00:00
void proto_register_dcerpc_dssetup ( void ) ;
void proto_reg_handoff_dcerpc_dssetup ( void ) ;
2005-10-11 09:32:09 +00:00
/* Ett declarations */
static gint ett_dcerpc_dssetup = - 1 ;
static gint ett_dssetup_dssetup_DsRoleFlags = - 1 ;
static gint ett_dssetup_dssetup_DsRolePrimaryDomInfoBasic = - 1 ;
static gint ett_dssetup_dssetup_DsRoleUpgradeStatus = - 1 ;
static gint ett_dssetup_dssetup_DsRoleOpStatus = - 1 ;
static gint ett_dssetup_dssetup_DsRoleInfo = - 1 ;
/* Header field declarations */
2005-12-10 22:42:19 +00:00
static gint hf_dssetup_dssetup_DsRoleGetPrimaryDomainInformation_level = - 1 ;
static gint hf_dssetup_opnum = - 1 ;
2005-12-02 10:54:05 +00:00
static gint hf_dssetup_dssetup_DsRolePrimaryDomInfoBasic_flags = - 1 ;
2005-12-10 22:42:19 +00:00
static gint hf_dssetup_dssetup_DsRoleUpgradeStatus_previous_role = - 1 ;
static gint hf_dssetup_dssetup_DsRoleInfo_opstatus = - 1 ;
static gint hf_dssetup_dssetup_DsRolePrimaryDomInfoBasic_domain_guid = - 1 ;
static gint hf_dssetup_dssetup_DsRoleOpStatus_status = - 1 ;
2005-12-02 10:54:05 +00:00
static gint hf_dssetup_dssetup_DsRoleInfo_upgrade = - 1 ;
2005-12-10 22:42:19 +00:00
static gint hf_dssetup_dssetup_DsRoleGetPrimaryDomainInformation_info = - 1 ;
2005-12-02 10:54:05 +00:00
static gint hf_dssetup_dssetup_DsRoleFlags_DS_ROLE_UPGRADE_IN_PROGRESS = - 1 ;
2005-12-10 22:42:19 +00:00
static gint hf_dssetup_dssetup_DsRoleFlags_DS_ROLE_PRIMARY_DOMAIN_GUID_PRESENT = - 1 ;
static gint hf_dssetup_dssetup_DsRoleInfo_basic = - 1 ;
2005-12-02 10:54:05 +00:00
static gint hf_dssetup_dssetup_DsRolePrimaryDomInfoBasic_role = - 1 ;
static gint hf_dssetup_dssetup_DsRoleFlags_DS_ROLE_PRIMARY_DS_RUNNING = - 1 ;
2005-12-10 22:42:19 +00:00
static gint hf_dssetup_dssetup_DsRolePrimaryDomInfoBasic_dns_domain = - 1 ;
static gint hf_dssetup_dssetup_DsRoleUpgradeStatus_upgrading = - 1 ;
static gint hf_dssetup_dssetup_DsRolePrimaryDomInfoBasic_domain = - 1 ;
static gint hf_dssetup_werror = - 1 ;
static gint hf_dssetup_dssetup_DsRoleFlags_DS_ROLE_PRIMARY_DS_MIXED_MODE = - 1 ;
static gint hf_dssetup_dssetup_DsRolePrimaryDomInfoBasic_forest = - 1 ;
2005-10-11 09:32:09 +00:00
static gint proto_dcerpc_dssetup = - 1 ;
/* Version information */
2002-11-14 04:39:39 +00:00
2005-04-28 09:50:03 +00:00
static e_uuid_t uuid_dcerpc_dssetup = {
2005-10-11 09:32:09 +00:00
0x3919286a , 0xb10c , 0x11d0 ,
{ 0x9b , 0xa8 , 0x00 , 0xc0 , 0x4f , 0xd9 , 0x2e , 0xf5 }
2005-04-28 09:50:03 +00:00
} ;
2005-10-11 09:32:09 +00:00
static guint16 ver_dcerpc_dssetup = 0 ;
const value_string dssetup_dssetup_DsRole_vals [ ] = {
{ DS_ROLE_STANDALONE_WORKSTATION , " DS_ROLE_STANDALONE_WORKSTATION " } ,
{ DS_ROLE_MEMBER_WORKSTATION , " DS_ROLE_MEMBER_WORKSTATION " } ,
{ DS_ROLE_STANDALONE_SERVER , " DS_ROLE_STANDALONE_SERVER " } ,
{ DS_ROLE_MEMBER_SERVER , " DS_ROLE_MEMBER_SERVER " } ,
{ DS_ROLE_BACKUP_DC , " DS_ROLE_BACKUP_DC " } ,
{ DS_ROLE_PRIMARY_DC , " DS_ROLE_PRIMARY_DC " } ,
{ 0 , NULL }
2005-04-28 09:50:03 +00:00
} ;
2005-10-11 09:32:09 +00:00
static const true_false_string dssetup_DsRoleFlags_DS_ROLE_PRIMARY_DS_RUNNING_tfs = {
" DS_ROLE_PRIMARY_DS_RUNNING is SET " ,
" DS_ROLE_PRIMARY_DS_RUNNING is NOT SET " ,
2005-04-28 09:50:03 +00:00
} ;
2005-10-11 09:32:09 +00:00
static const true_false_string dssetup_DsRoleFlags_DS_ROLE_PRIMARY_DS_MIXED_MODE_tfs = {
" DS_ROLE_PRIMARY_DS_MIXED_MODE is SET " ,
" DS_ROLE_PRIMARY_DS_MIXED_MODE is NOT SET " ,
2005-04-28 09:50:03 +00:00
} ;
2005-10-11 09:32:09 +00:00
static const true_false_string dssetup_DsRoleFlags_DS_ROLE_UPGRADE_IN_PROGRESS_tfs = {
" DS_ROLE_UPGRADE_IN_PROGRESS is SET " ,
" DS_ROLE_UPGRADE_IN_PROGRESS is NOT SET " ,
2005-04-28 09:50:03 +00:00
} ;
2005-10-11 09:32:09 +00:00
static const true_false_string dssetup_DsRoleFlags_DS_ROLE_PRIMARY_DOMAIN_GUID_PRESENT_tfs = {
" DS_ROLE_PRIMARY_DOMAIN_GUID_PRESENT is SET " ,
" DS_ROLE_PRIMARY_DOMAIN_GUID_PRESENT is NOT SET " ,
} ;
2013-11-06 14:31:29 +00:00
static int dssetup_dissect_element_DsRolePrimaryDomInfoBasic_role ( tvbuff_t * tvb _U_ , int offset _U_ , packet_info * pinfo _U_ , proto_tree * tree _U_ , dcerpc_info * di _U_ , guint8 * drep _U_ ) ;
static int dssetup_dissect_element_DsRolePrimaryDomInfoBasic_flags ( tvbuff_t * tvb _U_ , int offset _U_ , packet_info * pinfo _U_ , proto_tree * tree _U_ , dcerpc_info * di _U_ , guint8 * drep _U_ ) ;
static int dssetup_dissect_element_DsRolePrimaryDomInfoBasic_domain ( tvbuff_t * tvb _U_ , int offset _U_ , packet_info * pinfo _U_ , proto_tree * tree _U_ , dcerpc_info * di _U_ , guint8 * drep _U_ ) ;
static int dssetup_dissect_element_DsRolePrimaryDomInfoBasic_domain_ ( tvbuff_t * tvb _U_ , int offset _U_ , packet_info * pinfo _U_ , proto_tree * tree _U_ , dcerpc_info * di _U_ , guint8 * drep _U_ ) ;
static int dssetup_dissect_element_DsRolePrimaryDomInfoBasic_dns_domain ( tvbuff_t * tvb _U_ , int offset _U_ , packet_info * pinfo _U_ , proto_tree * tree _U_ , dcerpc_info * di _U_ , guint8 * drep _U_ ) ;
static int dssetup_dissect_element_DsRolePrimaryDomInfoBasic_dns_domain_ ( tvbuff_t * tvb _U_ , int offset _U_ , packet_info * pinfo _U_ , proto_tree * tree _U_ , dcerpc_info * di _U_ , guint8 * drep _U_ ) ;
static int dssetup_dissect_element_DsRolePrimaryDomInfoBasic_forest ( tvbuff_t * tvb _U_ , int offset _U_ , packet_info * pinfo _U_ , proto_tree * tree _U_ , dcerpc_info * di _U_ , guint8 * drep _U_ ) ;
static int dssetup_dissect_element_DsRolePrimaryDomInfoBasic_forest_ ( tvbuff_t * tvb _U_ , int offset _U_ , packet_info * pinfo _U_ , proto_tree * tree _U_ , dcerpc_info * di _U_ , guint8 * drep _U_ ) ;
static int dssetup_dissect_element_DsRolePrimaryDomInfoBasic_domain_guid ( tvbuff_t * tvb _U_ , int offset _U_ , packet_info * pinfo _U_ , proto_tree * tree _U_ , dcerpc_info * di _U_ , guint8 * drep _U_ ) ;
2005-10-11 09:32:09 +00:00
const value_string dssetup_dssetup_DsUpgrade_vals [ ] = {
{ DS_ROLE_NOT_UPGRADING , " DS_ROLE_NOT_UPGRADING " } ,
{ DS_ROLE_UPGRADING , " DS_ROLE_UPGRADING " } ,
{ 0 , NULL }
} ;
const value_string dssetup_dssetup_DsPrevious_vals [ ] = {
{ DS_ROLE_PREVIOUS_UNKNOWN , " DS_ROLE_PREVIOUS_UNKNOWN " } ,
{ DS_ROLE_PREVIOUS_PRIMARY , " DS_ROLE_PREVIOUS_PRIMARY " } ,
{ DS_ROLE_PREVIOUS_BACKUP , " DS_ROLE_PREVIOUS_BACKUP " } ,
{ 0 , NULL }
} ;
2013-11-06 14:31:29 +00:00
static int dssetup_dissect_element_DsRoleUpgradeStatus_upgrading ( tvbuff_t * tvb _U_ , int offset _U_ , packet_info * pinfo _U_ , proto_tree * tree _U_ , dcerpc_info * di _U_ , guint8 * drep _U_ ) ;
static int dssetup_dissect_element_DsRoleUpgradeStatus_previous_role ( tvbuff_t * tvb _U_ , int offset _U_ , packet_info * pinfo _U_ , proto_tree * tree _U_ , dcerpc_info * di _U_ , guint8 * drep _U_ ) ;
2005-10-11 09:32:09 +00:00
const value_string dssetup_dssetup_DsRoleOp_vals [ ] = {
{ DS_ROLE_OP_IDLE , " DS_ROLE_OP_IDLE " } ,
{ DS_ROLE_OP_ACTIVE , " DS_ROLE_OP_ACTIVE " } ,
{ DS_ROLE_OP_NEEDS_REBOOT , " DS_ROLE_OP_NEEDS_REBOOT " } ,
{ 0 , NULL }
} ;
2013-11-06 14:31:29 +00:00
static int dssetup_dissect_element_DsRoleOpStatus_status ( tvbuff_t * tvb _U_ , int offset _U_ , packet_info * pinfo _U_ , proto_tree * tree _U_ , dcerpc_info * di _U_ , guint8 * drep _U_ ) ;
2005-10-11 09:32:09 +00:00
const value_string dssetup_dssetup_DsRoleInfoLevel_vals [ ] = {
{ DS_ROLE_BASIC_INFORMATION , " DS_ROLE_BASIC_INFORMATION " } ,
{ DS_ROLE_UPGRADE_STATUS , " DS_ROLE_UPGRADE_STATUS " } ,
{ DS_ROLE_OP_STATUS , " DS_ROLE_OP_STATUS " } ,
{ 0 , NULL }
2005-04-28 09:50:03 +00:00
} ;
2013-11-06 14:31:29 +00:00
static int dssetup_dissect_element_DsRoleInfo_basic ( tvbuff_t * tvb _U_ , int offset _U_ , packet_info * pinfo _U_ , proto_tree * tree _U_ , dcerpc_info * di _U_ , guint8 * drep _U_ ) ;
static int dssetup_dissect_element_DsRoleInfo_upgrade ( tvbuff_t * tvb _U_ , int offset _U_ , packet_info * pinfo _U_ , proto_tree * tree _U_ , dcerpc_info * di _U_ , guint8 * drep _U_ ) ;
static int dssetup_dissect_element_DsRoleInfo_opstatus ( tvbuff_t * tvb _U_ , int offset _U_ , packet_info * pinfo _U_ , proto_tree * tree _U_ , dcerpc_info * di _U_ , guint8 * drep _U_ ) ;
static int dssetup_dissect_element_DsRoleGetPrimaryDomainInformation_level ( tvbuff_t * tvb _U_ , int offset _U_ , packet_info * pinfo _U_ , proto_tree * tree _U_ , dcerpc_info * di _U_ , guint8 * drep _U_ ) ;
static int dssetup_dissect_element_DsRoleGetPrimaryDomainInformation_info ( tvbuff_t * tvb _U_ , int offset _U_ , packet_info * pinfo _U_ , proto_tree * tree _U_ , dcerpc_info * di _U_ , guint8 * drep _U_ ) ;
static int dssetup_dissect_element_DsRoleGetPrimaryDomainInformation_info_ ( tvbuff_t * tvb _U_ , int offset _U_ , packet_info * pinfo _U_ , proto_tree * tree _U_ , dcerpc_info * di _U_ , guint8 * drep _U_ ) ;
2013-10-21 19:41:54 +00:00
/* IDL: enum { */
2005-10-11 09:32:09 +00:00
/* IDL: DS_ROLE_STANDALONE_WORKSTATION=0, */
/* IDL: DS_ROLE_MEMBER_WORKSTATION=1, */
/* IDL: DS_ROLE_STANDALONE_SERVER=2, */
/* IDL: DS_ROLE_MEMBER_SERVER=3, */
/* IDL: DS_ROLE_BACKUP_DC=4, */
/* IDL: DS_ROLE_PRIMARY_DC=5, */
2013-10-21 19:41:54 +00:00
/* IDL: } */
2005-04-28 09:50:03 +00:00
2005-10-11 09:32:09 +00:00
int
2013-11-06 14:31:29 +00:00
dssetup_dissect_enum_DsRole ( tvbuff_t * tvb _U_ , int offset _U_ , packet_info * pinfo _U_ , proto_tree * tree _U_ , dcerpc_info * di _U_ , guint8 * drep _U_ , int hf_index _U_ , guint32 * param _U_ )
2005-10-11 09:32:09 +00:00
{
2013-10-21 19:41:54 +00:00
guint1632 parameter = 0 ;
if ( param ) {
parameter = ( guint1632 ) * param ;
}
2013-11-06 14:31:29 +00:00
offset = dissect_ndr_uint1632 ( tvb , offset , pinfo , tree , di , drep , hf_index , & parameter ) ;
2013-10-21 19:41:54 +00:00
if ( param ) {
* param = ( guint32 ) parameter ;
}
2005-10-11 09:32:09 +00:00
return offset ;
}
2013-10-21 19:41:54 +00:00
/* IDL: bitmap { */
2005-10-11 09:32:09 +00:00
/* IDL: DS_ROLE_PRIMARY_DS_RUNNING = 0x00000001 , */
/* IDL: DS_ROLE_PRIMARY_DS_MIXED_MODE = 0x00000002 , */
/* IDL: DS_ROLE_UPGRADE_IN_PROGRESS = 0x00000004 , */
/* IDL: DS_ROLE_PRIMARY_DOMAIN_GUID_PRESENT = 0x01000000 , */
2013-10-21 19:41:54 +00:00
/* IDL: } */
2005-04-28 09:50:03 +00:00
int
2013-11-06 14:31:29 +00:00
dssetup_dissect_bitmap_DsRoleFlags ( tvbuff_t * tvb _U_ , int offset _U_ , packet_info * pinfo _U_ , proto_tree * parent_tree _U_ , dcerpc_info * di _U_ , guint8 * drep _U_ , int hf_index _U_ , guint32 param _U_ )
2002-11-15 08:46:42 +00:00
{
2005-10-11 09:32:09 +00:00
proto_item * item = NULL ;
proto_tree * tree = NULL ;
2005-04-28 09:50:03 +00:00
2005-10-11 09:32:09 +00:00
guint32 flags ;
ALIGN_TO_4_BYTES ;
2002-11-15 08:46:42 +00:00
2013-10-21 19:41:54 +00:00
if ( parent_tree ) {
item = proto_tree_add_item ( parent_tree , hf_index , tvb , offset , 4 , DREP_ENC_INTEGER ( drep ) ) ;
2005-10-11 09:32:09 +00:00
tree = proto_item_add_subtree ( item , ett_dssetup_dssetup_DsRoleFlags ) ;
}
2002-11-15 08:46:42 +00:00
2013-11-06 14:31:29 +00:00
offset = dissect_ndr_uint32 ( tvb , offset , pinfo , NULL , di , drep , - 1 , & flags ) ;
2005-10-11 09:32:09 +00:00
proto_item_append_text ( item , " : " ) ;
2002-11-15 08:46:42 +00:00
2005-10-11 09:32:09 +00:00
if ( ! flags )
proto_item_append_text ( item , " (No values set) " ) ;
2005-04-28 09:50:03 +00:00
2005-10-11 09:32:09 +00:00
proto_tree_add_boolean ( tree , hf_dssetup_dssetup_DsRoleFlags_DS_ROLE_PRIMARY_DS_RUNNING , tvb , offset - 4 , 4 , flags ) ;
if ( flags & ( 0x00000001 ) ) {
proto_item_append_text ( item , " DS_ROLE_PRIMARY_DS_RUNNING " ) ;
if ( flags & ( ~ ( 0x00000001 ) ) )
proto_item_append_text ( item , " , " ) ;
}
flags & = ( ~ ( 0x00000001 ) ) ;
2005-04-28 09:50:03 +00:00
2005-10-11 09:32:09 +00:00
proto_tree_add_boolean ( tree , hf_dssetup_dssetup_DsRoleFlags_DS_ROLE_PRIMARY_DS_MIXED_MODE , tvb , offset - 4 , 4 , flags ) ;
if ( flags & ( 0x00000002 ) ) {
proto_item_append_text ( item , " DS_ROLE_PRIMARY_DS_MIXED_MODE " ) ;
if ( flags & ( ~ ( 0x00000002 ) ) )
proto_item_append_text ( item , " , " ) ;
}
flags & = ( ~ ( 0x00000002 ) ) ;
2005-04-28 09:50:03 +00:00
2005-10-11 09:32:09 +00:00
proto_tree_add_boolean ( tree , hf_dssetup_dssetup_DsRoleFlags_DS_ROLE_UPGRADE_IN_PROGRESS , tvb , offset - 4 , 4 , flags ) ;
if ( flags & ( 0x00000004 ) ) {
proto_item_append_text ( item , " DS_ROLE_UPGRADE_IN_PROGRESS " ) ;
if ( flags & ( ~ ( 0x00000004 ) ) )
proto_item_append_text ( item , " , " ) ;
}
flags & = ( ~ ( 0x00000004 ) ) ;
2005-04-28 09:50:03 +00:00
2005-10-11 09:32:09 +00:00
proto_tree_add_boolean ( tree , hf_dssetup_dssetup_DsRoleFlags_DS_ROLE_PRIMARY_DOMAIN_GUID_PRESENT , tvb , offset - 4 , 4 , flags ) ;
if ( flags & ( 0x01000000 ) ) {
proto_item_append_text ( item , " DS_ROLE_PRIMARY_DOMAIN_GUID_PRESENT " ) ;
if ( flags & ( ~ ( 0x01000000 ) ) )
proto_item_append_text ( item , " , " ) ;
}
flags & = ( ~ ( 0x01000000 ) ) ;
2005-04-28 09:50:03 +00:00
2013-10-21 19:41:54 +00:00
if ( flags ) {
2005-10-11 09:32:09 +00:00
proto_item_append_text ( item , " Unknown bitmap value 0x%x " , flags ) ;
}
2005-04-28 09:50:03 +00:00
2005-10-11 09:32:09 +00:00
return offset ;
2002-11-15 08:46:42 +00:00
}
2002-11-14 04:39:39 +00:00
2013-10-21 19:41:54 +00:00
/* IDL: struct { */
2005-10-11 09:32:09 +00:00
/* IDL: dssetup_DsRole role; */
/* IDL: dssetup_DsRoleFlags flags; */
2013-10-21 19:41:54 +00:00
/* IDL: [unique(1)] [charset(UTF16)] uint16 *domain; */
/* IDL: [unique(1)] [charset(UTF16)] uint16 *dns_domain; */
/* IDL: [unique(1)] [charset(UTF16)] uint16 *forest; */
2005-10-11 09:32:09 +00:00
/* IDL: GUID domain_guid; */
2013-10-21 19:41:54 +00:00
/* IDL: } */
2005-10-11 09:32:09 +00:00
2002-11-15 08:46:42 +00:00
static int
2013-11-06 14:31:29 +00:00
dssetup_dissect_element_DsRolePrimaryDomInfoBasic_role ( tvbuff_t * tvb _U_ , int offset _U_ , packet_info * pinfo _U_ , proto_tree * tree _U_ , dcerpc_info * di _U_ , guint8 * drep _U_ )
2002-11-15 08:46:42 +00:00
{
2013-11-06 14:31:29 +00:00
offset = dssetup_dissect_enum_DsRole ( tvb , offset , pinfo , tree , di , drep , hf_dssetup_dssetup_DsRolePrimaryDomInfoBasic_role , 0 ) ;
2002-11-15 08:46:42 +00:00
2005-10-11 09:32:09 +00:00
return offset ;
}
2002-11-15 08:46:42 +00:00
2002-11-14 04:39:39 +00:00
static int
2013-11-06 14:31:29 +00:00
dssetup_dissect_element_DsRolePrimaryDomInfoBasic_flags ( tvbuff_t * tvb _U_ , int offset _U_ , packet_info * pinfo _U_ , proto_tree * tree _U_ , dcerpc_info * di _U_ , guint8 * drep _U_ )
2002-11-14 04:39:39 +00:00
{
2013-11-06 14:31:29 +00:00
offset = dssetup_dissect_bitmap_DsRoleFlags ( tvb , offset , pinfo , tree , di , drep , hf_dssetup_dssetup_DsRolePrimaryDomInfoBasic_flags , 0 ) ;
2005-10-11 09:32:09 +00:00
return offset ;
2005-04-28 09:50:03 +00:00
}
2002-11-14 04:39:39 +00:00
2005-04-28 09:50:03 +00:00
static int
2013-11-06 14:31:29 +00:00
dssetup_dissect_element_DsRolePrimaryDomInfoBasic_domain ( tvbuff_t * tvb _U_ , int offset _U_ , packet_info * pinfo _U_ , proto_tree * tree _U_ , dcerpc_info * di _U_ , guint8 * drep _U_ )
2005-04-28 09:50:03 +00:00
{
2013-11-06 14:31:29 +00:00
offset = dissect_ndr_embedded_pointer ( tvb , offset , pinfo , tree , di , drep , dssetup_dissect_element_DsRolePrimaryDomInfoBasic_domain_ , NDR_POINTER_UNIQUE , " Pointer to Domain (uint16) " , hf_dssetup_dssetup_DsRolePrimaryDomInfoBasic_domain ) ;
2005-10-11 09:32:09 +00:00
return offset ;
2005-04-28 09:50:03 +00:00
}
2002-11-14 04:39:39 +00:00
2005-04-28 09:50:03 +00:00
static int
2013-11-06 14:31:29 +00:00
dssetup_dissect_element_DsRolePrimaryDomInfoBasic_domain_ ( tvbuff_t * tvb _U_ , int offset _U_ , packet_info * pinfo _U_ , proto_tree * tree _U_ , dcerpc_info * di _U_ , guint8 * drep _U_ )
2005-04-28 09:50:03 +00:00
{
2005-12-10 22:42:19 +00:00
char * data ;
2013-11-06 14:31:29 +00:00
offset = dissect_ndr_cvstring ( tvb , offset , pinfo , tree , di , drep , sizeof ( guint16 ) , hf_dssetup_dssetup_DsRolePrimaryDomInfoBasic_domain , FALSE , & data ) ;
2005-12-10 22:42:19 +00:00
proto_item_append_text ( tree , " : %s " , data ) ;
2005-10-11 09:32:09 +00:00
return offset ;
2005-04-28 09:50:03 +00:00
}
2002-11-15 08:46:42 +00:00
2005-04-28 09:50:03 +00:00
static int
2013-11-06 14:31:29 +00:00
dssetup_dissect_element_DsRolePrimaryDomInfoBasic_dns_domain ( tvbuff_t * tvb _U_ , int offset _U_ , packet_info * pinfo _U_ , proto_tree * tree _U_ , dcerpc_info * di _U_ , guint8 * drep _U_ )
2005-04-28 09:50:03 +00:00
{
2013-11-06 14:31:29 +00:00
offset = dissect_ndr_embedded_pointer ( tvb , offset , pinfo , tree , di , drep , dssetup_dissect_element_DsRolePrimaryDomInfoBasic_dns_domain_ , NDR_POINTER_UNIQUE , " Pointer to Dns Domain (uint16) " , hf_dssetup_dssetup_DsRolePrimaryDomInfoBasic_dns_domain ) ;
2005-10-11 09:32:09 +00:00
return offset ;
2005-04-28 09:50:03 +00:00
}
2002-11-14 04:39:39 +00:00
2005-04-28 09:50:03 +00:00
static int
2013-11-06 14:31:29 +00:00
dssetup_dissect_element_DsRolePrimaryDomInfoBasic_dns_domain_ ( tvbuff_t * tvb _U_ , int offset _U_ , packet_info * pinfo _U_ , proto_tree * tree _U_ , dcerpc_info * di _U_ , guint8 * drep _U_ )
2005-04-28 09:50:03 +00:00
{
2005-12-10 22:42:19 +00:00
char * data ;
2013-11-06 14:31:29 +00:00
offset = dissect_ndr_cvstring ( tvb , offset , pinfo , tree , di , drep , sizeof ( guint16 ) , hf_dssetup_dssetup_DsRolePrimaryDomInfoBasic_dns_domain , FALSE , & data ) ;
2005-12-10 22:42:19 +00:00
proto_item_append_text ( tree , " : %s " , data ) ;
2005-10-11 09:32:09 +00:00
return offset ;
2002-11-14 04:39:39 +00:00
}
static int
2013-11-06 14:31:29 +00:00
dssetup_dissect_element_DsRolePrimaryDomInfoBasic_forest ( tvbuff_t * tvb _U_ , int offset _U_ , packet_info * pinfo _U_ , proto_tree * tree _U_ , dcerpc_info * di _U_ , guint8 * drep _U_ )
2002-11-14 04:39:39 +00:00
{
2013-11-06 14:31:29 +00:00
offset = dissect_ndr_embedded_pointer ( tvb , offset , pinfo , tree , di , drep , dssetup_dissect_element_DsRolePrimaryDomInfoBasic_forest_ , NDR_POINTER_UNIQUE , " Pointer to Forest (uint16) " , hf_dssetup_dssetup_DsRolePrimaryDomInfoBasic_forest ) ;
2005-10-11 09:32:09 +00:00
return offset ;
2005-04-28 09:50:03 +00:00
}
2003-02-14 06:14:27 +00:00
2005-04-28 09:50:03 +00:00
static int
2013-11-06 14:31:29 +00:00
dssetup_dissect_element_DsRolePrimaryDomInfoBasic_forest_ ( tvbuff_t * tvb _U_ , int offset _U_ , packet_info * pinfo _U_ , proto_tree * tree _U_ , dcerpc_info * di _U_ , guint8 * drep _U_ )
2005-04-28 09:50:03 +00:00
{
2005-12-10 22:42:19 +00:00
char * data ;
2013-11-06 14:31:29 +00:00
offset = dissect_ndr_cvstring ( tvb , offset , pinfo , tree , di , drep , sizeof ( guint16 ) , hf_dssetup_dssetup_DsRolePrimaryDomInfoBasic_forest , FALSE , & data ) ;
2005-12-10 22:42:19 +00:00
proto_item_append_text ( tree , " : %s " , data ) ;
2003-02-14 06:14:27 +00:00
2005-10-11 09:32:09 +00:00
return offset ;
2002-11-14 04:39:39 +00:00
}
static int
2013-11-06 14:31:29 +00:00
dssetup_dissect_element_DsRolePrimaryDomInfoBasic_domain_guid ( tvbuff_t * tvb _U_ , int offset _U_ , packet_info * pinfo _U_ , proto_tree * tree _U_ , dcerpc_info * di _U_ , guint8 * drep _U_ )
2002-11-14 04:39:39 +00:00
{
2013-11-06 14:31:29 +00:00
offset = dissect_ndr_uuid_t ( tvb , offset , pinfo , tree , di , drep , hf_dssetup_dssetup_DsRolePrimaryDomInfoBasic_domain_guid , NULL ) ;
2005-04-28 09:50:03 +00:00
2005-10-11 09:32:09 +00:00
return offset ;
}
2005-04-28 09:50:03 +00:00
int
2013-11-06 14:31:29 +00:00
dssetup_dissect_struct_DsRolePrimaryDomInfoBasic ( tvbuff_t * tvb _U_ , int offset _U_ , packet_info * pinfo _U_ , proto_tree * parent_tree _U_ , dcerpc_info * di _U_ , guint8 * drep _U_ , int hf_index _U_ , guint32 param _U_ )
2005-04-28 09:50:03 +00:00
{
2005-10-11 09:32:09 +00:00
proto_item * item = NULL ;
proto_tree * tree = NULL ;
int old_offset ;
2013-10-21 19:41:54 +00:00
ALIGN_TO_5_BYTES ;
2005-04-28 09:50:03 +00:00
2005-10-11 09:32:09 +00:00
old_offset = offset ;
2005-04-28 09:50:03 +00:00
2013-10-21 19:41:54 +00:00
if ( parent_tree ) {
item = proto_tree_add_item ( parent_tree , hf_index , tvb , offset , - 1 , ENC_NA ) ;
2005-10-11 09:32:09 +00:00
tree = proto_item_add_subtree ( item , ett_dssetup_dssetup_DsRolePrimaryDomInfoBasic ) ;
}
2013-11-06 14:31:29 +00:00
offset = dssetup_dissect_element_DsRolePrimaryDomInfoBasic_role ( tvb , offset , pinfo , tree , di , drep ) ;
2005-04-28 09:50:03 +00:00
2013-11-06 14:31:29 +00:00
offset = dssetup_dissect_element_DsRolePrimaryDomInfoBasic_flags ( tvb , offset , pinfo , tree , di , drep ) ;
2002-11-14 04:39:39 +00:00
2013-11-06 14:31:29 +00:00
offset = dssetup_dissect_element_DsRolePrimaryDomInfoBasic_domain ( tvb , offset , pinfo , tree , di , drep ) ;
2002-11-14 04:39:39 +00:00
2013-11-06 14:31:29 +00:00
offset = dssetup_dissect_element_DsRolePrimaryDomInfoBasic_dns_domain ( tvb , offset , pinfo , tree , di , drep ) ;
2005-04-28 09:50:03 +00:00
2013-11-06 14:31:29 +00:00
offset = dssetup_dissect_element_DsRolePrimaryDomInfoBasic_forest ( tvb , offset , pinfo , tree , di , drep ) ;
2005-04-28 09:50:03 +00:00
2013-11-06 14:31:29 +00:00
offset = dssetup_dissect_element_DsRolePrimaryDomInfoBasic_domain_guid ( tvb , offset , pinfo , tree , di , drep ) ;
2005-04-28 09:50:03 +00:00
2005-10-11 09:32:09 +00:00
proto_item_set_len ( item , offset - old_offset ) ;
2005-04-28 09:50:03 +00:00
2013-10-21 19:41:54 +00:00
if ( di - > call_data - > flags & DCERPC_IS_NDR64 ) {
ALIGN_TO_5_BYTES ;
}
2005-10-11 09:32:09 +00:00
return offset ;
2002-11-14 04:39:39 +00:00
}
2013-10-21 19:41:54 +00:00
/* IDL: enum { */
2005-10-11 09:32:09 +00:00
/* IDL: DS_ROLE_NOT_UPGRADING=0, */
/* IDL: DS_ROLE_UPGRADING=1, */
2013-10-21 19:41:54 +00:00
/* IDL: } */
2002-11-14 04:39:39 +00:00
2005-04-28 09:50:03 +00:00
int
2013-11-06 14:31:29 +00:00
dssetup_dissect_enum_DsUpgrade ( tvbuff_t * tvb _U_ , int offset _U_ , packet_info * pinfo _U_ , proto_tree * tree _U_ , dcerpc_info * di _U_ , guint8 * drep _U_ , int hf_index _U_ , guint32 * param _U_ )
2005-04-28 09:50:03 +00:00
{
2013-10-21 19:41:54 +00:00
guint32 parameter = 0 ;
if ( param ) {
parameter = ( guint32 ) * param ;
}
2013-11-06 14:31:29 +00:00
offset = dissect_ndr_uint32 ( tvb , offset , pinfo , tree , di , drep , hf_index , & parameter ) ;
2013-10-21 19:41:54 +00:00
if ( param ) {
* param = ( guint32 ) parameter ;
}
2005-10-11 09:32:09 +00:00
return offset ;
2005-04-28 09:50:03 +00:00
}
2013-10-21 19:41:54 +00:00
/* IDL: enum { */
2005-10-11 09:32:09 +00:00
/* IDL: DS_ROLE_PREVIOUS_UNKNOWN=0, */
/* IDL: DS_ROLE_PREVIOUS_PRIMARY=1, */
/* IDL: DS_ROLE_PREVIOUS_BACKUP=2, */
2013-10-21 19:41:54 +00:00
/* IDL: } */
2002-11-15 08:46:42 +00:00
2005-04-28 09:50:03 +00:00
int
2013-11-06 14:31:29 +00:00
dssetup_dissect_enum_DsPrevious ( tvbuff_t * tvb _U_ , int offset _U_ , packet_info * pinfo _U_ , proto_tree * tree _U_ , dcerpc_info * di _U_ , guint8 * drep _U_ , int hf_index _U_ , guint32 * param _U_ )
2005-04-28 09:50:03 +00:00
{
2013-10-21 19:41:54 +00:00
guint1632 parameter = 0 ;
if ( param ) {
parameter = ( guint1632 ) * param ;
}
2013-11-06 14:31:29 +00:00
offset = dissect_ndr_uint1632 ( tvb , offset , pinfo , tree , di , drep , hf_index , & parameter ) ;
2013-10-21 19:41:54 +00:00
if ( param ) {
* param = ( guint32 ) parameter ;
}
2005-10-11 09:32:09 +00:00
return offset ;
2005-04-28 09:50:03 +00:00
}
2013-10-21 19:41:54 +00:00
/* IDL: struct { */
2005-10-11 09:32:09 +00:00
/* IDL: dssetup_DsUpgrade upgrading; */
/* IDL: dssetup_DsPrevious previous_role; */
2013-10-21 19:41:54 +00:00
/* IDL: } */
2005-10-11 09:32:09 +00:00
2005-04-28 09:50:03 +00:00
static int
2013-11-06 14:31:29 +00:00
dssetup_dissect_element_DsRoleUpgradeStatus_upgrading ( tvbuff_t * tvb _U_ , int offset _U_ , packet_info * pinfo _U_ , proto_tree * tree _U_ , dcerpc_info * di _U_ , guint8 * drep _U_ )
2005-04-28 09:50:03 +00:00
{
2013-11-06 14:31:29 +00:00
offset = dssetup_dissect_enum_DsUpgrade ( tvb , offset , pinfo , tree , di , drep , hf_dssetup_dssetup_DsRoleUpgradeStatus_upgrading , 0 ) ;
2005-10-11 09:32:09 +00:00
return offset ;
2005-04-28 09:50:03 +00:00
}
static int
2013-11-06 14:31:29 +00:00
dssetup_dissect_element_DsRoleUpgradeStatus_previous_role ( tvbuff_t * tvb _U_ , int offset _U_ , packet_info * pinfo _U_ , proto_tree * tree _U_ , dcerpc_info * di _U_ , guint8 * drep _U_ )
2005-04-28 09:50:03 +00:00
{
2013-11-06 14:31:29 +00:00
offset = dssetup_dissect_enum_DsPrevious ( tvb , offset , pinfo , tree , di , drep , hf_dssetup_dssetup_DsRoleUpgradeStatus_previous_role , 0 ) ;
2005-04-28 09:50:03 +00:00
2005-10-11 09:32:09 +00:00
return offset ;
}
2005-04-28 09:50:03 +00:00
int
2013-11-06 14:31:29 +00:00
dssetup_dissect_struct_DsRoleUpgradeStatus ( tvbuff_t * tvb _U_ , int offset _U_ , packet_info * pinfo _U_ , proto_tree * parent_tree _U_ , dcerpc_info * di _U_ , guint8 * drep _U_ , int hf_index _U_ , guint32 param _U_ )
2005-04-28 09:50:03 +00:00
{
2005-10-11 09:32:09 +00:00
proto_item * item = NULL ;
proto_tree * tree = NULL ;
int old_offset ;
ALIGN_TO_4_BYTES ;
2005-04-28 09:50:03 +00:00
2005-10-11 09:32:09 +00:00
old_offset = offset ;
2005-04-28 09:50:03 +00:00
2013-10-21 19:41:54 +00:00
if ( parent_tree ) {
item = proto_tree_add_item ( parent_tree , hf_index , tvb , offset , - 1 , ENC_NA ) ;
2005-10-11 09:32:09 +00:00
tree = proto_item_add_subtree ( item , ett_dssetup_dssetup_DsRoleUpgradeStatus ) ;
}
2013-11-06 14:31:29 +00:00
offset = dssetup_dissect_element_DsRoleUpgradeStatus_upgrading ( tvb , offset , pinfo , tree , di , drep ) ;
2005-04-28 09:50:03 +00:00
2013-11-06 14:31:29 +00:00
offset = dssetup_dissect_element_DsRoleUpgradeStatus_previous_role ( tvb , offset , pinfo , tree , di , drep ) ;
2005-04-28 09:50:03 +00:00
2005-10-11 09:32:09 +00:00
proto_item_set_len ( item , offset - old_offset ) ;
2005-04-28 09:50:03 +00:00
2013-10-21 19:41:54 +00:00
if ( di - > call_data - > flags & DCERPC_IS_NDR64 ) {
ALIGN_TO_4_BYTES ;
}
2005-10-11 09:32:09 +00:00
return offset ;
2005-04-28 09:50:03 +00:00
}
2013-10-21 19:41:54 +00:00
/* IDL: enum { */
2005-10-11 09:32:09 +00:00
/* IDL: DS_ROLE_OP_IDLE=0, */
/* IDL: DS_ROLE_OP_ACTIVE=1, */
/* IDL: DS_ROLE_OP_NEEDS_REBOOT=2, */
2013-10-21 19:41:54 +00:00
/* IDL: } */
2002-11-15 08:46:42 +00:00
2005-04-28 09:50:03 +00:00
int
2013-11-06 14:31:29 +00:00
dssetup_dissect_enum_DsRoleOp ( tvbuff_t * tvb _U_ , int offset _U_ , packet_info * pinfo _U_ , proto_tree * tree _U_ , dcerpc_info * di _U_ , guint8 * drep _U_ , int hf_index _U_ , guint32 * param _U_ )
2005-04-28 09:50:03 +00:00
{
2013-10-21 19:41:54 +00:00
guint1632 parameter = 0 ;
if ( param ) {
parameter = ( guint1632 ) * param ;
}
2013-11-06 14:31:29 +00:00
offset = dissect_ndr_uint1632 ( tvb , offset , pinfo , tree , di , drep , hf_index , & parameter ) ;
2013-10-21 19:41:54 +00:00
if ( param ) {
* param = ( guint32 ) parameter ;
}
2005-10-11 09:32:09 +00:00
return offset ;
2005-04-28 09:50:03 +00:00
}
2013-10-21 19:41:54 +00:00
/* IDL: struct { */
2005-10-11 09:32:09 +00:00
/* IDL: dssetup_DsRoleOp status; */
2013-10-21 19:41:54 +00:00
/* IDL: } */
2005-10-11 09:32:09 +00:00
2005-04-28 09:50:03 +00:00
static int
2013-11-06 14:31:29 +00:00
dssetup_dissect_element_DsRoleOpStatus_status ( tvbuff_t * tvb _U_ , int offset _U_ , packet_info * pinfo _U_ , proto_tree * tree _U_ , dcerpc_info * di _U_ , guint8 * drep _U_ )
2005-04-28 09:50:03 +00:00
{
2013-11-06 14:31:29 +00:00
offset = dssetup_dissect_enum_DsRoleOp ( tvb , offset , pinfo , tree , di , drep , hf_dssetup_dssetup_DsRoleOpStatus_status , 0 ) ;
2005-04-28 09:50:03 +00:00
2005-10-11 09:32:09 +00:00
return offset ;
}
2005-04-28 09:50:03 +00:00
int
2013-11-06 14:31:29 +00:00
dssetup_dissect_struct_DsRoleOpStatus ( tvbuff_t * tvb _U_ , int offset _U_ , packet_info * pinfo _U_ , proto_tree * parent_tree _U_ , dcerpc_info * di _U_ , guint8 * drep _U_ , int hf_index _U_ , guint32 param _U_ )
2005-04-28 09:50:03 +00:00
{
2005-10-11 09:32:09 +00:00
proto_item * item = NULL ;
proto_tree * tree = NULL ;
int old_offset ;
2005-04-28 09:50:03 +00:00
2013-10-21 19:41:54 +00:00
ALIGN_TO_3_BYTES ;
2005-04-28 09:50:03 +00:00
2005-10-11 09:32:09 +00:00
old_offset = offset ;
2005-04-28 09:50:03 +00:00
2013-10-21 19:41:54 +00:00
if ( parent_tree ) {
item = proto_tree_add_item ( parent_tree , hf_index , tvb , offset , - 1 , ENC_NA ) ;
2005-10-11 09:32:09 +00:00
tree = proto_item_add_subtree ( item , ett_dssetup_dssetup_DsRoleOpStatus ) ;
}
2013-11-06 14:31:29 +00:00
offset = dssetup_dissect_element_DsRoleOpStatus_status ( tvb , offset , pinfo , tree , di , drep ) ;
2005-04-28 09:50:03 +00:00
2005-10-11 09:32:09 +00:00
proto_item_set_len ( item , offset - old_offset ) ;
2013-10-21 19:41:54 +00:00
if ( di - > call_data - > flags & DCERPC_IS_NDR64 ) {
ALIGN_TO_3_BYTES ;
}
2005-10-11 09:32:09 +00:00
return offset ;
2005-04-28 09:50:03 +00:00
}
2013-10-21 19:41:54 +00:00
/* IDL: enum { */
2005-10-11 09:32:09 +00:00
/* IDL: DS_ROLE_BASIC_INFORMATION=1, */
/* IDL: DS_ROLE_UPGRADE_STATUS=2, */
/* IDL: DS_ROLE_OP_STATUS=3, */
2013-10-21 19:41:54 +00:00
/* IDL: } */
2002-11-01 00:42:00 +00:00
2005-04-28 09:50:03 +00:00
int
2013-11-06 14:31:29 +00:00
dssetup_dissect_enum_DsRoleInfoLevel ( tvbuff_t * tvb _U_ , int offset _U_ , packet_info * pinfo _U_ , proto_tree * tree _U_ , dcerpc_info * di _U_ , guint8 * drep _U_ , int hf_index _U_ , guint32 * param _U_ )
2005-04-28 09:50:03 +00:00
{
2013-10-21 19:41:54 +00:00
guint1632 parameter = 0 ;
if ( param ) {
parameter = ( guint1632 ) * param ;
}
2013-11-06 14:31:29 +00:00
offset = dissect_ndr_uint1632 ( tvb , offset , pinfo , tree , di , drep , hf_index , & parameter ) ;
2013-10-21 19:41:54 +00:00
if ( param ) {
* param = ( guint32 ) parameter ;
}
2005-10-11 09:32:09 +00:00
return offset ;
2005-04-28 09:50:03 +00:00
}
2013-10-21 19:41:54 +00:00
/* IDL: [switch_type(dssetup_DsRoleInfoLevel)] union { */
2005-10-11 09:32:09 +00:00
/* IDL: [case(DS_ROLE_BASIC_INFORMATION)] [case(DS_ROLE_BASIC_INFORMATION)] dssetup_DsRolePrimaryDomInfoBasic basic; */
/* IDL: [case(DS_ROLE_UPGRADE_STATUS)] [case(DS_ROLE_UPGRADE_STATUS)] dssetup_DsRoleUpgradeStatus upgrade; */
/* IDL: [case(DS_ROLE_OP_STATUS)] [case(DS_ROLE_OP_STATUS)] dssetup_DsRoleOpStatus opstatus; */
2013-10-21 19:41:54 +00:00
/* IDL: } */
2005-10-11 09:32:09 +00:00
2005-04-28 09:50:03 +00:00
static int
2013-11-06 14:31:29 +00:00
dssetup_dissect_element_DsRoleInfo_basic ( tvbuff_t * tvb _U_ , int offset _U_ , packet_info * pinfo _U_ , proto_tree * tree _U_ , dcerpc_info * di _U_ , guint8 * drep _U_ )
2005-04-28 09:50:03 +00:00
{
2013-11-06 14:31:29 +00:00
offset = dssetup_dissect_struct_DsRolePrimaryDomInfoBasic ( tvb , offset , pinfo , tree , di , drep , hf_dssetup_dssetup_DsRoleInfo_basic , 0 ) ;
2005-10-11 09:32:09 +00:00
return offset ;
2005-04-28 09:50:03 +00:00
}
static int
2013-11-06 14:31:29 +00:00
dssetup_dissect_element_DsRoleInfo_upgrade ( tvbuff_t * tvb _U_ , int offset _U_ , packet_info * pinfo _U_ , proto_tree * tree _U_ , dcerpc_info * di _U_ , guint8 * drep _U_ )
2005-04-28 09:50:03 +00:00
{
2013-11-06 14:31:29 +00:00
offset = dssetup_dissect_struct_DsRoleUpgradeStatus ( tvb , offset , pinfo , tree , di , drep , hf_dssetup_dssetup_DsRoleInfo_upgrade , 0 ) ;
2005-10-11 09:32:09 +00:00
return offset ;
2005-04-28 09:50:03 +00:00
}
static int
2013-11-06 14:31:29 +00:00
dssetup_dissect_element_DsRoleInfo_opstatus ( tvbuff_t * tvb _U_ , int offset _U_ , packet_info * pinfo _U_ , proto_tree * tree _U_ , dcerpc_info * di _U_ , guint8 * drep _U_ )
2005-04-28 09:50:03 +00:00
{
2013-11-06 14:31:29 +00:00
offset = dssetup_dissect_struct_DsRoleOpStatus ( tvb , offset , pinfo , tree , di , drep , hf_dssetup_dssetup_DsRoleInfo_opstatus , 0 ) ;
2005-04-28 09:50:03 +00:00
2005-10-11 09:32:09 +00:00
return offset ;
}
2005-04-28 09:50:03 +00:00
static int
2013-11-06 14:31:29 +00:00
dssetup_dissect_DsRoleInfo ( tvbuff_t * tvb _U_ , int offset _U_ , packet_info * pinfo _U_ , proto_tree * parent_tree _U_ , dcerpc_info * di _U_ , guint8 * drep _U_ , int hf_index _U_ , guint32 param _U_ )
2005-04-28 09:50:03 +00:00
{
2005-10-11 09:32:09 +00:00
proto_item * item = NULL ;
proto_tree * tree = NULL ;
int old_offset ;
2013-10-21 19:41:54 +00:00
guint1632 level ;
2005-04-28 09:50:03 +00:00
2005-10-11 09:32:09 +00:00
old_offset = offset ;
2013-10-21 19:41:54 +00:00
if ( parent_tree ) {
2005-10-11 09:32:09 +00:00
item = proto_tree_add_text ( parent_tree , tvb , offset , - 1 , " dssetup_DsRoleInfo " ) ;
tree = proto_item_add_subtree ( item , ett_dssetup_dssetup_DsRoleInfo ) ;
}
2005-04-28 09:50:03 +00:00
2013-11-06 14:31:29 +00:00
offset = dissect_ndr_uint1632 ( tvb , offset , pinfo , tree , di , drep , hf_index , & level ) ;
2013-10-21 19:41:54 +00:00
ALIGN_TO_5_BYTES ;
2005-10-11 09:32:09 +00:00
switch ( level ) {
case DS_ROLE_BASIC_INFORMATION :
2013-11-06 14:31:29 +00:00
offset = dssetup_dissect_element_DsRoleInfo_basic ( tvb , offset , pinfo , tree , di , drep ) ;
2005-10-11 09:32:09 +00:00
break ;
2005-04-28 09:50:03 +00:00
2005-10-11 09:32:09 +00:00
case DS_ROLE_UPGRADE_STATUS :
2013-11-06 14:31:29 +00:00
offset = dssetup_dissect_element_DsRoleInfo_upgrade ( tvb , offset , pinfo , tree , di , drep ) ;
2005-10-11 09:32:09 +00:00
break ;
2005-04-28 09:50:03 +00:00
2005-10-11 09:32:09 +00:00
case DS_ROLE_OP_STATUS :
2013-11-06 14:31:29 +00:00
offset = dssetup_dissect_element_DsRoleInfo_opstatus ( tvb , offset , pinfo , tree , di , drep ) ;
2005-10-11 09:32:09 +00:00
break ;
}
proto_item_set_len ( item , offset - old_offset ) ;
2005-04-28 09:50:03 +00:00
2013-10-21 19:41:54 +00:00
2005-10-11 09:32:09 +00:00
return offset ;
2005-04-28 09:50:03 +00:00
}
static int
2013-11-06 14:31:29 +00:00
dssetup_dissect_element_DsRoleGetPrimaryDomainInformation_level ( tvbuff_t * tvb _U_ , int offset _U_ , packet_info * pinfo _U_ , proto_tree * tree _U_ , dcerpc_info * di _U_ , guint8 * drep _U_ )
2005-04-28 09:50:03 +00:00
{
2013-11-06 14:31:29 +00:00
offset = dssetup_dissect_enum_DsRoleInfoLevel ( tvb , offset , pinfo , tree , di , drep , hf_dssetup_dssetup_DsRoleGetPrimaryDomainInformation_level , 0 ) ;
2005-04-28 09:50:03 +00:00
2005-10-11 09:32:09 +00:00
return offset ;
2005-04-28 09:50:03 +00:00
}
static int
2013-11-06 14:31:29 +00:00
dssetup_dissect_element_DsRoleGetPrimaryDomainInformation_info ( tvbuff_t * tvb _U_ , int offset _U_ , packet_info * pinfo _U_ , proto_tree * tree _U_ , dcerpc_info * di _U_ , guint8 * drep _U_ )
2005-04-28 09:50:03 +00:00
{
2013-11-06 14:31:29 +00:00
offset = dissect_ndr_toplevel_pointer ( tvb , offset , pinfo , tree , di , drep , dssetup_dissect_element_DsRoleGetPrimaryDomainInformation_info_ , NDR_POINTER_UNIQUE , " Pointer to Info (dssetup_DsRoleInfo) " , hf_dssetup_dssetup_DsRoleGetPrimaryDomainInformation_info ) ;
2005-04-28 09:50:03 +00:00
2005-10-11 09:32:09 +00:00
return offset ;
}
2005-04-28 09:50:03 +00:00
static int
2013-11-06 14:31:29 +00:00
dssetup_dissect_element_DsRoleGetPrimaryDomainInformation_info_ ( tvbuff_t * tvb _U_ , int offset _U_ , packet_info * pinfo _U_ , proto_tree * tree _U_ , dcerpc_info * di _U_ , guint8 * drep _U_ )
2005-04-28 09:50:03 +00:00
{
2013-11-06 14:31:29 +00:00
offset = dssetup_dissect_DsRoleInfo ( tvb , offset , pinfo , tree , di , drep , hf_dssetup_dssetup_DsRoleGetPrimaryDomainInformation_info , 0 ) ;
2005-04-28 09:50:03 +00:00
2005-10-11 09:32:09 +00:00
return offset ;
2005-04-28 09:50:03 +00:00
}
2005-10-11 09:32:09 +00:00
/* IDL: WERROR dssetup_DsRoleGetPrimaryDomainInformation( */
/* IDL: [in] dssetup_DsRoleInfoLevel level, */
2013-10-21 19:41:54 +00:00
/* IDL: [out] [unique(1)] [switch_is(level)] dssetup_DsRoleInfo *info */
2005-10-11 09:32:09 +00:00
/* IDL: ); */
2005-04-28 09:50:03 +00:00
static int
2013-11-06 14:31:29 +00:00
dssetup_dissect_DsRoleGetPrimaryDomainInformation_response ( tvbuff_t * tvb _U_ , int offset _U_ , packet_info * pinfo _U_ , proto_tree * tree _U_ , dcerpc_info * di _U_ , guint8 * drep _U_ )
2005-04-28 09:50:03 +00:00
{
2005-12-02 10:54:05 +00:00
guint32 status ;
2013-11-24 20:55:55 +00:00
di - > dcerpc_procedure_name = " DsRoleGetPrimaryDomainInformation " ;
2013-11-06 14:31:29 +00:00
offset = dssetup_dissect_element_DsRoleGetPrimaryDomainInformation_info ( tvb , offset , pinfo , tree , di , drep ) ;
offset = dissect_deferred_pointers ( pinfo , tvb , offset , di , drep ) ;
2005-04-28 09:50:03 +00:00
2013-11-06 14:31:29 +00:00
offset = dissect_ndr_uint32 ( tvb , offset , pinfo , tree , di , drep , hf_dssetup_werror , & status ) ;
2005-12-02 10:54:05 +00:00
2013-10-01 14:45:03 +00:00
if ( status ! = 0 )
2013-10-21 19:41:54 +00:00
col_append_fstr ( pinfo - > cinfo , COL_INFO , " , Error: %s " , val_to_str ( status , WERR_errors , " Unknown DOS error 0x%08x " ) ) ;
2005-12-02 10:54:05 +00:00
2005-10-11 09:32:09 +00:00
return offset ;
2005-04-28 09:50:03 +00:00
}
static int
2013-11-06 14:31:29 +00:00
dssetup_dissect_DsRoleGetPrimaryDomainInformation_request ( tvbuff_t * tvb _U_ , int offset _U_ , packet_info * pinfo _U_ , proto_tree * tree _U_ , dcerpc_info * di _U_ , guint8 * drep _U_ )
2005-04-28 09:50:03 +00:00
{
2013-11-24 20:55:55 +00:00
di - > dcerpc_procedure_name = " DsRoleGetPrimaryDomainInformation " ;
2013-11-06 14:31:29 +00:00
offset = dssetup_dissect_element_DsRoleGetPrimaryDomainInformation_level ( tvb , offset , pinfo , tree , di , drep ) ;
offset = dissect_deferred_pointers ( pinfo , tvb , offset , di , drep ) ;
2005-10-11 09:32:09 +00:00
return offset ;
2005-04-28 09:50:03 +00:00
}
2005-10-11 09:32:09 +00:00
/* IDL: WERROR dssetup_DsRoleDnsNameToFlatName( */
/* IDL: */
/* IDL: ); */
2005-04-28 09:50:03 +00:00
static int
2013-11-06 14:31:29 +00:00
dssetup_dissect_DsRoleDnsNameToFlatName_response ( tvbuff_t * tvb _U_ , int offset _U_ , packet_info * pinfo _U_ , proto_tree * tree _U_ , dcerpc_info * di _U_ , guint8 * drep _U_ )
2005-04-28 09:50:03 +00:00
{
2005-12-02 10:54:05 +00:00
guint32 status ;
2013-11-24 20:55:55 +00:00
di - > dcerpc_procedure_name = " DsRoleDnsNameToFlatName " ;
2013-11-06 14:31:29 +00:00
offset = dissect_ndr_uint32 ( tvb , offset , pinfo , tree , di , drep , hf_dssetup_werror , & status ) ;
2005-12-02 10:54:05 +00:00
2013-10-01 14:45:03 +00:00
if ( status ! = 0 )
2013-10-21 19:41:54 +00:00
col_append_fstr ( pinfo - > cinfo , COL_INFO , " , Error: %s " , val_to_str ( status , WERR_errors , " Unknown DOS error 0x%08x " ) ) ;
2005-12-02 10:54:05 +00:00
2005-10-11 09:32:09 +00:00
return offset ;
2005-04-28 09:50:03 +00:00
}
static int
2013-11-06 14:31:29 +00:00
dssetup_dissect_DsRoleDnsNameToFlatName_request ( tvbuff_t * tvb _U_ , int offset _U_ , packet_info * pinfo _U_ , proto_tree * tree _U_ , dcerpc_info * di _U_ , guint8 * drep _U_ )
2005-04-28 09:50:03 +00:00
{
2013-11-24 20:55:55 +00:00
di - > dcerpc_procedure_name = " DsRoleDnsNameToFlatName " ;
2005-10-11 09:32:09 +00:00
return offset ;
2005-04-28 09:50:03 +00:00
}
2005-10-11 09:32:09 +00:00
/* IDL: WERROR dssetup_DsRoleDcAsDc( */
/* IDL: */
/* IDL: ); */
2005-04-28 09:50:03 +00:00
static int
2013-11-06 14:31:29 +00:00
dssetup_dissect_DsRoleDcAsDc_response ( tvbuff_t * tvb _U_ , int offset _U_ , packet_info * pinfo _U_ , proto_tree * tree _U_ , dcerpc_info * di _U_ , guint8 * drep _U_ )
2005-04-28 09:50:03 +00:00
{
2005-12-02 10:54:05 +00:00
guint32 status ;
2013-11-24 20:55:55 +00:00
di - > dcerpc_procedure_name = " DsRoleDcAsDc " ;
2013-11-06 14:31:29 +00:00
offset = dissect_ndr_uint32 ( tvb , offset , pinfo , tree , di , drep , hf_dssetup_werror , & status ) ;
2005-12-02 10:54:05 +00:00
2013-10-01 14:45:03 +00:00
if ( status ! = 0 )
2013-10-21 19:41:54 +00:00
col_append_fstr ( pinfo - > cinfo , COL_INFO , " , Error: %s " , val_to_str ( status , WERR_errors , " Unknown DOS error 0x%08x " ) ) ;
2005-12-02 10:54:05 +00:00
2005-10-11 09:32:09 +00:00
return offset ;
2005-04-28 09:50:03 +00:00
}
static int
2013-11-06 14:31:29 +00:00
dssetup_dissect_DsRoleDcAsDc_request ( tvbuff_t * tvb _U_ , int offset _U_ , packet_info * pinfo _U_ , proto_tree * tree _U_ , dcerpc_info * di _U_ , guint8 * drep _U_ )
2005-04-28 09:50:03 +00:00
{
2013-11-24 20:55:55 +00:00
di - > dcerpc_procedure_name = " DsRoleDcAsDc " ;
2005-10-11 09:32:09 +00:00
return offset ;
2005-04-28 09:50:03 +00:00
}
2005-10-11 09:32:09 +00:00
/* IDL: WERROR dssetup_DsRoleDcAsReplica( */
/* IDL: */
/* IDL: ); */
2005-04-28 09:50:03 +00:00
static int
2013-11-06 14:31:29 +00:00
dssetup_dissect_DsRoleDcAsReplica_response ( tvbuff_t * tvb _U_ , int offset _U_ , packet_info * pinfo _U_ , proto_tree * tree _U_ , dcerpc_info * di _U_ , guint8 * drep _U_ )
2005-04-28 09:50:03 +00:00
{
2005-12-02 10:54:05 +00:00
guint32 status ;
2013-11-24 20:55:55 +00:00
di - > dcerpc_procedure_name = " DsRoleDcAsReplica " ;
2013-11-06 14:31:29 +00:00
offset = dissect_ndr_uint32 ( tvb , offset , pinfo , tree , di , drep , hf_dssetup_werror , & status ) ;
2005-12-02 10:54:05 +00:00
2013-10-01 14:45:03 +00:00
if ( status ! = 0 )
2013-10-21 19:41:54 +00:00
col_append_fstr ( pinfo - > cinfo , COL_INFO , " , Error: %s " , val_to_str ( status , WERR_errors , " Unknown DOS error 0x%08x " ) ) ;
2005-12-02 10:54:05 +00:00
2005-10-11 09:32:09 +00:00
return offset ;
2005-04-28 09:50:03 +00:00
}
static int
2013-11-06 14:31:29 +00:00
dssetup_dissect_DsRoleDcAsReplica_request ( tvbuff_t * tvb _U_ , int offset _U_ , packet_info * pinfo _U_ , proto_tree * tree _U_ , dcerpc_info * di _U_ , guint8 * drep _U_ )
2005-04-28 09:50:03 +00:00
{
2013-11-24 20:55:55 +00:00
di - > dcerpc_procedure_name = " DsRoleDcAsReplica " ;
2005-10-11 09:32:09 +00:00
return offset ;
2005-04-28 09:50:03 +00:00
}
2005-10-11 09:32:09 +00:00
/* IDL: WERROR dssetup_DsRoleDemoteDc( */
/* IDL: */
/* IDL: ); */
2005-04-28 09:50:03 +00:00
static int
2013-11-06 14:31:29 +00:00
dssetup_dissect_DsRoleDemoteDc_response ( tvbuff_t * tvb _U_ , int offset _U_ , packet_info * pinfo _U_ , proto_tree * tree _U_ , dcerpc_info * di _U_ , guint8 * drep _U_ )
2005-04-28 09:50:03 +00:00
{
2005-12-02 10:54:05 +00:00
guint32 status ;
2013-11-24 20:55:55 +00:00
di - > dcerpc_procedure_name = " DsRoleDemoteDc " ;
2013-11-06 14:31:29 +00:00
offset = dissect_ndr_uint32 ( tvb , offset , pinfo , tree , di , drep , hf_dssetup_werror , & status ) ;
2005-12-02 10:54:05 +00:00
2013-10-01 14:45:03 +00:00
if ( status ! = 0 )
2013-10-21 19:41:54 +00:00
col_append_fstr ( pinfo - > cinfo , COL_INFO , " , Error: %s " , val_to_str ( status , WERR_errors , " Unknown DOS error 0x%08x " ) ) ;
2005-12-02 10:54:05 +00:00
2005-10-11 09:32:09 +00:00
return offset ;
2005-04-28 09:50:03 +00:00
}
static int
2013-11-06 14:31:29 +00:00
dssetup_dissect_DsRoleDemoteDc_request ( tvbuff_t * tvb _U_ , int offset _U_ , packet_info * pinfo _U_ , proto_tree * tree _U_ , dcerpc_info * di _U_ , guint8 * drep _U_ )
2005-04-28 09:50:03 +00:00
{
2013-11-24 20:55:55 +00:00
di - > dcerpc_procedure_name = " DsRoleDemoteDc " ;
2005-10-11 09:32:09 +00:00
return offset ;
2005-04-28 09:50:03 +00:00
}
2005-10-11 09:32:09 +00:00
/* IDL: WERROR dssetup_DsRoleGetDcOperationProgress( */
/* IDL: */
/* IDL: ); */
2005-04-28 09:50:03 +00:00
static int
2013-11-06 14:31:29 +00:00
dssetup_dissect_DsRoleGetDcOperationProgress_response ( tvbuff_t * tvb _U_ , int offset _U_ , packet_info * pinfo _U_ , proto_tree * tree _U_ , dcerpc_info * di _U_ , guint8 * drep _U_ )
2005-04-28 09:50:03 +00:00
{
2005-12-02 10:54:05 +00:00
guint32 status ;
2013-11-24 20:55:55 +00:00
di - > dcerpc_procedure_name = " DsRoleGetDcOperationProgress " ;
2013-11-06 14:31:29 +00:00
offset = dissect_ndr_uint32 ( tvb , offset , pinfo , tree , di , drep , hf_dssetup_werror , & status ) ;
2005-12-02 10:54:05 +00:00
2013-10-01 14:45:03 +00:00
if ( status ! = 0 )
2013-10-21 19:41:54 +00:00
col_append_fstr ( pinfo - > cinfo , COL_INFO , " , Error: %s " , val_to_str ( status , WERR_errors , " Unknown DOS error 0x%08x " ) ) ;
2005-12-02 10:54:05 +00:00
2005-10-11 09:32:09 +00:00
return offset ;
2005-04-28 09:50:03 +00:00
}
static int
2013-11-06 14:31:29 +00:00
dssetup_dissect_DsRoleGetDcOperationProgress_request ( tvbuff_t * tvb _U_ , int offset _U_ , packet_info * pinfo _U_ , proto_tree * tree _U_ , dcerpc_info * di _U_ , guint8 * drep _U_ )
2005-04-28 09:50:03 +00:00
{
2013-11-24 20:55:55 +00:00
di - > dcerpc_procedure_name = " DsRoleGetDcOperationProgress " ;
2005-10-11 09:32:09 +00:00
return offset ;
2005-04-28 09:50:03 +00:00
}
2005-10-11 09:32:09 +00:00
/* IDL: WERROR dssetup_DsRoleGetDcOperationResults( */
/* IDL: */
/* IDL: ); */
2005-04-28 09:50:03 +00:00
static int
2013-11-06 14:31:29 +00:00
dssetup_dissect_DsRoleGetDcOperationResults_response ( tvbuff_t * tvb _U_ , int offset _U_ , packet_info * pinfo _U_ , proto_tree * tree _U_ , dcerpc_info * di _U_ , guint8 * drep _U_ )
2005-04-28 09:50:03 +00:00
{
2005-12-02 10:54:05 +00:00
guint32 status ;
2013-11-24 20:55:55 +00:00
di - > dcerpc_procedure_name = " DsRoleGetDcOperationResults " ;
2013-11-06 14:31:29 +00:00
offset = dissect_ndr_uint32 ( tvb , offset , pinfo , tree , di , drep , hf_dssetup_werror , & status ) ;
2005-12-02 10:54:05 +00:00
2013-10-01 14:45:03 +00:00
if ( status ! = 0 )
2013-10-21 19:41:54 +00:00
col_append_fstr ( pinfo - > cinfo , COL_INFO , " , Error: %s " , val_to_str ( status , WERR_errors , " Unknown DOS error 0x%08x " ) ) ;
2005-12-02 10:54:05 +00:00
2005-10-11 09:32:09 +00:00
return offset ;
2005-04-28 09:50:03 +00:00
}
static int
2013-11-06 14:31:29 +00:00
dssetup_dissect_DsRoleGetDcOperationResults_request ( tvbuff_t * tvb _U_ , int offset _U_ , packet_info * pinfo _U_ , proto_tree * tree _U_ , dcerpc_info * di _U_ , guint8 * drep _U_ )
2005-04-28 09:50:03 +00:00
{
2013-11-24 20:55:55 +00:00
di - > dcerpc_procedure_name = " DsRoleGetDcOperationResults " ;
2005-10-11 09:32:09 +00:00
return offset ;
2005-04-28 09:50:03 +00:00
}
2005-10-11 09:32:09 +00:00
/* IDL: WERROR dssetup_DsRoleCancel( */
/* IDL: */
/* IDL: ); */
2005-04-28 09:50:03 +00:00
static int
2013-11-06 14:31:29 +00:00
dssetup_dissect_DsRoleCancel_response ( tvbuff_t * tvb _U_ , int offset _U_ , packet_info * pinfo _U_ , proto_tree * tree _U_ , dcerpc_info * di _U_ , guint8 * drep _U_ )
2005-04-28 09:50:03 +00:00
{
2005-12-02 10:54:05 +00:00
guint32 status ;
2013-11-24 20:55:55 +00:00
di - > dcerpc_procedure_name = " DsRoleCancel " ;
2013-11-06 14:31:29 +00:00
offset = dissect_ndr_uint32 ( tvb , offset , pinfo , tree , di , drep , hf_dssetup_werror , & status ) ;
2005-12-02 10:54:05 +00:00
2013-10-01 14:45:03 +00:00
if ( status ! = 0 )
2013-10-21 19:41:54 +00:00
col_append_fstr ( pinfo - > cinfo , COL_INFO , " , Error: %s " , val_to_str ( status , WERR_errors , " Unknown DOS error 0x%08x " ) ) ;
2005-12-02 10:54:05 +00:00
2005-10-11 09:32:09 +00:00
return offset ;
2005-04-28 09:50:03 +00:00
}
static int
2013-11-06 14:31:29 +00:00
dssetup_dissect_DsRoleCancel_request ( tvbuff_t * tvb _U_ , int offset _U_ , packet_info * pinfo _U_ , proto_tree * tree _U_ , dcerpc_info * di _U_ , guint8 * drep _U_ )
2005-04-28 09:50:03 +00:00
{
2013-11-24 20:55:55 +00:00
di - > dcerpc_procedure_name = " DsRoleCancel " ;
2005-10-11 09:32:09 +00:00
return offset ;
2005-04-28 09:50:03 +00:00
}
2005-10-11 09:32:09 +00:00
/* IDL: WERROR dssetup_DsRoleServerSaveStateForUpgrade( */
/* IDL: */
/* IDL: ); */
2005-04-28 09:50:03 +00:00
static int
2013-11-06 14:31:29 +00:00
dssetup_dissect_DsRoleServerSaveStateForUpgrade_response ( tvbuff_t * tvb _U_ , int offset _U_ , packet_info * pinfo _U_ , proto_tree * tree _U_ , dcerpc_info * di _U_ , guint8 * drep _U_ )
2005-04-28 09:50:03 +00:00
{
2005-12-02 10:54:05 +00:00
guint32 status ;
2013-11-24 20:55:55 +00:00
di - > dcerpc_procedure_name = " DsRoleServerSaveStateForUpgrade " ;
2013-11-06 14:31:29 +00:00
offset = dissect_ndr_uint32 ( tvb , offset , pinfo , tree , di , drep , hf_dssetup_werror , & status ) ;
2005-12-02 10:54:05 +00:00
2013-10-01 14:45:03 +00:00
if ( status ! = 0 )
2013-10-21 19:41:54 +00:00
col_append_fstr ( pinfo - > cinfo , COL_INFO , " , Error: %s " , val_to_str ( status , WERR_errors , " Unknown DOS error 0x%08x " ) ) ;
2005-12-02 10:54:05 +00:00
2005-10-11 09:32:09 +00:00
return offset ;
2005-04-28 09:50:03 +00:00
}
static int
2013-11-06 14:31:29 +00:00
dssetup_dissect_DsRoleServerSaveStateForUpgrade_request ( tvbuff_t * tvb _U_ , int offset _U_ , packet_info * pinfo _U_ , proto_tree * tree _U_ , dcerpc_info * di _U_ , guint8 * drep _U_ )
2005-04-28 09:50:03 +00:00
{
2013-11-24 20:55:55 +00:00
di - > dcerpc_procedure_name = " DsRoleServerSaveStateForUpgrade " ;
2005-10-11 09:32:09 +00:00
return offset ;
2005-04-28 09:50:03 +00:00
}
2005-10-11 09:32:09 +00:00
/* IDL: WERROR dssetup_DsRoleUpgradeDownlevelServer( */
/* IDL: */
/* IDL: ); */
2005-04-28 09:50:03 +00:00
static int
2013-11-06 14:31:29 +00:00
dssetup_dissect_DsRoleUpgradeDownlevelServer_response ( tvbuff_t * tvb _U_ , int offset _U_ , packet_info * pinfo _U_ , proto_tree * tree _U_ , dcerpc_info * di _U_ , guint8 * drep _U_ )
2005-04-28 09:50:03 +00:00
{
2005-12-02 10:54:05 +00:00
guint32 status ;
2013-11-24 20:55:55 +00:00
di - > dcerpc_procedure_name = " DsRoleUpgradeDownlevelServer " ;
2013-11-06 14:31:29 +00:00
offset = dissect_ndr_uint32 ( tvb , offset , pinfo , tree , di , drep , hf_dssetup_werror , & status ) ;
2005-12-02 10:54:05 +00:00
2013-10-01 14:45:03 +00:00
if ( status ! = 0 )
2013-10-21 19:41:54 +00:00
col_append_fstr ( pinfo - > cinfo , COL_INFO , " , Error: %s " , val_to_str ( status , WERR_errors , " Unknown DOS error 0x%08x " ) ) ;
2005-12-02 10:54:05 +00:00
2005-10-11 09:32:09 +00:00
return offset ;
2005-04-28 09:50:03 +00:00
}
static int
2013-11-06 14:31:29 +00:00
dssetup_dissect_DsRoleUpgradeDownlevelServer_request ( tvbuff_t * tvb _U_ , int offset _U_ , packet_info * pinfo _U_ , proto_tree * tree _U_ , dcerpc_info * di _U_ , guint8 * drep _U_ )
2005-04-28 09:50:03 +00:00
{
2013-11-24 20:55:55 +00:00
di - > dcerpc_procedure_name = " DsRoleUpgradeDownlevelServer " ;
2005-10-11 09:32:09 +00:00
return offset ;
2005-04-28 09:50:03 +00:00
}
2005-10-11 09:32:09 +00:00
/* IDL: WERROR dssetup_DsRoleAbortDownlevelServerUpgrade( */
/* IDL: */
/* IDL: ); */
2005-04-28 09:50:03 +00:00
static int
2013-11-06 14:31:29 +00:00
dssetup_dissect_DsRoleAbortDownlevelServerUpgrade_response ( tvbuff_t * tvb _U_ , int offset _U_ , packet_info * pinfo _U_ , proto_tree * tree _U_ , dcerpc_info * di _U_ , guint8 * drep _U_ )
2005-04-28 09:50:03 +00:00
{
2005-12-02 10:54:05 +00:00
guint32 status ;
2013-11-24 20:55:55 +00:00
di - > dcerpc_procedure_name = " DsRoleAbortDownlevelServerUpgrade " ;
2013-11-06 14:31:29 +00:00
offset = dissect_ndr_uint32 ( tvb , offset , pinfo , tree , di , drep , hf_dssetup_werror , & status ) ;
2005-12-02 10:54:05 +00:00
2013-10-01 14:45:03 +00:00
if ( status ! = 0 )
2013-10-21 19:41:54 +00:00
col_append_fstr ( pinfo - > cinfo , COL_INFO , " , Error: %s " , val_to_str ( status , WERR_errors , " Unknown DOS error 0x%08x " ) ) ;
2005-12-02 10:54:05 +00:00
2005-10-11 09:32:09 +00:00
return offset ;
2005-04-28 09:50:03 +00:00
}
2005-10-11 09:32:09 +00:00
static int
2013-11-06 14:31:29 +00:00
dssetup_dissect_DsRoleAbortDownlevelServerUpgrade_request ( tvbuff_t * tvb _U_ , int offset _U_ , packet_info * pinfo _U_ , proto_tree * tree _U_ , dcerpc_info * di _U_ , guint8 * drep _U_ )
2002-11-01 00:42:00 +00:00
{
2013-11-24 20:55:55 +00:00
di - > dcerpc_procedure_name = " DsRoleAbortDownlevelServerUpgrade " ;
2005-10-11 09:32:09 +00:00
return offset ;
}
static dcerpc_sub_dissector dssetup_dissectors [ ] = {
{ 0 , " DsRoleGetPrimaryDomainInformation " ,
dssetup_dissect_DsRoleGetPrimaryDomainInformation_request , dssetup_dissect_DsRoleGetPrimaryDomainInformation_response } ,
{ 1 , " DsRoleDnsNameToFlatName " ,
dssetup_dissect_DsRoleDnsNameToFlatName_request , dssetup_dissect_DsRoleDnsNameToFlatName_response } ,
{ 2 , " DsRoleDcAsDc " ,
dssetup_dissect_DsRoleDcAsDc_request , dssetup_dissect_DsRoleDcAsDc_response } ,
{ 3 , " DsRoleDcAsReplica " ,
dssetup_dissect_DsRoleDcAsReplica_request , dssetup_dissect_DsRoleDcAsReplica_response } ,
{ 4 , " DsRoleDemoteDc " ,
dssetup_dissect_DsRoleDemoteDc_request , dssetup_dissect_DsRoleDemoteDc_response } ,
{ 5 , " DsRoleGetDcOperationProgress " ,
dssetup_dissect_DsRoleGetDcOperationProgress_request , dssetup_dissect_DsRoleGetDcOperationProgress_response } ,
{ 6 , " DsRoleGetDcOperationResults " ,
dssetup_dissect_DsRoleGetDcOperationResults_request , dssetup_dissect_DsRoleGetDcOperationResults_response } ,
{ 7 , " DsRoleCancel " ,
dssetup_dissect_DsRoleCancel_request , dssetup_dissect_DsRoleCancel_response } ,
{ 8 , " DsRoleServerSaveStateForUpgrade " ,
dssetup_dissect_DsRoleServerSaveStateForUpgrade_request , dssetup_dissect_DsRoleServerSaveStateForUpgrade_response } ,
{ 9 , " DsRoleUpgradeDownlevelServer " ,
dssetup_dissect_DsRoleUpgradeDownlevelServer_request , dssetup_dissect_DsRoleUpgradeDownlevelServer_response } ,
{ 10 , " DsRoleAbortDownlevelServerUpgrade " ,
dssetup_dissect_DsRoleAbortDownlevelServerUpgrade_request , dssetup_dissect_DsRoleAbortDownlevelServerUpgrade_response } ,
{ 0 , NULL , NULL , NULL }
} ;
2005-04-28 09:50:03 +00:00
2005-10-11 09:32:09 +00:00
void proto_register_dcerpc_dssetup ( void )
{
static hf_register_info hf [ ] = {
2005-12-10 22:42:19 +00:00
{ & hf_dssetup_dssetup_DsRoleGetPrimaryDomainInformation_level ,
2013-10-21 19:41:54 +00:00
{ " Level " , " dssetup.dssetup_DsRoleGetPrimaryDomainInformation.level " , FT_UINT1632 , BASE_DEC , VALS ( dssetup_dssetup_DsRoleInfoLevel_vals ) , 0 , NULL , HFILL } } ,
2005-12-10 22:42:19 +00:00
{ & hf_dssetup_opnum ,
From Kovarththanan Rajaratnam via bug 3548:
(1) Trailing/leading spaces are removed from 'name's/'blurb's
(2) Duplicate 'blurb's are replaced with NULL
(3) Empty ("") 'blurb's are replaced with NULL
(4) BASE_NONE, NULL, 0x0 are used for 'display', 'strings' and 'bitmask' fields
for FT_NONE, FT_BYTES, FT_IPv4, FT_IPv6, FT_ABSOLUTE_TIME, FT_RELATIVE_TIME,
FT_PROTOCOL, FT_STRING and FT_STRINGZ field types
(5) Only allow non-zero value for 'display' if 'bitmask' is non-zero
svn path=/trunk/; revision=28770
2009-06-18 21:30:42 +00:00
{ " Operation " , " dssetup.opnum " , FT_UINT16 , BASE_DEC , NULL , 0 , NULL , HFILL } } ,
2005-12-10 22:42:19 +00:00
{ & hf_dssetup_dssetup_DsRolePrimaryDomInfoBasic_flags ,
From Kovarththanan Rajaratnam via bug 3548:
(1) Trailing/leading spaces are removed from 'name's/'blurb's
(2) Duplicate 'blurb's are replaced with NULL
(3) Empty ("") 'blurb's are replaced with NULL
(4) BASE_NONE, NULL, 0x0 are used for 'display', 'strings' and 'bitmask' fields
for FT_NONE, FT_BYTES, FT_IPv4, FT_IPv6, FT_ABSOLUTE_TIME, FT_RELATIVE_TIME,
FT_PROTOCOL, FT_STRING and FT_STRINGZ field types
(5) Only allow non-zero value for 'display' if 'bitmask' is non-zero
svn path=/trunk/; revision=28770
2009-06-18 21:30:42 +00:00
{ " Flags " , " dssetup.dssetup_DsRolePrimaryDomInfoBasic.flags " , FT_UINT32 , BASE_HEX , NULL , 0 , NULL , HFILL } } ,
2005-12-10 22:42:19 +00:00
{ & hf_dssetup_dssetup_DsRoleUpgradeStatus_previous_role ,
2013-10-21 19:41:54 +00:00
{ " Previous Role " , " dssetup.dssetup_DsRoleUpgradeStatus.previous_role " , FT_UINT1632 , BASE_DEC , VALS ( dssetup_dssetup_DsPrevious_vals ) , 0 , NULL , HFILL } } ,
2005-12-10 22:42:19 +00:00
{ & hf_dssetup_dssetup_DsRoleInfo_opstatus ,
From Kovarththanan Rajaratnam via bug 3548:
(1) Trailing/leading spaces are removed from 'name's/'blurb's
(2) Duplicate 'blurb's are replaced with NULL
(3) Empty ("") 'blurb's are replaced with NULL
(4) BASE_NONE, NULL, 0x0 are used for 'display', 'strings' and 'bitmask' fields
for FT_NONE, FT_BYTES, FT_IPv4, FT_IPv6, FT_ABSOLUTE_TIME, FT_RELATIVE_TIME,
FT_PROTOCOL, FT_STRING and FT_STRINGZ field types
(5) Only allow non-zero value for 'display' if 'bitmask' is non-zero
svn path=/trunk/; revision=28770
2009-06-18 21:30:42 +00:00
{ " Opstatus " , " dssetup.dssetup_DsRoleInfo.opstatus " , FT_NONE , BASE_NONE , NULL , 0 , NULL , HFILL } } ,
2005-12-02 10:54:05 +00:00
{ & hf_dssetup_dssetup_DsRolePrimaryDomInfoBasic_domain_guid ,
From Kovarththanan Rajaratnam via bug 3548:
(1) Trailing/leading spaces are removed from 'name's/'blurb's
(2) Duplicate 'blurb's are replaced with NULL
(3) Empty ("") 'blurb's are replaced with NULL
(4) BASE_NONE, NULL, 0x0 are used for 'display', 'strings' and 'bitmask' fields
for FT_NONE, FT_BYTES, FT_IPv4, FT_IPv6, FT_ABSOLUTE_TIME, FT_RELATIVE_TIME,
FT_PROTOCOL, FT_STRING and FT_STRINGZ field types
(5) Only allow non-zero value for 'display' if 'bitmask' is non-zero
svn path=/trunk/; revision=28770
2009-06-18 21:30:42 +00:00
{ " Domain Guid " , " dssetup.dssetup_DsRolePrimaryDomInfoBasic.domain_guid " , FT_GUID , BASE_NONE , NULL , 0 , NULL , HFILL } } ,
2005-12-10 22:42:19 +00:00
{ & hf_dssetup_dssetup_DsRoleOpStatus_status ,
2013-10-21 19:41:54 +00:00
{ " Status " , " dssetup.dssetup_DsRoleOpStatus.status " , FT_UINT1632 , BASE_DEC , VALS ( dssetup_dssetup_DsRoleOp_vals ) , 0 , NULL , HFILL } } ,
2005-12-02 10:54:05 +00:00
{ & hf_dssetup_dssetup_DsRoleInfo_upgrade ,
From Kovarththanan Rajaratnam via bug 3548:
(1) Trailing/leading spaces are removed from 'name's/'blurb's
(2) Duplicate 'blurb's are replaced with NULL
(3) Empty ("") 'blurb's are replaced with NULL
(4) BASE_NONE, NULL, 0x0 are used for 'display', 'strings' and 'bitmask' fields
for FT_NONE, FT_BYTES, FT_IPv4, FT_IPv6, FT_ABSOLUTE_TIME, FT_RELATIVE_TIME,
FT_PROTOCOL, FT_STRING and FT_STRINGZ field types
(5) Only allow non-zero value for 'display' if 'bitmask' is non-zero
svn path=/trunk/; revision=28770
2009-06-18 21:30:42 +00:00
{ " Upgrade " , " dssetup.dssetup_DsRoleInfo.upgrade " , FT_NONE , BASE_NONE , NULL , 0 , NULL , HFILL } } ,
2005-12-10 22:42:19 +00:00
{ & hf_dssetup_dssetup_DsRoleGetPrimaryDomainInformation_info ,
From Kovarththanan Rajaratnam via bug 3548:
(1) Trailing/leading spaces are removed from 'name's/'blurb's
(2) Duplicate 'blurb's are replaced with NULL
(3) Empty ("") 'blurb's are replaced with NULL
(4) BASE_NONE, NULL, 0x0 are used for 'display', 'strings' and 'bitmask' fields
for FT_NONE, FT_BYTES, FT_IPv4, FT_IPv6, FT_ABSOLUTE_TIME, FT_RELATIVE_TIME,
FT_PROTOCOL, FT_STRING and FT_STRINGZ field types
(5) Only allow non-zero value for 'display' if 'bitmask' is non-zero
svn path=/trunk/; revision=28770
2009-06-18 21:30:42 +00:00
{ " Info " , " dssetup.dssetup_DsRoleGetPrimaryDomainInformation.info " , FT_NONE , BASE_NONE , NULL , 0 , NULL , HFILL } } ,
2005-12-02 10:54:05 +00:00
{ & hf_dssetup_dssetup_DsRoleFlags_DS_ROLE_UPGRADE_IN_PROGRESS ,
From Kovarththanan Rajaratnam via bug 3548:
(1) Trailing/leading spaces are removed from 'name's/'blurb's
(2) Duplicate 'blurb's are replaced with NULL
(3) Empty ("") 'blurb's are replaced with NULL
(4) BASE_NONE, NULL, 0x0 are used for 'display', 'strings' and 'bitmask' fields
for FT_NONE, FT_BYTES, FT_IPv4, FT_IPv6, FT_ABSOLUTE_TIME, FT_RELATIVE_TIME,
FT_PROTOCOL, FT_STRING and FT_STRINGZ field types
(5) Only allow non-zero value for 'display' if 'bitmask' is non-zero
svn path=/trunk/; revision=28770
2009-06-18 21:30:42 +00:00
{ " Ds Role Upgrade In Progress " , " dssetup.dssetup_DsRoleFlags.DS_ROLE_UPGRADE_IN_PROGRESS " , FT_BOOLEAN , 32 , TFS ( & dssetup_DsRoleFlags_DS_ROLE_UPGRADE_IN_PROGRESS_tfs ) , ( 0x00000004 ) , NULL , HFILL } } ,
2005-12-10 22:42:19 +00:00
{ & hf_dssetup_dssetup_DsRoleFlags_DS_ROLE_PRIMARY_DOMAIN_GUID_PRESENT ,
From Kovarththanan Rajaratnam via bug 3548:
(1) Trailing/leading spaces are removed from 'name's/'blurb's
(2) Duplicate 'blurb's are replaced with NULL
(3) Empty ("") 'blurb's are replaced with NULL
(4) BASE_NONE, NULL, 0x0 are used for 'display', 'strings' and 'bitmask' fields
for FT_NONE, FT_BYTES, FT_IPv4, FT_IPv6, FT_ABSOLUTE_TIME, FT_RELATIVE_TIME,
FT_PROTOCOL, FT_STRING and FT_STRINGZ field types
(5) Only allow non-zero value for 'display' if 'bitmask' is non-zero
svn path=/trunk/; revision=28770
2009-06-18 21:30:42 +00:00
{ " Ds Role Primary Domain Guid Present " , " dssetup.dssetup_DsRoleFlags.DS_ROLE_PRIMARY_DOMAIN_GUID_PRESENT " , FT_BOOLEAN , 32 , TFS ( & dssetup_DsRoleFlags_DS_ROLE_PRIMARY_DOMAIN_GUID_PRESENT_tfs ) , ( 0x01000000 ) , NULL , HFILL } } ,
2005-12-10 22:42:19 +00:00
{ & hf_dssetup_dssetup_DsRoleInfo_basic ,
From Kovarththanan Rajaratnam via bug 3548:
(1) Trailing/leading spaces are removed from 'name's/'blurb's
(2) Duplicate 'blurb's are replaced with NULL
(3) Empty ("") 'blurb's are replaced with NULL
(4) BASE_NONE, NULL, 0x0 are used for 'display', 'strings' and 'bitmask' fields
for FT_NONE, FT_BYTES, FT_IPv4, FT_IPv6, FT_ABSOLUTE_TIME, FT_RELATIVE_TIME,
FT_PROTOCOL, FT_STRING and FT_STRINGZ field types
(5) Only allow non-zero value for 'display' if 'bitmask' is non-zero
svn path=/trunk/; revision=28770
2009-06-18 21:30:42 +00:00
{ " Basic " , " dssetup.dssetup_DsRoleInfo.basic " , FT_NONE , BASE_NONE , NULL , 0 , NULL , HFILL } } ,
2005-12-02 10:54:05 +00:00
{ & hf_dssetup_dssetup_DsRolePrimaryDomInfoBasic_role ,
2013-10-21 19:41:54 +00:00
{ " Role " , " dssetup.dssetup_DsRolePrimaryDomInfoBasic.role " , FT_UINT1632 , BASE_DEC , VALS ( dssetup_dssetup_DsRole_vals ) , 0 , NULL , HFILL } } ,
2005-12-02 10:54:05 +00:00
{ & hf_dssetup_dssetup_DsRoleFlags_DS_ROLE_PRIMARY_DS_RUNNING ,
From Kovarththanan Rajaratnam via bug 3548:
(1) Trailing/leading spaces are removed from 'name's/'blurb's
(2) Duplicate 'blurb's are replaced with NULL
(3) Empty ("") 'blurb's are replaced with NULL
(4) BASE_NONE, NULL, 0x0 are used for 'display', 'strings' and 'bitmask' fields
for FT_NONE, FT_BYTES, FT_IPv4, FT_IPv6, FT_ABSOLUTE_TIME, FT_RELATIVE_TIME,
FT_PROTOCOL, FT_STRING and FT_STRINGZ field types
(5) Only allow non-zero value for 'display' if 'bitmask' is non-zero
svn path=/trunk/; revision=28770
2009-06-18 21:30:42 +00:00
{ " Ds Role Primary Ds Running " , " dssetup.dssetup_DsRoleFlags.DS_ROLE_PRIMARY_DS_RUNNING " , FT_BOOLEAN , 32 , TFS ( & dssetup_DsRoleFlags_DS_ROLE_PRIMARY_DS_RUNNING_tfs ) , ( 0x00000001 ) , NULL , HFILL } } ,
2005-12-10 22:42:19 +00:00
{ & hf_dssetup_dssetup_DsRolePrimaryDomInfoBasic_dns_domain ,
From Kovarththanan Rajaratnam via bug 3548:
(1) Trailing/leading spaces are removed from 'name's/'blurb's
(2) Duplicate 'blurb's are replaced with NULL
(3) Empty ("") 'blurb's are replaced with NULL
(4) BASE_NONE, NULL, 0x0 are used for 'display', 'strings' and 'bitmask' fields
for FT_NONE, FT_BYTES, FT_IPv4, FT_IPv6, FT_ABSOLUTE_TIME, FT_RELATIVE_TIME,
FT_PROTOCOL, FT_STRING and FT_STRINGZ field types
(5) Only allow non-zero value for 'display' if 'bitmask' is non-zero
svn path=/trunk/; revision=28770
2009-06-18 21:30:42 +00:00
{ " Dns Domain " , " dssetup.dssetup_DsRolePrimaryDomInfoBasic.dns_domain " , FT_STRING , BASE_NONE , NULL , 0 , NULL , HFILL } } ,
2005-12-10 22:42:19 +00:00
{ & hf_dssetup_dssetup_DsRoleUpgradeStatus_upgrading ,
From Kovarththanan Rajaratnam via bug 3548:
(1) Trailing/leading spaces are removed from 'name's/'blurb's
(2) Duplicate 'blurb's are replaced with NULL
(3) Empty ("") 'blurb's are replaced with NULL
(4) BASE_NONE, NULL, 0x0 are used for 'display', 'strings' and 'bitmask' fields
for FT_NONE, FT_BYTES, FT_IPv4, FT_IPv6, FT_ABSOLUTE_TIME, FT_RELATIVE_TIME,
FT_PROTOCOL, FT_STRING and FT_STRINGZ field types
(5) Only allow non-zero value for 'display' if 'bitmask' is non-zero
svn path=/trunk/; revision=28770
2009-06-18 21:30:42 +00:00
{ " Upgrading " , " dssetup.dssetup_DsRoleUpgradeStatus.upgrading " , FT_UINT32 , BASE_DEC , VALS ( dssetup_dssetup_DsUpgrade_vals ) , 0 , NULL , HFILL } } ,
2005-12-10 22:42:19 +00:00
{ & hf_dssetup_dssetup_DsRolePrimaryDomInfoBasic_domain ,
From Kovarththanan Rajaratnam via bug 3548:
(1) Trailing/leading spaces are removed from 'name's/'blurb's
(2) Duplicate 'blurb's are replaced with NULL
(3) Empty ("") 'blurb's are replaced with NULL
(4) BASE_NONE, NULL, 0x0 are used for 'display', 'strings' and 'bitmask' fields
for FT_NONE, FT_BYTES, FT_IPv4, FT_IPv6, FT_ABSOLUTE_TIME, FT_RELATIVE_TIME,
FT_PROTOCOL, FT_STRING and FT_STRINGZ field types
(5) Only allow non-zero value for 'display' if 'bitmask' is non-zero
svn path=/trunk/; revision=28770
2009-06-18 21:30:42 +00:00
{ " Domain " , " dssetup.dssetup_DsRolePrimaryDomInfoBasic.domain " , FT_STRING , BASE_NONE , NULL , 0 , NULL , HFILL } } ,
2005-12-10 22:42:19 +00:00
{ & hf_dssetup_werror ,
2013-10-21 19:41:54 +00:00
{ " Windows Error " , " dssetup.werror " , FT_UINT32 , BASE_HEX , VALS ( WERR_errors ) , 0 , NULL , HFILL } } ,
2005-12-10 22:42:19 +00:00
{ & hf_dssetup_dssetup_DsRoleFlags_DS_ROLE_PRIMARY_DS_MIXED_MODE ,
From Kovarththanan Rajaratnam via bug 3548:
(1) Trailing/leading spaces are removed from 'name's/'blurb's
(2) Duplicate 'blurb's are replaced with NULL
(3) Empty ("") 'blurb's are replaced with NULL
(4) BASE_NONE, NULL, 0x0 are used for 'display', 'strings' and 'bitmask' fields
for FT_NONE, FT_BYTES, FT_IPv4, FT_IPv6, FT_ABSOLUTE_TIME, FT_RELATIVE_TIME,
FT_PROTOCOL, FT_STRING and FT_STRINGZ field types
(5) Only allow non-zero value for 'display' if 'bitmask' is non-zero
svn path=/trunk/; revision=28770
2009-06-18 21:30:42 +00:00
{ " Ds Role Primary Ds Mixed Mode " , " dssetup.dssetup_DsRoleFlags.DS_ROLE_PRIMARY_DS_MIXED_MODE " , FT_BOOLEAN , 32 , TFS ( & dssetup_DsRoleFlags_DS_ROLE_PRIMARY_DS_MIXED_MODE_tfs ) , ( 0x00000002 ) , NULL , HFILL } } ,
2005-12-10 22:42:19 +00:00
{ & hf_dssetup_dssetup_DsRolePrimaryDomInfoBasic_forest ,
From Kovarththanan Rajaratnam via bug 3548:
(1) Trailing/leading spaces are removed from 'name's/'blurb's
(2) Duplicate 'blurb's are replaced with NULL
(3) Empty ("") 'blurb's are replaced with NULL
(4) BASE_NONE, NULL, 0x0 are used for 'display', 'strings' and 'bitmask' fields
for FT_NONE, FT_BYTES, FT_IPv4, FT_IPv6, FT_ABSOLUTE_TIME, FT_RELATIVE_TIME,
FT_PROTOCOL, FT_STRING and FT_STRINGZ field types
(5) Only allow non-zero value for 'display' if 'bitmask' is non-zero
svn path=/trunk/; revision=28770
2009-06-18 21:30:42 +00:00
{ " Forest " , " dssetup.dssetup_DsRolePrimaryDomInfoBasic.forest " , FT_STRING , BASE_NONE , NULL , 0 , NULL , HFILL } } ,
2005-10-11 09:32:09 +00:00
} ;
2005-04-28 09:50:03 +00:00
2005-10-11 09:32:09 +00:00
static gint * ett [ ] = {
& ett_dcerpc_dssetup ,
& ett_dssetup_dssetup_DsRoleFlags ,
& ett_dssetup_dssetup_DsRolePrimaryDomInfoBasic ,
& ett_dssetup_dssetup_DsRoleUpgradeStatus ,
& ett_dssetup_dssetup_DsRoleOpStatus ,
& ett_dssetup_dssetup_DsRoleInfo ,
2002-11-14 04:39:39 +00:00
} ;
2005-10-11 09:32:09 +00:00
proto_dcerpc_dssetup = proto_register_protocol ( " Active Directory Setup " , " DSSETUP " , " dssetup " ) ;
proto_register_field_array ( proto_dcerpc_dssetup , hf , array_length ( hf ) ) ;
proto_register_subtree_array ( ett , array_length ( ett ) ) ;
}
2002-11-01 00:42:00 +00:00
2005-10-11 09:32:09 +00:00
void proto_reg_handoff_dcerpc_dssetup ( void )
2002-11-01 00:42:00 +00:00
{
2005-10-11 09:32:09 +00:00
dcerpc_init_uuid ( proto_dcerpc_dssetup , ett_dcerpc_dssetup ,
& uuid_dcerpc_dssetup , ver_dcerpc_dssetup ,
dssetup_dissectors , hf_dssetup_opnum ) ;
2002-11-01 00:42:00 +00:00
}