From ac477e9b5d079a32555e06becb1dd3ff4fda1523 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jo=C3=A3o=20Valverde?= Date: Wed, 16 Mar 2016 05:50:02 +0000 Subject: Add basic PIDL Makefile MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Change-Id: I8f4c8e312df73b70f3cacd0df768375b46197ae6 Reviewed-on: https://code.wireshark.org/review/14507 Petri-Dish: João Valverde Reviewed-by: João Valverde Reviewed-by: Alexis La Goutte --- configure.ac | 1 - epan/dissectors/Makefile.am | 7 +- epan/dissectors/pidl/.gitignore | 1 + epan/dissectors/pidl/Makefile | 153 + epan/dissectors/pidl/Makefile.am | 81 - epan/dissectors/pidl/README | 7 +- epan/dissectors/pidl/atsvc.cnf | 13 - epan/dissectors/pidl/atsvc.idl | 119 - epan/dissectors/pidl/atsvc/atsvc.cnf | 13 + epan/dissectors/pidl/atsvc/atsvc.idl | 119 + epan/dissectors/pidl/dfs.cnf | 3 - epan/dissectors/pidl/dfs.idl | 394 --- epan/dissectors/pidl/dfs/dfs.cnf | 3 + epan/dissectors/pidl/dfs/dfs.idl | 394 +++ epan/dissectors/pidl/dnsserver.cnf | 94 - epan/dissectors/pidl/dnsserver.idl | 402 --- epan/dissectors/pidl/dnsserver/dnsserver.cnf | 94 + epan/dissectors/pidl/dnsserver/dnsserver.idl | 402 +++ epan/dissectors/pidl/dssetup.idl | 101 - epan/dissectors/pidl/dssetup/dssetup.idl | 101 + epan/dissectors/pidl/efs.cnf | 27 - epan/dissectors/pidl/efs.idl | 108 - epan/dissectors/pidl/efs/efs.cnf | 27 + epan/dissectors/pidl/efs/efs.idl | 108 + epan/dissectors/pidl/eventlog.cnf | 158 - epan/dissectors/pidl/eventlog.idl | 224 -- epan/dissectors/pidl/eventlog/eventlog.cnf | 158 + epan/dissectors/pidl/eventlog/eventlog.idl | 224 ++ epan/dissectors/pidl/frsrpc.cnf | 116 - epan/dissectors/pidl/frsrpc.idl | 422 --- epan/dissectors/pidl/frsrpc/frsrpc.cnf | 116 + epan/dissectors/pidl/frsrpc/frsrpc.idl | 422 +++ epan/dissectors/pidl/frstrans.cnf | 15 - epan/dissectors/pidl/frstrans.idl | 285 -- epan/dissectors/pidl/frstrans/frstrans.cnf | 15 + epan/dissectors/pidl/frstrans/frstrans.idl | 285 ++ epan/dissectors/pidl/initshutdown.cnf | 1 - epan/dissectors/pidl/initshutdown.idl | 91 - epan/dissectors/pidl/initshutdown/initshutdown.cnf | 1 + epan/dissectors/pidl/initshutdown/initshutdown.idl | 91 + epan/dissectors/pidl/lsa.cnf | 387 --- epan/dissectors/pidl/lsa.idl | 1122 ------- epan/dissectors/pidl/lsa/lsa.cnf | 387 +++ epan/dissectors/pidl/lsa/lsa.idl | 1122 +++++++ epan/dissectors/pidl/mapi/Makefile | 18 - epan/dissectors/pidl/mapi/mapicodes_enum.h | 98 - epan/dissectors/pidl/mapi/mapitags_enum.h | 3421 -------------------- epan/dissectors/pidl/mapicodes_enum.h | 98 + epan/dissectors/pidl/mapitags_enum.h | 3421 ++++++++++++++++++++ epan/dissectors/pidl/mdssvc.cnf | 25 - epan/dissectors/pidl/mdssvc.idl | 60 - epan/dissectors/pidl/mdssvc/mdssvc.cnf | 25 + epan/dissectors/pidl/mdssvc/mdssvc.idl | 60 + epan/dissectors/pidl/misc.cnf | 1 - epan/dissectors/pidl/misc.idl | 80 - epan/dissectors/pidl/misc/misc.cnf | 1 + epan/dissectors/pidl/misc/misc.idl | 80 + epan/dissectors/pidl/nspi/Makefile | 12 - epan/dissectors/pidl/nspi/README.ws | 3 - epan/dissectors/pidl/nspi/mapicodes_enum.h | 98 - epan/dissectors/pidl/nspi/mapitags_enum.h | 3421 -------------------- epan/dissectors/pidl/rfr/Makefile | 12 - epan/dissectors/pidl/rfr/mapicodes_enum.h | 98 - epan/dissectors/pidl/samr.cnf | 476 --- epan/dissectors/pidl/samr.idl | 1542 --------- epan/dissectors/pidl/samr/samr.cnf | 476 +++ epan/dissectors/pidl/samr/samr.idl | 1542 +++++++++ epan/dissectors/pidl/srvsvc.cnf | 138 - epan/dissectors/pidl/srvsvc.idl | 1528 --------- epan/dissectors/pidl/srvsvc/srvsvc.cnf | 138 + epan/dissectors/pidl/srvsvc/srvsvc.idl | 1528 +++++++++ epan/dissectors/pidl/winreg.cnf | 229 -- epan/dissectors/pidl/winreg.idl | 460 --- epan/dissectors/pidl/winreg/winreg.cnf | 229 ++ epan/dissectors/pidl/winreg/winreg.idl | 460 +++ epan/dissectors/pidl/witness.cnf | 203 -- epan/dissectors/pidl/witness.idl | 152 - epan/dissectors/pidl/witness/witness.cnf | 203 ++ epan/dissectors/pidl/witness/witness.idl | 152 + epan/dissectors/pidl/wkssvc.cnf | 87 - epan/dissectors/pidl/wkssvc.idl | 794 ----- epan/dissectors/pidl/wkssvc/wkssvc.cnf | 87 + epan/dissectors/pidl/wkssvc/wkssvc.idl | 794 +++++ epan/dissectors/pidl/wzcsvc.cnf | 2 - epan/dissectors/pidl/wzcsvc.idl | 31 - epan/dissectors/pidl/wzcsvc/wzcsvc.cnf | 2 + epan/dissectors/pidl/wzcsvc/wzcsvc.idl | 31 + tools/pidl/lib/Parse/Pidl/Wireshark/NDR.pm | 1 + 88 files changed, 13570 insertions(+), 17161 deletions(-) create mode 100644 epan/dissectors/pidl/.gitignore create mode 100644 epan/dissectors/pidl/Makefile delete mode 100644 epan/dissectors/pidl/Makefile.am delete mode 100644 epan/dissectors/pidl/atsvc.cnf delete mode 100644 epan/dissectors/pidl/atsvc.idl create mode 100644 epan/dissectors/pidl/atsvc/atsvc.cnf create mode 100644 epan/dissectors/pidl/atsvc/atsvc.idl delete mode 100644 epan/dissectors/pidl/dfs.cnf delete mode 100644 epan/dissectors/pidl/dfs.idl create mode 100644 epan/dissectors/pidl/dfs/dfs.cnf create mode 100644 epan/dissectors/pidl/dfs/dfs.idl delete mode 100644 epan/dissectors/pidl/dnsserver.cnf delete mode 100644 epan/dissectors/pidl/dnsserver.idl create mode 100644 epan/dissectors/pidl/dnsserver/dnsserver.cnf create mode 100644 epan/dissectors/pidl/dnsserver/dnsserver.idl delete mode 100644 epan/dissectors/pidl/dssetup.idl create mode 100644 epan/dissectors/pidl/dssetup/dssetup.idl delete mode 100644 epan/dissectors/pidl/efs.cnf delete mode 100644 epan/dissectors/pidl/efs.idl create mode 100644 epan/dissectors/pidl/efs/efs.cnf create mode 100644 epan/dissectors/pidl/efs/efs.idl delete mode 100644 epan/dissectors/pidl/eventlog.cnf delete mode 100644 epan/dissectors/pidl/eventlog.idl create mode 100644 epan/dissectors/pidl/eventlog/eventlog.cnf create mode 100644 epan/dissectors/pidl/eventlog/eventlog.idl delete mode 100644 epan/dissectors/pidl/frsrpc.cnf delete mode 100644 epan/dissectors/pidl/frsrpc.idl create mode 100644 epan/dissectors/pidl/frsrpc/frsrpc.cnf create mode 100644 epan/dissectors/pidl/frsrpc/frsrpc.idl delete mode 100644 epan/dissectors/pidl/frstrans.cnf delete mode 100644 epan/dissectors/pidl/frstrans.idl create mode 100644 epan/dissectors/pidl/frstrans/frstrans.cnf create mode 100644 epan/dissectors/pidl/frstrans/frstrans.idl delete mode 100644 epan/dissectors/pidl/initshutdown.cnf delete mode 100644 epan/dissectors/pidl/initshutdown.idl create mode 100644 epan/dissectors/pidl/initshutdown/initshutdown.cnf create mode 100644 epan/dissectors/pidl/initshutdown/initshutdown.idl delete mode 100644 epan/dissectors/pidl/lsa.cnf delete mode 100644 epan/dissectors/pidl/lsa.idl create mode 100644 epan/dissectors/pidl/lsa/lsa.cnf create mode 100644 epan/dissectors/pidl/lsa/lsa.idl delete mode 100644 epan/dissectors/pidl/mapi/Makefile delete mode 100644 epan/dissectors/pidl/mapi/mapicodes_enum.h delete mode 100644 epan/dissectors/pidl/mapi/mapitags_enum.h create mode 100644 epan/dissectors/pidl/mapicodes_enum.h create mode 100644 epan/dissectors/pidl/mapitags_enum.h delete mode 100644 epan/dissectors/pidl/mdssvc.cnf delete mode 100644 epan/dissectors/pidl/mdssvc.idl create mode 100644 epan/dissectors/pidl/mdssvc/mdssvc.cnf create mode 100644 epan/dissectors/pidl/mdssvc/mdssvc.idl delete mode 100644 epan/dissectors/pidl/misc.cnf delete mode 100644 epan/dissectors/pidl/misc.idl create mode 100644 epan/dissectors/pidl/misc/misc.cnf create mode 100644 epan/dissectors/pidl/misc/misc.idl delete mode 100644 epan/dissectors/pidl/nspi/Makefile delete mode 100644 epan/dissectors/pidl/nspi/mapicodes_enum.h delete mode 100644 epan/dissectors/pidl/nspi/mapitags_enum.h delete mode 100644 epan/dissectors/pidl/rfr/Makefile delete mode 100644 epan/dissectors/pidl/rfr/mapicodes_enum.h delete mode 100644 epan/dissectors/pidl/samr.cnf delete mode 100644 epan/dissectors/pidl/samr.idl create mode 100644 epan/dissectors/pidl/samr/samr.cnf create mode 100644 epan/dissectors/pidl/samr/samr.idl delete mode 100644 epan/dissectors/pidl/srvsvc.cnf delete mode 100644 epan/dissectors/pidl/srvsvc.idl create mode 100644 epan/dissectors/pidl/srvsvc/srvsvc.cnf create mode 100644 epan/dissectors/pidl/srvsvc/srvsvc.idl delete mode 100644 epan/dissectors/pidl/winreg.cnf delete mode 100644 epan/dissectors/pidl/winreg.idl create mode 100644 epan/dissectors/pidl/winreg/winreg.cnf create mode 100644 epan/dissectors/pidl/winreg/winreg.idl delete mode 100644 epan/dissectors/pidl/witness.cnf delete mode 100644 epan/dissectors/pidl/witness.idl create mode 100644 epan/dissectors/pidl/witness/witness.cnf create mode 100644 epan/dissectors/pidl/witness/witness.idl delete mode 100644 epan/dissectors/pidl/wkssvc.cnf delete mode 100644 epan/dissectors/pidl/wkssvc.idl create mode 100644 epan/dissectors/pidl/wkssvc/wkssvc.cnf create mode 100644 epan/dissectors/pidl/wkssvc/wkssvc.idl delete mode 100644 epan/dissectors/pidl/wzcsvc.cnf delete mode 100644 epan/dissectors/pidl/wzcsvc.idl create mode 100644 epan/dissectors/pidl/wzcsvc/wzcsvc.cnf create mode 100644 epan/dissectors/pidl/wzcsvc/wzcsvc.idl diff --git a/configure.ac b/configure.ac index 50c3a32cc7..49079ea8ae 100644 --- a/configure.ac +++ b/configure.ac @@ -3283,7 +3283,6 @@ AC_OUTPUT( epan/dfilter/Makefile epan/dissectors/Makefile epan/dissectors/dcerpc/Makefile - epan/dissectors/pidl/Makefile epan/ftypes/Makefile epan/nghttp2/Makefile epan/wmem/Makefile diff --git a/epan/dissectors/Makefile.am b/epan/dissectors/Makefile.am index 2e3613d4c8..010e165135 100644 --- a/epan/dissectors/Makefile.am +++ b/epan/dissectors/Makefile.am @@ -42,8 +42,8 @@ libdissectors_la_SOURCES = \ $(PIDL_DISSECTOR_SRC) \ $(DISSECTOR_SUPPORT_SRC) -# include asn1 and pidl in the source tarball. But nothing to build... -DIST_SUBDIRS = asn1 pidl dcerpc +# include asn1 in the source tarball. But nothing to build... +DIST_SUBDIRS = asn1 dcerpc SUBDIRS = dcerpc @@ -56,7 +56,8 @@ EXTRA_DIST = \ README.X11 \ x11-fields \ CMakeLists.txt \ - CMakeListsCustom.txt.example + CMakeListsCustom.txt.example \ + pidl packet-ncp2222.c : $(top_srcdir)/tools/ncp2222.py $(AM_V_python)$(PYTHON) $(top_srcdir)/tools/ncp2222.py -o $@ diff --git a/epan/dissectors/pidl/.gitignore b/epan/dissectors/pidl/.gitignore new file mode 100644 index 0000000000..24600083db --- /dev/null +++ b/epan/dissectors/pidl/.gitignore @@ -0,0 +1 @@ +!Makefile diff --git a/epan/dissectors/pidl/Makefile b/epan/dissectors/pidl/Makefile new file mode 100644 index 0000000000..66e8e5d2f7 --- /dev/null +++ b/epan/dissectors/pidl/Makefile @@ -0,0 +1,153 @@ +# Makefile +# +# Wireshark - Network traffic analyzer +# By Gerald Combs +# Copyright 2004 Gerald Combs +# +# 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 2 +# 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, write to the Free Software +# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + +PIDL = ../../../../tools/pidl/pidl --ws-parser + +pidl_out = --outputdir ../.. +pidl_inc = --includedir .. + +SUBDIRS = \ + atsvc \ + dfs \ + dnsserver \ + dssetup \ + efs \ + eventlog \ + frsrpc \ + frstrans \ + initshutdown \ + lsa \ + mapi \ + mdssvc \ + misc \ + nspi \ + rfr \ + samr \ + winreg \ + witness \ + wzcsvc + +DONT_BUILD_SUBDIRS = \ + srvsvc \ + wkssvc + +all: $(SUBDIRS) + +.PHONY: $(SUBDIRS) $(DONT_BUILD_SUBDIRS) + +$(SUBDIRS) $(DONT_BUILD_SUBDIRS): %: ../packet-dcerpc-%.c ../packet-dcerpc-%.h + +../packet-dcerpc-atsvc.c \ +../packet-dcerpc-atsvc.h: atsvc/atsvc.idl atsvc/atsvc.cnf + cd $( -# Copyright 2004 Gerald Combs -# -# 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 2 -# 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, write to the Free Software -# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. - - -# Don't build anything, just add this stuff to the source tarball - -EXTRA_DIST = \ - README \ - IDL_LICENSE.txt \ - atsvc.cnf \ - atsvc.idl \ - dfs.cnf \ - dfs.idl \ - dnsserver.cnf \ - dnsserver.idl \ - dssetup.idl \ - efs.cnf \ - efs.idl \ - eventlog.cnf \ - eventlog.idl \ - frsrpc.cnf \ - frsrpc.idl \ - frstrans.cnf \ - frstrans.idl \ - idl_types.h \ - initshutdown.cnf \ - initshutdown.idl \ - lsa.cnf \ - lsa.idl \ - mdssvc.cnf \ - mdssvc.idl \ - misc.cnf \ - misc.idl \ - samr.cnf \ - samr.idl \ - srvsvc.cnf \ - srvsvc.idl \ - winreg.cnf \ - winreg.idl \ - wkssvc.cnf \ - wkssvc.idl \ - wzcsvc.cnf \ - wzcsvc.idl \ - mapi/mapi.cnf \ - mapi/mapi.idl \ - mapi/Makefile \ - mapi/mapicodes_enum.h \ - mapi/mapitags_enum.h \ - mapi/response.cnf.c \ - mapi/request.cnf.c \ - nspi/README \ - nspi/README.ws \ - nspi/mapicodes_enum.h \ - nspi/mapitags_enum.h \ - nspi/Makefile \ - nspi/nspi.cnf \ - nspi/nspi.idl \ - rfr/Makefile \ - rfr/mapicodes_enum.h \ - rfr/rfr.cnf \ - rfr/rfr.idl - -MAINTAINERCLEANFILES = \ - Makefile.in diff --git a/epan/dissectors/pidl/README b/epan/dissectors/pidl/README index 45bc5bcdbb..f275671db4 100644 --- a/epan/dissectors/pidl/README +++ b/epan/dissectors/pidl/README @@ -4,11 +4,8 @@ A note about PIDL generated files Quick guide =========== - for file in *.idl */*.idl; do - echo "Generating dissector for $file" - ../../../tools/pidl/pidl --includedir . --ws-parser -- $file; - done - cp packet-dcerpc*.* .. +Run 'make all' inside the pidl folder to generate all the dissectors and place +them in the epan/dissectors folder. Complete infos ============== diff --git a/epan/dissectors/pidl/atsvc.cnf b/epan/dissectors/pidl/atsvc.cnf deleted file mode 100644 index 4359cb9fe9..0000000000 --- a/epan/dissectors/pidl/atsvc.cnf +++ /dev/null @@ -1,13 +0,0 @@ -HF_FIELD hf_atsvc_job_id "Job Id" "atsvc.job_id" FT_UINT32 BASE_DEC NULL 0 "Identifier of the scheduled job" -HF_RENAME hf_atsvc_atsvc_JobAdd_job_id hf_atsvc_job_id -HF_RENAME hf_atsvc_atsvc_JobEnumInfo_job_id hf_atsvc_job_id -HF_RENAME hf_atsvc_atsvc_JobGetInfo_job_id hf_atsvc_job_id -HF_FIELD hf_atsvc_servername "Server" "atsvc.server" FT_STRING BASE_NONE NULL 0 "Name of the server" -HF_RENAME hf_atsvc_atsvc_JobEnum_servername hf_atsvc_servername -HF_RENAME hf_atsvc_atsvc_JobDel_servername hf_atsvc_servername -HF_RENAME hf_atsvc_atsvc_JobAdd_servername hf_atsvc_servername -HF_RENAME hf_atsvc_atsvc_JobGetInfo_servername hf_atsvc_servername -HF_FIELD hf_atsvc_job_info "JobInfo" "atcvs.job_info" FT_NONE BASE_NONE NULL 0 "JobInfo structure" -HF_RENAME hf_atsvc_atsvc_JobGetInfo_job_info hf_atsvc_job_info -HF_RENAME hf_atsvc_atsvc_JobAdd_job_info hf_atsvc_job_info - diff --git a/epan/dissectors/pidl/atsvc.idl b/epan/dissectors/pidl/atsvc.idl deleted file mode 100644 index 75e1daa882..0000000000 --- a/epan/dissectors/pidl/atsvc.idl +++ /dev/null @@ -1,119 +0,0 @@ -/* - atsvc interface definition -*/ - -[ uuid("1ff70682-0a51-30e8-076d-740be8cee98b"), - version(1.0), - pointer_default(unique), - helpstring("Microsoft AT-Scheduler Service"), - endpoint("ncacn_np:[\\pipe\\atsvc]", "ncalrpc:") -] interface atsvc -{ - typedef [bitmap32bit] bitmap { - First = 0x00000001, - Second = 0x00000002, - Third = 0x00000004, - Fourth = 0x00000008, - Fifth = 0x00000010, - Sixth = 0x00000020, - Seventh = 0x00000040, - Eight = 0x00000080, - Ninth = 0x00000100, - Tenth = 0x00000200, - Eleventh = 0x00000400, - Twelfth = 0x00000800, - Thitteenth = 0x00001000, - Fourteenth = 0x00002000, - Fifteenth = 0x00004000, - Sixteenth = 0x00008000, - Seventeenth = 0x00010000, - Eighteenth = 0x00020000, - Ninteenth = 0x00040000, - Twentyth = 0x00080000, - Twentyfirst = 0x00100000, - Twentysecond = 0x00200000, - Twentythird = 0x00400000, - Twentyfourth = 0x00800000, - Twentyfifth = 0x01000000, - Twentysixth = 0x02000000, - Twentyseventh = 0x04000000, - Twentyeighth = 0x08000000, - Twentyninth = 0x10000000, - Thirtieth = 0x20000000, - Thirtyfirst = 0x40000000 - } atsvc_DaysOfMonth; - - typedef [bitmap8bit] bitmap { - JOB_RUN_PERIODICALLY = 0x01, - JOB_EXEC_ERROR = 0x02, - JOB_RUNS_TODAY = 0x04, - JOB_ADD_CURRENT_DATE = 0x08, - JOB_NONINTERACTIVE = 0x10 - } atsvc_Flags; - - typedef [bitmap8bit] bitmap { - DAYSOFWEEK_MONDAY = 0x01, - DAYSOFWEEK_TUESDAY = 0x02, - DAYSOFWEEK_WEDNESDAY = 0x04, - DAYSOFWEEK_THURSDAY = 0x08, - DAYSOFWEEK_FRIDAY = 0x10, - DAYSOFWEEK_SATURDAY = 0x20, - DAYSOFWEEK_SUNDAY = 0x40 - } atsvc_DaysOfWeek; - - typedef struct { - uint32 job_time; - atsvc_DaysOfMonth days_of_month; - atsvc_DaysOfWeek days_of_week; - atsvc_Flags flags; - [string,charset(UTF16)] uint16 *command; - } atsvc_JobInfo; - - /******************/ - /* Function: 0x00 */ - [public] NTSTATUS atsvc_JobAdd( - [in,unique,string,charset(UTF16)] uint16 *servername, - [in] atsvc_JobInfo *job_info, - [out,ref] uint32 *job_id - ); - - /******************/ - /* Function: 0x01 */ - [public] NTSTATUS atsvc_JobDel( - [in,unique,string,charset(UTF16)] uint16 *servername, - [in] uint32 min_job_id, - [in] uint32 max_job_id - ); - - typedef struct { - uint32 job_id; - uint32 job_time; - atsvc_DaysOfMonth days_of_month; - atsvc_DaysOfWeek days_of_week; - atsvc_Flags flags; - [string,charset(UTF16)] uint16 *command; - } atsvc_JobEnumInfo; - - typedef struct { - uint32 entries_read; - [size_is(entries_read)] atsvc_JobEnumInfo *first_entry; - } atsvc_enum_ctr; - - /******************/ - /* Function: 0x02 */ - [public] NTSTATUS atsvc_JobEnum( - [in,unique,string,charset(UTF16)] uint16 *servername, - [in,out] atsvc_enum_ctr *ctr, - [in] uint32 preferred_max_len, - [out,ref] uint32 *total_entries, - [in,out,unique] uint32 *resume_handle - ); - - /******************/ - /* Function: 0x03 */ - [public] NTSTATUS atsvc_JobGetInfo( - [in,unique,string,charset(UTF16)] uint16 *servername, - [in] uint32 job_id, - [out] atsvc_JobInfo **job_info - ); -} diff --git a/epan/dissectors/pidl/atsvc/atsvc.cnf b/epan/dissectors/pidl/atsvc/atsvc.cnf new file mode 100644 index 0000000000..4359cb9fe9 --- /dev/null +++ b/epan/dissectors/pidl/atsvc/atsvc.cnf @@ -0,0 +1,13 @@ +HF_FIELD hf_atsvc_job_id "Job Id" "atsvc.job_id" FT_UINT32 BASE_DEC NULL 0 "Identifier of the scheduled job" +HF_RENAME hf_atsvc_atsvc_JobAdd_job_id hf_atsvc_job_id +HF_RENAME hf_atsvc_atsvc_JobEnumInfo_job_id hf_atsvc_job_id +HF_RENAME hf_atsvc_atsvc_JobGetInfo_job_id hf_atsvc_job_id +HF_FIELD hf_atsvc_servername "Server" "atsvc.server" FT_STRING BASE_NONE NULL 0 "Name of the server" +HF_RENAME hf_atsvc_atsvc_JobEnum_servername hf_atsvc_servername +HF_RENAME hf_atsvc_atsvc_JobDel_servername hf_atsvc_servername +HF_RENAME hf_atsvc_atsvc_JobAdd_servername hf_atsvc_servername +HF_RENAME hf_atsvc_atsvc_JobGetInfo_servername hf_atsvc_servername +HF_FIELD hf_atsvc_job_info "JobInfo" "atcvs.job_info" FT_NONE BASE_NONE NULL 0 "JobInfo structure" +HF_RENAME hf_atsvc_atsvc_JobGetInfo_job_info hf_atsvc_job_info +HF_RENAME hf_atsvc_atsvc_JobAdd_job_info hf_atsvc_job_info + diff --git a/epan/dissectors/pidl/atsvc/atsvc.idl b/epan/dissectors/pidl/atsvc/atsvc.idl new file mode 100644 index 0000000000..75e1daa882 --- /dev/null +++ b/epan/dissectors/pidl/atsvc/atsvc.idl @@ -0,0 +1,119 @@ +/* + atsvc interface definition +*/ + +[ uuid("1ff70682-0a51-30e8-076d-740be8cee98b"), + version(1.0), + pointer_default(unique), + helpstring("Microsoft AT-Scheduler Service"), + endpoint("ncacn_np:[\\pipe\\atsvc]", "ncalrpc:") +] interface atsvc +{ + typedef [bitmap32bit] bitmap { + First = 0x00000001, + Second = 0x00000002, + Third = 0x00000004, + Fourth = 0x00000008, + Fifth = 0x00000010, + Sixth = 0x00000020, + Seventh = 0x00000040, + Eight = 0x00000080, + Ninth = 0x00000100, + Tenth = 0x00000200, + Eleventh = 0x00000400, + Twelfth = 0x00000800, + Thitteenth = 0x00001000, + Fourteenth = 0x00002000, + Fifteenth = 0x00004000, + Sixteenth = 0x00008000, + Seventeenth = 0x00010000, + Eighteenth = 0x00020000, + Ninteenth = 0x00040000, + Twentyth = 0x00080000, + Twentyfirst = 0x00100000, + Twentysecond = 0x00200000, + Twentythird = 0x00400000, + Twentyfourth = 0x00800000, + Twentyfifth = 0x01000000, + Twentysixth = 0x02000000, + Twentyseventh = 0x04000000, + Twentyeighth = 0x08000000, + Twentyninth = 0x10000000, + Thirtieth = 0x20000000, + Thirtyfirst = 0x40000000 + } atsvc_DaysOfMonth; + + typedef [bitmap8bit] bitmap { + JOB_RUN_PERIODICALLY = 0x01, + JOB_EXEC_ERROR = 0x02, + JOB_RUNS_TODAY = 0x04, + JOB_ADD_CURRENT_DATE = 0x08, + JOB_NONINTERACTIVE = 0x10 + } atsvc_Flags; + + typedef [bitmap8bit] bitmap { + DAYSOFWEEK_MONDAY = 0x01, + DAYSOFWEEK_TUESDAY = 0x02, + DAYSOFWEEK_WEDNESDAY = 0x04, + DAYSOFWEEK_THURSDAY = 0x08, + DAYSOFWEEK_FRIDAY = 0x10, + DAYSOFWEEK_SATURDAY = 0x20, + DAYSOFWEEK_SUNDAY = 0x40 + } atsvc_DaysOfWeek; + + typedef struct { + uint32 job_time; + atsvc_DaysOfMonth days_of_month; + atsvc_DaysOfWeek days_of_week; + atsvc_Flags flags; + [string,charset(UTF16)] uint16 *command; + } atsvc_JobInfo; + + /******************/ + /* Function: 0x00 */ + [public] NTSTATUS atsvc_JobAdd( + [in,unique,string,charset(UTF16)] uint16 *servername, + [in] atsvc_JobInfo *job_info, + [out,ref] uint32 *job_id + ); + + /******************/ + /* Function: 0x01 */ + [public] NTSTATUS atsvc_JobDel( + [in,unique,string,charset(UTF16)] uint16 *servername, + [in] uint32 min_job_id, + [in] uint32 max_job_id + ); + + typedef struct { + uint32 job_id; + uint32 job_time; + atsvc_DaysOfMonth days_of_month; + atsvc_DaysOfWeek days_of_week; + atsvc_Flags flags; + [string,charset(UTF16)] uint16 *command; + } atsvc_JobEnumInfo; + + typedef struct { + uint32 entries_read; + [size_is(entries_read)] atsvc_JobEnumInfo *first_entry; + } atsvc_enum_ctr; + + /******************/ + /* Function: 0x02 */ + [public] NTSTATUS atsvc_JobEnum( + [in,unique,string,charset(UTF16)] uint16 *servername, + [in,out] atsvc_enum_ctr *ctr, + [in] uint32 preferred_max_len, + [out,ref] uint32 *total_entries, + [in,out,unique] uint32 *resume_handle + ); + + /******************/ + /* Function: 0x03 */ + [public] NTSTATUS atsvc_JobGetInfo( + [in,unique,string,charset(UTF16)] uint16 *servername, + [in] uint32 job_id, + [out] atsvc_JobInfo **job_info + ); +} diff --git a/epan/dissectors/pidl/dfs.cnf b/epan/dissectors/pidl/dfs.cnf deleted file mode 100644 index 4cb0636504..0000000000 --- a/epan/dissectors/pidl/dfs.cnf +++ /dev/null @@ -1,3 +0,0 @@ -# Conformance file for DFS - - diff --git a/epan/dissectors/pidl/dfs.idl b/epan/dissectors/pidl/dfs.idl deleted file mode 100644 index 2b519b15d5..0000000000 --- a/epan/dissectors/pidl/dfs.idl +++ /dev/null @@ -1,394 +0,0 @@ -/* - dfs interface definition -*/ - -[ uuid("4fc742e0-4a10-11cf-8273-00aa004ae673"), - version(3.0), - pointer_default(unique), - helpstring("Settings for Microsoft Distributed File System") -] interface netdfs -{ - /******************/ - /* Function: 0x00 */ - typedef [v1_enum] enum { - DFS_MANAGER_VERSION_NT4 = 1, - DFS_MANAGER_VERSION_W2K = 2, - DFS_MANAGER_VERSION_W2K3 = 4 - } dfs_ManagerVersion; - - [public] void dfs_GetManagerVersion( - [out] dfs_ManagerVersion *version - ); - - - /******************/ - /* Function: 0x01 */ - WERROR dfs_Add ( - [in] [string,charset(UTF16)] uint16 *path, - [in] [string,charset(UTF16)] uint16 *server, - [in,unique] [string,charset(UTF16)] uint16 *share, - [in,unique] [string,charset(UTF16)] uint16 *comment, - [in] uint32 flags - ); - - /******************/ - /* Function: 0x02 */ - WERROR dfs_Remove ( - [in] [string,charset(UTF16)] uint16 *dfs_entry_path, - [in,unique] [string,charset(UTF16)] uint16 *servername, - [in,unique] [string,charset(UTF16)] uint16 *sharename - ); - - /******************/ - /* Function: 0x03 */ - - typedef struct { - } dfs_Info0; - - typedef struct { - [string,charset(UTF16)] uint16 *path; - } dfs_Info1; - - /* first 4 bits unverified yet */ - typedef [public,bitmap32bit] bitmap { - DFS_VOLUME_STATE_OK = 0x1, - DFS_VOLUME_STATE_INCONSISTENT = 0x2, - DFS_VOLUME_STATE_OFFLINE = 0x4, - DFS_VOLUME_STATE_ONLINE = 0x8, - DFS_VOLUME_STATE_STANDALONE = DFS_VOLUME_FLAVOR_STANDALONE, - DFS_VOLUME_STATE_AD_BLOB = DFS_VOLUME_FLAVOR_AD_BLOB - } dfs_VolumeState; - - typedef struct { - [string,charset(UTF16)] uint16 *path; - [string,charset(UTF16)] uint16 *comment; - dfs_VolumeState state; - uint32 num_stores; - } dfs_Info2; - - const int DFS_STORAGE_STATES = 0xf; - - /* yes, this is a bitmap */ - typedef [public,bitmap32bit] bitmap { - DFS_STORAGE_STATE_OFFLINE = 1, - DFS_STORAGE_STATE_ONLINE = 2, - DFS_STORAGE_STATE_ACTIVE = 4 - } dfs_StorageState; - - typedef struct { - dfs_StorageState state; - [string,charset(UTF16)] uint16 *server; - [string,charset(UTF16)] uint16 *share; - } dfs_StorageInfo; - - typedef struct { - [string,charset(UTF16)] uint16 *path; - [string,charset(UTF16)] uint16 *comment; - dfs_VolumeState state; - uint32 num_stores; - [size_is(num_stores)] dfs_StorageInfo *stores; - } dfs_Info3; - - typedef struct { - [string,charset(UTF16)] uint16 *path; - [string,charset(UTF16)] uint16 *comment; - dfs_VolumeState state; - uint32 timeout; - GUID guid; - uint32 num_stores; - [size_is(num_stores)] dfs_StorageInfo *stores; - } dfs_Info4; - - /* verified with dfsutil */ - typedef [public,bitmap32bit] bitmap { - DFS_PROPERTY_FLAG_INSITE_REFERRALS = 0x01, - DFS_PROPERTY_FLAG_ROOT_SCALABILITY = 0x02, - DFS_PROPERTY_FLAG_SITE_COSTING = 0x04, - DFS_PROPERTY_FLAG_TARGET_FAILBACK = 0x08, - DFS_PROPERTY_FLAG_CLUSTER_ENABLED = 0x10 /* untested */ - } dfs_PropertyFlags; - - typedef struct { - [string,charset(UTF16)] uint16 *path; - [string,charset(UTF16)] uint16 *comment; - dfs_VolumeState state; - uint32 timeout; - GUID guid; - dfs_PropertyFlags flags; - uint32 pktsize; - uint32 num_stores; - } dfs_Info5; - - typedef [v1_enum] enum { - DFS_INVALID_PRIORITY_CLASS = -1, - DFS_SITE_COST_NORMAL_PRIORITY_CLASS = 0, - DFS_GLOBAL_HIGH_PRIORITY_CLASS = 1, - DFS_SITE_COST_HIGH_PRIORITY_CLASS = 2, - DFS_SITE_COST_LOW_PRIORITY_CLASS = 3, - DFS_GLOBAL_LOW_PRIORITY_CLASS = 4 - } dfs_Target_PriorityClass; - - typedef struct { - dfs_Target_PriorityClass target_priority_class; - uint16 target_priority_rank; - uint16 reserved; - } dfs_Target_Priority; - - typedef struct { - dfs_StorageInfo info; - dfs_Target_Priority target_priority; - } dfs_StorageInfo2; - - typedef struct { - [string,charset(UTF16)] uint16 *entry_path; - [string,charset(UTF16)] uint16 *comment; - dfs_VolumeState state; - uint32 timeout; - GUID guid; - dfs_PropertyFlags flags; - uint32 pktsize; - uint16 num_stores; - [size_is(num_stores)] dfs_StorageInfo2 *stores; - } dfs_Info6; - - typedef struct { - GUID generation_guid; - } dfs_Info7; - - typedef struct { - [string,charset(UTF16)] uint16 *comment; - } dfs_Info100; - - typedef struct { - dfs_StorageState state; - } dfs_Info101; - - typedef struct { - uint32 timeout; - } dfs_Info102; - - typedef struct { - dfs_PropertyFlags flags; - } dfs_Info103; - - typedef struct { - dfs_Target_Priority priority; - } dfs_Info104; - - typedef struct { - [string,charset(UTF16)] uint16 *comment; - dfs_VolumeState state; - uint32 timeout; - uint32 property_flag_mask; - uint32 property_flags; - } dfs_Info105; - - typedef struct { - dfs_StorageState state; - dfs_Target_Priority priority; - } dfs_Info106; - - typedef struct { - [string,charset(UTF16)] uint16 *dom_root; - } dfs_Info200; - - typedef enum { - DFS_VOLUME_FLAVOR_STANDALONE = 0x100, - DFS_VOLUME_FLAVOR_AD_BLOB = 0x200 - } dfs_VolumeFlavor; - - typedef struct { - dfs_VolumeFlavor flavor; - [string,charset(UTF16)] uint16 *dom_root; - } dfs_Info300; - - typedef union { - [case(0)] dfs_Info0 *info0; - [case(1)] dfs_Info1 *info1; - [case(2)] dfs_Info2 *info2; - [case(3)] dfs_Info3 *info3; - [case(4)] dfs_Info4 *info4; - [case(5)] dfs_Info5 *info5; - [case(6)] dfs_Info6 *info6; - [case(7)] dfs_Info7 *info7; - [case(100)] dfs_Info100 *info100; - [case(101)] dfs_Info101 *info101; - [case(102)] dfs_Info102 *info102; - [case(103)] dfs_Info103 *info103; - [case(104)] dfs_Info104 *info104; - [case(105)] dfs_Info105 *info105; - [case(106)] dfs_Info106 *info106; - } dfs_Info; - - WERROR dfs_SetInfo ( - [in] [string,charset(UTF16)] uint16 dfs_entry_path[], - [in,unique] [string,charset(UTF16)] uint16 *servername, - [in,unique] [string,charset(UTF16)] uint16 *sharename, - [in] uint32 level, - [in,ref,switch_is(level)] dfs_Info *info - ); - - /******************/ - /* Function: 0x04 */ - WERROR dfs_GetInfo ( - [in] [string,charset(UTF16)] uint16 dfs_entry_path[], - [in,unique] [string,charset(UTF16)] uint16 *servername, - [in,unique] [string,charset(UTF16)] uint16 *sharename, - [in] uint32 level, - [out,switch_is(level)] dfs_Info *info - ); - - /******************/ - /* Function: 0x05 */ - - typedef struct { - uint32 count; - [size_is(count)] dfs_Info1 *s; - } dfs_EnumArray1; - - typedef struct { - uint32 count; - [size_is(count)] dfs_Info2 *s; - } dfs_EnumArray2; - - typedef struct { - uint32 count; - [size_is(count)] dfs_Info3 *s; - } dfs_EnumArray3; - - typedef struct { - uint32 count; - [size_is(count)] dfs_Info4 *s; - } dfs_EnumArray4; - - typedef struct { - uint32 count; - [size_is(count)] dfs_Info200 *s; - } dfs_EnumArray200; - - typedef struct { - uint32 count; - [size_is(count)] dfs_Info300 *s; - } dfs_EnumArray300; - - - typedef union { - [case(1)] dfs_EnumArray1 *info1; - [case(2)] dfs_EnumArray2 *info2; - [case(3)] dfs_EnumArray3 *info3; - [case(4)] dfs_EnumArray4 *info4; - [case(200)] dfs_EnumArray200 *info200; - [case(300)] dfs_EnumArray300 *info300; - } dfs_EnumInfo; - - typedef struct { - uint32 level; - [switch_is(level)] dfs_EnumInfo e; - } dfs_EnumStruct; - - WERROR dfs_Enum ( - [in] uint32 level, - [in] uint32 bufsize, - [in,out,unique] dfs_EnumStruct *info, - [in,out,unique] uint32 *total - ); - - /* Function 0x06 */ - WERROR dfs_Rename(); - - /* Function 0x07 */ - WERROR dfs_Move(); - - /* Function 0x08 */ - WERROR dfs_ManagerGetConfigInfo(); - - /* Function 0x09 */ - WERROR dfs_ManagerSendSiteInfo(); - - /* Function 0x0a */ - typedef struct { - uint32 unknown1; - [string,charset(UTF16)] uint16 *unknown2; - } dfs_UnknownStruct; - - WERROR dfs_AddFtRoot( - [in] [string,charset(UTF16)] uint16 servername[], - [in] [string,charset(UTF16)] uint16 dns_servername[], - [in] [string,charset(UTF16)] uint16 dfsname[], - [in] [string,charset(UTF16)] uint16 rootshare[], - [in] [string,charset(UTF16)] uint16 comment[], - [in] [string,charset(UTF16)] uint16 dfs_config_dn[], - [in] uint8 unknown1, - [in] uint32 flags, - [in,out,unique] dfs_UnknownStruct **unknown2 - ); - - /* Function 0x0b */ - WERROR dfs_RemoveFtRoot( - [in] [string,charset(UTF16)] uint16 servername[], - [in] [string,charset(UTF16)] uint16 dns_servername[], - [in] [string,charset(UTF16)] uint16 dfsname[], - [in] [string,charset(UTF16)] uint16 rootshare[], - [in] uint32 flags, - [in,out,unique] dfs_UnknownStruct **unknown - ); - - /* Function 0x0c */ - WERROR dfs_AddStdRoot( - [in] [string,charset(UTF16)] uint16 servername[], - [in] [string,charset(UTF16)] uint16 rootshare[], - [in] [string,charset(UTF16)] uint16 comment[], - [in] uint32 flags - ); - - /* Function 0x0d */ - WERROR dfs_RemoveStdRoot( - [in] [string,charset(UTF16)] uint16 servername[], - [in] [string,charset(UTF16)] uint16 rootshare[], - [in] uint32 flags - ); - - /* Function 0x0e */ - WERROR dfs_ManagerInitialize( - [in] [string,charset(UTF16)] uint16 *servername, - [in] uint32 flags - ); - - /* Function 0x0f */ - WERROR dfs_AddStdRootForced( - [in] [string,charset(UTF16)] uint16 servername[], - [in] [string,charset(UTF16)] uint16 rootshare[], - [in] [string,charset(UTF16)] uint16 comment[], - [in] [string,charset(UTF16)] uint16 store[] /* C:\\whatever */ - ); - - /* Function 0x10 */ - WERROR dfs_GetDcAddress(); - - /* Function 0x11 */ - WERROR dfs_SetDcAddress(); - - /* Function 0x12 */ - WERROR dfs_FlushFtTable( - [in] [string,charset(UTF16)] uint16 servername[], - [in] [string,charset(UTF16)] uint16 rootshare[] - ); - - /* Function 0x13 */ - WERROR dfs_Add2(); - - /* Function 0x14 */ - WERROR dfs_Remove2(); - - /* Function 0x15 */ - [public] WERROR dfs_EnumEx( - [in] [string,charset(UTF16)] uint16 dfs_name[], - [in] uint32 level, - [in] uint32 bufsize, - [in,out,unique] dfs_EnumStruct *info, - [in,out,unique] uint32 *total - ); - - /* Function 0x16 */ - WERROR dfs_SetInfo2(); -} diff --git a/epan/dissectors/pidl/dfs/dfs.cnf b/epan/dissectors/pidl/dfs/dfs.cnf new file mode 100644 index 0000000000..4cb0636504 --- /dev/null +++ b/epan/dissectors/pidl/dfs/dfs.cnf @@ -0,0 +1,3 @@ +# Conformance file for DFS + + diff --git a/epan/dissectors/pidl/dfs/dfs.idl b/epan/dissectors/pidl/dfs/dfs.idl new file mode 100644 index 0000000000..2b519b15d5 --- /dev/null +++ b/epan/dissectors/pidl/dfs/dfs.idl @@ -0,0 +1,394 @@ +/* + dfs interface definition +*/ + +[ uuid("4fc742e0-4a10-11cf-8273-00aa004ae673"), + version(3.0), + pointer_default(unique), + helpstring("Settings for Microsoft Distributed File System") +] interface netdfs +{ + /******************/ + /* Function: 0x00 */ + typedef [v1_enum] enum { + DFS_MANAGER_VERSION_NT4 = 1, + DFS_MANAGER_VERSION_W2K = 2, + DFS_MANAGER_VERSION_W2K3 = 4 + } dfs_ManagerVersion; + + [public] void dfs_GetManagerVersion( + [out] dfs_ManagerVersion *version + ); + + + /******************/ + /* Function: 0x01 */ + WERROR dfs_Add ( + [in] [string,charset(UTF16)] uint16 *path, + [in] [string,charset(UTF16)] uint16 *server, + [in,unique] [string,charset(UTF16)] uint16 *share, + [in,unique] [string,charset(UTF16)] uint16 *comment, + [in] uint32 flags + ); + + /******************/ + /* Function: 0x02 */ + WERROR dfs_Remove ( + [in] [string,charset(UTF16)] uint16 *dfs_entry_path, + [in,unique] [string,charset(UTF16)] uint16 *servername, + [in,unique] [string,charset(UTF16)] uint16 *sharename + ); + + /******************/ + /* Function: 0x03 */ + + typedef struct { + } dfs_Info0; + + typedef struct { + [string,charset(UTF16)] uint16 *path; + } dfs_Info1; + + /* first 4 bits unverified yet */ + typedef [public,bitmap32bit] bitmap { + DFS_VOLUME_STATE_OK = 0x1, + DFS_VOLUME_STATE_INCONSISTENT = 0x2, + DFS_VOLUME_STATE_OFFLINE = 0x4, + DFS_VOLUME_STATE_ONLINE = 0x8, + DFS_VOLUME_STATE_STANDALONE = DFS_VOLUME_FLAVOR_STANDALONE, + DFS_VOLUME_STATE_AD_BLOB = DFS_VOLUME_FLAVOR_AD_BLOB + } dfs_VolumeState; + + typedef struct { + [string,charset(UTF16)] uint16 *path; + [string,charset(UTF16)] uint16 *comment; + dfs_VolumeState state; + uint32 num_stores; + } dfs_Info2; + + const int DFS_STORAGE_STATES = 0xf; + + /* yes, this is a bitmap */ + typedef [public,bitmap32bit] bitmap { + DFS_STORAGE_STATE_OFFLINE = 1, + DFS_STORAGE_STATE_ONLINE = 2, + DFS_STORAGE_STATE_ACTIVE = 4 + } dfs_StorageState; + + typedef struct { + dfs_StorageState state; + [string,charset(UTF16)] uint16 *server; + [string,charset(UTF16)] uint16 *share; + } dfs_StorageInfo; + + typedef struct { + [string,charset(UTF16)] uint16 *path; + [string,charset(UTF16)] uint16 *comment; + dfs_VolumeState state; + uint32 num_stores; + [size_is(num_stores)] dfs_StorageInfo *stores; + } dfs_Info3; + + typedef struct { + [string,charset(UTF16)] uint16 *path; + [string,charset(UTF16)] uint16 *comment; + dfs_VolumeState state; + uint32 timeout; + GUID guid; + uint32 num_stores; + [size_is(num_stores)] dfs_StorageInfo *stores; + } dfs_Info4; + + /* verified with dfsutil */ + typedef [public,bitmap32bit] bitmap { + DFS_PROPERTY_FLAG_INSITE_REFERRALS = 0x01, + DFS_PROPERTY_FLAG_ROOT_SCALABILITY = 0x02, + DFS_PROPERTY_FLAG_SITE_COSTING = 0x04, + DFS_PROPERTY_FLAG_TARGET_FAILBACK = 0x08, + DFS_PROPERTY_FLAG_CLUSTER_ENABLED = 0x10 /* untested */ + } dfs_PropertyFlags; + + typedef struct { + [string,charset(UTF16)] uint16 *path; + [string,charset(UTF16)] uint16 *comment; + dfs_VolumeState state; + uint32 timeout; + GUID guid; + dfs_PropertyFlags flags; + uint32 pktsize; + uint32 num_stores; + } dfs_Info5; + + typedef [v1_enum] enum { + DFS_INVALID_PRIORITY_CLASS = -1, + DFS_SITE_COST_NORMAL_PRIORITY_CLASS = 0, + DFS_GLOBAL_HIGH_PRIORITY_CLASS = 1, + DFS_SITE_COST_HIGH_PRIORITY_CLASS = 2, + DFS_SITE_COST_LOW_PRIORITY_CLASS = 3, + DFS_GLOBAL_LOW_PRIORITY_CLASS = 4 + } dfs_Target_PriorityClass; + + typedef struct { + dfs_Target_PriorityClass target_priority_class; + uint16 target_priority_rank; + uint16 reserved; + } dfs_Target_Priority; + + typedef struct { + dfs_StorageInfo info; + dfs_Target_Priority target_priority; + } dfs_StorageInfo2; + + typedef struct { + [string,charset(UTF16)] uint16 *entry_path; + [string,charset(UTF16)] uint16 *comment; + dfs_VolumeState state; + uint32 timeout; + GUID guid; + dfs_PropertyFlags flags; + uint32 pktsize; + uint16 num_stores; + [size_is(num_stores)] dfs_StorageInfo2 *stores; + } dfs_Info6; + + typedef struct { + GUID generation_guid; + } dfs_Info7; + + typedef struct { + [string,charset(UTF16)] uint16 *comment; + } dfs_Info100; + + typedef struct { + dfs_StorageState state; + } dfs_Info101; + + typedef struct { + uint32 timeout; + } dfs_Info102; + + typedef struct { + dfs_PropertyFlags flags; + } dfs_Info103; + + typedef struct { + dfs_Target_Priority priority; + } dfs_Info104; + + typedef struct { + [string,charset(UTF16)] uint16 *comment; + dfs_VolumeState state; + uint32 timeout; + uint32 property_flag_mask; + uint32 property_flags; + } dfs_Info105; + + typedef struct { + dfs_StorageState state; + dfs_Target_Priority priority; + } dfs_Info106; + + typedef struct { + [string,charset(UTF16)] uint16 *dom_root; + } dfs_Info200; + + typedef enum { + DFS_VOLUME_FLAVOR_STANDALONE = 0x100, + DFS_VOLUME_FLAVOR_AD_BLOB = 0x200 + } dfs_VolumeFlavor; + + typedef struct { + dfs_VolumeFlavor flavor; + [string,charset(UTF16)] uint16 *dom_root; + } dfs_Info300; + + typedef union { + [case(0)] dfs_Info0 *info0; + [case(1)] dfs_Info1 *info1; + [case(2)] dfs_Info2 *info2; + [case(3)] dfs_Info3 *info3; + [case(4)] dfs_Info4 *info4; + [case(5)] dfs_Info5 *info5; + [case(6)] dfs_Info6 *info6; + [case(7)] dfs_Info7 *info7; + [case(100)] dfs_Info100 *info100; + [case(101)] dfs_Info101 *info101; + [case(102)] dfs_Info102 *info102; + [case(103)] dfs_Info103 *info103; + [case(104)] dfs_Info104 *info104; + [case(105)] dfs_Info105 *info105; + [case(106)] dfs_Info106 *info106; + } dfs_Info; + + WERROR dfs_SetInfo ( + [in] [string,charset(UTF16)] uint16 dfs_entry_path[], + [in,unique] [string,charset(UTF16)] uint16 *servername, + [in,unique] [string,charset(UTF16)] uint16 *sharename, + [in] uint32 level, + [in,ref,switch_is(level)] dfs_Info *info + ); + + /******************/ + /* Function: 0x04 */ + WERROR dfs_GetInfo ( + [in] [string,charset(UTF16)] uint16 dfs_entry_path[], + [in,unique] [string,charset(UTF16)] uint16 *servername, + [in,unique] [string,charset(UTF16)] uint16 *sharename, + [in] uint32 level, + [out,switch_is(level)] dfs_Info *info + ); + + /******************/ + /* Function: 0x05 */ + + typedef struct { + uint32 count; + [size_is(count)] dfs_Info1 *s; + } dfs_EnumArray1; + + typedef struct { + uint32 count; + [size_is(count)] dfs_Info2 *s; + } dfs_EnumArray2; + + typedef struct { + uint32 count; + [size_is(count)] dfs_Info3 *s; + } dfs_EnumArray3; + + typedef struct { + uint32 count; + [size_is(count)] dfs_Info4 *s; + } dfs_EnumArray4; + + typedef struct { + uint32 count; + [size_is(count)] dfs_Info200 *s; + } dfs_EnumArray200; + + typedef struct { + uint32 count; + [size_is(count)] dfs_Info300 *s; + } dfs_EnumArray300; + + + typedef union { + [case(1)] dfs_EnumArray1 *info1; + [case(2)] dfs_EnumArray2 *info2; + [case(3)] dfs_EnumArray3 *info3; + [case(4)] dfs_EnumArray4 *info4; + [case(200)] dfs_EnumArray200 *info200; + [case(300)] dfs_EnumArray300 *info300; + } dfs_EnumInfo; + + typedef struct { + uint32 level; + [switch_is(level)] dfs_EnumInfo e; + } dfs_EnumStruct; + + WERROR dfs_Enum ( + [in] uint32 level, + [in] uint32 bufsize, + [in,out,unique] dfs_EnumStruct *info, + [in,out,unique] uint32 *total + ); + + /* Function 0x06 */ + WERROR dfs_Rename(); + + /* Function 0x07 */ + WERROR dfs_Move(); + + /* Function 0x08 */ + WERROR dfs_ManagerGetConfigInfo(); + + /* Function 0x09 */ + WERROR dfs_ManagerSendSiteInfo(); + + /* Function 0x0a */ + typedef struct { + uint32 unknown1; + [string,charset(UTF16)] uint16 *unknown2; + } dfs_UnknownStruct; + + WERROR dfs_AddFtRoot( + [in] [string,charset(UTF16)] uint16 servername[], + [in] [string,charset(UTF16)] uint16 dns_servername[], + [in] [string,charset(UTF16)] uint16 dfsname[], + [in] [string,charset(UTF16)] uint16 rootshare[], + [in] [string,charset(UTF16)] uint16 comment[], + [in] [string,charset(UTF16)] uint16 dfs_config_dn[], + [in] uint8 unknown1, + [in] uint32 flags, + [in,out,unique] dfs_UnknownStruct **unknown2 + ); + + /* Function 0x0b */ + WERROR dfs_RemoveFtRoot( + [in] [string,charset(UTF16)] uint16 servername[], + [in] [string,charset(UTF16)] uint16 dns_servername[], + [in] [string,charset(UTF16)] uint16 dfsname[], + [in] [string,charset(UTF16)] uint16 rootshare[], + [in] uint32 flags, + [in,out,unique] dfs_UnknownStruct **unknown + ); + + /* Function 0x0c */ + WERROR dfs_AddStdRoot( + [in] [string,charset(UTF16)] uint16 servername[], + [in] [string,charset(UTF16)] uint16 rootshare[], + [in] [string,charset(UTF16)] uint16 comment[], + [in] uint32 flags + ); + + /* Function 0x0d */ + WERROR dfs_RemoveStdRoot( + [in] [string,charset(UTF16)] uint16 servername[], + [in] [string,charset(UTF16)] uint16 rootshare[], + [in] uint32 flags + ); + + /* Function 0x0e */ + WERROR dfs_ManagerInitialize( + [in] [string,charset(UTF16)] uint16 *servername, + [in] uint32 flags + ); + + /* Function 0x0f */ + WERROR dfs_AddStdRootForced( + [in] [string,charset(UTF16)] uint16 servername[], + [in] [string,charset(UTF16)] uint16 rootshare[], + [in] [string,charset(UTF16)] uint16 comment[], + [in] [string,charset(UTF16)] uint16 store[] /* C:\\whatever */ + ); + + /* Function 0x10 */ + WERROR dfs_GetDcAddress(); + + /* Function 0x11 */ + WERROR dfs_SetDcAddress(); + + /* Function 0x12 */ + WERROR dfs_FlushFtTable( + [in] [string,charset(UTF16)] uint16 servername[], + [in] [string,charset(UTF16)] uint16 rootshare[] + ); + + /* Function 0x13 */ + WERROR dfs_Add2(); + + /* Function 0x14 */ + WERROR dfs_Remove2(); + + /* Function 0x15 */ + [public] WERROR dfs_EnumEx( + [in] [string,charset(UTF16)] uint16 dfs_name[], + [in] uint32 level, + [in] uint32 bufsize, + [in,out,unique] dfs_EnumStruct *info, + [in,out,unique] uint32 *total + ); + + /* Function 0x16 */ + WERROR dfs_SetInfo2(); +} diff --git a/epan/dissectors/pidl/dnsserver.cnf b/epan/dissectors/pidl/dnsserver.cnf deleted file mode 100644 index eb2043900a..0000000000 --- a/epan/dissectors/pidl/dnsserver.cnf +++ /dev/null @@ -1,94 +0,0 @@ -# -# DNS_RPC_NAME -# -MANUAL dnsserver_dissect_struct_DNS_RPC_NAME -HF_FIELD hf_dnsserver_DNS_RPC_NAME_name "Name" "dnsserver.DNS_RPC_NAME.name" FT_STRING BASE_NONE NULL 0 "" "" "" - - -# -# DNS_RPC_NODE -# -MANUAL dnsserver_dissect_element_DNS_RPC_NODE_RecordCount -MANUAL dnsserver_dissect_element_DNS_RPC_NODE_records - - -NOEMIT dnsserver_dissect_element_DNS_RPC_NAME_NameLength -NOEMIT dnsserver_dissect_element_DNS_RPC_NAME_Name -NOEMIT dnsserver_dissect_element_DNS_RPC_NAME_Name_ - -CODE START - - #include "packet-smb-common.h" - -int -dnsserver_dissect_struct_DNS_RPC_NAME(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di, guint8 *drep _U_, int hf_index _U_, guint32 param _U_) -{ - proto_item *item = NULL; - proto_tree *tree = NULL; - int old_offset; - guint8 len; - const char *dn; - int dn_len = 0; - guint16 bc; - - if(di->conformant_run){ - /*just a run to handle conformant arrays, nothing to dissect */ - return offset; - } - - - - old_offset = offset; - - if (parent_tree) { - item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE); - tree = proto_item_add_subtree(item, ett_dnsserver_DNS_RPC_NAME); - } - - offset = dissect_ndr_uint8(tvb, offset, pinfo, tree, di, drep, hf_dnsserver_DNS_RPC_NAME_NameLength, &len); - bc = tvb_captured_length_remaining(tvb, offset); - dn = get_unicode_or_ascii_string(tvb, &offset, - TRUE, &dn_len, TRUE, TRUE, &bc); - if (dn) { - proto_tree_add_string(tree, hf_dnsserver_DNS_RPC_NAME_name, tvb, - offset, dn_len,dn); - offset += dn_len; - } - - proto_item_set_len(item, offset-old_offset); - - return offset; -} - - -static guint16 node_record_count; - -static int -dnsserver_dissect_element_DNS_RPC_NODE_RecordCount(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di, guint8 *drep _U_) -{ - if(di->conformant_run){ - /*just a run to handle conformant arrays, nothing to dissect */ - return offset; - } - - offset = dissect_ndr_uint16(tvb, offset, pinfo, tree, di, drep, hf_dnsserver_DNS_RPC_NODE_RecordCount, &node_record_count); - - return offset; -} - -static int -dnsserver_dissect_element_DNS_RPC_NODE_records(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di, guint8 *drep _U_) -{ - if(di->conformant_run){ - /*just a run to handle conformant arrays, nothing to dissect */ - return offset; - } - - while(node_record_count--){ - offset = dnsserver_dissect_element_DNS_RPC_NODE_records_(tvb, offset, pinfo, tree, di, drep); - } - - return offset; -} - -CODE END diff --git a/epan/dissectors/pidl/dnsserver.idl b/epan/dissectors/pidl/dnsserver.idl deleted file mode 100644 index c71b8eb1c3..0000000000 --- a/epan/dissectors/pidl/dnsserver.idl +++ /dev/null @@ -1,402 +0,0 @@ -/* - dnsserver interface definition -*/ - -[ uuid("50abc2a4-574d-40b3-9d66-ee4fd5fba076"), - version(5.0), - pointer_default(unique), - helpstring("DNS Server") -] interface dnsserver -{ - - typedef [v1_enum] enum { - DNS_CLIENT_VERSION_W2K = 0x00000000, - DNS_CLIENT_VERSION_DOTNET = 0x00000006, - DNS_CLIENT_VERSION_LONGHORN = 0x00000007 - } DNS_RPC_CLIENT_VERSION; - - typedef [flag(NDR_ALIGN4)] struct { - uint8 OSMajorVersion; - uint8 OSMinorVersion; - uint16 ServicePackVersion; - } DNS_RPC_VERSION; - - typedef [enum8bit] enum { - DNS_RPC_BOOT_METHOD_FILE = 0x01, - DNS_RPC_BOOT_METHOD_REGISTRY = 0x02, - DNS_RPC_BOOT_METHOD_DIRECTORY = 0x03 - } DNS_RPC_BOOT_METHOD; - - - const uint32 DNS_LOG_LEVEL_ALL_PACKETS = 0x0000ffff; - const uint32 DNS_LOG_LEVEL_NON_QUERY = 0x000000fe; - typedef [bitmap32bit] bitmap { - DNS_LOG_LEVEL_QUERY = 0x00000001, - DNS_LOG_LEVEL_NOTIFY = 0x00000010, - DNS_LOG_LEVEL_UPDATE = 0x00000020, - DNS_LOG_LEVEL_QUESTIONS = 0x00000100, - DNS_LOG_LEVEL_ANSWERS = 0x00000200, - DNS_LOG_LEVEL_SEND = 0x00001000, - DNS_LOG_LEVEL_RECV = 0x00002000, - DNS_LOG_LEVEL_UDP = 0x00004000, - DNS_LOG_LEVEL_TCP = 0x00008000, - DNS_LOG_LEVEL_FULL_PACKETS = 0x01000000, - DNS_LOG_LEVEL_WRITE_THROUGH = 0x80000000 - } DNS_LOG_LEVELS; - - const uint32 DNS_RPC_USE_ALL_PROTOCOLS = 0xffffffff; - typedef [bitmap32bit] bitmap { - DNS_RPC_USE_TCPIP = 0x00000001, - DNS_RPC_USE_NAMED_PIPE = 0x00000002, - DNS_RPC_USE_LPC = 0x00000004 - } DNS_RPC_PROTOCOLS; - - typedef [v1_enum] enum { - DNS_ALLOW_RFC_NAMES_ONLY = 0x00000000, - DNS_ALLOW_NONRFC_NAMES = 0x00000001, - DNS_ALLOW_MULTIBYTE_NAMES = 0x00000002, - DNS_ALLOW_ALL_NAMES = 0x00000003 - } DNS_NAME_CHECK_FLAGS; - - typedef [enum16bit] enum { - DNS_TYPE_ZERO = 0x0000, - DNS_TYPE_A = 0x0001, - DNS_TYPE_NS = 0x0002, - DNS_TYPE_MD = 0x0003, - DNS_TYPE_MF = 0x0004, - DNS_TYPE_CNAME = 0x0005, - DNS_TYPE_SOA = 0x0006, - DNS_TYPE_MB = 0x0007, - DNS_TYPE_MG = 0x0008, - DNS_TYPE_MR = 0x0009, - DNS_TYPE_NULL = 0x000a, - DNS_TYPE_WKS = 0x000b, - DNS_TYPE_PTR = 0x000c, - DNS_TYPE_HINFO = 0x000d, - DNS_TYPE_MINFO = 0x000e, - DNS_TYPE_MX = 0x000f, - DNS_TYPE_TXT = 0x0010, - DNS_TYPE_RP = 0x0011, - DNS_TYPE_AFSDB = 0x0012, - DNS_TYPE_X25 = 0x0013, - DNS_TYPE_ISDN = 0x0014, - DNS_TYPE_RT = 0x0015, - DNS_TYPE_NSAP = 0x0016, - DNS_TYPE_NSAPPTR = 0x0017, - DNS_TYPE_SIG = 0x0018, - DNS_TYPE_KEY = 0x0019, - DNS_TYPE_PX = 0x001a, - DNS_TYPE_GPOS = 0x001b, - DNS_TYPE_AAAA = 0x001c, - DNS_TYPE_LOC = 0x001d, - DNS_TYPE_NXT = 0x001e, - DNS_TYPE_SRV = 0x0021, - DNS_TYPE_ATMA = 0x0022, - DNS_TYPE_NAPTR = 0x0023, - DNS_TYPE_DNAME = 0x0024, - DNS_TYPE_ALL = 0x00ff, - DNS_TYPE_WINS = 0xff01, - DNS_TYPE_WINSR = 0xff02 - } DNS_RECORD_TYPE; - - typedef [bitmap32bit] bitmap { - DNS_RPC_VIEW_AUTHORITY_DATA = 0x00000001, - DNS_RPC_VIEW_CACHE_DATA = 0x00000002, - DNS_RPC_VIEW_GLUE_DATA = 0x00000004, - DNS_RPC_VIEW_ROOT_HINT_DATA = 0x00000008, - DNS_RPC_VIEW_ADDITIONAL_DATA = 0x00000010, - DNS_RPC_VIEW_NO_CHILDREN = 0x00010000, - DNS_RPC_VIEW_ONLY_CHILDREN = 0x00020000 - } DNS_SELECT_FLAGS; - - typedef [bitmap32bit] bitmap { - DNS_RPC_FLAG_CACHE_DATA = 0x80000000, - DNS_RPC_FLAG_ZONE_ROOT = 0x40000000, - DNS_RPC_FLAG_AUTH_ZONE_ROOT = 0x20000000, - DNS_RPC_FLAG_ZONE_DELEGATION = 0x10000000, - DNS_RPC_FLAG_RECOR_DEFAULT_TTL = 0x08000000, - DNS_RPC_FLAG_RECORD_TTL_CHANGE = 0x04000000, - DNS_RPC_FLAG_RECORD_CREATE_PTR = 0x02000000, - DNS_RPC_FLAG_NODE_STICKY = 0x01000000, - DNS_RPC_FLAG_NODE_COMPLETE = 0x00800000, - DNS_RPC_FLAG_OPEN_ACL = 0x00040000, - DNS_RPC_FLAG_AGING_ON = 0x00020000, - DNS_RPC_FLAG_SUPPRESS_NOTIFY = 0x00010000 - } DNS_RPC_NODE_FLAGS; - - /* 2.2.2.2.1 this cant really be described in IDL :-( */ - typedef struct { - uint8 NameLength; - uint8 Name[NameLength]; - } DNS_RPC_NAME; - - typedef struct { - DNS_RPC_NAME Name; - } DNS_RPC_RECORD_NODE_NAME; - -/* typedef [nodiscriminant] union { */ - typedef union { - [case(2)] DNS_RPC_RECORD_NODE_NAME NodeName; - } DNS_RPC_RECORD_UNION; - - typedef struct { - uint16 DataLength; /* size of */ - DNS_RECORD_TYPE Type; - uint32 Flags; - uint32 Serial; - uint32 TtlSeconds; - uint32 TimeStamp; - uint32 reserved; - [switch_is(Type)] DNS_RPC_RECORD_UNION record; - } DNS_RPC_RECORD; - - typedef struct { - uint16 Length; - uint16 RecordCount; - DNS_RPC_NODE_FLAGS Flags; - uint32 Childcount; - DNS_RPC_NAME NodeName; - DNS_RPC_RECORD records[RecordCount]; - } DNS_RPC_NODE; -/* XXX */ - - - typedef struct { - uint32 AddrCount; - [size_is(AddrCount)] uint32 AddrArray[]; - } IP4_ARRAY; - -/* XXX */ - typedef struct { - uint32 RpcStructureVersion; - uint32 reserved0; - DNS_RPC_VERSION Version; - DNS_RPC_BOOT_METHOD BootMethod; - boolean8 AdminConfigured; - boolean8 AllowUpdate; - boolean8 DsAvailable; - [unique, string] uint8 *ServerName; - [unique, string, charset(UTF16)] uint16 *DsContainer; - [unique] IP4_ARRAY *ServerAddrs; - [unique] IP4_ARRAY *ListenAddrs; - [unique] IP4_ARRAY *Forwarders; - [unique] IP4_ARRAY *LogFilter; - [unique, string, charset(UTF16)] uint16 *LogFilePath; - [unique, string] uint8 *DomainName; - [unique, string] uint8 *ForestName; - [unique, string] uint8 *DomainDirectoryPartition; - [unique, string] uint8 *ForestDirectoryPartition; - [unique, string] uint8 *extension0; - [unique, string] uint8 *extension1; - [unique, string] uint8 *extension2; - [unique, string] uint8 *extension3; - [unique, string] uint8 *extension4; - [unique, string] uint8 *extension5; - DNS_LOG_LEVELS LogLevel; - uint32 DebugLevel; - uint32 ForwardTimeout; - DNS_RPC_PROTOCOLS RpcProtocol; - DNS_NAME_CHECK_FLAGS NameCheckFlag; - uint32 AddressAnswerLimit; - uint32 RecursionRetry; - uint32 RecursionTimeout; - uint32 MaxCacheTtl; - uint32 DsPollingInterval; - uint32 LocalNetPriorityNetmask; - uint32 ScavengingInterval; - uint32 DefaultRefreshInterval; - uint32 DefaultNoRefreshInterval; - uint32 LastScavengeTime; - uint32 EventLogLevel; - uint32 LogFileMaxSize; - uint32 DsForestVersion; - uint32 DsDomainVersion; - uint32 DsDsaVersion; - uint32 reserve_array[4]; - boolean8 AutoReverseZones; - boolean8 AutoCacheUpdate; - boolean8 RecurseAfterForwarding; - boolean8 ForwardDelegations; - boolean8 NoRecursion; - boolean8 SecureResponses; - boolean8 RoundRobin; - boolean8 LocalNetPriority; - boolean8 BindSecondaries; - boolean8 WriteAuthorityNs; - boolean8 StrictFileParsing; - boolean8 LooseWildcarding; - boolean8 DefaultAgingState; - boolean8 reserve_array2[15]; - } DNS_RPC_SERVER_INFO_DOTNET; -/* XXX */ - - typedef [v1_enum, flag(NDR_PAHEX)] enum { - DNSSRV_TYPEID_NULL = 0, - DNSSRV_TYPEID_DWORD = 1, - DNSSRV_TYPEID_LPSTR = 2, - DNSSRV_TYPEID_LPWSTR = 3, - DNSSRV_TYPEID_IPARRAY = 4, - DNSSRV_TYPEID_BUFFER = 5, - DNSSRV_TYPEID_SERVER_INFO_W2K = 6, - DNSSRV_TYPEID_STATS = 7, - DNSSRV_TYPEID_FORWARDERS_W2K = 8, - DNSSRV_TYPEID_ZONE_W2K = 9, - DNSSRV_TYPEID_ZONE_INFO_W2K = 10, - DNSSRV_TYPEID_ZONE_SECONDARIES_W2K = 11, - DNSSRV_TYPEID_ZONE_DATABASE_W2K = 12, - DNSSRV_TYPEID_ZONE_TYPE_RESET_W2K = 13, - DNSSRV_TYPEID_ZONE_CREATE_W2K = 14, - DNSSRV_TYPEID_NAME_AND_PARAM = 15, - DNSSRV_TYPEID_ZONE_LIST_W2K = 16, - DNSSRV_TYPEID_ZONE_RENAME = 17, - DNSSRV_TYPEID_ZONE_EXPORT = 18, - DNSSRV_TYPEID_SERVER_INFO_DOTNET = 19, - DNSSRV_TYPEID_FORWARDERS_DOTNET = 20, - DNSSRV_TYPEID_ZONE = 21, - DNSSRV_TYPEID_ZONE_INFO_DOTNET = 22, - DNSSRV_TYPEID_ZONE_SECONDARIES_DOTNET = 23, - DNSSRV_TYPEID_ZONE_DATABASE = 24, - DNSSRV_TYPEID_ZONE_TYPE_RESET_DOTNET = 25, - DNSSRV_TYPEID_ZONE_CREATE_DOTNET = 26, - DNSSRV_TYPEID_ZONE_LIST = 27, - DNSSRV_TYPEID_DP_ENUM = 28, - DNSSRV_TYPEID_DP_INFO = 29, - DNSSRV_TYPEID_DP_LIST = 30, - DNSSRV_TYPEID_ENLIST_DP = 31, - DNSSRV_TYPEID_ZONE_CHANGE_DP = 32, - DNSSRV_TYPEID_ENUM_ZONES_FILTER = 33, - DNSSRV_TYPEID_ADDARRAY = 34, - DNSSRV_TYPEID_SERVER_INFO = 35, - DNSSRV_TYPEID_ZONE_INFO = 36, - DNSSRV_TYPEID_FORWARDERS = 37, - DNSSRV_TYPEID_ZONE_SECONDARIES = 38, - DNSSRV_TYPEID_ZONE_TYPE_RESET = 39, - DNSSRV_TYPEID_ZONE_CREATE = 40, - DNSSRV_TYPEID_IP_VALIDATE = 41, - DNSSRV_TYPEID_AUTOCONFIGURE = 42, - DNSSRV_TYPEID_UTF8_STRING_LIST = 43, - DNSSRV_TYPEID_UNICODE_STRING_LIST = 44 - } DnssrvRpcTypeId; - - typedef union { - [case(DNSSRV_TYPEID_NULL)] uint8 *null; - [case(DNSSRV_TYPEID_DWORD)] uint32 dword; -/* DNSSRV_TYPEID_LPSTR = 2,*/ -/* DNSSRV_TYPEID_LPWSTR = 3,*/ -/* DNSSRV_TYPEID_IPARRAY = 4,*/ -/* DNSSRV_TYPEID_BUFFER = 5,*/ -/* DNSSRV_TYPEID_SERVER_INFO_W2K = 6,*/ -/* DNSSRV_TYPEID_STATS = 7,*/ -/* DNSSRV_TYPEID_FORWARDERS_W2K = 8,*/ -/* DNSSRV_TYPEID_ZONE_W2K = 9,*/ -/* DNSSRV_TYPEID_ZONE_INFO_W2K = 10,*/ -/* DNSSRV_TYPEID_ZONE_SECONDARIES_W2K = 11,*/ -/* DNSSRV_TYPEID_ZONE_DATABASE_W2K = 12,*/ -/* DNSSRV_TYPEID_ZONE_TYPE_RESET_W2K = 13,*/ -/* DNSSRV_TYPEID_ZONE_CREATE_W2K = 14,*/ -/* DNSSRV_TYPEID_NAME_AND_PARAM = 15,*/ -/* DNSSRV_TYPEID_ZONE_LIST_W2K = 16,*/ -/* DNSSRV_TYPEID_ZONE_RENAME = 17,*/ -/* DNSSRV_TYPEID_ZONE_EXPORT = 18,*/ - [case(DNSSRV_TYPEID_SERVER_INFO_DOTNET)] DNS_RPC_SERVER_INFO_DOTNET *ServerInfoDotnet; -/* DNSSRV_TYPEID_FORWARDERS_DOTNET = 20,*/ -/* DNSSRV_TYPEID_ZONE = 21,*/ -/* DNSSRV_TYPEID_ZONE_INFO_DOTNET = 22,*/ -/* DNSSRV_TYPEID_ZONE_SECONDARIES_DOTNET = 23,*/ -/* DNSSRV_TYPEID_ZONE_DATABASE = 24,*/ -/* DNSSRV_TYPEID_ZONE_TYPE_RESET_DOTNET = 25,*/ -/* DNSSRV_TYPEID_ZONE_CREATE_DOTNET = 26,*/ -/* DNSSRV_TYPEID_ZONE_LIST = 27,*/ -/* DNSSRV_TYPEID_DP_ENUM = 28,*/ -/* DNSSRV_TYPEID_DP_INFO = 29,*/ -/* DNSSRV_TYPEID_DP_LIST = 30,*/ -/* DNSSRV_TYPEID_ENLIST_DP = 31,*/ -/* DNSSRV_TYPEID_ZONE_CHANGE_DP = 32,*/ -/* DNSSRV_TYPEID_ENUM_ZONES_FILTER = 33,*/ -/* DNSSRV_TYPEID_ADDARRAY = 34,*/ -/* DNSSRV_TYPEID_SERVER_INFO = 35,*/ -/* DNSSRV_TYPEID_ZONE_INFO = 36,*/ -/* DNSSRV_TYPEID_FORWARDERS = 37,*/ -/* DNSSRV_TYPEID_ZONE_SECONDARIES = 38,*/ -/* DNSSRV_TYPEID_ZONE_TYPE_RESET = 39,*/ -/* DNSSRV_TYPEID_ZONE_CREATE = 40,*/ -/* DNSSRV_TYPEID_IP_VALIDATE = 41,*/ -/* DNSSRV_TYPEID_AUTOCONFIGURE = 42,*/ -/* DNSSRV_TYPEID_UTF8_STRING_LIST = 43,*/ -/* DNSSRV_TYPEID_UNICODE_STRING_LIST = 44*/ - } DNSSRV_RPC_UNION; - - - /******************/ - /* Function: 0x00 */ - NTSTATUS DnssrvOperation ( - ); - - /******************/ - /* Function: 0x01 */ - NTSTATUS DnssrvQuery ( - ); - - /******************/ - /* Function: 0x02 */ - NTSTATUS DnssrvComplexOperation ( - ); - - /******************/ - /* Function: 0x03 */ - NTSTATUS DnssrvEnumRecords ( - ); - - /******************/ - /* Function: 0x04 */ - NTSTATUS DnssrvUpdateRecord ( - ); - - /******************/ - /* Function: 0x05 */ - NTSTATUS DnssrvOperation2 ( - ); - - /******************/ - /* Function: 0x06 */ - NTSTATUS DnssrvQuery2 ( - [in] DNS_RPC_CLIENT_VERSION client_version, - [in] uint32 setting_flags, - [in, unique, string, charset(UTF16)] uint16 *server_name, - [in, unique, string] uint8 *zone, - [in, unique, string] uint8 *operation, - [out, ref] DnssrvRpcTypeId *type_id, - [out, ref, switch_is(*type_id)] DNSSRV_RPC_UNION *data - ); - - /******************/ - /* Function: 0x07 */ - NTSTATUS DnssrvComplexOperation2 ( - ); - - typedef struct { - DNS_RPC_NODE rpc_node; - } DNS_RECORD_BUFFER; - - /******************/ - /* Function: 0x08 */ - NTSTATUS DnssrvEnumRecords2 ( - [in] DNS_RPC_CLIENT_VERSION client_version, - [in] uint32 setting_flags, - [in, unique, string, charset(UTF16)] uint16 *server_name, - [in, unique, string] uint8 *zone, - [in, unique, string] uint8 *node_name, - [in, unique, string] uint8 *start_child, - [in] DNS_RECORD_TYPE record_type, - [in] DNS_SELECT_FLAGS select_flag, - [in, unique, string] uint8 *filter_start, - [in, unique, string] uint8 *filter_stop, - [out,ref] uint32 *buffer_length, - [out, unique, subcontext(4)] DNS_RPC_NODE *record_buffer - ); - - /******************/ - /* Function: 0x09 */ - NTSTATUS DnssrvUpdateRecord2 ( - ); -} diff --git a/epan/dissectors/pidl/dnsserver/dnsserver.cnf b/epan/dissectors/pidl/dnsserver/dnsserver.cnf new file mode 100644 index 0000000000..eb2043900a --- /dev/null +++ b/epan/dissectors/pidl/dnsserver/dnsserver.cnf @@ -0,0 +1,94 @@ +# +# DNS_RPC_NAME +# +MANUAL dnsserver_dissect_struct_DNS_RPC_NAME +HF_FIELD hf_dnsserver_DNS_RPC_NAME_name "Name" "dnsserver.DNS_RPC_NAME.name" FT_STRING BASE_NONE NULL 0 "" "" "" + + +# +# DNS_RPC_NODE +# +MANUAL dnsserver_dissect_element_DNS_RPC_NODE_RecordCount +MANUAL dnsserver_dissect_element_DNS_RPC_NODE_records + + +NOEMIT dnsserver_dissect_element_DNS_RPC_NAME_NameLength +NOEMIT dnsserver_dissect_element_DNS_RPC_NAME_Name +NOEMIT dnsserver_dissect_element_DNS_RPC_NAME_Name_ + +CODE START + + #include "packet-smb-common.h" + +int +dnsserver_dissect_struct_DNS_RPC_NAME(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di, guint8 *drep _U_, int hf_index _U_, guint32 param _U_) +{ + proto_item *item = NULL; + proto_tree *tree = NULL; + int old_offset; + guint8 len; + const char *dn; + int dn_len = 0; + guint16 bc; + + if(di->conformant_run){ + /*just a run to handle conformant arrays, nothing to dissect */ + return offset; + } + + + + old_offset = offset; + + if (parent_tree) { + item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE); + tree = proto_item_add_subtree(item, ett_dnsserver_DNS_RPC_NAME); + } + + offset = dissect_ndr_uint8(tvb, offset, pinfo, tree, di, drep, hf_dnsserver_DNS_RPC_NAME_NameLength, &len); + bc = tvb_captured_length_remaining(tvb, offset); + dn = get_unicode_or_ascii_string(tvb, &offset, + TRUE, &dn_len, TRUE, TRUE, &bc); + if (dn) { + proto_tree_add_string(tree, hf_dnsserver_DNS_RPC_NAME_name, tvb, + offset, dn_len,dn); + offset += dn_len; + } + + proto_item_set_len(item, offset-old_offset); + + return offset; +} + + +static guint16 node_record_count; + +static int +dnsserver_dissect_element_DNS_RPC_NODE_RecordCount(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di, guint8 *drep _U_) +{ + if(di->conformant_run){ + /*just a run to handle conformant arrays, nothing to dissect */ + return offset; + } + + offset = dissect_ndr_uint16(tvb, offset, pinfo, tree, di, drep, hf_dnsserver_DNS_RPC_NODE_RecordCount, &node_record_count); + + return offset; +} + +static int +dnsserver_dissect_element_DNS_RPC_NODE_records(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di, guint8 *drep _U_) +{ + if(di->conformant_run){ + /*just a run to handle conformant arrays, nothing to dissect */ + return offset; + } + + while(node_record_count--){ + offset = dnsserver_dissect_element_DNS_RPC_NODE_records_(tvb, offset, pinfo, tree, di, drep); + } + + return offset; +} + +CODE END diff --git a/epan/dissectors/pidl/dnsserver/dnsserver.idl b/epan/dissectors/pidl/dnsserver/dnsserver.idl new file mode 100644 index 0000000000..c71b8eb1c3 --- /dev/null +++ b/epan/dissectors/pidl/dnsserver/dnsserver.idl @@ -0,0 +1,402 @@ +/* + dnsserver interface definition +*/ + +[ uuid("50abc2a4-574d-40b3-9d66-ee4fd5fba076"), + version(5.0), + pointer_default(unique), + helpstring("DNS Server") +] interface dnsserver +{ + + typedef [v1_enum] enum { + DNS_CLIENT_VERSION_W2K = 0x00000000, + DNS_CLIENT_VERSION_DOTNET = 0x00000006, + DNS_CLIENT_VERSION_LONGHORN = 0x00000007 + } DNS_RPC_CLIENT_VERSION; + + typedef [flag(NDR_ALIGN4)] struct { + uint8 OSMajorVersion; + uint8 OSMinorVersion; + uint16 ServicePackVersion; + } DNS_RPC_VERSION; + + typedef [enum8bit] enum { + DNS_RPC_BOOT_METHOD_FILE = 0x01, + DNS_RPC_BOOT_METHOD_REGISTRY = 0x02, + DNS_RPC_BOOT_METHOD_DIRECTORY = 0x03 + } DNS_RPC_BOOT_METHOD; + + + const uint32 DNS_LOG_LEVEL_ALL_PACKETS = 0x0000ffff; + const uint32 DNS_LOG_LEVEL_NON_QUERY = 0x000000fe; + typedef [bitmap32bit] bitmap { + DNS_LOG_LEVEL_QUERY = 0x00000001, + DNS_LOG_LEVEL_NOTIFY = 0x00000010, + DNS_LOG_LEVEL_UPDATE = 0x00000020, + DNS_LOG_LEVEL_QUESTIONS = 0x00000100, + DNS_LOG_LEVEL_ANSWERS = 0x00000200, + DNS_LOG_LEVEL_SEND = 0x00001000, + DNS_LOG_LEVEL_RECV = 0x00002000, + DNS_LOG_LEVEL_UDP = 0x00004000, + DNS_LOG_LEVEL_TCP = 0x00008000, + DNS_LOG_LEVEL_FULL_PACKETS = 0x01000000, + DNS_LOG_LEVEL_WRITE_THROUGH = 0x80000000 + } DNS_LOG_LEVELS; + + const uint32 DNS_RPC_USE_ALL_PROTOCOLS = 0xffffffff; + typedef [bitmap32bit] bitmap { + DNS_RPC_USE_TCPIP = 0x00000001, + DNS_RPC_USE_NAMED_PIPE = 0x00000002, + DNS_RPC_USE_LPC = 0x00000004 + } DNS_RPC_PROTOCOLS; + + typedef [v1_enum] enum { + DNS_ALLOW_RFC_NAMES_ONLY = 0x00000000, + DNS_ALLOW_NONRFC_NAMES = 0x00000001, + DNS_ALLOW_MULTIBYTE_NAMES = 0x00000002, + DNS_ALLOW_ALL_NAMES = 0x00000003 + } DNS_NAME_CHECK_FLAGS; + + typedef [enum16bit] enum { + DNS_TYPE_ZERO = 0x0000, + DNS_TYPE_A = 0x0001, + DNS_TYPE_NS = 0x0002, + DNS_TYPE_MD = 0x0003, + DNS_TYPE_MF = 0x0004, + DNS_TYPE_CNAME = 0x0005, + DNS_TYPE_SOA = 0x0006, + DNS_TYPE_MB = 0x0007, + DNS_TYPE_MG = 0x0008, + DNS_TYPE_MR = 0x0009, + DNS_TYPE_NULL = 0x000a, + DNS_TYPE_WKS = 0x000b, + DNS_TYPE_PTR = 0x000c, + DNS_TYPE_HINFO = 0x000d, + DNS_TYPE_MINFO = 0x000e, + DNS_TYPE_MX = 0x000f, + DNS_TYPE_TXT = 0x0010, + DNS_TYPE_RP = 0x0011, + DNS_TYPE_AFSDB = 0x0012, + DNS_TYPE_X25 = 0x0013, + DNS_TYPE_ISDN = 0x0014, + DNS_TYPE_RT = 0x0015, + DNS_TYPE_NSAP = 0x0016, + DNS_TYPE_NSAPPTR = 0x0017, + DNS_TYPE_SIG = 0x0018, + DNS_TYPE_KEY = 0x0019, + DNS_TYPE_PX = 0x001a, + DNS_TYPE_GPOS = 0x001b, + DNS_TYPE_AAAA = 0x001c, + DNS_TYPE_LOC = 0x001d, + DNS_TYPE_NXT = 0x001e, + DNS_TYPE_SRV = 0x0021, + DNS_TYPE_ATMA = 0x0022, + DNS_TYPE_NAPTR = 0x0023, + DNS_TYPE_DNAME = 0x0024, + DNS_TYPE_ALL = 0x00ff, + DNS_TYPE_WINS = 0xff01, + DNS_TYPE_WINSR = 0xff02 + } DNS_RECORD_TYPE; + + typedef [bitmap32bit] bitmap { + DNS_RPC_VIEW_AUTHORITY_DATA = 0x00000001, + DNS_RPC_VIEW_CACHE_DATA = 0x00000002, + DNS_RPC_VIEW_GLUE_DATA = 0x00000004, + DNS_RPC_VIEW_ROOT_HINT_DATA = 0x00000008, + DNS_RPC_VIEW_ADDITIONAL_DATA = 0x00000010, + DNS_RPC_VIEW_NO_CHILDREN = 0x00010000, + DNS_RPC_VIEW_ONLY_CHILDREN = 0x00020000 + } DNS_SELECT_FLAGS; + + typedef [bitmap32bit] bitmap { + DNS_RPC_FLAG_CACHE_DATA = 0x80000000, + DNS_RPC_FLAG_ZONE_ROOT = 0x40000000, + DNS_RPC_FLAG_AUTH_ZONE_ROOT = 0x20000000, + DNS_RPC_FLAG_ZONE_DELEGATION = 0x10000000, + DNS_RPC_FLAG_RECOR_DEFAULT_TTL = 0x08000000, + DNS_RPC_FLAG_RECORD_TTL_CHANGE = 0x04000000, + DNS_RPC_FLAG_RECORD_CREATE_PTR = 0x02000000, + DNS_RPC_FLAG_NODE_STICKY = 0x01000000, + DNS_RPC_FLAG_NODE_COMPLETE = 0x00800000, + DNS_RPC_FLAG_OPEN_ACL = 0x00040000, + DNS_RPC_FLAG_AGING_ON = 0x00020000, + DNS_RPC_FLAG_SUPPRESS_NOTIFY = 0x00010000 + } DNS_RPC_NODE_FLAGS; + + /* 2.2.2.2.1 this cant really be described in IDL :-( */ + typedef struct { + uint8 NameLength; + uint8 Name[NameLength]; + } DNS_RPC_NAME; + + typedef struct { + DNS_RPC_NAME Name; + } DNS_RPC_RECORD_NODE_NAME; + +/* typedef [nodiscriminant] union { */ + typedef union { + [case(2)] DNS_RPC_RECORD_NODE_NAME NodeName; + } DNS_RPC_RECORD_UNION; + + typedef struct { + uint16 DataLength; /* size of */ + DNS_RECORD_TYPE Type; + uint32 Flags; + uint32 Serial; + uint32 TtlSeconds; + uint32 TimeStamp; + uint32 reserved; + [switch_is(Type)] DNS_RPC_RECORD_UNION record; + } DNS_RPC_RECORD; + + typedef struct { + uint16 Length; + uint16 RecordCount; + DNS_RPC_NODE_FLAGS Flags; + uint32 Childcount; + DNS_RPC_NAME NodeName; + DNS_RPC_RECORD records[RecordCount]; + } DNS_RPC_NODE; +/* XXX */ + + + typedef struct { + uint32 AddrCount; + [size_is(AddrCount)] uint32 AddrArray[]; + } IP4_ARRAY; + +/* XXX */ + typedef struct { + uint32 RpcStructureVersion; + uint32 reserved0; + DNS_RPC_VERSION Version; + DNS_RPC_BOOT_METHOD BootMethod; + boolean8 AdminConfigured; + boolean8 AllowUpdate; + boolean8 DsAvailable; + [unique, string] uint8 *ServerName; + [unique, string, charset(UTF16)] uint16 *DsContainer; + [unique] IP4_ARRAY *ServerAddrs; + [unique] IP4_ARRAY *ListenAddrs; + [unique] IP4_ARRAY *Forwarders; + [unique] IP4_ARRAY *LogFilter; + [unique, string, charset(UTF16)] uint16 *LogFilePath; + [unique, string] uint8 *DomainName; + [unique, string] uint8 *ForestName; + [unique, string] uint8 *DomainDirectoryPartition; + [unique, string] uint8 *ForestDirectoryPartition; + [unique, string] uint8 *extension0; + [unique, string] uint8 *extension1; + [unique, string] uint8 *extension2; + [unique, string] uint8 *extension3; + [unique, string] uint8 *extension4; + [unique, string] uint8 *extension5; + DNS_LOG_LEVELS LogLevel; + uint32 DebugLevel; + uint32 ForwardTimeout; + DNS_RPC_PROTOCOLS RpcProtocol; + DNS_NAME_CHECK_FLAGS NameCheckFlag; + uint32 AddressAnswerLimit; + uint32 RecursionRetry; + uint32 RecursionTimeout; + uint32 MaxCacheTtl; + uint32 DsPollingInterval; + uint32 LocalNetPriorityNetmask; + uint32 ScavengingInterval; + uint32 DefaultRefreshInterval; + uint32 DefaultNoRefreshInterval; + uint32 LastScavengeTime; + uint32 EventLogLevel; + uint32 LogFileMaxSize; + uint32 DsForestVersion; + uint32 DsDomainVersion; + uint32 DsDsaVersion; + uint32 reserve_array[4]; + boolean8 AutoReverseZones; + boolean8 AutoCacheUpdate; + boolean8 RecurseAfterForwarding; + boolean8 ForwardDelegations; + boolean8 NoRecursion; + boolean8 SecureResponses; + boolean8 RoundRobin; + boolean8 LocalNetPriority; + boolean8 BindSecondaries; + boolean8 WriteAuthorityNs; + boolean8 StrictFileParsing; + boolean8 LooseWildcarding; + boolean8 DefaultAgingState; + boolean8 reserve_array2[15]; + } DNS_RPC_SERVER_INFO_DOTNET; +/* XXX */ + + typedef [v1_enum, flag(NDR_PAHEX)] enum { + DNSSRV_TYPEID_NULL = 0, + DNSSRV_TYPEID_DWORD = 1, + DNSSRV_TYPEID_LPSTR = 2, + DNSSRV_TYPEID_LPWSTR = 3, + DNSSRV_TYPEID_IPARRAY = 4, + DNSSRV_TYPEID_BUFFER = 5, + DNSSRV_TYPEID_SERVER_INFO_W2K = 6, + DNSSRV_TYPEID_STATS = 7, + DNSSRV_TYPEID_FORWARDERS_W2K = 8, + DNSSRV_TYPEID_ZONE_W2K = 9, + DNSSRV_TYPEID_ZONE_INFO_W2K = 10, + DNSSRV_TYPEID_ZONE_SECONDARIES_W2K = 11, + DNSSRV_TYPEID_ZONE_DATABASE_W2K = 12, + DNSSRV_TYPEID_ZONE_TYPE_RESET_W2K = 13, + DNSSRV_TYPEID_ZONE_CREATE_W2K = 14, + DNSSRV_TYPEID_NAME_AND_PARAM = 15, + DNSSRV_TYPEID_ZONE_LIST_W2K = 16, + DNSSRV_TYPEID_ZONE_RENAME = 17, + DNSSRV_TYPEID_ZONE_EXPORT = 18, + DNSSRV_TYPEID_SERVER_INFO_DOTNET = 19, + DNSSRV_TYPEID_FORWARDERS_DOTNET = 20, + DNSSRV_TYPEID_ZONE = 21, + DNSSRV_TYPEID_ZONE_INFO_DOTNET = 22, + DNSSRV_TYPEID_ZONE_SECONDARIES_DOTNET = 23, + DNSSRV_TYPEID_ZONE_DATABASE = 24, + DNSSRV_TYPEID_ZONE_TYPE_RESET_DOTNET = 25, + DNSSRV_TYPEID_ZONE_CREATE_DOTNET = 26, + DNSSRV_TYPEID_ZONE_LIST = 27, + DNSSRV_TYPEID_DP_ENUM = 28, + DNSSRV_TYPEID_DP_INFO = 29, + DNSSRV_TYPEID_DP_LIST = 30, + DNSSRV_TYPEID_ENLIST_DP = 31, + DNSSRV_TYPEID_ZONE_CHANGE_DP = 32, + DNSSRV_TYPEID_ENUM_ZONES_FILTER = 33, + DNSSRV_TYPEID_ADDARRAY = 34, + DNSSRV_TYPEID_SERVER_INFO = 35, + DNSSRV_TYPEID_ZONE_INFO = 36, + DNSSRV_TYPEID_FORWARDERS = 37, + DNSSRV_TYPEID_ZONE_SECONDARIES = 38, + DNSSRV_TYPEID_ZONE_TYPE_RESET = 39, + DNSSRV_TYPEID_ZONE_CREATE = 40, + DNSSRV_TYPEID_IP_VALIDATE = 41, + DNSSRV_TYPEID_AUTOCONFIGURE = 42, + DNSSRV_TYPEID_UTF8_STRING_LIST = 43, + DNSSRV_TYPEID_UNICODE_STRING_LIST = 44 + } DnssrvRpcTypeId; + + typedef union { + [case(DNSSRV_TYPEID_NULL)] uint8 *null; + [case(DNSSRV_TYPEID_DWORD)] uint32 dword; +/* DNSSRV_TYPEID_LPSTR = 2,*/ +/* DNSSRV_TYPEID_LPWSTR = 3,*/ +/* DNSSRV_TYPEID_IPARRAY = 4,*/ +/* DNSSRV_TYPEID_BUFFER = 5,*/ +/* DNSSRV_TYPEID_SERVER_INFO_W2K = 6,*/ +/* DNSSRV_TYPEID_STATS = 7,*/ +/* DNSSRV_TYPEID_FORWARDERS_W2K = 8,*/ +/* DNSSRV_TYPEID_ZONE_W2K = 9,*/ +/* DNSSRV_TYPEID_ZONE_INFO_W2K = 10,*/ +/* DNSSRV_TYPEID_ZONE_SECONDARIES_W2K = 11,*/ +/* DNSSRV_TYPEID_ZONE_DATABASE_W2K = 12,*/ +/* DNSSRV_TYPEID_ZONE_TYPE_RESET_W2K = 13,*/ +/* DNSSRV_TYPEID_ZONE_CREATE_W2K = 14,*/ +/* DNSSRV_TYPEID_NAME_AND_PARAM = 15,*/ +/* DNSSRV_TYPEID_ZONE_LIST_W2K = 16,*/ +/* DNSSRV_TYPEID_ZONE_RENAME = 17,*/ +/* DNSSRV_TYPEID_ZONE_EXPORT = 18,*/ + [case(DNSSRV_TYPEID_SERVER_INFO_DOTNET)] DNS_RPC_SERVER_INFO_DOTNET *ServerInfoDotnet; +/* DNSSRV_TYPEID_FORWARDERS_DOTNET = 20,*/ +/* DNSSRV_TYPEID_ZONE = 21,*/ +/* DNSSRV_TYPEID_ZONE_INFO_DOTNET = 22,*/ +/* DNSSRV_TYPEID_ZONE_SECONDARIES_DOTNET = 23,*/ +/* DNSSRV_TYPEID_ZONE_DATABASE = 24,*/ +/* DNSSRV_TYPEID_ZONE_TYPE_RESET_DOTNET = 25,*/ +/* DNSSRV_TYPEID_ZONE_CREATE_DOTNET = 26,*/ +/* DNSSRV_TYPEID_ZONE_LIST = 27,*/ +/* DNSSRV_TYPEID_DP_ENUM = 28,*/ +/* DNSSRV_TYPEID_DP_INFO = 29,*/ +/* DNSSRV_TYPEID_DP_LIST = 30,*/ +/* DNSSRV_TYPEID_ENLIST_DP = 31,*/ +/* DNSSRV_TYPEID_ZONE_CHANGE_DP = 32,*/ +/* DNSSRV_TYPEID_ENUM_ZONES_FILTER = 33,*/ +/* DNSSRV_TYPEID_ADDARRAY = 34,*/ +/* DNSSRV_TYPEID_SERVER_INFO = 35,*/ +/* DNSSRV_TYPEID_ZONE_INFO = 36,*/ +/* DNSSRV_TYPEID_FORWARDERS = 37,*/ +/* DNSSRV_TYPEID_ZONE_SECONDARIES = 38,*/ +/* DNSSRV_TYPEID_ZONE_TYPE_RESET = 39,*/ +/* DNSSRV_TYPEID_ZONE_CREATE = 40,*/ +/* DNSSRV_TYPEID_IP_VALIDATE = 41,*/ +/* DNSSRV_TYPEID_AUTOCONFIGURE = 42,*/ +/* DNSSRV_TYPEID_UTF8_STRING_LIST = 43,*/ +/* DNSSRV_TYPEID_UNICODE_STRING_LIST = 44*/ + } DNSSRV_RPC_UNION; + + + /******************/ + /* Function: 0x00 */ + NTSTATUS DnssrvOperation ( + ); + + /******************/ + /* Function: 0x01 */ + NTSTATUS DnssrvQuery ( + ); + + /******************/ + /* Function: 0x02 */ + NTSTATUS DnssrvComplexOperation ( + ); + + /******************/ + /* Function: 0x03 */ + NTSTATUS DnssrvEnumRecords ( + ); + + /******************/ + /* Function: 0x04 */ + NTSTATUS DnssrvUpdateRecord ( + ); + + /******************/ + /* Function: 0x05 */ + NTSTATUS DnssrvOperation2 ( + ); + + /******************/ + /* Function: 0x06 */ + NTSTATUS DnssrvQuery2 ( + [in] DNS_RPC_CLIENT_VERSION client_version, + [in] uint32 setting_flags, + [in, unique, string, charset(UTF16)] uint16 *server_name, + [in, unique, string] uint8 *zone, + [in, unique, string] uint8 *operation, + [out, ref] DnssrvRpcTypeId *type_id, + [out, ref, switch_is(*type_id)] DNSSRV_RPC_UNION *data + ); + + /******************/ + /* Function: 0x07 */ + NTSTATUS DnssrvComplexOperation2 ( + ); + + typedef struct { + DNS_RPC_NODE rpc_node; + } DNS_RECORD_BUFFER; + + /******************/ + /* Function: 0x08 */ + NTSTATUS DnssrvEnumRecords2 ( + [in] DNS_RPC_CLIENT_VERSION client_version, + [in] uint32 setting_flags, + [in, unique, string, charset(UTF16)] uint16 *server_name, + [in, unique, string] uint8 *zone, + [in, unique, string] uint8 *node_name, + [in, unique, string] uint8 *start_child, + [in] DNS_RECORD_TYPE record_type, + [in] DNS_SELECT_FLAGS select_flag, + [in, unique, string] uint8 *filter_start, + [in, unique, string] uint8 *filter_stop, + [out,ref] uint32 *buffer_length, + [out, unique, subcontext(4)] DNS_RPC_NODE *record_buffer + ); + + /******************/ + /* Function: 0x09 */ + NTSTATUS DnssrvUpdateRecord2 ( + ); +} diff --git a/epan/dissectors/pidl/dssetup.idl b/epan/dissectors/pidl/dssetup.idl deleted file mode 100644 index 14de9f7633..0000000000 --- a/epan/dissectors/pidl/dssetup.idl +++ /dev/null @@ -1,101 +0,0 @@ -/* - dssetup interface definition -*/ - -import "misc.idl"; - -[ - uuid("3919286a-b10c-11d0-9ba8-00c04fd92ef5"), - version(0.0), - endpoint("ncacn_np:[\\pipe\\lsarpc]", "ncacn_np:[\\pipe\\lsass]", "ncacn_ip_tcp:", "ncalrpc:"), - pointer_default(unique), - helpstring("Active Directory Setup") -] interface dssetup -{ - /**********************************************/ - /* Function 0x00 */ - - typedef enum { - DS_ROLE_STANDALONE_WORKSTATION = 0, - DS_ROLE_MEMBER_WORKSTATION = 1, - DS_ROLE_STANDALONE_SERVER = 2, - DS_ROLE_MEMBER_SERVER = 3, - DS_ROLE_BACKUP_DC = 4, - DS_ROLE_PRIMARY_DC = 5 - } dssetup_DsRole; - - typedef [bitmap32bit] bitmap { - DS_ROLE_PRIMARY_DS_RUNNING = 0x00000001, - DS_ROLE_PRIMARY_DS_MIXED_MODE = 0x00000002, - DS_ROLE_UPGRADE_IN_PROGRESS = 0x00000004, - DS_ROLE_PRIMARY_DOMAIN_GUID_PRESENT = 0x01000000 - } dssetup_DsRoleFlags; - - typedef struct { - dssetup_DsRole role; - dssetup_DsRoleFlags flags; - [charset(UTF16),string] uint16 *domain; - [charset(UTF16),string] uint16 *dns_domain; - [charset(UTF16),string] uint16 *forest; - GUID domain_guid; - } dssetup_DsRolePrimaryDomInfoBasic; - - typedef [v1_enum] enum { - DS_ROLE_NOT_UPGRADING = 0, - DS_ROLE_UPGRADING = 1 - } dssetup_DsUpgrade; - - typedef enum { - DS_ROLE_PREVIOUS_UNKNOWN = 0, - DS_ROLE_PREVIOUS_PRIMARY = 1, - DS_ROLE_PREVIOUS_BACKUP = 2 - } dssetup_DsPrevious; - - typedef struct { - dssetup_DsUpgrade upgrading; - dssetup_DsPrevious previous_role; - } dssetup_DsRoleUpgradeStatus; - - typedef enum { - DS_ROLE_OP_IDLE = 0, - DS_ROLE_OP_ACTIVE = 1, - DS_ROLE_OP_NEEDS_REBOOT = 2 - } dssetup_DsRoleOp; - - typedef struct { - dssetup_DsRoleOp status; - } dssetup_DsRoleOpStatus; - - typedef enum { - DS_ROLE_BASIC_INFORMATION = 1, - DS_ROLE_UPGRADE_STATUS = 2, - DS_ROLE_OP_STATUS = 3 - } dssetup_DsRoleInfoLevel; - - typedef [switch_type(dssetup_DsRoleInfoLevel)] union { - [case(DS_ROLE_BASIC_INFORMATION)] dssetup_DsRolePrimaryDomInfoBasic basic; - [case(DS_ROLE_UPGRADE_STATUS)] dssetup_DsRoleUpgradeStatus upgrade; - [case(DS_ROLE_OP_STATUS)] dssetup_DsRoleOpStatus opstatus; - } dssetup_DsRoleInfo; - - WERROR dssetup_DsRoleGetPrimaryDomainInformation( - [in] dssetup_DsRoleInfoLevel level, - [out,switch_is(level),unique] dssetup_DsRoleInfo *info - ); - - /* - w2k3 has removed all the calls below from their implementation. - These stubs are left here only as a way of documenting the names - of the calls in case they ever turn up on the wire. - */ - [todo] WERROR dssetup_DsRoleDnsNameToFlatName(); - [todo] WERROR dssetup_DsRoleDcAsDc(); - [todo] WERROR dssetup_DsRoleDcAsReplica(); - [todo] WERROR dssetup_DsRoleDemoteDc(); - [todo] WERROR dssetup_DsRoleGetDcOperationProgress(); - [todo] WERROR dssetup_DsRoleGetDcOperationResults(); - [todo] WERROR dssetup_DsRoleCancel(); - [todo] WERROR dssetup_DsRoleServerSaveStateForUpgrade(); - [todo] WERROR dssetup_DsRoleUpgradeDownlevelServer(); - [todo] WERROR dssetup_DsRoleAbortDownlevelServerUpgrade(); -} diff --git a/epan/dissectors/pidl/dssetup/dssetup.idl b/epan/dissectors/pidl/dssetup/dssetup.idl new file mode 100644 index 0000000000..922caba4f6 --- /dev/null +++ b/epan/dissectors/pidl/dssetup/dssetup.idl @@ -0,0 +1,101 @@ +/* + dssetup interface definition +*/ + +import "misc/misc.idl"; + +[ + uuid("3919286a-b10c-11d0-9ba8-00c04fd92ef5"), + version(0.0), + endpoint("ncacn_np:[\\pipe\\lsarpc]", "ncacn_np:[\\pipe\\lsass]", "ncacn_ip_tcp:", "ncalrpc:"), + pointer_default(unique), + helpstring("Active Directory Setup") +] interface dssetup +{ + /**********************************************/ + /* Function 0x00 */ + + typedef enum { + DS_ROLE_STANDALONE_WORKSTATION = 0, + DS_ROLE_MEMBER_WORKSTATION = 1, + DS_ROLE_STANDALONE_SERVER = 2, + DS_ROLE_MEMBER_SERVER = 3, + DS_ROLE_BACKUP_DC = 4, + DS_ROLE_PRIMARY_DC = 5 + } dssetup_DsRole; + + typedef [bitmap32bit] bitmap { + DS_ROLE_PRIMARY_DS_RUNNING = 0x00000001, + DS_ROLE_PRIMARY_DS_MIXED_MODE = 0x00000002, + DS_ROLE_UPGRADE_IN_PROGRESS = 0x00000004, + DS_ROLE_PRIMARY_DOMAIN_GUID_PRESENT = 0x01000000 + } dssetup_DsRoleFlags; + + typedef struct { + dssetup_DsRole role; + dssetup_DsRoleFlags flags; + [charset(UTF16),string] uint16 *domain; + [charset(UTF16),string] uint16 *dns_domain; + [charset(UTF16),string] uint16 *forest; + GUID domain_guid; + } dssetup_DsRolePrimaryDomInfoBasic; + + typedef [v1_enum] enum { + DS_ROLE_NOT_UPGRADING = 0, + DS_ROLE_UPGRADING = 1 + } dssetup_DsUpgrade; + + typedef enum { + DS_ROLE_PREVIOUS_UNKNOWN = 0, + DS_ROLE_PREVIOUS_PRIMARY = 1, + DS_ROLE_PREVIOUS_BACKUP = 2 + } dssetup_DsPrevious; + + typedef struct { + dssetup_DsUpgrade upgrading; + dssetup_DsPrevious previous_role; + } dssetup_DsRoleUpgradeStatus; + + typedef enum { + DS_ROLE_OP_IDLE = 0, + DS_ROLE_OP_ACTIVE = 1, + DS_ROLE_OP_NEEDS_REBOOT = 2 + } dssetup_DsRoleOp; + + typedef struct { + dssetup_DsRoleOp status; + } dssetup_DsRoleOpStatus; + + typedef enum { + DS_ROLE_BASIC_INFORMATION = 1, + DS_ROLE_UPGRADE_STATUS = 2, + DS_ROLE_OP_STATUS = 3 + } dssetup_DsRoleInfoLevel; + + typedef [switch_type(dssetup_DsRoleInfoLevel)] union { + [case(DS_ROLE_BASIC_INFORMATION)] dssetup_DsRolePrimaryDomInfoBasic basic; + [case(DS_ROLE_UPGRADE_STATUS)] dssetup_DsRoleUpgradeStatus upgrade; + [case(DS_ROLE_OP_STATUS)] dssetup_DsRoleOpStatus opstatus; + } dssetup_DsRoleInfo; + + WERROR dssetup_DsRoleGetPrimaryDomainInformation( + [in] dssetup_DsRoleInfoLevel level, + [out,switch_is(level),unique] dssetup_DsRoleInfo *info + ); + + /* + w2k3 has removed all the calls below from their implementation. + These stubs are left here only as a way of documenting the names + of the calls in case they ever turn up on the wire. + */ + [todo] WERROR dssetup_DsRoleDnsNameToFlatName(); + [todo] WERROR dssetup_DsRoleDcAsDc(); + [todo] WERROR dssetup_DsRoleDcAsReplica(); + [todo] WERROR dssetup_DsRoleDemoteDc(); + [todo] WERROR dssetup_DsRoleGetDcOperationProgress(); + [todo] WERROR dssetup_DsRoleGetDcOperationResults(); + [todo] WERROR dssetup_DsRoleCancel(); + [todo] WERROR dssetup_DsRoleServerSaveStateForUpgrade(); + [todo] WERROR dssetup_DsRoleUpgradeDownlevelServer(); + [todo] WERROR dssetup_DsRoleAbortDownlevelServerUpgrade(); +} diff --git a/epan/dissectors/pidl/efs.cnf b/epan/dissectors/pidl/efs.cnf deleted file mode 100644 index cac75869e4..0000000000 --- a/epan/dissectors/pidl/efs.cnf +++ /dev/null @@ -1,27 +0,0 @@ -# Conformance file for EFS - -# -# policyhandle tracking -# This block is to specify where a policyhandle is opened and where it is -# closed so that policyhandles when dissected contain nice info such as -# [opened in xxx] [closed in yyy] -# -# Policyhandles are opened in these functions -PARAM_VALUE efs_dissect_element_EfsRpcOpenFileRaw_pvContext_ PIDL_POLHND_OPEN -# Policyhandles are closed in these functions -PARAM_VALUE efs_dissect_element_EfsRpcCloseRaw_pvContext_ PIDL_POLHND_CLOSE - -CODE START -static int -efs_dissect_struct_dom_sid(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, dcerpc_info* di, guint8 *drep _U_, int hf_index _U_, guint32 param _U_) -{ - if(di->conformant_run){ - /* just a run to handle conformant arrays, no scalars to dissect */ - return offset; - } - - offset=dissect_nt_sid(tvb, offset, tree, "SID", NULL, -1); - return offset; -} - -CODE END diff --git a/epan/dissectors/pidl/efs.idl b/epan/dissectors/pidl/efs.idl deleted file mode 100644 index 54f971d184..0000000000 --- a/epan/dissectors/pidl/efs.idl +++ /dev/null @@ -1,108 +0,0 @@ -/* - IDL definitions from original packet-dcerpc-efs.c - by Jean-Baptiste Marchand -*/ - -/* import "security.idl";*/ - -[ - uuid("c681d488-d850-11d0-8c52-00c04fd90f7e"), - version(1.0), - pointer_default(unique) -] interface efs -{ - -WERROR EfsRpcOpenFileRaw( - [out,ref] policy_handle *pvContext, - [in] [charset(UTF16),string] uint16 FileName[], - [in] uint32 Flags - ); - -WERROR EfsRpcReadFileRaw( - [in,ref] policy_handle *pvContext -/* incomplete */ -); - - -WERROR EfsRpcWriteFileRaw( - [in,ref] policy_handle *pvContext -/* incomplete */ -); - -void EfsRpcCloseRaw( - [in,out,ref] policy_handle *pvContext -); - -WERROR EfsRpcEncryptFileSrv( - [in] [charset(UTF16),string] uint16 Filename[] -); - -WERROR EfsRpcDecryptFileSrv( - [in] [charset(UTF16),string] uint16 FileName[], - [in] uint32 Reserved -); - -typedef struct { - uint32 cbData; - [size_is(cbData), unique] uint8 *pbData; -} EFS_HASH_BLOB; - -typedef struct { - uint32 cbTotalLength; - [unique] dom_sid *pUserSid; - [unique] EFS_HASH_BLOB *pHash; - [unique] [charset(UTF16),string] uint16 *lpDisplayInformation; -} ENCRYPTION_CERTIFICATE_HASH; - -typedef struct { - uint32 nCert_Hash; - /* this is a pointer to an array of pointers */ - [size_is(nCert_Hash)] ENCRYPTION_CERTIFICATE_HASH *pUsers[*]; -} ENCRYPTION_CERTIFICATE_HASH_LIST; - -WERROR EfsRpcQueryUsersOnFile( - [in] [charset(UTF16),string] uint16 FileName[], - [out,ref,unique] ENCRYPTION_CERTIFICATE_HASH_LIST **pUsers -); - -WERROR EfsRpcQueryRecoveryAgents( - [in] [charset(UTF16),string] uint16 FileName[], - [out,ref,unique] ENCRYPTION_CERTIFICATE_HASH_LIST **pRecoveryAgents -); - -WERROR EfsRpcRemoveUsersFromFile( - [in] [charset(UTF16),string] uint16 FileName[] - /* [in] ENCRYPTION_CERTIFICATE_LIST Hashes*/ -); - -WERROR EfsRpcAddUsersToFile( - [in] [charset(UTF16),string] uint16 FileName[] - /* [in] ENCRYPTION_CERTIFICATE_LIST Hashes*/ -); - -typedef struct { - uint32 dwCertEncodingType; - uint32 cbData; - [size_is(cbData)] [unique] uint8 *pbData; -} EFS_CERTIFICATE_BLOB; - -typedef struct { - uint32 TotalLength; - [unique] dom_sid *pUserSid; - [unique] EFS_CERTIFICATE_BLOB *pCertBlob; -} ENCRYPTION_CERTIFICATE; - -WERROR EfsRpcSetFileEncryptionKey( - [in] [unique] ENCRYPTION_CERTIFICATE *pEncryptionCertificate -); - -WERROR EfsRpcNotSupported( -); - -WERROR EfsRpcFileKeyInfo( -); - -WERROR EfsRpcDuplicateEncryptionInfoFile( -); - -} diff --git a/epan/dissectors/pidl/efs/efs.cnf b/epan/dissectors/pidl/efs/efs.cnf new file mode 100644 index 0000000000..cac75869e4 --- /dev/null +++ b/epan/dissectors/pidl/efs/efs.cnf @@ -0,0 +1,27 @@ +# Conformance file for EFS + +# +# policyhandle tracking +# This block is to specify where a policyhandle is opened and where it is +# closed so that policyhandles when dissected contain nice info such as +# [opened in xxx] [closed in yyy] +# +# Policyhandles are opened in these functions +PARAM_VALUE efs_dissect_element_EfsRpcOpenFileRaw_pvContext_ PIDL_POLHND_OPEN +# Policyhandles are closed in these functions +PARAM_VALUE efs_dissect_element_EfsRpcCloseRaw_pvContext_ PIDL_POLHND_CLOSE + +CODE START +static int +efs_dissect_struct_dom_sid(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, dcerpc_info* di, guint8 *drep _U_, int hf_index _U_, guint32 param _U_) +{ + if(di->conformant_run){ + /* just a run to handle conformant arrays, no scalars to dissect */ + return offset; + } + + offset=dissect_nt_sid(tvb, offset, tree, "SID", NULL, -1); + return offset; +} + +CODE END diff --git a/epan/dissectors/pidl/efs/efs.idl b/epan/dissectors/pidl/efs/efs.idl new file mode 100644 index 0000000000..54f971d184 --- /dev/null +++ b/epan/dissectors/pidl/efs/efs.idl @@ -0,0 +1,108 @@ +/* + IDL definitions from original packet-dcerpc-efs.c + by Jean-Baptiste Marchand +*/ + +/* import "security.idl";*/ + +[ + uuid("c681d488-d850-11d0-8c52-00c04fd90f7e"), + version(1.0), + pointer_default(unique) +] interface efs +{ + +WERROR EfsRpcOpenFileRaw( + [out,ref] policy_handle *pvContext, + [in] [charset(UTF16),string] uint16 FileName[], + [in] uint32 Flags + ); + +WERROR EfsRpcReadFileRaw( + [in,ref] policy_handle *pvContext +/* incomplete */ +); + + +WERROR EfsRpcWriteFileRaw( + [in,ref] policy_handle *pvContext +/* incomplete */ +); + +void EfsRpcCloseRaw( + [in,out,ref] policy_handle *pvContext +); + +WERROR EfsRpcEncryptFileSrv( + [in] [charset(UTF16),string] uint16 Filename[] +); + +WERROR EfsRpcDecryptFileSrv( + [in] [charset(UTF16),string] uint16 FileName[], + [in] uint32 Reserved +); + +typedef struct { + uint32 cbData; + [size_is(cbData), unique] uint8 *pbData; +} EFS_HASH_BLOB; + +typedef struct { + uint32 cbTotalLength; + [unique] dom_sid *pUserSid; + [unique] EFS_HASH_BLOB *pHash; + [unique] [charset(UTF16),string] uint16 *lpDisplayInformation; +} ENCRYPTION_CERTIFICATE_HASH; + +typedef struct { + uint32 nCert_Hash; + /* this is a pointer to an array of pointers */ + [size_is(nCert_Hash)] ENCRYPTION_CERTIFICATE_HASH *pUsers[*]; +} ENCRYPTION_CERTIFICATE_HASH_LIST; + +WERROR EfsRpcQueryUsersOnFile( + [in] [charset(UTF16),string] uint16 FileName[], + [out,ref,unique] ENCRYPTION_CERTIFICATE_HASH_LIST **pUsers +); + +WERROR EfsRpcQueryRecoveryAgents( + [in] [charset(UTF16),string] uint16 FileName[], + [out,ref,unique] ENCRYPTION_CERTIFICATE_HASH_LIST **pRecoveryAgents +); + +WERROR EfsRpcRemoveUsersFromFile( + [in] [charset(UTF16),string] uint16 FileName[] + /* [in] ENCRYPTION_CERTIFICATE_LIST Hashes*/ +); + +WERROR EfsRpcAddUsersToFile( + [in] [charset(UTF16),string] uint16 FileName[] + /* [in] ENCRYPTION_CERTIFICATE_LIST Hashes*/ +); + +typedef struct { + uint32 dwCertEncodingType; + uint32 cbData; + [size_is(cbData)] [unique] uint8 *pbData; +} EFS_CERTIFICATE_BLOB; + +typedef struct { + uint32 TotalLength; + [unique] dom_sid *pUserSid; + [unique] EFS_CERTIFICATE_BLOB *pCertBlob; +} ENCRYPTION_CERTIFICATE; + +WERROR EfsRpcSetFileEncryptionKey( + [in] [unique] ENCRYPTION_CERTIFICATE *pEncryptionCertificate +); + +WERROR EfsRpcNotSupported( +); + +WERROR EfsRpcFileKeyInfo( +); + +WERROR EfsRpcDuplicateEncryptionInfoFile( +); + +} diff --git a/epan/dissectors/pidl/eventlog.cnf b/epan/dissectors/pidl/eventlog.cnf deleted file mode 100644 index 1e6690b402..0000000000 --- a/epan/dissectors/pidl/eventlog.cnf +++ /dev/null @@ -1,158 +0,0 @@ -# Conformance file for EVENTLOG -# - -HF_FIELD hf_eventlog_Record "Record" "eventlog.Record" FT_NONE BASE_NONE NULL 0 "" "" "" -HF_FIELD hf_eventlog_Record_length "Record Length" "eventlog.Record.length" FT_UINT32 BASE_DEC NULL 0 "" "" "" -HF_FIELD hf_eventlog_Record_source_name "Source Name" "eventlog.Record.source_name" FT_STRING BASE_NONE NULL 0 "" "" "" -HF_FIELD hf_eventlog_Record_computer_name "Computer Name" "eventlog.Record.computer_name" FT_STRING BASE_NONE NULL 0 "" "" "" -HF_FIELD hf_eventlog_Record_string "string" "eventlog.Record.string" FT_STRING BASE_NONE NULL 0 "" "" "" - -MANUAL eventlog_dissect_element_ReadEventLogW_data_ -MANUAL eventlog_dissect_element_Record_sid_length -MANUAL eventlog_dissect_element_Record_sid_offset -MANUAL eventlog_dissect_element_Record_source_name -MANUAL eventlog_dissect_element_Record_computer_name -MANUAL eventlog_dissect_element_Record_num_of_strings -MANUAL eventlog_dissect_element_Record_stringoffset -MANUAL eventlog_dissect_element_Record_strings - -NOEMIT eventlog_dissect_element_Record_strings_ -NOEMIT eventlog_dissect_element_ReadEventLogW_data__ -# -# policyhandle tracking -# This block is to specify where a policyhandle is opened and where it is -# closed so that policyhandles when dissected contain nice info such as -# [opened in xxx] [closed in yyy] -# -# Policyhandles are opened in these functions -PARAM_VALUE eventlog_dissect_element_OpenEventLogW_handle_ PIDL_POLHND_OPEN -PARAM_VALUE eventlog_dissect_element_OpenBackupEventLogW_handle_ PIDL_POLHND_OPEN -# Policyhandles are closed in these functions -PARAM_VALUE eventlog_dissect_element_CloseEventLog_handle_ PIDL_POLHND_CLOSE - -TYPE lsa_String "offset=dissect_ndr_counted_string(tvb, offset, pinfo, tree, di, drep, @HF@, @PARAM@);" FT_STRING BASE_NONE 0 NULL 4 - - -CODE START - -static int -eventlog_dissect_element_ReadEventLogW_data_(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info *di, guint8 *drep) -{ - guint32 len; - tvbuff_t *record_tvb; - - if(di->conformant_run){ - /*just a run to handle conformant arrays, nothing to dissect */ - return offset; - } - - offset = dissect_ndr_uint32 (tvb, offset, pinfo, tree, di, drep, - hf_eventlog_Record_length, &len); - - /* Create a new tvb so that we know that offset==0 is the beginning - * of the record. We need to know this since the data is not really - * NDR encoded at all and there are byte offsets into this buffer - * encoded therein. - */ - record_tvb=tvb_new_subset(tvb, offset, MIN((gint)len, tvb_captured_length_remaining(tvb, offset)), len); - eventlog_dissect_struct_Record(record_tvb, 0, pinfo, tree, di, drep, hf_eventlog_Record, 0); - offset+=len; - - return offset; -} - - -/* sid_length and sid_offset handled by manual code since this is not NDR - and we want to dissect the sid from the data blob */ -static guint32 sid_length; -static int -eventlog_dissect_element_Record_sid_length(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info *di, guint8 *drep) -{ - sid_length=0; - offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, di, drep, hf_eventlog_eventlog_Record_sid_length,&sid_length); - - return offset; -} -static int -eventlog_dissect_element_Record_sid_offset(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info *di, guint8 *drep) -{ - guint32 sid_offset=0; - offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, di, drep, hf_eventlog_eventlog_Record_sid_offset,&sid_offset); - - if(sid_offset && sid_length){ - tvbuff_t *sid_tvb; - - /* this blob contains an NT SID. - * tvb starts at the beginning of the record. - */ - sid_tvb=tvb_new_subset(tvb, sid_offset, MIN((gint)sid_length, tvb_captured_length_remaining(tvb, offset)), sid_length); - dissect_nt_sid(sid_tvb, 0, tree, "SID", NULL, -1); - } - - return offset; -} - -static int -eventlog_dissect_element_Record_source_name(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, dcerpc_info *di _U_, guint8 *drep _U_) -{ - guint len; - - len=tvb_unicode_strsize(tvb, offset); - proto_tree_add_item(tree, hf_eventlog_Record_source_name, tvb, offset, len, ENC_UTF_16|ENC_LITTLE_ENDIAN); - - offset+=len; - return offset; -} - -static int -eventlog_dissect_element_Record_computer_name(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, dcerpc_info *di _U_, guint8 *drep _U_) -{ - guint len; - - len=tvb_unicode_strsize(tvb, offset); - proto_tree_add_item(tree, hf_eventlog_Record_computer_name, tvb, offset, len, ENC_UTF_16|ENC_LITTLE_ENDIAN); - - offset+=len; - return offset; -} - -static guint16 num_of_strings; - -static int -eventlog_dissect_element_Record_num_of_strings(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info *di, guint8 *drep) -{ - num_of_strings=0; - offset = dissect_ndr_uint16(tvb, offset, pinfo, tree, di, drep, hf_eventlog_eventlog_Record_num_of_strings,&num_of_strings); - - return offset; -} - -static guint32 string_offset; - -static int -eventlog_dissect_element_Record_stringoffset(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info *di, guint8 *drep) -{ - string_offset=0; - offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, di, drep, hf_eventlog_eventlog_Record_stringoffset,&string_offset); - - return offset; -} - -static int -eventlog_dissect_element_Record_strings(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, dcerpc_info *di _U_, guint8 *drep _U_) -{ - while(string_offset && num_of_strings){ - guint len; - - len=tvb_unicode_strsize(tvb, string_offset); - proto_tree_add_item(tree, hf_eventlog_Record_string, tvb, string_offset, len, ENC_UTF_16|ENC_LITTLE_ENDIAN); - string_offset+=len; - - num_of_strings--; - } - - - return offset; -} - -CODE END diff --git a/epan/dissectors/pidl/eventlog.idl b/epan/dissectors/pidl/eventlog.idl deleted file mode 100644 index cef3c3885e..0000000000 --- a/epan/dissectors/pidl/eventlog.idl +++ /dev/null @@ -1,224 +0,0 @@ -#include "idl_types.h" - -/* import "lsa.idl", "security.idl";*/ - -/* - eventlog interface definition -*/ -[ uuid("82273fdc-e32a-18c3-3f78-827929dc23ea"), - version(0.0), - pointer_default(unique), - helpstring("Event Logger") -] interface eventlog -{ - typedef bitmap { - EVENTLOG_SEQUENTIAL_READ = 0x0001, - EVENTLOG_SEEK_READ = 0x0002, - EVENTLOG_FORWARDS_READ = 0x0004, - EVENTLOG_BACKWARDS_READ = 0x0008 - } eventlogReadFlags; - - typedef bitmap { - EVENTLOG_SUCCESS = 0x0000, - EVENTLOG_ERROR_TYPE = 0x0001, - EVENTLOG_WARNING_TYPE = 0x0002, - EVENTLOG_INFORMATION_TYPE = 0x0004, - EVENTLOG_AUDIT_SUCCESS = 0x0008, - EVENTLOG_AUDIT_FAILURE = 0x0010 - } eventlogEventTypes; - - typedef struct { - uint16 unknown0; - uint16 unknown1; - } eventlog_OpenUnknown0; - - typedef [public] struct { - uint32 size; - uint32 reserved; - uint32 record_number; - uint32 time_generated; - uint32 time_written; - uint32 event_id; - uint16 event_type; - uint16 num_of_strings; - uint16 event_category; - uint16 reserved_flags; - uint32 closing_record_number; - uint32 stringoffset; - uint32 sid_length; - uint32 sid_offset; - uint32 data_length; - uint32 data_offset; - nstring source_name; - nstring computer_name; - nstring strings[num_of_strings]; - astring raw_data; - } eventlog_Record; - - /******************/ - /* Function: 0x00 */ - NTSTATUS eventlog_ClearEventLogW( - [in] policy_handle *handle, - [in,unique] lsa_String *backupfilename - ); - - /******************/ - /* Function: 0x01 */ - NTSTATUS eventlog_BackupEventLogW( - [in] policy_handle *handle, - [in,unique] lsa_String *backupfilename - ); - - /******************/ - /* Function: 0x02 */ - NTSTATUS eventlog_CloseEventLog( - [in,out] policy_handle *handle - ); - - /******************/ - /* Function: 0x03 */ - NTSTATUS eventlog_DeregisterEventSource( - [in,out] policy_handle *handle - ); - - /******************/ - /* Function: 0x04 */ - NTSTATUS eventlog_GetNumRecords( - [in] policy_handle *handle, - [out,ref] uint32 *number - ); - - /******************/ - /* Function: 0x05 */ - NTSTATUS eventlog_GetOldestRecord( - [in] policy_handle *handle, - [out,ref] uint32 *oldest - ); - - /******************/ - /* Function: 0x06 */ - typedef struct { - uint32 unknown0; - uint32 unknown1; - } eventlog_ChangeUnknown0; - - NTSTATUS eventlog_ChangeNotify( - [in] policy_handle *handle, - [in, ref] eventlog_ChangeUnknown0 *unknown2, - [in] uint32 unknown3 - ); - - /******************/ - /* Function: 0x07 */ - NTSTATUS eventlog_OpenEventLogW( - [in,unique] eventlog_OpenUnknown0 *unknown0, - [in] lsa_String Module, - [in] lsa_String RegModuleName, - [in] uint32 MajorVersion, - [in] uint32 MinorVersion, - [out] policy_handle *handle - ); - - /******************/ - /* Function: 0x08 */ - NTSTATUS eventlog_RegisterEventSourceW( - [in,unique] eventlog_OpenUnknown0 *unknown0, - [in] lsa_String logname, - [in] lsa_String servername, - [in] uint32 unknown2, - [in] uint32 unknown3, - [out] policy_handle *handle - ); - - /******************/ - /* Function: 0x09 */ - NTSTATUS eventlog_OpenBackupEventLogW( - [in,unique] eventlog_OpenUnknown0 *unknown0, - [in] lsa_String logname, - [in] uint32 unknown2, - [in] uint32 unknown3, - [out] policy_handle *handle - ); - - /******************/ - /* Function: 0x0a */ - NTSTATUS eventlog_ReadEventLogW( - [in] policy_handle *handle, - [in] eventlogReadFlags flags, - [in] uint32 offset, - [in] uint32 number_of_bytes, - [out,size_is(number_of_bytes)] uint8 *data, - [out,ref] uint32 *sent_size, - [out,ref] uint32 *real_size - ); - - /*****************/ - /* Function 0x0b */ - NTSTATUS eventlog_ReportEventW( - [in] policy_handle *handle, - [in] uint32 time, - [in] eventlogEventTypes Type, - [in] uint16 event_category, - [in] uint32 event_id, - [in] uint16 num_of_strings, - [in] uint32 data_length, - [in] lsa_String computer_name - /* sid */ - ); - - /*****************/ - /* Function 0x0c */ - NTSTATUS eventlog_ClearEventLogA(); - - /******************/ - /* Function: 0x0d */ - NTSTATUS eventlog_BackupEventLogA(); - - /*****************/ - /* Function 0x0e */ - NTSTATUS eventlog_OpenEventLogA(); - - /*****************/ - /* Function 0x0f */ - NTSTATUS eventlog_RegisterEventSourceA(); - - /*****************/ - /* Function 0x10 */ - NTSTATUS eventlog_OpenBackupEventLogA(); - - /*****************/ - /* Function 0x11 */ - NTSTATUS eventlog_ReadEventLogA(); - - /*****************/ - /* Function 0x12 */ - NTSTATUS eventlog_ReportEventA(); - - /*****************/ - /* Function 0x13 */ - NTSTATUS eventlog_RegisterClusterSvc(); - - /*****************/ - /* Function 0x14 */ - NTSTATUS eventlog_DeregisterClusterSvc(); - - /*****************/ - /* Function 0x15 */ - NTSTATUS eventlog_WriteClusterEvents(); - - /*****************/ - /* Function 0x16 */ - NTSTATUS eventlog_GetLogIntormation( - [in] policy_handle *handle, - [in] uint32 dwInfoLevel, - [out] [size_is(cbBufSize)] char lpBuffer[*], - [in] uint32 cbBufSize, - [out,ref] long *cbBytesNeeded - ); - - /*****************/ - /* Function 0x17 */ - NTSTATUS eventlog_FlushEventLog( - [in] policy_handle *handle - ); -} diff --git a/epan/dissectors/pidl/eventlog/eventlog.cnf b/epan/dissectors/pidl/eventlog/eventlog.cnf new file mode 100644 index 0000000000..1e6690b402 --- /dev/null +++ b/epan/dissectors/pidl/eventlog/eventlog.cnf @@ -0,0 +1,158 @@ +# Conformance file for EVENTLOG +# + +HF_FIELD hf_eventlog_Record "Record" "eventlog.Record" FT_NONE BASE_NONE NULL 0 "" "" "" +HF_FIELD hf_eventlog_Record_length "Record Length" "eventlog.Record.length" FT_UINT32 BASE_DEC NULL 0 "" "" "" +HF_FIELD hf_eventlog_Record_source_name "Source Name" "eventlog.Record.source_name" FT_STRING BASE_NONE NULL 0 "" "" "" +HF_FIELD hf_eventlog_Record_computer_name "Computer Name" "eventlog.Record.computer_name" FT_STRING BASE_NONE NULL 0 "" "" "" +HF_FIELD hf_eventlog_Record_string "string" "eventlog.Record.string" FT_STRING BASE_NONE NULL 0 "" "" "" + +MANUAL eventlog_dissect_element_ReadEventLogW_data_ +MANUAL eventlog_dissect_element_Record_sid_length +MANUAL eventlog_dissect_element_Record_sid_offset +MANUAL eventlog_dissect_element_Record_source_name +MANUAL eventlog_dissect_element_Record_computer_name +MANUAL eventlog_dissect_element_Record_num_of_strings +MANUAL eventlog_dissect_element_Record_stringoffset +MANUAL eventlog_dissect_element_Record_strings + +NOEMIT eventlog_dissect_element_Record_strings_ +NOEMIT eventlog_dissect_element_ReadEventLogW_data__ +# +# policyhandle tracking +# This block is to specify where a policyhandle is opened and where it is +# closed so that policyhandles when dissected contain nice info such as +# [opened in xxx] [closed in yyy] +# +# Policyhandles are opened in these functions +PARAM_VALUE eventlog_dissect_element_OpenEventLogW_handle_ PIDL_POLHND_OPEN +PARAM_VALUE eventlog_dissect_element_OpenBackupEventLogW_handle_ PIDL_POLHND_OPEN +# Policyhandles are closed in these functions +PARAM_VALUE eventlog_dissect_element_CloseEventLog_handle_ PIDL_POLHND_CLOSE + +TYPE lsa_String "offset=dissect_ndr_counted_string(tvb, offset, pinfo, tree, di, drep, @HF@, @PARAM@);" FT_STRING BASE_NONE 0 NULL 4 + + +CODE START + +static int +eventlog_dissect_element_ReadEventLogW_data_(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info *di, guint8 *drep) +{ + guint32 len; + tvbuff_t *record_tvb; + + if(di->conformant_run){ + /*just a run to handle conformant arrays, nothing to dissect */ + return offset; + } + + offset = dissect_ndr_uint32 (tvb, offset, pinfo, tree, di, drep, + hf_eventlog_Record_length, &len); + + /* Create a new tvb so that we know that offset==0 is the beginning + * of the record. We need to know this since the data is not really + * NDR encoded at all and there are byte offsets into this buffer + * encoded therein. + */ + record_tvb=tvb_new_subset(tvb, offset, MIN((gint)len, tvb_captured_length_remaining(tvb, offset)), len); + eventlog_dissect_struct_Record(record_tvb, 0, pinfo, tree, di, drep, hf_eventlog_Record, 0); + offset+=len; + + return offset; +} + + +/* sid_length and sid_offset handled by manual code since this is not NDR + and we want to dissect the sid from the data blob */ +static guint32 sid_length; +static int +eventlog_dissect_element_Record_sid_length(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info *di, guint8 *drep) +{ + sid_length=0; + offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, di, drep, hf_eventlog_eventlog_Record_sid_length,&sid_length); + + return offset; +} +static int +eventlog_dissect_element_Record_sid_offset(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info *di, guint8 *drep) +{ + guint32 sid_offset=0; + offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, di, drep, hf_eventlog_eventlog_Record_sid_offset,&sid_offset); + + if(sid_offset && sid_length){ + tvbuff_t *sid_tvb; + + /* this blob contains an NT SID. + * tvb starts at the beginning of the record. + */ + sid_tvb=tvb_new_subset(tvb, sid_offset, MIN((gint)sid_length, tvb_captured_length_remaining(tvb, offset)), sid_length); + dissect_nt_sid(sid_tvb, 0, tree, "SID", NULL, -1); + } + + return offset; +} + +static int +eventlog_dissect_element_Record_source_name(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, dcerpc_info *di _U_, guint8 *drep _U_) +{ + guint len; + + len=tvb_unicode_strsize(tvb, offset); + proto_tree_add_item(tree, hf_eventlog_Record_source_name, tvb, offset, len, ENC_UTF_16|ENC_LITTLE_ENDIAN); + + offset+=len; + return offset; +} + +static int +eventlog_dissect_element_Record_computer_name(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, dcerpc_info *di _U_, guint8 *drep _U_) +{ + guint len; + + len=tvb_unicode_strsize(tvb, offset); + proto_tree_add_item(tree, hf_eventlog_Record_computer_name, tvb, offset, len, ENC_UTF_16|ENC_LITTLE_ENDIAN); + + offset+=len; + return offset; +} + +static guint16 num_of_strings; + +static int +eventlog_dissect_element_Record_num_of_strings(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info *di, guint8 *drep) +{ + num_of_strings=0; + offset = dissect_ndr_uint16(tvb, offset, pinfo, tree, di, drep, hf_eventlog_eventlog_Record_num_of_strings,&num_of_strings); + + return offset; +} + +static guint32 string_offset; + +static int +eventlog_dissect_element_Record_stringoffset(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info *di, guint8 *drep) +{ + string_offset=0; + offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, di, drep, hf_eventlog_eventlog_Record_stringoffset,&string_offset); + + return offset; +} + +static int +eventlog_dissect_element_Record_strings(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, dcerpc_info *di _U_, guint8 *drep _U_) +{ + while(string_offset && num_of_strings){ + guint len; + + len=tvb_unicode_strsize(tvb, string_offset); + proto_tree_add_item(tree, hf_eventlog_Record_string, tvb, string_offset, len, ENC_UTF_16|ENC_LITTLE_ENDIAN); + string_offset+=len; + + num_of_strings--; + } + + + return offset; +} + +CODE END diff --git a/epan/dissectors/pidl/eventlog/eventlog.idl b/epan/dissectors/pidl/eventlog/eventlog.idl new file mode 100644 index 0000000000..cef3c3885e --- /dev/null +++ b/epan/dissectors/pidl/eventlog/eventlog.idl @@ -0,0 +1,224 @@ +#include "idl_types.h" + +/* import "lsa.idl", "security.idl";*/ + +/* + eventlog interface definition +*/ +[ uuid("82273fdc-e32a-18c3-3f78-827929dc23ea"), + version(0.0), + pointer_default(unique), + helpstring("Event Logger") +] interface eventlog +{ + typedef bitmap { + EVENTLOG_SEQUENTIAL_READ = 0x0001, + EVENTLOG_SEEK_READ = 0x0002, + EVENTLOG_FORWARDS_READ = 0x0004, + EVENTLOG_BACKWARDS_READ = 0x0008 + } eventlogReadFlags; + + typedef bitmap { + EVENTLOG_SUCCESS = 0x0000, + EVENTLOG_ERROR_TYPE = 0x0001, + EVENTLOG_WARNING_TYPE = 0x0002, + EVENTLOG_INFORMATION_TYPE = 0x0004, + EVENTLOG_AUDIT_SUCCESS = 0x0008, + EVENTLOG_AUDIT_FAILURE = 0x0010 + } eventlogEventTypes; + + typedef struct { + uint16 unknown0; + uint16 unknown1; + } eventlog_OpenUnknown0; + + typedef [public] struct { + uint32 size; + uint32 reserved; + uint32 record_number; + uint32 time_generated; + uint32 time_written; + uint32 event_id; + uint16 event_type; + uint16 num_of_strings; + uint16 event_category; + uint16 reserved_flags; + uint32 closing_record_number; + uint32 stringoffset; + uint32 sid_length; + uint32 sid_offset; + uint32 data_length; + uint32 data_offset; + nstring source_name; + nstring computer_name; + nstring strings[num_of_strings]; + astring raw_data; + } eventlog_Record; + + /******************/ + /* Function: 0x00 */ + NTSTATUS eventlog_ClearEventLogW( + [in] policy_handle *handle, + [in,unique] lsa_String *backupfilename + ); + + /******************/ + /* Function: 0x01 */ + NTSTATUS eventlog_BackupEventLogW( + [in] policy_handle *handle, + [in,unique] lsa_String *backupfilename + ); + + /******************/ + /* Function: 0x02 */ + NTSTATUS eventlog_CloseEventLog( + [in,out] policy_handle *handle + ); + + /******************/ + /* Function: 0x03 */ + NTSTATUS eventlog_DeregisterEventSource( + [in,out] policy_handle *handle + ); + + /******************/ + /* Function: 0x04 */ + NTSTATUS eventlog_GetNumRecords( + [in] policy_handle *handle, + [out,ref] uint32 *number + ); + + /******************/ + /* Function: 0x05 */ + NTSTATUS eventlog_GetOldestRecord( + [in] policy_handle *handle, + [out,ref] uint32 *oldest + ); + + /******************/ + /* Function: 0x06 */ + typedef struct { + uint32 unknown0; + uint32 unknown1; + } eventlog_ChangeUnknown0; + + NTSTATUS eventlog_ChangeNotify( + [in] policy_handle *handle, + [in, ref] eventlog_ChangeUnknown0 *unknown2, + [in] uint32 unknown3 + ); + + /******************/ + /* Function: 0x07 */ + NTSTATUS eventlog_OpenEventLogW( + [in,unique] eventlog_OpenUnknown0 *unknown0, + [in] lsa_String Module, + [in] lsa_String RegModuleName, + [in] uint32 MajorVersion, + [in] uint32 MinorVersion, + [out] policy_handle *handle + ); + + /******************/ + /* Function: 0x08 */ + NTSTATUS eventlog_RegisterEventSourceW( + [in,unique] eventlog_OpenUnknown0 *unknown0, + [in] lsa_String logname, + [in] lsa_String servername, + [in] uint32 unknown2, + [in] uint32 unknown3, + [out] policy_handle *handle + ); + + /******************/ + /* Function: 0x09 */ + NTSTATUS eventlog_OpenBackupEventLogW( + [in,unique] eventlog_OpenUnknown0 *unknown0, + [in] lsa_String logname, + [in] uint32 unknown2, + [in] uint32 unknown3, + [out] policy_handle *handle + ); + + /******************/ + /* Function: 0x0a */ + NTSTATUS eventlog_ReadEventLogW( + [in] policy_handle *handle, + [in] eventlogReadFlags flags, + [in] uint32 offset, + [in] uint32 number_of_bytes, + [out,size_is(number_of_bytes)] uint8 *data, + [out,ref] uint32 *sent_size, + [out,ref] uint32 *real_size + ); + + /*****************/ + /* Function 0x0b */ + NTSTATUS eventlog_ReportEventW( + [in] policy_handle *handle, + [in] uint32 time, + [in] eventlogEventTypes Type, + [in] uint16 event_category, + [in] uint32 event_id, + [in] uint16 num_of_strings, + [in] uint32 data_length, + [in] lsa_String computer_name + /* sid */ + ); + + /*****************/ + /* Function 0x0c */ + NTSTATUS eventlog_ClearEventLogA(); + + /******************/ + /* Function: 0x0d */ + NTSTATUS eventlog_BackupEventLogA(); + + /*****************/ + /* Function 0x0e */ + NTSTATUS eventlog_OpenEventLogA(); + + /*****************/ + /* Function 0x0f */ + NTSTATUS eventlog_RegisterEventSourceA(); + + /*****************/ + /* Function 0x10 */ + NTSTATUS eventlog_OpenBackupEventLogA(); + + /*****************/ + /* Function 0x11 */ + NTSTATUS eventlog_ReadEventLogA(); + + /*****************/ + /* Function 0x12 */ + NTSTATUS eventlog_ReportEventA(); + + /*****************/ + /* Function 0x13 */ + NTSTATUS eventlog_RegisterClusterSvc(); + + /*****************/ + /* Function 0x14 */ + NTSTATUS eventlog_DeregisterClusterSvc(); + + /*****************/ + /* Function 0x15 */ + NTSTATUS eventlog_WriteClusterEvents(); + + /*****************/ + /* Function 0x16 */ + NTSTATUS eventlog_GetLogIntormation( + [in] policy_handle *handle, + [in] uint32 dwInfoLevel, + [out] [size_is(cbBufSize)] char lpBuffer[*], + [in] uint32 cbBufSize, + [out,ref] long *cbBytesNeeded + ); + + /*****************/ + /* Function 0x17 */ + NTSTATUS eventlog_FlushEventLog( + [in] policy_handle *handle + ); +} diff --git a/epan/dissectors/pidl/frsrpc.cnf b/epan/dissectors/pidl/frsrpc.cnf deleted file mode 100644 index 135f5b9c08..0000000000 --- a/epan/dissectors/pidl/frsrpc.cnf +++ /dev/null @@ -1,116 +0,0 @@ -NOEMIT CommPktChunkCtr -NOEMIT CommPktChangeOrderCommand.file_name - -ETT_FIELD ett_ChunkCtr -HF_FIELD hf_frsrpc_CommPktChangeOrderCommand_file_name "File Name" "frsrpc.CommPktChangeOrderCommand.file_name" FT_STRING BASE_NONE NULL 0 "" "" "" -HF_FIELD hf_CommPktChunk "Chunk" "frsrpc.chunk.ctr.chunk" FT_NONE BASE_NONE NULL 0 "" "" "" - -MANUAL frsrpc_dissect_struct_frsrpc_CommPktChunkCtr -MANUAL frsrpc_dissect_element_CommPktChangeOrderCommand_file_name -MANUAL frsrpc_dissect_enum_CommPktCommand -MANUAL frsrpc_dissect_struct_CommPktChunk - -CODE START -static int -frsrpc_dissect_element_CommPktChangeOrderCommand_file_name(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di, guint8 *drep _U_) -{ - int conformant = di->conformant_run; - - if (!conformant) { - guint32 soffset = dissect_null_term_wstring(tvb, offset, pinfo, tree, drep, hf_frsrpc_CommPktChangeOrderCommand_file_name, 0); - /* The difference has to be 4 due to the uint16 of the length + null terminator utf16*/ - DISSECTOR_ASSERT(soffset - offset < 261); - offset += 261; - } - - return offset; -} - -int -frsrpc_dissect_struct_CommPktChunk(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di, guint8 *drep _U_, int hf_index _U_, guint32 param _U_) -{ - guint1632 type = 0; - int i = 0; - const char *s = NULL; - proto_item *item = NULL; - proto_tree *tree = NULL; - int old_offset; - - - old_offset = offset; - - if (parent_tree) { - item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE); - tree = proto_item_add_subtree(item, ett_frsrpc_frsrpc_CommPktChunk); - } - - offset = frsrpc_dissect_element_CommPktChunk_type(tvb, offset, pinfo, tree, di, drep, &type); - - offset = frsrpc_dissect_element_CommPktChunk_data(tvb, offset, pinfo, tree, di, drep, &type); - - for (i=0; frsrpc_frsrpc_CommPktChunkType_vals[i].strptr; i++) { - if (frsrpc_frsrpc_CommPktChunkType_vals[i].value == type) { - s = frsrpc_frsrpc_CommPktChunkType_vals[i].strptr; - } - } - if (s != NULL) { - proto_item_append_text(item, ", type = %s", s); - } - proto_item_set_len(item, offset-old_offset); - - - if (di->call_data->flags & DCERPC_IS_NDR64) { - ALIGN_TO_3_BYTES; - } - - return offset; -} - -int -frsrpc_dissect_enum_CommPktCommand(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di, guint8 *drep _U_, int hf_index _U_, guint32 *param _U_) -{ - guint32 parameter=0; - int i = 0; - const char *s = NULL; - if(param){ - parameter=(guint32)*param; - } - offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, di, drep, hf_index, ¶meter); - - for (i=0; frsrpc_frsrpc_CommPktCommand_vals[i].strptr != NULL; i++) { - if (frsrpc_frsrpc_CommPktCommand_vals[i].value == parameter) { - s = frsrpc_frsrpc_CommPktCommand_vals[i].strptr; - } - } - if (s!= NULL) - col_append_fstr(pinfo->cinfo, COL_INFO, ",command = %s", - s); - - if(param){ - *param=(guint32)parameter; - } - return offset; -} - - -static int -frsrpc_dissect_struct_frsrpc_CommPktChunkCtr(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep _U_, int hf_index, guint32 param _U_) -{ - guint32 nb_chunk = 0; - guint32 remaining = tvb_reported_length_remaining(tvb, offset); - int align_status = di->no_align; - - if (remaining > 0) { - proto_item *item = proto_tree_add_item(tree, hf_index, tvb, offset, -1, TRUE); - proto_tree *subtree = proto_item_add_subtree(item, ett_ChunkCtr); - di->no_align = 1; - for(nb_chunk = 0; remaining > 0; nb_chunk++) { - offset = frsrpc_dissect_struct_CommPktChunk(tvb, offset, pinfo, subtree, di, drep, hf_CommPktChunk, param); - remaining = tvb_reported_length_remaining(tvb, offset); - } - di->no_align = align_status; - } - return offset; -} - -CODE END diff --git a/epan/dissectors/pidl/frsrpc.idl b/epan/dissectors/pidl/frsrpc.idl deleted file mode 100644 index a235702563..0000000000 --- a/epan/dissectors/pidl/frsrpc.idl +++ /dev/null @@ -1,422 +0,0 @@ -#include "idl_types.h" - -import "misc.idl"; - -[ - uuid("f5cc59b4-4264-101a-8c59-08002b2f8426"), - version(1.1), - endpoint("ncacn_ip_tcp:", "ncalrpc:"), - helpstring("File Replication Service"), - helper("../librpc/ndr/ndr_frsrpc.h"), - pointer_default(unique) -] -interface frsrpc -{ - /*****************/ - /* Function 0x00 */ - - typedef struct { - [subcontext(4)] GUID guid; - [subcontext(4)] nstring name; - } frsrpc_CommPktChunkGuidName; - - typedef struct { - hyper vsn; - GUID guid; - } frsrpc_CommPktGSVN; - - typedef [bitmap32bit,flag(NDR_PAHEX)] bitmap { - FRSRPC_CO_FLAG_ABORT_CO = 0x00000001, - FRSRPC_CO_FLAG_VV_ACTIVATED = 0x00000002, - FRSRPC_CO_FLAG_CONTENT_CMD = 0x00000004, - FRSRPC_CO_FLAG_LOCATION_CMD = 0x00000008, - FRSRPC_CO_FLAG_ONLIST = 0x00000010, - FRSRPC_CO_FLAG_LOCALCO = 0x00000020, - FRSRPC_CO_FLAG_RETRY = 0x00000040, - FRSRPC_CO_FLAG_OUT_OF_ORDER = 0x00000200, - FRSRPC_CO_FLAG_NEW_FILE = 0x00000400, - FRSRPC_CO_FLAG_CONTROL = 0x00001000, - FRSRPC_CO_FLAG_DIRECTED_CO = 0x00002000, - FRSRPC_CO_FLAG_VVJOIN_TO_ORIG = 0x00040000, - FRSRPC_CO_FLAG_SKIP_ORIG_REC_C = 0x00100000, - FRSRPC_CO_FLAG_MOVEIN_GEN = 0x00200000, - FRSRPC_CO_FLAG_MORPH_GEN_HEAD = 0x00400000, - FRSRPC_CO_FLAG_JUST_OID_RESET = 0x00800000, - FRSRPC_CO_FLAG_COMPRESSED_STAGE = 0x01000000, - FRSRPC_CO_FLAG_SKIP_VV_UPDATE = 0x02000000 - } frsrpc_CommPktCoCmdFlags; - - const uint32 FRSRPC_CO_IFLAG_NONE = 0x0000000; - - typedef [bitmap32bit,flag(NDR_PAHEX)] bitmap { - FRSRPC_CO_IFLAG_VVRETIRE_EXEC = 0x00000001, - FRSRPC_CO_IFLAG_CO_ABORT = 0x00000002, - FRSRPC_CO_IFLAG_DIR_ENUM_PENDING= 0x00000004 - } frsrpc_CommPktCoCmdIFlags; - - typedef [v1_enum,flag(NDR_PAHEX)] enum { - FRSRPC_CO_STATUS_CO_ENTERED_LOG = 0x00000000, - FRSRPC_CO_STATUS_ALLOC_STAGING_LOCAL_CO = 0x00000001, - FRSRPC_CO_STATUS_LOCAL_CO_STAGING_STARTED = 0x00000002, - FRSRPC_CO_STATUS_LOCAL_CO_STAGING_COMPLETED = 0x00000003, - FRSRPC_CO_STATUS_WAIT_RETRY_LOCAL_CO_STAGING = 0x00000004, - FRSRPC_CO_STATUS_ALLOC_STAGING_REMOTE_CO = 0x00000005, - FRSRPC_CO_STATUS_REMOTE_CO_STAGING_STARTED = 0x00000006, - FRSRPC_CO_STATUS_REMOTE_CO_STAGING_COMPLETED = 0x00000007, - FRSRPC_CO_STATUS_WAIT_RETRY_REMOTE_CO_STAGING = 0x00000008, - FRSRPC_CO_STATUS_FILE_INSTALL_REQUESTED = 0x00000009, - FRSRPC_CO_STATUS_FILE_INSTALL_STARTED = 0x0000000A, - FRSRPC_CO_STATUS_FILE_INSTALL_COMPLETED = 0x0000000B, - FRSRPC_CO_STATUS_FILE_INSTALL_WAIT_RETRY = 0x0000000C, - FRSRPC_CO_STATUS_FILE_INSTALL_RETRYING = 0x0000000D, - FRSRPC_CO_STATUS_FILE_INSTALL_RENAME_RETRYING = 0x0000000E, - FRSRPC_CO_STATUS_FILE_INSTALL_DELETE_RETRYING = 0x0000000F, - FRSRPC_CO_STATUS_CO_RECYCLED_FOR_ENUM = 0x00000013, - FRSRPC_CO_STATUS_REQUEST_OUTBOUND_PROPAGATION = 0x00000014, - FRSRPC_CO_STATUS_REQUEST_ACCEPTED_OUTBOUND_LOG = 0x00000015, - FRSRPC_CO_STATUS_DB_STATE_UPDATE_STARTED = 0x00000016, - FRSRPC_CO_STATUS_DB_STATE_UPDATE_COMPLETED = 0x00000017, - FRSRPC_CO_STATUS_CO_ABORTED = 0x00000018 - } frsrpc_CommPktCoCmdStatus; - - typedef [bitmap32bit,flag(NDR_PAHEX)] bitmap { - FRSRPC_CONTENT_REASON_DATA_OVERWRITE = 0x00000001, - FRSRPC_CONTENT_REASON_DATA_EXTEND = 0x00000002, - FRSRPC_CONTENT_REASON_DATA_TRUNCATION = 0x00000004, - FRSRPC_CONTENT_REASON_NAMED_DATA_OVERWRITE = 0x00000010, - FRSRPC_CONTENT_REASON_NAMED_DATA_EXTEND = 0x00000020, - FRSRPC_CONTENT_REASON_NAMED_DATA_TRUNCATION = 0x00000040, - FRSRPC_CONTENT_REASON_FILE_CREATE = 0x00000100, - FRSRPC_CONTENT_REASON_FILE_DELETE = 0x00000200, - FRSRPC_CONTENT_REASON_EA_CHANGE = 0x00000400, - FRSRPC_CONTENT_REASON_SECURITY_CHANGE = 0x00000800, - FRSRPC_CONTENT_REASON_OLD_NAME = 0x00001000, - FRSRPC_CONTENT_REASON_NEW_NAME = 0x00002000, - FRSRPC_CONTENT_REASON_BASIC_INFO_CHANGE = 0x00004000, - FRSRPC_CONTENT_REASON_COMPRESSION_CHANGE = 0x00020000 - } frsrpc_CommPktCoCmdContentCmd; - - typedef [v1_enum,flag(NDR_PAHEX)] enum { - FRSRPC_CO_LOCATION_FILE_CREATE = 0x00000000, - FRSRPC_CO_LOCATION_DIR_CREATE = 0x00000000 | 0x00000001, - FRSRPC_CO_LOCATION_FILE_DELETE = 0x00000002, - FRSRPC_CO_LOCATION_DIR_DELETE = 0x00000002 | 0x00000001, - FRSRPC_CO_LOCATION_FILE_MOVEIN = 0x00000004, - FRSRPC_CO_LOCATION_DIR_MOVEIN = 0x00000004 | 0x00000001, - FRSRPC_CO_LOCATION_FILE_MOVEIN2 = 0x00000006, - FRSRPC_CO_LOCATION_DIR_MOVEIN2 = 0x00000006 | 0x00000001, - FRSRPC_CO_LOCATION_FILE_MOVEOUT = 0x00000008, - FRSRPC_CO_LOCATION_DIR_MOVEOUT = 0x00000008 | 0x00000001, - FRSRPC_CO_LOCATION_FILE_MOVERS = 0x0000000a, - FRSRPC_CO_LOCATION_DIR_MOVERS = 0x0000000a | 0x00000001, - FRSRPC_CO_LOCATION_FILE_MOVEDIR = 0x0000000c, - FRSRPC_CO_LOCATION_DIR_MOVEDIR = 0x0000000c | 0x00000001, - FRSRPC_CO_LOCATION_FILE_NO_CMD = 0x0000000e, - FRSRPC_CO_LOCATION_DIR_NO_CMD = 0x0000000e | 0x00000001 - } frsrpc_CommPktCoCmdLocationCmd; - - typedef struct { - uint32 sequence_number; - frsrpc_CommPktCoCmdFlags flags; - frsrpc_CommPktCoCmdIFlags iflags; - frsrpc_CommPktCoCmdStatus status; - frsrpc_CommPktCoCmdContentCmd content_cmd; - frsrpc_CommPktCoCmdLocationCmd location_cmd; - uint32 file_attributes; - uint32 file_version_number; - uint32 partern_ack_sequence_number; - [value(0)] uint32 not_used; - hyper file_size; - hyper file_offset; - hyper frs_vsn; - hyper file_usn; - hyper jrnl_usn; - hyper jrnl_first_usn; - uint32 original_replica_num; - uint32 new_replica_num; - GUID change_order_guid; - GUID originator_guid; - GUID file_guid; - GUID old_parent_guid; - GUID new_parent_guid; - GUID connection_guid; - hyper ack_version; - [value(0)] hyper spare2ul1; - [value(0)] hyper spare1guid_p1; - [value(0)] hyper spare1guid_p2; - [value(0)] hyper spare2guid_p1; - [value(0)] hyper spare3guid_p2; - [value(0)] uint32 spare1wcs; - [value(0)] uint32 spare2wcs; - [value(0)] uint32 extension; - [value(0)] uint32 spare2bin; - NTTIME event_time; - [value(2*strlen_m(file_name))] uint16 file_name_length; -#define FRSRPC_MAX_PATH 260 - [charset(UTF16)] uint16 file_name[FRSRPC_MAX_PATH+1]; - [value(0)] uint8 padding1; - [value(0)] uint8 padding2; - [value(0)] uint8 padding3; - [value(0)] uint8 padding4; - } frsrpc_CommPktChangeOrderCommand; - - typedef [v1_enum,flag(NDR_PAHEX)] enum { - FRSRPC_DATA_EXTENSION_TERMINATOR = 0x00000000, - FRSRPC_DATA_EXTENSION_MD5_CHECKSUM = 0x00000001, - FRSRPC_DATA_EXTENSION_RETRY_TIMEOUT = 0x00000002 - } frsrpc_CommPktDataExtensionType; - - typedef [flag(NDR_PAHEX)] struct { - [value(0x00000018)] uint32 prefix_size; - [value(FRSRPC_DATA_EXTENSION_MD5_CHECKSUM)] - frsrpc_CommPktDataExtensionType prefix_type; - uint8 data[16]; - } frsrpc_CommPktDataExtensionChecksum; - - typedef struct { - [value(0x00000018)] uint32 prefix_size; - [value(FRSRPC_DATA_EXTENSION_RETRY_TIMEOUT)] - frsrpc_CommPktDataExtensionType prefix_type; - uint32 count; - [value(0)] uint32 not_used; - NTTIME first_try_time; - } frsrpc_CommPktDataExtensionRetryTimeout; - - typedef [flag(NDR_PAHEX)] enum { - FRSRPC_CO_RECORD_EXTENSION_VERSION_WIN2K = 0x0000, - FRSRPC_CO_RECORD_EXTENSION_VERSION_1 = 0x0001 - } frsrpc_CommPktCoRecordExtensionMajor; - - typedef struct { - [value(0x00000028)] uint32 field_size; - [value(FRSRPC_CO_RECORD_EXTENSION_VERSION_WIN2K)] - frsrpc_CommPktCoRecordExtensionMajor major; - [value(0x0001)] uint16 offset_count; - [value(0x00000010)] uint32 offset; - [value(0)] uint32 offset_last; - frsrpc_CommPktDataExtensionChecksum data_checksum; - } frsrpc_CommPktCoRecordExtensionWin2k; - - typedef struct { - [value(0x00000048)] uint32 field_size; - frsrpc_CommPktCoRecordExtensionMajor major; - [value(0x0002)] uint16 offset_count; - [value(0x00000018)] uint32 offset0; - [value(0x00000030)] uint32 offset1;/*TODO: is this correct??? */ - [value(0)] uint32 offset_last; - [value(0)] uint32 not_used; - frsrpc_CommPktDataExtensionChecksum data_checksum; - frsrpc_CommPktDataExtensionRetryTimeout data_retry_timeout; - } frsrpc_CommPktChangeOrderRecordExtension; - - typedef [v1_enum,flag(NDR_PAHEX)] enum { - FRSRPC_COMMAND_REMOTE_CO = 0x00000218, - FRSRPC_COMMAND_RECEIVING_STATE = 0x00000238, - FRSRPC_COMMAND_REMOTE_CO_DONE = 0x00000250, - FRSRPC_COMMAND_ABORT_FETCH = 0x00000246, - FRSRPC_COMMAND_RETRY_FETCH = 0x00000244, - FRSRPC_COMMAND_NEED_JOIN = 0x00000121, - FRSRPC_COMMAND_START_JOIN = 0x00000122, - FRSRPC_COMMAND_JOINING = 0x00000130, - FRSRPC_COMMAND_JOINED = 0x00000128, - FRSRPC_COMMAND_UNJOIN_REMOTE = 0x00000148, - FRSRPC_COMMAND_WJOIN_DONE = 0x00000136, - FRSRPC_COMMAND_SEND_STAGE = 0x00000228 - } frsrpc_CommPktCommand; - - typedef [flag(NDR_PAHEX)] enum { - FRSRPC_COMM_PKT_CHUNK_BOP = 0x0001, - FRSRPC_COMM_PKT_CHUNK_COMMAND = 0x0002, - FRSRPC_COMM_PKT_CHUNK_TO = 0x0003, - FRSRPC_COMM_PKT_CHUNK_FROM = 0x0004, - FRSRPC_COMM_PKT_CHUNK_REPLICA = 0x0005, - FRSRPC_COMM_PKT_CHUNK_CONNECTION = 0x0008, - FRSRPC_COMM_PKT_CHUNK_JOIN_GUID = 0x0006, - FRSRPC_COMM_PKT_CHUNK_LAST_JOIN_TIME = 0x0012, - - FRSRPC_COMM_PKT_CHUNK_VVECTOR = 0x0007, - FRSRPC_COMM_PKT_CHUNK_JOIN_TIME = 0x0011, - FRSRPC_COMM_PKT_CHUNK_REPLICA_VERSION_GUID = 0x0014, - FRSRPC_COMM_PKT_CHUNK_COMPRESSION_GUID = 0x0018, - - FRSRPC_COMM_PKT_CHUNK_BLOCK = 0x0009, - FRSRPC_COMM_PKT_CHUNK_BLOCK_SIZE = 0x000A, - FRSRPC_COMM_PKT_CHUNK_FILE_SIZE = 0x000B, - FRSRPC_COMM_PKT_CHUNK_FILE_OFFSET = 0x000C, - FRSRPC_COMM_PKT_CHUNK_GVSN = 0x000E, - FRSRPC_COMM_PKT_CHUNK_CO_GUID = 0x000F, - FRSRPC_COMM_PKT_CHUNK_CO_SEQUENCE_NUMBER = 0x0010, - - FRSRPC_COMM_PKT_CHUNK_REMOTE_CO = 0x000D, - FRSRPC_COMM_PKT_CHUNK_CO_EXT_WIN2K = 0x0016, - FRSRPC_COMM_PKT_CHUNK_CO_EXTENTION_2 = 0x0017, - - FRSRPC_COMM_PKT_CHUNK_EOP = 0x0013 - } frsrpc_CommPktChunkType; - - typedef [nodiscriminant] union { - [default,flag(NDR_REMAINING)] DATA_BLOB blob; - [case(FRSRPC_COMM_PKT_CHUNK_BOP)] - [value(0)] uint32 bop; - [case(FRSRPC_COMM_PKT_CHUNK_COMMAND)] - frsrpc_CommPktCommand command; - [case(FRSRPC_COMM_PKT_CHUNK_TO)] - frsrpc_CommPktChunkGuidName to; - [case(FRSRPC_COMM_PKT_CHUNK_FROM)] - frsrpc_CommPktChunkGuidName from; - [case(FRSRPC_COMM_PKT_CHUNK_REPLICA)] - frsrpc_CommPktChunkGuidName replica; - [case(FRSRPC_COMM_PKT_CHUNK_CONNECTION)] - frsrpc_CommPktChunkGuidName connection; - [case(FRSRPC_COMM_PKT_CHUNK_JOIN_GUID)][subcontext(4)] - GUID join_guid; - [case(FRSRPC_COMM_PKT_CHUNK_LAST_JOIN_TIME)] - NTTIME last_join_time; - [case(FRSRPC_COMM_PKT_CHUNK_VVECTOR)][subcontext(4)] - frsrpc_CommPktGSVN vvector; - [case(FRSRPC_COMM_PKT_CHUNK_JOIN_TIME)][subcontext(4)] - NTTIME join_time; - [case(FRSRPC_COMM_PKT_CHUNK_REPLICA_VERSION_GUID)][subcontext(4)] - GUID replica_version_guid; - [case(FRSRPC_COMM_PKT_CHUNK_COMPRESSION_GUID)] - GUID compression_guid; - [case(FRSRPC_COMM_PKT_CHUNK_BLOCK)] - [flag(NDR_REMAINING)] DATA_BLOB block; - [case(FRSRPC_COMM_PKT_CHUNK_BLOCK_SIZE)] - hyper block_size; - [case(FRSRPC_COMM_PKT_CHUNK_FILE_SIZE)] - hyper file_size; - [case(FRSRPC_COMM_PKT_CHUNK_FILE_OFFSET)] - hyper file_offset; - [case(FRSRPC_COMM_PKT_CHUNK_GVSN)][subcontext(4)] - frsrpc_CommPktGSVN gvsn; - [case(FRSRPC_COMM_PKT_CHUNK_CO_GUID)][subcontext(4)] - GUID co_guid; - [case(FRSRPC_COMM_PKT_CHUNK_CO_SEQUENCE_NUMBER)] - uint32 co_sequnence_number; - [case(FRSRPC_COMM_PKT_CHUNK_REMOTE_CO)][subcontext(4)] - frsrpc_CommPktChangeOrderCommand remote_co; - [case(FRSRPC_COMM_PKT_CHUNK_CO_EXT_WIN2K)][subcontext(4)] - frsrpc_CommPktCoRecordExtensionWin2k co_ext_win2k; - [case(FRSRPC_COMM_PKT_CHUNK_CO_EXTENTION_2)] - frsrpc_CommPktChangeOrderRecordExtension co_extension2; - [case(FRSRPC_COMM_PKT_CHUNK_EOP)] - [value(0xFFFFFFFF)] uint32 bopend; - } frsrpc_CommPktChunkData; - - typedef [public,flag(NDR_NOALIGN)] struct { - frsrpc_CommPktChunkType type; - [subcontext(4),switch_is(type)] frsrpc_CommPktChunkData data; - } frsrpc_CommPktChunk; - - typedef [nopull,nopush,flag(NDR_NOALIGN)] struct { - uint32 num_chunks; /* this doesn't appear on the wire */ - frsrpc_CommPktChunk chunks[num_chunks]; - } frsrpc_CommPktChunkCtr; - - typedef [v1_enum] enum { - FRSRPC_COMM_PKT_MAJOR_0 = 0x00000000 - } frsrpc_CommPktMajor; - - typedef [v1_enum] enum { - FRSRPC_COMM_PKT_MINOR_0 = 0x00000000, - FRSRPC_COMM_PKT_MINOR_1 = 0x00000001, - FRSRPC_COMM_PKT_MINOR_2 = 0x00000002, - FRSRPC_COMM_PKT_MINOR_3 = 0x00000003, - FRSRPC_COMM_PKT_MINOR_4 = 0x00000004, - FRSRPC_COMM_PKT_MINOR_5 = 0x00000005, - FRSRPC_COMM_PKT_MINOR_6 = 0x00000006, - FRSRPC_COMM_PKT_MINOR_7 = 0x00000007, - FRSRPC_COMM_PKT_MINOR_8 = 0x00000008, - FRSRPC_COMM_PKT_MINOR_9 = 0x00000009 - } frsrpc_CommPktMinor; - - typedef struct { - frsrpc_CommPktMajor major; - frsrpc_CommPktMinor minor; - [value(1)] uint32 cs_id; - [value(pkt_len+12)] uint32 memory_len; - [value(ndr_size_frsrpc_CommPktChunkCtr(r->ctr, - ndr->flags))] - [range(0, 262144)] - uint32 pkt_len; - [value(0)] uint32 upk_len; - [subcontext(4),subcontext_size(pkt_len)] - frsrpc_CommPktChunkCtr *ctr; - [value(0)] uint3264 data_name; - [value(0)] uint3264 data_handle; - } frsrpc_FrsSendCommPktReq; - - WERROR frsrpc_FrsSendCommPkt( - [in] frsrpc_FrsSendCommPktReq req - ); - - /*****************/ - /* Function 0x01 */ - /* this function always return WERR_CALL_NOT_IMPLEMENTED */ - WERROR frsrpc_FrsVerifyPromotionParent( - [in,unique,string,charset(UTF16)] uint16 *parent_account, - [in,unique,string,charset(UTF16)] uint16 *parent_password, - [in,unique,string,charset(UTF16)] uint16 *replica_set_name, - [in,unique,string,charset(UTF16)] uint16 *replica_set_type, - [in] frsrpc_PartnerAuthLevel partner_auth_level, - [in] uint32 __ndr_guid_size - ); - - /*****************/ - /* Function 0x02 */ - typedef [v1_enum,flag(NDR_PAHEX)] enum { - FRSRPC_PARENT_AUTH_LEVEL_ENCRYPTED_KERBEROS = 0x00000000, - FRSRPC_PARENT_AUTH_LEVEL_NO_AUTHENTICATION = 0x00000001 - } frsrpc_PartnerAuthLevel; - - WERROR frsrpc_FrsStartPromotionParent( - [in,unique,string,charset(UTF16)] uint16 *parent_account, - [in,unique,string,charset(UTF16)] uint16 *parent_password, - [in,unique,string,charset(UTF16)] uint16 *replica_set_name, - [in,unique,string,charset(UTF16)] uint16 *replica_set_type, - [in,unique,string,charset(UTF16)] uint16 *connection_name, - [in,unique,string,charset(UTF16)] uint16 *partner_name, - [in,unique,string,charset(UTF16)] uint16 *partner_princ_name, - [in] frsrpc_PartnerAuthLevel partner_auth_level, - [in,value(16),range(16,16)] uint32 __ndr_guid_size, - [in,unique,subcontext(4),subcontext_size(16)] - GUID *connection_guid, - [in,unique,subcontext(4),subcontext_size(16)] - GUID *partner_guid, - [in,out,unique,subcontext(4),subcontext_size(16)] - GUID *parent_guid - ); - - /*****************/ - /* Function 0x03 */ - WERROR frsrpc_FrsNOP(); - - /*****************/ - /* Function 0x04 */ - [todo] void FRSRPC_BACKUP_COMPLETE(); - - /*****************/ - /* Function 0x05 */ - [todo] void FRSRPC_BACKUP_COMPLETE_5(); - - /*****************/ - /* Function 0x06 */ - [todo] void FRSRPC_BACKUP_COMPLETE_6(); - - /*****************/ - /* Function 0x07 */ - [todo] void FRSRPC_BACKUP_COMPLETE_7(); - - /*****************/ - /* Function 0x08 */ - [todo] void FRSRPC_BACKUP_COMPLETE_8(); - - /*****************/ - /* Function 0x09 */ - [todo] void FRSRPC_BACKUP_COMPLETE_9(); - - /*****************/ - /* Function 0x0a */ - [todo] void FRSRPC_VERIFY_PROMOTION_PARENT_EX(); -} diff --git a/epan/dissectors/pidl/frsrpc/frsrpc.cnf b/epan/dissectors/pidl/frsrpc/frsrpc.cnf new file mode 100644 index 0000000000..135f5b9c08 --- /dev/null +++ b/epan/dissectors/pidl/frsrpc/frsrpc.cnf @@ -0,0 +1,116 @@ +NOEMIT CommPktChunkCtr +NOEMIT CommPktChangeOrderCommand.file_name + +ETT_FIELD ett_ChunkCtr +HF_FIELD hf_frsrpc_CommPktChangeOrderCommand_file_name "File Name" "frsrpc.CommPktChangeOrderCommand.file_name" FT_STRING BASE_NONE NULL 0 "" "" "" +HF_FIELD hf_CommPktChunk "Chunk" "frsrpc.chunk.ctr.chunk" FT_NONE BASE_NONE NULL 0 "" "" "" + +MANUAL frsrpc_dissect_struct_frsrpc_CommPktChunkCtr +MANUAL frsrpc_dissect_element_CommPktChangeOrderCommand_file_name +MANUAL frsrpc_dissect_enum_CommPktCommand +MANUAL frsrpc_dissect_struct_CommPktChunk + +CODE START +static int +frsrpc_dissect_element_CommPktChangeOrderCommand_file_name(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di, guint8 *drep _U_) +{ + int conformant = di->conformant_run; + + if (!conformant) { + guint32 soffset = dissect_null_term_wstring(tvb, offset, pinfo, tree, drep, hf_frsrpc_CommPktChangeOrderCommand_file_name, 0); + /* The difference has to be 4 due to the uint16 of the length + null terminator utf16*/ + DISSECTOR_ASSERT(soffset - offset < 261); + offset += 261; + } + + return offset; +} + +int +frsrpc_dissect_struct_CommPktChunk(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di, guint8 *drep _U_, int hf_index _U_, guint32 param _U_) +{ + guint1632 type = 0; + int i = 0; + const char *s = NULL; + proto_item *item = NULL; + proto_tree *tree = NULL; + int old_offset; + + + old_offset = offset; + + if (parent_tree) { + item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, TRUE); + tree = proto_item_add_subtree(item, ett_frsrpc_frsrpc_CommPktChunk); + } + + offset = frsrpc_dissect_element_CommPktChunk_type(tvb, offset, pinfo, tree, di, drep, &type); + + offset = frsrpc_dissect_element_CommPktChunk_data(tvb, offset, pinfo, tree, di, drep, &type); + + for (i=0; frsrpc_frsrpc_CommPktChunkType_vals[i].strptr; i++) { + if (frsrpc_frsrpc_CommPktChunkType_vals[i].value == type) { + s = frsrpc_frsrpc_CommPktChunkType_vals[i].strptr; + } + } + if (s != NULL) { + proto_item_append_text(item, ", type = %s", s); + } + proto_item_set_len(item, offset-old_offset); + + + if (di->call_data->flags & DCERPC_IS_NDR64) { + ALIGN_TO_3_BYTES; + } + + return offset; +} + +int +frsrpc_dissect_enum_CommPktCommand(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di, guint8 *drep _U_, int hf_index _U_, guint32 *param _U_) +{ + guint32 parameter=0; + int i = 0; + const char *s = NULL; + if(param){ + parameter=(guint32)*param; + } + offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, di, drep, hf_index, ¶meter); + + for (i=0; frsrpc_frsrpc_CommPktCommand_vals[i].strptr != NULL; i++) { + if (frsrpc_frsrpc_CommPktCommand_vals[i].value == parameter) { + s = frsrpc_frsrpc_CommPktCommand_vals[i].strptr; + } + } + if (s!= NULL) + col_append_fstr(pinfo->cinfo, COL_INFO, ",command = %s", + s); + + if(param){ + *param=(guint32)parameter; + } + return offset; +} + + +static int +frsrpc_dissect_struct_frsrpc_CommPktChunkCtr(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep _U_, int hf_index, guint32 param _U_) +{ + guint32 nb_chunk = 0; + guint32 remaining = tvb_reported_length_remaining(tvb, offset); + int align_status = di->no_align; + + if (remaining > 0) { + proto_item *item = proto_tree_add_item(tree, hf_index, tvb, offset, -1, TRUE); + proto_tree *subtree = proto_item_add_subtree(item, ett_ChunkCtr); + di->no_align = 1; + for(nb_chunk = 0; remaining > 0; nb_chunk++) { + offset = frsrpc_dissect_struct_CommPktChunk(tvb, offset, pinfo, subtree, di, drep, hf_CommPktChunk, param); + remaining = tvb_reported_length_remaining(tvb, offset); + } + di->no_align = align_status; + } + return offset; +} + +CODE END diff --git a/epan/dissectors/pidl/frsrpc/frsrpc.idl b/epan/dissectors/pidl/frsrpc/frsrpc.idl new file mode 100644 index 0000000000..3d2feddfed --- /dev/null +++ b/epan/dissectors/pidl/frsrpc/frsrpc.idl @@ -0,0 +1,422 @@ +#include "idl_types.h" + +import "misc/misc.idl"; + +[ + uuid("f5cc59b4-4264-101a-8c59-08002b2f8426"), + version(1.1), + endpoint("ncacn_ip_tcp:", "ncalrpc:"), + helpstring("File Replication Service"), + helper("../librpc/ndr/ndr_frsrpc.h"), + pointer_default(unique) +] +interface frsrpc +{ + /*****************/ + /* Function 0x00 */ + + typedef struct { + [subcontext(4)] GUID guid; + [subcontext(4)] nstring name; + } frsrpc_CommPktChunkGuidName; + + typedef struct { + hyper vsn; + GUID guid; + } frsrpc_CommPktGSVN; + + typedef [bitmap32bit,flag(NDR_PAHEX)] bitmap { + FRSRPC_CO_FLAG_ABORT_CO = 0x00000001, + FRSRPC_CO_FLAG_VV_ACTIVATED = 0x00000002, + FRSRPC_CO_FLAG_CONTENT_CMD = 0x00000004, + FRSRPC_CO_FLAG_LOCATION_CMD = 0x00000008, + FRSRPC_CO_FLAG_ONLIST = 0x00000010, + FRSRPC_CO_FLAG_LOCALCO = 0x00000020, + FRSRPC_CO_FLAG_RETRY = 0x00000040, + FRSRPC_CO_FLAG_OUT_OF_ORDER = 0x00000200, + FRSRPC_CO_FLAG_NEW_FILE = 0x00000400, + FRSRPC_CO_FLAG_CONTROL = 0x00001000, + FRSRPC_CO_FLAG_DIRECTED_CO = 0x00002000, + FRSRPC_CO_FLAG_VVJOIN_TO_ORIG = 0x00040000, + FRSRPC_CO_FLAG_SKIP_ORIG_REC_C = 0x00100000, + FRSRPC_CO_FLAG_MOVEIN_GEN = 0x00200000, + FRSRPC_CO_FLAG_MORPH_GEN_HEAD = 0x00400000, + FRSRPC_CO_FLAG_JUST_OID_RESET = 0x00800000, + FRSRPC_CO_FLAG_COMPRESSED_STAGE = 0x01000000, + FRSRPC_CO_FLAG_SKIP_VV_UPDATE = 0x02000000 + } frsrpc_CommPktCoCmdFlags; + + const uint32 FRSRPC_CO_IFLAG_NONE = 0x0000000; + + typedef [bitmap32bit,flag(NDR_PAHEX)] bitmap { + FRSRPC_CO_IFLAG_VVRETIRE_EXEC = 0x00000001, + FRSRPC_CO_IFLAG_CO_ABORT = 0x00000002, + FRSRPC_CO_IFLAG_DIR_ENUM_PENDING= 0x00000004 + } frsrpc_CommPktCoCmdIFlags; + + typedef [v1_enum,flag(NDR_PAHEX)] enum { + FRSRPC_CO_STATUS_CO_ENTERED_LOG = 0x00000000, + FRSRPC_CO_STATUS_ALLOC_STAGING_LOCAL_CO = 0x00000001, + FRSRPC_CO_STATUS_LOCAL_CO_STAGING_STARTED = 0x00000002, + FRSRPC_CO_STATUS_LOCAL_CO_STAGING_COMPLETED = 0x00000003, + FRSRPC_CO_STATUS_WAIT_RETRY_LOCAL_CO_STAGING = 0x00000004, + FRSRPC_CO_STATUS_ALLOC_STAGING_REMOTE_CO = 0x00000005, + FRSRPC_CO_STATUS_REMOTE_CO_STAGING_STARTED = 0x00000006, + FRSRPC_CO_STATUS_REMOTE_CO_STAGING_COMPLETED = 0x00000007, + FRSRPC_CO_STATUS_WAIT_RETRY_REMOTE_CO_STAGING = 0x00000008, + FRSRPC_CO_STATUS_FILE_INSTALL_REQUESTED = 0x00000009, + FRSRPC_CO_STATUS_FILE_INSTALL_STARTED = 0x0000000A, + FRSRPC_CO_STATUS_FILE_INSTALL_COMPLETED = 0x0000000B, + FRSRPC_CO_STATUS_FILE_INSTALL_WAIT_RETRY = 0x0000000C, + FRSRPC_CO_STATUS_FILE_INSTALL_RETRYING = 0x0000000D, + FRSRPC_CO_STATUS_FILE_INSTALL_RENAME_RETRYING = 0x0000000E, + FRSRPC_CO_STATUS_FILE_INSTALL_DELETE_RETRYING = 0x0000000F, + FRSRPC_CO_STATUS_CO_RECYCLED_FOR_ENUM = 0x00000013, + FRSRPC_CO_STATUS_REQUEST_OUTBOUND_PROPAGATION = 0x00000014, + FRSRPC_CO_STATUS_REQUEST_ACCEPTED_OUTBOUND_LOG = 0x00000015, + FRSRPC_CO_STATUS_DB_STATE_UPDATE_STARTED = 0x00000016, + FRSRPC_CO_STATUS_DB_STATE_UPDATE_COMPLETED = 0x00000017, + FRSRPC_CO_STATUS_CO_ABORTED = 0x00000018 + } frsrpc_CommPktCoCmdStatus; + + typedef [bitmap32bit,flag(NDR_PAHEX)] bitmap { + FRSRPC_CONTENT_REASON_DATA_OVERWRITE = 0x00000001, + FRSRPC_CONTENT_REASON_DATA_EXTEND = 0x00000002, + FRSRPC_CONTENT_REASON_DATA_TRUNCATION = 0x00000004, + FRSRPC_CONTENT_REASON_NAMED_DATA_OVERWRITE = 0x00000010, + FRSRPC_CONTENT_REASON_NAMED_DATA_EXTEND = 0x00000020, + FRSRPC_CONTENT_REASON_NAMED_DATA_TRUNCATION = 0x00000040, + FRSRPC_CONTENT_REASON_FILE_CREATE = 0x00000100, + FRSRPC_CONTENT_REASON_FILE_DELETE = 0x00000200, + FRSRPC_CONTENT_REASON_EA_CHANGE = 0x00000400, + FRSRPC_CONTENT_REASON_SECURITY_CHANGE = 0x00000800, + FRSRPC_CONTENT_REASON_OLD_NAME = 0x00001000, + FRSRPC_CONTENT_REASON_NEW_NAME = 0x00002000, + FRSRPC_CONTENT_REASON_BASIC_INFO_CHANGE = 0x00004000, + FRSRPC_CONTENT_REASON_COMPRESSION_CHANGE = 0x00020000 + } frsrpc_CommPktCoCmdContentCmd; + + typedef [v1_enum,flag(NDR_PAHEX)] enum { + FRSRPC_CO_LOCATION_FILE_CREATE = 0x00000000, + FRSRPC_CO_LOCATION_DIR_CREATE = 0x00000000 | 0x00000001, + FRSRPC_CO_LOCATION_FILE_DELETE = 0x00000002, + FRSRPC_CO_LOCATION_DIR_DELETE = 0x00000002 | 0x00000001, + FRSRPC_CO_LOCATION_FILE_MOVEIN = 0x00000004, + FRSRPC_CO_LOCATION_DIR_MOVEIN = 0x00000004 | 0x00000001, + FRSRPC_CO_LOCATION_FILE_MOVEIN2 = 0x00000006, + FRSRPC_CO_LOCATION_DIR_MOVEIN2 = 0x00000006 | 0x00000001, + FRSRPC_CO_LOCATION_FILE_MOVEOUT = 0x00000008, + FRSRPC_CO_LOCATION_DIR_MOVEOUT = 0x00000008 | 0x00000001, + FRSRPC_CO_LOCATION_FILE_MOVERS = 0x0000000a, + FRSRPC_CO_LOCATION_DIR_MOVERS = 0x0000000a | 0x00000001, + FRSRPC_CO_LOCATION_FILE_MOVEDIR = 0x0000000c, + FRSRPC_CO_LOCATION_DIR_MOVEDIR = 0x0000000c | 0x00000001, + FRSRPC_CO_LOCATION_FILE_NO_CMD = 0x0000000e, + FRSRPC_CO_LOCATION_DIR_NO_CMD = 0x0000000e | 0x00000001 + } frsrpc_CommPktCoCmdLocationCmd; + + typedef struct { + uint32 sequence_number; + frsrpc_CommPktCoCmdFlags flags; + frsrpc_CommPktCoCmdIFlags iflags; + frsrpc_CommPktCoCmdStatus status; + frsrpc_CommPktCoCmdContentCmd content_cmd; + frsrpc_CommPktCoCmdLocationCmd location_cmd; + uint32 file_attributes; + uint32 file_version_number; + uint32 partern_ack_sequence_number; + [value(0)] uint32 not_used; + hyper file_size; + hyper file_offset; + hyper frs_vsn; + hyper file_usn; + hyper jrnl_usn; + hyper jrnl_first_usn; + uint32 original_replica_num; + uint32 new_replica_num; + GUID change_order_guid; + GUID originator_guid; + GUID file_guid; + GUID old_parent_guid; + GUID new_parent_guid; + GUID connection_guid; + hyper ack_version; + [value(0)] hyper spare2ul1; + [value(0)] hyper spare1guid_p1; + [value(0)] hyper spare1guid_p2; + [value(0)] hyper spare2guid_p1; + [value(0)] hyper spare3guid_p2; + [value(0)] uint32 spare1wcs; + [value(0)] uint32 spare2wcs; + [value(0)] uint32 extension; + [value(0)] uint32 spare2bin; + NTTIME event_time; + [value(2*strlen_m(file_name))] uint16 file_name_length; +#define FRSRPC_MAX_PATH 260 + [charset(UTF16)] uint16 file_name[FRSRPC_MAX_PATH+1]; + [value(0)] uint8 padding1; + [value(0)] uint8 padding2; + [value(0)] uint8 padding3; + [value(0)] uint8 padding4; + } frsrpc_CommPktChangeOrderCommand; + + typedef [v1_enum,flag(NDR_PAHEX)] enum { + FRSRPC_DATA_EXTENSION_TERMINATOR = 0x00000000, + FRSRPC_DATA_EXTENSION_MD5_CHECKSUM = 0x00000001, + FRSRPC_DATA_EXTENSION_RETRY_TIMEOUT = 0x00000002 + } frsrpc_CommPktDataExtensionType; + + typedef [flag(NDR_PAHEX)] struct { + [value(0x00000018)] uint32 prefix_size; + [value(FRSRPC_DATA_EXTENSION_MD5_CHECKSUM)] + frsrpc_CommPktDataExtensionType prefix_type; + uint8 data[16]; + } frsrpc_CommPktDataExtensionChecksum; + + typedef struct { + [value(0x00000018)] uint32 prefix_size; + [value(FRSRPC_DATA_EXTENSION_RETRY_TIMEOUT)] + frsrpc_CommPktDataExtensionType prefix_type; + uint32 count; + [value(0)] uint32 not_used; + NTTIME first_try_time; + } frsrpc_CommPktDataExtensionRetryTimeout; + + typedef [flag(NDR_PAHEX)] enum { + FRSRPC_CO_RECORD_EXTENSION_VERSION_WIN2K = 0x0000, + FRSRPC_CO_RECORD_EXTENSION_VERSION_1 = 0x0001 + } frsrpc_CommPktCoRecordExtensionMajor; + + typedef struct { + [value(0x00000028)] uint32 field_size; + [value(FRSRPC_CO_RECORD_EXTENSION_VERSION_WIN2K)] + frsrpc_CommPktCoRecordExtensionMajor major; + [value(0x0001)] uint16 offset_count; + [value(0x00000010)] uint32 offset; + [value(0)] uint32 offset_last; + frsrpc_CommPktDataExtensionChecksum data_checksum; + } frsrpc_CommPktCoRecordExtensionWin2k; + + typedef struct { + [value(0x00000048)] uint32 field_size; + frsrpc_CommPktCoRecordExtensionMajor major; + [value(0x0002)] uint16 offset_count; + [value(0x00000018)] uint32 offset0; + [value(0x00000030)] uint32 offset1;/*TODO: is this correct??? */ + [value(0)] uint32 offset_last; + [value(0)] uint32 not_used; + frsrpc_CommPktDataExtensionChecksum data_checksum; + frsrpc_CommPktDataExtensionRetryTimeout data_retry_timeout; + } frsrpc_CommPktChangeOrderRecordExtension; + + typedef [v1_enum,flag(NDR_PAHEX)] enum { + FRSRPC_COMMAND_REMOTE_CO = 0x00000218, + FRSRPC_COMMAND_RECEIVING_STATE = 0x00000238, + FRSRPC_COMMAND_REMOTE_CO_DONE = 0x00000250, + FRSRPC_COMMAND_ABORT_FETCH = 0x00000246, + FRSRPC_COMMAND_RETRY_FETCH = 0x00000244, + FRSRPC_COMMAND_NEED_JOIN = 0x00000121, + FRSRPC_COMMAND_START_JOIN = 0x00000122, + FRSRPC_COMMAND_JOINING = 0x00000130, + FRSRPC_COMMAND_JOINED = 0x00000128, + FRSRPC_COMMAND_UNJOIN_REMOTE = 0x00000148, + FRSRPC_COMMAND_WJOIN_DONE = 0x00000136, + FRSRPC_COMMAND_SEND_STAGE = 0x00000228 + } frsrpc_CommPktCommand; + + typedef [flag(NDR_PAHEX)] enum { + FRSRPC_COMM_PKT_CHUNK_BOP = 0x0001, + FRSRPC_COMM_PKT_CHUNK_COMMAND = 0x0002, + FRSRPC_COMM_PKT_CHUNK_TO = 0x0003, + FRSRPC_COMM_PKT_CHUNK_FROM = 0x0004, + FRSRPC_COMM_PKT_CHUNK_REPLICA = 0x0005, + FRSRPC_COMM_PKT_CHUNK_CONNECTION = 0x0008, + FRSRPC_COMM_PKT_CHUNK_JOIN_GUID = 0x0006, + FRSRPC_COMM_PKT_CHUNK_LAST_JOIN_TIME = 0x0012, + + FRSRPC_COMM_PKT_CHUNK_VVECTOR = 0x0007, + FRSRPC_COMM_PKT_CHUNK_JOIN_TIME = 0x0011, + FRSRPC_COMM_PKT_CHUNK_REPLICA_VERSION_GUID = 0x0014, + FRSRPC_COMM_PKT_CHUNK_COMPRESSION_GUID = 0x0018, + + FRSRPC_COMM_PKT_CHUNK_BLOCK = 0x0009, + FRSRPC_COMM_PKT_CHUNK_BLOCK_SIZE = 0x000A, + FRSRPC_COMM_PKT_CHUNK_FILE_SIZE = 0x000B, + FRSRPC_COMM_PKT_CHUNK_FILE_OFFSET = 0x000C, + FRSRPC_COMM_PKT_CHUNK_GVSN = 0x000E, + FRSRPC_COMM_PKT_CHUNK_CO_GUID = 0x000F, + FRSRPC_COMM_PKT_CHUNK_CO_SEQUENCE_NUMBER = 0x0010, + + FRSRPC_COMM_PKT_CHUNK_REMOTE_CO = 0x000D, + FRSRPC_COMM_PKT_CHUNK_CO_EXT_WIN2K = 0x0016, + FRSRPC_COMM_PKT_CHUNK_CO_EXTENTION_2 = 0x0017, + + FRSRPC_COMM_PKT_CHUNK_EOP = 0x0013 + } frsrpc_CommPktChunkType; + + typedef [nodiscriminant] union { + [default,flag(NDR_REMAINING)] DATA_BLOB blob; + [case(FRSRPC_COMM_PKT_CHUNK_BOP)] + [value(0)] uint32 bop; + [case(FRSRPC_COMM_PKT_CHUNK_COMMAND)] + frsrpc_CommPktCommand command; + [case(FRSRPC_COMM_PKT_CHUNK_TO)] + frsrpc_CommPktChunkGuidName to; + [case(FRSRPC_COMM_PKT_CHUNK_FROM)] + frsrpc_CommPktChunkGuidName from; + [case(FRSRPC_COMM_PKT_CHUNK_REPLICA)] + frsrpc_CommPktChunkGuidName replica; + [case(FRSRPC_COMM_PKT_CHUNK_CONNECTION)] + frsrpc_CommPktChunkGuidName connection; + [case(FRSRPC_COMM_PKT_CHUNK_JOIN_GUID)][subcontext(4)] + GUID join_guid; + [case(FRSRPC_COMM_PKT_CHUNK_LAST_JOIN_TIME)] + NTTIME last_join_time; + [case(FRSRPC_COMM_PKT_CHUNK_VVECTOR)][subcontext(4)] + frsrpc_CommPktGSVN vvector; + [case(FRSRPC_COMM_PKT_CHUNK_JOIN_TIME)][subcontext(4)] + NTTIME join_time; + [case(FRSRPC_COMM_PKT_CHUNK_REPLICA_VERSION_GUID)][subcontext(4)] + GUID replica_version_guid; + [case(FRSRPC_COMM_PKT_CHUNK_COMPRESSION_GUID)] + GUID compression_guid; + [case(FRSRPC_COMM_PKT_CHUNK_BLOCK)] + [flag(NDR_REMAINING)] DATA_BLOB block; + [case(FRSRPC_COMM_PKT_CHUNK_BLOCK_SIZE)] + hyper block_size; + [case(FRSRPC_COMM_PKT_CHUNK_FILE_SIZE)] + hyper file_size; + [case(FRSRPC_COMM_PKT_CHUNK_FILE_OFFSET)] + hyper file_offset; + [case(FRSRPC_COMM_PKT_CHUNK_GVSN)][subcontext(4)] + frsrpc_CommPktGSVN gvsn; + [case(FRSRPC_COMM_PKT_CHUNK_CO_GUID)][subcontext(4)] + GUID co_guid; + [case(FRSRPC_COMM_PKT_CHUNK_CO_SEQUENCE_NUMBER)] + uint32 co_sequnence_number; + [case(FRSRPC_COMM_PKT_CHUNK_REMOTE_CO)][subcontext(4)] + frsrpc_CommPktChangeOrderCommand remote_co; + [case(FRSRPC_COMM_PKT_CHUNK_CO_EXT_WIN2K)][subcontext(4)] + frsrpc_CommPktCoRecordExtensionWin2k co_ext_win2k; + [case(FRSRPC_COMM_PKT_CHUNK_CO_EXTENTION_2)] + frsrpc_CommPktChangeOrderRecordExtension co_extension2; + [case(FRSRPC_COMM_PKT_CHUNK_EOP)] + [value(0xFFFFFFFF)] uint32 bopend; + } frsrpc_CommPktChunkData; + + typedef [public,flag(NDR_NOALIGN)] struct { + frsrpc_CommPktChunkType type; + [subcontext(4),switch_is(type)] frsrpc_CommPktChunkData data; + } frsrpc_CommPktChunk; + + typedef [nopull,nopush,flag(NDR_NOALIGN)] struct { + uint32 num_chunks; /* this doesn't appear on the wire */ + frsrpc_CommPktChunk chunks[num_chunks]; + } frsrpc_CommPktChunkCtr; + + typedef [v1_enum] enum { + FRSRPC_COMM_PKT_MAJOR_0 = 0x00000000 + } frsrpc_CommPktMajor; + + typedef [v1_enum] enum { + FRSRPC_COMM_PKT_MINOR_0 = 0x00000000, + FRSRPC_COMM_PKT_MINOR_1 = 0x00000001, + FRSRPC_COMM_PKT_MINOR_2 = 0x00000002, + FRSRPC_COMM_PKT_MINOR_3 = 0x00000003, + FRSRPC_COMM_PKT_MINOR_4 = 0x00000004, + FRSRPC_COMM_PKT_MINOR_5 = 0x00000005, + FRSRPC_COMM_PKT_MINOR_6 = 0x00000006, + FRSRPC_COMM_PKT_MINOR_7 = 0x00000007, + FRSRPC_COMM_PKT_MINOR_8 = 0x00000008, + FRSRPC_COMM_PKT_MINOR_9 = 0x00000009 + } frsrpc_CommPktMinor; + + typedef struct { + frsrpc_CommPktMajor major; + frsrpc_CommPktMinor minor; + [value(1)] uint32 cs_id; + [value(pkt_len+12)] uint32 memory_len; + [value(ndr_size_frsrpc_CommPktChunkCtr(r->ctr, + ndr->flags))] + [range(0, 262144)] + uint32 pkt_len; + [value(0)] uint32 upk_len; + [subcontext(4),subcontext_size(pkt_len)] + frsrpc_CommPktChunkCtr *ctr; + [value(0)] uint3264 data_name; + [value(0)] uint3264 data_handle; + } frsrpc_FrsSendCommPktReq; + + WERROR frsrpc_FrsSendCommPkt( + [in] frsrpc_FrsSendCommPktReq req + ); + + /*****************/ + /* Function 0x01 */ + /* this function always return WERR_CALL_NOT_IMPLEMENTED */ + WERROR frsrpc_FrsVerifyPromotionParent( + [in,unique,string,charset(UTF16)] uint16 *parent_account, + [in,unique,string,charset(UTF16)] uint16 *parent_password, + [in,unique,string,charset(UTF16)] uint16 *replica_set_name, + [in,unique,string,charset(UTF16)] uint16 *replica_set_type, + [in] frsrpc_PartnerAuthLevel partner_auth_level, + [in] uint32 __ndr_guid_size + ); + + /*****************/ + /* Function 0x02 */ + typedef [v1_enum,flag(NDR_PAHEX)] enum { + FRSRPC_PARENT_AUTH_LEVEL_ENCRYPTED_KERBEROS = 0x00000000, + FRSRPC_PARENT_AUTH_LEVEL_NO_AUTHENTICATION = 0x00000001 + } frsrpc_PartnerAuthLevel; + + WERROR frsrpc_FrsStartPromotionParent( + [in,unique,string,charset(UTF16)] uint16 *parent_account, + [in,unique,string,charset(UTF16)] uint16 *parent_password, + [in,unique,string,charset(UTF16)] uint16 *replica_set_name, + [in,unique,string,charset(UTF16)] uint16 *replica_set_type, + [in,unique,string,charset(UTF16)] uint16 *connection_name, + [in,unique,string,charset(UTF16)] uint16 *partner_name, + [in,unique,string,charset(UTF16)] uint16 *partner_princ_name, + [in] frsrpc_PartnerAuthLevel partner_auth_level, + [in,value(16),range(16,16)] uint32 __ndr_guid_size, + [in,unique,subcontext(4),subcontext_size(16)] + GUID *connection_guid, + [in,unique,subcontext(4),subcontext_size(16)] + GUID *partner_guid, + [in,out,unique,subcontext(4),subcontext_size(16)] + GUID *parent_guid + ); + + /*****************/ + /* Function 0x03 */ + WERROR frsrpc_FrsNOP(); + + /*****************/ + /* Function 0x04 */ + [todo] void FRSRPC_BACKUP_COMPLETE(); + + /*****************/ + /* Function 0x05 */ + [todo] void FRSRPC_BACKUP_COMPLETE_5(); + + /*****************/ + /* Function 0x06 */ + [todo] void FRSRPC_BACKUP_COMPLETE_6(); + + /*****************/ + /* Function 0x07 */ + [todo] void FRSRPC_BACKUP_COMPLETE_7(); + + /*****************/ + /* Function 0x08 */ + [todo] void FRSRPC_BACKUP_COMPLETE_8(); + + /*****************/ + /* Function 0x09 */ + [todo] void FRSRPC_BACKUP_COMPLETE_9(); + + /*****************/ + /* Function 0x0a */ + [todo] void FRSRPC_VERIFY_PROMOTION_PARENT_EX(); +} diff --git a/epan/dissectors/pidl/frstrans.cnf b/epan/dissectors/pidl/frstrans.cnf deleted file mode 100644 index a161377623..0000000000 --- a/epan/dissectors/pidl/frstrans.cnf +++ /dev/null @@ -1,15 +0,0 @@ -# Conformance file for DFS-R / FRSTRANS - -TYPE hyper "offset=cnf_dissect_hyper(tvb, offset, pinfo, tree, di, drep, @PARAM@, @HF@);" FT_UINT64 BASE_DEC 0 NULL 8 - -CODE START - -static int -cnf_dissect_hyper(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep, guint32 param _U_, int hfindex) -{ - offset = dissect_ndr_uint64(tvb, offset, pinfo, tree, di, drep, hfindex, NULL); - - return offset; -} - -CODE END diff --git a/epan/dissectors/pidl/frstrans.idl b/epan/dissectors/pidl/frstrans.idl deleted file mode 100644 index 761c3eec4c..0000000000 --- a/epan/dissectors/pidl/frstrans.idl +++ /dev/null @@ -1,285 +0,0 @@ -#include "idl_types.h" - -/*import "misc.idl";*/ - -[ - uuid("897e2e5f-93f3-4376-9c9c-fd2277495c27"), - version(1.0), - endpoint("ncacn_ip_tcp:", "ncalrpc:"), - helpstring("File Replication Service DFS-R"), - pointer_default(unique) -] -interface frstrans -{ - /*****************/ - /* Function 0x00 */ - WERROR frstrans_CheckConnectivity( - [in] GUID replica_set_guid, - [in] GUID connection_guid - ); - - /*****************/ - /* Function 0x01 */ - typedef [v1_enum,flag(NDR_PAHEX)] enum { - FRSTRANS_PROTOCOL_VERSION_W2K3R2 = 0x00050000, - FRSTRANS_PROTOCOL_VERSION_LONGHORN_SERVER = 0x00050002 - } frstrans_ProtocolVersion; - - typedef [bitmap32bit] bitmap { - FRSTRANS_TRANSPORT_SUPPORTS_RDC_SIMILARITY = 0x00000001 - } frstrans_TransportFlags; - - WERROR frstrans_EstablishConnection( - [in] GUID replica_set_guid, - [in] GUID connection_guid, - [in] frstrans_ProtocolVersion downstream_protocol_version, - [in] frstrans_TransportFlags downstream_flags, - [out,ref] frstrans_ProtocolVersion *upstream_protocol_version, - [out,ref] frstrans_TransportFlags *upstream_flags - ); - - /*****************/ - /* Function 0x02 */ - WERROR frstrans_EstablishSession( - [in] GUID connection_guid, - [in] GUID content_set_guid - ); - - /*****************/ - /* Function 0x03 */ - typedef enum { - FRSTRANS_UPDATE_REQUEST_ALL = 0x0000, - FRSTRANS_UPDATE_REQUEST_TOMBSTONES = 0x0001, - FRSTRANS_UPDATE_REQUEST_LIVE = 0x0002 - } frstrans_UpdateRequestType; - - typedef enum { - FRSTRANS_UPDATE_STATUS_DONE = 0x0002, - FRSTRANS_UPDATE_STATUS_MORE = 0x0003 - } frstrans_UpdateStatus; - - typedef struct { - GUID db_guid; - hyper low; - hyper high; - } frstrans_VersionVector; - - typedef [flag(NDR_PAHEX)] struct { - boolean32 present; - boolean32 name_conflict; - uint32 attributes; - NTTIME fence; - NTTIME clock; - NTTIME create_time; - GUID content_set_guid; - uint8 sha1_hash[20]; - uint8 rdc_similarity[16]; - GUID uid_db_guid; - hyper uid_version; - GUID gsvn_db_guid; - hyper gsvn_version; - GUID parent_db_guid; - hyper parent_version; - [string,charset(UTF16)] uint16 name[261]; - uint32 flags; - } frstrans_Update; - - WERROR frstrans_RequestUpdates( - [in] GUID connection_guid, - [in] GUID content_set_guid, - [in,range(0,256)] uint32 credits_available, - [in,range(0,1)] boolean32 hash_requested, - [in,range(0,2)] - frstrans_UpdateRequestType update_request_type, - [in] uint32 version_vector_diff_count, - [in,size_is(version_vector_diff_count)] - frstrans_VersionVector *version_vector_diff, - [out,ref,size_is(credits_available),length_is(*update_count)] - frstrans_Update *frs_update, - [out,ref] uint32 *update_count, - [out,ref] frstrans_UpdateStatus *update_status, - [out,ref] GUID *gvsn_db_guid, - [out,ref] hyper *gvsn_version - ); - - /*****************/ - /* Function 0x04 */ - typedef enum { - FRSTRANS_VERSION_REQUEST_NORNAL_SYNC = 0x0000, - FRSTRANS_VERSION_REQUEST_SLOW_SYNC = 0x0001, - FRSTRANS_VERSION_REQUEST_SLAVE_SYNC = 0x0002 - } frstrans_VersionRequestType; - - typedef enum { - FRSTRANS_VERSION_CHANGE_NOTIFY = 0x0000, - FRSTRANS_VERSION_CHANGE_ALL = 0x0002 - } frstrans_VersionChangeType; - - WERROR frstrans_RequestVersionVector( - [in] uint32 sequence_number, - [in] GUID connection_guid, - [in] GUID content_set_guid, - [in,range(0,2)] frstrans_VersionRequestType request_type, - [in,range(0,2)] frstrans_VersionChangeType change_type, - [in] hyper vv_generation - ); - - /*****************/ - /* Function 0x05 */ - typedef struct { - GUID machine_guid; - uint32 year; - uint32 month; - uint32 day_of_week; - uint32 day; - uint32 hour; - uint32 minute; - uint32 second; - uint32 milli_seconds; - } frstrans_EpoqueVector; - - typedef struct { - hyper vv_generation; - uint32 version_vector_count; - [size_is(version_vector_count)] - frstrans_VersionVector *version_vector; - uint32 epoque_vector_count; - [size_is(epoque_vector_count)] - frstrans_EpoqueVector *epoque_vector; - } frstrans_AsyncVersionVectorResponse; - - typedef struct { - uint32 sequence_number; - WERROR status; - frstrans_AsyncVersionVectorResponse response; - } frstrans_AsyncResponseContext; - - WERROR frstrans_AsyncPoll( - [in] GUID connection_guid, - [out,ref] frstrans_AsyncResponseContext *response - ); - - /*****************/ - /* Function 0x06 */ - void FRSTRANS_REQUEST_RECORDS(); - - /*****************/ - /* Function 0x07 */ - void FRSTRANS_UPDATE_CANCEL(); - - /*****************/ - /* Function 0x08 */ - void FRSTRANS_RAW_GET_FILE_DATA(); - - /*****************/ - /* Function 0x09 */ - void FRSTRANS_RDC_GET_SIGNATURES(); - - /*****************/ - /* Function 0x0a */ - void FRSTRANS_RDC_PUSH_SOURCE_NEEDS(); - - /*****************/ - /* Function 0x0b */ - void FRSTRANS_RDC_GET_FILE_DATA(); - - /*****************/ - /* Function 0x0c */ - void FRSTRANS_RDC_CLOSE(); - - /*****************/ - /* Function 0x0d */ - typedef enum { - FRSTRANS_STAGING_POLICY_SERVER_DEFAULTY = 0x0000, - FRSTRANS_STAGING_POLICY_STATGING_REQUIRED = 0x0001, - FRSTRANS_STAGING_POLICY_RESTATGING_REQUIRED = 0x0002 - } frstrans_RequestedStagingPolicy; - - typedef enum { - FRSTRANS_RDC_FILTER_GENERIC = 0x0000, - FRSTRANS_RDC_FILTER_MAX = 0x0001, - FRSTRANS_RDC_FILTER_POINT = 0x0002, - FRSTRANS_RDC_MAX_ALGORITHM = 0x0003 - } frstrans_RdcChunckerAlgorithm; - - typedef struct { - frstrans_RdcChunckerAlgorithm chunker_type; - uint8 chunker_parameters[64]; - } frstrans_RdcParameterGeneric; - - typedef struct { - [range(128,1024*16)] uint16 min_horizon_size; - [range(2,96)] uint16 max_window_size; - } frstrans_RdcParameterFilterMax; - - typedef struct { - uint16 min_chunk_size; - uint16 max_chunk_size; - } frstrans_RdcParameterFilterPoint; - - typedef [switch_type(frstrans_RdcChunckerAlgorithm)] union { - [case(FRSTRANS_RDC_FILTER_GENERIC)] - frstrans_RdcParameterGeneric filter_generic; - [case(FRSTRANS_RDC_FILTER_MAX)] - frstrans_RdcParameterFilterMax filter_max; - [case(FRSTRANS_RDC_FILTER_POINT)] - frstrans_RdcParameterFilterPoint filter_point; - } frstrans_RdcParameterUnion; - - typedef struct { - frstrans_RdcChunckerAlgorithm rdc_chunker_algorithm; - [switch_is(rdc_chunker_algorithm)] frstrans_RdcParameterUnion u; - } frstrans_RdcParameters; - - typedef enum { - FRSTRANS_RDC_VERSION = 0x0001 - } frstrans_RdcVersion; - - typedef enum { - FRSTRANS_RDC_VERSION_COMPATIBLE = 0x0001 - } frstrans_RdcVersionCompatible; - - typedef enum { - FRSTRANS_RDC_UNCOMPRESSED = 0x0000, - FRSTRANS_RDC_XPRESS = 0x0001 - } frstrans_RdcCompressionAlgorithm; - - typedef struct { - hyper on_disk_file_size; - hyper file_size_estimate; - frstrans_RdcVersion rdc_version; - frstrans_RdcVersionCompatible rdc_minimum_compatible_version; - [range(0,8)] uint8 rdc_signature_levels; - frstrans_RdcCompressionAlgorithm compression_algorithm; - [size_is(rdc_signature_levels)] - frstrans_RdcParameters rdc_filter_parameters[*]; - } frstrans_RdcFileInfo; - - WERROR frstrans_InitializeFileTransferAsync( - [in] GUID connection_guid, - [in,out,ref] frstrans_Update *frs_update, - [in,range(0,1)] boolean32 rdc_desired, - [in,out,ref] frstrans_RequestedStagingPolicy *staging_policy, - [out,ref] policy_handle *server_context, - [out,ref] frstrans_RdcFileInfo **rdc_file_info, - [out,ref,size_is(buffer_size),length_is(*size_read)] - uint8 *data_buffer, - [in,range(0,262144)] uint32 buffer_size, - [out,ref] uint32 *size_read, - [out,ref] boolean32 *is_end_of_file - ); - - /*****************/ - /* Function 0x0e */ - void FRSTRANS_OPNUM_0E_NOT_USED_ON_THE_WIRE(); - - /* The following functions are new in Windows 2008 */ - - /*****************/ - /* Function 0x0f */ - void FRSTRANS_RAW_GET_FILE_DATA_ASYNC(); - - /*****************/ - /* Function 0x10 */ - void FRSTRANS_RDC_GET_FILE_DATA_ASYNC(); -} diff --git a/epan/dissectors/pidl/frstrans/frstrans.cnf b/epan/dissectors/pidl/frstrans/frstrans.cnf new file mode 100644 index 0000000000..a161377623 --- /dev/null +++ b/epan/dissectors/pidl/frstrans/frstrans.cnf @@ -0,0 +1,15 @@ +# Conformance file for DFS-R / FRSTRANS + +TYPE hyper "offset=cnf_dissect_hyper(tvb, offset, pinfo, tree, di, drep, @PARAM@, @HF@);" FT_UINT64 BASE_DEC 0 NULL 8 + +CODE START + +static int +cnf_dissect_hyper(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep, guint32 param _U_, int hfindex) +{ + offset = dissect_ndr_uint64(tvb, offset, pinfo, tree, di, drep, hfindex, NULL); + + return offset; +} + +CODE END diff --git a/epan/dissectors/pidl/frstrans/frstrans.idl b/epan/dissectors/pidl/frstrans/frstrans.idl new file mode 100644 index 0000000000..761c3eec4c --- /dev/null +++ b/epan/dissectors/pidl/frstrans/frstrans.idl @@ -0,0 +1,285 @@ +#include "idl_types.h" + +/*import "misc.idl";*/ + +[ + uuid("897e2e5f-93f3-4376-9c9c-fd2277495c27"), + version(1.0), + endpoint("ncacn_ip_tcp:", "ncalrpc:"), + helpstring("File Replication Service DFS-R"), + pointer_default(unique) +] +interface frstrans +{ + /*****************/ + /* Function 0x00 */ + WERROR frstrans_CheckConnectivity( + [in] GUID replica_set_guid, + [in] GUID connection_guid + ); + + /*****************/ + /* Function 0x01 */ + typedef [v1_enum,flag(NDR_PAHEX)] enum { + FRSTRANS_PROTOCOL_VERSION_W2K3R2 = 0x00050000, + FRSTRANS_PROTOCOL_VERSION_LONGHORN_SERVER = 0x00050002 + } frstrans_ProtocolVersion; + + typedef [bitmap32bit] bitmap { + FRSTRANS_TRANSPORT_SUPPORTS_RDC_SIMILARITY = 0x00000001 + } frstrans_TransportFlags; + + WERROR frstrans_EstablishConnection( + [in] GUID replica_set_guid, + [in] GUID connection_guid, + [in] frstrans_ProtocolVersion downstream_protocol_version, + [in] frstrans_TransportFlags downstream_flags, + [out,ref] frstrans_ProtocolVersion *upstream_protocol_version, + [out,ref] frstrans_TransportFlags *upstream_flags + ); + + /*****************/ + /* Function 0x02 */ + WERROR frstrans_EstablishSession( + [in] GUID connection_guid, + [in] GUID content_set_guid + ); + + /*****************/ + /* Function 0x03 */ + typedef enum { + FRSTRANS_UPDATE_REQUEST_ALL = 0x0000, + FRSTRANS_UPDATE_REQUEST_TOMBSTONES = 0x0001, + FRSTRANS_UPDATE_REQUEST_LIVE = 0x0002 + } frstrans_UpdateRequestType; + + typedef enum { + FRSTRANS_UPDATE_STATUS_DONE = 0x0002, + FRSTRANS_UPDATE_STATUS_MORE = 0x0003 + } frstrans_UpdateStatus; + + typedef struct { + GUID db_guid; + hyper low; + hyper high; + } frstrans_VersionVector; + + typedef [flag(NDR_PAHEX)] struct { + boolean32 present; + boolean32 name_conflict; + uint32 attributes; + NTTIME fence; + NTTIME clock; + NTTIME create_time; + GUID content_set_guid; + uint8 sha1_hash[20]; + uint8 rdc_similarity[16]; + GUID uid_db_guid; + hyper uid_version; + GUID gsvn_db_guid; + hyper gsvn_version; + GUID parent_db_guid; + hyper parent_version; + [string,charset(UTF16)] uint16 name[261]; + uint32 flags; + } frstrans_Update; + + WERROR frstrans_RequestUpdates( + [in] GUID connection_guid, + [in] GUID content_set_guid, + [in,range(0,256)] uint32 credits_available, + [in,range(0,1)] boolean32 hash_requested, + [in,range(0,2)] + frstrans_UpdateRequestType update_request_type, + [in] uint32 version_vector_diff_count, + [in,size_is(version_vector_diff_count)] + frstrans_VersionVector *version_vector_diff, + [out,ref,size_is(credits_available),length_is(*update_count)] + frstrans_Update *frs_update, + [out,ref] uint32 *update_count, + [out,ref] frstrans_UpdateStatus *update_status, + [out,ref] GUID *gvsn_db_guid, + [out,ref] hyper *gvsn_version + ); + + /*****************/ + /* Function 0x04 */ + typedef enum { + FRSTRANS_VERSION_REQUEST_NORNAL_SYNC = 0x0000, + FRSTRANS_VERSION_REQUEST_SLOW_SYNC = 0x0001, + FRSTRANS_VERSION_REQUEST_SLAVE_SYNC = 0x0002 + } frstrans_VersionRequestType; + + typedef enum { + FRSTRANS_VERSION_CHANGE_NOTIFY = 0x0000, + FRSTRANS_VERSION_CHANGE_ALL = 0x0002 + } frstrans_VersionChangeType; + + WERROR frstrans_RequestVersionVector( + [in] uint32 sequence_number, + [in] GUID connection_guid, + [in] GUID content_set_guid, + [in,range(0,2)] frstrans_VersionRequestType request_type, + [in,range(0,2)] frstrans_VersionChangeType change_type, + [in] hyper vv_generation + ); + + /*****************/ + /* Function 0x05 */ + typedef struct { + GUID machine_guid; + uint32 year; + uint32 month; + uint32 day_of_week; + uint32 day; + uint32 hour; + uint32 minute; + uint32 second; + uint32 milli_seconds; + } frstrans_EpoqueVector; + + typedef struct { + hyper vv_generation; + uint32 version_vector_count; + [size_is(version_vector_count)] + frstrans_VersionVector *version_vector; + uint32 epoque_vector_count; + [size_is(epoque_vector_count)] + frstrans_EpoqueVector *epoque_vector; + } frstrans_AsyncVersionVectorResponse; + + typedef struct { + uint32 sequence_number; + WERROR status; + frstrans_AsyncVersionVectorResponse response; + } frstrans_AsyncResponseContext; + + WERROR frstrans_AsyncPoll( + [in] GUID connection_guid, + [out,ref] frstrans_AsyncResponseContext *response + ); + + /*****************/ + /* Function 0x06 */ + void FRSTRANS_REQUEST_RECORDS(); + + /*****************/ + /* Function 0x07 */ + void FRSTRANS_UPDATE_CANCEL(); + + /*****************/ + /* Function 0x08 */ + void FRSTRANS_RAW_GET_FILE_DATA(); + + /*****************/ + /* Function 0x09 */ + void FRSTRANS_RDC_GET_SIGNATURES(); + + /*****************/ + /* Function 0x0a */ + void FRSTRANS_RDC_PUSH_SOURCE_NEEDS(); + + /*****************/ + /* Function 0x0b */ + void FRSTRANS_RDC_GET_FILE_DATA(); + + /*****************/ + /* Function 0x0c */ + void FRSTRANS_RDC_CLOSE(); + + /*****************/ + /* Function 0x0d */ + typedef enum { + FRSTRANS_STAGING_POLICY_SERVER_DEFAULTY = 0x0000, + FRSTRANS_STAGING_POLICY_STATGING_REQUIRED = 0x0001, + FRSTRANS_STAGING_POLICY_RESTATGING_REQUIRED = 0x0002 + } frstrans_RequestedStagingPolicy; + + typedef enum { + FRSTRANS_RDC_FILTER_GENERIC = 0x0000, + FRSTRANS_RDC_FILTER_MAX = 0x0001, + FRSTRANS_RDC_FILTER_POINT = 0x0002, + FRSTRANS_RDC_MAX_ALGORITHM = 0x0003 + } frstrans_RdcChunckerAlgorithm; + + typedef struct { + frstrans_RdcChunckerAlgorithm chunker_type; + uint8 chunker_parameters[64]; + } frstrans_RdcParameterGeneric; + + typedef struct { + [range(128,1024*16)] uint16 min_horizon_size; + [range(2,96)] uint16 max_window_size; + } frstrans_RdcParameterFilterMax; + + typedef struct { + uint16 min_chunk_size; + uint16 max_chunk_size; + } frstrans_RdcParameterFilterPoint; + + typedef [switch_type(frstrans_RdcChunckerAlgorithm)] union { + [case(FRSTRANS_RDC_FILTER_GENERIC)] + frstrans_RdcParameterGeneric filter_generic; + [case(FRSTRANS_RDC_FILTER_MAX)] + frstrans_RdcParameterFilterMax filter_max; + [case(FRSTRANS_RDC_FILTER_POINT)] + frstrans_RdcParameterFilterPoint filter_point; + } frstrans_RdcParameterUnion; + + typedef struct { + frstrans_RdcChunckerAlgorithm rdc_chunker_algorithm; + [switch_is(rdc_chunker_algorithm)] frstrans_RdcParameterUnion u; + } frstrans_RdcParameters; + + typedef enum { + FRSTRANS_RDC_VERSION = 0x0001 + } frstrans_RdcVersion; + + typedef enum { + FRSTRANS_RDC_VERSION_COMPATIBLE = 0x0001 + } frstrans_RdcVersionCompatible; + + typedef enum { + FRSTRANS_RDC_UNCOMPRESSED = 0x0000, + FRSTRANS_RDC_XPRESS = 0x0001 + } frstrans_RdcCompressionAlgorithm; + + typedef struct { + hyper on_disk_file_size; + hyper file_size_estimate; + frstrans_RdcVersion rdc_version; + frstrans_RdcVersionCompatible rdc_minimum_compatible_version; + [range(0,8)] uint8 rdc_signature_levels; + frstrans_RdcCompressionAlgorithm compression_algorithm; + [size_is(rdc_signature_levels)] + frstrans_RdcParameters rdc_filter_parameters[*]; + } frstrans_RdcFileInfo; + + WERROR frstrans_InitializeFileTransferAsync( + [in] GUID connection_guid, + [in,out,ref] frstrans_Update *frs_update, + [in,range(0,1)] boolean32 rdc_desired, + [in,out,ref] frstrans_RequestedStagingPolicy *staging_policy, + [out,ref] policy_handle *server_context, + [out,ref] frstrans_RdcFileInfo **rdc_file_info, + [out,ref,size_is(buffer_size),length_is(*size_read)] + uint8 *data_buffer, + [in,range(0,262144)] uint32 buffer_size, + [out,ref] uint32 *size_read, + [out,ref] boolean32 *is_end_of_file + ); + + /*****************/ + /* Function 0x0e */ + void FRSTRANS_OPNUM_0E_NOT_USED_ON_THE_WIRE(); + + /* The following functions are new in Windows 2008 */ + + /*****************/ + /* Function 0x0f */ + void FRSTRANS_RAW_GET_FILE_DATA_ASYNC(); + + /*****************/ + /* Function 0x10 */ + void FRSTRANS_RDC_GET_FILE_DATA_ASYNC(); +} diff --git a/epan/dissectors/pidl/initshutdown.cnf b/epan/dissectors/pidl/initshutdown.cnf deleted file mode 100644 index 25691da25c..0000000000 --- a/epan/dissectors/pidl/initshutdown.cnf +++ /dev/null @@ -1 +0,0 @@ -TYPE lsa_StringLarge "offset=lsarpc_dissect_struct_lsa_StringLarge(tvb, offset, pinfo, tree, di, drep, @HF@, @PARAM@);" FT_NONE BASE_NONE 0 NULL NULL diff --git a/epan/dissectors/pidl/initshutdown.idl b/epan/dissectors/pidl/initshutdown.idl deleted file mode 100644 index 13a1362205..0000000000 --- a/epan/dissectors/pidl/initshutdown.idl +++ /dev/null @@ -1,91 +0,0 @@ -#include "idl_types.h" - -/* - initshutdown interface definition -*/ - -import "lsa.idl"; - -[ - uuid("894de0c0-0d55-11d3-a322-00c04fa321a1"), - version(1.0), - endpoint("ncacn_np:[\\pipe\\InitShutdown]"), - pointer_default(unique), - helpstring("Init shutdown service") -] interface initshutdown -{ - typedef [v1_enum] enum { - SHTDN_REASON_MAJOR_OTHER = 0x00000000, - SHTDN_REASON_MAJOR_HARDWARE = 0x00010000, - SHTDN_REASON_MAJOR_OPERATINGSYSTEM = 0x00020000, - SHTDN_REASON_MAJOR_SOFTWARE = 0x00030000, - SHTDN_REASON_MAJOR_APPLICATION = 0x00040000, - SHTDN_REASON_MAJOR_SYSTEM = 0x00050000, - SHTDN_REASON_MAJOR_POWER = 0x00060000, - SHTDN_REASON_MAJOR_LEGACY_API = 0x00070000 - } initshutdown_ReasonMajor; - - typedef [v1_enum] enum { - SHTDN_REASON_MINOR_OTHER = 0x00000000, - SHTDN_REASON_MINOR_MAINTENANCE = 0x00000001, - SHTDN_REASON_MINOR_INSTALLATION = 0x00000002, - SHTDN_REASON_MINOR_UPGRADE = 0x00000003, - SHTDN_REASON_MINOR_RECONFIG = 0x00000004, - SHTDN_REASON_MINOR_HUNG = 0x00000005, - SHTDN_REASON_MINOR_UNSTABLE = 0x00000006, - SHTDN_REASON_MINOR_DISK = 0x00000007, - SHTDN_REASON_MINOR_PROCESSOR = 0x00000008, - SHTDN_REASON_MINOR_NETWORKCARD = 0x00000009, - SHTDN_REASON_MINOR_POWER_SUPPLY = 0x0000000a, - SHTDN_REASON_MINOR_CORDUNPLUGGED = 0x0000000b, - SHTDN_REASON_MINOR_ENVIRONMENT = 0x0000000c, - SHTDN_REASON_MINOR_HARDWARE_DRIVER = 0x0000000d, - SHTDN_REASON_MINOR_OTHERDRIVER = 0x0000000e, - SHTDN_REASON_MINOR_BLUESCREEN = 0x0000000f, - SHTDN_REASON_MINOR_SERVICEPACK = 0x00000010, - SHTDN_REASON_MINOR_HOTFIX = 0x00000011, - SHTDN_REASON_MINOR_SECURITYFIX = 0x00000012, - SHTDN_REASON_MINOR_SECURITY = 0x00000013, - SHTDN_REASON_MINOR_NETWORK_CONNECTIVITY = 0x00000014, - SHTDN_REASON_MINOR_WMI = 0x00000015, - SHTDN_REASON_MINOR_SERVICEPACK_UNINSTALL= 0x00000016, - SHTDN_REASON_MINOR_HOTFIX_UNINSTALL = 0x00000017, - SHTDN_REASON_MINOR_SECURITYFIX_UNINSTALL= 0x00000018, - SHTDN_REASON_MINOR_MMC = 0x00000019, - SHTDN_REASON_MINOR_TERMSRV = 0x00000020 - } initshutdown_ReasonMinor; - - typedef [bitmap32bit] bitmap { - SHTDN_REASON_FLAG_USER_DEFINED = 0x40000000, - SHTDN_REASON_FLAG_PLANNED = 0x80000000 - } initshutdown_ReasonFlags; - - WERROR initshutdown_Init( - [in,unique] uint16 *hostname, - /* - * Note: lsa_String and winreg_String both result - * in WERR_INVALID_PARAM - */ - [in,unique] lsa_StringLarge *message, - [in] uint32 timeout, - [in] uint8 force_apps, - [in] uint8 do_reboot - ); - - WERROR initshutdown_Abort( - [in,unique] uint16 *server - ); - - WERROR initshutdown_InitEx( - [in,unique] uint16 *hostname, - /* - * Note: lsa_String and winreg_String both result - * in WERR_INVALID_PARAM - */ - [in,unique] lsa_StringLarge *message, - [in] uint32 timeout, - [in] uint8 force_apps, - [in] uint8 do_reboot, - [in] uint32 reason - ); -} diff --git a/epan/dissectors/pidl/initshutdown/initshutdown.cnf b/epan/dissectors/pidl/initshutdown/initshutdown.cnf new file mode 100644 index 0000000000..25691da25c --- /dev/null +++ b/epan/dissectors/pidl/initshutdown/initshutdown.cnf @@ -0,0 +1 @@ +TYPE lsa_StringLarge "offset=lsarpc_dissect_struct_lsa_StringLarge(tvb, offset, pinfo, tree, di, drep, @HF@, @PARAM@);" FT_NONE BASE_NONE 0 NULL NULL diff --git a/epan/dissectors/pidl/initshutdown/initshutdown.idl b/epan/dissectors/pidl/initshutdown/initshutdown.idl new file mode 100644 index 0000000000..ffe068d243 --- /dev/null +++ b/epan/dissectors/pidl/initshutdown/initshutdown.idl @@ -0,0 +1,91 @@ +#include "idl_types.h" + +/* + initshutdown interface definition +*/ + +import "lsa/lsa.idl"; + +[ + uuid("894de0c0-0d55-11d3-a322-00c04fa321a1"), + version(1.0), + endpoint("ncacn_np:[\\pipe\\InitShutdown]"), + pointer_default(unique), + helpstring("Init shutdown service") +] interface initshutdown +{ + typedef [v1_enum] enum { + SHTDN_REASON_MAJOR_OTHER = 0x00000000, + SHTDN_REASON_MAJOR_HARDWARE = 0x00010000, + SHTDN_REASON_MAJOR_OPERATINGSYSTEM = 0x00020000, + SHTDN_REASON_MAJOR_SOFTWARE = 0x00030000, + SHTDN_REASON_MAJOR_APPLICATION = 0x00040000, + SHTDN_REASON_MAJOR_SYSTEM = 0x00050000, + SHTDN_REASON_MAJOR_POWER = 0x00060000, + SHTDN_REASON_MAJOR_LEGACY_API = 0x00070000 + } initshutdown_ReasonMajor; + + typedef [v1_enum] enum { + SHTDN_REASON_MINOR_OTHER = 0x00000000, + SHTDN_REASON_MINOR_MAINTENANCE = 0x00000001, + SHTDN_REASON_MINOR_INSTALLATION = 0x00000002, + SHTDN_REASON_MINOR_UPGRADE = 0x00000003, + SHTDN_REASON_MINOR_RECONFIG = 0x00000004, + SHTDN_REASON_MINOR_HUNG = 0x00000005, + SHTDN_REASON_MINOR_UNSTABLE = 0x00000006, + SHTDN_REASON_MINOR_DISK = 0x00000007, + SHTDN_REASON_MINOR_PROCESSOR = 0x00000008, + SHTDN_REASON_MINOR_NETWORKCARD = 0x00000009, + SHTDN_REASON_MINOR_POWER_SUPPLY = 0x0000000a, + SHTDN_REASON_MINOR_CORDUNPLUGGED = 0x0000000b, + SHTDN_REASON_MINOR_ENVIRONMENT = 0x0000000c, + SHTDN_REASON_MINOR_HARDWARE_DRIVER = 0x0000000d, + SHTDN_REASON_MINOR_OTHERDRIVER = 0x0000000e, + SHTDN_REASON_MINOR_BLUESCREEN = 0x0000000f, + SHTDN_REASON_MINOR_SERVICEPACK = 0x00000010, + SHTDN_REASON_MINOR_HOTFIX = 0x00000011, + SHTDN_REASON_MINOR_SECURITYFIX = 0x00000012, + SHTDN_REASON_MINOR_SECURITY = 0x00000013, + SHTDN_REASON_MINOR_NETWORK_CONNECTIVITY = 0x00000014, + SHTDN_REASON_MINOR_WMI = 0x00000015, + SHTDN_REASON_MINOR_SERVICEPACK_UNINSTALL= 0x00000016, + SHTDN_REASON_MINOR_HOTFIX_UNINSTALL = 0x00000017, + SHTDN_REASON_MINOR_SECURITYFIX_UNINSTALL= 0x00000018, + SHTDN_REASON_MINOR_MMC = 0x00000019, + SHTDN_REASON_MINOR_TERMSRV = 0x00000020 + } initshutdown_ReasonMinor; + + typedef [bitmap32bit] bitmap { + SHTDN_REASON_FLAG_USER_DEFINED = 0x40000000, + SHTDN_REASON_FLAG_PLANNED = 0x80000000 + } initshutdown_ReasonFlags; + + WERROR initshutdown_Init( + [in,unique] uint16 *hostname, + /* + * Note: lsa_String and winreg_String both result + * in WERR_INVALID_PARAM + */ + [in,unique] lsa_StringLarge *message, + [in] uint32 timeout, + [in] uint8 force_apps, + [in] uint8 do_reboot + ); + + WERROR initshutdown_Abort( + [in,unique] uint16 *server + ); + + WERROR initshutdown_InitEx( + [in,unique] uint16 *hostname, + /* + * Note: lsa_String and winreg_String both result + * in WERR_INVALID_PARAM + */ + [in,unique] lsa_StringLarge *message, + [in] uint32 timeout, + [in] uint8 force_apps, + [in] uint8 do_reboot, + [in] uint32 reason + ); +} diff --git a/epan/dissectors/pidl/lsa.cnf b/epan/dissectors/pidl/lsa.cnf deleted file mode 100644 index 2138ef8322..0000000000 --- a/epan/dissectors/pidl/lsa.cnf +++ /dev/null @@ -1,387 +0,0 @@ -# -# policyhandle tracking -# This block is to specify where a policyhandle is opened and where it is -# closed so that policyhandles when dissected contain nice info such as -# [opened in xxx] [closed in yyy] -# -# Policyhandles are opened in these functions -PARAM_VALUE lsarpc_dissect_element_lsa_OpenPolicy_handle_ PIDL_POLHND_OPEN|PIDL_POLHND_TYPE_LSA_POLICY -PARAM_VALUE lsarpc_dissect_element_lsa_OpenPolicy2_handle_ PIDL_POLHND_OPEN|PIDL_POLHND_TYPE_LSA_POLICY -PARAM_VALUE lsarpc_dissect_element_lsa_CreateAccount_acct_handle_ PIDL_POLHND_OPEN|PIDL_POLHND_TYPE_LSA_ACCOUNT -PARAM_VALUE lsarpc_dissect_element_lsa_OpenAccount_acct_handle_ PIDL_POLHND_OPEN|PIDL_POLHND_TYPE_LSA_ACCOUNT -PARAM_VALUE lsarpc_dissect_element_lsa_CreateTrustedDomain_trustdom_handle_ PIDL_POLHND_OPEN|PIDL_POLHND_TYPE_LSA_DOMAIN -PARAM_VALUE lsarpc_dissect_element_lsa_OpenTrustedDomain_trustdom_handle_ PIDL_POLHND_OPEN|PIDL_POLHND_TYPE_LSA_DOMAIN -PARAM_VALUE lsarpc_dissect_element_lsa_OpenTrustedDomainByName_trustdom_handle_ PIDL_POLHND_OPEN|PIDL_POLHND_TYPE_LSA_DOMAIN -PARAM_VALUE lsarpc_dissect_element_lsa_CreateSecret_sec_handle_ PIDL_POLHND_OPEN|PIDL_POLHND_TYPE_LSA_SECRET -PARAM_VALUE lsarpc_dissect_element_lsa_OpenSecret_sec_handle_ PIDL_POLHND_OPEN|PIDL_POLHND_TYPE_LSA_SECRET -# Policyhandles are closed in these functions -PARAM_VALUE lsarpc_dissect_element_lsa_Close_handle_ PIDL_POLHND_CLOSE -PARAM_VALUE lsarpc_dissect_element_lsa_Delete_handle_ PIDL_POLHND_CLOSE -PARAM_VALUE lsarpc_dissect_element_lsa_CloseTrustedDomainEx_handle_ PIDL_POLHND_CLOSE - - - -TYPE hyper "offset=cnf_dissect_hyper(tvb, offset, pinfo, tree, di, drep, @PARAM@, @HF@);" FT_UINT64 BASE_DEC 0 NULL 8 - -TYPE sec_desc_buf "offset=cnf_dissect_sec_desc_buf(tvb, offset, pinfo, tree, di, drep);" FT_NONE BASE_NONE 0 NULL 4 -HF_FIELD hf_lsarpc_sec_desc_buf_len "Sec Desc Buf Len" "lsarpc.sec_desc_buf_len" FT_UINT32 BASE_DEC NULL 0 "" "" "" - - -MANUAL lsarpc_dissect_bitmap_lsa_PolicyAccessMask -MANUAL lsarpc_dissect_bitmap_lsa_AccountAccessMask -MANUAL lsarpc_dissect_bitmap_lsa_SecretAccessMask -MANUAL lsarpc_dissect_bitmap_lsa_DomainAccessMask -HF_FIELD hf_lsarpc_policy_access_mask "Access Mask" "lsarpc.policy.access_mask" FT_UINT32 BASE_HEX NULL 0 "" "" "" -HF_FIELD hf_lsarpc_account_access_mask "Access Mask" "lsarpc.policy.access_mask" FT_UINT32 BASE_HEX NULL 0 "" "" "" -HF_FIELD hf_lsarpc_secret_access_mask "Access Mask" "lsarpc.policy.access_mask" FT_UINT32 BASE_HEX NULL 0 "" "" "" -HF_FIELD hf_lsarpc_domain_access_mask "Access Mask" "lsarpc.policy.access_mask" FT_UINT32 BASE_HEX NULL 0 "" "" "" - -HF_FIELD hf_lsarpc_String_name "String" "lsarpc.lsa.string" FT_STRING BASE_NONE NULL 0 "" "" "" - -MANUAL lsarpc_dissect_element_lsa_LookupNames_names -MANUAL lsarpc_dissect_element_lsa_LookupNames2_names -MANUAL lsarpc_dissect_element_lsa_LookupNames3_names -MANUAL lsarpc_dissect_element_lsa_LookupNames4_names -MANUAL lsarpc_dissect_element_lsa_String_string_ -MANUAL lsarpc_dissect_element_lsa_StringLarge_string_ - -NOEMIT lsarpc_dissect_element_lsa_String_string__ -NOEMIT lsarpc_dissect_element_lsa_StringLarge_string__ -NOEMIT lsarpc_dissect_element_lsa_DomainInfoEfs_efs_blob__ -NOEMIT lsarpc_dissect_element_lsa_LookupNames_names_ -NOEMIT lsarpc_dissect_element_lsa_LookupNames2_names_ -NOEMIT lsarpc_dissect_element_lsa_LookupNames4_names_ - -ETT_FIELD ett_lsarpc_names -HF_FIELD hf_lsarpc_names "Names" "lsarpc.lookup.names" FT_NONE BASE_NONE NULL 0 "" "" "" - - -MANUAL lsarpc_dissect_element_lsa_DomainInfoEfs_efs_blob_ -HF_FIELD hf_lsarpc_efs_blob_len "EFS blob size" "lsarpc.efs.blob_size" FT_UINT32 BASE_DEC NULL 0 "" "" "" - -CODE START - - -static void -lsarpc_policy_specific_rights(tvbuff_t *tvb _U_, gint offset _U_, proto_tree *tree _U_, guint32 access _U_) -{ - proto_tree_add_boolean(tree, hf_lsarpc_lsa_PolicyAccessMask_LSA_POLICY_NOTIFICATION, tvb, offset, 4, access); - proto_tree_add_boolean(tree, hf_lsarpc_lsa_PolicyAccessMask_LSA_POLICY_LOOKUP_NAMES, tvb, offset, 4, access); - proto_tree_add_boolean(tree, hf_lsarpc_lsa_PolicyAccessMask_LSA_POLICY_SERVER_ADMIN, tvb, offset, 4, access); - proto_tree_add_boolean(tree, hf_lsarpc_lsa_PolicyAccessMask_LSA_POLICY_AUDIT_LOG_ADMIN, tvb, offset, 4, access); - proto_tree_add_boolean(tree, hf_lsarpc_lsa_PolicyAccessMask_LSA_POLICY_SET_AUDIT_REQUIREMENTS, tvb, offset, 4, access); - proto_tree_add_boolean(tree, hf_lsarpc_lsa_PolicyAccessMask_LSA_POLICY_SET_DEFAULT_QUOTA_LIMITS, tvb, offset, 4, access); - proto_tree_add_boolean(tree, hf_lsarpc_lsa_PolicyAccessMask_LSA_POLICY_CREATE_PRIVILEGE, tvb, offset, 4, access); - proto_tree_add_boolean(tree, hf_lsarpc_lsa_PolicyAccessMask_LSA_POLICY_CREATE_SECRET, tvb, offset, 4, access); - proto_tree_add_boolean(tree, hf_lsarpc_lsa_PolicyAccessMask_LSA_POLICY_CREATE_ACCOUNT, tvb, offset, 4, access); - proto_tree_add_boolean(tree, hf_lsarpc_lsa_PolicyAccessMask_LSA_POLICY_TRUST_ADMIN, tvb, offset, 4, access); - proto_tree_add_boolean(tree, hf_lsarpc_lsa_PolicyAccessMask_LSA_POLICY_GET_PRIVATE_INFORMATION, tvb, offset, 4, access); - proto_tree_add_boolean(tree, hf_lsarpc_lsa_PolicyAccessMask_LSA_POLICY_VIEW_AUDIT_INFORMATION, tvb, offset, 4, access); - proto_tree_add_boolean(tree, hf_lsarpc_lsa_PolicyAccessMask_LSA_POLICY_VIEW_LOCAL_INFORMATION, tvb, offset, 4, access); -} - -static void -lsarpc_account_specific_rights(tvbuff_t *tvb _U_, gint offset _U_, proto_tree *tree _U_, guint32 access _U_) -{ - proto_tree_add_boolean(tree, hf_lsarpc_lsa_AccountAccessMask_LSA_ACCOUNT_ADJUST_SYSTEM_ACCESS, tvb, offset, 4, access); - proto_tree_add_boolean(tree, hf_lsarpc_lsa_AccountAccessMask_LSA_ACCOUNT_ADJUST_QUOTAS, tvb, offset, 4, access); - proto_tree_add_boolean(tree, hf_lsarpc_lsa_AccountAccessMask_LSA_ACCOUNT_ADJUST_PRIVILEGES, tvb, offset, 4, access); - proto_tree_add_boolean(tree, hf_lsarpc_lsa_AccountAccessMask_LSA_ACCOUNT_VIEW, tvb, offset, 4, access); -} - -static void -lsarpc_secret_specific_rights(tvbuff_t *tvb _U_, gint offset _U_, proto_tree *tree _U_, guint32 access _U_) -{ - proto_tree_add_boolean(tree, hf_lsarpc_lsa_SecretAccessMask_LSA_SECRET_QUERY_VALUE, tvb, offset, 4, access); - proto_tree_add_boolean(tree, hf_lsarpc_lsa_SecretAccessMask_LSA_SECRET_SET_VALUE, tvb, offset, 4, access); -} - -static void -lsarpc_domain_specific_rights(tvbuff_t *tvb _U_, gint offset _U_, proto_tree *tree _U_, guint32 access _U_) -{ - proto_tree_add_boolean(tree, hf_lsarpc_lsa_DomainAccessMask_LSA_DOMAIN_QUERY_AUTH, tvb, offset, 4, access); - proto_tree_add_boolean(tree, hf_lsarpc_lsa_DomainAccessMask_LSA_DOMAIN_SET_AUTH, tvb, offset, 4, access); - proto_tree_add_boolean(tree, hf_lsarpc_lsa_DomainAccessMask_LSA_DOMAIN_SET_POSIX, tvb, offset, 4, access); - proto_tree_add_boolean(tree, hf_lsarpc_lsa_DomainAccessMask_LSA_DOMAIN_QUERY_POSIX, tvb, offset, 4, access); - proto_tree_add_boolean(tree, hf_lsarpc_lsa_DomainAccessMask_LSA_DOMAIN_SET_CONTROLLERS, tvb, offset, 4, access); - proto_tree_add_boolean(tree, hf_lsarpc_lsa_DomainAccessMask_LSA_DOMAIN_QUERY_CONTROLLERS, tvb, offset, 4, access); - proto_tree_add_boolean(tree, hf_lsarpc_lsa_DomainAccessMask_LSA_DOMAIN_QUERY_DOMAIN_NAME, tvb, offset, 4, access); -} - - -struct access_mask_info lsarpc_policy_access_mask_info = { - "LSA Policy", /* Name of specific rights */ - lsarpc_policy_specific_rights, /* Dissection function */ - NULL, /* Generic mapping table */ - NULL /* Standard mapping table */ -}; - -struct access_mask_info lsarpc_account_access_mask_info = { - "LSA Account", /* Name of specific rights */ - lsarpc_account_specific_rights, /* Dissection function */ - NULL, /* Generic mapping table */ - NULL /* Standard mapping table */ -}; - -struct access_mask_info lsarpc_secret_access_mask_info = { - "LSA Secret", /* Name of specific rights */ - lsarpc_secret_specific_rights, /* Dissection function */ - NULL, /* Generic mapping table */ - NULL /* Standard mapping table */ -}; - -struct access_mask_info lsarpc_domain_access_mask_info = { - "LSA Domain", /* Name of specific rights */ - lsarpc_domain_specific_rights, /* Dissection function */ - NULL, /* Generic mapping table */ - NULL /* Standard mapping table */ -}; - -int -lsarpc_dissect_bitmap_lsa_PolicyAccessMask(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep, int hf_index _U_, guint32 param _U_) -{ - offset = dissect_nt_access_mask( - tvb, offset, pinfo, tree, di, drep, hf_lsarpc_policy_access_mask, - &lsarpc_policy_access_mask_info, NULL); - return offset; -} - -int -lsarpc_dissect_bitmap_lsa_AccountAccessMask(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep, int hf_index _U_, guint32 param _U_) -{ - offset = dissect_nt_access_mask( - tvb, offset, pinfo, tree, di, drep, hf_lsarpc_account_access_mask, - &lsarpc_account_access_mask_info, NULL); - return offset; -} - -int -lsarpc_dissect_bitmap_lsa_SecretAccessMask(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep, int hf_index _U_, guint32 param _U_) -{ - offset = dissect_nt_access_mask( - tvb, offset, pinfo, tree, di, drep, hf_lsarpc_secret_access_mask, - &lsarpc_secret_access_mask_info, NULL); - return offset; -} - -int -lsarpc_dissect_bitmap_lsa_DomainAccessMask(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep, int hf_index _U_, guint32 param _U_) -{ - offset = dissect_nt_access_mask( - tvb, offset, pinfo, tree, di, drep, hf_lsarpc_domain_access_mask, - &lsarpc_domain_access_mask_info, NULL); - return offset; -} - -static int -cnf_dissect_sec_desc_buf_(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep) -{ - guint32 len; - e_ctx_hnd *polhnd = NULL; - dcerpc_call_value *dcv = NULL; - guint32 type=0; - struct access_mask_info *ami=NULL; - - if(di->conformant_run){ - /*just a run to handle conformant arrays, nothing to dissect */ - return offset; - } - - offset = dissect_ndr_uint32 (tvb, offset, pinfo, tree, di, drep, - hf_lsarpc_sec_desc_buf_len, &len); - - dcv = (dcerpc_call_value *)di->call_data; - if(dcv){ - polhnd = dcv->pol; - } - if(polhnd){ - dcerpc_fetch_polhnd_data(polhnd, NULL, &type, NULL, NULL, - pinfo->num); - } - switch(type){ - case PIDL_POLHND_TYPE_LSA_POLICY: - ami=&lsarpc_policy_access_mask_info; - break; - case PIDL_POLHND_TYPE_LSA_ACCOUNT: - ami=&lsarpc_account_access_mask_info; - break; - case PIDL_POLHND_TYPE_LSA_SECRET: - ami=&lsarpc_secret_access_mask_info; - break; - case PIDL_POLHND_TYPE_LSA_DOMAIN: - ami=&lsarpc_domain_access_mask_info; - break; - } - - dissect_nt_sec_desc(tvb, offset, pinfo, tree, drep, TRUE, len, ami); - - offset += len; - - return offset; -} - -static int -cnf_dissect_sec_desc_buf(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep) -{ - guint32 len; - - if(di->conformant_run){ - /*just a run to handle conformant arrays, nothing to dissect */ - return offset; - } - - offset = dissect_ndr_uint32 (tvb, offset, pinfo, tree, di, drep, - hf_lsarpc_sec_desc_buf_len, &len); - - offset = dissect_ndr_pointer(tvb, offset, pinfo, tree, di, drep, - cnf_dissect_sec_desc_buf_, NDR_POINTER_UNIQUE, - "LSA SECURITY DESCRIPTOR data:", -1); - - return offset; -} - - -int -lsarpc_dissect_sec_desc_buf(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep){ - return cnf_dissect_sec_desc_buf(tvb, offset, pinfo, tree, di, drep); -} - -static int -lsarpc_dissect_struct_security_descriptor(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di, guint8 *drep _U_, int unused1 _U_, int unused2 _U_){ - return cnf_dissect_sec_desc_buf(tvb, offset, pinfo, tree, di, drep); -} - - -int -lsarpc_dissect_struct_dom_sid2(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di, guint8 *drep _U_, int unused1 _U_, int unused2 _U_) { - /* sid */ - return dissect_ndr_nt_SID(tvb, offset, pinfo, tree, di, drep); - -} - -static int -cnf_dissect_hyper(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep, guint32 param _U_, int hfindex) -{ - offset = dissect_ndr_uint64(tvb, offset, pinfo, tree, di, drep, hfindex, NULL); - - return offset; -} - -# PIDL cant handle top level arrays so we must explicitely go through a -# ref pointer here -static int -lsarpc_dissect_element_lsa_LookupNames3_names_X(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di, guint8 *drep _U_) -{ - proto_item *item = NULL; - proto_tree *tree = NULL; - int old_offset = offset; - - if (parent_tree) { - item = proto_tree_add_item(parent_tree, hf_lsarpc_names, tvb, offset, -1, ENC_NA); - tree = proto_item_add_subtree(item, ett_lsarpc_names); - } - - offset = dissect_ndr_ucarray(tvb, offset, pinfo, tree, di, drep, lsarpc_dissect_element_lsa_LookupNames3_names_); - - proto_item_set_len(item, offset-old_offset); - return offset; -} - -static int -lsarpc_dissect_element_lsa_LookupNames_names(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di, guint8 *drep _U_) -{ - offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, di, drep, lsarpc_dissect_element_lsa_LookupNames3_names_X, NDR_POINTER_REF, "Pointer to Names", hf_lsarpc_names); - - return offset; -} -static int -lsarpc_dissect_element_lsa_LookupNames2_names(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di, guint8 *drep _U_) -{ - offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, di, drep, lsarpc_dissect_element_lsa_LookupNames3_names_X, NDR_POINTER_REF, "Pointer to Names", hf_lsarpc_names); - - return offset; -} -static int -lsarpc_dissect_element_lsa_LookupNames3_names(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di, guint8 *drep _U_) -{ - offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, di, drep, lsarpc_dissect_element_lsa_LookupNames3_names_X, NDR_POINTER_REF, "Pointer to Names", hf_lsarpc_names); - - return offset; -} -static int -lsarpc_dissect_element_lsa_LookupNames4_names(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di, guint8 *drep _U_) -{ - offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, di, drep, lsarpc_dissect_element_lsa_LookupNames3_names_X, NDR_POINTER_REF, "Pointer to Names", hf_lsarpc_names); - - return offset; -} - - - -static int -lsarpc_dissect_element_lsa_String_string_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di, guint8 *drep _U_) -{ - char *data; - - offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, di, drep, sizeof(guint16), hf_lsarpc_String_name, FALSE, &data); - proto_item_append_text(tree, ": %s", data); - - return offset; -} - -static int -lsarpc_dissect_element_lsa_StringLarge_string_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di, guint8 *drep _U_) -{ - char *data; - - offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, di, drep, sizeof(guint16), hf_lsarpc_String_name, FALSE, &data); - proto_item_append_text(tree, ": %s", data); - - return offset; -} - - - -static int -lsarpc_dissect_element_lsa_DomainInfoEfs_efs_blob_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di, guint8 *drep _U_) -{ - tvbuff_t *next_tvb; - gint len, reported_len; - dissector_handle_t efsblob_handle; - - if(di->conformant_run){ - /*just a run to handle conformant arrays, nothing to dissect */ - return offset; - } - - - offset = dissect_ndr_uint32 (tvb, offset, pinfo, tree, di, drep, - hf_lsarpc_efs_blob_len, &reported_len); - - len = reported_len; - if (len > tvb_captured_length_remaining(tvb, offset)) { - len = tvb_captured_length_remaining(tvb, offset); - } - - next_tvb = tvb_new_subset(tvb, offset, len, reported_len); - - efsblob_handle = find_dissector("efsblob"); - if (efsblob_handle) { - call_dissector(efsblob_handle, next_tvb, pinfo, tree); - } - - offset += reported_len; - - return offset; -} - -CODE END - -HEADER START - -extern int -lsarpc_dissect_sec_desc_buf(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep); -extern int -lsarpc_dissect_struct_dom_sid2(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep, int unused1, int unused2); - -HEADER END diff --git a/epan/dissectors/pidl/lsa.idl b/epan/dissectors/pidl/lsa.idl deleted file mode 100644 index 116441545f..0000000000 --- a/epan/dissectors/pidl/lsa.idl +++ /dev/null @@ -1,1122 +0,0 @@ -#include "idl_types.h" - -/* - lsa interface definition -*/ - -/*import "misc.idl", "security.idl";*/ - -[ uuid("12345778-1234-abcd-ef00-0123456789ab"), - version(0.0), - endpoint("ncacn_np:[\\pipe\\lsarpc]","ncacn_np:[\\pipe\\netlogon]","ncacn_np:[\\pipe\\lsass]", "ncacn_ip_tcp:", "ncalrpc:"), - pointer_default(unique), - helpstring("Local Security Authority") -] interface lsarpc -{ - typedef [bitmap32bit] bitmap { - LSA_POLICY_NOTIFICATION = 0x00001000, - LSA_POLICY_LOOKUP_NAMES = 0x00000800, - LSA_POLICY_SERVER_ADMIN = 0x00000400, - LSA_POLICY_AUDIT_LOG_ADMIN = 0x00000200, - LSA_POLICY_SET_AUDIT_REQUIREMENTS = 0x00000100, - LSA_POLICY_SET_DEFAULT_QUOTA_LIMITS = 0x00000080, - LSA_POLICY_CREATE_PRIVILEGE = 0x00000040, - LSA_POLICY_CREATE_SECRET = 0x00000020, - LSA_POLICY_CREATE_ACCOUNT = 0x00000010, - LSA_POLICY_TRUST_ADMIN = 0x00000008, - LSA_POLICY_GET_PRIVATE_INFORMATION = 0x00000004, - LSA_POLICY_VIEW_AUDIT_INFORMATION = 0x00000002, - LSA_POLICY_VIEW_LOCAL_INFORMATION = 0x00000001 - } lsa_PolicyAccessMask; - - typedef [bitmap32bit] bitmap { - LSA_ACCOUNT_ADJUST_SYSTEM_ACCESS = 0x00000008, - LSA_ACCOUNT_ADJUST_QUOTAS = 0x00000004, - LSA_ACCOUNT_ADJUST_PRIVILEGES = 0x00000002, - LSA_ACCOUNT_VIEW = 0x00000001 - } lsa_AccountAccessMask; - - typedef [bitmap32bit] bitmap { - LSA_DOMAIN_QUERY_AUTH = 0x00000040, - LSA_DOMAIN_SET_AUTH = 0x00000020, - LSA_DOMAIN_SET_POSIX = 0x00000010, - LSA_DOMAIN_QUERY_POSIX = 0x00000008, - LSA_DOMAIN_SET_CONTROLLERS = 0x00000004, - LSA_DOMAIN_QUERY_CONTROLLERS = 0x00000002, - LSA_DOMAIN_QUERY_DOMAIN_NAME = 0x00000001 - } lsa_DomainAccessMask; - - typedef [bitmap32bit] bitmap { - LSA_SECRET_QUERY_VALUE = 0x00000002, - LSA_SECRET_SET_VALUE = 0x00000001 - } lsa_SecretAccessMask; - - typedef bitmap security_secinfo security_secinfo; - - typedef [public] struct { - [value(2*strlen_m(string))] uint16 length; - [value(2*strlen_m(string))] uint16 size; - [charset(UTF16),size_is(size/2),length_is(length/2)] uint16 *string; - } lsa_String; - - typedef [public] struct { - [value(2*strlen_m(string))] uint16 length; - [value(2*strlen_m_term(string))] uint16 size; - [charset(UTF16),size_is(size/2),length_is(length/2)] uint16 *string; - } lsa_StringLarge; - - typedef [public] struct { - uint32 count; - [size_is(count)] lsa_String *names; - } lsa_Strings; - - typedef [public] struct { - [value(strlen_m(string))] uint16 length; - [value(strlen_m(string))] uint16 size; - [charset(DOS),size_is(size),length_is(length)] uint8 *string; - } lsa_AsciiString; - - typedef [public] struct { - [value(strlen_m(string))] uint16 length; - [value(strlen_m_term(string))] uint16 size; - [charset(DOS),size_is(size),length_is(length)] uint8 *string; - } lsa_AsciiStringLarge; - - /******************/ - /* Function: 0x00 */ - NTSTATUS lsa_Close ( - [in,out] policy_handle *handle - ); - - - /******************/ - /* Function: 0x01 */ - [public] NTSTATUS lsa_Delete ( - [in] policy_handle *handle - ); - - - /******************/ - /* Function: 0x02 */ - typedef struct { - uint32 low; - uint32 high; - } lsa_LUID; - - typedef struct { - lsa_StringLarge name; - lsa_LUID luid; - } lsa_PrivEntry; - - typedef struct { - uint32 count; - [size_is(count)] lsa_PrivEntry *privs; - } lsa_PrivArray; - - [public] NTSTATUS lsa_EnumPrivs ( - [in] policy_handle *handle, - [in,out] uint32 *resume_handle, - [in] uint32 max_count, - [out] lsa_PrivArray *privs - ); - - /******************/ - /* Function: 0x03 */ - - NTSTATUS lsa_QuerySecurity ( - [in] policy_handle *handle, - [in] security_secinfo sec_info, - [out,unique] sec_desc_buf *sdbuf - ); - - - /******************/ - /* Function: 0x04 */ - [todo] NTSTATUS lsa_SetSecObj (); - - - /******************/ - /* Function: 0x05 */ - [todo] NTSTATUS lsa_ChangePassword (); - - - /******************/ - /* Function: 0x06 */ - - typedef enum { - LSA_SECURITY_ANONYMOUS = 0, - LSA_SECURITY_IDENTIFICATION = 1, - LSA_SECURITY_IMPERSONATION = 2, - LSA_SECURITY_DELEGATION = 3 - } lsa_SecurityImpersonationLevel; - - typedef struct { - uint32 len; /* ignored */ - lsa_SecurityImpersonationLevel impersonation_level; - uint8 context_mode; - uint8 effective_only; - } lsa_QosInfo; - - typedef struct { - uint32 len; /* ignored */ - uint8 *root_dir; - [string,charset(UTF16)] uint16 *object_name; - uint32 attributes; - security_descriptor *sec_desc; - lsa_QosInfo *sec_qos; - } lsa_ObjectAttribute; - - /* notice the screwup with the system_name - thats why MS created - OpenPolicy2 */ - [public] NTSTATUS lsa_OpenPolicy ( - [in,unique] uint16 *system_name, - [in] lsa_ObjectAttribute *attr, - [in] lsa_PolicyAccessMask access_mask, - [out] policy_handle *handle - ); - - - - /******************/ - /* Function: 0x07 */ - - typedef struct { - uint32 percent_full; - uint32 log_size; - NTTIME retention_time; - uint8 shutdown_in_progress; - NTTIME time_to_shutdown; - uint32 next_audit_record; - uint32 unknown; - } lsa_AuditLogInfo; - - typedef [v1_enum] enum { - LSA_AUDIT_POLICY_NONE=0, - LSA_AUDIT_POLICY_SUCCESS=1, - LSA_AUDIT_POLICY_FAILURE=2, - LSA_AUDIT_POLICY_ALL=(LSA_AUDIT_POLICY_SUCCESS|LSA_AUDIT_POLICY_FAILURE), - LSA_AUDIT_POLICY_CLEAR=4 - } lsa_PolicyAuditPolicy; - - typedef enum { - LSA_AUDIT_CATEGORY_SYSTEM = 0, - LSA_AUDIT_CATEGORY_LOGON = 1, - LSA_AUDIT_CATEGORY_FILE_AND_OBJECT_ACCESS = 2, - LSA_AUDIT_CATEGORY_USE_OF_USER_RIGHTS = 3, - LSA_AUDIT_CATEGORY_PROCCESS_TRACKING = 4, - LSA_AUDIT_CATEGORY_SECURITY_POLICY_CHANGES = 5, - LSA_AUDIT_CATEGORY_ACCOUNT_MANAGEMENT = 6, - LSA_AUDIT_CATEGORY_DIRECTORY_SERVICE_ACCESS = 7, /* only in win2k/2k3 */ - LSA_AUDIT_CATEGORY_ACCOUNT_LOGON = 8 /* only in win2k/2k3 */ - } lsa_PolicyAuditEventType; - - typedef struct { - uint32 auditing_mode; - [size_is(count)] lsa_PolicyAuditPolicy *settings; - uint32 count; - } lsa_AuditEventsInfo; - - typedef struct { - lsa_StringLarge name; - dom_sid2 *sid; - } lsa_DomainInfo; - - typedef struct { - lsa_String name; - } lsa_PDAccountInfo; - - typedef enum { - LSA_POLICY_ROLE_BACKUP = 2, - LSA_POLICY_ROLE_PRIMARY = 3 - } lsa_PolicyServerRole; - - typedef struct { - lsa_PolicyServerRole role; - } lsa_ServerRole; - - typedef struct { - lsa_String source; - lsa_String account; - } lsa_ReplicaSourceInfo; - - typedef struct { - uint32 paged_pool; - uint32 non_paged_pool; - uint32 min_wss; - uint32 max_wss; - uint32 pagefile; - hyper unknown; - } lsa_DefaultQuotaInfo; - - typedef struct { - hyper modified_id; - NTTIME db_create_time; - } lsa_ModificationInfo; - - typedef struct { - uint8 shutdown_on_full; - } lsa_AuditFullSetInfo; - - typedef struct { - uint16 unknown; /* an midl padding bug? */ - uint8 shutdown_on_full; - uint8 log_is_full; - } lsa_AuditFullQueryInfo; - - typedef struct { - /* it's important that we use the lsa_StringLarge here, - * because otherwise windows clients result with such dns hostnames - * e.g. w2k3-client.samba4.samba.orgsamba4.samba.org - * where it should be - * w2k3-client.samba4.samba.org - */ - lsa_StringLarge name; - lsa_StringLarge dns_domain; - lsa_StringLarge dns_forest; - GUID domain_guid; - dom_sid2 *sid; - } lsa_DnsDomainInfo; - - typedef enum { - LSA_POLICY_INFO_AUDIT_LOG=1, - LSA_POLICY_INFO_AUDIT_EVENTS=2, - LSA_POLICY_INFO_DOMAIN=3, - LSA_POLICY_INFO_PD=4, - LSA_POLICY_INFO_ACCOUNT_DOMAIN=5, - LSA_POLICY_INFO_ROLE=6, - LSA_POLICY_INFO_REPLICA=7, - LSA_POLICY_INFO_QUOTA=8, - LSA_POLICY_INFO_DB=9, - LSA_POLICY_INFO_AUDIT_FULL_SET=10, - LSA_POLICY_INFO_AUDIT_FULL_QUERY=11, - LSA_POLICY_INFO_DNS=12, - LSA_POLICY_INFO_DNS_INT=13, - LSA_POLICY_INFO_LOCAL_ACCOUNT_DOMAIN=14 - } lsa_PolicyInfo; - - typedef [switch_type(uint16)] union { - [case(LSA_POLICY_INFO_AUDIT_LOG)] lsa_AuditLogInfo audit_log; - [case(LSA_POLICY_INFO_AUDIT_EVENTS)] lsa_AuditEventsInfo audit_events; - [case(LSA_POLICY_INFO_DOMAIN)] lsa_DomainInfo domain; - [case(LSA_POLICY_INFO_PD)] lsa_PDAccountInfo pd; - [case(LSA_POLICY_INFO_ACCOUNT_DOMAIN)] lsa_DomainInfo account_domain; - [case(LSA_POLICY_INFO_ROLE)] lsa_ServerRole role; - [case(LSA_POLICY_INFO_REPLICA)] lsa_ReplicaSourceInfo replica; - [case(LSA_POLICY_INFO_QUOTA)] lsa_DefaultQuotaInfo quota; - [case(LSA_POLICY_INFO_DB)] lsa_ModificationInfo db; - [case(LSA_POLICY_INFO_AUDIT_FULL_SET)] lsa_AuditFullSetInfo auditfullset; - [case(LSA_POLICY_INFO_AUDIT_FULL_QUERY)] lsa_AuditFullQueryInfo auditfullquery; - [case(LSA_POLICY_INFO_DNS)] lsa_DnsDomainInfo dns; - } lsa_PolicyInformation; - - NTSTATUS lsa_QueryInfoPolicy ( - [in] policy_handle *handle, - [in] lsa_PolicyInfo level, - [out,unique,switch_is(level)] lsa_PolicyInformation *info - ); - - /******************/ - /* Function: 0x08 */ - NTSTATUS lsa_SetInfoPolicy ( - [in] policy_handle *handle, - [in] lsa_PolicyInfo level, - [in,switch_is(level)] lsa_PolicyInformation *info - ); - - /******************/ - /* Function: 0x09 */ - [todo] NTSTATUS lsa_ClearAuditLog (); - - /******************/ - /* Function: 0x0a */ - [public] NTSTATUS lsa_CreateAccount ( - [in] policy_handle *handle, - [in] dom_sid2 *sid, - [in] lsa_AccountAccessMask access_mask, - [out] policy_handle *acct_handle - ); - - /******************/ - /* NOTE: This only returns accounts that have at least - one privilege set - */ - /* Function: 0x0b */ - typedef struct { - dom_sid2 *sid; - } lsa_SidPtr; - - typedef [public] struct { - [range(0,1000)] uint32 num_sids; - [size_is(num_sids)] lsa_SidPtr *sids; - } lsa_SidArray; - - [public] NTSTATUS lsa_EnumAccounts ( - [in] policy_handle *handle, - [in,out] uint32 *resume_handle, - [in,range(0,8192)] uint32 num_entries, - [out] lsa_SidArray *sids - ); - - - /*************************************************/ - /* Function: 0x0c */ - - [public] NTSTATUS lsa_CreateTrustedDomain( - [in] policy_handle *handle, - [in] lsa_DomainInfo *info, - [in] lsa_DomainAccessMask access_mask, - [out] policy_handle *trustdom_handle - ); - - - /******************/ - /* Function: 0x0d */ - - /* w2k3 treats max_size as max_domains*60 */ - const int LSA_ENUM_TRUST_DOMAIN_MULTIPLIER = 60; - - typedef struct { - uint32 count; - [size_is(count)] lsa_DomainInfo *domains; - } lsa_DomainList; - - NTSTATUS lsa_EnumTrustDom ( - [in] policy_handle *handle, - [in,out] uint32 *resume_handle, - [in] uint32 max_size, - [out] lsa_DomainList *domains - ); - - - /******************/ - /* Function: 0x0e */ - typedef [public] enum { - SID_NAME_USE_NONE = 0,/* NOTUSED */ - SID_NAME_USER = 1, /* user */ - SID_NAME_DOM_GRP = 2, /* domain group */ - SID_NAME_DOMAIN = 3, /* domain: don't know what this is */ - SID_NAME_ALIAS = 4, /* local group */ - SID_NAME_WKN_GRP = 5, /* well-known group */ - SID_NAME_DELETED = 6, /* deleted account: needed for c2 rating */ - SID_NAME_INVALID = 7, /* invalid account */ - SID_NAME_UNKNOWN = 8, /* oops. */ - SID_NAME_COMPUTER = 9 /* machine */ - } lsa_SidType; - - typedef struct { - lsa_SidType sid_type; - uint32 rid; - uint32 sid_index; - } lsa_TranslatedSid; - - typedef struct { - [range(0,1000)] uint32 count; - [size_is(count)] lsa_TranslatedSid *sids; - } lsa_TransSidArray; - - const int LSA_REF_DOMAIN_LIST_MULTIPLIER = 32; - typedef struct { - [range(0,1000)] uint32 count; - [size_is(count)] lsa_DomainInfo *domains; - uint32 max_size; - } lsa_RefDomainList; - - /* Level 1: Ask everywhere - * Level 2: Ask domain and trusted domains, no builtin and wkn - * Level 3: Only ask domain - * Level 4: W2k3ad: Only ask AD trusts - * Level 5: Only ask transitive forest trusts - * Level 6: Like 4 - */ - - typedef enum { - LSA_LOOKUP_NAMES_ALL = 1, - LSA_LOOKUP_NAMES_DOMAINS_ONLY = 2, - LSA_LOOKUP_NAMES_PRIMARY_DOMAIN_ONLY = 3, - LSA_LOOKUP_NAMES_UPLEVEL_TRUSTS_ONLY = 4, - LSA_LOOKUP_NAMES_FOREST_TRUSTS_ONLY = 5, - LSA_LOOKUP_NAMES_UPLEVEL_TRUSTS_ONLY2 = 6 - } lsa_LookupNamesLevel; - - [public] NTSTATUS lsa_LookupNames ( - [in] policy_handle *handle, - [in,range(0,1000)] uint32 num_names, - [in,size_is(num_names)] lsa_String names[], - [out,unique] lsa_RefDomainList *domains, - [in,out] lsa_TransSidArray *sids, - [in] lsa_LookupNamesLevel level, - [in,out] uint32 *count - ); - - - /******************/ - /* Function: 0x0f */ - - typedef struct { - lsa_SidType sid_type; - lsa_String name; - uint32 sid_index; - } lsa_TranslatedName; - - typedef struct { - [range(0,1000)] uint32 count; - [size_is(count)] lsa_TranslatedName *names; - } lsa_TransNameArray; - - [public] NTSTATUS lsa_LookupSids ( - [in] policy_handle *handle, - [in] lsa_SidArray *sids, - [out,unique] lsa_RefDomainList *domains, - [in,out] lsa_TransNameArray *names, - [in] uint16 level, - [in,out] uint32 *count - ); - - - /* Function: 0x10 */ - [public] NTSTATUS lsa_CreateSecret( - [in] policy_handle *handle, - [in] lsa_String name, - [in] lsa_SecretAccessMask access_mask, - [out] policy_handle *sec_handle - ); - - - /*****************************************/ - /* Function: 0x11 */ - NTSTATUS lsa_OpenAccount ( - [in] policy_handle *handle, - [in] dom_sid2 *sid, - [in] lsa_AccountAccessMask access_mask, - [out] policy_handle *acct_handle - ); - - - /****************************************/ - /* Function: 0x12 */ - - typedef struct { - lsa_LUID luid; - uint32 attribute; - } lsa_LUIDAttribute; - - typedef struct { - [range(0,1000)] uint32 count; - uint32 unknown; - [size_is(count)] lsa_LUIDAttribute set[*]; - } lsa_PrivilegeSet; - - NTSTATUS lsa_EnumPrivsAccount ( - [in] policy_handle *handle, - [out,unique] lsa_PrivilegeSet *privs - ); - - - /****************************************/ - /* Function: 0x13 */ - NTSTATUS lsa_AddPrivilegesToAccount( - [in] policy_handle *handle, - [in] lsa_PrivilegeSet *privs - ); - - - /****************************************/ - /* Function: 0x14 */ - NTSTATUS lsa_RemovePrivilegesFromAccount( - [in] policy_handle *handle, - [in] uint8 remove_all, - [in,unique] lsa_PrivilegeSet *privs - ); - - /* Function: 0x15 */ - [todo] NTSTATUS lsa_GetQuotasForAccount(); - - /* Function: 0x16 */ - [todo] NTSTATUS lsa_SetQuotasForAccount(); - - /* Function: 0x17 */ - [todo] NTSTATUS lsa_GetSystemAccessAccount(); - /* Function: 0x18 */ - [todo] NTSTATUS lsa_SetSystemAccessAccount(); - - /* Function: 0x19 */ - NTSTATUS lsa_OpenTrustedDomain( - [in] policy_handle *handle, - [in] dom_sid2 *sid, - [in] lsa_DomainAccessMask access_mask, - [out] policy_handle *trustdom_handle - ); - - typedef [flag(NDR_PAHEX)] struct { - uint32 length; - uint32 size; - [size_is(size),length_is(length)] uint8 *data; - } lsa_DATA_BUF; - - typedef [flag(NDR_PAHEX)] struct { - [range(0,65536)] uint32 size; - [size_is(size)] uint8 *data; - } lsa_DATA_BUF2; - - typedef enum { - LSA_TRUSTED_DOMAIN_INFO_NAME = 1, - LSA_TRUSTED_DOMAIN_INFO_CONTROLLERS_INFO = 2, - LSA_TRUSTED_DOMAIN_INFO_POSIX_OFFSET = 3, - LSA_TRUSTED_DOMAIN_INFO_PASSWORD = 4, - LSA_TRUSTED_DOMAIN_INFO_BASIC = 5, - LSA_TRUSTED_DOMAIN_INFO_INFO_EX = 6, - LSA_TRUSTED_DOMAIN_INFO_AUTH_INFO = 7, - LSA_TRUSTED_DOMAIN_INFO_FULL_INFO = 8, - LSA_TRUSTED_DOMAIN_INFO_11 = 11, - LSA_TRUSTED_DOMAIN_INFO_INFO_ALL = 12 - } lsa_TrustDomInfoEnum; - - typedef struct { - lsa_StringLarge netbios_name; - } lsa_TrustDomainInfoName; - - typedef struct { - uint32 posix_offset; - } lsa_TrustDomainInfoPosixOffset; - - typedef struct { - lsa_DATA_BUF *password; - lsa_DATA_BUF *old_password; - } lsa_TrustDomainInfoPassword; - - typedef struct { - lsa_String netbios_name; - dom_sid2 *sid; - } lsa_TrustDomainInfoBasic; - - typedef struct { - lsa_StringLarge domain_name; - lsa_StringLarge netbios_name; - dom_sid2 *sid; - uint32 trust_direction; - uint32 trust_type; - uint32 trust_attributes; - } lsa_TrustDomainInfoInfoEx; - - typedef struct { - NTTIME_hyper last_update_time; - uint32 secret_type; - lsa_DATA_BUF2 data; - } lsa_TrustDomainInfoBuffer; - - typedef struct { - uint32 incoming_count; - lsa_TrustDomainInfoBuffer *incoming_current_auth_info; - lsa_TrustDomainInfoBuffer *incoming_previous_auth_info; - uint32 outgoing_count; - lsa_TrustDomainInfoBuffer *outgoing_current_auth_info; - lsa_TrustDomainInfoBuffer *outgoing_previous_auth_info; - } lsa_TrustDomainInfoAuthInfo; - - typedef struct { - lsa_TrustDomainInfoInfoEx info_ex; - lsa_TrustDomainInfoPosixOffset posix_offset; - lsa_TrustDomainInfoAuthInfo auth_info; - } lsa_TrustDomainInfoFullInfo; - - typedef struct { - lsa_TrustDomainInfoInfoEx info_ex; - lsa_DATA_BUF2 data1; - } lsa_TrustDomainInfo11; - - typedef struct { - lsa_TrustDomainInfoInfoEx info_ex; - lsa_DATA_BUF2 data1; - lsa_TrustDomainInfoPosixOffset posix_offset; - lsa_TrustDomainInfoAuthInfo auth_info; - } lsa_TrustDomainInfoInfoAll; - - typedef [switch_type(lsa_TrustDomInfoEnum)] union { - [case(LSA_TRUSTED_DOMAIN_INFO_NAME)] lsa_TrustDomainInfoName name; - [case(LSA_TRUSTED_DOMAIN_INFO_POSIX_OFFSET)] lsa_TrustDomainInfoPosixOffset posix_offset; - [case(LSA_TRUSTED_DOMAIN_INFO_PASSWORD)] lsa_TrustDomainInfoPassword password; - [case(LSA_TRUSTED_DOMAIN_INFO_BASIC)] lsa_TrustDomainInfoBasic info_basic; - [case(LSA_TRUSTED_DOMAIN_INFO_INFO_EX)] lsa_TrustDomainInfoInfoEx info_ex; - [case(LSA_TRUSTED_DOMAIN_INFO_AUTH_INFO)] lsa_TrustDomainInfoAuthInfo auth_info; - [case(LSA_TRUSTED_DOMAIN_INFO_FULL_INFO)] lsa_TrustDomainInfoFullInfo full_info; - [case(LSA_TRUSTED_DOMAIN_INFO_11)] lsa_TrustDomainInfo11 info11; - [case(LSA_TRUSTED_DOMAIN_INFO_INFO_ALL)] lsa_TrustDomainInfoInfoAll info_all; - } lsa_TrustedDomainInfo; - - /* Function: 0x1a */ - NTSTATUS lsa_QueryTrustedDomainInfo( - [in] policy_handle *trustdom_handle, - [in] lsa_TrustDomInfoEnum level, - [out,switch_is(level),unique] lsa_TrustedDomainInfo *info - ); - - /* Function: 0x1b */ - [todo] NTSTATUS lsa_SetInformationTrustedDomain(); - - /* Function: 0x1c */ - [public] NTSTATUS lsa_OpenSecret( - [in] policy_handle *handle, - [in] lsa_String name, - [in] lsa_SecretAccessMask access_mask, - [out] policy_handle *sec_handle - ); - - /* Function: 0x1d */ - - [public] NTSTATUS lsa_SetSecret( - [in] policy_handle *sec_handle, - [in,unique] lsa_DATA_BUF *new_val, - [in,unique] lsa_DATA_BUF *old_val - ); - - typedef struct { - lsa_DATA_BUF *buf; - } lsa_DATA_BUF_PTR; - - /* Function: 0x1e */ - [public] NTSTATUS lsa_QuerySecret ( - [in] policy_handle *sec_handle, - [in,out,unique] lsa_DATA_BUF_PTR *new_val, - [in,out,unique] NTTIME_hyper *new_mtime, - [in,out,unique] lsa_DATA_BUF_PTR *old_val, - [in,out,unique] NTTIME_hyper *old_mtime - ); - - /* Function: 0x1f */ - NTSTATUS lsa_LookupPrivValue( - [in] policy_handle *handle, - [in] lsa_String *name, - [out] lsa_LUID *luid - ); - - - /* Function: 0x20 */ - NTSTATUS lsa_LookupPrivName ( - [in] policy_handle *handle, - [in] lsa_LUID *luid, - [out,unique] lsa_StringLarge *name - ); - - - /*******************/ - /* Function: 0x21 */ - NTSTATUS lsa_LookupPrivDisplayName ( - [in] policy_handle *handle, - [in] lsa_String *name, - [out,unique] lsa_StringLarge *disp_name, - /* see http://www.microsoft.com/globaldev/nlsweb/ for - language definitions */ - [in,out] uint16 *language_id, - [in] uint16 unknown - ); - - /* Function: 0x22 */ - [todo] NTSTATUS lsa_DeleteObject(); - - - /*******************/ - /* Function: 0x23 */ - NTSTATUS lsa_EnumAccountsWithUserRight ( - [in] policy_handle *handle, - [in,unique] lsa_String *name, - [out] lsa_SidArray *sids - ); - - /* Function: 0x24 */ - typedef struct { - [string,charset(UTF16)] uint16 *name; - } lsa_RightAttribute; - - typedef struct { - uint32 count; - [size_is(count)] lsa_StringLarge *names; - } lsa_RightSet; - - NTSTATUS lsa_EnumAccountRights ( - [in] policy_handle *handle, - [in] dom_sid2 *sid, - [out] lsa_RightSet *rights - ); - - - /**********************/ - /* Function: 0x25 */ - NTSTATUS lsa_AddAccountRights ( - [in] policy_handle *handle, - [in] dom_sid2 *sid, - [in] lsa_RightSet *rights - ); - - /**********************/ - /* Function: 0x26 */ - NTSTATUS lsa_RemoveAccountRights ( - [in] policy_handle *handle, - [in] dom_sid2 *sid, - [in] uint32 unknown, - [in] lsa_RightSet *rights - ); - - /* Function: 0x27 */ - NTSTATUS lsa_QueryTrustedDomainInfoBySid( - [in] policy_handle *handle, - [in] dom_sid2 *dom_sid, - [in] lsa_TrustDomInfoEnum level, - [out,switch_is(level),unique] lsa_TrustedDomainInfo *info - ); - - /* Function: 0x28 */ - [todo] NTSTATUS lsa_SetTrustedDomainInfo(); - /* Function: 0x29 */ - NTSTATUS lsa_DeleteTrustedDomain( - [in] policy_handle *handle, - [in] dom_sid2 *dom_sid - ); - - /* Function: 0x2a */ - [todo] NTSTATUS lsa_StorePrivateData(); - /* Function: 0x2b */ - [todo] NTSTATUS lsa_RetrievePrivateData(); - - - /**********************/ - /* Function: 0x2c */ - [public] NTSTATUS lsa_OpenPolicy2 ( - [in,unique] [string,charset(UTF16)] uint16 *system_name, - [in] lsa_ObjectAttribute *attr, - [in] lsa_PolicyAccessMask access_mask, - [out] policy_handle *handle - ); - - /**********************/ - /* Function: 0x2d */ - typedef struct { - lsa_String *string; - } lsa_StringPointer; - - NTSTATUS lsa_GetUserName( - [in,unique] [string,charset(UTF16)] uint16 *system_name, - [in,out,unique] lsa_String *account_name, - [in,out,unique] lsa_StringPointer *authority_name - ); - - /**********************/ - /* Function: 0x2e */ - - NTSTATUS lsa_QueryInfoPolicy2( - [in] policy_handle *handle, - [in] lsa_PolicyInfo level, - [out,unique,switch_is(level)] lsa_PolicyInformation *info - ); - - /* Function 0x2f */ - NTSTATUS lsa_SetInfoPolicy2( - [in] policy_handle *handle, - [in] lsa_PolicyInfo level, - [in,switch_is(level)] lsa_PolicyInformation *info - ); - - /**********************/ - /* Function 0x30 */ - NTSTATUS lsa_QueryTrustedDomainInfoByName( - [in] policy_handle *handle, - [in] lsa_String trusted_domain, - [in] lsa_TrustDomInfoEnum level, - [out,unique,switch_is(level)] lsa_TrustedDomainInfo *info - ); - - /**********************/ - /* Function 0x31 */ - NTSTATUS lsa_SetTrustedDomainInfoByName( - [in] policy_handle *handle, - [in] lsa_String trusted_domain, - [in] lsa_TrustDomInfoEnum level, - [in,unique,switch_is(level)] lsa_TrustedDomainInfo *info - ); - - /* Function 0x32 */ - - /* w2k3 treats max_size as max_domains*82 */ - const int LSA_ENUM_TRUST_DOMAIN_EX_MULTIPLIER = 82; - - typedef struct { - uint32 count; - [size_is(count)] lsa_TrustDomainInfoInfoEx *domains; - } lsa_DomainListEx; - - NTSTATUS lsa_EnumTrustedDomainsEx ( - [in] policy_handle *handle, - [in,out] uint32 *resume_handle, - [out] lsa_DomainListEx *domains, - [in] uint32 max_size - ); - - - /* Function 0x33 */ - [todo] NTSTATUS lsa_CreateTrustedDomainEx(); - - /* Function 0x34 */ - NTSTATUS lsa_CloseTrustedDomainEx( - [in,out] policy_handle *handle - ); - - /* Function 0x35 */ - - /* w2k3 returns either 0x000bbbd000000000 or 0x000a48e800000000 - for unknown6 - gd */ - typedef struct { - uint32 enforce_restrictions; - hyper service_tkt_lifetime; - hyper user_tkt_lifetime; - hyper user_tkt_renewaltime; - hyper clock_skew; - hyper unknown6; - } lsa_DomainInfoKerberos; - - typedef struct { - uint32 blob_size; - [size_is(blob_size)] uint8 *efs_blob; - } lsa_DomainInfoEfs; - - typedef enum { - LSA_DOMAIN_INFO_POLICY_QOS=1, - LSA_DOMAIN_INFO_POLICY_EFS=2, - LSA_DOMAIN_INFO_POLICY_KERBEROS=3 - } lsa_DomainInfoEnum; - - typedef [switch_type(uint16)] union { - [case(LSA_DOMAIN_INFO_POLICY_EFS)] lsa_DomainInfoEfs efs_info; - [case(LSA_DOMAIN_INFO_POLICY_KERBEROS)] lsa_DomainInfoKerberos kerberos_info; - } lsa_DomainInformationPolicy; - - NTSTATUS lsa_QueryDomainInformationPolicy( - [in] policy_handle *handle, - [in] lsa_DomainInfoEnum level, - [out,unique,switch_is(level)] lsa_DomainInformationPolicy *info - ); - - /* Function 0x36 */ - NTSTATUS lsa_SetDomainInformationPolicy( - [in] policy_handle *handle, - [in] lsa_DomainInfoEnum level, - [in,unique,switch_is(level)] lsa_DomainInformationPolicy *info - ); - - /**********************/ - /* Function 0x37 */ - NTSTATUS lsa_OpenTrustedDomainByName( - [in] policy_handle *handle, - [in] lsa_String name, - [in] lsa_DomainAccessMask access_mask, - [out] policy_handle *trustdom_handle - ); - - /* Function 0x38 */ - [todo] NTSTATUS lsa_TestCall(); - - /**********************/ - /* Function 0x39 */ - - typedef struct { - lsa_SidType sid_type; - lsa_String name; - uint32 sid_index; - uint32 unknown; - } lsa_TranslatedName2; - - typedef struct { - [range(0,1000)] uint32 count; - [size_is(count)] lsa_TranslatedName2 *names; - } lsa_TransNameArray2; - - [public] NTSTATUS lsa_LookupSids2( - [in] policy_handle *handle, - [in] lsa_SidArray *sids, - [out,unique] lsa_RefDomainList *domains, - [in,out] lsa_TransNameArray2 *names, - [in] uint16 level, - [in,out] uint32 *count, - [in] uint32 unknown1, - [in] uint32 unknown2 - ); - - /**********************/ - /* Function 0x3a */ - - typedef struct { - lsa_SidType sid_type; - uint32 rid; - uint32 sid_index; - uint32 unknown; - } lsa_TranslatedSid2; - - typedef struct { - [range(0,1000)] uint32 count; - [size_is(count)] lsa_TranslatedSid2 *sids; - } lsa_TransSidArray2; - - [public] NTSTATUS lsa_LookupNames2 ( - [in] policy_handle *handle, - [in,range(0,1000)] uint32 num_names, - [in,size_is(num_names)] lsa_String names[], - [out,unique] lsa_RefDomainList *domains, - [in,out] lsa_TransSidArray2 *sids, - [in] lsa_LookupNamesLevel level, - [in,out] uint32 *count, - [in] uint32 unknown1, - [in] uint32 unknown2 - ); - - /* Function 0x3b */ - [todo] NTSTATUS lsa_CreateTrustedDomainEx2(); - - /* Function 0x3c */ - [todo] NTSTATUS lsa_CREDRWRITE(); - - /* Function 0x3d */ - [todo] NTSTATUS lsa_CREDRREAD(); - - /* Function 0x3e */ - [todo] NTSTATUS lsa_CREDRENUMERATE(); - - /* Function 0x3f */ - [todo] NTSTATUS lsa_CREDRWRITEDOMAINCREDENTIALS(); - - /* Function 0x40 */ - [todo] NTSTATUS lsa_CREDRREADDOMAINCREDENTIALS(); - - /* Function 0x41 */ - [todo] NTSTATUS lsa_CREDRDELETE(); - - /* Function 0x42 */ - [todo] NTSTATUS lsa_CREDRGETTARGETINFO(); - - /* Function 0x43 */ - [todo] NTSTATUS lsa_CREDRPROFILELOADED(); - - /**********************/ - /* Function 0x44 */ - typedef struct { - lsa_SidType sid_type; - dom_sid2 *sid; - uint32 sid_index; - uint32 unknown; - } lsa_TranslatedSid3; - - typedef struct { - [range(0,1000)] uint32 count; - [size_is(count)] lsa_TranslatedSid3 *sids; - } lsa_TransSidArray3; - - [public] NTSTATUS lsa_LookupNames3 ( - [in] policy_handle *handle, - [in,range(0,1000)] uint32 num_names, - [in,size_is(num_names)] lsa_String names[], - [out,unique] lsa_RefDomainList *domains, - [in,out] lsa_TransSidArray3 *sids, - [in] lsa_LookupNamesLevel level, - [in,out] uint32 *count, - [in] uint32 unknown1, - [in] uint32 unknown2 - ); - - /* Function 0x45 */ - [todo] NTSTATUS lsa_CREDRGETSESSIONTYPES(); - - /* Function 0x46 */ - [todo] NTSTATUS lsa_LSARREGISTERAUDITEVENT(); - - /* Function 0x47 */ - [todo] NTSTATUS lsa_LSARGENAUDITEVENT(); - - /* Function 0x48 */ - [todo] NTSTATUS lsa_LSARUNREGISTERAUDITEVENT(); - - /* Function 0x49 */ - typedef struct { - [range(0,131072)] uint32 length; - [size_is(length)] uint8 *data; - } lsa_ForestTrustBinaryData; - - typedef struct { - dom_sid2 *domain_sid; - lsa_StringLarge dns_domain_name; - lsa_StringLarge netbios_domain_name; - } lsa_ForestTrustDomainInfo; - - typedef [switch_type(uint32)] union { - [case(LSA_FOREST_TRUST_TOP_LEVEL_NAME)] lsa_String top_level_name; - [case(LSA_FOREST_TRUST_TOP_LEVEL_NAME_EX)] lsa_StringLarge top_level_name_ex; - [case(LSA_FOREST_TRUST_DOMAIN_INFO)] lsa_ForestTrustDomainInfo domain_info; - [default] lsa_ForestTrustBinaryData data; - } lsa_ForestTrustData; - - typedef [v1_enum] enum { - LSA_FOREST_TRUST_TOP_LEVEL_NAME = 0, - LSA_FOREST_TRUST_TOP_LEVEL_NAME_EX = 1, - LSA_FOREST_TRUST_DOMAIN_INFO = 2, - LSA_FOREST_TRUST_RECORD_TYPE_LAST = 3 - } lsa_ForestTrustRecordType; - - typedef struct { - uint32 flags; - lsa_ForestTrustRecordType level; - hyper unknown; - [switch_is(level)] lsa_ForestTrustData forest_trust_data; - } lsa_ForestTrustRecord; - - typedef [public] struct { - [range(0,4000)] uint32 count; - [size_is(count)] lsa_ForestTrustRecord **entries; - } lsa_ForestTrustInformation; - - NTSTATUS lsa_lsaRQueryForestTrustInformation( - [in] policy_handle *handle, - [in,ref] lsa_String *trusted_domain_name, - [in] uint16 unknown, /* level ? */ - [out,ref] lsa_ForestTrustInformation **forest_trust_info - ); - - /* Function 0x4a */ - [todo] NTSTATUS lsa_LSARSETFORESTTRUSTINFORMATION(); - - /* Function 0x4b */ - [todo] NTSTATUS lsa_CREDRRENAME(); - - /*****************/ - /* Function 0x4c */ - - [public] NTSTATUS lsa_LookupSids3( - [in] lsa_SidArray *sids, - [out,unique] lsa_RefDomainList *domains, - [in,out] lsa_TransNameArray2 *names, - [in] uint16 level, - [in,out] uint32 *count, - [in] uint32 unknown1, - [in] uint32 unknown2 - ); - - /* Function 0x4d */ - NTSTATUS lsa_LookupNames4( - [in,range(0,1000)] uint32 num_names, - [in,size_is(num_names)] lsa_String names[], - [out,unique] lsa_RefDomainList *domains, - [in,out] lsa_TransSidArray3 *sids, - [in] lsa_LookupNamesLevel level, - [in,out] uint32 *count, - [in] uint32 unknown1, - [in] uint32 unknown2 - ); - - /* Function 0x4e */ - [todo] NTSTATUS lsa_LSAROPENPOLICYSCE(); - - /* Function 0x4f */ - [todo] NTSTATUS lsa_LSARADTREGISTERSECURITYEVENTSOURCE(); - - /* Function 0x50 */ - [todo] NTSTATUS lsa_LSARADTUNREGISTERSECURITYEVENTSOURCE(); - - /* Function 0x51 */ - [todo] NTSTATUS lsa_LSARADTREPORTSECURITYEVENT(); - -} diff --git a/epan/dissectors/pidl/lsa/lsa.cnf b/epan/dissectors/pidl/lsa/lsa.cnf new file mode 100644 index 0000000000..2138ef8322 --- /dev/null +++ b/epan/dissectors/pidl/lsa/lsa.cnf @@ -0,0 +1,387 @@ +# +# policyhandle tracking +# This block is to specify where a policyhandle is opened and where it is +# closed so that policyhandles when dissected contain nice info such as +# [opened in xxx] [closed in yyy] +# +# Policyhandles are opened in these functions +PARAM_VALUE lsarpc_dissect_element_lsa_OpenPolicy_handle_ PIDL_POLHND_OPEN|PIDL_POLHND_TYPE_LSA_POLICY +PARAM_VALUE lsarpc_dissect_element_lsa_OpenPolicy2_handle_ PIDL_POLHND_OPEN|PIDL_POLHND_TYPE_LSA_POLICY +PARAM_VALUE lsarpc_dissect_element_lsa_CreateAccount_acct_handle_ PIDL_POLHND_OPEN|PIDL_POLHND_TYPE_LSA_ACCOUNT +PARAM_VALUE lsarpc_dissect_element_lsa_OpenAccount_acct_handle_ PIDL_POLHND_OPEN|PIDL_POLHND_TYPE_LSA_ACCOUNT +PARAM_VALUE lsarpc_dissect_element_lsa_CreateTrustedDomain_trustdom_handle_ PIDL_POLHND_OPEN|PIDL_POLHND_TYPE_LSA_DOMAIN +PARAM_VALUE lsarpc_dissect_element_lsa_OpenTrustedDomain_trustdom_handle_ PIDL_POLHND_OPEN|PIDL_POLHND_TYPE_LSA_DOMAIN +PARAM_VALUE lsarpc_dissect_element_lsa_OpenTrustedDomainByName_trustdom_handle_ PIDL_POLHND_OPEN|PIDL_POLHND_TYPE_LSA_DOMAIN +PARAM_VALUE lsarpc_dissect_element_lsa_CreateSecret_sec_handle_ PIDL_POLHND_OPEN|PIDL_POLHND_TYPE_LSA_SECRET +PARAM_VALUE lsarpc_dissect_element_lsa_OpenSecret_sec_handle_ PIDL_POLHND_OPEN|PIDL_POLHND_TYPE_LSA_SECRET +# Policyhandles are closed in these functions +PARAM_VALUE lsarpc_dissect_element_lsa_Close_handle_ PIDL_POLHND_CLOSE +PARAM_VALUE lsarpc_dissect_element_lsa_Delete_handle_ PIDL_POLHND_CLOSE +PARAM_VALUE lsarpc_dissect_element_lsa_CloseTrustedDomainEx_handle_ PIDL_POLHND_CLOSE + + + +TYPE hyper "offset=cnf_dissect_hyper(tvb, offset, pinfo, tree, di, drep, @PARAM@, @HF@);" FT_UINT64 BASE_DEC 0 NULL 8 + +TYPE sec_desc_buf "offset=cnf_dissect_sec_desc_buf(tvb, offset, pinfo, tree, di, drep);" FT_NONE BASE_NONE 0 NULL 4 +HF_FIELD hf_lsarpc_sec_desc_buf_len "Sec Desc Buf Len" "lsarpc.sec_desc_buf_len" FT_UINT32 BASE_DEC NULL 0 "" "" "" + + +MANUAL lsarpc_dissect_bitmap_lsa_PolicyAccessMask +MANUAL lsarpc_dissect_bitmap_lsa_AccountAccessMask +MANUAL lsarpc_dissect_bitmap_lsa_SecretAccessMask +MANUAL lsarpc_dissect_bitmap_lsa_DomainAccessMask +HF_FIELD hf_lsarpc_policy_access_mask "Access Mask" "lsarpc.policy.access_mask" FT_UINT32 BASE_HEX NULL 0 "" "" "" +HF_FIELD hf_lsarpc_account_access_mask "Access Mask" "lsarpc.policy.access_mask" FT_UINT32 BASE_HEX NULL 0 "" "" "" +HF_FIELD hf_lsarpc_secret_access_mask "Access Mask" "lsarpc.policy.access_mask" FT_UINT32 BASE_HEX NULL 0 "" "" "" +HF_FIELD hf_lsarpc_domain_access_mask "Access Mask" "lsarpc.policy.access_mask" FT_UINT32 BASE_HEX NULL 0 "" "" "" + +HF_FIELD hf_lsarpc_String_name "String" "lsarpc.lsa.string" FT_STRING BASE_NONE NULL 0 "" "" "" + +MANUAL lsarpc_dissect_element_lsa_LookupNames_names +MANUAL lsarpc_dissect_element_lsa_LookupNames2_names +MANUAL lsarpc_dissect_element_lsa_LookupNames3_names +MANUAL lsarpc_dissect_element_lsa_LookupNames4_names +MANUAL lsarpc_dissect_element_lsa_String_string_ +MANUAL lsarpc_dissect_element_lsa_StringLarge_string_ + +NOEMIT lsarpc_dissect_element_lsa_String_string__ +NOEMIT lsarpc_dissect_element_lsa_StringLarge_string__ +NOEMIT lsarpc_dissect_element_lsa_DomainInfoEfs_efs_blob__ +NOEMIT lsarpc_dissect_element_lsa_LookupNames_names_ +NOEMIT lsarpc_dissect_element_lsa_LookupNames2_names_ +NOEMIT lsarpc_dissect_element_lsa_LookupNames4_names_ + +ETT_FIELD ett_lsarpc_names +HF_FIELD hf_lsarpc_names "Names" "lsarpc.lookup.names" FT_NONE BASE_NONE NULL 0 "" "" "" + + +MANUAL lsarpc_dissect_element_lsa_DomainInfoEfs_efs_blob_ +HF_FIELD hf_lsarpc_efs_blob_len "EFS blob size" "lsarpc.efs.blob_size" FT_UINT32 BASE_DEC NULL 0 "" "" "" + +CODE START + + +static void +lsarpc_policy_specific_rights(tvbuff_t *tvb _U_, gint offset _U_, proto_tree *tree _U_, guint32 access _U_) +{ + proto_tree_add_boolean(tree, hf_lsarpc_lsa_PolicyAccessMask_LSA_POLICY_NOTIFICATION, tvb, offset, 4, access); + proto_tree_add_boolean(tree, hf_lsarpc_lsa_PolicyAccessMask_LSA_POLICY_LOOKUP_NAMES, tvb, offset, 4, access); + proto_tree_add_boolean(tree, hf_lsarpc_lsa_PolicyAccessMask_LSA_POLICY_SERVER_ADMIN, tvb, offset, 4, access); + proto_tree_add_boolean(tree, hf_lsarpc_lsa_PolicyAccessMask_LSA_POLICY_AUDIT_LOG_ADMIN, tvb, offset, 4, access); + proto_tree_add_boolean(tree, hf_lsarpc_lsa_PolicyAccessMask_LSA_POLICY_SET_AUDIT_REQUIREMENTS, tvb, offset, 4, access); + proto_tree_add_boolean(tree, hf_lsarpc_lsa_PolicyAccessMask_LSA_POLICY_SET_DEFAULT_QUOTA_LIMITS, tvb, offset, 4, access); + proto_tree_add_boolean(tree, hf_lsarpc_lsa_PolicyAccessMask_LSA_POLICY_CREATE_PRIVILEGE, tvb, offset, 4, access); + proto_tree_add_boolean(tree, hf_lsarpc_lsa_PolicyAccessMask_LSA_POLICY_CREATE_SECRET, tvb, offset, 4, access); + proto_tree_add_boolean(tree, hf_lsarpc_lsa_PolicyAccessMask_LSA_POLICY_CREATE_ACCOUNT, tvb, offset, 4, access); + proto_tree_add_boolean(tree, hf_lsarpc_lsa_PolicyAccessMask_LSA_POLICY_TRUST_ADMIN, tvb, offset, 4, access); + proto_tree_add_boolean(tree, hf_lsarpc_lsa_PolicyAccessMask_LSA_POLICY_GET_PRIVATE_INFORMATION, tvb, offset, 4, access); + proto_tree_add_boolean(tree, hf_lsarpc_lsa_PolicyAccessMask_LSA_POLICY_VIEW_AUDIT_INFORMATION, tvb, offset, 4, access); + proto_tree_add_boolean(tree, hf_lsarpc_lsa_PolicyAccessMask_LSA_POLICY_VIEW_LOCAL_INFORMATION, tvb, offset, 4, access); +} + +static void +lsarpc_account_specific_rights(tvbuff_t *tvb _U_, gint offset _U_, proto_tree *tree _U_, guint32 access _U_) +{ + proto_tree_add_boolean(tree, hf_lsarpc_lsa_AccountAccessMask_LSA_ACCOUNT_ADJUST_SYSTEM_ACCESS, tvb, offset, 4, access); + proto_tree_add_boolean(tree, hf_lsarpc_lsa_AccountAccessMask_LSA_ACCOUNT_ADJUST_QUOTAS, tvb, offset, 4, access); + proto_tree_add_boolean(tree, hf_lsarpc_lsa_AccountAccessMask_LSA_ACCOUNT_ADJUST_PRIVILEGES, tvb, offset, 4, access); + proto_tree_add_boolean(tree, hf_lsarpc_lsa_AccountAccessMask_LSA_ACCOUNT_VIEW, tvb, offset, 4, access); +} + +static void +lsarpc_secret_specific_rights(tvbuff_t *tvb _U_, gint offset _U_, proto_tree *tree _U_, guint32 access _U_) +{ + proto_tree_add_boolean(tree, hf_lsarpc_lsa_SecretAccessMask_LSA_SECRET_QUERY_VALUE, tvb, offset, 4, access); + proto_tree_add_boolean(tree, hf_lsarpc_lsa_SecretAccessMask_LSA_SECRET_SET_VALUE, tvb, offset, 4, access); +} + +static void +lsarpc_domain_specific_rights(tvbuff_t *tvb _U_, gint offset _U_, proto_tree *tree _U_, guint32 access _U_) +{ + proto_tree_add_boolean(tree, hf_lsarpc_lsa_DomainAccessMask_LSA_DOMAIN_QUERY_AUTH, tvb, offset, 4, access); + proto_tree_add_boolean(tree, hf_lsarpc_lsa_DomainAccessMask_LSA_DOMAIN_SET_AUTH, tvb, offset, 4, access); + proto_tree_add_boolean(tree, hf_lsarpc_lsa_DomainAccessMask_LSA_DOMAIN_SET_POSIX, tvb, offset, 4, access); + proto_tree_add_boolean(tree, hf_lsarpc_lsa_DomainAccessMask_LSA_DOMAIN_QUERY_POSIX, tvb, offset, 4, access); + proto_tree_add_boolean(tree, hf_lsarpc_lsa_DomainAccessMask_LSA_DOMAIN_SET_CONTROLLERS, tvb, offset, 4, access); + proto_tree_add_boolean(tree, hf_lsarpc_lsa_DomainAccessMask_LSA_DOMAIN_QUERY_CONTROLLERS, tvb, offset, 4, access); + proto_tree_add_boolean(tree, hf_lsarpc_lsa_DomainAccessMask_LSA_DOMAIN_QUERY_DOMAIN_NAME, tvb, offset, 4, access); +} + + +struct access_mask_info lsarpc_policy_access_mask_info = { + "LSA Policy", /* Name of specific rights */ + lsarpc_policy_specific_rights, /* Dissection function */ + NULL, /* Generic mapping table */ + NULL /* Standard mapping table */ +}; + +struct access_mask_info lsarpc_account_access_mask_info = { + "LSA Account", /* Name of specific rights */ + lsarpc_account_specific_rights, /* Dissection function */ + NULL, /* Generic mapping table */ + NULL /* Standard mapping table */ +}; + +struct access_mask_info lsarpc_secret_access_mask_info = { + "LSA Secret", /* Name of specific rights */ + lsarpc_secret_specific_rights, /* Dissection function */ + NULL, /* Generic mapping table */ + NULL /* Standard mapping table */ +}; + +struct access_mask_info lsarpc_domain_access_mask_info = { + "LSA Domain", /* Name of specific rights */ + lsarpc_domain_specific_rights, /* Dissection function */ + NULL, /* Generic mapping table */ + NULL /* Standard mapping table */ +}; + +int +lsarpc_dissect_bitmap_lsa_PolicyAccessMask(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep, int hf_index _U_, guint32 param _U_) +{ + offset = dissect_nt_access_mask( + tvb, offset, pinfo, tree, di, drep, hf_lsarpc_policy_access_mask, + &lsarpc_policy_access_mask_info, NULL); + return offset; +} + +int +lsarpc_dissect_bitmap_lsa_AccountAccessMask(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep, int hf_index _U_, guint32 param _U_) +{ + offset = dissect_nt_access_mask( + tvb, offset, pinfo, tree, di, drep, hf_lsarpc_account_access_mask, + &lsarpc_account_access_mask_info, NULL); + return offset; +} + +int +lsarpc_dissect_bitmap_lsa_SecretAccessMask(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep, int hf_index _U_, guint32 param _U_) +{ + offset = dissect_nt_access_mask( + tvb, offset, pinfo, tree, di, drep, hf_lsarpc_secret_access_mask, + &lsarpc_secret_access_mask_info, NULL); + return offset; +} + +int +lsarpc_dissect_bitmap_lsa_DomainAccessMask(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep, int hf_index _U_, guint32 param _U_) +{ + offset = dissect_nt_access_mask( + tvb, offset, pinfo, tree, di, drep, hf_lsarpc_domain_access_mask, + &lsarpc_domain_access_mask_info, NULL); + return offset; +} + +static int +cnf_dissect_sec_desc_buf_(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep) +{ + guint32 len; + e_ctx_hnd *polhnd = NULL; + dcerpc_call_value *dcv = NULL; + guint32 type=0; + struct access_mask_info *ami=NULL; + + if(di->conformant_run){ + /*just a run to handle conformant arrays, nothing to dissect */ + return offset; + } + + offset = dissect_ndr_uint32 (tvb, offset, pinfo, tree, di, drep, + hf_lsarpc_sec_desc_buf_len, &len); + + dcv = (dcerpc_call_value *)di->call_data; + if(dcv){ + polhnd = dcv->pol; + } + if(polhnd){ + dcerpc_fetch_polhnd_data(polhnd, NULL, &type, NULL, NULL, + pinfo->num); + } + switch(type){ + case PIDL_POLHND_TYPE_LSA_POLICY: + ami=&lsarpc_policy_access_mask_info; + break; + case PIDL_POLHND_TYPE_LSA_ACCOUNT: + ami=&lsarpc_account_access_mask_info; + break; + case PIDL_POLHND_TYPE_LSA_SECRET: + ami=&lsarpc_secret_access_mask_info; + break; + case PIDL_POLHND_TYPE_LSA_DOMAIN: + ami=&lsarpc_domain_access_mask_info; + break; + } + + dissect_nt_sec_desc(tvb, offset, pinfo, tree, drep, TRUE, len, ami); + + offset += len; + + return offset; +} + +static int +cnf_dissect_sec_desc_buf(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep) +{ + guint32 len; + + if(di->conformant_run){ + /*just a run to handle conformant arrays, nothing to dissect */ + return offset; + } + + offset = dissect_ndr_uint32 (tvb, offset, pinfo, tree, di, drep, + hf_lsarpc_sec_desc_buf_len, &len); + + offset = dissect_ndr_pointer(tvb, offset, pinfo, tree, di, drep, + cnf_dissect_sec_desc_buf_, NDR_POINTER_UNIQUE, + "LSA SECURITY DESCRIPTOR data:", -1); + + return offset; +} + + +int +lsarpc_dissect_sec_desc_buf(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep){ + return cnf_dissect_sec_desc_buf(tvb, offset, pinfo, tree, di, drep); +} + +static int +lsarpc_dissect_struct_security_descriptor(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di, guint8 *drep _U_, int unused1 _U_, int unused2 _U_){ + return cnf_dissect_sec_desc_buf(tvb, offset, pinfo, tree, di, drep); +} + + +int +lsarpc_dissect_struct_dom_sid2(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di, guint8 *drep _U_, int unused1 _U_, int unused2 _U_) { + /* sid */ + return dissect_ndr_nt_SID(tvb, offset, pinfo, tree, di, drep); + +} + +static int +cnf_dissect_hyper(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep, guint32 param _U_, int hfindex) +{ + offset = dissect_ndr_uint64(tvb, offset, pinfo, tree, di, drep, hfindex, NULL); + + return offset; +} + +# PIDL cant handle top level arrays so we must explicitely go through a +# ref pointer here +static int +lsarpc_dissect_element_lsa_LookupNames3_names_X(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, dcerpc_info* di, guint8 *drep _U_) +{ + proto_item *item = NULL; + proto_tree *tree = NULL; + int old_offset = offset; + + if (parent_tree) { + item = proto_tree_add_item(parent_tree, hf_lsarpc_names, tvb, offset, -1, ENC_NA); + tree = proto_item_add_subtree(item, ett_lsarpc_names); + } + + offset = dissect_ndr_ucarray(tvb, offset, pinfo, tree, di, drep, lsarpc_dissect_element_lsa_LookupNames3_names_); + + proto_item_set_len(item, offset-old_offset); + return offset; +} + +static int +lsarpc_dissect_element_lsa_LookupNames_names(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di, guint8 *drep _U_) +{ + offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, di, drep, lsarpc_dissect_element_lsa_LookupNames3_names_X, NDR_POINTER_REF, "Pointer to Names", hf_lsarpc_names); + + return offset; +} +static int +lsarpc_dissect_element_lsa_LookupNames2_names(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di, guint8 *drep _U_) +{ + offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, di, drep, lsarpc_dissect_element_lsa_LookupNames3_names_X, NDR_POINTER_REF, "Pointer to Names", hf_lsarpc_names); + + return offset; +} +static int +lsarpc_dissect_element_lsa_LookupNames3_names(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di, guint8 *drep _U_) +{ + offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, di, drep, lsarpc_dissect_element_lsa_LookupNames3_names_X, NDR_POINTER_REF, "Pointer to Names", hf_lsarpc_names); + + return offset; +} +static int +lsarpc_dissect_element_lsa_LookupNames4_names(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di, guint8 *drep _U_) +{ + offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, di, drep, lsarpc_dissect_element_lsa_LookupNames3_names_X, NDR_POINTER_REF, "Pointer to Names", hf_lsarpc_names); + + return offset; +} + + + +static int +lsarpc_dissect_element_lsa_String_string_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di, guint8 *drep _U_) +{ + char *data; + + offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, di, drep, sizeof(guint16), hf_lsarpc_String_name, FALSE, &data); + proto_item_append_text(tree, ": %s", data); + + return offset; +} + +static int +lsarpc_dissect_element_lsa_StringLarge_string_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di, guint8 *drep _U_) +{ + char *data; + + offset = dissect_ndr_cvstring(tvb, offset, pinfo, tree, di, drep, sizeof(guint16), hf_lsarpc_String_name, FALSE, &data); + proto_item_append_text(tree, ": %s", data); + + return offset; +} + + + +static int +lsarpc_dissect_element_lsa_DomainInfoEfs_efs_blob_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di, guint8 *drep _U_) +{ + tvbuff_t *next_tvb; + gint len, reported_len; + dissector_handle_t efsblob_handle; + + if(di->conformant_run){ + /*just a run to handle conformant arrays, nothing to dissect */ + return offset; + } + + + offset = dissect_ndr_uint32 (tvb, offset, pinfo, tree, di, drep, + hf_lsarpc_efs_blob_len, &reported_len); + + len = reported_len; + if (len > tvb_captured_length_remaining(tvb, offset)) { + len = tvb_captured_length_remaining(tvb, offset); + } + + next_tvb = tvb_new_subset(tvb, offset, len, reported_len); + + efsblob_handle = find_dissector("efsblob"); + if (efsblob_handle) { + call_dissector(efsblob_handle, next_tvb, pinfo, tree); + } + + offset += reported_len; + + return offset; +} + +CODE END + +HEADER START + +extern int +lsarpc_dissect_sec_desc_buf(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep); +extern int +lsarpc_dissect_struct_dom_sid2(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep, int unused1, int unused2); + +HEADER END diff --git a/epan/dissectors/pidl/lsa/lsa.idl b/epan/dissectors/pidl/lsa/lsa.idl new file mode 100644 index 0000000000..116441545f --- /dev/null +++ b/epan/dissectors/pidl/lsa/lsa.idl @@ -0,0 +1,1122 @@ +#include "idl_types.h" + +/* + lsa interface definition +*/ + +/*import "misc.idl", "security.idl";*/ + +[ uuid("12345778-1234-abcd-ef00-0123456789ab"), + version(0.0), + endpoint("ncacn_np:[\\pipe\\lsarpc]","ncacn_np:[\\pipe\\netlogon]","ncacn_np:[\\pipe\\lsass]", "ncacn_ip_tcp:", "ncalrpc:"), + pointer_default(unique), + helpstring("Local Security Authority") +] interface lsarpc +{ + typedef [bitmap32bit] bitmap { + LSA_POLICY_NOTIFICATION = 0x00001000, + LSA_POLICY_LOOKUP_NAMES = 0x00000800, + LSA_POLICY_SERVER_ADMIN = 0x00000400, + LSA_POLICY_AUDIT_LOG_ADMIN = 0x00000200, + LSA_POLICY_SET_AUDIT_REQUIREMENTS = 0x00000100, + LSA_POLICY_SET_DEFAULT_QUOTA_LIMITS = 0x00000080, + LSA_POLICY_CREATE_PRIVILEGE = 0x00000040, + LSA_POLICY_CREATE_SECRET = 0x00000020, + LSA_POLICY_CREATE_ACCOUNT = 0x00000010, + LSA_POLICY_TRUST_ADMIN = 0x00000008, + LSA_POLICY_GET_PRIVATE_INFORMATION = 0x00000004, + LSA_POLICY_VIEW_AUDIT_INFORMATION = 0x00000002, + LSA_POLICY_VIEW_LOCAL_INFORMATION = 0x00000001 + } lsa_PolicyAccessMask; + + typedef [bitmap32bit] bitmap { + LSA_ACCOUNT_ADJUST_SYSTEM_ACCESS = 0x00000008, + LSA_ACCOUNT_ADJUST_QUOTAS = 0x00000004, + LSA_ACCOUNT_ADJUST_PRIVILEGES = 0x00000002, + LSA_ACCOUNT_VIEW = 0x00000001 + } lsa_AccountAccessMask; + + typedef [bitmap32bit] bitmap { + LSA_DOMAIN_QUERY_AUTH = 0x00000040, + LSA_DOMAIN_SET_AUTH = 0x00000020, + LSA_DOMAIN_SET_POSIX = 0x00000010, + LSA_DOMAIN_QUERY_POSIX = 0x00000008, + LSA_DOMAIN_SET_CONTROLLERS = 0x00000004, + LSA_DOMAIN_QUERY_CONTROLLERS = 0x00000002, + LSA_DOMAIN_QUERY_DOMAIN_NAME = 0x00000001 + } lsa_DomainAccessMask; + + typedef [bitmap32bit] bitmap { + LSA_SECRET_QUERY_VALUE = 0x00000002, + LSA_SECRET_SET_VALUE = 0x00000001 + } lsa_SecretAccessMask; + + typedef bitmap security_secinfo security_secinfo; + + typedef [public] struct { + [value(2*strlen_m(string))] uint16 length; + [value(2*strlen_m(string))] uint16 size; + [charset(UTF16),size_is(size/2),length_is(length/2)] uint16 *string; + } lsa_String; + + typedef [public] struct { + [value(2*strlen_m(string))] uint16 length; + [value(2*strlen_m_term(string))] uint16 size; + [charset(UTF16),size_is(size/2),length_is(length/2)] uint16 *string; + } lsa_StringLarge; + + typedef [public] struct { + uint32 count; + [size_is(count)] lsa_String *names; + } lsa_Strings; + + typedef [public] struct { + [value(strlen_m(string))] uint16 length; + [value(strlen_m(string))] uint16 size; + [charset(DOS),size_is(size),length_is(length)] uint8 *string; + } lsa_AsciiString; + + typedef [public] struct { + [value(strlen_m(string))] uint16 length; + [value(strlen_m_term(string))] uint16 size; + [charset(DOS),size_is(size),length_is(length)] uint8 *string; + } lsa_AsciiStringLarge; + + /******************/ + /* Function: 0x00 */ + NTSTATUS lsa_Close ( + [in,out] policy_handle *handle + ); + + + /******************/ + /* Function: 0x01 */ + [public] NTSTATUS lsa_Delete ( + [in] policy_handle *handle + ); + + + /******************/ + /* Function: 0x02 */ + typedef struct { + uint32 low; + uint32 high; + } lsa_LUID; + + typedef struct { + lsa_StringLarge name; + lsa_LUID luid; + } lsa_PrivEntry; + + typedef struct { + uint32 count; + [size_is(count)] lsa_PrivEntry *privs; + } lsa_PrivArray; + + [public] NTSTATUS lsa_EnumPrivs ( + [in] policy_handle *handle, + [in,out] uint32 *resume_handle, + [in] uint32 max_count, + [out] lsa_PrivArray *privs + ); + + /******************/ + /* Function: 0x03 */ + + NTSTATUS lsa_QuerySecurity ( + [in] policy_handle *handle, + [in] security_secinfo sec_info, + [out,unique] sec_desc_buf *sdbuf + ); + + + /******************/ + /* Function: 0x04 */ + [todo] NTSTATUS lsa_SetSecObj (); + + + /******************/ + /* Function: 0x05 */ + [todo] NTSTATUS lsa_ChangePassword (); + + + /******************/ + /* Function: 0x06 */ + + typedef enum { + LSA_SECURITY_ANONYMOUS = 0, + LSA_SECURITY_IDENTIFICATION = 1, + LSA_SECURITY_IMPERSONATION = 2, + LSA_SECURITY_DELEGATION = 3 + } lsa_SecurityImpersonationLevel; + + typedef struct { + uint32 len; /* ignored */ + lsa_SecurityImpersonationLevel impersonation_level; + uint8 context_mode; + uint8 effective_only; + } lsa_QosInfo; + + typedef struct { + uint32 len; /* ignored */ + uint8 *root_dir; + [string,charset(UTF16)] uint16 *object_name; + uint32 attributes; + security_descriptor *sec_desc; + lsa_QosInfo *sec_qos; + } lsa_ObjectAttribute; + + /* notice the screwup with the system_name - thats why MS created + OpenPolicy2 */ + [public] NTSTATUS lsa_OpenPolicy ( + [in,unique] uint16 *system_name, + [in] lsa_ObjectAttribute *attr, + [in] lsa_PolicyAccessMask access_mask, + [out] policy_handle *handle + ); + + + + /******************/ + /* Function: 0x07 */ + + typedef struct { + uint32 percent_full; + uint32 log_size; + NTTIME retention_time; + uint8 shutdown_in_progress; + NTTIME time_to_shutdown; + uint32 next_audit_record; + uint32 unknown; + } lsa_AuditLogInfo; + + typedef [v1_enum] enum { + LSA_AUDIT_POLICY_NONE=0, + LSA_AUDIT_POLICY_SUCCESS=1, + LSA_AUDIT_POLICY_FAILURE=2, + LSA_AUDIT_POLICY_ALL=(LSA_AUDIT_POLICY_SUCCESS|LSA_AUDIT_POLICY_FAILURE), + LSA_AUDIT_POLICY_CLEAR=4 + } lsa_PolicyAuditPolicy; + + typedef enum { + LSA_AUDIT_CATEGORY_SYSTEM = 0, + LSA_AUDIT_CATEGORY_LOGON = 1, + LSA_AUDIT_CATEGORY_FILE_AND_OBJECT_ACCESS = 2, + LSA_AUDIT_CATEGORY_USE_OF_USER_RIGHTS = 3, + LSA_AUDIT_CATEGORY_PROCCESS_TRACKING = 4, + LSA_AUDIT_CATEGORY_SECURITY_POLICY_CHANGES = 5, + LSA_AUDIT_CATEGORY_ACCOUNT_MANAGEMENT = 6, + LSA_AUDIT_CATEGORY_DIRECTORY_SERVICE_ACCESS = 7, /* only in win2k/2k3 */ + LSA_AUDIT_CATEGORY_ACCOUNT_LOGON = 8 /* only in win2k/2k3 */ + } lsa_PolicyAuditEventType; + + typedef struct { + uint32 auditing_mode; + [size_is(count)] lsa_PolicyAuditPolicy *settings; + uint32 count; + } lsa_AuditEventsInfo; + + typedef struct { + lsa_StringLarge name; + dom_sid2 *sid; + } lsa_DomainInfo; + + typedef struct { + lsa_String name; + } lsa_PDAccountInfo; + + typedef enum { + LSA_POLICY_ROLE_BACKUP = 2, + LSA_POLICY_ROLE_PRIMARY = 3 + } lsa_PolicyServerRole; + + typedef struct { + lsa_PolicyServerRole role; + } lsa_ServerRole; + + typedef struct { + lsa_String source; + lsa_String account; + } lsa_ReplicaSourceInfo; + + typedef struct { + uint32 paged_pool; + uint32 non_paged_pool; + uint32 min_wss; + uint32 max_wss; + uint32 pagefile; + hyper unknown; + } lsa_DefaultQuotaInfo; + + typedef struct { + hyper modified_id; + NTTIME db_create_time; + } lsa_ModificationInfo; + + typedef struct { + uint8 shutdown_on_full; + } lsa_AuditFullSetInfo; + + typedef struct { + uint16 unknown; /* an midl padding bug? */ + uint8 shutdown_on_full; + uint8 log_is_full; + } lsa_AuditFullQueryInfo; + + typedef struct { + /* it's important that we use the lsa_StringLarge here, + * because otherwise windows clients result with such dns hostnames + * e.g. w2k3-client.samba4.samba.orgsamba4.samba.org + * where it should be + * w2k3-client.samba4.samba.org + */ + lsa_StringLarge name; + lsa_StringLarge dns_domain; + lsa_StringLarge dns_forest; + GUID domain_guid; + dom_sid2 *sid; + } lsa_DnsDomainInfo; + + typedef enum { + LSA_POLICY_INFO_AUDIT_LOG=1, + LSA_POLICY_INFO_AUDIT_EVENTS=2, + LSA_POLICY_INFO_DOMAIN=3, + LSA_POLICY_INFO_PD=4, + LSA_POLICY_INFO_ACCOUNT_DOMAIN=5, + LSA_POLICY_INFO_ROLE=6, + LSA_POLICY_INFO_REPLICA=7, + LSA_POLICY_INFO_QUOTA=8, + LSA_POLICY_INFO_DB=9, + LSA_POLICY_INFO_AUDIT_FULL_SET=10, + LSA_POLICY_INFO_AUDIT_FULL_QUERY=11, + LSA_POLICY_INFO_DNS=12, + LSA_POLICY_INFO_DNS_INT=13, + LSA_POLICY_INFO_LOCAL_ACCOUNT_DOMAIN=14 + } lsa_PolicyInfo; + + typedef [switch_type(uint16)] union { + [case(LSA_POLICY_INFO_AUDIT_LOG)] lsa_AuditLogInfo audit_log; + [case(LSA_POLICY_INFO_AUDIT_EVENTS)] lsa_AuditEventsInfo audit_events; + [case(LSA_POLICY_INFO_DOMAIN)] lsa_DomainInfo domain; + [case(LSA_POLICY_INFO_PD)] lsa_PDAccountInfo pd; + [case(LSA_POLICY_INFO_ACCOUNT_DOMAIN)] lsa_DomainInfo account_domain; + [case(LSA_POLICY_INFO_ROLE)] lsa_ServerRole role; + [case(LSA_POLICY_INFO_REPLICA)] lsa_ReplicaSourceInfo replica; + [case(LSA_POLICY_INFO_QUOTA)] lsa_DefaultQuotaInfo quota; + [case(LSA_POLICY_INFO_DB)] lsa_ModificationInfo db; + [case(LSA_POLICY_INFO_AUDIT_FULL_SET)] lsa_AuditFullSetInfo auditfullset; + [case(LSA_POLICY_INFO_AUDIT_FULL_QUERY)] lsa_AuditFullQueryInfo auditfullquery; + [case(LSA_POLICY_INFO_DNS)] lsa_DnsDomainInfo dns; + } lsa_PolicyInformation; + + NTSTATUS lsa_QueryInfoPolicy ( + [in] policy_handle *handle, + [in] lsa_PolicyInfo level, + [out,unique,switch_is(level)] lsa_PolicyInformation *info + ); + + /******************/ + /* Function: 0x08 */ + NTSTATUS lsa_SetInfoPolicy ( + [in] policy_handle *handle, + [in] lsa_PolicyInfo level, + [in,switch_is(level)] lsa_PolicyInformation *info + ); + + /******************/ + /* Function: 0x09 */ + [todo] NTSTATUS lsa_ClearAuditLog (); + + /******************/ + /* Function: 0x0a */ + [public] NTSTATUS lsa_CreateAccount ( + [in] policy_handle *handle, + [in] dom_sid2 *sid, + [in] lsa_AccountAccessMask access_mask, + [out] policy_handle *acct_handle + ); + + /******************/ + /* NOTE: This only returns accounts that have at least + one privilege set + */ + /* Function: 0x0b */ + typedef struct { + dom_sid2 *sid; + } lsa_SidPtr; + + typedef [public] struct { + [range(0,1000)] uint32 num_sids; + [size_is(num_sids)] lsa_SidPtr *sids; + } lsa_SidArray; + + [public] NTSTATUS lsa_EnumAccounts ( + [in] policy_handle *handle, + [in,out] uint32 *resume_handle, + [in,range(0,8192)] uint32 num_entries, + [out] lsa_SidArray *sids + ); + + + /*************************************************/ + /* Function: 0x0c */ + + [public] NTSTATUS lsa_CreateTrustedDomain( + [in] policy_handle *handle, + [in] lsa_DomainInfo *info, + [in] lsa_DomainAccessMask access_mask, + [out] policy_handle *trustdom_handle + ); + + + /******************/ + /* Function: 0x0d */ + + /* w2k3 treats max_size as max_domains*60 */ + const int LSA_ENUM_TRUST_DOMAIN_MULTIPLIER = 60; + + typedef struct { + uint32 count; + [size_is(count)] lsa_DomainInfo *domains; + } lsa_DomainList; + + NTSTATUS lsa_EnumTrustDom ( + [in] policy_handle *handle, + [in,out] uint32 *resume_handle, + [in] uint32 max_size, + [out] lsa_DomainList *domains + ); + + + /******************/ + /* Function: 0x0e */ + typedef [public] enum { + SID_NAME_USE_NONE = 0,/* NOTUSED */ + SID_NAME_USER = 1, /* user */ + SID_NAME_DOM_GRP = 2, /* domain group */ + SID_NAME_DOMAIN = 3, /* domain: don't know what this is */ + SID_NAME_ALIAS = 4, /* local group */ + SID_NAME_WKN_GRP = 5, /* well-known group */ + SID_NAME_DELETED = 6, /* deleted account: needed for c2 rating */ + SID_NAME_INVALID = 7, /* invalid account */ + SID_NAME_UNKNOWN = 8, /* oops. */ + SID_NAME_COMPUTER = 9 /* machine */ + } lsa_SidType; + + typedef struct { + lsa_SidType sid_type; + uint32 rid; + uint32 sid_index; + } lsa_TranslatedSid; + + typedef struct { + [range(0,1000)] uint32 count; + [size_is(count)] lsa_TranslatedSid *sids; + } lsa_TransSidArray; + + const int LSA_REF_DOMAIN_LIST_MULTIPLIER = 32; + typedef struct { + [range(0,1000)] uint32 count; + [size_is(count)] lsa_DomainInfo *domains; + uint32 max_size; + } lsa_RefDomainList; + + /* Level 1: Ask everywhere + * Level 2: Ask domain and trusted domains, no builtin and wkn + * Level 3: Only ask domain + * Level 4: W2k3ad: Only ask AD trusts + * Level 5: Only ask transitive forest trusts + * Level 6: Like 4 + */ + + typedef enum { + LSA_LOOKUP_NAMES_ALL = 1, + LSA_LOOKUP_NAMES_DOMAINS_ONLY = 2, + LSA_LOOKUP_NAMES_PRIMARY_DOMAIN_ONLY = 3, + LSA_LOOKUP_NAMES_UPLEVEL_TRUSTS_ONLY = 4, + LSA_LOOKUP_NAMES_FOREST_TRUSTS_ONLY = 5, + LSA_LOOKUP_NAMES_UPLEVEL_TRUSTS_ONLY2 = 6 + } lsa_LookupNamesLevel; + + [public] NTSTATUS lsa_LookupNames ( + [in] policy_handle *handle, + [in,range(0,1000)] uint32 num_names, + [in,size_is(num_names)] lsa_String names[], + [out,unique] lsa_RefDomainList *domains, + [in,out] lsa_TransSidArray *sids, + [in] lsa_LookupNamesLevel level, + [in,out] uint32 *count + ); + + + /******************/ + /* Function: 0x0f */ + + typedef struct { + lsa_SidType sid_type; + lsa_String name; + uint32 sid_index; + } lsa_TranslatedName; + + typedef struct { + [range(0,1000)] uint32 count; + [size_is(count)] lsa_TranslatedName *names; + } lsa_TransNameArray; + + [public] NTSTATUS lsa_LookupSids ( + [in] policy_handle *handle, + [in] lsa_SidArray *sids, + [out,unique] lsa_RefDomainList *domains, + [in,out] lsa_TransNameArray *names, + [in] uint16 level, + [in,out] uint32 *count + ); + + + /* Function: 0x10 */ + [public] NTSTATUS lsa_CreateSecret( + [in] policy_handle *handle, + [in] lsa_String name, + [in] lsa_SecretAccessMask access_mask, + [out] policy_handle *sec_handle + ); + + + /*****************************************/ + /* Function: 0x11 */ + NTSTATUS lsa_OpenAccount ( + [in] policy_handle *handle, + [in] dom_sid2 *sid, + [in] lsa_AccountAccessMask access_mask, + [out] policy_handle *acct_handle + ); + + + /****************************************/ + /* Function: 0x12 */ + + typedef struct { + lsa_LUID luid; + uint32 attribute; + } lsa_LUIDAttribute; + + typedef struct { + [range(0,1000)] uint32 count; + uint32 unknown; + [size_is(count)] lsa_LUIDAttribute set[*]; + } lsa_PrivilegeSet; + + NTSTATUS lsa_EnumPrivsAccount ( + [in] policy_handle *handle, + [out,unique] lsa_PrivilegeSet *privs + ); + + + /****************************************/ + /* Function: 0x13 */ + NTSTATUS lsa_AddPrivilegesToAccount( + [in] policy_handle *handle, + [in] lsa_PrivilegeSet *privs + ); + + + /****************************************/ + /* Function: 0x14 */ + NTSTATUS lsa_RemovePrivilegesFromAccount( + [in] policy_handle *handle, + [in] uint8 remove_all, + [in,unique] lsa_PrivilegeSet *privs + ); + + /* Function: 0x15 */ + [todo] NTSTATUS lsa_GetQuotasForAccount(); + + /* Function: 0x16 */ + [todo] NTSTATUS lsa_SetQuotasForAccount(); + + /* Function: 0x17 */ + [todo] NTSTATUS lsa_GetSystemAccessAccount(); + /* Function: 0x18 */ + [todo] NTSTATUS lsa_SetSystemAccessAccount(); + + /* Function: 0x19 */ + NTSTATUS lsa_OpenTrustedDomain( + [in] policy_handle *handle, + [in] dom_sid2 *sid, + [in] lsa_DomainAccessMask access_mask, + [out] policy_handle *trustdom_handle + ); + + typedef [flag(NDR_PAHEX)] struct { + uint32 length; + uint32 size; + [size_is(size),length_is(length)] uint8 *data; + } lsa_DATA_BUF; + + typedef [flag(NDR_PAHEX)] struct { + [range(0,65536)] uint32 size; + [size_is(size)] uint8 *data; + } lsa_DATA_BUF2; + + typedef enum { + LSA_TRUSTED_DOMAIN_INFO_NAME = 1, + LSA_TRUSTED_DOMAIN_INFO_CONTROLLERS_INFO = 2, + LSA_TRUSTED_DOMAIN_INFO_POSIX_OFFSET = 3, + LSA_TRUSTED_DOMAIN_INFO_PASSWORD = 4, + LSA_TRUSTED_DOMAIN_INFO_BASIC = 5, + LSA_TRUSTED_DOMAIN_INFO_INFO_EX = 6, + LSA_TRUSTED_DOMAIN_INFO_AUTH_INFO = 7, + LSA_TRUSTED_DOMAIN_INFO_FULL_INFO = 8, + LSA_TRUSTED_DOMAIN_INFO_11 = 11, + LSA_TRUSTED_DOMAIN_INFO_INFO_ALL = 12 + } lsa_TrustDomInfoEnum; + + typedef struct { + lsa_StringLarge netbios_name; + } lsa_TrustDomainInfoName; + + typedef struct { + uint32 posix_offset; + } lsa_TrustDomainInfoPosixOffset; + + typedef struct { + lsa_DATA_BUF *password; + lsa_DATA_BUF *old_password; + } lsa_TrustDomainInfoPassword; + + typedef struct { + lsa_String netbios_name; + dom_sid2 *sid; + } lsa_TrustDomainInfoBasic; + + typedef struct { + lsa_StringLarge domain_name; + lsa_StringLarge netbios_name; + dom_sid2 *sid; + uint32 trust_direction; + uint32 trust_type; + uint32 trust_attributes; + } lsa_TrustDomainInfoInfoEx; + + typedef struct { + NTTIME_hyper last_update_time; + uint32 secret_type; + lsa_DATA_BUF2 data; + } lsa_TrustDomainInfoBuffer; + + typedef struct { + uint32 incoming_count; + lsa_TrustDomainInfoBuffer *incoming_current_auth_info; + lsa_TrustDomainInfoBuffer *incoming_previous_auth_info; + uint32 outgoing_count; + lsa_TrustDomainInfoBuffer *outgoing_current_auth_info; + lsa_TrustDomainInfoBuffer *outgoing_previous_auth_info; + } lsa_TrustDomainInfoAuthInfo; + + typedef struct { + lsa_TrustDomainInfoInfoEx info_ex; + lsa_TrustDomainInfoPosixOffset posix_offset; + lsa_TrustDomainInfoAuthInfo auth_info; + } lsa_TrustDomainInfoFullInfo; + + typedef struct { + lsa_TrustDomainInfoInfoEx info_ex; + lsa_DATA_BUF2 data1; + } lsa_TrustDomainInfo11; + + typedef struct { + lsa_TrustDomainInfoInfoEx info_ex; + lsa_DATA_BUF2 data1; + lsa_TrustDomainInfoPosixOffset posix_offset; + lsa_TrustDomainInfoAuthInfo auth_info; + } lsa_TrustDomainInfoInfoAll; + + typedef [switch_type(lsa_TrustDomInfoEnum)] union { + [case(LSA_TRUSTED_DOMAIN_INFO_NAME)] lsa_TrustDomainInfoName name; + [case(LSA_TRUSTED_DOMAIN_INFO_POSIX_OFFSET)] lsa_TrustDomainInfoPosixOffset posix_offset; + [case(LSA_TRUSTED_DOMAIN_INFO_PASSWORD)] lsa_TrustDomainInfoPassword password; + [case(LSA_TRUSTED_DOMAIN_INFO_BASIC)] lsa_TrustDomainInfoBasic info_basic; + [case(LSA_TRUSTED_DOMAIN_INFO_INFO_EX)] lsa_TrustDomainInfoInfoEx info_ex; + [case(LSA_TRUSTED_DOMAIN_INFO_AUTH_INFO)] lsa_TrustDomainInfoAuthInfo auth_info; + [case(LSA_TRUSTED_DOMAIN_INFO_FULL_INFO)] lsa_TrustDomainInfoFullInfo full_info; + [case(LSA_TRUSTED_DOMAIN_INFO_11)] lsa_TrustDomainInfo11 info11; + [case(LSA_TRUSTED_DOMAIN_INFO_INFO_ALL)] lsa_TrustDomainInfoInfoAll info_all; + } lsa_TrustedDomainInfo; + + /* Function: 0x1a */ + NTSTATUS lsa_QueryTrustedDomainInfo( + [in] policy_handle *trustdom_handle, + [in] lsa_TrustDomInfoEnum level, + [out,switch_is(level),unique] lsa_TrustedDomainInfo *info + ); + + /* Function: 0x1b */ + [todo] NTSTATUS lsa_SetInformationTrustedDomain(); + + /* Function: 0x1c */ + [public] NTSTATUS lsa_OpenSecret( + [in] policy_handle *handle, + [in] lsa_String name, + [in] lsa_SecretAccessMask access_mask, + [out] policy_handle *sec_handle + ); + + /* Function: 0x1d */ + + [public] NTSTATUS lsa_SetSecret( + [in] policy_handle *sec_handle, + [in,unique] lsa_DATA_BUF *new_val, + [in,unique] lsa_DATA_BUF *old_val + ); + + typedef struct { + lsa_DATA_BUF *buf; + } lsa_DATA_BUF_PTR; + + /* Function: 0x1e */ + [public] NTSTATUS lsa_QuerySecret ( + [in] policy_handle *sec_handle, + [in,out,unique] lsa_DATA_BUF_PTR *new_val, + [in,out,unique] NTTIME_hyper *new_mtime, + [in,out,unique] lsa_DATA_BUF_PTR *old_val, + [in,out,unique] NTTIME_hyper *old_mtime + ); + + /* Function: 0x1f */ + NTSTATUS lsa_LookupPrivValue( + [in] policy_handle *handle, + [in] lsa_String *name, + [out] lsa_LUID *luid + ); + + + /* Function: 0x20 */ + NTSTATUS lsa_LookupPrivName ( + [in] policy_handle *handle, + [in] lsa_LUID *luid, + [out,unique] lsa_StringLarge *name + ); + + + /*******************/ + /* Function: 0x21 */ + NTSTATUS lsa_LookupPrivDisplayName ( + [in] policy_handle *handle, + [in] lsa_String *name, + [out,unique] lsa_StringLarge *disp_name, + /* see http://www.microsoft.com/globaldev/nlsweb/ for + language definitions */ + [in,out] uint16 *language_id, + [in] uint16 unknown + ); + + /* Function: 0x22 */ + [todo] NTSTATUS lsa_DeleteObject(); + + + /*******************/ + /* Function: 0x23 */ + NTSTATUS lsa_EnumAccountsWithUserRight ( + [in] policy_handle *handle, + [in,unique] lsa_String *name, + [out] lsa_SidArray *sids + ); + + /* Function: 0x24 */ + typedef struct { + [string,charset(UTF16)] uint16 *name; + } lsa_RightAttribute; + + typedef struct { + uint32 count; + [size_is(count)] lsa_StringLarge *names; + } lsa_RightSet; + + NTSTATUS lsa_EnumAccountRights ( + [in] policy_handle *handle, + [in] dom_sid2 *sid, + [out] lsa_RightSet *rights + ); + + + /**********************/ + /* Function: 0x25 */ + NTSTATUS lsa_AddAccountRights ( + [in] policy_handle *handle, + [in] dom_sid2 *sid, + [in] lsa_RightSet *rights + ); + + /**********************/ + /* Function: 0x26 */ + NTSTATUS lsa_RemoveAccountRights ( + [in] policy_handle *handle, + [in] dom_sid2 *sid, + [in] uint32 unknown, + [in] lsa_RightSet *rights + ); + + /* Function: 0x27 */ + NTSTATUS lsa_QueryTrustedDomainInfoBySid( + [in] policy_handle *handle, + [in] dom_sid2 *dom_sid, + [in] lsa_TrustDomInfoEnum level, + [out,switch_is(level),unique] lsa_TrustedDomainInfo *info + ); + + /* Function: 0x28 */ + [todo] NTSTATUS lsa_SetTrustedDomainInfo(); + /* Function: 0x29 */ + NTSTATUS lsa_DeleteTrustedDomain( + [in] policy_handle *handle, + [in] dom_sid2 *dom_sid + ); + + /* Function: 0x2a */ + [todo] NTSTATUS lsa_StorePrivateData(); + /* Function: 0x2b */ + [todo] NTSTATUS lsa_RetrievePrivateData(); + + + /**********************/ + /* Function: 0x2c */ + [public] NTSTATUS lsa_OpenPolicy2 ( + [in,unique] [string,charset(UTF16)] uint16 *system_name, + [in] lsa_ObjectAttribute *attr, + [in] lsa_PolicyAccessMask access_mask, + [out] policy_handle *handle + ); + + /**********************/ + /* Function: 0x2d */ + typedef struct { + lsa_String *string; + } lsa_StringPointer; + + NTSTATUS lsa_GetUserName( + [in,unique] [string,charset(UTF16)] uint16 *system_name, + [in,out,unique] lsa_String *account_name, + [in,out,unique] lsa_StringPointer *authority_name + ); + + /**********************/ + /* Function: 0x2e */ + + NTSTATUS lsa_QueryInfoPolicy2( + [in] policy_handle *handle, + [in] lsa_PolicyInfo level, + [out,unique,switch_is(level)] lsa_PolicyInformation *info + ); + + /* Function 0x2f */ + NTSTATUS lsa_SetInfoPolicy2( + [in] policy_handle *handle, + [in] lsa_PolicyInfo level, + [in,switch_is(level)] lsa_PolicyInformation *info + ); + + /**********************/ + /* Function 0x30 */ + NTSTATUS lsa_QueryTrustedDomainInfoByName( + [in] policy_handle *handle, + [in] lsa_String trusted_domain, + [in] lsa_TrustDomInfoEnum level, + [out,unique,switch_is(level)] lsa_TrustedDomainInfo *info + ); + + /**********************/ + /* Function 0x31 */ + NTSTATUS lsa_SetTrustedDomainInfoByName( + [in] policy_handle *handle, + [in] lsa_String trusted_domain, + [in] lsa_TrustDomInfoEnum level, + [in,unique,switch_is(level)] lsa_TrustedDomainInfo *info + ); + + /* Function 0x32 */ + + /* w2k3 treats max_size as max_domains*82 */ + const int LSA_ENUM_TRUST_DOMAIN_EX_MULTIPLIER = 82; + + typedef struct { + uint32 count; + [size_is(count)] lsa_TrustDomainInfoInfoEx *domains; + } lsa_DomainListEx; + + NTSTATUS lsa_EnumTrustedDomainsEx ( + [in] policy_handle *handle, + [in,out] uint32 *resume_handle, + [out] lsa_DomainListEx *domains, + [in] uint32 max_size + ); + + + /* Function 0x33 */ + [todo] NTSTATUS lsa_CreateTrustedDomainEx(); + + /* Function 0x34 */ + NTSTATUS lsa_CloseTrustedDomainEx( + [in,out] policy_handle *handle + ); + + /* Function 0x35 */ + + /* w2k3 returns either 0x000bbbd000000000 or 0x000a48e800000000 + for unknown6 - gd */ + typedef struct { + uint32 enforce_restrictions; + hyper service_tkt_lifetime; + hyper user_tkt_lifetime; + hyper user_tkt_renewaltime; + hyper clock_skew; + hyper unknown6; + } lsa_DomainInfoKerberos; + + typedef struct { + uint32 blob_size; + [size_is(blob_size)] uint8 *efs_blob; + } lsa_DomainInfoEfs; + + typedef enum { + LSA_DOMAIN_INFO_POLICY_QOS=1, + LSA_DOMAIN_INFO_POLICY_EFS=2, + LSA_DOMAIN_INFO_POLICY_KERBEROS=3 + } lsa_DomainInfoEnum; + + typedef [switch_type(uint16)] union { + [case(LSA_DOMAIN_INFO_POLICY_EFS)] lsa_DomainInfoEfs efs_info; + [case(LSA_DOMAIN_INFO_POLICY_KERBEROS)] lsa_DomainInfoKerberos kerberos_info; + } lsa_DomainInformationPolicy; + + NTSTATUS lsa_QueryDomainInformationPolicy( + [in] policy_handle *handle, + [in] lsa_DomainInfoEnum level, + [out,unique,switch_is(level)] lsa_DomainInformationPolicy *info + ); + + /* Function 0x36 */ + NTSTATUS lsa_SetDomainInformationPolicy( + [in] policy_handle *handle, + [in] lsa_DomainInfoEnum level, + [in,unique,switch_is(level)] lsa_DomainInformationPolicy *info + ); + + /**********************/ + /* Function 0x37 */ + NTSTATUS lsa_OpenTrustedDomainByName( + [in] policy_handle *handle, + [in] lsa_String name, + [in] lsa_DomainAccessMask access_mask, + [out] policy_handle *trustdom_handle + ); + + /* Function 0x38 */ + [todo] NTSTATUS lsa_TestCall(); + + /**********************/ + /* Function 0x39 */ + + typedef struct { + lsa_SidType sid_type; + lsa_String name; + uint32 sid_index; + uint32 unknown; + } lsa_TranslatedName2; + + typedef struct { + [range(0,1000)] uint32 count; + [size_is(count)] lsa_TranslatedName2 *names; + } lsa_TransNameArray2; + + [public] NTSTATUS lsa_LookupSids2( + [in] policy_handle *handle, + [in] lsa_SidArray *sids, + [out,unique] lsa_RefDomainList *domains, + [in,out] lsa_TransNameArray2 *names, + [in] uint16 level, + [in,out] uint32 *count, + [in] uint32 unknown1, + [in] uint32 unknown2 + ); + + /**********************/ + /* Function 0x3a */ + + typedef struct { + lsa_SidType sid_type; + uint32 rid; + uint32 sid_index; + uint32 unknown; + } lsa_TranslatedSid2; + + typedef struct { + [range(0,1000)] uint32 count; + [size_is(count)] lsa_TranslatedSid2 *sids; + } lsa_TransSidArray2; + + [public] NTSTATUS lsa_LookupNames2 ( + [in] policy_handle *handle, + [in,range(0,1000)] uint32 num_names, + [in,size_is(num_names)] lsa_String names[], + [out,unique] lsa_RefDomainList *domains, + [in,out] lsa_TransSidArray2 *sids, + [in] lsa_LookupNamesLevel level, + [in,out] uint32 *count, + [in] uint32 unknown1, + [in] uint32 unknown2 + ); + + /* Function 0x3b */ + [todo] NTSTATUS lsa_CreateTrustedDomainEx2(); + + /* Function 0x3c */ + [todo] NTSTATUS lsa_CREDRWRITE(); + + /* Function 0x3d */ + [todo] NTSTATUS lsa_CREDRREAD(); + + /* Function 0x3e */ + [todo] NTSTATUS lsa_CREDRENUMERATE(); + + /* Function 0x3f */ + [todo] NTSTATUS lsa_CREDRWRITEDOMAINCREDENTIALS(); + + /* Function 0x40 */ + [todo] NTSTATUS lsa_CREDRREADDOMAINCREDENTIALS(); + + /* Function 0x41 */ + [todo] NTSTATUS lsa_CREDRDELETE(); + + /* Function 0x42 */ + [todo] NTSTATUS lsa_CREDRGETTARGETINFO(); + + /* Function 0x43 */ + [todo] NTSTATUS lsa_CREDRPROFILELOADED(); + + /**********************/ + /* Function 0x44 */ + typedef struct { + lsa_SidType sid_type; + dom_sid2 *sid; + uint32 sid_index; + uint32 unknown; + } lsa_TranslatedSid3; + + typedef struct { + [range(0,1000)] uint32 count; + [size_is(count)] lsa_TranslatedSid3 *sids; + } lsa_TransSidArray3; + + [public] NTSTATUS lsa_LookupNames3 ( + [in] policy_handle *handle, + [in,range(0,1000)] uint32 num_names, + [in,size_is(num_names)] lsa_String names[], + [out,unique] lsa_RefDomainList *domains, + [in,out] lsa_TransSidArray3 *sids, + [in] lsa_LookupNamesLevel level, + [in,out] uint32 *count, + [in] uint32 unknown1, + [in] uint32 unknown2 + ); + + /* Function 0x45 */ + [todo] NTSTATUS lsa_CREDRGETSESSIONTYPES(); + + /* Function 0x46 */ + [todo] NTSTATUS lsa_LSARREGISTERAUDITEVENT(); + + /* Function 0x47 */ + [todo] NTSTATUS lsa_LSARGENAUDITEVENT(); + + /* Function 0x48 */ + [todo] NTSTATUS lsa_LSARUNREGISTERAUDITEVENT(); + + /* Function 0x49 */ + typedef struct { + [range(0,131072)] uint32 length; + [size_is(length)] uint8 *data; + } lsa_ForestTrustBinaryData; + + typedef struct { + dom_sid2 *domain_sid; + lsa_StringLarge dns_domain_name; + lsa_StringLarge netbios_domain_name; + } lsa_ForestTrustDomainInfo; + + typedef [switch_type(uint32)] union { + [case(LSA_FOREST_TRUST_TOP_LEVEL_NAME)] lsa_String top_level_name; + [case(LSA_FOREST_TRUST_TOP_LEVEL_NAME_EX)] lsa_StringLarge top_level_name_ex; + [case(LSA_FOREST_TRUST_DOMAIN_INFO)] lsa_ForestTrustDomainInfo domain_info; + [default] lsa_ForestTrustBinaryData data; + } lsa_ForestTrustData; + + typedef [v1_enum] enum { + LSA_FOREST_TRUST_TOP_LEVEL_NAME = 0, + LSA_FOREST_TRUST_TOP_LEVEL_NAME_EX = 1, + LSA_FOREST_TRUST_DOMAIN_INFO = 2, + LSA_FOREST_TRUST_RECORD_TYPE_LAST = 3 + } lsa_ForestTrustRecordType; + + typedef struct { + uint32 flags; + lsa_ForestTrustRecordType level; + hyper unknown; + [switch_is(level)] lsa_ForestTrustData forest_trust_data; + } lsa_ForestTrustRecord; + + typedef [public] struct { + [range(0,4000)] uint32 count; + [size_is(count)] lsa_ForestTrustRecord **entries; + } lsa_ForestTrustInformation; + + NTSTATUS lsa_lsaRQueryForestTrustInformation( + [in] policy_handle *handle, + [in,ref] lsa_String *trusted_domain_name, + [in] uint16 unknown, /* level ? */ + [out,ref] lsa_ForestTrustInformation **forest_trust_info + ); + + /* Function 0x4a */ + [todo] NTSTATUS lsa_LSARSETFORESTTRUSTINFORMATION(); + + /* Function 0x4b */ + [todo] NTSTATUS lsa_CREDRRENAME(); + + /*****************/ + /* Function 0x4c */ + + [public] NTSTATUS lsa_LookupSids3( + [in] lsa_SidArray *sids, + [out,unique] lsa_RefDomainList *domains, + [in,out] lsa_TransNameArray2 *names, + [in] uint16 level, + [in,out] uint32 *count, + [in] uint32 unknown1, + [in] uint32 unknown2 + ); + + /* Function 0x4d */ + NTSTATUS lsa_LookupNames4( + [in,range(0,1000)] uint32 num_names, + [in,size_is(num_names)] lsa_String names[], + [out,unique] lsa_RefDomainList *domains, + [in,out] lsa_TransSidArray3 *sids, + [in] lsa_LookupNamesLevel level, + [in,out] uint32 *count, + [in] uint32 unknown1, + [in] uint32 unknown2 + ); + + /* Function 0x4e */ + [todo] NTSTATUS lsa_LSAROPENPOLICYSCE(); + + /* Function 0x4f */ + [todo] NTSTATUS lsa_LSARADTREGISTERSECURITYEVENTSOURCE(); + + /* Function 0x50 */ + [todo] NTSTATUS lsa_LSARADTUNREGISTERSECURITYEVENTSOURCE(); + + /* Function 0x51 */ + [todo] NTSTATUS lsa_LSARADTREPORTSECURITYEVENT(); + +} diff --git a/epan/dissectors/pidl/mapi/Makefile b/epan/dissectors/pidl/mapi/Makefile deleted file mode 100644 index def415e0da..0000000000 --- a/epan/dissectors/pidl/mapi/Makefile +++ /dev/null @@ -1,18 +0,0 @@ -PROTOCOL_NAME=mapi - -all: packet-dcerpc-$(PROTOCOL_NAME).c packet-dcerpc-$(PROTOCOL_NAME).h - -packet-dcerpc-$(PROTOCOL_NAME).c packet-dcerpc-$(PROTOCOL_NAME).h: $(PROTOCOL_NAME).idl \ - $(PROTOCOL_NAME).cnf \ - request.cnf.c \ - response.cnf.c \ - mapicodes_enum.h \ - mapitags_enum.h \ - ../idl_types.h - ../../../../tools/pidl/pidl --verbose --includedir=.. --ws-parser -- $(PROTOCOL_NAME).idl - -clean: - rm -f packet-dcerpc-$(PROTOCOL_NAME).c packet-dcerpc-$(PROTOCOL_NAME).h idl_types.h - -install: packet-dcerpc-$(PROTOCOL_NAME).c packet-dcerpc-$(PROTOCOL_NAME).h - cp packet-dcerpc-$(PROTOCOL_NAME).c packet-dcerpc-$(PROTOCOL_NAME).h ../../ diff --git a/epan/dissectors/pidl/mapi/mapicodes_enum.h b/epan/dissectors/pidl/mapi/mapicodes_enum.h deleted file mode 100644 index 64b671e5e3..0000000000 --- a/epan/dissectors/pidl/mapi/mapicodes_enum.h +++ /dev/null @@ -1,98 +0,0 @@ -/* - MAPI Implementation - - OpenChange Project - - Copyright (C) Julien Kerihuel 2006 - - 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 2 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, write to the Free Software - Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. -*/ - -/* parser auto-generated by mparse */ - -typedef [public, v1_enum, flag(NDR_PAHEX)] enum { - MAPI_E_SUCCESS = 0x00000000, - MAPI_E_NO_SUPPORT = 0x80040102, - MAPI_E_BAD_CHARWIDTH = 0x80040103, - MAPI_E_STRING_TOO_LONG = 0x80040105, - MAPI_E_UNKNOWN_FLAGS = 0x80040106, - MAPI_E_INVALID_ENTRYID = 0x80040107, - MAPI_E_INVALID_OBJECT = 0x80040108, - MAPI_E_OBJECT_CHANGED = 0x80040109, - MAPI_E_OBJECT_DELETED = 0x8004010A, - MAPI_E_BUSY = 0x8004010B, - MAPI_E_NOT_ENOUGH_DISK = 0x8004010D, - MAPI_E_NOT_ENOUGH_RESOURCES = 0x8004010E, - MAPI_E_NOT_FOUND = 0x8004010F, - MAPI_E_VERSION = 0x80040110, - MAPI_E_LOGON_FAILED = 0x80040111, - MAPI_E_SESSION_LIMIT = 0x80040112, - MAPI_E_USER_CANCEL = 0x80040113, - MAPI_E_UNABLE_TO_ABORT = 0x80040114, - MAPI_E_NETWORK_ERROR = 0x80040115, - MAPI_E_DISK_ERROR = 0x80040116, - MAPI_E_TOO_COMPLEX = 0x80040117, - MAPI_E_BAD_COLUMN = 0x80040118, - MAPI_E_EXTENDED_ERROR = 0x80040119, - MAPI_E_COMPUTED = 0x8004011A, - MAPI_E_CORRUPT_DATA = 0x8004011B, - MAPI_E_UNCONFIGURED = 0x8004011C, - MAPI_E_FAILONEPROVIDER = 0x8004011D, - MAPI_E_UNKNOWN_CPID = 0x8004011E, - MAPI_E_UNKNOWN_LCID = 0x8004011F, - MAPI_E_PASSWORD_CHANGE_REQUIRED = 0x80040120, - MAPI_E_PASSWORD_EXPIRED = 0x80040121, - MAPI_E_INVALID_WORKSTATION_ACCOUNT = 0x80040122, - MAPI_E_INVALID_ACCESS_TIME = 0x80040123, - MAPI_E_ACCOUNT_DISABLED = 0x80040124, - MAPI_E_END_OF_SESSION = 0x80040200, - MAPI_E_UNKNOWN_ENTRYID = 0x80040201, - MAPI_E_MISSING_REQUIRED_COLUMN = 0x80040202, - MAPI_W_NO_SERVICE = 0x80040203, - MAPI_E_BAD_VALUE = 0x80040301, - MAPI_E_INVALID_TYPE = 0x80040302, - MAPI_E_TYPE_NO_SUPPORT = 0x80040303, - MAPI_E_UNEXPECTED_TYPE = 0x80040304, - MAPI_E_TOO_BIG = 0x80040305, - MAPI_E_DECLINE_COPY = 0x80040306, - MAPI_E_UNEXPECTED_ID = 0x80040307, - MAPI_W_ERRORS_RETURNED = 0x80040380, - MAPI_E_UNABLE_TO_COMPLETE = 0x80040400, - MAPI_E_TIMEOUT = 0x80040401, - MAPI_E_TABLE_EMPTY = 0x80040402, - MAPI_E_TABLE_TOO_BIG = 0x80040403, - MAPI_E_INVALID_BOOKMARK = 0x80040405, - MAPI_W_POSITION_CHANGED = 0x80040481, - MAPI_W_APPROX_COUNT = 0x80040482, - MAPI_E_WAIT = 0x80040500, - MAPI_E_CANCEL = 0x80040501, - MAPI_E_NOT_ME = 0x80040502, - MAPI_W_CANCEL_MESSAGE = 0x80040580, - MAPI_E_CORRUPT_STORE = 0x80040600, - MAPI_E_NOT_IN_QUEUE = 0x80040601, - MAPI_E_NO_SUPPRESS = 0x80040602, - MAPI_E_COLLISION = 0x80040604, - MAPI_E_NOT_INITIALIZED = 0x80040605, - MAPI_E_NON_STANDARD = 0x80040606, - MAPI_E_NO_RECIPIENTS = 0x80040607, - MAPI_E_SUBMITTED = 0x80040608, - MAPI_E_HAS_FOLDERS = 0x80040609, - MAPI_E_HAS_MESAGES = 0x8004060A, - MAPI_E_FOLDER_CYCLE = 0x8004060B, - MAPI_W_PARTIAL_COMPLETION = 0x80040680, - MAPI_E_AMBIGUOUS_RECIP = 0x80040700, - MAPI_E_RESERVED = 0xFFFFFFFF -} MAPISTATUS; - diff --git a/epan/dissectors/pidl/mapi/mapitags_enum.h b/epan/dissectors/pidl/mapi/mapitags_enum.h deleted file mode 100644 index 2ca596f14c..0000000000 --- a/epan/dissectors/pidl/mapi/mapitags_enum.h +++ /dev/null @@ -1,3421 +0,0 @@ -/* - MAPI Implementation - - OpenChange Project - - Copyright (C) Julien Kerihuel 2006 - - 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 2 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, write to the Free Software - Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. -*/ - - -/* parser auto-generated by mparse */ - -typedef [v1_enum, flag(NDR_PAHEX)] enum { - PR_ACKNOWLEDGEMENT_MODE = 0x00010003, - PR_ACKNOWLEDGEMENT_MODE_ERROR = 0x0001000a, - PR_ALTERNATE_RECIPIENT_ALLOWED = 0x0002000b, - PR_ALTERNATE_RECIPIENT_ALLOWED_ERROR = 0x0002000a, - PR_AUTHORIZING_USERS = 0x00030102, - PR_AUTHORIZING_USERS_ERROR = 0x0003000a, - PR_AUTO_FORWARD_COMMENT = 0x0004001e, - PR_AUTO_FORWARD_COMMENT_UNICODE = 0x0004001f, - PR_AUTO_FORWARD_COMMENT_ERROR = 0x0004000a, - PR_AUTO_FORWARDED = 0x0005000b, - PR_AUTO_FORWARDED_ERROR = 0x0005000a, - PR_CONTENT_CONFIDENTIALITY_ALGORITHM_ID = 0x00060102, - PR_CONTENT_CONFIDENTIALITY_ALGORITHM_ID_ERROR = 0x0006000a, - PR_CONTENT_CORRELATOR = 0x00070102, - PR_CONTENT_CORRELATOR_ERROR = 0x0007000a, - PR_CONTENT_IDENTIFIER = 0x0008001e, - PR_CONTENT_IDENTIFIER_UNICODE = 0x0008001f, - PR_CONTENT_IDENTIFIER_ERROR = 0x0008000a, - PR_CONTENT_LENGTH = 0x00090003, - PR_CONTENT_LENGTH_ERROR = 0x0009000a, - PR_CONTENT_RETURN_REQUESTED = 0x000a000b, - PR_CONTENT_RETURN_REQUESTED_ERROR = 0x000a000a, - PR_CONVERSATION_KEY = 0x000b0102, - PR_CONVERSATION_KEY_ERROR = 0x000b000a, - PR_CONVERSION_EITS = 0x000c0102, - PR_CONVERSION_EITS_ERROR = 0x000c000a, - PR_CONVERSION_WITH_LOSS_PROHIBITED = 0x000d000b, - PR_CONVERSION_WITH_LOSS_PROHIBITED_ERROR = 0x000d000a, - PR_CONVERTED_EITS = 0x000e0102, - PR_CONVERTED_EITS_ERROR = 0x000e000a, - PR_DEFERRED_DELIVERY_TIME = 0x000f0040, - PR_DEFERRED_DELIVERY_TIME_ERROR = 0x000f000a, - PR_DELIVER_TIME = 0x00100040, - PR_DELIVER_TIME_ERROR = 0x0010000a, - PR_DISCARD_REASON = 0x00110003, - PR_DISCARD_REASON_ERROR = 0x0011000a, - PR_DISCLOSURE_OF_RECIPIENTS = 0x0012000b, - PR_DISCLOSURE_OF_RECIPIENTS_ERROR = 0x0012000a, - PR_DL_EXPANSION_HISTORY = 0x00130102, - PR_DL_EXPANSION_HISTORY_ERROR = 0x0013000a, - PR_DL_EXPANSION_PROHIBITED = 0x0014000b, - PR_DL_EXPANSION_PROHIBITED_ERROR = 0x0014000a, - PR_EXPIRY_TIME = 0x00150040, - PR_EXPIRY_TIME_ERROR = 0x0015000a, - PR_IMPLICIT_CONVERSION_PROHIBITED = 0x0016000b, - PR_IMPLICIT_CONVERSION_PROHIBITED_ERROR = 0x0016000a, - PR_IMPORTANCE = 0x00170003, - PR_IMPORTANCE_ERROR = 0x0017000a, - PR_IPM_ID = 0x00180102, - PR_IPM_ID_ERROR = 0x0018000a, - PR_LATEST_DELIVERY_TIME = 0x00190040, - PR_LATEST_DELIVERY_TIME_ERROR = 0x0019000a, - PR_MESSAGE_CLASS = 0x001a001e, - PR_MESSAGE_CLASS_UNICODE = 0x001a001f, - PR_MESSAGE_CLASS_ERROR = 0x001a000a, - PR_MESSAGE_DELIVERY_ID = 0x001b0102, - PR_MESSAGE_DELIVERY_ID_ERROR = 0x001b000a, - PR_MESSAGE_SECURITY_LABEL = 0x001e0102, - PR_MESSAGE_SECURITY_LABEL_ERROR = 0x001e000a, - PR_OBSOLETED_IPMS = 0x001f0102, - PR_OBSOLETED_IPMS_ERROR = 0x001f000a, - PR_ORIGINALLY_INTENDED_RECIPIENT_NAME = 0x00200102, - PR_ORIGINALLY_INTENDED_RECIPIENT_NAME_ERROR = 0x0020000a, - PR_ORIGINAL_EITS = 0x00210102, - PR_ORIGINAL_EITS_ERROR = 0x0021000a, - PR_ORIGINATOR_CERTIFICATE = 0x00220102, - PR_ORIGINATOR_CERTIFICATE_ERROR = 0x0022000a, - PR_ORIGINATOR_DELIVERY_REPORT_REQUESTED = 0x0023000b, - PR_ORIGINATOR_DELIVERY_REPORT_REQUESTED_ERROR = 0x0023000a, - PR_ORIGINATOR_RETURN_ADDRESS = 0x00240102, - PR_ORIGINATOR_RETURN_ADDRESS_ERROR = 0x0024000a, - PR_PARENT_KEY = 0x00250102, - PR_PARENT_KEY_ERROR = 0x0025000a, - PR_PRIORITY = 0x00260003, - PR_PRIORITY_ERROR = 0x0026000a, - PR_ORIGIN_CHECK = 0x00270102, - PR_ORIGIN_CHECK_ERROR = 0x0027000a, - PR_PROOF_OF_SUBMISSION_REQUESTED = 0x0028000b, - PR_PROOF_OF_SUBMISSION_REQUESTED_ERROR = 0x0028000a, - PR_READ_RECEIPT_REQUESTED = 0x0029000b, - PR_READ_RECEIPT_REQUESTED_ERROR = 0x0029000a, - PR_RECEIPT_TIME = 0x002a0040, - PR_RECEIPT_TIME_ERROR = 0x002a000a, - PR_RECIPIENT_REASSIGNMENT_PROHIBITED = 0x002b000b, - PR_RECIPIENT_REASSIGNMENT_PROHIBITED_ERROR = 0x002b000a, - PR_REDIRECTION_HISTORY = 0x002c0102, - PR_REDIRECTION_HISTORY_ERROR = 0x002c000a, - PR_RELATED_IPMS = 0x002d0102, - PR_RELATED_IPMS_ERROR = 0x002d000a, - PR_ORIGINAL_SENSITIVITY = 0x002e0003, - PR_ORIGINAL_SENSITIVITY_ERROR = 0x002e000a, - PR_LANGUAGES = 0x002f001e, - PR_LANGUAGES_UNICODE = 0x002f001f, - PR_LANGUAGES_ERROR = 0x002f000a, - PR_REPLY_TIME = 0x00300040, - PR_REPLY_TIME_ERROR = 0x0030000a, - PR_REPORT_TAG = 0x00310102, - PR_REPORT_TAG_ERROR = 0x0031000a, - PR_REPORT_TIME = 0x00320040, - PR_REPORT_TIME_ERROR = 0x0032000a, - PR_RETURNED_IPM = 0x0033000b, - PR_RETURNED_IPM_ERROR = 0x0033000a, - PR_SECURITY = 0x00340003, - PR_SECURITY_ERROR = 0x0034000a, - PR_INCOMPLETE_COPY = 0x0035000b, - PR_INCOMPLETE_COPY_ERROR = 0x0035000a, - PR_SENSITIVITY = 0x00360003, - PR_SENSITIVITY_ERROR = 0x0036000a, - PR_SUBJECT = 0x0037001e, - PR_SUBJECT_UNICODE = 0x0037001f, - PR_SUBJECT_ERROR = 0x0037000a, - PR_SUBJECT_IPM = 0x00380102, - PR_SUBJECT_IPM_ERROR = 0x0038000a, - PR_CLIENT_SUBMIT_TIME = 0x00390040, - PR_CLIENT_SUBMIT_TIME_ERROR = 0x0039000a, - PR_REPORT_NAME = 0x003a001e, - PR_REPORT_NAME_UNICODE = 0x003a001f, - PR_REPORT_NAME_ERROR = 0x003a000a, - PR_SENT_REPRESENTING_SEARCH_KEY = 0x003b0102, - PR_SENT_REPRESENTING_SEARCH_KEY_ERROR = 0x003b000a, - PR_X400_CONTENT_TYPE = 0x003c0102, - PR_X400_CONTENT_TYPE_ERROR = 0x003c000a, - PR_SUBJECT_PREFIX = 0x003d001e, - PR_SUBJECT_PREFIX_UNICODE = 0x003d001f, - PR_SUBJECT_PREFIX_ERROR = 0x003d000a, - PR_NON_RECEIPT_REASON = 0x003e0003, - PR_NON_RECEIPT_REASON_ERROR = 0x003e000a, - PR_RECEIVED_BY_ENTRYID = 0x003f0102, - PR_RECEIVED_BY_ENTRYID_ERROR = 0x003f000a, - PR_RECEIVED_BY_NAME = 0x0040001e, - PR_RECEIVED_BY_NAME_UNICODE = 0x0040001f, - PR_RECEIVED_BY_NAME_ERROR = 0x0040000a, - PR_SENT_REPRESENTING_ENTRYID = 0x00410102, - PR_SENT_REPRESENTING_ENTRYID_ERROR = 0x0041000a, - PR_SENT_REPRESENTING_NAME = 0x0042001e, - PR_SENT_REPRESENTING_NAME_UNICODE = 0x0042001f, - PR_SENT_REPRESENTING_NAME_ERROR = 0x0042000a, - PR_RCVD_REPRESENTING_ENTRYID = 0x00430102, - PR_RCVD_REPRESENTING_ENTRYID_ERROR = 0x0043000a, - PR_RCVD_REPRESENTING_NAME = 0x0044001e, - PR_RCVD_REPRESENTING_NAME_UNICODE = 0x0044001f, - PR_RCVD_REPRESENTING_NAME_ERROR = 0x0044000a, - PR_REPORT_ENTRYID = 0x00450102, - PR_REPORT_ENTRYID_ERROR = 0x0045000a, - PR_READ_RECEIPT_ENTRYID = 0x00460102, - PR_READ_RECEIPT_ENTRYID_ERROR = 0x0046000a, - PR_MESSAGE_SUBMISSION_ID = 0x00470102, - PR_MESSAGE_SUBMISSION_ID_ERROR = 0x0047000a, - PR_PROVIDER_SUBMIT_TIME = 0x00480040, - PR_PROVIDER_SUBMIT_TIME_ERROR = 0x0048000a, - PR_ORIGINAL_SUBJECT = 0x0049001e, - PR_ORIGINAL_SUBJECT_UNICODE = 0x0049001f, - PR_ORIGINAL_SUBJECT_ERROR = 0x0049000a, - PR_DISC_VAL = 0x004a000b, - PR_DISC_VAL_ERROR = 0x004a000a, - PR_ORIG_MESSAGE_CLASS = 0x004b001e, - PR_ORIG_MESSAGE_CLASS_UNICODE = 0x004b001f, - PR_ORIG_MESSAGE_CLASS_ERROR = 0x004b000a, - PR_ORIGINAL_AUTHOR_ENTRYID = 0x004c0102, - PR_ORIGINAL_AUTHOR_ENTRYID_ERROR = 0x004c000a, - PR_ORIGINAL_AUTHOR_NAME = 0x004d001e, - PR_ORIGINAL_AUTHOR_NAME_UNICODE = 0x004d001f, - PR_ORIGINAL_AUTHOR_NAME_ERROR = 0x004d000a, - PR_ORIGINAL_SUBMIT_TIME = 0x004e0040, - PR_ORIGINAL_SUBMIT_TIME_ERROR = 0x004e000a, - PR_REPLY_RECIPIENT_ENTRIES = 0x004f0102, - PR_REPLY_RECIPIENT_ENTRIES_ERROR = 0x004f000a, - PR_REPLY_RECIPIENT_NAMES = 0x0050001e, - PR_REPLY_RECIPIENT_NAMES_UNICODE = 0x0050001f, - PR_REPLY_RECIPIENT_NAMES_ERROR = 0x0050000a, - PR_RECEIVED_BY_SEARCH_KEY = 0x00510102, - PR_RECEIVED_BY_SEARCH_KEY_ERROR = 0x0051000a, - PR_RCVD_REPRESENTING_SEARCH_KEY = 0x00520102, - PR_RCVD_REPRESENTING_SEARCH_KEY_ERROR = 0x0052000a, - PR_READ_RECEIPT_SEARCH_KEY = 0x00530102, - PR_READ_RECEIPT_SEARCH_KEY_ERROR = 0x0053000a, - PR_REPORT_SEARCH_KEY = 0x00540102, - PR_REPORT_SEARCH_KEY_ERROR = 0x0054000a, - PR_ORIGINAL_DELIVERY_TIME = 0x00550040, - PR_ORIGINAL_DELIVERY_TIME_ERROR = 0x0055000a, - PR_ORIGINAL_AUTHOR_SEARCH_KEY = 0x00560102, - PR_ORIGINAL_AUTHOR_SEARCH_KEY_ERROR = 0x0056000a, - PR_MESSAGE_TO_ME = 0x0057000b, - PR_MESSAGE_TO_ME_ERROR = 0x0057000a, - PR_MESSAGE_CC_ME = 0x0058000b, - PR_MESSAGE_CC_ME_ERROR = 0x0058000a, - PR_MESSAGE_RECIP_ME = 0x0059000b, - PR_MESSAGE_RECIP_ME_ERROR = 0x0059000a, - PR_ORIGINAL_SENDER_NAME = 0x005a001e, - PR_ORIGINAL_SENDER_NAME_UNICODE = 0x005a001f, - PR_ORIGINAL_SENDER_NAME_ERROR = 0x005a000a, - PR_ORIGINAL_SENDER_ENTRYID = 0x005b0102, - PR_ORIGINAL_SENDER_ENTRYID_ERROR = 0x005b000a, - PR_ORIGINAL_SENDER_SEARCH_KEY = 0x005c0102, - PR_ORIGINAL_SENDER_SEARCH_KEY_ERROR = 0x005c000a, - PR_ORIGINAL_SENT_REPRESENTING_NAME = 0x005d001e, - PR_ORIGINAL_SENT_REPRESENTING_NAME_UNICODE = 0x005d001f, - PR_ORIGINAL_SENT_REPRESENTING_NAME_ERROR = 0x005d000a, - PR_ORIGINAL_SENT_REPRESENTING_ENTRYID = 0x005e0102, - PR_ORIGINAL_SENT_REPRESENTING_ENTRYID_ERROR = 0x005e000a, - PR_ORIGINAL_SENT_REPRESENTING_SEARCH_KEY = 0x005f0102, - PR_ORIGINAL_SENT_REPRESENTING_SEARCH_KEY_ERROR = 0x005f000a, - PR_START_DATE = 0x00600040, - PR_START_DATE_ERROR = 0x0060000a, - PR_END_DATE = 0x00610040, - PR_END_DATE_ERROR = 0x0061000a, - PR_OWNER_APPT_ID = 0x00620003, - PR_OWNER_APPT_ID_ERROR = 0x0062000a, - PR_RESPONSE_REQUESTED = 0x0063000b, - PR_RESPONSE_REQUESTED_ERROR = 0x0063000a, - PR_SENT_REPRESENTING_ADDRTYPE = 0x0064001e, - PR_SENT_REPRESENTING_ADDRTYPE_UNICODE = 0x0064001f, - PR_SENT_REPRESENTING_ADDRTYPE_ERROR = 0x0064000a, - PR_SENT_REPRESENTING_EMAIL_ADDRESS = 0x0065001e, - PR_SENT_REPRESENTING_EMAIL_ADDRESS_UNICODE = 0x0065001f, - PR_SENT_REPRESENTING_EMAIL_ADDRESS_ERROR = 0x0065000a, - PR_ORIGINAL_SENDER_ADDRTYPE = 0x0066001e, - PR_ORIGINAL_SENDER_ADDRTYPE_UNICODE = 0x0066001f, - PR_ORIGINAL_SENDER_ADDRTYPE_ERROR = 0x0066000a, - PR_ORIGINAL_SENDER_EMAIL_ADDRESS = 0x0067001e, - PR_ORIGINAL_SENDER_EMAIL_ADDRESS_UNICODE = 0x0067001f, - PR_ORIGINAL_SENDER_EMAIL_ADDRESS_ERROR = 0x0067000a, - PR_ORIGINAL_SENT_REPRESENTING_ADDRTYPE = 0x0068001e, - PR_ORIGINAL_SENT_REPRESENTING_ADDRTYPE_UNICODE = 0x0068001f, - PR_ORIGINAL_SENT_REPRESENTING_ADDRTYPE_ERROR = 0x0068000a, - PR_ORIGINAL_SENT_REPRESENTING_EMAIL_ADDRESS = 0x0069001e, - PR_ORIGINAL_SENT_REPRESENTING_EMAIL_ADDRESS_UNICODE = 0x0069001f, - PR_ORIGINAL_SENT_REPRESENTING_EMAIL_ADDRESS_ERROR = 0x0069000a, - PR_CONVERSATION_TOPIC = 0x0070001e, - PR_CONVERSATION_TOPIC_UNICODE = 0x0070001f, - PR_CONVERSATION_TOPIC_ERROR = 0x0070000a, - PR_CONVERSATION_INDEX = 0x00710102, - PR_CONVERSATION_INDEX_ERROR = 0x0071000a, - PR_ORIGINAL_DISPLAY_BCC = 0x0072001e, - PR_ORIGINAL_DISPLAY_BCC_UNICODE = 0x0072001f, - PR_ORIGINAL_DISPLAY_BCC_ERROR = 0x0072000a, - PR_ORIGINAL_DISPLAY_CC = 0x0073001e, - PR_ORIGINAL_DISPLAY_CC_UNICODE = 0x0073001f, - PR_ORIGINAL_DISPLAY_CC_ERROR = 0x0073000a, - PR_ORIGINAL_DISPLAY_TO = 0x0074001e, - PR_ORIGINAL_DISPLAY_TO_UNICODE = 0x0074001f, - PR_ORIGINAL_DISPLAY_TO_ERROR = 0x0074000a, - PR_RECEIVED_BY_ADDRTYPE = 0x0075001e, - PR_RECEIVED_BY_ADDRTYPE_UNICODE = 0x0075001f, - PR_RECEIVED_BY_ADDRTYPE_ERROR = 0x0075000a, - PR_RECEIVED_BY_EMAIL_ADDRESS = 0x0076001e, - PR_RECEIVED_BY_EMAIL_ADDRESS_UNICODE = 0x0076001f, - PR_RECEIVED_BY_EMAIL_ADDRESS_ERROR = 0x0076000a, - PR_RCVD_REPRESENTING_ADDRTYPE = 0x0077001e, - PR_RCVD_REPRESENTING_ADDRTYPE_UNICODE = 0x0077001f, - PR_RCVD_REPRESENTING_ADDRTYPE_ERROR = 0x0077000a, - PR_RCVD_REPRESENTING_EMAIL_ADDRESS = 0x0078001e, - PR_RCVD_REPRESENTING_EMAIL_ADDRESS_UNICODE = 0x0078001f, - PR_RCVD_REPRESENTING_EMAIL_ADDRESS_ERROR = 0x0078000a, - PR_ORIGINAL_AUTHOR_ADDRTYPE = 0x0079001e, - PR_ORIGINAL_AUTHOR_ADDRTYPE_UNICODE = 0x0079001f, - PR_ORIGINAL_AUTHOR_ADDRTYPE_ERROR = 0x0079000a, - PR_ORIGINAL_AUTHOR_EMAIL_ADDRESS = 0x007a001e, - PR_ORIGINAL_AUTHOR_EMAIL_ADDRESS_UNICODE = 0x007a001f, - PR_ORIGINAL_AUTHOR_EMAIL_ADDRESS_ERROR = 0x007a000a, - PR_ORIGINALLY_INTENDED_RECIP_ADDRTYPE = 0x007b001e, - PR_ORIGINALLY_INTENDED_RECIP_ADDRTYPE_UNICODE = 0x007b001f, - PR_ORIGINALLY_INTENDED_RECIP_ADDRTYPE_ERROR = 0x007b000a, - PR_ORIGINALLY_INTENDED_RECIP_EMAIL_ADDRESS = 0x007c001e, - PR_ORIGINALLY_INTENDED_RECIP_EMAIL_ADDRESS_UNICODE = 0x007c001f, - PR_ORIGINALLY_INTENDED_RECIP_EMAIL_ADDRESS_ERROR = 0x007c000a, - PR_TRANSPORT_MESSAGE_HEADERS = 0x007d001e, - PR_TRANSPORT_MESSAGE_HEADERS_UNICODE = 0x007d001f, - PR_TRANSPORT_MESSAGE_HEADERS_ERROR = 0x007d000a, - PR_DELEGATION = 0x007e0102, - PR_DELEGATION_ERROR = 0x007e000a, - PR_TNEF_CORRELATION_KEY = 0x007f0102, - PR_TNEF_CORRELATION_KEY_ERROR = 0x007f000a, - PR_CONTENT_INTEGRITY_CHECK = 0x0c000102, - PR_CONTENT_INTEGRITY_CHECK_ERROR = 0x0c00000a, - PR_EXPLICIT_CONVERSION = 0x0c010003, - PR_EXPLICIT_CONVERSION_ERROR = 0x0c01000a, - PR_IPM_RETURN_REQUESTED = 0x0c02000b, - PR_IPM_RETURN_REQUESTED_ERROR = 0x0c02000a, - PR_MESSAGE_TOKEN = 0x0c030102, - PR_MESSAGE_TOKEN_ERROR = 0x0c03000a, - PR_NDR_REASON_CODE = 0x0c040003, - PR_NDR_REASON_CODE_ERROR = 0x0c04000a, - PR_NDR_DIAG_CODE = 0x0c050003, - PR_NDR_DIAG_CODE_ERROR = 0x0c05000a, - PR_NON_RECEIPT_NOTIFICATION_REQUESTED = 0x0c06000b, - PR_NON_RECEIPT_NOTIFICATION_REQUESTED_ERROR = 0x0c06000a, - PR_DELIVERY_POINT = 0x0c070003, - PR_DELIVERY_POINT_ERROR = 0x0c07000a, - PR_ORIGINATOR_NON_DELIVERY_REPORT_REQUESTED = 0x0c08000b, - PR_ORIGINATOR_NON_DELIVERY_REPORT_REQUESTED_ERROR = 0x0c08000a, - PR_ORIGINATOR_REQUESTED_ALTERNATE_RECIPIENT = 0x0c090102, - PR_ORIGINATOR_REQUESTED_ALTERNATE_RECIPIENT_ERROR = 0x0c09000a, - PR_PHYSICAL_DELIVERY_BUREAU_FAX_DELIVERY = 0x0c0a000b, - PR_PHYSICAL_DELIVERY_BUREAU_FAX_DELIVERY_ERROR = 0x0c0a000a, - PR_PHYSICAL_DELIVERY_MODE = 0x0c0b0003, - PR_PHYSICAL_DELIVERY_MODE_ERROR = 0x0c0b000a, - PR_PHYSICAL_DELIVERY_REPORT_REQUEST = 0x0c0c0003, - PR_PHYSICAL_DELIVERY_REPORT_REQUEST_ERROR = 0x0c0c000a, - PR_PHYSICAL_FORWARDING_ADDRESS = 0x0c0d0102, - PR_PHYSICAL_FORWARDING_ADDRESS_ERROR = 0x0c0d000a, - PR_PHYSICAL_FORWARDING_ADDRESS_REQUESTED = 0x0c0e000b, - PR_PHYSICAL_FORWARDING_ADDRESS_REQUESTED_ERROR = 0x0c0e000a, - PR_PHYSICAL_FORWARDING_PROHIBITED = 0x0c0f000b, - PR_PHYSICAL_FORWARDING_PROHIBITED_ERROR = 0x0c0f000a, - PR_PHYSICAL_RENDITION_ATTRIBUTES = 0x0c100102, - PR_PHYSICAL_RENDITION_ATTRIBUTES_ERROR = 0x0c10000a, - PR_PROOF_OF_DELIVERY = 0x0c110102, - PR_PROOF_OF_DELIVERY_ERROR = 0x0c11000a, - PR_PROOF_OF_DELIVERY_REQUESTED = 0x0c12000b, - PR_PROOF_OF_DELIVERY_REQUESTED_ERROR = 0x0c12000a, - PR_RECIPIENT_CERTIFICATE = 0x0c130102, - PR_RECIPIENT_CERTIFICATE_ERROR = 0x0c13000a, - PR_RECIPIENT_NUMBER_FOR_ADVICE = 0x0c14001e, - PR_RECIPIENT_NUMBER_FOR_ADVICE_UNICODE = 0x0c14001f, - PR_RECIPIENT_NUMBER_FOR_ADVICE_ERROR = 0x0c14000a, - PR_RECIPIENT_TYPE = 0x0c150003, - PR_RECIPIENT_TYPE_ERROR = 0x0c15000a, - PR_REGISTERED_MAIL_TYPE = 0x0c160003, - PR_REGISTERED_MAIL_TYPE_ERROR = 0x0c16000a, - PR_REPLY_REQUESTED = 0x0c17000b, - PR_REPLY_REQUESTED_ERROR = 0x0c17000a, - PR_REQUESTED_DELIVERY_METHOD = 0x0c180003, - PR_REQUESTED_DELIVERY_METHOD_ERROR = 0x0c18000a, - PR_SENDER_ENTRYID = 0x0c190102, - PR_SENDER_ENTRYID_ERROR = 0x0c19000a, - PR_SENDER_NAME = 0x0c1a001e, - PR_SENDER_NAME_UNICODE = 0x0c1a001f, - PR_SENDER_NAME_ERROR = 0x0c1a000a, - PR_SUPPLEMENTARY_INFO = 0x0c1b001e, - PR_SUPPLEMENTARY_INFO_UNICODE = 0x0c1b001f, - PR_SUPPLEMENTARY_INFO_ERROR = 0x0c1b000a, - PR_TYPE_OF_MTS_USER = 0x0c1c0003, - PR_TYPE_OF_MTS_USER_ERROR = 0x0c1c000a, - PR_SENDER_SEARCH_KEY = 0x0c1d0102, - PR_SENDER_SEARCH_KEY_ERROR = 0x0c1d000a, - PR_SENDER_ADDRTYPE = 0x0c1e001e, - PR_SENDER_ADDRTYPE_UNICODE = 0x0c1e001f, - PR_SENDER_ADDRTYPE_ERROR = 0x0c1e000a, - PR_SENDER_EMAIL_ADDRESS = 0x0c1f001e, - PR_SENDER_EMAIL_ADDRESS_UNICODE = 0x0c1f001f, - PR_SENDER_EMAIL_ADDRESS_ERROR = 0x0c1f000a, - PR_CURRENT_VERSION = 0x0e000014, - PR_CURRENT_VERSION_ERROR = 0x0e00000a, - PR_DELETE_AFTER_SUBMIT = 0x0e01000b, - PR_DELETE_AFTER_SUBMIT_ERROR = 0x0e01000a, - PR_DISPLAY_BCC = 0x0e02001e, - PR_DISPLAY_BCC_UNICODE = 0x0e02001f, - PR_DISPLAY_BCC_ERROR = 0x0e02000a, - PR_DISPLAY_CC = 0x0e03001e, - PR_DISPLAY_CC_UNICODE = 0x0e03001f, - PR_DISPLAY_CC_ERROR = 0x0e03000a, - PR_DISPLAY_TO = 0x0e04001e, - PR_DISPLAY_TO_UNICODE = 0x0e04001f, - PR_DISPLAY_TO_ERROR = 0x0e04000a, - PR_PARENT_DISPLAY = 0x0e05001e, - PR_PARENT_DISPLAY_UNICODE = 0x0e05001f, - PR_PARENT_DISPLAY_ERROR = 0x0e05000a, - PR_MESSAGE_DELIVERY_TIME = 0x0e060040, - PR_MESSAGE_DELIVERY_TIME_ERROR = 0x0e06000a, - PR_MESSAGE_FLAGS = 0x0e070003, - PR_MESSAGE_FLAGS_ERROR = 0x0e07000a, - PR_MESSAGE_SIZE = 0x0e080003, - PR_MESSAGE_SIZE_ERROR = 0x0e08000a, - PR_MESSAGE_SIZE_EXTENDED = 0x0e080014, - PR_PARENT_ENTRYID = 0x0e090102, - PR_PARENT_ENTRYID_ERROR = 0x0e09000a, - PR_SENTMAIL_ENTRYID = 0x0e0a0102, - PR_SENTMAIL_ENTRYID_ERROR = 0x0e0a000a, - PR_CORRELATE = 0x0e0c000b, - PR_CORRELATE_ERROR = 0x0e0c000a, - PR_CORRELATE_MTSID = 0x0e0d0102, - PR_CORRELATE_MTSID_ERROR = 0x0e0d000a, - PR_DISCRETE_VALUES = 0x0e0e000b, - PR_DISCRETE_VALUES_ERROR = 0x0e0e000a, - PR_RESPONSIBILITY = 0x0e0f000b, - PR_RESPONSIBILITY_ERROR = 0x0e0f000a, - PR_SPOOLER_STATUS = 0x0e100003, - PR_SPOOLER_STATUS_ERROR = 0x0e10000a, - PR_TRANSPORT_STATUS = 0x0e110003, - PR_TRANSPORT_STATUS_ERROR = 0x0e11000a, - PR_MESSAGE_RECIPIENTS = 0x0e12000d, - PR_MESSAGE_RECIPIENTS_ERROR = 0x0e12000a, - PR_MESSAGE_ATTACHMENTS = 0x0e13000d, - PR_MESSAGE_ATTACHMENTS_ERROR = 0x0e13000a, - PR_SUBMIT_FLAGS = 0x0e140003, - PR_SUBMIT_FLAGS_ERROR = 0x0e14000a, - PR_RECIPIENT_STATUS = 0x0e150003, - PR_RECIPIENT_STATUS_ERROR = 0x0e15000a, - PR_TRANSPORT_KEY = 0x0e160003, - PR_TRANSPORT_KEY_ERROR = 0x0e16000a, - PR_MSG_STATUS = 0x0e170003, - PR_MSG_STATUS_ERROR = 0x0e17000a, - PR_MESSAGE_DOWNLOAD_TIME = 0x0e180003, - PR_MESSAGE_DOWNLOAD_TIME_ERROR = 0x0e18000a, - PR_CREATION_VERSION = 0x0e190014, - PR_CREATION_VERSION_ERROR = 0x0e19000a, - PR_MODIFY_VERSION = 0x0e1a0014, - PR_MODIFY_VERSION_ERROR = 0x0e1a000a, - PR_HASATTACH = 0x0e1b000b, - PR_HASATTACH_ERROR = 0x0e1b000a, - PR_BODY_CRC = 0x0e1c0003, - PR_BODY_CRC_ERROR = 0x0e1c000a, - PR_NORMALIZED_SUBJECT = 0x0e1d001e, - PR_NORMALIZED_SUBJECT_UNICODE = 0x0e1d001f, - PR_NORMALIZED_SUBJECT_ERROR = 0x0e1d000a, - PR_RTF_IN_SYNC = 0x0e1f000b, - PR_RTF_IN_SYNC_ERROR = 0x0e1f000a, - PR_ATTACH_SIZE = 0x0e200003, - PR_ATTACH_SIZE_ERROR = 0x0e20000a, - PR_ATTACH_NUM = 0x0e210003, - PR_ATTACH_NUM_ERROR = 0x0e21000a, - PR_PREPROCESS = 0x0e22000b, - PR_PREPROCESS_ERROR = 0x0e22000a, - PR_INTERNET_ARTICLE_NUMBER = 0x0e230003, - PR_INTERNET_ARTICLE_NUMBER_ERROR = 0x0e23000a, - PR_NEWSGROUP_NAME = 0x0e24001e, - PR_NEWSGROUP_NAME_UNICODE = 0x0e24001f, - PR_NEWSGROUP_NAME_ERROR = 0x0e24000a, - PR_ORIGINATING_MTA_CERTIFICATE = 0x0e250102, - PR_ORIGINATING_MTA_CERTIFICATE_ERROR = 0x0e25000a, - PR_PROOF_OF_SUBMISSION = 0x0e260102, - PR_PROOF_OF_SUBMISSION_ERROR = 0x0e26000a, - PR_NT_SECURITY_DESCRIPTOR = 0x0e270102, - PR_NT_SECURITY_DESCRIPTOR_ERROR = 0x0e27000a, - PR_CREATOR_SID = 0x0e580102, - PR_CREATOR_SID_ERROR = 0x0e58000a, - PR_LAST_MODIFIER_SID = 0x0e590102, - PR_LAST_MODIFIER_SID_ERROR = 0x0e59000a, - PR_MIME_HANDLER_CLASSIDS = 0x0e5e0048, - PR_MIME_HANDLER_CLASSIDS_ERROR = 0x0e5e000a, - PR_URL_COMP_NAME_POSTFIX = 0x0e610003, - PR_URL_COMP_NAME_POSTFIX_ERROR = 0x0e61000a, - PR_URL_COMP_NAME_SET = 0x0e62000b, - PR_URL_COMP_NAME_SET_ERROR = 0x0e62000a, - PR_SUBFOLDER_CT = 0x0e630003, - PR_SUBFOLDER_CT_ERROR = 0x0e63000a, - PR_DELETED_SUBFOLDER_CT = 0x0e640003, - PR_DELETED_SUBFOLDER_CT_ERROR = 0x0e64000a, - PR_DELETE_TIME = 0x0e660040, - PR_DELETE_TIME_ERROR = 0x0e66000a, - PR_AGE_LIMIT = 0x0e670102, - PR_AGE_LIMIT_ERROR = 0x0e67000a, - PR_TRUST_SENDER = 0x0e790003, - PR_TRUST_SENDER_ERROR = 0x0e79000a, - PR_ATTACH_VIRUS_SCAN_INFO = 0x0e960102, - PR_ATTACH_VIRUS_SCAN_INFO_ERROR = 0x0e96000a, - PR_ACCESS = 0x0ff40003, - PR_ACCESS_ERROR = 0x0ff4000a, - PR_ROW_TYPE = 0x0ff50003, - PR_ROW_TYPE_ERROR = 0x0ff5000a, - PR_INSTANCE_KEY = 0x0ff60102, - PR_INSTANCE_KEY_ERROR = 0x0ff6000a, - PR_ACCESS_LEVEL = 0x0ff70003, - PR_ACCESS_LEVEL_ERROR = 0x0ff7000a, - PR_MAPPING_SIGNATURE = 0x0ff80102, - PR_MAPPING_SIGNATURE_ERROR = 0x0ff8000a, - PR_RECORD_KEY = 0x0ff90102, - PR_RECORD_KEY_ERROR = 0x0ff9000a, - PR_STORE_RECORD_KEY = 0x0ffa0102, - PR_STORE_RECORD_KEY_ERROR = 0x0ffa000a, - PR_STORE_ENTRYID = 0x0ffb0102, - PR_STORE_ENTRYID_ERROR = 0x0ffb000a, - PR_MINI_ICON = 0x0ffc0102, - PR_MINI_ICON_ERROR = 0x0ffc000a, - PR_ICON = 0x0ffd0102, - PR_ICON_ERROR = 0x0ffd000a, - PR_OBJECT_TYPE = 0x0ffe0003, - PR_OBJECT_TYPE_ERROR = 0x0ffe000a, - PR_ENTRYID = 0x0fff0102, - PR_ENTRYID_ERROR = 0x0fff000a, - PR_BODY = 0x1000001e, - PR_BODY_UNICODE = 0x1000001f, - PR_BODY_ERROR = 0x1000000a, - PR_REPORT_TEXT = 0x1001001e, - PR_REPORT_TEXT_UNICODE = 0x1001001f, - PR_REPORT_TEXT_ERROR = 0x1001000a, - PR_ORIGINATOR_AND_DL_EXPANSION_HISTORY = 0x10020102, - PR_ORIGINATOR_AND_DL_EXPANSION_HISTORY_ERROR = 0x1002000a, - PR_REPORTING_DL_NAME = 0x10030102, - PR_REPORTING_DL_NAME_ERROR = 0x1003000a, - PR_REPORTING_MTA_CERTIFICATE = 0x10040102, - PR_REPORTING_MTA_CERTIFICATE_ERROR = 0x1004000a, - PR_RTF_SYNC_BODY_CRC = 0x10060003, - PR_RTF_SYNC_BODY_CRC_ERROR = 0x1006000a, - PR_RTF_SYNC_BODY_COUNT = 0x10070003, - PR_RTF_SYNC_BODY_COUNT_ERROR = 0x1007000a, - PR_RTF_SYNC_BODY_TAG = 0x1008001e, - PR_RTF_SYNC_BODY_TAG_UNICODE = 0x1008001f, - PR_RTF_SYNC_BODY_TAG_ERROR = 0x1008000a, - PR_RTF_COMPRESSED = 0x10090102, - PR_RTF_COMPRESSED_ERROR = 0x1009000a, - PR_RTF_SYNC_PREFIX_COUNT = 0x10100003, - PR_RTF_SYNC_PREFIX_COUNT_ERROR = 0x1010000a, - PR_RTF_SYNC_TRAILING_COUNT = 0x10110003, - PR_RTF_SYNC_TRAILING_COUNT_ERROR = 0x1011000a, - PR_ORIGINALLY_INTENDED_RECIP_ENTRYID = 0x10120102, - PR_ORIGINALLY_INTENDED_RECIP_ENTRYID_ERROR = 0x1012000a, - PR_HTML = 0x10130102, - PR_HTML_ERROR = 0x1013000a, - PR_INTERNET_APPROVED = 0x1030001e, - PR_INTERNET_APPROVED_UNICODE = 0x1030001f, - PR_INTERNET_APPROVED_ERROR = 0x1030000a, - PR_INTERNET_CONTROL = 0x1031001e, - PR_INTERNET_CONTROL_UNICODE = 0x1031001f, - PR_INTERNET_CONTROL_ERROR = 0x1031000a, - PR_INTERNET_DISTRIBUTION = 0x1032001e, - PR_INTERNET_DISTRIBUTION_UNICODE = 0x1032001f, - PR_INTERNET_DISTRIBUTION_ERROR = 0x1032000a, - PR_INTERNET_FOLLOWUP_TO = 0x1033001e, - PR_INTERNET_FOLLOWUP_TO_UNICODE = 0x1033001f, - PR_INTERNET_FOLLOWUP_TO_ERROR = 0x1033000a, - PR_INTERNET_LINES = 0x10340003, - PR_INTERNET_LINES_ERROR = 0x1034000a, - PR_INTERNET_MESSAGE_ID = 0x1035001e, - PR_INTERNET_MESSAGE_ID_UNICODE = 0x1035001f, - PR_INTERNET_MESSAGE_ID_ERROR = 0x1035000a, - PR_INTERNET_NEWSGROUPS = 0x1036001e, - PR_INTERNET_NEWSGROUPS_UNICODE = 0x1036001f, - PR_INTERNET_NEWSGROUPS_ERROR = 0x1036000a, - PR_INTERNET_ORGANIZATION = 0x1037001e, - PR_INTERNET_ORGANIZATION_UNICODE = 0x1037001f, - PR_INTERNET_ORGANIZATION_ERROR = 0x1037000a, - PR_INTERNET_NNTP_PATH = 0x1038001e, - PR_INTERNET_NNTP_PATH_UNICODE = 0x1038001f, - PR_INTERNET_NNTP_PATH_ERROR = 0x1038000a, - PR_INTERNET_REFERENCES = 0x1039001e, - PR_INTERNET_REFERENCES_UNICODE = 0x1039001f, - PR_INTERNET_REFERENCES_ERROR = 0x1039000a, - PR_SUPERSEDES = 0x103a001e, - PR_SUPERSEDES_UNICODE = 0x103a001f, - PR_SUPERSEDES_ERROR = 0x103a000a, - PR_POST_FOLDER_ENTRIES = 0x103b0102, - PR_POST_FOLDER_ENTRIES_ERROR = 0x103b000a, - PR_POST_FOLDER_NAMES = 0x103c001e, - PR_POST_FOLDER_NAMES_UNICODE = 0x103c001f, - PR_POST_FOLDER_NAMES_ERROR = 0x103c000a, - PR_POST_REPLY_FOLDER_ENTRIES = 0x103d0102, - PR_POST_REPLY_FOLDER_ENTRIES_ERROR = 0x103d000a, - PR_POST_REPLY_FOLDER_NAMES = 0x103e001e, - PR_POST_REPLY_FOLDER_NAMES_UNICODE = 0x103e001f, - PR_POST_REPLY_FOLDER_NAMES_ERROR = 0x103e000a, - PR_POST_REPLY_DENIED = 0x103f0102, - PR_POST_REPLY_DENIED_ERROR = 0x103f000a, - PR_NNTP_XREF = 0x1040001e, - PR_NNTP_XREF_UNICODE = 0x1040001f, - PR_NNTP_XREF_ERROR = 0x1040000a, - PR_INTERNET_PRECEDENCE = 0x1041001e, - PR_INTERNET_PRECEDENCE_UNICODE = 0x1041001f, - PR_INTERNET_PRECEDENCE_ERROR = 0x1041000a, - PR_IN_REPLY_TO_ID = 0x1042001e, - PR_IN_REPLY_TO_ID_UNICODE = 0x1042001f, - PR_IN_REPLY_TO_ID_ERROR = 0x1042000a, - PR_LIST_HELP = 0x1043001e, - PR_LIST_HELP_UNICODE = 0x1043001f, - PR_LIST_HELP_ERROR = 0x1043000a, - PR_LIST_SUBSCRIBE = 0x1044001e, - PR_LIST_SUBSCRIBE_UNICODE = 0x1044001f, - PR_LIST_SUBSCRIBE_ERROR = 0x1044000a, - PR_LIST_UNSUBSCRIBE = 0x1045001e, - PR_LIST_UNSUBSCRIBE_UNICODE = 0x1045001f, - PR_LIST_UNSUBSCRIBE_ERROR = 0x1045000a, - PR_ACTION = 0x10800003, - PR_ACTION_ERROR = 0x1080000a, - PR_ACTION_FLAG = 0x10810003, - PR_ACTION_FLAG_ERROR = 0x1081000a, - PR_ACTION_DATE = 0x10820040, - PR_ACTION_DATE_ERROR = 0x1082000a, - PR_FLAG_STATUS = 0x10900003, - PR_FLAG_STATUS_ERROR = 0x1090000a, - PR_FLAG_COMPLETE = 0x10910040, - PR_FLAG_COMPLETE_ERROR = 0x1091000a, - PR_SMTP_TEMP_TBL_DATA = 0x10c00102, - PR_SMTP_TEMP_TBL_DATA_ERROR = 0x10c0000a, - PR_SMTP_TEMP_TBL_DATA_2 = 0x10c10003, - PR_SMTP_TEMP_TBL_DATA_2_ERROR = 0x10c1000a, - PR_SMTP_TEMP_TBL_DATA_3 = 0x10c20102, - PR_SMTP_TEMP_TBL_DATA_3_ERROR = 0x10c2000a, - PR_CAL_START_TIME = 0x10c30040, - PR_CAL_START_TIME_ERROR = 0x10c3000a, - PR_CAL_END_TIME = 0x10c40040, - PR_CAL_END_TIME_ERROR = 0x10c4000a, - PR_CAL_RECURRING_ID = 0x10c50040, - PR_CAL_RECURRING_ID_ERROR = 0x10c5000a, - PR_DAV_SUBMIT_DATA = 0x10c6001e, - PR_DAV_SUBMIT_DATA_UNICODE = 0x10c6001f, - PR_DAV_SUBMIT_DATA_ERROR = 0x10c6000a, - PR_CDO_EXPANSION_INDEX = 0x10c70003, - PR_CDO_EXPANSION_INDEX_ERROR = 0x10c7000a, - PR_IFS_INTERNAL_DATA = 0x10c80102, - PR_IFS_INTERNAL_DATA_ERROR = 0x10c8000a, - PR_CAL_REMINDER_NEXT_TIME = 0x10ca0040, - PR_CAL_REMINDER_NEXT_TIME_ERROR = 0x10ca000a, - PR_OWA_URL = 0x10f1001e, - PR_OWA_URL_UNICODE = 0x10f1001f, - PR_OWA_URL_ERROR = 0x10f1000a, - PR_DISABLE_FULL_FIDELITY = 0x10f2000b, - PR_DISABLE_FULL_FIDELITY_ERROR = 0x10f2000a, - PR_URL_COMP_NAME = 0x10f3001e, - PR_URL_COMP_NAME_UNICODE = 0x10f3001f, - PR_URL_COMP_NAME_ERROR = 0x10f3000a, - PR_ATTR_HIDDEN = 0x10f4000b, - PR_ATTR_HIDDEN_ERROR = 0x10f4000a, - PR_ATTR_SYSTEM = 0x10f5000b, - PR_ATTR_SYSTEM_ERROR = 0x10f5000a, - PR_ATTR_READONLY = 0x10f6000b, - PR_ATTR_READONLY_ERROR = 0x10f6000a, - PR_P1_CONTENT = 0x11000102, - PR_P1_CONTENT_ERROR = 0x1100000a, - PR_P1_CONTENT_TYPE = 0x11010102, - PR_P1_CONTENT_TYPE_ERROR = 0x1101000a, - PR_ROWID = 0x30000003, - PR_ROWID_ERROR = 0x3000000a, - PR_DISPLAY_NAME = 0x3001001e, - PR_DISPLAY_NAME_UNICODE = 0x3001001f, - PR_DISPLAY_NAME_ERROR = 0x3001000a, - PR_ADDRTYPE = 0x3002001e, - PR_ADDRTYPE_UNICODE = 0x3002001f, - PR_ADDRTYPE_ERROR = 0x3002000a, - PR_EMAIL_ADDRESS = 0x3003001e, - PR_EMAIL_ADDRESS_UNICODE = 0x3003001f, - PR_EMAIL_ADDRESS_ERROR = 0x3003000a, - PR_COMMENT = 0x3004001e, - PR_COMMENT_UNICODE = 0x3004001f, - PR_COMMENT_ERROR = 0x3004000a, - PR_DEPTH = 0x30050003, - PR_DEPTH_ERROR = 0x3005000a, - PR_PROVIDER_DISPLAY = 0x3006001e, - PR_PROVIDER_DISPLAY_UNICODE = 0x3006001f, - PR_PROVIDER_DISPLAY_ERROR = 0x3006000a, - PR_CREATION_TIME = 0x30070040, - PR_CREATION_TIME_ERROR = 0x3007000a, - PR_LAST_MODIFICATION_TIME = 0x30080040, - PR_LAST_MODIFICATION_TIME_ERROR = 0x3008000a, - PR_RESOURCE_FLAGS = 0x30090003, - PR_RESOURCE_FLAGS_ERROR = 0x3009000a, - PR_PROVIDER_DLL_NAME = 0x300a001e, - PR_PROVIDER_DLL_NAME_UNICODE = 0x300a001f, - PR_PROVIDER_DLL_NAME_ERROR = 0x300a000a, - PR_SEARCH_KEY = 0x300b0102, - PR_SEARCH_KEY_ERROR = 0x300b000a, - PR_PROVIDER_UID = 0x300c0102, - PR_PROVIDER_UID_ERROR = 0x300c000a, - PR_PROVIDER_ORDINAL = 0x300d0003, - PR_PROVIDER_ORDINAL_ERROR = 0x300d000a, - PR_FORM_VERSION = 0x3301001e, - PR_FORM_VERSION_UNICODE = 0x3301001f, - PR_FORM_VERSION_ERROR = 0x3301000a, - PR_FORM_CLSID = 0x33020048, - PR_FORM_CLSID_ERROR = 0x3302000a, - PR_FORM_CONTACT_NAME = 0x3303001e, - PR_FORM_CONTACT_NAME_UNICODE = 0x3303001f, - PR_FORM_CONTACT_NAME_ERROR = 0x3303000a, - PR_FORM_CATEGORY = 0x3304001e, - PR_FORM_CATEGORY_UNICODE = 0x3304001f, - PR_FORM_CATEGORY_ERROR = 0x3304000a, - PR_FORM_CATEGORY_SUB = 0x3305001e, - PR_FORM_CATEGORY_SUB_UNICODE = 0x3305001f, - PR_FORM_CATEGORY_SUB_ERROR = 0x3305000a, - PR_FORM_HOST_MAP = 0x33061003, - PR_FORM_HOST_MAP_ERROR = 0x3306000a, - PR_FORM_HIDDEN = 0x3307000b, - PR_FORM_HIDDEN_ERROR = 0x3307000a, - PR_FORM_DESIGNER_NAME = 0x3308001e, - PR_FORM_DESIGNER_NAME_UNICODE = 0x3308001f, - PR_FORM_DESIGNER_NAME_ERROR = 0x3308000a, - PR_FORM_DESIGNER_GUID = 0x33090048, - PR_FORM_DESIGNER_GUID_ERROR = 0x3309000a, - PR_FORM_MESSAGE_BEHAVIOR = 0x330a0003, - PR_FORM_MESSAGE_BEHAVIOR_ERROR = 0x330a000a, - PR_DEFAULT_STORE = 0x3400000b, - PR_DEFAULT_STORE_ERROR = 0x3400000a, - PR_STORE_SUPPORT_MASK = 0x340d0003, - PR_STORE_SUPPORT_MASK_ERROR = 0x340d000a, - PR_STORE_STATE = 0x340e0003, - PR_STORE_STATE_ERROR = 0x340e000a, - PR_IPM_SUBTREE_SEARCH_KEY = 0x34100102, - PR_IPM_SUBTREE_SEARCH_KEY_ERROR = 0x3410000a, - PR_IPM_OUTBOX_SEARCH_KEY = 0x34110102, - PR_IPM_OUTBOX_SEARCH_KEY_ERROR = 0x3411000a, - PR_IPM_WASTEBASKET_SEARCH_KEY = 0x34120102, - PR_IPM_WASTEBASKET_SEARCH_KEY_ERROR = 0x3412000a, - PR_IPM_SENTMAIL_SEARCH_KEY = 0x34130102, - PR_IPM_SENTMAIL_SEARCH_KEY_ERROR = 0x3413000a, - PR_MDB_PROVIDER = 0x34140102, - PR_MDB_PROVIDER_ERROR = 0x3414000a, - PR_RECEIVE_FOLDER_SETTINGS = 0x3415000d, - PR_RECEIVE_FOLDER_SETTINGS_ERROR = 0x3415000a, - PR_VALID_FOLDER_MASK = 0x35df0003, - PR_VALID_FOLDER_MASK_ERROR = 0x35df000a, - PR_IPM_SUBTREE_ENTRYID = 0x35e00102, - PR_IPM_SUBTREE_ENTRYID_ERROR = 0x35e0000a, - PR_IPM_OUTBOX_ENTRYID = 0x35e20102, - PR_IPM_OUTBOX_ENTRYID_ERROR = 0x35e2000a, - PR_IPM_WASTEBASKET_ENTRYID = 0x35e30102, - PR_IPM_WASTEBASKET_ENTRYID_ERROR = 0x35e3000a, - PR_IPM_SENTMAIL_ENTRYID = 0x35e40102, - PR_IPM_SENTMAIL_ENTRYID_ERROR = 0x35e4000a, - PR_VIEWS_ENTRYID = 0x35e50102, - PR_VIEWS_ENTRYID_ERROR = 0x35e5000a, - PR_COMMON_VIEWS_ENTRYID = 0x35e60102, - PR_COMMON_VIEWS_ENTRYID_ERROR = 0x35e6000a, - PR_FINDER_ENTRYID = 0x35e70102, - PR_FINDER_ENTRYID_ERROR = 0x35e7000a, - PR_CONTAINER_FLAGS = 0x36000003, - PR_CONTAINER_FLAGS_ERROR = 0x3600000a, - PR_FOLDER_TYPE = 0x36010003, - PR_FOLDER_TYPE_ERROR = 0x3601000a, - PR_CONTENT_COUNT = 0x36020003, - PR_CONTENT_COUNT_ERROR = 0x3602000a, - PR_CONTENT_UNREAD = 0x36030003, - PR_CONTENT_UNREAD_ERROR = 0x3603000a, - PR_CREATE_TEMPLATES = 0x3604000d, - PR_CREATE_TEMPLATES_ERROR = 0x3604000a, - PR_DETAILS_TABLE = 0x3605000d, - PR_DETAILS_TABLE_ERROR = 0x3605000a, - PR_SEARCH = 0x3607000d, - PR_SEARCH_ERROR = 0x3607000a, - PR_SELECTABLE = 0x3609000b, - PR_SELECTABLE_ERROR = 0x3609000a, - PR_SUBFOLDERS = 0x360a000b, - PR_SUBFOLDERS_ERROR = 0x360a000a, - PR_STATUS = 0x360b0003, - PR_STATUS_ERROR = 0x360b000a, - PR_ANR = 0x360c001e, - PR_ANR_UNICODE = 0x360c001f, - PR_ANR_ERROR = 0x360c000a, - PR_CONTENTS_SORT_ORDER = 0x360d1003, - PR_CONTENTS_SORT_ORDER_ERROR = 0x360d000a, - PR_CONTAINER_HIERARCHY = 0x360e000d, - PR_CONTAINER_HIERARCHY_ERROR = 0x360e000a, - PR_CONTAINER_CONTENTS = 0x360f000d, - PR_CONTAINER_CONTENTS_ERROR = 0x360f000a, - PR_FOLDER_ASSOCIATED_CONTENTS = 0x3610000d, - PR_FOLDER_ASSOCIATED_CONTENTS_ERROR = 0x3610000a, - PR_DEF_CREATE_DL = 0x36110102, - PR_DEF_CREATE_DL_ERROR = 0x3611000a, - PR_DEF_CREATE_MAILUSER = 0x36120102, - PR_DEF_CREATE_MAILUSER_ERROR = 0x3612000a, - PR_CONTAINER_CLASS = 0x3613001e, - PR_CONTAINER_CLASS_UNICODE = 0x3613001f, - PR_CONTAINER_CLASS_ERROR = 0x3613000a, - PR_CONTAINER_MODIFY_VERSION = 0x36140014, - PR_CONTAINER_MODIFY_VERSION_ERROR = 0x3614000a, - PR_AB_PROVIDER_ID = 0x36150102, - PR_AB_PROVIDER_ID_ERROR = 0x3615000a, - PR_DEFAULT_VIEW_ENTRYID = 0x36160102, - PR_DEFAULT_VIEW_ENTRYID_ERROR = 0x3616000a, - PR_ASSOC_CONTENT_COUNT = 0x36170003, - PR_ASSOC_CONTENT_COUNT_ERROR = 0x3617000a, - PR_PACKED_NAME_PROPS = 0x361c0102, - PR_PACKED_NAME_PROPS_ERROR = 0x361c000a, - PR_IPM_APPOINTMENT_ENTRYID = 0x36d00102, - PR_IPM_APPOINTMENT_ENTRYID_ERROR = 0x36d0000a, - PR_IPM_CONTACT_ENTRYID = 0x36d10102, - PR_IPM_CONTACT_ENTRYID_ERROR = 0x36d1000a, - PR_IPM_JOURNAL_ENTRYID = 0x36d20102, - PR_IPM_JOURNAL_ENTRYID_ERROR = 0x36d2000a, - PR_IPM_NOTE_ENTRYID = 0x36d30102, - PR_IPM_NOTE_ENTRYID_ERROR = 0x36d3000a, - PR_IPM_TASK_ENTRYID = 0x36d40102, - PR_IPM_TASK_ENTRYID_ERROR = 0x36d4000a, - PR_REMINDERS_ONLINE_ENTRYID = 0x36d50102, - PR_REMINDERS_ONLINE_ENTRYID_ERROR = 0x36d5000a, - PR_REMINDERS_OFFLINE_ENTRYID = 0x36d60102, - PR_REMINDERS_OFFLINE_ENTRYID_ERROR = 0x36d6000a, - PR_IPM_DRAFTS_ENTRYID = 0x36d70102, - PR_IPM_DRAFTS_ENTRYID_ERROR = 0x36d7000a, - PR_OUTLOOK_2003_ENTRYIDS = 0x36d81102, - PR_OUTLOOK_2003_ENTRYIDS_ERROR = 0x36d8000a, - PR_FOLDER_WEBVIEWINFO = 0x36df0102, - PR_FOLDER_WEBVIEWINFO_ERROR = 0x36df000a, - PR_FOLDER_XVIEWINFO_E = 0x36e00102, - PR_FOLDER_XVIEWINFO_E_ERROR = 0x36e0000a, - PR_FOLDER_VIEWS_ONLY = 0x36e10003, - PR_FOLDER_VIEWS_ONLY_ERROR = 0x36e1000a, - PR_FREEBUSY_ENTRYIDS = 0x36e41102, - PR_FREEBUSY_ENTRYIDS_ERROR = 0x36e4000a, - PR_DEF_MSG_CLASS = 0x36e5001e, - PR_DEF_MSG_CLASS_UNICODE = 0x36e5001f, - PR_DEF_MSG_CLASS_ERROR = 0x36e5000a, - PR_DEF_FORM_NAME = 0x36e6001e, - PR_DEF_FORM_NAME_UNICODE = 0x36e6001f, - PR_DEF_FORM_NAME_ERROR = 0x36e6000a, - PR_GENERATE_EXCHANGE_VIEWS = 0x36e9000b, - PR_GENERATE_EXCHANGE_VIEWS_ERROR = 0x36e9000a, - PR_AGING_PERIOD = 0x36ec0003, - PR_AGING_PERIOD_ERROR = 0x36ec000a, - PR_AGING_GRANULARITY = 0x36ee0003, - PR_AGING_GRANULARITY_ERROR = 0x36ee000a, - PR_ATTACHMENT_X400_PARAMETERS = 0x37000102, - PR_ATTACHMENT_X400_PARAMETERS_ERROR = 0x3700000a, - PR_ATTACH_DATA_OBJ = 0x3701000d, - PR_ATTACH_DATA_OBJ_ERROR = 0x3701000a, - PR_ATTACH_DATA_BIN = 0x37010102, - PR_ATTACH_ENCODING = 0x37020102, - PR_ATTACH_ENCODING_ERROR = 0x3702000a, - PR_ATTACH_EXTENSION = 0x3703001e, - PR_ATTACH_EXTENSION_UNICODE = 0x3703001f, - PR_ATTACH_EXTENSION_ERROR = 0x3703000a, - PR_ATTACH_FILENAME = 0x3704001e, - PR_ATTACH_FILENAME_UNICODE = 0x3704001f, - PR_ATTACH_FILENAME_ERROR = 0x3704000a, - PR_ATTACH_METHOD = 0x37050003, - PR_ATTACH_METHOD_ERROR = 0x3705000a, - PR_ATTACH_LONG_FILENAME = 0x3707001e, - PR_ATTACH_LONG_FILENAME_UNICODE = 0x3707001f, - PR_ATTACH_LONG_FILENAME_ERROR = 0x3707000a, - PR_ATTACH_PATHNAME = 0x3708001e, - PR_ATTACH_PATHNAME_UNICODE = 0x3708001f, - PR_ATTACH_PATHNAME_ERROR = 0x3708000a, - PR_ATTACH_RENDERING = 0x37090102, - PR_ATTACH_RENDERING_ERROR = 0x3709000a, - PR_ATTACH_TAG = 0x370a0102, - PR_ATTACH_TAG_ERROR = 0x370a000a, - PR_RENDERING_POSITION = 0x370b0003, - PR_RENDERING_POSITION_ERROR = 0x370b000a, - PR_ATTACH_TRANSPORT_NAME = 0x370c001e, - PR_ATTACH_TRANSPORT_NAME_UNICODE = 0x370c001f, - PR_ATTACH_TRANSPORT_NAME_ERROR = 0x370c000a, - PR_ATTACH_LONG_PATHNAME = 0x370d001e, - PR_ATTACH_LONG_PATHNAME_UNICODE = 0x370d001f, - PR_ATTACH_LONG_PATHNAME_ERROR = 0x370d000a, - PR_ATTACH_MIME_TAG = 0x370e001e, - PR_ATTACH_MIME_TAG_UNICODE = 0x370e001f, - PR_ATTACH_MIME_TAG_ERROR = 0x370e000a, - PR_ATTACH_ADDITIONAL_INFO = 0x370f0102, - PR_ATTACH_ADDITIONAL_INFO_ERROR = 0x370f000a, - PR_ATTACH_CONTENT_ID = 0x3712001e, - PR_ATTACH_CONTENT_ID_UNICODE = 0x3712001f, - PR_ATTACH_CONTENT_ID_ERROR = 0x3712000a, - PR_ATTACH_CONTENT_LOCATION = 0x3713001e, - PR_ATTACH_CONTENT_LOCATION_UNICODE = 0x3713001f, - PR_ATTACH_CONTENT_LOCATION_ERROR = 0x3713000a, - PR_ATTACH_FLAGS = 0x37140003, - PR_ATTACH_FLAGS_ERROR = 0x3714000a, - PR_ATTACH_CONTENT_DISPOSITION = 0x3716001e, - PR_ATTACH_CONTENT_DISPOSITION_UNICODE = 0x3716001f, - PR_ATTACH_CONTENT_DISPOSITION_ERROR = 0x3716000a, - PR_SYNCEVENT_SUPPRESS_GUID = 0x38800102, - PR_SYNCEVENT_SUPPRESS_GUID_ERROR = 0x3880000a, - PR_DISPLAY_TYPE = 0x39000003, - PR_DISPLAY_TYPE_ERROR = 0x3900000a, - PR_TEMPLATEID = 0x39020102, - PR_TEMPLATEID_ERROR = 0x3902000a, - PR_PRIMARY_CAPABILITY = 0x39040102, - PR_PRIMARY_CAPABILITY_ERROR = 0x3904000a, - PR_SMTP_ADDRESS = 0x39fe001e, - PR_SMTP_ADDRESS_UNICODE = 0x39fe001f, - PR_SMTP_ADDRESS_ERROR = 0x39fe000a, - PR_7BIT_DISPLAY_NAME = 0x39ff001e, - PR_7BIT_DISPLAY_NAME_UNICODE = 0x39ff001f, - PR_7BIT_DISPLAY_NAME_ERROR = 0x39ff000a, - PR_ACCOUNT = 0x3a00001e, - PR_ACCOUNT_UNICODE = 0x3a00001f, - PR_ACCOUNT_ERROR = 0x3a00000a, - PR_ALTERNATE_RECIPIENT = 0x3a010102, - PR_ALTERNATE_RECIPIENT_ERROR = 0x3a01000a, - PR_CALLBACK_TELEPHONE_NUMBER = 0x3a02001e, - PR_CALLBACK_TELEPHONE_NUMBER_UNICODE = 0x3a02001f, - PR_CALLBACK_TELEPHONE_NUMBER_ERROR = 0x3a02000a, - PR_CONVERSION_PROHIBITED = 0x3a03000b, - PR_CONVERSION_PROHIBITED_ERROR = 0x3a03000a, - PR_DISCLOSE_RECIPIENTS = 0x3a04000b, - PR_DISCLOSE_RECIPIENTS_ERROR = 0x3a04000a, - PR_GENERATION = 0x3a05001e, - PR_GENERATION_UNICODE = 0x3a05001f, - PR_GENERATION_ERROR = 0x3a05000a, - PR_GIVEN_NAME = 0x3a06001e, - PR_GIVEN_NAME_UNICODE = 0x3a06001f, - PR_GIVEN_NAME_ERROR = 0x3a06000a, - PR_GOVERNMENT_ID_NUMBER = 0x3a07001e, - PR_GOVERNMENT_ID_NUMBER_UNICODE = 0x3a07001f, - PR_GOVERNMENT_ID_NUMBER_ERROR = 0x3a07000a, - PR_OFFICE_TELEPHONE_NUMBER = 0x3a08001e, - PR_OFFICE_TELEPHONE_NUMBER_UNICODE = 0x3a08001f, - PR_OFFICE_TELEPHONE_NUMBER_ERROR = 0x3a08000a, - PR_HOME_TELEPHONE_NUMBER = 0x3a09001e, - PR_HOME_TELEPHONE_NUMBER_UNICODE = 0x3a09001f, - PR_HOME_TELEPHONE_NUMBER_ERROR = 0x3a09000a, - PR_INITIALS = 0x3a0a001e, - PR_INITIALS_UNICODE = 0x3a0a001f, - PR_INITIALS_ERROR = 0x3a0a000a, - PR_KEYWORD = 0x3a0b001e, - PR_KEYWORD_UNICODE = 0x3a0b001f, - PR_KEYWORD_ERROR = 0x3a0b000a, - PR_LANGUAGE = 0x3a0c001e, - PR_LANGUAGE_UNICODE = 0x3a0c001f, - PR_LANGUAGE_ERROR = 0x3a0c000a, - PR_LOCATION = 0x3a0d001e, - PR_LOCATION_UNICODE = 0x3a0d001f, - PR_LOCATION_ERROR = 0x3a0d000a, - PR_MAIL_PERMISSION = 0x3a0e000b, - PR_MAIL_PERMISSION_ERROR = 0x3a0e000a, - PR_MHS_COMMON_NAME = 0x3a0f001e, - PR_MHS_COMMON_NAME_UNICODE = 0x3a0f001f, - PR_MHS_COMMON_NAME_ERROR = 0x3a0f000a, - PR_ORGANIZATIONAL_ID_NUMBER = 0x3a10001e, - PR_ORGANIZATIONAL_ID_NUMBER_UNICODE = 0x3a10001f, - PR_ORGANIZATIONAL_ID_NUMBER_ERROR = 0x3a10000a, - PR_SURNAME = 0x3a11001e, - PR_SURNAME_UNICODE = 0x3a11001f, - PR_SURNAME_ERROR = 0x3a11000a, - PR_ORIGINAL_ENTRYID = 0x3a120102, - PR_ORIGINAL_ENTRYID_ERROR = 0x3a12000a, - PR_ORIGINAL_DISPLAY_NAME = 0x3a13001e, - PR_ORIGINAL_DISPLAY_NAME_UNICODE = 0x3a13001f, - PR_ORIGINAL_DISPLAY_NAME_ERROR = 0x3a13000a, - PR_ORIGINAL_SEARCH_KEY = 0x3a140102, - PR_ORIGINAL_SEARCH_KEY_ERROR = 0x3a14000a, - PR_POSTAL_ADDRESS = 0x3a15001e, - PR_POSTAL_ADDRESS_UNICODE = 0x3a15001f, - PR_POSTAL_ADDRESS_ERROR = 0x3a15000a, - PR_COMPANY_NAME = 0x3a16001e, - PR_COMPANY_NAME_UNICODE = 0x3a16001f, - PR_COMPANY_NAME_ERROR = 0x3a16000a, - PR_TITLE = 0x3a17001e, - PR_TITLE_UNICODE = 0x3a17001f, - PR_TITLE_ERROR = 0x3a17000a, - PR_DEPARTMENT_NAME = 0x3a18001e, - PR_DEPARTMENT_NAME_UNICODE = 0x3a18001f, - PR_DEPARTMENT_NAME_ERROR = 0x3a18000a, - PR_OFFICE_LOCATION = 0x3a19001e, - PR_OFFICE_LOCATION_UNICODE = 0x3a19001f, - PR_OFFICE_LOCATION_ERROR = 0x3a19000a, - PR_PRIMARY_TELEPHONE_NUMBER = 0x3a1a001e, - PR_PRIMARY_TELEPHONE_NUMBER_UNICODE = 0x3a1a001f, - PR_PRIMARY_TELEPHONE_NUMBER_ERROR = 0x3a1a000a, - PR_OFFICE2_TELEPHONE_NUMBER = 0x3a1b001e, - PR_OFFICE2_TELEPHONE_NUMBER_UNICODE = 0x3a1b001f, - PR_OFFICE2_TELEPHONE_NUMBER_ERROR = 0x3a1b000a, - PR_MOBILE_TELEPHONE_NUMBER = 0x3a1c001e, - PR_MOBILE_TELEPHONE_NUMBER_UNICODE = 0x3a1c001f, - PR_MOBILE_TELEPHONE_NUMBER_ERROR = 0x3a1c000a, - PR_RADIO_TELEPHONE_NUMBER = 0x3a1d001e, - PR_RADIO_TELEPHONE_NUMBER_UNICODE = 0x3a1d001f, - PR_RADIO_TELEPHONE_NUMBER_ERROR = 0x3a1d000a, - PR_CAR_TELEPHONE_NUMBER = 0x3a1e001e, - PR_CAR_TELEPHONE_NUMBER_UNICODE = 0x3a1e001f, - PR_CAR_TELEPHONE_NUMBER_ERROR = 0x3a1e000a, - PR_OTHER_TELEPHONE_NUMBER = 0x3a1f001e, - PR_OTHER_TELEPHONE_NUMBER_UNICODE = 0x3a1f001f, - PR_OTHER_TELEPHONE_NUMBER_ERROR = 0x3a1f000a, - PR_TRANSMITTABLE_DISPLAY_NAME = 0x3a20001e, - PR_TRANSMITTABLE_DISPLAY_NAME_UNICODE = 0x3a20001f, - PR_TRANSMITTABLE_DISPLAY_NAME_ERROR = 0x3a20000a, - PR_PAGER_TELEPHONE_NUMBER = 0x3a21001e, - PR_PAGER_TELEPHONE_NUMBER_UNICODE = 0x3a21001f, - PR_PAGER_TELEPHONE_NUMBER_ERROR = 0x3a21000a, - PR_USER_CERTIFICATE = 0x3a220102, - PR_USER_CERTIFICATE_ERROR = 0x3a22000a, - PR_PRIMARY_FAX_NUMBER = 0x3a23001e, - PR_PRIMARY_FAX_NUMBER_UNICODE = 0x3a23001f, - PR_PRIMARY_FAX_NUMBER_ERROR = 0x3a23000a, - PR_HOME_FAX_NUMBER = 0x3a25001e, - PR_HOME_FAX_NUMBER_UNICODE = 0x3a25001f, - PR_HOME_FAX_NUMBER_ERROR = 0x3a25000a, - PR_COUNTRY = 0x3a26001e, - PR_COUNTRY_UNICODE = 0x3a26001f, - PR_COUNTRY_ERROR = 0x3a26000a, - PR_LOCALITY = 0x3a27001e, - PR_LOCALITY_UNICODE = 0x3a27001f, - PR_LOCALITY_ERROR = 0x3a27000a, - PR_STATE_OR_PROVINCE = 0x3a28001e, - PR_STATE_OR_PROVINCE_UNICODE = 0x3a28001f, - PR_STATE_OR_PROVINCE_ERROR = 0x3a28000a, - PR_STREET_ADDRESS = 0x3a29001e, - PR_STREET_ADDRESS_UNICODE = 0x3a29001f, - PR_STREET_ADDRESS_ERROR = 0x3a29000a, - PR_POSTAL_CODE = 0x3a2a001e, - PR_POSTAL_CODE_UNICODE = 0x3a2a001f, - PR_POSTAL_CODE_ERROR = 0x3a2a000a, - PR_POST_OFFICE_BOX = 0x3a2b001e, - PR_POST_OFFICE_BOX_UNICODE = 0x3a2b001f, - PR_POST_OFFICE_BOX_ERROR = 0x3a2b000a, - PR_TELEX_NUMBER = 0x3a2c001e, - PR_TELEX_NUMBER_UNICODE = 0x3a2c001f, - PR_TELEX_NUMBER_ERROR = 0x3a2c000a, - PR_ISDN_NUMBER = 0x3a2d001e, - PR_ISDN_NUMBER_UNICODE = 0x3a2d001f, - PR_ISDN_NUMBER_ERROR = 0x3a2d000a, - PR_ASSISTANT_TELEPHONE_NUMBER = 0x3a2e001e, - PR_ASSISTANT_TELEPHONE_NUMBER_UNICODE = 0x3a2e001f, - PR_ASSISTANT_TELEPHONE_NUMBER_ERROR = 0x3a2e000a, - PR_HOME2_TELEPHONE_NUMBER = 0x3a2f001e, - PR_HOME2_TELEPHONE_NUMBER_UNICODE = 0x3a2f001f, - PR_HOME2_TELEPHONE_NUMBER_ERROR = 0x3a2f000a, - PR_ASSISTANT = 0x3a30001e, - PR_ASSISTANT_UNICODE = 0x3a30001f, - PR_ASSISTANT_ERROR = 0x3a30000a, - PR_SEND_RICH_INFO = 0x3a40000b, - PR_SEND_RICH_INFO_ERROR = 0x3a40000a, - PR_WEDDING_ANNIVERSARY = 0x3a410040, - PR_WEDDING_ANNIVERSARY_ERROR = 0x3a41000a, - PR_BIRTHDAY = 0x3a420040, - PR_BIRTHDAY_ERROR = 0x3a42000a, - PR_HOBBIES = 0x3a43001e, - PR_HOBBIES_UNICODE = 0x3a43001f, - PR_HOBBIES_ERROR = 0x3a43000a, - PR_MIDDLE_NAME = 0x3a44001e, - PR_MIDDLE_NAME_UNICODE = 0x3a44001f, - PR_MIDDLE_NAME_ERROR = 0x3a44000a, - PR_DISPLAY_NAME_PREFIX = 0x3a45001e, - PR_DISPLAY_NAME_PREFIX_UNICODE = 0x3a45001f, - PR_DISPLAY_NAME_PREFIX_ERROR = 0x3a45000a, - PR_PROFESSION = 0x3a46001e, - PR_PROFESSION_UNICODE = 0x3a46001f, - PR_PROFESSION_ERROR = 0x3a46000a, - PR_PREFERRED_BY_NAME = 0x3a47001e, - PR_PREFERRED_BY_NAME_UNICODE = 0x3a47001f, - PR_PREFERRED_BY_NAME_ERROR = 0x3a47000a, - PR_SPOUSE_NAME = 0x3a48001e, - PR_SPOUSE_NAME_UNICODE = 0x3a48001f, - PR_SPOUSE_NAME_ERROR = 0x3a48000a, - PR_COMPUTER_NETWORK_NAME = 0x3a49001e, - PR_COMPUTER_NETWORK_NAME_UNICODE = 0x3a49001f, - PR_COMPUTER_NETWORK_NAME_ERROR = 0x3a49000a, - PR_CUSTOMER_ID = 0x3a4a001e, - PR_CUSTOMER_ID_UNICODE = 0x3a4a001f, - PR_CUSTOMER_ID_ERROR = 0x3a4a000a, - PR_TTYTDD_PHONE_NUMBER = 0x3a4b001e, - PR_TTYTDD_PHONE_NUMBER_UNICODE = 0x3a4b001f, - PR_TTYTDD_PHONE_NUMBER_ERROR = 0x3a4b000a, - PR_FTP_SITE = 0x3a4c001e, - PR_FTP_SITE_UNICODE = 0x3a4c001f, - PR_FTP_SITE_ERROR = 0x3a4c000a, - PR_GENDER = 0x3a4d0002, - PR_GENDER_ERROR = 0x3a4d000a, - PR_MANAGER_NAME = 0x3a4e001e, - PR_MANAGER_NAME_UNICODE = 0x3a4e001f, - PR_MANAGER_NAME_ERROR = 0x3a4e000a, - PR_NICKNAME = 0x3a4f001e, - PR_NICKNAME_UNICODE = 0x3a4f001f, - PR_NICKNAME_ERROR = 0x3a4f000a, - PR_PERSONAL_HOME_PAGE = 0x3a50001e, - PR_PERSONAL_HOME_PAGE_UNICODE = 0x3a50001f, - PR_PERSONAL_HOME_PAGE_ERROR = 0x3a50000a, - PR_BUSINESS_HOME_PAGE = 0x3a51001e, - PR_BUSINESS_HOME_PAGE_UNICODE = 0x3a51001f, - PR_BUSINESS_HOME_PAGE_ERROR = 0x3a51000a, - PR_CONTACT_VERSION = 0x3a520048, - PR_CONTACT_VERSION_ERROR = 0x3a52000a, - PR_CONTACT_ENTRYIDS = 0x3a531102, - PR_CONTACT_ENTRYIDS_ERROR = 0x3a53000a, - PR_CONTACT_ADDRTYPES = 0x3a54101e, - PR_CONTACT_ADDRTYPES_UNICODE = 0x3a54101f, - PR_CONTACT_ADDRTYPES_ERROR = 0x3a54000a, - PR_CONTACT_DEFAULT_ADDRESS_INDEX = 0x3a550003, - PR_CONTACT_DEFAULT_ADDRESS_INDEX_ERROR = 0x3a55000a, - PR_CONTACT_EMAIL_ADDRESSES = 0x3a56101e, - PR_CONTACT_EMAIL_ADDRESSES_UNICODE = 0x3a56101f, - PR_CONTACT_EMAIL_ADDRESSES_ERROR = 0x3a56000a, - PR_COMPANY_MAIN_PHONE_NUMBER = 0x3a57001e, - PR_COMPANY_MAIN_PHONE_NUMBER_UNICODE = 0x3a57001f, - PR_COMPANY_MAIN_PHONE_NUMBER_ERROR = 0x3a57000a, - PR_CHILDRENS_NAMES = 0x3a58101e, - PR_CHILDRENS_NAMES_UNICODE = 0x3a58101f, - PR_CHILDRENS_NAMES_ERROR = 0x3a58000a, - PR_HOME_ADDRESS_CITY = 0x3a59001e, - PR_HOME_ADDRESS_CITY_UNICODE = 0x3a59001f, - PR_HOME_ADDRESS_CITY_ERROR = 0x3a59000a, - PR_HOME_ADDRESS_COUNTRY = 0x3a5a001e, - PR_HOME_ADDRESS_COUNTRY_UNICODE = 0x3a5a001f, - PR_HOME_ADDRESS_COUNTRY_ERROR = 0x3a5a000a, - PR_HOME_ADDRESS_POSTAL_CODE = 0x3a5b001e, - PR_HOME_ADDRESS_POSTAL_CODE_UNICODE = 0x3a5b001f, - PR_HOME_ADDRESS_POSTAL_CODE_ERROR = 0x3a5b000a, - PR_HOME_ADDRESS_STATE_OR_PROVINCE = 0x3a5c001e, - PR_HOME_ADDRESS_STATE_OR_PROVINCE_UNICODE = 0x3a5c001f, - PR_HOME_ADDRESS_STATE_OR_PROVINCE_ERROR = 0x3a5c000a, - PR_HOME_ADDRESS_STREET = 0x3a5d001e, - PR_HOME_ADDRESS_STREET_UNICODE = 0x3a5d001f, - PR_HOME_ADDRESS_STREET_ERROR = 0x3a5d000a, - PR_HOME_ADDRESS_POST_OFFICE_BOX = 0x3a5e001e, - PR_HOME_ADDRESS_POST_OFFICE_BOX_UNICODE = 0x3a5e001f, - PR_HOME_ADDRESS_POST_OFFICE_BOX_ERROR = 0x3a5e000a, - PR_OTHER_ADDRESS_CITY = 0x3a5f001e, - PR_OTHER_ADDRESS_CITY_UNICODE = 0x3a5f001f, - PR_OTHER_ADDRESS_CITY_ERROR = 0x3a5f000a, - PR_OTHER_ADDRESS_COUNTRY = 0x3a60001e, - PR_OTHER_ADDRESS_COUNTRY_UNICODE = 0x3a60001f, - PR_OTHER_ADDRESS_COUNTRY_ERROR = 0x3a60000a, - PR_OTHER_ADDRESS_POSTAL_CODE = 0x3a61001e, - PR_OTHER_ADDRESS_POSTAL_CODE_UNICODE = 0x3a61001f, - PR_OTHER_ADDRESS_POSTAL_CODE_ERROR = 0x3a61000a, - PR_OTHER_ADDRESS_STATE_OR_PROVINCE = 0x3a62001e, - PR_OTHER_ADDRESS_STATE_OR_PROVINCE_UNICODE = 0x3a62001f, - PR_OTHER_ADDRESS_STATE_OR_PROVINCE_ERROR = 0x3a62000a, - PR_OTHER_ADDRESS_STREET = 0x3a63001e, - PR_OTHER_ADDRESS_STREET_UNICODE = 0x3a63001f, - PR_OTHER_ADDRESS_STREET_ERROR = 0x3a63000a, - PR_OTHER_ADDRESS_POST_OFFICE_BOX = 0x3a64001e, - PR_OTHER_ADDRESS_POST_OFFICE_BOX_UNICODE = 0x3a64001f, - PR_OTHER_ADDRESS_POST_OFFICE_BOX_ERROR = 0x3a64000a, - PR_USER_X509_CERTIFICATE = 0x3a701102, - PR_USER_X509_CERTIFICATE_ERROR = 0x3a70000a, - PR_SEND_INTERNET_ENCODING = 0x3a710003, - PR_SEND_INTERNET_ENCODING_ERROR = 0x3a71000a, - PR_STORE_PROVIDERS = 0x3d000102, - PR_STORE_PROVIDERS_ERROR = 0x3d00000a, - PR_AB_PROVIDERS = 0x3d010102, - PR_AB_PROVIDERS_ERROR = 0x3d01000a, - PR_TRANSPORT_PROVIDERS = 0x3d020102, - PR_TRANSPORT_PROVIDERS_ERROR = 0x3d02000a, - PR_DEFAULT_PROFILE = 0x3d04000b, - PR_DEFAULT_PROFILE_ERROR = 0x3d04000a, - PR_AB_SEARCH_PATH = 0x3d051102, - PR_AB_SEARCH_PATH_ERROR = 0x3d05000a, - PR_AB_DEFAULT_DIR = 0x3d060102, - PR_AB_DEFAULT_DIR_ERROR = 0x3d06000a, - PR_AB_DEFAULT_PAB = 0x3d070102, - PR_AB_DEFAULT_PAB_ERROR = 0x3d07000a, - PR_FILTERING_HOOKS = 0x3d080102, - PR_FILTERING_HOOKS_ERROR = 0x3d08000a, - PR_SERVICE_NAME = 0x3d09001e, - PR_SERVICE_NAME_UNICODE = 0x3d09001f, - PR_SERVICE_NAME_ERROR = 0x3d09000a, - PR_SERVICE_DLL_NAME = 0x3d0a001e, - PR_SERVICE_DLL_NAME_UNICODE = 0x3d0a001f, - PR_SERVICE_DLL_NAME_ERROR = 0x3d0a000a, - PR_SERVICE_ENTRY_NAME = 0x3d0b001e, - PR_SERVICE_ENTRY_NAME_UNICODE = 0x3d0b001f, - PR_SERVICE_ENTRY_NAME_ERROR = 0x3d0b000a, - PR_SERVICE_UID = 0x3d0c0102, - PR_SERVICE_UID_ERROR = 0x3d0c000a, - PR_SERVICE_EXTRA_UIDS = 0x3d0d0102, - PR_SERVICE_EXTRA_UIDS_ERROR = 0x3d0d000a, - PR_SERVICES = 0x3d0e0102, - PR_SERVICES_ERROR = 0x3d0e000a, - PR_SERVICE_SUPPORT_FILES = 0x3d0f101e, - PR_SERVICE_SUPPORT_FILES_UNICODE = 0x3d0f101f, - PR_SERVICE_SUPPORT_FILES_ERROR = 0x3d0f000a, - PR_SERVICE_DELETE_FILES = 0x3d10101e, - PR_SERVICE_DELETE_FILES_UNICODE = 0x3d10101f, - PR_SERVICE_DELETE_FILES_ERROR = 0x3d10000a, - PR_AB_SEARCH_PATH_UPDATE = 0x3d110102, - PR_AB_SEARCH_PATH_UPDATE_ERROR = 0x3d11000a, - PR_PROFILE_NAME = 0x3d12001e, - PR_PROFILE_NAME_UNICODE = 0x3d12001f, - PR_PROFILE_NAME_ERROR = 0x3d12000a, - PR_SERVICE_INSTALL_ID = 0x3d13001e, - PR_SERVICE_INSTALL_ID_UNICODE = 0x3d13001f, - PR_SERVICE_INSTALL_ID_ERROR = 0x3d13000a, - PR_ADMIN_SECURITY_DESCRIPTOR = 0x3d210102, - PR_ADMIN_SECURITY_DESCRIPTOR_ERROR = 0x3d21000a, - PR_IDENTITY_DISPLAY = 0x3e00001e, - PR_IDENTITY_DISPLAY_UNICODE = 0x3e00001f, - PR_IDENTITY_DISPLAY_ERROR = 0x3e00000a, - PR_IDENTITY_ENTRYID = 0x3e010102, - PR_IDENTITY_ENTRYID_ERROR = 0x3e01000a, - PR_RESOURCE_METHODS = 0x3e020003, - PR_RESOURCE_METHODS_ERROR = 0x3e02000a, - PR_RESOURCE_TYPE = 0x3e030003, - PR_RESOURCE_TYPE_ERROR = 0x3e03000a, - PR_STATUS_CODE = 0x3e040003, - PR_STATUS_CODE_ERROR = 0x3e04000a, - PR_IDENTITY_SEARCH_KEY = 0x3e050102, - PR_IDENTITY_SEARCH_KEY_ERROR = 0x3e05000a, - PR_OWN_STORE_ENTRYID = 0x3e060102, - PR_OWN_STORE_ENTRYID_ERROR = 0x3e06000a, - PR_RESOURCE_PATH = 0x3e07001e, - PR_RESOURCE_PATH_UNICODE = 0x3e07001f, - PR_RESOURCE_PATH_ERROR = 0x3e07000a, - PR_STATUS_STRING = 0x3e08001e, - PR_STATUS_STRING_UNICODE = 0x3e08001f, - PR_STATUS_STRING_ERROR = 0x3e08000a, - PR_X400_DEFERRED_DELIVERY_CANCEL = 0x3e09000b, - PR_X400_DEFERRED_DELIVERY_CANCEL_ERROR = 0x3e09000a, - PR_HEADER_FOLDER_ENTRYID = 0x3e0a0102, - PR_HEADER_FOLDER_ENTRYID_ERROR = 0x3e0a000a, - PR_REMOTE_PROGRESS = 0x3e0b0003, - PR_REMOTE_PROGRESS_ERROR = 0x3e0b000a, - PR_REMOTE_PROGRESS_TEXT = 0x3e0c001e, - PR_REMOTE_PROGRESS_TEXT_UNICODE = 0x3e0c001f, - PR_REMOTE_PROGRESS_TEXT_ERROR = 0x3e0c000a, - PR_REMOTE_VALIDATE_OK = 0x3e0d000b, - PR_REMOTE_VALIDATE_OK_ERROR = 0x3e0d000a, - PR_CONTROL_FLAGS = 0x3f000003, - PR_CONTROL_FLAGS_ERROR = 0x3f00000a, - PR_CONTROL_STRUCTURE = 0x3f010102, - PR_CONTROL_STRUCTURE_ERROR = 0x3f01000a, - PR_CONTROL_TYPE = 0x3f020003, - PR_CONTROL_TYPE_ERROR = 0x3f02000a, - PR_DELTAX = 0x3f030003, - PR_DELTAX_ERROR = 0x3f03000a, - PR_DELTAY = 0x3f040003, - PR_DELTAY_ERROR = 0x3f04000a, - PR_XPOS = 0x3f050003, - PR_XPOS_ERROR = 0x3f05000a, - PR_YPOS = 0x3f060003, - PR_YPOS_ERROR = 0x3f06000a, - PR_CONTROL_ID = 0x3f070102, - PR_CONTROL_ID_ERROR = 0x3f07000a, - PR_INITIAL_DETAILS_PANE = 0x3f080003, - PR_INITIAL_DETAILS_PANE_ERROR = 0x3f08000a, - PR_DID = 0x3f800014, - PR_DID_ERROR = 0x3f80000a, - PR_SEQID = 0x3f810014, - PR_SEQID_ERROR = 0x3f81000a, - PR_DRAFTID = 0x3f820014, - PR_DRAFTID_ERROR = 0x3f82000a, - PR_CHECK_IN_TIME = 0x3f830040, - PR_CHECK_IN_TIME_ERROR = 0x3f83000a, - PR_CHECK_IN_COMMENT = 0x3f84001e, - PR_CHECK_IN_COMMENT_UNICODE = 0x3f84001f, - PR_CHECK_IN_COMMENT_ERROR = 0x3f84000a, - PR_VERSION_OP_CODE = 0x3f850003, - PR_VERSION_OP_CODE_ERROR = 0x3f85000a, - PR_VERSION_OP_DATA = 0x3f860102, - PR_VERSION_OP_DATA_ERROR = 0x3f86000a, - PR_VERSION_SEQUENCE_NUMBER = 0x3f870003, - PR_VERSION_SEQUENCE_NUMBER_ERROR = 0x3f87000a, - PR_ATTACH_ID = 0x3f880014, - PR_ATTACH_ID_ERROR = 0x3f88000a, - PR_PKM_DOC_STATUS = 0x3f8d001e, - PR_PKM_DOC_STATUS_UNICODE = 0x3f8d001f, - PR_PKM_DOC_STATUS_ERROR = 0x3f8d000a, - PR_MV_PKM_OPERATION_REQ = 0x3f8e101e, - PR_MV_PKM_OPERATION_REQ_UNICODE = 0x3f8e101f, - PR_MV_PKM_OPERATION_REQ_ERROR = 0x3f8e000a, - PR_PKM_DOC_INTERNAL_STATE = 0x3f8f001e, - PR_PKM_DOC_INTERNAL_STATE_UNICODE = 0x3f8f001f, - PR_PKM_DOC_INTERNAL_STATE_ERROR = 0x3f8f000a, - PR_VERSIONING_FLAGS = 0x3f900002, - PR_VERSIONING_FLAGS_ERROR = 0x3f90000a, - PR_PKM_LAST_UNAPPROVED_VID = 0x3f910102, - PR_PKM_LAST_UNAPPROVED_VID_ERROR = 0x3f91000a, - PR_MV_PKM_VERSION_LABELS = 0x3f92101e, - PR_MV_PKM_VERSION_LABELS_UNICODE = 0x3f92101f, - PR_MV_PKM_VERSION_LABELS_ERROR = 0x3f92000a, - PR_MV_PKM_VERSION_STATUS = 0x3f93101e, - PR_MV_PKM_VERSION_STATUS_UNICODE = 0x3f93101f, - PR_MV_PKM_VERSION_STATUS_ERROR = 0x3f93000a, - PR_PKM_INTERNAL_DATA = 0x3f940102, - PR_PKM_INTERNAL_DATA_ERROR = 0x3f94000a, - PR_LAST_CONFLICT = 0x3fc90102, - PR_LAST_CONFLICT_ERROR = 0x3fc9000a, - PR_CONFLICT_MSG_KEY = 0x3fca0102, - PR_CONFLICT_MSG_KEY_ERROR = 0x3fca000a, - PR_REPL_HEADER = 0x3fd00102, - PR_REPL_HEADER_ERROR = 0x3fd0000a, - PR_REPL_STATUS = 0x3fd10102, - PR_REPL_STATUS_ERROR = 0x3fd1000a, - PR_REPL_CHANGES = 0x3fd20102, - PR_REPL_CHANGES_ERROR = 0x3fd2000a, - PR_REPL_RGM = 0x3fd30102, - PR_REPL_RGM_ERROR = 0x3fd3000a, - PR_RMI = 0x3fd40102, - PR_RMI_ERROR = 0x3fd4000a, - PR_INTERNAL_POST_REPLY = 0x3fd50102, - PR_INTERNAL_POST_REPLY_ERROR = 0x3fd5000a, - PR_NTSD_MODIFICATION_TIME = 0x3fd60040, - PR_NTSD_MODIFICATION_TIME_ERROR = 0x3fd6000a, - PR_PREVIEW_UNREAD = 0x3fd8001e, - PR_PREVIEW_UNREAD_UNICODE = 0x3fd8001f, - PR_PREVIEW_UNREAD_ERROR = 0x3fd8000a, - PR_PREVIEW = 0x3fd9001e, - PR_PREVIEW_UNICODE = 0x3fd9001f, - PR_PREVIEW_ERROR = 0x3fd9000a, - PR_ABSTRACT = 0x3fda001e, - PR_ABSTRACT_UNICODE = 0x3fda001f, - PR_ABSTRACT_ERROR = 0x3fda000a, - PR_DL_REPORT_FLAGS = 0x3fdb0003, - PR_DL_REPORT_FLAGS_ERROR = 0x3fdb000a, - PR_BILATERAL_INFO = 0x3fdc0102, - PR_BILATERAL_INFO_ERROR = 0x3fdc000a, - PR_MSG_BODY_ID = 0x3fdd0003, - PR_MSG_BODY_ID_ERROR = 0x3fdd000a, - PR_INTERNET_CPID = 0x3fde0003, - PR_INTERNET_CPID_ERROR = 0x3fde000a, - PR_AUTO_RESPONSE_SUPPRESS = 0x3fdf0003, - PR_AUTO_RESPONSE_SUPPRESS_ERROR = 0x3fdf000a, - PR_ACL_TABLE = 0x3fe0000d, - PR_ACL_TABLE_ERROR = 0x3fe0000a, - PR_ACL_DATA = 0x3fe00102, - PR_RULES_TABLE = 0x3fe1000d, - PR_RULES_TABLE_ERROR = 0x3fe1000a, - PR_RULES_DATA = 0x3fe10102, - PR_FOLDER_DESIGN_FLAGS = 0x3fe20003, - PR_FOLDER_DESIGN_FLAGS_ERROR = 0x3fe2000a, - PR_DELEGATED_BY_RULE = 0x3fe3000b, - PR_DELEGATED_BY_RULE_ERROR = 0x3fe3000a, - PR_DESIGN_IN_PROGRESS = 0x3fe4000b, - PR_DESIGN_IN_PROGRESS_ERROR = 0x3fe4000a, - PR_SECURE_ORIGINATION = 0x3fe5000b, - PR_SECURE_ORIGINATION_ERROR = 0x3fe5000a, - PR_PUBLISH_IN_ADDRESS_BOOK = 0x3fe6000b, - PR_PUBLISH_IN_ADDRESS_BOOK_ERROR = 0x3fe6000a, - PR_RESOLVE_METHOD = 0x3fe70003, - PR_RESOLVE_METHOD_ERROR = 0x3fe7000a, - PR_ADDRESS_BOOK_DISPLAY_NAME = 0x3fe8001e, - PR_ADDRESS_BOOK_DISPLAY_NAME_UNICODE = 0x3fe8001f, - PR_ADDRESS_BOOK_DISPLAY_NAME_ERROR = 0x3fe8000a, - PR_EFORMS_LOCALE_ID = 0x3fe90003, - PR_EFORMS_LOCALE_ID_ERROR = 0x3fe9000a, - PR_HAS_DAMS = 0x3fea000b, - PR_HAS_DAMS_ERROR = 0x3fea000a, - PR_DEFERRED_SEND_NUMBER = 0x3feb0003, - PR_DEFERRED_SEND_NUMBER_ERROR = 0x3feb000a, - PR_DEFERRED_SEND_UNITS = 0x3fec0003, - PR_DEFERRED_SEND_UNITS_ERROR = 0x3fec000a, - PR_EXPIRY_NUMBER = 0x3fed0003, - PR_EXPIRY_NUMBER_ERROR = 0x3fed000a, - PR_EXPIRY_UNITS = 0x3fee0003, - PR_EXPIRY_UNITS_ERROR = 0x3fee000a, - PR_DEFERRED_SEND_TIME = 0x3fef0040, - PR_DEFERRED_SEND_TIME_ERROR = 0x3fef000a, - PR_CONFLICT_ENTRYID = 0x3ff00102, - PR_CONFLICT_ENTRYID_ERROR = 0x3ff0000a, - PR_MESSAGE_LOCALE_ID = 0x3ff10003, - PR_MESSAGE_LOCALE_ID_ERROR = 0x3ff1000a, - PR_RULE_TRIGGER_HISTORY = 0x3ff20102, - PR_RULE_TRIGGER_HISTORY_ERROR = 0x3ff2000a, - PR_MOVE_TO_STORE_ENTRYID = 0x3ff30102, - PR_MOVE_TO_STORE_ENTRYID_ERROR = 0x3ff3000a, - PR_MOVE_TO_FOLDER_ENTRYID = 0x3ff40102, - PR_MOVE_TO_FOLDER_ENTRYID_ERROR = 0x3ff4000a, - PR_STORAGE_QUOTA_LIMIT = 0x3ff50003, - PR_STORAGE_QUOTA_LIMIT_ERROR = 0x3ff5000a, - PR_EXCESS_STORAGE_USED = 0x3ff60003, - PR_EXCESS_STORAGE_USED_ERROR = 0x3ff6000a, - PR_SVR_GENERATING_QUOTA_MSG = 0x3ff7001e, - PR_SVR_GENERATING_QUOTA_MSG_UNICODE = 0x3ff7001f, - PR_SVR_GENERATING_QUOTA_MSG_ERROR = 0x3ff7000a, - PR_CREATOR_NAME = 0x3ff8001e, - PR_CREATOR_NAME_UNICODE = 0x3ff8001f, - PR_CREATOR_NAME_ERROR = 0x3ff8000a, - PR_CREATOR_ENTRYID = 0x3ff90102, - PR_CREATOR_ENTRYID_ERROR = 0x3ff9000a, - PR_LAST_MODIFIER_NAME = 0x3ffa001e, - PR_LAST_MODIFIER_NAME_UNICODE = 0x3ffa001f, - PR_LAST_MODIFIER_NAME_ERROR = 0x3ffa000a, - PR_LAST_MODIFIER_ENTRYID = 0x3ffb0102, - PR_LAST_MODIFIER_ENTRYID_ERROR = 0x3ffb000a, - PR_REPLY_RECIPIENT_SMTP_PROXIES = 0x3ffc001e, - PR_REPLY_RECIPIENT_SMTP_PROXIES_UNICODE = 0x3ffc001f, - PR_REPLY_RECIPIENT_SMTP_PROXIES_ERROR = 0x3ffc000a, - PR_MESSAGE_CODEPAGE = 0x3ffd0003, - PR_MESSAGE_CODEPAGE_ERROR = 0x3ffd000a, - PR_EXTENDED_ACL_DATA = 0x3ffe0102, - PR_EXTENDED_ACL_DATA_ERROR = 0x3ffe000a, - PR_FROM_I_HAVE = 0x3fff000b, - PR_FROM_I_HAVE_ERROR = 0x3fff000a, - PR_NEW_ATTACH = 0x40000003, - PR_NEW_ATTACH_ERROR = 0x4000000a, - PR_START_EMBED = 0x40010003, - PR_START_EMBED_ERROR = 0x4001000a, - PR_END_EMBED = 0x40020003, - PR_END_EMBED_ERROR = 0x4002000a, - PR_START_RECIP = 0x40030003, - PR_START_RECIP_ERROR = 0x4003000a, - PR_END_RECIP = 0x40040003, - PR_END_RECIP_ERROR = 0x4004000a, - PR_END_CC_RECIP = 0x40050003, - PR_END_CC_RECIP_ERROR = 0x4005000a, - PR_END_BCC_RECIP = 0x40060003, - PR_END_BCC_RECIP_ERROR = 0x4006000a, - PR_END_P1_RECIP = 0x40070003, - PR_END_P1_RECIP_ERROR = 0x4007000a, - PR_START_TOP_FLD = 0x40090003, - PR_START_TOP_FLD_ERROR = 0x4009000a, - PR_START_SUB_FLD = 0x400a0003, - PR_START_SUB_FLD_ERROR = 0x400a000a, - PR_END_FOLDER = 0x400b0003, - PR_END_FOLDER_ERROR = 0x400b000a, - PR_START_MESSAGE = 0x400c0003, - PR_START_MESSAGE_ERROR = 0x400c000a, - PR_END_MESSAGE = 0x400d0003, - PR_END_MESSAGE_ERROR = 0x400d000a, - PR_END_ATTACH = 0x400e0003, - PR_END_ATTACH_ERROR = 0x400e000a, - PR_EC_WARNING = 0x400f0003, - PR_EC_WARNING_ERROR = 0x400f000a, - PR_START_FAI_MSG = 0x40100003, - PR_START_FAI_MSG_ERROR = 0x4010000a, - PR_NEW_FX_FOLDER = 0x40110102, - PR_NEW_FX_FOLDER_ERROR = 0x4011000a, - PR_INCR_SYNC_CHG = 0x40120003, - PR_INCR_SYNC_CHG_ERROR = 0x4012000a, - PR_INCR_SYNC_DEL = 0x40130003, - PR_INCR_SYNC_DEL_ERROR = 0x4013000a, - PR_INCR_SYNC_END = 0x40140003, - PR_INCR_SYNC_END_ERROR = 0x4014000a, - PR_INCR_SYNC_MSG = 0x40150003, - PR_INCR_SYNC_MSG_ERROR = 0x4015000a, - PR_FX_DEL_PROP = 0x40160003, - PR_FX_DEL_PROP_ERROR = 0x4016000a, - PR_IDSET_GIVEN = 0x40170003, - PR_IDSET_GIVEN_ERROR = 0x4017000a, - PR_SENDER_FLAGS = 0x40190003, - PR_SENDER_FLAGS_ERROR = 0x4019000a, - PR_SENT_REPRESENTING_FLAGS = 0x401a0003, - PR_SENT_REPRESENTING_FLAGS_ERROR = 0x401a000a, - PR_RCVD_BY_FLAGS = 0x401b0003, - PR_RCVD_BY_FLAGS_ERROR = 0x401b000a, - PR_RCVD_REPRESENTING_FLAGS = 0x401c0003, - PR_RCVD_REPRESENTING_FLAGS_ERROR = 0x401c000a, - PR_ORIGINAL_SENDER_FLAGS = 0x401d0003, - PR_ORIGINAL_SENDER_FLAGS_ERROR = 0x401d000a, - PR_ORIGINAL_SENT_REPRESENTING_FLAGS = 0x401e0003, - PR_ORIGINAL_SENT_REPRESENTING_FLAGS_ERROR = 0x401e000a, - PR_REPORT_FLAGS = 0x401f0003, - PR_REPORT_FLAGS_ERROR = 0x401f000a, - PR_READ_RECEIPT_FLAGS = 0x40200003, - PR_READ_RECEIPT_FLAGS_ERROR = 0x4020000a, - PR_SOFT_DELETES = 0x4021000b, - PR_SOFT_DELETES_ERROR = 0x4021000a, - PR_MESSAGE_SUBMISSION_ID_FROM_CLIENT = 0x402c0102, - PR_MESSAGE_SUBMISSION_ID_FROM_CLIENT_ERROR = 0x402c000a, - PR_SENDER_SIMPLE_DISP_NAME = 0x4030001e, - PR_SENDER_SIMPLE_DISP_NAME_UNICODE = 0x4030001f, - PR_SENDER_SIMPLE_DISP_NAME_ERROR = 0x4030000a, - PR_SENT_REPRESENTING_SIMPLE_DISP_NAME = 0x4031001e, - PR_SENT_REPRESENTING_SIMPLE_DISP_NAME_UNICODE = 0x4031001f, - PR_SENT_REPRESENTING_SIMPLE_DISP_NAME_ERROR = 0x4031000a, - PR_CREATOR_SIMPLE_DISP_NAME = 0x4038001e, - PR_CREATOR_SIMPLE_DISP_NAME_UNICODE = 0x4038001f, - PR_CREATOR_SIMPLE_DISP_NAME_ERROR = 0x4038000a, - PR_ORG_ADDR_TYPE = 0x403d001e, - PR_ORG_ADDR_TYPE_UNICODE = 0x403d001f, - PR_ORG_ADDR_TYPE_ERROR = 0x403d000a, - PR_ORG_EMAIL_ADDR = 0x403e001e, - PR_ORG_EMAIL_ADDR_UNICODE = 0x403e001f, - PR_ORG_EMAIL_ADDR_ERROR = 0x403e000a, - PR_CREATOR_FLAGS = 0x40590003, - PR_CREATOR_FLAGS_ERROR = 0x4059000a, - PR_MODIFIER_FLAGS = 0x405a0003, - PR_MODIFIER_FLAGS_ERROR = 0x405a000a, - PR_ORIGINATOR_FLAGS = 0x405b0003, - PR_ORIGINATOR_FLAGS_ERROR = 0x405b000a, - PR_REPORT_DESTINATION_FLAGS = 0x405c0003, - PR_REPORT_DESTINATION_FLAGS_ERROR = 0x405c000a, - PR_ORIGINAL_AUTHOR_FLAGS = 0x405d0003, - PR_ORIGINAL_AUTHOR_FLAGS_ERROR = 0x405d000a, - PR_ORIGINATOR_SEARCH_KEY = 0x40610102, - PR_ORIGINATOR_SEARCH_KEY_ERROR = 0x4061000a, - PR_REPORT_DESTINATION_SEARCH_KEY = 0x40640102, - PR_REPORT_DESTINATION_SEARCH_KEY_ERROR = 0x4064000a, - PR_ER_FLAG = 0x40650003, - PR_ER_FLAG_ERROR = 0x4065000a, - PR_INTERNET_SUBJECT = 0x40680102, - PR_INTERNET_SUBJECT_ERROR = 0x4068000a, - PR_INTERNET_SENT_REPRESENTING_NAME = 0x40690102, - PR_INTERNET_SENT_REPRESENTING_NAME_ERROR = 0x4069000a, - PR_INET_MAIL_OVERRIDE_FORMAT = 0x59020003, - PR_INET_MAIL_OVERRIDE_FORMAT_ERROR = 0x5902000a, - PR_MSG_EDITOR_FORMAT = 0x59090003, - PR_MSG_EDITOR_FORMAT_ERROR = 0x5909000a, - PR_DOTSTUFF_STATE = 0x60010003, - PR_DOTSTUFF_STATE_ERROR = 0x6001000a, - PR_RULE_SERVER_RULE_ID = 0x65a00014, - PR_RULE_SERVER_RULE_ID_ERROR = 0x65a0000a, - PR_REPLY_TEMPLATE_ID = 0x65c20102, - PR_REPLY_TEMPLATE_ID_ERROR = 0x65c2000a, - PR_SOURCE_KEY = 0x65e00102, - PR_SOURCE_KEY_ERROR = 0x65e0000a, - PR_PARENT_SOURCE_KEY = 0x65e10102, - PR_PARENT_SOURCE_KEY_ERROR = 0x65e1000a, - PR_CHANGE_KEY = 0x65e20102, - PR_CHANGE_KEY_ERROR = 0x65e2000a, - PR_PREDECESSOR_CHANGE_LIST = 0x65e30102, - PR_PREDECESSOR_CHANGE_LIST_ERROR = 0x65e3000a, - PR_SYNCHRONIZE_FLAGS = 0x65e40003, - PR_SYNCHRONIZE_FLAGS_ERROR = 0x65e4000a, - PR_AUTO_ADD_NEW_SUBS = 0x65e5000b, - PR_AUTO_ADD_NEW_SUBS_ERROR = 0x65e5000a, - PR_NEW_SUBS_GET_AUTO_ADD = 0x65e6000b, - PR_NEW_SUBS_GET_AUTO_ADD_ERROR = 0x65e6000a, - PR_MESSAGE_SITE_NAME = 0x65e7001e, - PR_MESSAGE_SITE_NAME_UNICODE = 0x65e7001f, - PR_MESSAGE_SITE_NAME_ERROR = 0x65e7000a, - PR_MESSAGE_PROCESSED = 0x65e8000b, - PR_MESSAGE_PROCESSED_ERROR = 0x65e8000a, - PR_RULE_MSG_STATE = 0x65e90003, - PR_RULE_MSG_STATE_ERROR = 0x65e9000a, - PR_RULE_MSG_USER_FLAGS = 0x65ea0003, - PR_RULE_MSG_USER_FLAGS_ERROR = 0x65ea000a, - PR_RULE_MSG_PROVIDER = 0x65eb001e, - PR_RULE_MSG_PROVIDER_UNICODE = 0x65eb001f, - PR_RULE_MSG_PROVIDER_ERROR = 0x65eb000a, - PR_RULE_MSG_NAME = 0x65ec001e, - PR_RULE_MSG_NAME_UNICODE = 0x65ec001f, - PR_RULE_MSG_NAME_ERROR = 0x65ec000a, - PR_RULE_MSG_LEVEL = 0x65ed0003, - PR_RULE_MSG_LEVEL_ERROR = 0x65ed000a, - PR_RULE_MSG_PROVIDER_DATA = 0x65ee0102, - PR_RULE_MSG_PROVIDER_DATA_ERROR = 0x65ee000a, - PR_RULE_MSG_ACTIONS = 0x65ef0102, - PR_RULE_MSG_ACTIONS_ERROR = 0x65ef000a, - PR_RULE_MSG_CONDITION = 0x65f00102, - PR_RULE_MSG_CONDITION_ERROR = 0x65f0000a, - PR_RULE_MSG_CONDITION_LCID = 0x65f10003, - PR_RULE_MSG_CONDITION_LCID_ERROR = 0x65f1000a, - PR_RULE_MSG_VERSION = 0x65f20002, - PR_RULE_MSG_VERSION_ERROR = 0x65f2000a, - PR_RULE_MSG_SEQUENCE = 0x65f30003, - PR_RULE_MSG_SEQUENCE_ERROR = 0x65f3000a, - PR_PREVENT_MSG_CREATE = 0x65f4000b, - PR_PREVENT_MSG_CREATE_ERROR = 0x65f4000a, - PR_IMAP_INTERNAL_DATE = 0x65f50040, - PR_IMAP_INTERNAL_DATE_ERROR = 0x65f5000a, - PR_PROFILE_VERSION = 0x66000003, - PR_PROFILE_VERSION_ERROR = 0x6600000a, - PR_PROFILE_CONFIG_FLAGS = 0x66010003, - PR_PROFILE_CONFIG_FLAGS_ERROR = 0x6601000a, - PR_PROFILE_HOME_SERVER = 0x6602001e, - PR_PROFILE_HOME_SERVER_UNICODE = 0x6602001f, - PR_PROFILE_HOME_SERVER_ERROR = 0x6602000a, - PR_PROFILE_USER = 0x6603001e, - PR_PROFILE_USER_UNICODE = 0x6603001f, - PR_PROFILE_USER_ERROR = 0x6603000a, - PR_PROFILE_CONNECT_FLAGS = 0x66040003, - PR_PROFILE_CONNECT_FLAGS_ERROR = 0x6604000a, - PR_PROFILE_TRANSPORT_FLAGS = 0x66050003, - PR_PROFILE_TRANSPORT_FLAGS_ERROR = 0x6605000a, - PR_PROFILE_UI_STATE = 0x66060003, - PR_PROFILE_UI_STATE_ERROR = 0x6606000a, - PR_PROFILE_UNRESOLVED_NAME = 0x6607001e, - PR_PROFILE_UNRESOLVED_NAME_UNICODE = 0x6607001f, - PR_PROFILE_UNRESOLVED_NAME_ERROR = 0x6607000a, - PR_PROFILE_UNRESOLVED_SERVER = 0x6608001e, - PR_PROFILE_UNRESOLVED_SERVER_UNICODE = 0x6608001f, - PR_PROFILE_UNRESOLVED_SERVER_ERROR = 0x6608000a, - PR_PROFILE_OPEN_FLAGS = 0x66090003, - PR_PROFILE_OPEN_FLAGS_ERROR = 0x6609000a, - PR_PROFILE_BINDING_ORDER = 0x6609001e, - PR_PROFILE_BINDING_ORDER_UNICODE = 0x6609001f, - PR_PROFILE_TYPE = 0x660a0003, - PR_PROFILE_TYPE_ERROR = 0x660a000a, - PR_PROFILE_MAILBOX = 0x660b001e, - PR_PROFILE_MAILBOX_UNICODE = 0x660b001f, - PR_PROFILE_MAILBOX_ERROR = 0x660b000a, - PR_PROFILE_SERVER = 0x660c001e, - PR_PROFILE_SERVER_UNICODE = 0x660c001f, - PR_PROFILE_SERVER_ERROR = 0x660c000a, - PR_PROFILE_MAX_RESTRICT = 0x660d0003, - PR_PROFILE_MAX_RESTRICT_ERROR = 0x660d000a, - PR_PROFILE_AB_FILES_PATH = 0x660e001e, - PR_PROFILE_AB_FILES_PATH_UNICODE = 0x660e001f, - PR_PROFILE_AB_FILES_PATH_ERROR = 0x660e000a, - PR_PROFILE_FAVFLD_DISPLAY_NAME = 0x660f001e, - PR_PROFILE_FAVFLD_DISPLAY_NAME_UNICODE = 0x660f001f, - PR_PROFILE_FAVFLD_DISPLAY_NAME_ERROR = 0x660f000a, - PR_PROFILE_OFFLINE_STORE_PATH = 0x6610001e, - PR_PROFILE_OFFLINE_STORE_PATH_UNICODE = 0x6610001f, - PR_PROFILE_OFFLINE_STORE_PATH_ERROR = 0x6610000a, - PR_PROFILE_OFFLINE_INFO = 0x66110102, - PR_PROFILE_OFFLINE_INFO_ERROR = 0x6611000a, - PR_PROFILE_HOME_SERVER_DN = 0x6612001e, - PR_PROFILE_HOME_SERVER_DN_UNICODE = 0x6612001f, - PR_PROFILE_HOME_SERVER_DN_ERROR = 0x6612000a, - PR_PROFILE_HOME_SERVER_ADDRS = 0x6613101e, - PR_PROFILE_HOME_SERVER_ADDRS_UNICODE = 0x6613101f, - PR_PROFILE_HOME_SERVER_ADDRS_ERROR = 0x6613000a, - PR_PROFILE_SERVER_DN = 0x6614001e, - PR_PROFILE_SERVER_DN_UNICODE = 0x6614001f, - PR_PROFILE_SERVER_DN_ERROR = 0x6614000a, - PR_PROFILE_FAVFLD_COMMENT = 0x6615001e, - PR_PROFILE_FAVFLD_COMMENT_UNICODE = 0x6615001f, - PR_PROFILE_FAVFLD_COMMENT_ERROR = 0x6615000a, - PR_PROFILE_ALLPUB_DISPLAY_NAME = 0x6616001e, - PR_PROFILE_ALLPUB_DISPLAY_NAME_UNICODE = 0x6616001f, - PR_PROFILE_ALLPUB_DISPLAY_NAME_ERROR = 0x6616000a, - PR_PROFILE_ALLPUB_COMMENT = 0x6617001e, - PR_PROFILE_ALLPUB_COMMENT_UNICODE = 0x6617001f, - PR_PROFILE_ALLPUB_COMMENT_ERROR = 0x6617000a, - PR_DISABLE_WINSOCK = 0x66180003, - PR_DISABLE_WINSOCK_ERROR = 0x6618000a, - PR_IN_TRANSIT = 0x6618000b, - PR_PROFILE_AUTH_PACKAGE = 0x66190003, - PR_PROFILE_AUTH_PACKAGE_ERROR = 0x6619000a, - PR_USER_ENTRYID = 0x66190102, - PR_USER_NAME = 0x661a001e, - PR_USER_NAME_UNICODE = 0x661a001f, - PR_USER_NAME_ERROR = 0x661a000a, - PR_MAILBOX_OWNER_ENTRYID = 0x661b0102, - PR_MAILBOX_OWNER_ENTRYID_ERROR = 0x661b000a, - PR_MAILBOX_OWNER_NAME = 0x661c001e, - PR_MAILBOX_OWNER_NAME_UNICODE = 0x661c001f, - PR_MAILBOX_OWNER_NAME_ERROR = 0x661c000a, - PR_OOF_STATE = 0x661d000b, - PR_OOF_STATE_ERROR = 0x661d000a, - PR_SCHEDULE_FOLDER_ENTRYID = 0x661e0102, - PR_SCHEDULE_FOLDER_ENTRYID_ERROR = 0x661e000a, - PR_IPM_DAF_ENTRYID = 0x661f0102, - PR_IPM_DAF_ENTRYID_ERROR = 0x661f000a, - PR_NON_IPM_SUBTREE_ENTRYID = 0x66200102, - PR_NON_IPM_SUBTREE_ENTRYID_ERROR = 0x6620000a, - PR_EFORMS_REGISTRY_ENTRYID = 0x66210102, - PR_EFORMS_REGISTRY_ENTRYID_ERROR = 0x6621000a, - PR_SPLUS_FREE_BUSY_ENTRYID = 0x66220102, - PR_SPLUS_FREE_BUSY_ENTRYID_ERROR = 0x6622000a, - PR_HIERARCHY_SERVER = 0x6623001e, - PR_HIERARCHY_SERVER_UNICODE = 0x6623001f, - PR_HIERARCHY_SERVER_ERROR = 0x6623000a, - PR_OFFLINE_ADDRBOOK_ENTRYID = 0x66230102, - PR_EFORMS_FOR_LOCALE_ENTRYID = 0x66240102, - PR_EFORMS_FOR_LOCALE_ENTRYID_ERROR = 0x6624000a, - PR_FREE_BUSY_FOR_LOCAL_SITE_ENTRYID = 0x66250102, - PR_FREE_BUSY_FOR_LOCAL_SITE_ENTRYID_ERROR = 0x6625000a, - PR_ADDRBOOK_FOR_LOCAL_SITE_ENTRYID = 0x66260102, - PR_ADDRBOOK_FOR_LOCAL_SITE_ENTRYID_ERROR = 0x6626000a, - PR_OFFLINE_MESSAGE_ENTRYID = 0x66270102, - PR_OFFLINE_MESSAGE_ENTRYID_ERROR = 0x6627000a, - PR_GW_MTSIN_ENTRYID = 0x66280102, - PR_GW_MTSIN_ENTRYID_ERROR = 0x6628000a, - PR_GW_MTSOUT_ENTRYID = 0x66290102, - PR_GW_MTSOUT_ENTRYID_ERROR = 0x6629000a, - PR_TRANSFER_ENABLED = 0x662a000b, - PR_TRANSFER_ENABLED_ERROR = 0x662a000a, - PR_TEST_LINE_SPEED = 0x662b0102, - PR_TEST_LINE_SPEED_ERROR = 0x662b000a, - PR_HIERARCHY_SYNCHRONIZER = 0x662c000d, - PR_HIERARCHY_SYNCHRONIZER_ERROR = 0x662c000a, - PR_CONTENTS_SYNCHRONIZER = 0x662d000d, - PR_CONTENTS_SYNCHRONIZER_ERROR = 0x662d000a, - PR_COLLECTOR = 0x662e000d, - PR_COLLECTOR_ERROR = 0x662e000a, - PR_FAST_TRANSFER = 0x662f000d, - PR_FAST_TRANSFER_ERROR = 0x662f000a, - PR_IPM_FAVORITES_ENTRYID = 0x66300102, - PR_IPM_FAVORITES_ENTRYID_ERROR = 0x6630000a, - PR_IPM_PUBLIC_FOLDERS_ENTRYID = 0x66310102, - PR_IPM_PUBLIC_FOLDERS_ENTRYID_ERROR = 0x6631000a, - PR_STORE_OFFLINE = 0x6632000b, - PR_STORE_OFFLINE_ERROR = 0x6632000a, - PR_CHANGE_ADVISOR = 0x6634000d, - PR_CHANGE_ADVISOR_ERROR = 0x6634000a, - PR_FAVORITES_DEFAULT_NAME = 0x6635001e, - PR_FAVORITES_DEFAULT_NAME_UNICODE = 0x6635001f, - PR_FAVORITES_DEFAULT_NAME_ERROR = 0x6635000a, - PR_SYS_CONFIG_FOLDER_ENTRYID = 0x66360102, - PR_SYS_CONFIG_FOLDER_ENTRYID_ERROR = 0x6636000a, - PR_CHANGE_NOTIFICATION_GUID = 0x66370048, - PR_CHANGE_NOTIFICATION_GUID_ERROR = 0x6637000a, - PR_FOLDER_CHILD_COUNT = 0x66380003, - PR_FOLDER_CHILD_COUNT_ERROR = 0x6638000a, - PR_RIGHTS = 0x66390003, - PR_RIGHTS_ERROR = 0x6639000a, - PR_HAS_RULES = 0x663a000b, - PR_HAS_RULES_ERROR = 0x663a000a, - PR_ADDRESS_BOOK_ENTRYID = 0x663b0102, - PR_ADDRESS_BOOK_ENTRYID_ERROR = 0x663b000a, - PR_PUBLIC_FOLDER_ENTRYID = 0x663c0102, - PR_PUBLIC_FOLDER_ENTRYID_ERROR = 0x663c000a, - PR_OFFLINE_FLAGS = 0x663d0003, - PR_OFFLINE_FLAGS_ERROR = 0x663d000a, - PR_HIERARCHY_CHANGE_NUM = 0x663e0003, - PR_HIERARCHY_CHANGE_NUM_ERROR = 0x663e000a, - PR_HAS_MODERATOR_RULES = 0x663f000b, - PR_HAS_MODERATOR_RULES_ERROR = 0x663f000a, - PR_DELETED_MSG_COUNT = 0x66400003, - PR_DELETED_MSG_COUNT_ERROR = 0x6640000a, - PR_DELETED_FOLDER_COUNT = 0x66410003, - PR_DELETED_FOLDER_COUNT_ERROR = 0x6641000a, - PR_OLDEST_DELETED_ON = 0x66420040, - PR_OLDEST_DELETED_ON_ERROR = 0x6642000a, - PR_DELETED_ASSOC_MSG_COUNT = 0x66430003, - PR_DELETED_ASSOC_MSG_COUNT_ERROR = 0x6643000a, - PR_REPLICA_SERVER = 0x6644001e, - PR_REPLICA_SERVER_UNICODE = 0x6644001f, - PR_REPLICA_SERVER_ERROR = 0x6644000a, - PR_CLIENT_ACTIONS = 0x66450102, - PR_CLIENT_ACTIONS_ERROR = 0x6645000a, - PR_DAM_ORIGINAL_ENTRYID = 0x66460102, - PR_DAM_ORIGINAL_ENTRYID_ERROR = 0x6646000a, - PR_DAM_BACK_PATCHED = 0x6647000b, - PR_DAM_BACK_PATCHED_ERROR = 0x6647000a, - PR_RULE_ERROR = 0x66480003, - PR_RULE_ERROR_ERROR = 0x6648000a, - PR_RULE_ACTION_TYPE = 0x66490003, - PR_RULE_ACTION_TYPE_ERROR = 0x6649000a, - PR_HAS_NAMED_PROPERTIES = 0x664a000b, - PR_HAS_NAMED_PROPERTIES_ERROR = 0x664a000a, - PR_REPLICA_VERSION = 0x664b0014, - PR_REPLICA_VERSION_ERROR = 0x664b000a, - PR_RULE_ACTION_NUMBER = 0x66500003, - PR_RULE_ACTION_NUMBER_ERROR = 0x6650000a, - PR_RULE_FOLDER_ENTRYID = 0x66510102, - PR_RULE_FOLDER_ENTRYID_ERROR = 0x6651000a, - PR_ACTIVE_USER_ENTRYID = 0x66520102, - PR_ACTIVE_USER_ENTRYID_ERROR = 0x6652000a, - PR_0X400_ENVELOPE_TYPE = 0x66530003, - PR_0X400_ENVELOPE_TYPE_ERROR = 0x6653000a, - PR_MSG_FOLD_TIME = 0x66540040, - PR_MSG_FOLD_TIME_ERROR = 0x6654000a, - PR_ICS_CHANGE_KEY = 0x66550102, - PR_ICS_CHANGE_KEY_ERROR = 0x6655000a, - PR_GW_ADMIN_OPERATIONS = 0x66580003, - PR_GW_ADMIN_OPERATIONS_ERROR = 0x6658000a, - PR_INTERNET_CONTENT = 0x66590102, - PR_INTERNET_CONTENT_ERROR = 0x6659000a, - PR_HAS_ATTACH_FROM_IMAIL = 0x665a000b, - PR_HAS_ATTACH_FROM_IMAIL_ERROR = 0x665a000a, - PR_ORIGINATOR_NAME = 0x665b001e, - PR_ORIGINATOR_NAME_UNICODE = 0x665b001f, - PR_ORIGINATOR_NAME_ERROR = 0x665b000a, - PR_ORIGINATOR_ADDR = 0x665c001e, - PR_ORIGINATOR_ADDR_UNICODE = 0x665c001f, - PR_ORIGINATOR_ADDR_ERROR = 0x665c000a, - PR_ORIGINATOR_ADDRTYPE = 0x665d001e, - PR_ORIGINATOR_ADDRTYPE_UNICODE = 0x665d001f, - PR_ORIGINATOR_ADDRTYPE_ERROR = 0x665d000a, - PR_ORIGINATOR_ENTRYID = 0x665e0102, - PR_ORIGINATOR_ENTRYID_ERROR = 0x665e000a, - PR_ARRIVAL_TIME = 0x665f0040, - PR_ARRIVAL_TIME_ERROR = 0x665f000a, - PR_TRACE_INFO = 0x66600102, - PR_TRACE_INFO_ERROR = 0x6660000a, - PR_SUBJECT_TRACE_INFO = 0x66610102, - PR_SUBJECT_TRACE_INFO_ERROR = 0x6661000a, - PR_RECIPIENT_NUMBER = 0x66620003, - PR_RECIPIENT_NUMBER_ERROR = 0x6662000a, - PR_MTS_SUBJECT_ID = 0x66630102, - PR_MTS_SUBJECT_ID_ERROR = 0x6663000a, - PR_REPORT_DESTINATION_NAME = 0x6664001e, - PR_REPORT_DESTINATION_NAME_UNICODE = 0x6664001f, - PR_REPORT_DESTINATION_NAME_ERROR = 0x6664000a, - PR_REPORT_DESTINATION_ENTRYID = 0x66650102, - PR_REPORT_DESTINATION_ENTRYID_ERROR = 0x6665000a, - PR_CONTENT_SEARCH_KEY = 0x66660102, - PR_CONTENT_SEARCH_KEY_ERROR = 0x6666000a, - PR_FOREIGN_ID = 0x66670102, - PR_FOREIGN_ID_ERROR = 0x6667000a, - PR_FOREIGN_REPORT_ID = 0x66680102, - PR_FOREIGN_REPORT_ID_ERROR = 0x6668000a, - PR_FOREIGN_SUBJECT_ID = 0x66690102, - PR_FOREIGN_SUBJECT_ID_ERROR = 0x6669000a, - PR_INTERNAL_TRACE_INFO = 0x666a0102, - PR_INTERNAL_TRACE_INFO_ERROR = 0x666a000a, - PR_IN_CONFLICT = 0x666c000b, - PR_IN_CONFLICT_ERROR = 0x666c000a, - PR_LONGTERM_ENTRYID_FROM_TABLE = 0x66700102, - PR_LONGTERM_ENTRYID_FROM_TABLE_ERROR = 0x6670000a, - PR_MEMBER_ID = 0x66710014, - PR_MEMBER_ID_ERROR = 0x6671000a, - PR_MEMBER_NAME = 0x6672001e, - PR_MEMBER_NAME_UNICODE = 0x6672001f, - PR_MEMBER_NAME_ERROR = 0x6672000a, - PR_MEMBER_RIGHTS = 0x66730003, - PR_MEMBER_RIGHTS_ERROR = 0x6673000a, - PR_RULE_ID = 0x66740014, - PR_RULE_ID_ERROR = 0x6674000a, - PR_RULE_IDS = 0x66750102, - PR_RULE_IDS_ERROR = 0x6675000a, - PR_RULE_SEQUENCE = 0x66760003, - PR_RULE_SEQUENCE_ERROR = 0x6676000a, - PR_RULE_STATE = 0x66770003, - PR_RULE_STATE_ERROR = 0x6677000a, - PR_RULE_USER_FLAGS = 0x66780003, - PR_RULE_USER_FLAGS_ERROR = 0x6678000a, - PR_RULE_CONDITION = 0x667900fd, - PR_RULE_CONDITION_ERROR = 0x6679000a, - PR_PROFILE_MOAB = 0x667b001e, - PR_PROFILE_MOAB_UNICODE = 0x667b001f, - PR_PROFILE_MOAB_ERROR = 0x667b000a, - PR_PROFILE_MOAB_GUID = 0x667c001e, - PR_PROFILE_MOAB_GUID_UNICODE = 0x667c001f, - PR_PROFILE_MOAB_GUID_ERROR = 0x667c000a, - PR_PROFILE_MOAB_SEQ = 0x667d0003, - PR_PROFILE_MOAB_SEQ_ERROR = 0x667d000a, - PR_IMPLIED_RESTRICTIONS = 0x667f1102, - PR_IMPLIED_RESTRICTIONS_ERROR = 0x667f000a, - PR_RULE_ACTIONS = 0x668000fe, - PR_RULE_ACTIONS_ERROR = 0x6680000a, - PR_RULE_PROVIDER = 0x6681001e, - PR_RULE_PROVIDER_UNICODE = 0x6681001f, - PR_RULE_PROVIDER_ERROR = 0x6681000a, - PR_RULE_NAME = 0x6682001e, - PR_RULE_NAME_UNICODE = 0x6682001f, - PR_RULE_NAME_ERROR = 0x6682000a, - PR_RULE_LEVEL = 0x66830003, - PR_RULE_LEVEL_ERROR = 0x6683000a, - PR_RULE_PROVIDER_DATA = 0x66840102, - PR_RULE_PROVIDER_DATA_ERROR = 0x6684000a, - PR_LAST_FULL_BACKUP = 0x66850040, - PR_LAST_FULL_BACKUP_ERROR = 0x6685000a, - PR_PROFILE_ADDR_INFO = 0x66870102, - PR_PROFILE_ADDR_INFO_ERROR = 0x6687000a, - PR_PROFILE_OPTIONS_DATA = 0x66890102, - PR_PROFILE_OPTIONS_DATA_ERROR = 0x6689000a, - PR_EVENTS_ROOT_FOLDER_ENTRYID = 0x668a0102, - PR_EVENTS_ROOT_FOLDER_ENTRYID_ERROR = 0x668a000a, - PR_INBOUND_NEWSFEED_DN = 0x668d001e, - PR_INBOUND_NEWSFEED_DN_UNICODE = 0x668d001f, - PR_INBOUND_NEWSFEED_DN_ERROR = 0x668d000a, - PR_OUTBOUND_NEWSFEED_DN = 0x668e001e, - PR_OUTBOUND_NEWSFEED_DN_UNICODE = 0x668e001f, - PR_OUTBOUND_NEWSFEED_DN_ERROR = 0x668e000a, - PR_DELETED_ON = 0x668f0040, - PR_DELETED_ON_ERROR = 0x668f000a, - PR_REPLICATION_STYLE = 0x66900003, - PR_REPLICATION_STYLE_ERROR = 0x6690000a, - PR_REPLICATION_SCHEDULE = 0x66910102, - PR_REPLICATION_SCHEDULE_ERROR = 0x6691000a, - PR_REPLICATION_MESSAGE_PRIORITY = 0x66920003, - PR_REPLICATION_MESSAGE_PRIORITY_ERROR = 0x6692000a, - PR_OVERALL_MSG_AGE_LIMIT = 0x66930003, - PR_OVERALL_MSG_AGE_LIMIT_ERROR = 0x6693000a, - PR_REPLICATION_ALWAYS_INTERVAL = 0x66940003, - PR_REPLICATION_ALWAYS_INTERVAL_ERROR = 0x6694000a, - PR_REPLICATION_MSG_SIZE = 0x66950003, - PR_REPLICATION_MSG_SIZE_ERROR = 0x6695000a, - PR_IS_NEWSGROUP_ANCHOR = 0x6696000b, - PR_IS_NEWSGROUP_ANCHOR_ERROR = 0x6696000a, - PR_IS_NEWSGROUP = 0x6697000b, - PR_IS_NEWSGROUP_ERROR = 0x6697000a, - PR_REPLICA_LIST = 0x66980102, - PR_REPLICA_LIST_ERROR = 0x6698000a, - PR_OVERALL_AGE_LIMIT = 0x66990003, - PR_OVERALL_AGE_LIMIT_ERROR = 0x6699000a, - PR_INTERNET_CHARSET = 0x669a001e, - PR_INTERNET_CHARSET_UNICODE = 0x669a001f, - PR_INTERNET_CHARSET_ERROR = 0x669a000a, - PR_DELETED_MESSAGE_SIZE_EXTENDED = 0x669b0014, - PR_DELETED_MESSAGE_SIZE_EXTENDED_ERROR = 0x669b000a, - PR_DELETED_NORMAL_MESSAGE_SIZE_EXTENDED = 0x669c0014, - PR_DELETED_NORMAL_MESSAGE_SIZE_EXTENDED_ERROR = 0x669c000a, - PR_DELETED_ASSOC_MESSAGE_SIZE_EXTENDED = 0x669d0014, - PR_DELETED_ASSOC_MESSAGE_SIZE_EXTENDED_ERROR = 0x669d000a, - PR_SECURE_IN_SITE = 0x669e000b, - PR_SECURE_IN_SITE_ERROR = 0x669e000a, - PR_NT_USER_NAME = 0x66a0001e, - PR_NT_USER_NAME_UNICODE = 0x66a0001f, - PR_NT_USER_NAME_ERROR = 0x66a0000a, - PR_LOCALE_ID = 0x66a10003, - PR_LOCALE_ID_ERROR = 0x66a1000a, - PR_LAST_LOGON_TIME = 0x66a20040, - PR_LAST_LOGON_TIME_ERROR = 0x66a2000a, - PR_LAST_LOGOFF_TIME = 0x66a30040, - PR_LAST_LOGOFF_TIME_ERROR = 0x66a3000a, - PR_STORAGE_LIMIT_INFORMATION = 0x66a40003, - PR_STORAGE_LIMIT_INFORMATION_ERROR = 0x66a4000a, - PR_NEWSGROUP_COMPONENT = 0x66a5001e, - PR_NEWSGROUP_COMPONENT_UNICODE = 0x66a5001f, - PR_NEWSGROUP_COMPONENT_ERROR = 0x66a5000a, - PR_NEWSFEED_INFO = 0x66a60102, - PR_NEWSFEED_INFO_ERROR = 0x66a6000a, - PR_INTERNET_NEWSGROUP_NAME = 0x66a7001e, - PR_INTERNET_NEWSGROUP_NAME_UNICODE = 0x66a7001f, - PR_INTERNET_NEWSGROUP_NAME_ERROR = 0x66a7000a, - PR_FOLDER_FLAGS = 0x66a80003, - PR_FOLDER_FLAGS_ERROR = 0x66a8000a, - PR_LAST_ACCESS_TIME = 0x66a90040, - PR_LAST_ACCESS_TIME_ERROR = 0x66a9000a, - PR_RESTRICTION_COUNT = 0x66aa0003, - PR_RESTRICTION_COUNT_ERROR = 0x66aa000a, - PR_CATEG_COUNT = 0x66ab0003, - PR_CATEG_COUNT_ERROR = 0x66ab000a, - PR_CACHED_COLUMN_COUNT = 0x66ac0003, - PR_CACHED_COLUMN_COUNT_ERROR = 0x66ac000a, - PR_NORMAL_MSG_W_ATTACH_COUNT = 0x66ad0003, - PR_NORMAL_MSG_W_ATTACH_COUNT_ERROR = 0x66ad000a, - PR_ASSOC_MSG_W_ATTACH_COUNT = 0x66ae0003, - PR_ASSOC_MSG_W_ATTACH_COUNT_ERROR = 0x66ae000a, - PR_RECIPIENT_ON_NORMAL_MSG_COUNT = 0x66af0003, - PR_RECIPIENT_ON_NORMAL_MSG_COUNT_ERROR = 0x66af000a, - PR_RECIPIENT_ON_ASSOC_MSG_COUNT = 0x66b00003, - PR_RECIPIENT_ON_ASSOC_MSG_COUNT_ERROR = 0x66b0000a, - PR_ATTACH_ON_NORMAL_MSG_COUNT = 0x66b10003, - PR_ATTACH_ON_NORMAL_MSG_COUNT_ERROR = 0x66b1000a, - PR_ATTACH_ON_ASSOC_MSG_COUNT = 0x66b20003, - PR_ATTACH_ON_ASSOC_MSG_COUNT_ERROR = 0x66b2000a, - PR_NORMAL_MESSAGE_SIZE = 0x66b30003, - PR_NORMAL_MESSAGE_SIZE_ERROR = 0x66b3000a, - PR_NORMAL_MESSAGE_SIZE_EXTENDED = 0x66b30014, - PR_ASSOC_MESSAGE_SIZE = 0x66b40003, - PR_ASSOC_MESSAGE_SIZE_ERROR = 0x66b4000a, - PR_ASSOC_MESSAGE_SIZE_EXTENDED = 0x66b40014, - PR_FOLDER_PATHNAME = 0x66b5001e, - PR_FOLDER_PATHNAME_UNICODE = 0x66b5001f, - PR_FOLDER_PATHNAME_ERROR = 0x66b5000a, - PR_OWNER_COUNT = 0x66b60003, - PR_OWNER_COUNT_ERROR = 0x66b6000a, - PR_CONTACT_COUNT = 0x66b70003, - PR_CONTACT_COUNT_ERROR = 0x66b7000a, - PR_CODE_PAGE_ID = 0x66c30003, - PR_CODE_PAGE_ID_ERROR = 0x66c3000a, - PR_RETENTION_AGE_LIMIT = 0x66c40003, - PR_RETENTION_AGE_LIMIT_ERROR = 0x66c4000a, - PR_DISABLE_PERUSER_READ = 0x66c5000b, - PR_DISABLE_PERUSER_READ_ERROR = 0x66c5000a, - PR_INTERNET_PARSE_STATE = 0x66c60102, - PR_INTERNET_PARSE_STATE_ERROR = 0x66c6000a, - PR_INTERNET_MESSAGE_INFO = 0x66c70102, - PR_INTERNET_MESSAGE_INFO_ERROR = 0x66c7000a, - PR_PST_PATH = 0x6700001e, - PR_PST_PATH_UNICODE = 0x6700001f, - PR_PST_PATH_ERROR = 0x6700000a, - PR_PST_REMEMBER_PW = 0x6701000b, - PR_PST_REMEMBER_PW_ERROR = 0x6701000a, - PR_OST_ENCRYPTION = 0x67020003, - PR_OST_ENCRYPTION_ERROR = 0x6702000a, - PR_PST_PW_SZ_OLD = 0x6703001e, - PR_PST_PW_SZ_OLD_UNICODE = 0x6703001f, - PR_PST_PW_SZ_OLD_ERROR = 0x6703000a, - PR_PST_PW_SZ_NEW = 0x6704001e, - PR_PST_PW_SZ_NEW_UNICODE = 0x6704001f, - PR_PST_PW_SZ_NEW_ERROR = 0x6704000a, - PR_SORT_LOCALE_ID = 0x67050003, - PR_SORT_LOCALE_ID_ERROR = 0x6705000a, - PR_URL_NAME = 0x6707001e, - PR_URL_NAME_UNICODE = 0x6707001f, - PR_URL_NAME_ERROR = 0x6707000a, - PR_LOCAL_COMMIT_TIME = 0x67090040, - PR_LOCAL_COMMIT_TIME_ERROR = 0x6709000a, - PR_LOCAL_COMMIT_TIME_MAX = 0x670a0040, - PR_LOCAL_COMMIT_TIME_MAX_ERROR = 0x670a000a, - PR_DELETED_COUNT_TOTAL = 0x670b0003, - PR_DELETED_COUNT_TOTAL_ERROR = 0x670b000a, - PR_AUTO_RESET = 0x670c0048, - PR_AUTO_RESET_ERROR = 0x670c000a, - PR_URL_COMP_NAME_HASH = 0x67100003, - PR_URL_COMP_NAME_HASH_ERROR = 0x6710000a, - PR_MSG_FOLDER_TEMPLATE_RES_2 = 0x67110003, - PR_MSG_FOLDER_TEMPLATE_RES_2_ERROR = 0x6711000a, - PR_RANK = 0x67120003, - PR_RANK_ERROR = 0x6712000a, - PR_MSG_FOLDER_TEMPLATE_RES_4 = 0x6713000b, - PR_MSG_FOLDER_TEMPLATE_RES_4_ERROR = 0x6713000a, - PR_MSG_FOLDER_TEMPLATE_RES_5 = 0x6714000b, - PR_MSG_FOLDER_TEMPLATE_RES_5_ERROR = 0x6714000a, - PR_MSG_FOLDER_TEMPLATE_RES_6 = 0x6715000b, - PR_MSG_FOLDER_TEMPLATE_RES_6_ERROR = 0x6715000a, - PR_MSG_FOLDER_TEMPLATE_RES_7 = 0x67160102, - PR_MSG_FOLDER_TEMPLATE_RES_7_ERROR = 0x6716000a, - PR_MSG_FOLDER_TEMPLATE_RES_8 = 0x67170102, - PR_MSG_FOLDER_TEMPLATE_RES_8_ERROR = 0x6717000a, - PR_MSG_FOLDER_TEMPLATE_RES_9 = 0x67180102, - PR_MSG_FOLDER_TEMPLATE_RES_9_ERROR = 0x6718000a, - PR_MSG_FOLDER_TEMPLATE_RES_10 = 0x6719001e, - PR_MSG_FOLDER_TEMPLATE_RES_10_UNICODE = 0x6719001f, - PR_MSG_FOLDER_TEMPLATE_RES_10_ERROR = 0x6719000a, - PR_MSG_FOLDER_TEMPLATE_RES_11 = 0x671a001e, - PR_MSG_FOLDER_TEMPLATE_RES_11_UNICODE = 0x671a001f, - PR_MSG_FOLDER_TEMPLATE_RES_11_ERROR = 0x671a000a, - PR_MSG_FOLDER_TEMPLATE_RES_12 = 0x671b001e, - PR_MSG_FOLDER_TEMPLATE_RES_12_UNICODE = 0x671b001f, - PR_MSG_FOLDER_TEMPLATE_RES_12_ERROR = 0x671b000a, - PR_PF_PLATINUM_HOME_MDB = 0x671e000b, - PR_PF_PLATINUM_HOME_MDB_ERROR = 0x671e000a, - PR_PF_PROXY_REQUIRED = 0x671f000b, - PR_PF_PROXY_REQUIRED_ERROR = 0x671f000a, - PR_INTERNET_FREE_DOC_INFO = 0x67200102, - PR_INTERNET_FREE_DOC_INFO_ERROR = 0x6720000a, - PR_PF_OVER_HARD_QUOTA_LIMIT = 0x67210003, - PR_PF_OVER_HARD_QUOTA_LIMIT_ERROR = 0x6721000a, - PR_PF_MSG_SIZE_LIMIT = 0x67220003, - PR_PF_MSG_SIZE_LIMIT_ERROR = 0x6722000a, - PR_CONNECTION_MODULUS = 0x67430003, - PR_CONNECTION_MODULUS_ERROR = 0x6743000a, - PR_DELIVER_TO_DN = 0x6744001e, - PR_DELIVER_TO_DN_UNICODE = 0x6744001f, - PR_DELIVER_TO_DN_ERROR = 0x6744000a, - PR_MIME_SIZE = 0x67460003, - PR_MIME_SIZE_ERROR = 0x6746000a, - PR_FILE_SIZE_EXTENDED = 0x67470014, - PR_FILE_SIZE_EXTENDED_ERROR = 0x6747000a, - PR_FID = 0x67480014, - PR_FID_ERROR = 0x6748000a, - PR_PARENT_FID = 0x67490014, - PR_PARENT_FID_ERROR = 0x6749000a, - PR_MID = 0x674a0014, - PR_MID_ERROR = 0x674a000a, - PR_CATEG_ID = 0x674b0014, - PR_CATEG_ID_ERROR = 0x674b000a, - PR_PARENT_CATEG_ID = 0x674c0014, - PR_PARENT_CATEG_ID_ERROR = 0x674c000a, - PR_INST_ID = 0x674d0014, - PR_INST_ID_ERROR = 0x674d000a, - PR_INSTANCE_NUM = 0x674e0003, - PR_INSTANCE_NUM_ERROR = 0x674e000a, - PR_ADDRBOOK_MID = 0x674f0014, - PR_ADDRBOOK_MID_ERROR = 0x674f000a, - PR_ICS_NOTIF = 0x67500003, - PR_ICS_NOTIF_ERROR = 0x6750000a, - PR_ARTICLE_NUM_NEXT = 0x67510003, - PR_ARTICLE_NUM_NEXT_ERROR = 0x6751000a, - PR_IMAP_LAST_ARTICLE_ID = 0x67520003, - PR_IMAP_LAST_ARTICLE_ID_ERROR = 0x6752000a, - PR_NOT_822_RENDERABLE = 0x6753000b, - PR_NOT_822_RENDERABLE_ERROR = 0x6753000a, - PR_LTID = 0x67580102, - PR_LTID_ERROR = 0x6758000a, - PR_CN_EXPORT = 0x67590102, - PR_CN_EXPORT_ERROR = 0x6759000a, - PR_PCL_EXPORT = 0x675a0102, - PR_PCL_EXPORT_ERROR = 0x675a000a, - PR_CN_MV_EXPORT = 0x675b1102, - PR_CN_MV_EXPORT_ERROR = 0x675b000a, - PR_PF_QUOTA_STYLE = 0x67790003, - PR_PF_QUOTA_STYLE_ERROR = 0x6779000a, - PR_PF_STORAGE_QUOTA = 0x677b0003, - PR_PF_STORAGE_QUOTA_ERROR = 0x677b000a, - PR_SEARCH_FLAGS = 0x67830003, - PR_SEARCH_FLAGS_ERROR = 0x6783000a, - PR_ASSOCIATED = 0x67aa000b, - PR_ASSOCIATED_ERROR = 0x67aa000a, - PR_PROFILE_SECURE_MAILBOX = 0x67f00102, - PR_PROFILE_SECURE_MAILBOX_ERROR = 0x67f0000a, - PR_MAILBEAT_BOUNCE_SERVER = 0x6800001e, - PR_MAILBEAT_BOUNCE_SERVER_UNICODE = 0x6800001f, - PR_MAILBEAT_BOUNCE_SERVER_ERROR = 0x6800000a, - PR_MAILBEAT_REQUEST_SENT = 0x68010040, - PR_MAILBEAT_REQUEST_SENT_ERROR = 0x6801000a, - PR_USENET_SITE_NAME = 0x6802001e, - PR_USENET_SITE_NAME_UNICODE = 0x6802001f, - PR_USENET_SITE_NAME_ERROR = 0x6802000a, - PR_MAILBEAT_REQUEST_RECEIVED = 0x68030040, - PR_MAILBEAT_REQUEST_RECEIVED_ERROR = 0x6803000a, - PR_MAILBEAT_REQUEST_PROCESSED = 0x68040040, - PR_MAILBEAT_REQUEST_PROCESSED_ERROR = 0x6804000a, - PR_MAILBEAT_REPLY_SENT = 0x68060040, - PR_MAILBEAT_REPLY_SENT_ERROR = 0x6806000a, - PR_MAILBEAT_REPLY_SUBMIT = 0x68070040, - PR_MAILBEAT_REPLY_SUBMIT_ERROR = 0x6807000a, - PR_MAILBEAT_REPLY_RECEIVED = 0x68080040, - PR_MAILBEAT_REPLY_RECEIVED_ERROR = 0x6808000a, - PR_MAILBEAT_REPLY_PROCESSED = 0x68090040, - PR_MAILBEAT_REPLY_PROCESSED_ERROR = 0x6809000a, - PR_DELEGATES_DISPLAY_NAMES = 0x6844101e, - PR_DELEGATES_DISPLAY_NAMES_UNICODE = 0x6844101f, - PR_DELEGATES_DISPLAY_NAMES_ERROR = 0x6844000a, - PR_DELEGATES_ENTRYIDS = 0x68451102, - PR_DELEGATES_ENTRYIDS_ERROR = 0x6845000a, - PR_FREEBUSY_START_RANGE = 0x68470003, - PR_FREEBUSY_START_RANGE_ERROR = 0x6847000a, - PR_FREEBUSY_END_RANGE = 0x68480003, - PR_FREEBUSY_END_RANGE_ERROR = 0x6848000a, - PR_FREEBUSY_EMAIL_ADDRESS = 0x6849001e, - PR_FREEBUSY_EMAIL_ADDRESS_UNICODE = 0x6849001f, - PR_FREEBUSY_EMAIL_ADDRESS_ERROR = 0x6849000a, - PR_FREEBUSY_ALL_MONTHS = 0x684f1003, - PR_FREEBUSY_ALL_MONTHS_ERROR = 0x684f000a, - PR_FREEBUSY_ALL_EVENTS = 0x68501102, - PR_FREEBUSY_ALL_EVENTS_ERROR = 0x6850000a, - PR_FREEBUSY_TENTATIVE_MONTHS = 0x68511003, - PR_FREEBUSY_TENTATIVE_MONTHS_ERROR = 0x6851000a, - PR_FREEBUSY_TENTATIVE_EVENTS = 0x68521102, - PR_FREEBUSY_TENTATIVE_EVENTS_ERROR = 0x6852000a, - PR_FREEBUSY_BUSY_MONTHS = 0x68531003, - PR_FREEBUSY_BUSY_MONTHS_ERROR = 0x6853000a, - PR_FREEBUSY_BUSY_EVENTS = 0x68541102, - PR_FREEBUSY_BUSY_EVENTS_ERROR = 0x6854000a, - PR_FREEBUSY_OOF_MONTHS = 0x68551003, - PR_FREEBUSY_OOF_MONTHS_ERROR = 0x6855000a, - PR_FREEBUSY_OOF_EVENTS = 0x68561102, - PR_FREEBUSY_OOF_EVENTS_ERROR = 0x6856000a, - PR_FREEBUSY_LAST_MODIFIED = 0x68680040, - PR_FREEBUSY_LAST_MODIFIED_ERROR = 0x6868000a, - PR_FREEBUSY_NUM_MONTHS = 0x68690003, - PR_FREEBUSY_NUM_MONTHS_ERROR = 0x6869000a, - PR_DELEGATES_SEE_PRIVATE = 0x686b1003, - PR_DELEGATES_SEE_PRIVATE_ERROR = 0x686b000a, - PR_PERSONAL_FREEBUSY = 0x686c0102, - PR_PERSONAL_FREEBUSY_ERROR = 0x686c000a, - PR_PROCESS_MEETING_REQUESTS = 0x686d000b, - PR_PROCESS_MEETING_REQUESTS_ERROR = 0x686d000a, - PR_DECLINE_RECURRING_MEETING_REQUESTS = 0x686e000b, - PR_DECLINE_RECURRING_MEETING_REQUESTS_ERROR = 0x686e000a, - PR_DECLINE_CONFLICTING_MEETING_REQUESTS = 0x686f000b, - PR_DECLINE_CONFLICTING_MEETING_REQUESTS_ERROR = 0x686f000a, - PR_VD_BINARY = 0x70010102, - PR_VD_BINARY_ERROR = 0x7001000a, - PR_VD_STRINGS = 0x7002001e, - PR_VD_STRINGS_UNICODE = 0x7002001f, - PR_VD_STRINGS_ERROR = 0x7002000a, - PR_VD_FLAGS = 0x70030003, - PR_VD_FLAGS_ERROR = 0x7003000a, - PR_VD_LINK_TO = 0x70040102, - PR_VD_LINK_TO_ERROR = 0x7004000a, - PR_VD_VIEW_FOLDER = 0x70050102, - PR_VD_VIEW_FOLDER_ERROR = 0x7005000a, - PR_VD_NAME = 0x7006001e, - PR_VD_NAME_UNICODE = 0x7006001f, - PR_VD_NAME_ERROR = 0x7006000a, - PR_VD_VERSION = 0x70070003, - PR_VD_VERSION_ERROR = 0x7007000a, - PR_FAV_DISPLAY_NAME_A = 0x7c00001e, - PR_FAV_DISPLAY_NAME_A_UNICODE = 0x7c00001f, - PR_FAV_DISPLAY_NAME_A_ERROR = 0x7c00000a, - PR_FAV_PUBLIC_SOURCE_KEY = 0x7c020102, - PR_FAV_PUBLIC_SOURCE_KEY_ERROR = 0x7c02000a, - PR_OST_OSTID = 0x7c040102, - PR_OST_OSTID_ERROR = 0x7c04000a, - PR_STORE_SLOWLINK = 0x7c0a000b, - PR_STORE_SLOWLINK_ERROR = 0x7c0a000a, - PR_FAV_AUTOSUBFOLDERS = 0x7d010003, - PR_FAV_AUTOSUBFOLDERS_ERROR = 0x7d01000a, - PR_FAV_PARENT_SOURCE_KEY = 0x7d020102, - PR_FAV_PARENT_SOURCE_KEY_ERROR = 0x7d02000a, - PR_FAV_LEVEL_MASK = 0x7d030003, - PR_FAV_LEVEL_MASK_ERROR = 0x7d03000a, - PR_FAV_INHERIT_AUTO = 0x7d070003, - PR_FAV_INHERIT_AUTO_ERROR = 0x7d07000a, - PR_FAV_DEL_SUBS = 0x7d080102, - PR_FAV_DEL_SUBS_ERROR = 0x7d08000a, - PR_ATTACHMENT_LINKID = 0x7ffa0003, - PR_ATTACHMENT_LINKID_ERROR = 0x7ffa000a, - PR_EXCEPTION_STARTTIME = 0x7ffb0040, - PR_EXCEPTION_STARTTIME_ERROR = 0x7ffb000a, - PR_EXCEPTION_ENDTIME = 0x7ffc0040, - PR_EXCEPTION_ENDTIME_ERROR = 0x7ffc000a, - PR_ATTACHMENT_FLAGS = 0x7ffd0003, - PR_ATTACHMENT_FLAGS_ERROR = 0x7ffd000a, - PR_ATTACHMENT_HIDDEN = 0x7ffe000b, - PR_ATTACHMENT_HIDDEN_ERROR = 0x7ffe000a, - PR_EMS_AB_DISPLAY_NAME_OVERRIDE = 0x8001000b, - PR_EMS_AB_DISPLAY_NAME_OVERRIDE_ERROR = 0x8001000a, - PR_EMS_AB_CA_CERTIFICATE = 0x80031102, - PR_EMS_AB_CA_CERTIFICATE_ERROR = 0x8003000a, - PR_EMS_AB_FOLDER_PATHNAME = 0x8004001e, - PR_EMS_AB_FOLDER_PATHNAME_UNICODE = 0x8004001f, - PR_EMS_AB_FOLDER_PATHNAME_ERROR = 0x8004000a, - PR_EMS_AB_MANAGER = 0x8005000d, - PR_EMS_AB_MANAGER_ERROR = 0x8005000a, - PR_EMS_AB_MANAGER_T = 0x8005001e, - PR_EMS_AB_MANAGER_T_UNICODE = 0x8005001f, - PR_EMS_AB_HOME_MDB_O = 0x8006000d, - PR_EMS_AB_HOME_MDB_O_ERROR = 0x8006000a, - PR_EMS_AB_HOME_MDB = 0x8006001e, - PR_EMS_AB_HOME_MDB_UNICODE = 0x8006001f, - PR_EMS_AB_HOME_MTA_O = 0x8007000d, - PR_EMS_AB_HOME_MTA_O_ERROR = 0x8007000a, - PR_EMS_AB_HOME_MTA = 0x8007001e, - PR_EMS_AB_HOME_MTA_UNICODE = 0x8007001f, - PR_EMS_AB_IS_MEMBER_OF_DL = 0x8008000d, - PR_EMS_AB_IS_MEMBER_OF_DL_ERROR = 0x8008000a, - PR_EMS_AB_IS_MEMBER_OF_DL_T = 0x8008001e, - PR_EMS_AB_IS_MEMBER_OF_DL_T_UNICODE = 0x8008001f, - PR_EMS_AB_MEMBER = 0x8009000d, - PR_EMS_AB_MEMBER_ERROR = 0x8009000a, - PR_EMS_AB_MEMBER_T = 0x8009001e, - PR_EMS_AB_MEMBER_T_UNICODE = 0x8009001f, - PR_EMS_AB_AUTOREPLY_MESSAGE = 0x800a001e, - PR_EMS_AB_AUTOREPLY_MESSAGE_UNICODE = 0x800a001f, - PR_EMS_AB_AUTOREPLY_MESSAGE_ERROR = 0x800a000a, - PR_EMS_AB_AUTOREPLY = 0x800b000b, - PR_EMS_AB_AUTOREPLY_ERROR = 0x800b000a, - PR_EMS_AB_OWNER_O = 0x800c000d, - PR_EMS_AB_OWNER_O_ERROR = 0x800c000a, - PR_EMS_AB_OWNER = 0x800c001e, - PR_EMS_AB_OWNER_UNICODE = 0x800c001f, - PR_EMS_AB_KM_SERVER_O = 0x800d000d, - PR_EMS_AB_KM_SERVER_O_ERROR = 0x800d000a, - PR_EMS_AB_KM_SERVER = 0x800d001e, - PR_EMS_AB_KM_SERVER_UNICODE = 0x800d001f, - PR_EMS_AB_REPORTS = 0x800e000d, - PR_EMS_AB_REPORTS_ERROR = 0x800e000a, - PR_EMS_AB_PROXY_ADDRESSES = 0x800f101e, - PR_EMS_AB_PROXY_ADDRESSES_UNICODE = 0x800f101f, - PR_EMS_AB_PROXY_ADDRESSES_ERROR = 0x800f000a, - PR_EMS_AB_HELP_DATA32 = 0x80100102, - PR_EMS_AB_HELP_DATA32_ERROR = 0x8010000a, - PR_EMS_AB_TARGET_ADDRESS = 0x8011001e, - PR_EMS_AB_TARGET_ADDRESS_UNICODE = 0x8011001f, - PR_EMS_AB_TARGET_ADDRESS_ERROR = 0x8011000a, - PR_EMS_AB_TELEPHONE_NUMBER = 0x8012101e, - PR_EMS_AB_TELEPHONE_NUMBER_UNICODE = 0x8012101f, - PR_EMS_AB_TELEPHONE_NUMBER_ERROR = 0x8012000a, - PR_EMS_AB_NT_SECURITY_DESCRIPTOR = 0x80130102, - PR_EMS_AB_NT_SECURITY_DESCRIPTOR_ERROR = 0x8013000a, - PR_EMS_AB_HOME_MDB_BL_O = 0x8014000d, - PR_EMS_AB_HOME_MDB_BL_O_ERROR = 0x8014000a, - PR_EMS_AB_HOME_MDB_BL = 0x8014101e, - PR_EMS_AB_HOME_MDB_BL_UNICODE = 0x8014101f, - PR_EMS_AB_PUBLIC_DELEGATES = 0x8015000d, - PR_EMS_AB_PUBLIC_DELEGATES_ERROR = 0x8015000a, - PR_EMS_AB_PUBLIC_DELEGATES_T = 0x8015001e, - PR_EMS_AB_PUBLIC_DELEGATES_T_UNICODE = 0x8015001f, - PR_EMS_AB_CERTIFICATE_REVOCATION_LIST = 0x80160102, - PR_EMS_AB_CERTIFICATE_REVOCATION_LIST_ERROR = 0x8016000a, - PR_EMS_AB_ADDRESS_ENTRY_DISPLAY_TABLE = 0x80170102, - PR_EMS_AB_ADDRESS_ENTRY_DISPLAY_TABLE_ERROR = 0x8017000a, - PR_EMS_AB_ADDRESS_SYNTAX = 0x80180102, - PR_EMS_AB_ADDRESS_SYNTAX_ERROR = 0x8018000a, - PR_EMS_AB_BUSINESS_ROLES = 0x80230102, - PR_EMS_AB_BUSINESS_ROLES_ERROR = 0x8023000a, - PR_EMS_AB_OWNER_BL_O = 0x8024000d, - PR_EMS_AB_OWNER_BL_O_ERROR = 0x8024000a, - PR_EMS_AB_OWNER_BL = 0x8024101e, - PR_EMS_AB_OWNER_BL_UNICODE = 0x8024101f, - PR_EMS_AB_CROSS_CERTIFICATE_PAIR = 0x80251102, - PR_EMS_AB_CROSS_CERTIFICATE_PAIR_ERROR = 0x8025000a, - PR_EMS_AB_AUTHORITY_REVOCATION_LIST = 0x80261102, - PR_EMS_AB_AUTHORITY_REVOCATION_LIST_ERROR = 0x8026000a, - PR_EMS_AB_ASSOC_NT_ACCOUNT = 0x80270102, - PR_EMS_AB_ASSOC_NT_ACCOUNT_ERROR = 0x8027000a, - PR_EMS_AB_EXPIRATION_TIME = 0x80280040, - PR_EMS_AB_EXPIRATION_TIME_ERROR = 0x8028000a, - PR_EMS_AB_USN_CHANGED = 0x80290003, - PR_EMS_AB_USN_CHANGED_ERROR = 0x8029000a, - PR_EMS_AB_EXTENSION_ATTRIBUTE_1 = 0x802d001e, - PR_EMS_AB_EXTENSION_ATTRIBUTE_1_UNICODE = 0x802d001f, - PR_EMS_AB_EXTENSION_ATTRIBUTE_1_ERROR = 0x802d000a, - PR_EMS_AB_EXTENSION_ATTRIBUTE_2 = 0x802e001e, - PR_EMS_AB_EXTENSION_ATTRIBUTE_2_UNICODE = 0x802e001f, - PR_EMS_AB_EXTENSION_ATTRIBUTE_2_ERROR = 0x802e000a, - PR_EMS_AB_EXTENSION_ATTRIBUTE_3 = 0x802f001e, - PR_EMS_AB_EXTENSION_ATTRIBUTE_3_UNICODE = 0x802f001f, - PR_EMS_AB_EXTENSION_ATTRIBUTE_3_ERROR = 0x802f000a, - PR_EMS_AB_EXTENSION_ATTRIBUTE_4 = 0x8030001e, - PR_EMS_AB_EXTENSION_ATTRIBUTE_4_UNICODE = 0x8030001f, - PR_EMS_AB_EXTENSION_ATTRIBUTE_4_ERROR = 0x8030000a, - PR_EMS_AB_EXTENSION_ATTRIBUTE_5 = 0x8031001e, - PR_EMS_AB_EXTENSION_ATTRIBUTE_5_UNICODE = 0x8031001f, - PR_EMS_AB_EXTENSION_ATTRIBUTE_5_ERROR = 0x8031000a, - PR_EMS_AB_EXTENSION_ATTRIBUTE_6 = 0x8032001e, - PR_EMS_AB_EXTENSION_ATTRIBUTE_6_UNICODE = 0x8032001f, - PR_EMS_AB_EXTENSION_ATTRIBUTE_6_ERROR = 0x8032000a, - PR_EMS_AB_EXTENSION_ATTRIBUTE_7 = 0x8033001e, - PR_EMS_AB_EXTENSION_ATTRIBUTE_7_UNICODE = 0x8033001f, - PR_EMS_AB_EXTENSION_ATTRIBUTE_7_ERROR = 0x8033000a, - PR_EMS_AB_EXTENSION_ATTRIBUTE_8 = 0x8034001e, - PR_EMS_AB_EXTENSION_ATTRIBUTE_8_UNICODE = 0x8034001f, - PR_EMS_AB_EXTENSION_ATTRIBUTE_8_ERROR = 0x8034000a, - PR_EMS_AB_EXTENSION_ATTRIBUTE_9 = 0x8035001e, - PR_EMS_AB_EXTENSION_ATTRIBUTE_9_UNICODE = 0x8035001f, - PR_EMS_AB_EXTENSION_ATTRIBUTE_9_ERROR = 0x8035000a, - PR_EMS_AB_EXTENSION_ATTRIBUTE_10 = 0x8036001e, - PR_EMS_AB_EXTENSION_ATTRIBUTE_10_UNICODE = 0x8036001f, - PR_EMS_AB_EXTENSION_ATTRIBUTE_10_ERROR = 0x8036000a, - PR_EMS_AB_SECURITY_PROTOCOL = 0x80371102, - PR_EMS_AB_SECURITY_PROTOCOL_ERROR = 0x8037000a, - PR_EMS_AB_PF_CONTACTS_O = 0x8038000d, - PR_EMS_AB_PF_CONTACTS_O_ERROR = 0x8038000a, - PR_EMS_AB_PF_CONTACTS = 0x8038101e, - PR_EMS_AB_PF_CONTACTS_UNICODE = 0x8038101f, - PR_EMS_AB_HELP_DATA16 = 0x803a0102, - PR_EMS_AB_HELP_DATA16_ERROR = 0x803a000a, - PR_EMS_AB_HELP_FILE_NAME = 0x803b001e, - PR_EMS_AB_HELP_FILE_NAME_UNICODE = 0x803b001f, - PR_EMS_AB_HELP_FILE_NAME_ERROR = 0x803b000a, - PR_EMS_AB_OBJ_DIST_NAME_O = 0x803c000d, - PR_EMS_AB_OBJ_DIST_NAME_O_ERROR = 0x803c000a, - PR_EMS_AB_OBJ_DIST_NAME = 0x803c001e, - PR_EMS_AB_OBJ_DIST_NAME_UNICODE = 0x803c001f, - PR_EMS_AB_ENCRYPT_ALG_SELECTED_OTHER = 0x803d001e, - PR_EMS_AB_ENCRYPT_ALG_SELECTED_OTHER_UNICODE = 0x803d001f, - PR_EMS_AB_ENCRYPT_ALG_SELECTED_OTHER_ERROR = 0x803d000a, - PR_EMS_AB_AUTOREPLY_SUBJECT = 0x803e001e, - PR_EMS_AB_AUTOREPLY_SUBJECT_UNICODE = 0x803e001f, - PR_EMS_AB_AUTOREPLY_SUBJECT_ERROR = 0x803e000a, - PR_EMS_AB_HOME_PUBLIC_SERVER_O = 0x803f000d, - PR_EMS_AB_HOME_PUBLIC_SERVER_O_ERROR = 0x803f000a, - PR_EMS_AB_HOME_PUBLIC_SERVER = 0x803f001e, - PR_EMS_AB_HOME_PUBLIC_SERVER_UNICODE = 0x803f001f, - PR_EMS_AB_ENCRYPT_ALG_LIST_NA = 0x8040101e, - PR_EMS_AB_ENCRYPT_ALG_LIST_NA_UNICODE = 0x8040101f, - PR_EMS_AB_ENCRYPT_ALG_LIST_NA_ERROR = 0x8040000a, - PR_EMS_AB_ENCRYPT_ALG_LIST_OTHER = 0x8041101e, - PR_EMS_AB_ENCRYPT_ALG_LIST_OTHER_UNICODE = 0x8041101f, - PR_EMS_AB_ENCRYPT_ALG_LIST_OTHER_ERROR = 0x8041000a, - PR_EMS_AB_IMPORTED_FROM = 0x8042001e, - PR_EMS_AB_IMPORTED_FROM_UNICODE = 0x8042001f, - PR_EMS_AB_IMPORTED_FROM_ERROR = 0x8042000a, - PR_EMS_AB_ENCRYPT_ALG_SELECTED_NA = 0x8043001e, - PR_EMS_AB_ENCRYPT_ALG_SELECTED_NA_UNICODE = 0x8043001f, - PR_EMS_AB_ENCRYPT_ALG_SELECTED_NA_ERROR = 0x8043000a, - PR_EMS_AB_ACCESS_CATEGORY = 0x80440003, - PR_EMS_AB_ACCESS_CATEGORY_ERROR = 0x8044000a, - PR_EMS_AB_ACTIVATION_SCHEDULE = 0x80450102, - PR_EMS_AB_ACTIVATION_SCHEDULE_ERROR = 0x8045000a, - PR_EMS_AB_ACTIVATION_STYLE = 0x80460003, - PR_EMS_AB_ACTIVATION_STYLE_ERROR = 0x8046000a, - PR_EMS_AB_ADDRESS_ENTRY_DISPLAY_TABLE_MSDOS = 0x80470102, - PR_EMS_AB_ADDRESS_ENTRY_DISPLAY_TABLE_MSDOS_ERROR = 0x8047000a, - PR_EMS_AB_ADDRESS_TYPE = 0x8048001e, - PR_EMS_AB_ADDRESS_TYPE_UNICODE = 0x8048001f, - PR_EMS_AB_ADDRESS_TYPE_ERROR = 0x8048000a, - PR_EMS_AB_ADMD = 0x8049001e, - PR_EMS_AB_ADMD_UNICODE = 0x8049001f, - PR_EMS_AB_ADMD_ERROR = 0x8049000a, - PR_EMS_AB_ADMIN_DESCRIPTION = 0x804a001e, - PR_EMS_AB_ADMIN_DESCRIPTION_UNICODE = 0x804a001f, - PR_EMS_AB_ADMIN_DESCRIPTION_ERROR = 0x804a000a, - PR_EMS_AB_ADMIN_DISPLAY_NAME = 0x804b001e, - PR_EMS_AB_ADMIN_DISPLAY_NAME_UNICODE = 0x804b001f, - PR_EMS_AB_ADMIN_DISPLAY_NAME_ERROR = 0x804b000a, - PR_EMS_AB_ADMIN_EXTENSION_DLL = 0x804c001e, - PR_EMS_AB_ADMIN_EXTENSION_DLL_UNICODE = 0x804c001f, - PR_EMS_AB_ADMIN_EXTENSION_DLL_ERROR = 0x804c000a, - PR_EMS_AB_ALIASED_OBJECT_NAME_O = 0x804d000d, - PR_EMS_AB_ALIASED_OBJECT_NAME_O_ERROR = 0x804d000a, - PR_EMS_AB_ALIASED_OBJECT_NAME = 0x804d001e, - PR_EMS_AB_ALIASED_OBJECT_NAME_UNICODE = 0x804d001f, - PR_EMS_AB_ALT_RECIPIENT_O = 0x804e000d, - PR_EMS_AB_ALT_RECIPIENT_O_ERROR = 0x804e000a, - PR_EMS_AB_ALT_RECIPIENT = 0x804e001e, - PR_EMS_AB_ALT_RECIPIENT_UNICODE = 0x804e001f, - PR_EMS_AB_ALT_RECIPIENT_BL_O = 0x804f000d, - PR_EMS_AB_ALT_RECIPIENT_BL_O_ERROR = 0x804f000a, - PR_EMS_AB_ALT_RECIPIENT_BL = 0x804f101e, - PR_EMS_AB_ALT_RECIPIENT_BL_UNICODE = 0x804f101f, - PR_EMS_AB_ANCESTOR_ID = 0x80500102, - PR_EMS_AB_ANCESTOR_ID_ERROR = 0x8050000a, - PR_EMS_AB_ASSOC_REMOTE_DXA_O = 0x8051000d, - PR_EMS_AB_ASSOC_REMOTE_DXA_O_ERROR = 0x8051000a, - PR_EMS_AB_ASSOC_REMOTE_DXA = 0x8051101e, - PR_EMS_AB_ASSOC_REMOTE_DXA_UNICODE = 0x8051101f, - PR_EMS_AB_ASSOCIATION_LIFETIME = 0x80520003, - PR_EMS_AB_ASSOCIATION_LIFETIME_ERROR = 0x8052000a, - PR_EMS_AB_AUTH_ORIG_BL_O = 0x8053000d, - PR_EMS_AB_AUTH_ORIG_BL_O_ERROR = 0x8053000a, - PR_EMS_AB_AUTH_ORIG_BL = 0x8053101e, - PR_EMS_AB_AUTH_ORIG_BL_UNICODE = 0x8053101f, - PR_EMS_AB_AUTHORIZED_DOMAIN = 0x8054001e, - PR_EMS_AB_AUTHORIZED_DOMAIN_UNICODE = 0x8054001f, - PR_EMS_AB_AUTHORIZED_DOMAIN_ERROR = 0x8054000a, - PR_EMS_AB_AUTHORIZED_PASSWORD = 0x80550102, - PR_EMS_AB_AUTHORIZED_PASSWORD_ERROR = 0x8055000a, - PR_EMS_AB_AUTHORIZED_USER = 0x8056001e, - PR_EMS_AB_AUTHORIZED_USER_UNICODE = 0x8056001f, - PR_EMS_AB_AUTHORIZED_USER_ERROR = 0x8056000a, - PR_EMS_AB_BUSINESS_CATEGORY = 0x8057101e, - PR_EMS_AB_BUSINESS_CATEGORY_UNICODE = 0x8057101f, - PR_EMS_AB_BUSINESS_CATEGORY_ERROR = 0x8057000a, - PR_EMS_AB_CAN_CREATE_PF_O = 0x8058000d, - PR_EMS_AB_CAN_CREATE_PF_O_ERROR = 0x8058000a, - PR_EMS_AB_CAN_CREATE_PF = 0x8058101e, - PR_EMS_AB_CAN_CREATE_PF_UNICODE = 0x8058101f, - PR_EMS_AB_CAN_CREATE_PF_BL_O = 0x8059000d, - PR_EMS_AB_CAN_CREATE_PF_BL_O_ERROR = 0x8059000a, - PR_EMS_AB_CAN_CREATE_PF_BL = 0x8059101e, - PR_EMS_AB_CAN_CREATE_PF_BL_UNICODE = 0x8059101f, - PR_EMS_AB_CAN_CREATE_PF_DL_O = 0x805a000d, - PR_EMS_AB_CAN_CREATE_PF_DL_O_ERROR = 0x805a000a, - PR_EMS_AB_CAN_CREATE_PF_DL = 0x805a101e, - PR_EMS_AB_CAN_CREATE_PF_DL_UNICODE = 0x805a101f, - PR_EMS_AB_CAN_CREATE_PF_DL_BL_O = 0x805b000d, - PR_EMS_AB_CAN_CREATE_PF_DL_BL_O_ERROR = 0x805b000a, - PR_EMS_AB_CAN_CREATE_PF_DL_BL = 0x805b101e, - PR_EMS_AB_CAN_CREATE_PF_DL_BL_UNICODE = 0x805b101f, - PR_EMS_AB_CAN_NOT_CREATE_PF_O = 0x805c000d, - PR_EMS_AB_CAN_NOT_CREATE_PF_O_ERROR = 0x805c000a, - PR_EMS_AB_CAN_NOT_CREATE_PF = 0x805c101e, - PR_EMS_AB_CAN_NOT_CREATE_PF_UNICODE = 0x805c101f, - PR_EMS_AB_CAN_NOT_CREATE_PF_BL_O = 0x805d000d, - PR_EMS_AB_CAN_NOT_CREATE_PF_BL_O_ERROR = 0x805d000a, - PR_EMS_AB_CAN_NOT_CREATE_PF_BL = 0x805d101e, - PR_EMS_AB_CAN_NOT_CREATE_PF_BL_UNICODE = 0x805d101f, - PR_EMS_AB_CAN_NOT_CREATE_PF_DL_O = 0x805e000d, - PR_EMS_AB_CAN_NOT_CREATE_PF_DL_O_ERROR = 0x805e000a, - PR_EMS_AB_CAN_NOT_CREATE_PF_DL = 0x805e101e, - PR_EMS_AB_CAN_NOT_CREATE_PF_DL_UNICODE = 0x805e101f, - PR_EMS_AB_CAN_NOT_CREATE_PF_DL_BL_O = 0x805f000d, - PR_EMS_AB_CAN_NOT_CREATE_PF_DL_BL_O_ERROR = 0x805f000a, - PR_EMS_AB_CAN_NOT_CREATE_PF_DL_BL = 0x805f101e, - PR_EMS_AB_CAN_NOT_CREATE_PF_DL_BL_UNICODE = 0x805f101f, - PR_EMS_AB_CAN_PRESERVE_DNS = 0x8060000b, - PR_EMS_AB_CAN_PRESERVE_DNS_ERROR = 0x8060000a, - PR_EMS_AB_CLOCK_ALERT_OFFSET = 0x80610003, - PR_EMS_AB_CLOCK_ALERT_OFFSET_ERROR = 0x8061000a, - PR_EMS_AB_CLOCK_ALERT_REPAIR = 0x8062000b, - PR_EMS_AB_CLOCK_ALERT_REPAIR_ERROR = 0x8062000a, - PR_EMS_AB_CLOCK_WARNING_OFFSET = 0x80630003, - PR_EMS_AB_CLOCK_WARNING_OFFSET_ERROR = 0x8063000a, - PR_EMS_AB_CLOCK_WARNING_REPAIR = 0x8064000b, - PR_EMS_AB_CLOCK_WARNING_REPAIR_ERROR = 0x8064000a, - PR_EMS_AB_COMPUTER_NAME = 0x8065001e, - PR_EMS_AB_COMPUTER_NAME_UNICODE = 0x8065001f, - PR_EMS_AB_COMPUTER_NAME_ERROR = 0x8065000a, - PR_EMS_AB_CONNECTED_DOMAINS = 0x8066101e, - PR_EMS_AB_CONNECTED_DOMAINS_UNICODE = 0x8066101f, - PR_EMS_AB_CONNECTED_DOMAINS_ERROR = 0x8066000a, - PR_EMS_AB_CONTAINER_INFO = 0x80670003, - PR_EMS_AB_CONTAINER_INFO_ERROR = 0x8067000a, - PR_EMS_AB_COST = 0x80680003, - PR_EMS_AB_COST_ERROR = 0x8068000a, - PR_EMS_AB_COUNTRY_NAME = 0x8069001e, - PR_EMS_AB_COUNTRY_NAME_UNICODE = 0x8069001f, - PR_EMS_AB_COUNTRY_NAME_ERROR = 0x8069000a, - PR_EMS_AB_DELIV_CONT_LENGTH = 0x806a0003, - PR_EMS_AB_DELIV_CONT_LENGTH_ERROR = 0x806a000a, - PR_EMS_AB_DELIV_EITS = 0x806b1102, - PR_EMS_AB_DELIV_EITS_ERROR = 0x806b000a, - PR_EMS_AB_DELIV_EXT_CONT_TYPES = 0x806c1102, - PR_EMS_AB_DELIV_EXT_CONT_TYPES_ERROR = 0x806c000a, - PR_EMS_AB_DELIVER_AND_REDIRECT = 0x806d000b, - PR_EMS_AB_DELIVER_AND_REDIRECT_ERROR = 0x806d000a, - PR_EMS_AB_DELIVERY_MECHANISM = 0x806e0003, - PR_EMS_AB_DELIVERY_MECHANISM_ERROR = 0x806e000a, - PR_EMS_AB_DESCRIPTION = 0x806f101e, - PR_EMS_AB_DESCRIPTION_UNICODE = 0x806f101f, - PR_EMS_AB_DESCRIPTION_ERROR = 0x806f000a, - PR_EMS_AB_DESTINATION_INDICATOR = 0x8070101e, - PR_EMS_AB_DESTINATION_INDICATOR_UNICODE = 0x8070101f, - PR_EMS_AB_DESTINATION_INDICATOR_ERROR = 0x8070000a, - PR_EMS_AB_DIAGNOSTIC_REG_KEY = 0x8071001e, - PR_EMS_AB_DIAGNOSTIC_REG_KEY_UNICODE = 0x8071001f, - PR_EMS_AB_DIAGNOSTIC_REG_KEY_ERROR = 0x8071000a, - PR_EMS_AB_DL_MEM_REJECT_PERMS_BL_O = 0x8072000d, - PR_EMS_AB_DL_MEM_REJECT_PERMS_BL_O_ERROR = 0x8072000a, - PR_EMS_AB_DL_MEM_REJECT_PERMS_BL = 0x8072101e, - PR_EMS_AB_DL_MEM_REJECT_PERMS_BL_UNICODE = 0x8072101f, - PR_EMS_AB_DL_MEM_SUBMIT_PERMS_BL_O = 0x8073000d, - PR_EMS_AB_DL_MEM_SUBMIT_PERMS_BL_O_ERROR = 0x8073000a, - PR_EMS_AB_DL_MEM_SUBMIT_PERMS_BL = 0x8073101e, - PR_EMS_AB_DL_MEM_SUBMIT_PERMS_BL_UNICODE = 0x8073101f, - PR_EMS_AB_DL_MEMBER_RULE = 0x80741102, - PR_EMS_AB_DL_MEMBER_RULE_ERROR = 0x8074000a, - PR_EMS_AB_DOMAIN_DEF_ALT_RECIP_O = 0x8075000d, - PR_EMS_AB_DOMAIN_DEF_ALT_RECIP_O_ERROR = 0x8075000a, - PR_EMS_AB_DOMAIN_DEF_ALT_RECIP = 0x8075001e, - PR_EMS_AB_DOMAIN_DEF_ALT_RECIP_UNICODE = 0x8075001f, - PR_EMS_AB_DOMAIN_NAME = 0x8076001e, - PR_EMS_AB_DOMAIN_NAME_UNICODE = 0x8076001f, - PR_EMS_AB_DOMAIN_NAME_ERROR = 0x8076000a, - PR_EMS_AB_DSA_SIGNATURE = 0x80770102, - PR_EMS_AB_DSA_SIGNATURE_ERROR = 0x8077000a, - PR_EMS_AB_DXA_ADMIN_COPY = 0x8078000b, - PR_EMS_AB_DXA_ADMIN_COPY_ERROR = 0x8078000a, - PR_EMS_AB_DXA_ADMIN_FORWARD = 0x8079000b, - PR_EMS_AB_DXA_ADMIN_FORWARD_ERROR = 0x8079000a, - PR_EMS_AB_DXA_ADMIN_UPDATE = 0x807a0003, - PR_EMS_AB_DXA_ADMIN_UPDATE_ERROR = 0x807a000a, - PR_EMS_AB_DXA_APPEND_REQCN = 0x807b000b, - PR_EMS_AB_DXA_APPEND_REQCN_ERROR = 0x807b000a, - PR_EMS_AB_DXA_CONF_CONTAINER_LIST_O = 0x807c000d, - PR_EMS_AB_DXA_CONF_CONTAINER_LIST_O_ERROR = 0x807c000a, - PR_EMS_AB_DXA_CONF_CONTAINER_LIST = 0x807c101e, - PR_EMS_AB_DXA_CONF_CONTAINER_LIST_UNICODE = 0x807c101f, - PR_EMS_AB_DXA_CONF_REQ_TIME = 0x807d0040, - PR_EMS_AB_DXA_CONF_REQ_TIME_ERROR = 0x807d000a, - PR_EMS_AB_DXA_CONF_SEQ = 0x807e001e, - PR_EMS_AB_DXA_CONF_SEQ_UNICODE = 0x807e001f, - PR_EMS_AB_DXA_CONF_SEQ_ERROR = 0x807e000a, - PR_EMS_AB_DXA_CONF_SEQ_USN = 0x807f0003, - PR_EMS_AB_DXA_CONF_SEQ_USN_ERROR = 0x807f000a, - PR_EMS_AB_DXA_EXCHANGE_OPTIONS = 0x80800003, - PR_EMS_AB_DXA_EXCHANGE_OPTIONS_ERROR = 0x8080000a, - PR_EMS_AB_DXA_EXPORT_NOW = 0x8081000b, - PR_EMS_AB_DXA_EXPORT_NOW_ERROR = 0x8081000a, - PR_EMS_AB_DXA_FLAGS = 0x80820003, - PR_EMS_AB_DXA_FLAGS_ERROR = 0x8082000a, - PR_EMS_AB_DXA_IMP_SEQ = 0x8083001e, - PR_EMS_AB_DXA_IMP_SEQ_UNICODE = 0x8083001f, - PR_EMS_AB_DXA_IMP_SEQ_ERROR = 0x8083000a, - PR_EMS_AB_DXA_IMP_SEQ_TIME = 0x80840040, - PR_EMS_AB_DXA_IMP_SEQ_TIME_ERROR = 0x8084000a, - PR_EMS_AB_DXA_IMP_SEQ_USN = 0x80850003, - PR_EMS_AB_DXA_IMP_SEQ_USN_ERROR = 0x8085000a, - PR_EMS_AB_DXA_IMPORT_NOW = 0x8086000b, - PR_EMS_AB_DXA_IMPORT_NOW_ERROR = 0x8086000a, - PR_EMS_AB_DXA_IN_TEMPLATE_MAP = 0x8087101e, - PR_EMS_AB_DXA_IN_TEMPLATE_MAP_UNICODE = 0x8087101f, - PR_EMS_AB_DXA_IN_TEMPLATE_MAP_ERROR = 0x8087000a, - PR_EMS_AB_DXA_LOCAL_ADMIN_O = 0x8088000d, - PR_EMS_AB_DXA_LOCAL_ADMIN_O_ERROR = 0x8088000a, - PR_EMS_AB_DXA_LOCAL_ADMIN = 0x8088001e, - PR_EMS_AB_DXA_LOCAL_ADMIN_UNICODE = 0x8088001f, - PR_EMS_AB_DXA_LOGGING_LEVEL = 0x80890003, - PR_EMS_AB_DXA_LOGGING_LEVEL_ERROR = 0x8089000a, - PR_EMS_AB_DXA_NATIVE_ADDRESS_TYPE = 0x808a001e, - PR_EMS_AB_DXA_NATIVE_ADDRESS_TYPE_UNICODE = 0x808a001f, - PR_EMS_AB_DXA_NATIVE_ADDRESS_TYPE_ERROR = 0x808a000a, - PR_EMS_AB_DXA_OUT_TEMPLATE_MAP = 0x808b101e, - PR_EMS_AB_DXA_OUT_TEMPLATE_MAP_UNICODE = 0x808b101f, - PR_EMS_AB_DXA_OUT_TEMPLATE_MAP_ERROR = 0x808b000a, - PR_EMS_AB_DXA_PASSWORD = 0x808c001e, - PR_EMS_AB_DXA_PASSWORD_UNICODE = 0x808c001f, - PR_EMS_AB_DXA_PASSWORD_ERROR = 0x808c000a, - PR_EMS_AB_DXA_PREV_EXCHANGE_OPTIONS = 0x808d0003, - PR_EMS_AB_DXA_PREV_EXCHANGE_OPTIONS_ERROR = 0x808d000a, - PR_EMS_AB_DXA_PREV_EXPORT_NATIVE_ONLY = 0x808e000b, - PR_EMS_AB_DXA_PREV_EXPORT_NATIVE_ONLY_ERROR = 0x808e000a, - PR_EMS_AB_DXA_PREV_IN_EXCHANGE_SENSITIVITY = 0x808f0003, - PR_EMS_AB_DXA_PREV_IN_EXCHANGE_SENSITIVITY_ERROR = 0x808f000a, - PR_EMS_AB_DXA_PREV_REMOTE_ENTRIES_O = 0x8090000d, - PR_EMS_AB_DXA_PREV_REMOTE_ENTRIES_O_ERROR = 0x8090000a, - PR_EMS_AB_DXA_PREV_REMOTE_ENTRIES = 0x8090001e, - PR_EMS_AB_DXA_PREV_REMOTE_ENTRIES_UNICODE = 0x8090001f, - PR_EMS_AB_DXA_PREV_REPLICATION_SENSITIVITY = 0x80910003, - PR_EMS_AB_DXA_PREV_REPLICATION_SENSITIVITY_ERROR = 0x8091000a, - PR_EMS_AB_DXA_PREV_TEMPLATE_OPTIONS = 0x80920003, - PR_EMS_AB_DXA_PREV_TEMPLATE_OPTIONS_ERROR = 0x8092000a, - PR_EMS_AB_DXA_PREV_TYPES = 0x80930003, - PR_EMS_AB_DXA_PREV_TYPES_ERROR = 0x8093000a, - PR_EMS_AB_DXA_RECIPIENT_CP = 0x8094001e, - PR_EMS_AB_DXA_RECIPIENT_CP_UNICODE = 0x8094001f, - PR_EMS_AB_DXA_RECIPIENT_CP_ERROR = 0x8094000a, - PR_EMS_AB_DXA_REMOTE_CLIENT_O = 0x8095000d, - PR_EMS_AB_DXA_REMOTE_CLIENT_O_ERROR = 0x8095000a, - PR_EMS_AB_DXA_REMOTE_CLIENT = 0x8095001e, - PR_EMS_AB_DXA_REMOTE_CLIENT_UNICODE = 0x8095001f, - PR_EMS_AB_DXA_REQ_SEQ = 0x8096001e, - PR_EMS_AB_DXA_REQ_SEQ_UNICODE = 0x8096001f, - PR_EMS_AB_DXA_REQ_SEQ_ERROR = 0x8096000a, - PR_EMS_AB_DXA_REQ_SEQ_TIME = 0x80970040, - PR_EMS_AB_DXA_REQ_SEQ_TIME_ERROR = 0x8097000a, - PR_EMS_AB_DXA_REQ_SEQ_USN = 0x80980003, - PR_EMS_AB_DXA_REQ_SEQ_USN_ERROR = 0x8098000a, - PR_EMS_AB_DXA_REQNAME = 0x8099001e, - PR_EMS_AB_DXA_REQNAME_UNICODE = 0x8099001f, - PR_EMS_AB_DXA_REQNAME_ERROR = 0x8099000a, - PR_EMS_AB_DXA_SVR_SEQ = 0x809a001e, - PR_EMS_AB_DXA_SVR_SEQ_UNICODE = 0x809a001f, - PR_EMS_AB_DXA_SVR_SEQ_ERROR = 0x809a000a, - PR_EMS_AB_DXA_SVR_SEQ_TIME = 0x809b0040, - PR_EMS_AB_DXA_SVR_SEQ_TIME_ERROR = 0x809b000a, - PR_EMS_AB_DXA_SVR_SEQ_USN = 0x809c0003, - PR_EMS_AB_DXA_SVR_SEQ_USN_ERROR = 0x809c000a, - PR_EMS_AB_DXA_TASK = 0x809d0003, - PR_EMS_AB_DXA_TASK_ERROR = 0x809d000a, - PR_EMS_AB_DXA_TEMPLATE_OPTIONS = 0x809e0003, - PR_EMS_AB_DXA_TEMPLATE_OPTIONS_ERROR = 0x809e000a, - PR_EMS_AB_DXA_TEMPLATE_TIMESTAMP = 0x809f0040, - PR_EMS_AB_DXA_TEMPLATE_TIMESTAMP_ERROR = 0x809f000a, - PR_EMS_AB_DXA_TYPES = 0x80a00003, - PR_EMS_AB_DXA_TYPES_ERROR = 0x80a0000a, - PR_EMS_AB_DXA_UNCONF_CONTAINER_LIST_O = 0x80a1000d, - PR_EMS_AB_DXA_UNCONF_CONTAINER_LIST_O_ERROR = 0x80a1000a, - PR_EMS_AB_DXA_UNCONF_CONTAINER_LIST = 0x80a1101e, - PR_EMS_AB_DXA_UNCONF_CONTAINER_LIST_UNICODE = 0x80a1101f, - PR_EMS_AB_ENCAPSULATION_METHOD = 0x80a20003, - PR_EMS_AB_ENCAPSULATION_METHOD_ERROR = 0x80a2000a, - PR_EMS_AB_ENCRYPT = 0x80a3000b, - PR_EMS_AB_ENCRYPT_ERROR = 0x80a3000a, - PR_EMS_AB_EXPAND_DLS_LOCALLY = 0x80a4000b, - PR_EMS_AB_EXPAND_DLS_LOCALLY_ERROR = 0x80a4000a, - PR_EMS_AB_EXPORT_CONTAINERS_O = 0x80a5000d, - PR_EMS_AB_EXPORT_CONTAINERS_O_ERROR = 0x80a5000a, - PR_EMS_AB_EXPORT_CONTAINERS = 0x80a5101e, - PR_EMS_AB_EXPORT_CONTAINERS_UNICODE = 0x80a5101f, - PR_EMS_AB_EXPORT_CUSTOM_RECIPIENTS = 0x80a6000b, - PR_EMS_AB_EXPORT_CUSTOM_RECIPIENTS_ERROR = 0x80a6000a, - PR_EMS_AB_EXTENDED_CHARS_ALLOWED = 0x80a7000b, - PR_EMS_AB_EXTENDED_CHARS_ALLOWED_ERROR = 0x80a7000a, - PR_EMS_AB_EXTENSION_DATA = 0x80a81102, - PR_EMS_AB_EXTENSION_DATA_ERROR = 0x80a8000a, - PR_EMS_AB_EXTENSION_NAME = 0x80a9101e, - PR_EMS_AB_EXTENSION_NAME_UNICODE = 0x80a9101f, - PR_EMS_AB_EXTENSION_NAME_ERROR = 0x80a9000a, - PR_EMS_AB_EXTENSION_NAME_INHERITED = 0x80aa101e, - PR_EMS_AB_EXTENSION_NAME_INHERITED_UNICODE = 0x80aa101f, - PR_EMS_AB_EXTENSION_NAME_INHERITED_ERROR = 0x80aa000a, - PR_EMS_AB_FACSIMILE_TELEPHONE_NUMBER = 0x80ab1102, - PR_EMS_AB_FACSIMILE_TELEPHONE_NUMBER_ERROR = 0x80ab000a, - PR_EMS_AB_FILE_VERSION = 0x80ac0102, - PR_EMS_AB_FILE_VERSION_ERROR = 0x80ac000a, - PR_EMS_AB_FILTER_LOCAL_ADDRESSES = 0x80ad000b, - PR_EMS_AB_FILTER_LOCAL_ADDRESSES_ERROR = 0x80ad000a, - PR_EMS_AB_FOLDERS_CONTAINER_O = 0x80ae000d, - PR_EMS_AB_FOLDERS_CONTAINER_O_ERROR = 0x80ae000a, - PR_EMS_AB_FOLDERS_CONTAINER = 0x80ae001e, - PR_EMS_AB_FOLDERS_CONTAINER_UNICODE = 0x80ae001f, - PR_EMS_AB_GARBAGE_COLL_PERIOD = 0x80af0003, - PR_EMS_AB_GARBAGE_COLL_PERIOD_ERROR = 0x80af000a, - PR_EMS_AB_GATEWAY_LOCAL_CRED = 0x80b0001e, - PR_EMS_AB_GATEWAY_LOCAL_CRED_UNICODE = 0x80b0001f, - PR_EMS_AB_GATEWAY_LOCAL_CRED_ERROR = 0x80b0000a, - PR_EMS_AB_GATEWAY_LOCAL_DESIG = 0x80b1001e, - PR_EMS_AB_GATEWAY_LOCAL_DESIG_UNICODE = 0x80b1001f, - PR_EMS_AB_GATEWAY_LOCAL_DESIG_ERROR = 0x80b1000a, - PR_EMS_AB_GATEWAY_PROXY = 0x80b2101e, - PR_EMS_AB_GATEWAY_PROXY_UNICODE = 0x80b2101f, - PR_EMS_AB_GATEWAY_PROXY_ERROR = 0x80b2000a, - PR_EMS_AB_GATEWAY_ROUTING_TREE = 0x80b30102, - PR_EMS_AB_GATEWAY_ROUTING_TREE_ERROR = 0x80b3000a, - PR_EMS_AB_GWART_LAST_MODIFIED = 0x80b40040, - PR_EMS_AB_GWART_LAST_MODIFIED_ERROR = 0x80b4000a, - PR_EMS_AB_HAS_FULL_REPLICA_NCS_O = 0x80b5000d, - PR_EMS_AB_HAS_FULL_REPLICA_NCS_O_ERROR = 0x80b5000a, - PR_EMS_AB_HAS_FULL_REPLICA_NCS = 0x80b5101e, - PR_EMS_AB_HAS_FULL_REPLICA_NCS_UNICODE = 0x80b5101f, - PR_EMS_AB_HAS_MASTER_NCS_O = 0x80b6000d, - PR_EMS_AB_HAS_MASTER_NCS_O_ERROR = 0x80b6000a, - PR_EMS_AB_HAS_MASTER_NCS = 0x80b6101e, - PR_EMS_AB_HAS_MASTER_NCS_UNICODE = 0x80b6101f, - PR_EMS_AB_HEURISTICS = 0x80b70003, - PR_EMS_AB_HEURISTICS_ERROR = 0x80b7000a, - PR_EMS_AB_HIDE_DL_MEMBERSHIP = 0x80b8000b, - PR_EMS_AB_HIDE_DL_MEMBERSHIP_ERROR = 0x80b8000a, - PR_EMS_AB_HIDE_FROM_ADDRESS_BOOK = 0x80b9000b, - PR_EMS_AB_HIDE_FROM_ADDRESS_BOOK_ERROR = 0x80b9000a, - PR_EMS_AB_IMPORT_CONTAINER_O = 0x80ba000d, - PR_EMS_AB_IMPORT_CONTAINER_O_ERROR = 0x80ba000a, - PR_EMS_AB_IMPORT_CONTAINER = 0x80ba001e, - PR_EMS_AB_IMPORT_CONTAINER_UNICODE = 0x80ba001f, - PR_EMS_AB_IMPORT_SENSITIVITY = 0x80bb0003, - PR_EMS_AB_IMPORT_SENSITIVITY_ERROR = 0x80bb000a, - PR_EMS_AB_INBOUND_SITES_O = 0x80bc000d, - PR_EMS_AB_INBOUND_SITES_O_ERROR = 0x80bc000a, - PR_EMS_AB_INBOUND_SITES = 0x80bc101e, - PR_EMS_AB_INBOUND_SITES_UNICODE = 0x80bc101f, - PR_EMS_AB_INSTANCE_TYPE = 0x80bd0003, - PR_EMS_AB_INSTANCE_TYPE_ERROR = 0x80bd000a, - PR_EMS_AB_INTERNATIONAL_ISDN_NUMBER = 0x80be101e, - PR_EMS_AB_INTERNATIONAL_ISDN_NUMBER_UNICODE = 0x80be101f, - PR_EMS_AB_INTERNATIONAL_ISDN_NUMBER_ERROR = 0x80be000a, - PR_EMS_AB_INVOCATION_ID = 0x80bf0102, - PR_EMS_AB_INVOCATION_ID_ERROR = 0x80bf000a, - PR_EMS_AB_IS_DELETED = 0x80c0000b, - PR_EMS_AB_IS_DELETED_ERROR = 0x80c0000a, - PR_EMS_AB_IS_SINGLE_VALUED = 0x80c1000b, - PR_EMS_AB_IS_SINGLE_VALUED_ERROR = 0x80c1000a, - PR_EMS_AB_KCC_STATUS = 0x80c21102, - PR_EMS_AB_KCC_STATUS_ERROR = 0x80c2000a, - PR_EMS_AB_KNOWLEDGE_INFORMATION = 0x80c3101e, - PR_EMS_AB_KNOWLEDGE_INFORMATION_UNICODE = 0x80c3101f, - PR_EMS_AB_KNOWLEDGE_INFORMATION_ERROR = 0x80c3000a, - PR_EMS_AB_LINE_WRAP = 0x80c40003, - PR_EMS_AB_LINE_WRAP_ERROR = 0x80c4000a, - PR_EMS_AB_LINK_ID = 0x80c50003, - PR_EMS_AB_LINK_ID_ERROR = 0x80c5000a, - PR_EMS_AB_LOCAL_BRIDGE_HEAD = 0x80c6001e, - PR_EMS_AB_LOCAL_BRIDGE_HEAD_UNICODE = 0x80c6001f, - PR_EMS_AB_LOCAL_BRIDGE_HEAD_ERROR = 0x80c6000a, - PR_EMS_AB_LOCAL_BRIDGE_HEAD_ADDRESS = 0x80c7001e, - PR_EMS_AB_LOCAL_BRIDGE_HEAD_ADDRESS_UNICODE = 0x80c7001f, - PR_EMS_AB_LOCAL_BRIDGE_HEAD_ADDRESS_ERROR = 0x80c7000a, - PR_EMS_AB_LOCAL_INITIAL_TURN = 0x80c8000b, - PR_EMS_AB_LOCAL_INITIAL_TURN_ERROR = 0x80c8000a, - PR_EMS_AB_LOCAL_SCOPE_O = 0x80c9000d, - PR_EMS_AB_LOCAL_SCOPE_O_ERROR = 0x80c9000a, - PR_EMS_AB_LOCAL_SCOPE = 0x80c9101e, - PR_EMS_AB_LOCAL_SCOPE_UNICODE = 0x80c9101f, - PR_EMS_AB_LOG_FILENAME = 0x80ca001e, - PR_EMS_AB_LOG_FILENAME_UNICODE = 0x80ca001f, - PR_EMS_AB_LOG_FILENAME_ERROR = 0x80ca000a, - PR_EMS_AB_LOG_ROLLOVER_INTERVAL = 0x80cb0003, - PR_EMS_AB_LOG_ROLLOVER_INTERVAL_ERROR = 0x80cb000a, - PR_EMS_AB_MAINTAIN_AUTOREPLY_HISTORY = 0x80cc000b, - PR_EMS_AB_MAINTAIN_AUTOREPLY_HISTORY_ERROR = 0x80cc000a, - PR_EMS_AB_MAPI_DISPLAY_TYPE = 0x80cd0003, - PR_EMS_AB_MAPI_DISPLAY_TYPE_ERROR = 0x80cd000a, - PR_EMS_AB_MAPI_ID = 0x80ce0003, - PR_EMS_AB_MAPI_ID_ERROR = 0x80ce000a, - PR_EMS_AB_MDB_BACKOFF_INTERVAL = 0x80cf0003, - PR_EMS_AB_MDB_BACKOFF_INTERVAL_ERROR = 0x80cf000a, - PR_EMS_AB_MDB_MSG_TIME_OUT_PERIOD = 0x80d00003, - PR_EMS_AB_MDB_MSG_TIME_OUT_PERIOD_ERROR = 0x80d0000a, - PR_EMS_AB_MDB_OVER_QUOTA_LIMIT = 0x80d10003, - PR_EMS_AB_MDB_OVER_QUOTA_LIMIT_ERROR = 0x80d1000a, - PR_EMS_AB_MDB_STORAGE_QUOTA = 0x80d20003, - PR_EMS_AB_MDB_STORAGE_QUOTA_ERROR = 0x80d2000a, - PR_EMS_AB_MDB_UNREAD_LIMIT = 0x80d30003, - PR_EMS_AB_MDB_UNREAD_LIMIT_ERROR = 0x80d3000a, - PR_EMS_AB_MDB_USE_DEFAULTS = 0x80d4000b, - PR_EMS_AB_MDB_USE_DEFAULTS_ERROR = 0x80d4000a, - PR_EMS_AB_MESSAGE_TRACKING_ENABLED = 0x80d5000b, - PR_EMS_AB_MESSAGE_TRACKING_ENABLED_ERROR = 0x80d5000a, - PR_EMS_AB_MONITOR_CLOCK = 0x80d6000b, - PR_EMS_AB_MONITOR_CLOCK_ERROR = 0x80d6000a, - PR_EMS_AB_MONITOR_SERVERS = 0x80d7000b, - PR_EMS_AB_MONITOR_SERVERS_ERROR = 0x80d7000a, - PR_EMS_AB_MONITOR_SERVICES = 0x80d8000b, - PR_EMS_AB_MONITOR_SERVICES_ERROR = 0x80d8000a, - PR_EMS_AB_MONITORED_CONFIGURATIONS_O = 0x80d9000d, - PR_EMS_AB_MONITORED_CONFIGURATIONS_O_ERROR = 0x80d9000a, - PR_EMS_AB_MONITORED_CONFIGURATIONS = 0x80d9101e, - PR_EMS_AB_MONITORED_CONFIGURATIONS_UNICODE = 0x80d9101f, - PR_EMS_AB_MONITORED_SERVERS_O = 0x80da000d, - PR_EMS_AB_MONITORED_SERVERS_O_ERROR = 0x80da000a, - PR_EMS_AB_MONITORED_SERVERS = 0x80da101e, - PR_EMS_AB_MONITORED_SERVERS_UNICODE = 0x80da101f, - PR_EMS_AB_MONITORED_SERVICES = 0x80db101e, - PR_EMS_AB_MONITORED_SERVICES_UNICODE = 0x80db101f, - PR_EMS_AB_MONITORED_SERVICES_ERROR = 0x80db000a, - PR_EMS_AB_MONITORING_ALERT_DELAY = 0x80dc0003, - PR_EMS_AB_MONITORING_ALERT_DELAY_ERROR = 0x80dc000a, - PR_EMS_AB_MONITORING_ALERT_UNITS = 0x80dd0003, - PR_EMS_AB_MONITORING_ALERT_UNITS_ERROR = 0x80dd000a, - PR_EMS_AB_MONITORING_AVAILABILITY_STYLE = 0x80de0003, - PR_EMS_AB_MONITORING_AVAILABILITY_STYLE_ERROR = 0x80de000a, - PR_EMS_AB_MONITORING_AVAILABILITY_WINDOW = 0x80df0102, - PR_EMS_AB_MONITORING_AVAILABILITY_WINDOW_ERROR = 0x80df000a, - PR_EMS_AB_MONITORING_CACHED_VIA_MAIL_O = 0x80e0000d, - PR_EMS_AB_MONITORING_CACHED_VIA_MAIL_O_ERROR = 0x80e0000a, - PR_EMS_AB_MONITORING_CACHED_VIA_MAIL = 0x80e0101e, - PR_EMS_AB_MONITORING_CACHED_VIA_MAIL_UNICODE = 0x80e0101f, - PR_EMS_AB_MONITORING_CACHED_VIA_RPC_O = 0x80e1000d, - PR_EMS_AB_MONITORING_CACHED_VIA_RPC_O_ERROR = 0x80e1000a, - PR_EMS_AB_MONITORING_CACHED_VIA_RPC = 0x80e1101e, - PR_EMS_AB_MONITORING_CACHED_VIA_RPC_UNICODE = 0x80e1101f, - PR_EMS_AB_MONITORING_ESCALATION_PROCEDURE = 0x80e21102, - PR_EMS_AB_MONITORING_ESCALATION_PROCEDURE_ERROR = 0x80e2000a, - PR_EMS_AB_MONITORING_HOTSITE_POLL_INTERVAL = 0x80e30003, - PR_EMS_AB_MONITORING_HOTSITE_POLL_INTERVAL_ERROR = 0x80e3000a, - PR_EMS_AB_MONITORING_HOTSITE_POLL_UNITS = 0x80e40003, - PR_EMS_AB_MONITORING_HOTSITE_POLL_UNITS_ERROR = 0x80e4000a, - PR_EMS_AB_MONITORING_MAIL_UPDATE_INTERVAL = 0x80e50003, - PR_EMS_AB_MONITORING_MAIL_UPDATE_INTERVAL_ERROR = 0x80e5000a, - PR_EMS_AB_MONITORING_MAIL_UPDATE_UNITS = 0x80e60003, - PR_EMS_AB_MONITORING_MAIL_UPDATE_UNITS_ERROR = 0x80e6000a, - PR_EMS_AB_MONITORING_NORMAL_POLL_INTERVAL = 0x80e70003, - PR_EMS_AB_MONITORING_NORMAL_POLL_INTERVAL_ERROR = 0x80e7000a, - PR_EMS_AB_MONITORING_NORMAL_POLL_UNITS = 0x80e80003, - PR_EMS_AB_MONITORING_NORMAL_POLL_UNITS_ERROR = 0x80e8000a, - PR_EMS_AB_MONITORING_RECIPIENTS_O = 0x80e9000d, - PR_EMS_AB_MONITORING_RECIPIENTS_O_ERROR = 0x80e9000a, - PR_EMS_AB_MONITORING_RECIPIENTS = 0x80e9101e, - PR_EMS_AB_MONITORING_RECIPIENTS_UNICODE = 0x80e9101f, - PR_EMS_AB_MONITORING_RECIPIENTS_NDR_O = 0x80ea000d, - PR_EMS_AB_MONITORING_RECIPIENTS_NDR_O_ERROR = 0x80ea000a, - PR_EMS_AB_MONITORING_RECIPIENTS_NDR = 0x80ea101e, - PR_EMS_AB_MONITORING_RECIPIENTS_NDR_UNICODE = 0x80ea101f, - PR_EMS_AB_MONITORING_RPC_UPDATE_INTERVAL = 0x80eb0003, - PR_EMS_AB_MONITORING_RPC_UPDATE_INTERVAL_ERROR = 0x80eb000a, - PR_EMS_AB_MONITORING_RPC_UPDATE_UNITS = 0x80ec0003, - PR_EMS_AB_MONITORING_RPC_UPDATE_UNITS_ERROR = 0x80ec000a, - PR_EMS_AB_MONITORING_WARNING_DELAY = 0x80ed0003, - PR_EMS_AB_MONITORING_WARNING_DELAY_ERROR = 0x80ed000a, - PR_EMS_AB_MONITORING_WARNING_UNITS = 0x80ee0003, - PR_EMS_AB_MONITORING_WARNING_UNITS_ERROR = 0x80ee000a, - PR_EMS_AB_MTA_LOCAL_CRED = 0x80ef001e, - PR_EMS_AB_MTA_LOCAL_CRED_UNICODE = 0x80ef001f, - PR_EMS_AB_MTA_LOCAL_CRED_ERROR = 0x80ef000a, - PR_EMS_AB_MTA_LOCAL_DESIG = 0x80f0001e, - PR_EMS_AB_MTA_LOCAL_DESIG_UNICODE = 0x80f0001f, - PR_EMS_AB_MTA_LOCAL_DESIG_ERROR = 0x80f0000a, - PR_EMS_AB_N_ADDRESS = 0x80f10102, - PR_EMS_AB_N_ADDRESS_ERROR = 0x80f1000a, - PR_EMS_AB_N_ADDRESS_TYPE = 0x80f20003, - PR_EMS_AB_N_ADDRESS_TYPE_ERROR = 0x80f2000a, - PR_EMS_AB_NT_MACHINE_NAME = 0x80f3001e, - PR_EMS_AB_NT_MACHINE_NAME_UNICODE = 0x80f3001f, - PR_EMS_AB_NT_MACHINE_NAME_ERROR = 0x80f3000a, - PR_EMS_AB_NUM_OF_OPEN_RETRIES = 0x80f40003, - PR_EMS_AB_NUM_OF_OPEN_RETRIES_ERROR = 0x80f4000a, - PR_EMS_AB_NUM_OF_TRANSFER_RETRIES = 0x80f50003, - PR_EMS_AB_NUM_OF_TRANSFER_RETRIES_ERROR = 0x80f5000a, - PR_EMS_AB_OBJECT_CLASS_CATEGORY = 0x80f60003, - PR_EMS_AB_OBJECT_CLASS_CATEGORY_ERROR = 0x80f6000a, - PR_EMS_AB_OBJECT_VERSION = 0x80f70003, - PR_EMS_AB_OBJECT_VERSION_ERROR = 0x80f7000a, - PR_EMS_AB_OFF_LINE_AB_CONTAINERS_O = 0x80f8000d, - PR_EMS_AB_OFF_LINE_AB_CONTAINERS_O_ERROR = 0x80f8000a, - PR_EMS_AB_OFF_LINE_AB_CONTAINERS = 0x80f8101e, - PR_EMS_AB_OFF_LINE_AB_CONTAINERS_UNICODE = 0x80f8101f, - PR_EMS_AB_OFF_LINE_AB_SCHEDULE = 0x80f90102, - PR_EMS_AB_OFF_LINE_AB_SCHEDULE_ERROR = 0x80f9000a, - PR_EMS_AB_OFF_LINE_AB_SERVER_O = 0x80fa000d, - PR_EMS_AB_OFF_LINE_AB_SERVER_O_ERROR = 0x80fa000a, - PR_EMS_AB_OFF_LINE_AB_SERVER = 0x80fa001e, - PR_EMS_AB_OFF_LINE_AB_SERVER_UNICODE = 0x80fa001f, - PR_EMS_AB_OFF_LINE_AB_STYLE = 0x80fb0003, - PR_EMS_AB_OFF_LINE_AB_STYLE_ERROR = 0x80fb000a, - PR_EMS_AB_OID_TYPE = 0x80fc0003, - PR_EMS_AB_OID_TYPE_ERROR = 0x80fc000a, - PR_EMS_AB_OM_OBJECT_CLASS = 0x80fd0102, - PR_EMS_AB_OM_OBJECT_CLASS_ERROR = 0x80fd000a, - PR_EMS_AB_OM_SYNTAX = 0x80fe0003, - PR_EMS_AB_OM_SYNTAX_ERROR = 0x80fe000a, - PR_EMS_AB_OOF_REPLY_TO_ORIGINATOR = 0x80ff000b, - PR_EMS_AB_OOF_REPLY_TO_ORIGINATOR_ERROR = 0x80ff000a, - PR_EMS_AB_OPEN_RETRY_INTERVAL = 0x81000003, - PR_EMS_AB_OPEN_RETRY_INTERVAL_ERROR = 0x8100000a, - PR_EMS_AB_ORGANIZATION_NAME = 0x8101101e, - PR_EMS_AB_ORGANIZATION_NAME_UNICODE = 0x8101101f, - PR_EMS_AB_ORGANIZATION_NAME_ERROR = 0x8101000a, - PR_EMS_AB_ORGANIZATIONAL_UNIT_NAME = 0x8102101e, - PR_EMS_AB_ORGANIZATIONAL_UNIT_NAME_UNICODE = 0x8102101f, - PR_EMS_AB_ORGANIZATIONAL_UNIT_NAME_ERROR = 0x8102000a, - PR_EMS_AB_ORIGINAL_DISPLAY_TABLE = 0x81030102, - PR_EMS_AB_ORIGINAL_DISPLAY_TABLE_ERROR = 0x8103000a, - PR_EMS_AB_ORIGINAL_DISPLAY_TABLE_MSDOS = 0x81040102, - PR_EMS_AB_ORIGINAL_DISPLAY_TABLE_MSDOS_ERROR = 0x8104000a, - PR_EMS_AB_OUTBOUND_SITES_O = 0x8105000d, - PR_EMS_AB_OUTBOUND_SITES_O_ERROR = 0x8105000a, - PR_EMS_AB_OUTBOUND_SITES = 0x8105101e, - PR_EMS_AB_OUTBOUND_SITES_UNICODE = 0x8105101f, - PR_EMS_AB_P_SELECTOR = 0x81060102, - PR_EMS_AB_P_SELECTOR_ERROR = 0x8106000a, - PR_EMS_AB_P_SELECTOR_INBOUND = 0x81070102, - PR_EMS_AB_P_SELECTOR_INBOUND_ERROR = 0x8107000a, - PR_EMS_AB_PER_MSG_DIALOG_DISPLAY_TABLE = 0x81080102, - PR_EMS_AB_PER_MSG_DIALOG_DISPLAY_TABLE_ERROR = 0x8108000a, - PR_EMS_AB_PER_RECIP_DIALOG_DISPLAY_TABLE = 0x81090102, - PR_EMS_AB_PER_RECIP_DIALOG_DISPLAY_TABLE_ERROR = 0x8109000a, - PR_EMS_AB_PERIOD_REP_SYNC_TIMES = 0x810a0102, - PR_EMS_AB_PERIOD_REP_SYNC_TIMES_ERROR = 0x810a000a, - PR_EMS_AB_PERIOD_REPL_STAGGER = 0x810b0003, - PR_EMS_AB_PERIOD_REPL_STAGGER_ERROR = 0x810b000a, - PR_EMS_AB_POSTAL_ADDRESS = 0x810c1102, - PR_EMS_AB_POSTAL_ADDRESS_ERROR = 0x810c000a, - PR_EMS_AB_PREFERRED_DELIVERY_METHOD = 0x810d1003, - PR_EMS_AB_PREFERRED_DELIVERY_METHOD_ERROR = 0x810d000a, - PR_EMS_AB_PRMD = 0x810e001e, - PR_EMS_AB_PRMD_UNICODE = 0x810e001f, - PR_EMS_AB_PRMD_ERROR = 0x810e000a, - PR_EMS_AB_PROXY_GENERATOR_DLL = 0x810f001e, - PR_EMS_AB_PROXY_GENERATOR_DLL_UNICODE = 0x810f001f, - PR_EMS_AB_PROXY_GENERATOR_DLL_ERROR = 0x810f000a, - PR_EMS_AB_PUBLIC_DELEGATES_BL_O = 0x8110000d, - PR_EMS_AB_PUBLIC_DELEGATES_BL_O_ERROR = 0x8110000a, - PR_EMS_AB_PUBLIC_DELEGATES_BL = 0x8110101e, - PR_EMS_AB_PUBLIC_DELEGATES_BL_UNICODE = 0x8110101f, - PR_EMS_AB_QUOTA_NOTIFICATION_SCHEDULE = 0x81110102, - PR_EMS_AB_QUOTA_NOTIFICATION_SCHEDULE_ERROR = 0x8111000a, - PR_EMS_AB_QUOTA_NOTIFICATION_STYLE = 0x81120003, - PR_EMS_AB_QUOTA_NOTIFICATION_STYLE_ERROR = 0x8112000a, - PR_EMS_AB_RANGE_LOWER = 0x81130003, - PR_EMS_AB_RANGE_LOWER_ERROR = 0x8113000a, - PR_EMS_AB_RANGE_UPPER = 0x81140003, - PR_EMS_AB_RANGE_UPPER_ERROR = 0x8114000a, - PR_EMS_AB_RAS_CALLBACK_NUMBER = 0x8115001e, - PR_EMS_AB_RAS_CALLBACK_NUMBER_UNICODE = 0x8115001f, - PR_EMS_AB_RAS_CALLBACK_NUMBER_ERROR = 0x8115000a, - PR_EMS_AB_RAS_PHONE_NUMBER = 0x8116001e, - PR_EMS_AB_RAS_PHONE_NUMBER_UNICODE = 0x8116001f, - PR_EMS_AB_RAS_PHONE_NUMBER_ERROR = 0x8116000a, - PR_EMS_AB_RAS_PHONEBOOK_ENTRY_NAME = 0x8117001e, - PR_EMS_AB_RAS_PHONEBOOK_ENTRY_NAME_UNICODE = 0x8117001f, - PR_EMS_AB_RAS_PHONEBOOK_ENTRY_NAME_ERROR = 0x8117000a, - PR_EMS_AB_RAS_REMOTE_SRVR_NAME = 0x8118001e, - PR_EMS_AB_RAS_REMOTE_SRVR_NAME_UNICODE = 0x8118001f, - PR_EMS_AB_RAS_REMOTE_SRVR_NAME_ERROR = 0x8118000a, - PR_EMS_AB_REGISTERED_ADDRESS = 0x81191102, - PR_EMS_AB_REGISTERED_ADDRESS_ERROR = 0x8119000a, - PR_EMS_AB_REMOTE_BRIDGE_HEAD = 0x811a001e, - PR_EMS_AB_REMOTE_BRIDGE_HEAD_UNICODE = 0x811a001f, - PR_EMS_AB_REMOTE_BRIDGE_HEAD_ERROR = 0x811a000a, - PR_EMS_AB_REMOTE_BRIDGE_HEAD_ADDRESS = 0x811b001e, - PR_EMS_AB_REMOTE_BRIDGE_HEAD_ADDRESS_UNICODE = 0x811b001f, - PR_EMS_AB_REMOTE_BRIDGE_HEAD_ADDRESS_ERROR = 0x811b000a, - PR_EMS_AB_REMOTE_OUT_BH_SERVER_O = 0x811c000d, - PR_EMS_AB_REMOTE_OUT_BH_SERVER_O_ERROR = 0x811c000a, - PR_EMS_AB_REMOTE_OUT_BH_SERVER = 0x811c001e, - PR_EMS_AB_REMOTE_OUT_BH_SERVER_UNICODE = 0x811c001f, - PR_EMS_AB_REMOTE_SITE_O = 0x811d000d, - PR_EMS_AB_REMOTE_SITE_O_ERROR = 0x811d000a, - PR_EMS_AB_REMOTE_SITE = 0x811d001e, - PR_EMS_AB_REMOTE_SITE_UNICODE = 0x811d001f, - PR_EMS_AB_REPLICATION_SENSITIVITY = 0x811e0003, - PR_EMS_AB_REPLICATION_SENSITIVITY_ERROR = 0x811e000a, - PR_EMS_AB_REPLICATION_STAGGER = 0x811f0003, - PR_EMS_AB_REPLICATION_STAGGER_ERROR = 0x811f000a, - PR_EMS_AB_REPORT_TO_ORIGINATOR = 0x8120000b, - PR_EMS_AB_REPORT_TO_ORIGINATOR_ERROR = 0x8120000a, - PR_EMS_AB_REPORT_TO_OWNER = 0x8121000b, - PR_EMS_AB_REPORT_TO_OWNER_ERROR = 0x8121000a, - PR_EMS_AB_REQ_SEQ = 0x81220003, - PR_EMS_AB_REQ_SEQ_ERROR = 0x8122000a, - PR_EMS_AB_RESPONSIBLE_LOCAL_DXA_O = 0x8123000d, - PR_EMS_AB_RESPONSIBLE_LOCAL_DXA_O_ERROR = 0x8123000a, - PR_EMS_AB_RESPONSIBLE_LOCAL_DXA = 0x8123001e, - PR_EMS_AB_RESPONSIBLE_LOCAL_DXA_UNICODE = 0x8123001f, - PR_EMS_AB_RID_SERVER_O = 0x8124000d, - PR_EMS_AB_RID_SERVER_O_ERROR = 0x8124000a, - PR_EMS_AB_RID_SERVER = 0x8124001e, - PR_EMS_AB_RID_SERVER_UNICODE = 0x8124001f, - PR_EMS_AB_ROLE_OCCUPANT_O = 0x8125000d, - PR_EMS_AB_ROLE_OCCUPANT_O_ERROR = 0x8125000a, - PR_EMS_AB_ROLE_OCCUPANT = 0x8125101e, - PR_EMS_AB_ROLE_OCCUPANT_UNICODE = 0x8125101f, - PR_EMS_AB_ROUTING_LIST = 0x8126101e, - PR_EMS_AB_ROUTING_LIST_UNICODE = 0x8126101f, - PR_EMS_AB_ROUTING_LIST_ERROR = 0x8126000a, - PR_EMS_AB_RTS_CHECKPOINT_SIZE = 0x81270003, - PR_EMS_AB_RTS_CHECKPOINT_SIZE_ERROR = 0x8127000a, - PR_EMS_AB_RTS_RECOVERY_TIMEOUT = 0x81280003, - PR_EMS_AB_RTS_RECOVERY_TIMEOUT_ERROR = 0x8128000a, - PR_EMS_AB_RTS_WINDOW_SIZE = 0x81290003, - PR_EMS_AB_RTS_WINDOW_SIZE_ERROR = 0x8129000a, - PR_EMS_AB_RUNS_ON_O = 0x812a000d, - PR_EMS_AB_RUNS_ON_O_ERROR = 0x812a000a, - PR_EMS_AB_RUNS_ON = 0x812a101e, - PR_EMS_AB_RUNS_ON_UNICODE = 0x812a101f, - PR_EMS_AB_S_SELECTOR = 0x812b0102, - PR_EMS_AB_S_SELECTOR_ERROR = 0x812b000a, - PR_EMS_AB_S_SELECTOR_INBOUND = 0x812c0102, - PR_EMS_AB_S_SELECTOR_INBOUND_ERROR = 0x812c000a, - PR_EMS_AB_SEARCH_FLAGS = 0x812d0003, - PR_EMS_AB_SEARCH_FLAGS_ERROR = 0x812d000a, - PR_EMS_AB_SEARCH_GUIDE = 0x812e1102, - PR_EMS_AB_SEARCH_GUIDE_ERROR = 0x812e000a, - PR_EMS_AB_SEE_ALSO_O = 0x812f000d, - PR_EMS_AB_SEE_ALSO_O_ERROR = 0x812f000a, - PR_EMS_AB_SEE_ALSO = 0x812f101e, - PR_EMS_AB_SEE_ALSO_UNICODE = 0x812f101f, - PR_EMS_AB_SERIAL_NUMBER = 0x8130101e, - PR_EMS_AB_SERIAL_NUMBER_UNICODE = 0x8130101f, - PR_EMS_AB_SERIAL_NUMBER_ERROR = 0x8130000a, - PR_EMS_AB_SERVICE_ACTION_FIRST = 0x81310003, - PR_EMS_AB_SERVICE_ACTION_FIRST_ERROR = 0x8131000a, - PR_EMS_AB_SERVICE_ACTION_OTHER = 0x81320003, - PR_EMS_AB_SERVICE_ACTION_OTHER_ERROR = 0x8132000a, - PR_EMS_AB_SERVICE_ACTION_SECOND = 0x81330003, - PR_EMS_AB_SERVICE_ACTION_SECOND_ERROR = 0x8133000a, - PR_EMS_AB_SERVICE_RESTART_DELAY = 0x81340003, - PR_EMS_AB_SERVICE_RESTART_DELAY_ERROR = 0x8134000a, - PR_EMS_AB_SERVICE_RESTART_MESSAGE = 0x8135001e, - PR_EMS_AB_SERVICE_RESTART_MESSAGE_UNICODE = 0x8135001f, - PR_EMS_AB_SERVICE_RESTART_MESSAGE_ERROR = 0x8135000a, - PR_EMS_AB_SESSION_DISCONNECT_TIMER = 0x81360003, - PR_EMS_AB_SESSION_DISCONNECT_TIMER_ERROR = 0x8136000a, - PR_EMS_AB_SITE_AFFINITY = 0x8137101e, - PR_EMS_AB_SITE_AFFINITY_UNICODE = 0x8137101f, - PR_EMS_AB_SITE_AFFINITY_ERROR = 0x8137000a, - PR_EMS_AB_SITE_PROXY_SPACE = 0x8138101e, - PR_EMS_AB_SITE_PROXY_SPACE_UNICODE = 0x8138101f, - PR_EMS_AB_SITE_PROXY_SPACE_ERROR = 0x8138000a, - PR_EMS_AB_SPACE_LAST_COMPUTED = 0x81390040, - PR_EMS_AB_SPACE_LAST_COMPUTED_ERROR = 0x8139000a, - PR_EMS_AB_STREET_ADDRESS = 0x813a001e, - PR_EMS_AB_STREET_ADDRESS_UNICODE = 0x813a001f, - PR_EMS_AB_STREET_ADDRESS_ERROR = 0x813a000a, - PR_EMS_AB_SUB_REFS_O = 0x813b000d, - PR_EMS_AB_SUB_REFS_O_ERROR = 0x813b000a, - PR_EMS_AB_SUB_REFS = 0x813b101e, - PR_EMS_AB_SUB_REFS_UNICODE = 0x813b101f, - PR_EMS_AB_SUBMISSION_CONT_LENGTH = 0x813c0003, - PR_EMS_AB_SUBMISSION_CONT_LENGTH_ERROR = 0x813c000a, - PR_EMS_AB_SUPPORTED_APPLICATION_CONTEXT = 0x813d1102, - PR_EMS_AB_SUPPORTED_APPLICATION_CONTEXT_ERROR = 0x813d000a, - PR_EMS_AB_SUPPORTING_STACK_O = 0x813e000d, - PR_EMS_AB_SUPPORTING_STACK_O_ERROR = 0x813e000a, - PR_EMS_AB_SUPPORTING_STACK = 0x813e101e, - PR_EMS_AB_SUPPORTING_STACK_UNICODE = 0x813e101f, - PR_EMS_AB_SUPPORTING_STACK_BL_O = 0x813f000d, - PR_EMS_AB_SUPPORTING_STACK_BL_O_ERROR = 0x813f000a, - PR_EMS_AB_SUPPORTING_STACK_BL = 0x813f101e, - PR_EMS_AB_SUPPORTING_STACK_BL_UNICODE = 0x813f101f, - PR_EMS_AB_T_SELECTOR = 0x81400102, - PR_EMS_AB_T_SELECTOR_ERROR = 0x8140000a, - PR_EMS_AB_T_SELECTOR_INBOUND = 0x81410102, - PR_EMS_AB_T_SELECTOR_INBOUND_ERROR = 0x8141000a, - PR_EMS_AB_TARGET_MTAS = 0x8142101e, - PR_EMS_AB_TARGET_MTAS_UNICODE = 0x8142101f, - PR_EMS_AB_TARGET_MTAS_ERROR = 0x8142000a, - PR_EMS_AB_TELETEX_TERMINAL_IDENTIFIER = 0x81431102, - PR_EMS_AB_TELETEX_TERMINAL_IDENTIFIER_ERROR = 0x8143000a, - PR_EMS_AB_TEMP_ASSOC_THRESHOLD = 0x81440003, - PR_EMS_AB_TEMP_ASSOC_THRESHOLD_ERROR = 0x8144000a, - PR_EMS_AB_TOMBSTONE_LIFETIME = 0x81450003, - PR_EMS_AB_TOMBSTONE_LIFETIME_ERROR = 0x8145000a, - PR_EMS_AB_TRACKING_LOG_PATH_NAME = 0x8146001e, - PR_EMS_AB_TRACKING_LOG_PATH_NAME_UNICODE = 0x8146001f, - PR_EMS_AB_TRACKING_LOG_PATH_NAME_ERROR = 0x8146000a, - PR_EMS_AB_TRANS_RETRY_MINS = 0x81470003, - PR_EMS_AB_TRANS_RETRY_MINS_ERROR = 0x8147000a, - PR_EMS_AB_TRANS_TIMEOUT_MINS = 0x81480003, - PR_EMS_AB_TRANS_TIMEOUT_MINS_ERROR = 0x8148000a, - PR_EMS_AB_TRANSFER_RETRY_INTERVAL = 0x81490003, - PR_EMS_AB_TRANSFER_RETRY_INTERVAL_ERROR = 0x8149000a, - PR_EMS_AB_TRANSFER_TIMEOUT_NON_URGENT = 0x814a0003, - PR_EMS_AB_TRANSFER_TIMEOUT_NON_URGENT_ERROR = 0x814a000a, - PR_EMS_AB_TRANSFER_TIMEOUT_NORMAL = 0x814b0003, - PR_EMS_AB_TRANSFER_TIMEOUT_NORMAL_ERROR = 0x814b000a, - PR_EMS_AB_TRANSFER_TIMEOUT_URGENT = 0x814c0003, - PR_EMS_AB_TRANSFER_TIMEOUT_URGENT_ERROR = 0x814c000a, - PR_EMS_AB_TRANSLATION_TABLE_USED = 0x814d0003, - PR_EMS_AB_TRANSLATION_TABLE_USED_ERROR = 0x814d000a, - PR_EMS_AB_TRANSPORT_EXPEDITED_DATA = 0x814e000b, - PR_EMS_AB_TRANSPORT_EXPEDITED_DATA_ERROR = 0x814e000a, - PR_EMS_AB_TRUST_LEVEL = 0x814f0003, - PR_EMS_AB_TRUST_LEVEL_ERROR = 0x814f000a, - PR_EMS_AB_TURN_REQUEST_THRESHOLD = 0x81500003, - PR_EMS_AB_TURN_REQUEST_THRESHOLD_ERROR = 0x8150000a, - PR_EMS_AB_TWO_WAY_ALTERNATE_FACILITY = 0x8151000b, - PR_EMS_AB_TWO_WAY_ALTERNATE_FACILITY_ERROR = 0x8151000a, - PR_EMS_AB_UNAUTH_ORIG_BL_O = 0x8152000d, - PR_EMS_AB_UNAUTH_ORIG_BL_O_ERROR = 0x8152000a, - PR_EMS_AB_UNAUTH_ORIG_BL = 0x8152101e, - PR_EMS_AB_UNAUTH_ORIG_BL_UNICODE = 0x8152101f, - PR_EMS_AB_USER_PASSWORD = 0x81531102, - PR_EMS_AB_USER_PASSWORD_ERROR = 0x8153000a, - PR_EMS_AB_USN_CREATED = 0x81540003, - PR_EMS_AB_USN_CREATED_ERROR = 0x8154000a, - PR_EMS_AB_USN_DSA_LAST_OBJ_REMOVED = 0x81550003, - PR_EMS_AB_USN_DSA_LAST_OBJ_REMOVED_ERROR = 0x8155000a, - PR_EMS_AB_USN_LAST_OBJ_REM = 0x81560003, - PR_EMS_AB_USN_LAST_OBJ_REM_ERROR = 0x8156000a, - PR_EMS_AB_USN_SOURCE = 0x81570003, - PR_EMS_AB_USN_SOURCE_ERROR = 0x8157000a, - PR_EMS_AB_X121_ADDRESS = 0x8158101e, - PR_EMS_AB_X121_ADDRESS_UNICODE = 0x8158101f, - PR_EMS_AB_X121_ADDRESS_ERROR = 0x8158000a, - PR_EMS_AB_X25_CALL_USER_DATA_INCOMING = 0x81590102, - PR_EMS_AB_X25_CALL_USER_DATA_INCOMING_ERROR = 0x8159000a, - PR_EMS_AB_X25_CALL_USER_DATA_OUTGOING = 0x815a0102, - PR_EMS_AB_X25_CALL_USER_DATA_OUTGOING_ERROR = 0x815a000a, - PR_EMS_AB_X25_FACILITIES_DATA_INCOMING = 0x815b0102, - PR_EMS_AB_X25_FACILITIES_DATA_INCOMING_ERROR = 0x815b000a, - PR_EMS_AB_X25_FACILITIES_DATA_OUTGOING = 0x815c0102, - PR_EMS_AB_X25_FACILITIES_DATA_OUTGOING_ERROR = 0x815c000a, - PR_EMS_AB_X25_LEASED_LINE_PORT = 0x815d0102, - PR_EMS_AB_X25_LEASED_LINE_PORT_ERROR = 0x815d000a, - PR_EMS_AB_X25_LEASED_OR_SWITCHED = 0x815e000b, - PR_EMS_AB_X25_LEASED_OR_SWITCHED_ERROR = 0x815e000a, - PR_EMS_AB_X25_REMOTE_MTA_PHONE = 0x815f001e, - PR_EMS_AB_X25_REMOTE_MTA_PHONE_UNICODE = 0x815f001f, - PR_EMS_AB_X25_REMOTE_MTA_PHONE_ERROR = 0x815f000a, - PR_EMS_AB_X400_ATTACHMENT_TYPE = 0x81600102, - PR_EMS_AB_X400_ATTACHMENT_TYPE_ERROR = 0x8160000a, - PR_EMS_AB_X400_SELECTOR_SYNTAX = 0x81610003, - PR_EMS_AB_X400_SELECTOR_SYNTAX_ERROR = 0x8161000a, - PR_EMS_AB_X500_ACCESS_CONTROL_LIST = 0x81620102, - PR_EMS_AB_X500_ACCESS_CONTROL_LIST_ERROR = 0x8162000a, - PR_EMS_AB_XMIT_TIMEOUT_NON_URGENT = 0x81630003, - PR_EMS_AB_XMIT_TIMEOUT_NON_URGENT_ERROR = 0x8163000a, - PR_EMS_AB_XMIT_TIMEOUT_NORMAL = 0x81640003, - PR_EMS_AB_XMIT_TIMEOUT_NORMAL_ERROR = 0x8164000a, - PR_EMS_AB_XMIT_TIMEOUT_URGENT = 0x81650003, - PR_EMS_AB_XMIT_TIMEOUT_URGENT_ERROR = 0x8165000a, - PR_EMS_AB_SITE_FOLDER_GUID = 0x81660102, - PR_EMS_AB_SITE_FOLDER_GUID_ERROR = 0x8166000a, - PR_EMS_AB_SITE_FOLDER_SERVER_O = 0x8167000d, - PR_EMS_AB_SITE_FOLDER_SERVER_O_ERROR = 0x8167000a, - PR_EMS_AB_SITE_FOLDER_SERVER = 0x8167001e, - PR_EMS_AB_SITE_FOLDER_SERVER_UNICODE = 0x8167001f, - PR_EMS_AB_REPLICATION_MAIL_MSG_SIZE = 0x81680003, - PR_EMS_AB_REPLICATION_MAIL_MSG_SIZE_ERROR = 0x8168000a, - PR_EMS_AB_MAXIMUM_OBJECT_ID = 0x81690102, - PR_EMS_AB_MAXIMUM_OBJECT_ID_ERROR = 0x8169000a, - PR_EMS_AB_NETWORK_ADDRESS = 0x8170101e, - PR_EMS_AB_NETWORK_ADDRESS_UNICODE = 0x8170101f, - PR_EMS_AB_NETWORK_ADDRESS_ERROR = 0x8170000a, - PR_EMS_AB_LDAP_DISPLAY_NAME = 0x8171101e, - PR_EMS_AB_LDAP_DISPLAY_NAME_UNICODE = 0x8171101f, - PR_EMS_AB_LDAP_DISPLAY_NAME_ERROR = 0x8171000a, - PR_EMS_AB_SCHEMA_FLAGS = 0x81730003, - PR_EMS_AB_SCHEMA_FLAGS_ERROR = 0x8173000a, - PR_EMS_AB_BRIDGEHEAD_SERVERS_O = 0x8174000d, - PR_EMS_AB_BRIDGEHEAD_SERVERS_O_ERROR = 0x8174000a, - PR_EMS_AB_BRIDGEHEAD_SERVERS = 0x8174101e, - PR_EMS_AB_BRIDGEHEAD_SERVERS_UNICODE = 0x8174101f, - PR_EMS_AB_WWW_HOME_PAGE = 0x8175001e, - PR_EMS_AB_WWW_HOME_PAGE_UNICODE = 0x8175001f, - PR_EMS_AB_WWW_HOME_PAGE_ERROR = 0x8175000a, - PR_EMS_AB_NNTP_CONTENT_FORMAT = 0x8176001e, - PR_EMS_AB_NNTP_CONTENT_FORMAT_UNICODE = 0x8176001f, - PR_EMS_AB_NNTP_CONTENT_FORMAT_ERROR = 0x8176000a, - PR_EMS_AB_POP_CONTENT_FORMAT = 0x8177001e, - PR_EMS_AB_POP_CONTENT_FORMAT_UNICODE = 0x8177001f, - PR_EMS_AB_POP_CONTENT_FORMAT_ERROR = 0x8177000a, - PR_EMS_AB_LANGUAGE = 0x81780003, - PR_EMS_AB_LANGUAGE_ERROR = 0x8178000a, - PR_EMS_AB_POP_CHARACTER_SET = 0x8179001e, - PR_EMS_AB_POP_CHARACTER_SET_UNICODE = 0x8179001f, - PR_EMS_AB_POP_CHARACTER_SET_ERROR = 0x8179000a, - PR_EMS_AB_USN_INTERSITE = 0x817a0003, - PR_EMS_AB_USN_INTERSITE_ERROR = 0x817a000a, - PR_EMS_AB_SUB_SITE = 0x817b001e, - PR_EMS_AB_SUB_SITE_UNICODE = 0x817b001f, - PR_EMS_AB_SUB_SITE_ERROR = 0x817b000a, - PR_EMS_AB_SCHEMA_VERSION = 0x817c1003, - PR_EMS_AB_SCHEMA_VERSION_ERROR = 0x817c000a, - PR_EMS_AB_NNTP_CHARACTER_SET = 0x817d001e, - PR_EMS_AB_NNTP_CHARACTER_SET_UNICODE = 0x817d001f, - PR_EMS_AB_NNTP_CHARACTER_SET_ERROR = 0x817d000a, - PR_EMS_AB_USE_SERVER_VALUES = 0x817e000b, - PR_EMS_AB_USE_SERVER_VALUES_ERROR = 0x817e000a, - PR_EMS_AB_ENABLED_PROTOCOLS = 0x817f0003, - PR_EMS_AB_ENABLED_PROTOCOLS_ERROR = 0x817f000a, - PR_EMS_AB_CONNECTION_LIST_FILTER = 0x81800102, - PR_EMS_AB_CONNECTION_LIST_FILTER_ERROR = 0x8180000a, - PR_EMS_AB_AVAILABLE_AUTHORIZATION_PACKAGES = 0x8181101e, - PR_EMS_AB_AVAILABLE_AUTHORIZATION_PACKAGES_UNICODE = 0x8181101f, - PR_EMS_AB_AVAILABLE_AUTHORIZATION_PACKAGES_ERROR = 0x8181000a, - PR_EMS_AB_CHARACTER_SET_LIST = 0x8182101e, - PR_EMS_AB_CHARACTER_SET_LIST_UNICODE = 0x8182101f, - PR_EMS_AB_CHARACTER_SET_LIST_ERROR = 0x8182000a, - PR_EMS_AB_USE_SITE_VALUES = 0x8183000b, - PR_EMS_AB_USE_SITE_VALUES_ERROR = 0x8183000a, - PR_EMS_AB_ENABLED_AUTHORIZATION_PACKAGES = 0x8184101e, - PR_EMS_AB_ENABLED_AUTHORIZATION_PACKAGES_UNICODE = 0x8184101f, - PR_EMS_AB_ENABLED_AUTHORIZATION_PACKAGES_ERROR = 0x8184000a, - PR_EMS_AB_CHARACTER_SET = 0x8185001e, - PR_EMS_AB_CHARACTER_SET_UNICODE = 0x8185001f, - PR_EMS_AB_CHARACTER_SET_ERROR = 0x8185000a, - PR_EMS_AB_CONTENT_TYPE = 0x81860003, - PR_EMS_AB_CONTENT_TYPE_ERROR = 0x8186000a, - PR_EMS_AB_ANONYMOUS_ACCESS = 0x8187000b, - PR_EMS_AB_ANONYMOUS_ACCESS_ERROR = 0x8187000a, - PR_EMS_AB_CONTROL_MSG_FOLDER_ID = 0x81880102, - PR_EMS_AB_CONTROL_MSG_FOLDER_ID_ERROR = 0x8188000a, - PR_EMS_AB_USENET_SITE_NAME = 0x8189001e, - PR_EMS_AB_USENET_SITE_NAME_UNICODE = 0x8189001f, - PR_EMS_AB_USENET_SITE_NAME_ERROR = 0x8189000a, - PR_EMS_AB_CONTROL_MSG_RULES = 0x818a0102, - PR_EMS_AB_CONTROL_MSG_RULES_ERROR = 0x818a000a, - PR_EMS_AB_AVAILABLE_DISTRIBUTIONS = 0x818b001e, - PR_EMS_AB_AVAILABLE_DISTRIBUTIONS_UNICODE = 0x818b001f, - PR_EMS_AB_AVAILABLE_DISTRIBUTIONS_ERROR = 0x818b000a, - PR_EMS_AB_OUTBOUND_HOST = 0x818d0102, - PR_EMS_AB_OUTBOUND_HOST_ERROR = 0x818d000a, - PR_EMS_AB_INBOUND_HOST = 0x818e101e, - PR_EMS_AB_INBOUND_HOST_UNICODE = 0x818e101f, - PR_EMS_AB_INBOUND_HOST_ERROR = 0x818e000a, - PR_EMS_AB_OUTGOING_MSG_SIZE_LIMIT = 0x818f0003, - PR_EMS_AB_OUTGOING_MSG_SIZE_LIMIT_ERROR = 0x818f000a, - PR_EMS_AB_INCOMING_MSG_SIZE_LIMIT = 0x81900003, - PR_EMS_AB_INCOMING_MSG_SIZE_LIMIT_ERROR = 0x8190000a, - PR_EMS_AB_SEND_TNEF = 0x8191000b, - PR_EMS_AB_SEND_TNEF_ERROR = 0x8191000a, - PR_EMS_AB_AUTHORIZED_PASSWORD_CONFIRM = 0x81920102, - PR_EMS_AB_AUTHORIZED_PASSWORD_CONFIRM_ERROR = 0x8192000a, - PR_EMS_AB_INBOUND_NEWSFEED = 0x8193001e, - PR_EMS_AB_INBOUND_NEWSFEED_UNICODE = 0x8193001f, - PR_EMS_AB_INBOUND_NEWSFEED_ERROR = 0x8193000a, - PR_EMS_AB_NEWSFEED_TYPE = 0x81940003, - PR_EMS_AB_NEWSFEED_TYPE_ERROR = 0x8194000a, - PR_EMS_AB_OUTBOUND_NEWSFEED = 0x8195001e, - PR_EMS_AB_OUTBOUND_NEWSFEED_UNICODE = 0x8195001f, - PR_EMS_AB_OUTBOUND_NEWSFEED_ERROR = 0x8195000a, - PR_EMS_AB_NEWSGROUP_LIST = 0x81960102, - PR_EMS_AB_NEWSGROUP_LIST_ERROR = 0x8196000a, - PR_EMS_AB_NNTP_DISTRIBUTIONS = 0x8197101e, - PR_EMS_AB_NNTP_DISTRIBUTIONS_UNICODE = 0x8197101f, - PR_EMS_AB_NNTP_DISTRIBUTIONS_ERROR = 0x8197000a, - PR_EMS_AB_NEWSGROUP = 0x8198001e, - PR_EMS_AB_NEWSGROUP_UNICODE = 0x8198001f, - PR_EMS_AB_NEWSGROUP_ERROR = 0x8198000a, - PR_EMS_AB_MODERATOR = 0x8199001e, - PR_EMS_AB_MODERATOR_UNICODE = 0x8199001f, - PR_EMS_AB_MODERATOR_ERROR = 0x8199000a, - PR_EMS_AB_AUTHENTICATION_TO_USE = 0x819a001e, - PR_EMS_AB_AUTHENTICATION_TO_USE_UNICODE = 0x819a001f, - PR_EMS_AB_AUTHENTICATION_TO_USE_ERROR = 0x819a000a, - PR_EMS_AB_HTTP_PUB_GAL = 0x819b000b, - PR_EMS_AB_HTTP_PUB_GAL_ERROR = 0x819b000a, - PR_EMS_AB_HTTP_PUB_GAL_LIMIT = 0x819c0003, - PR_EMS_AB_HTTP_PUB_GAL_LIMIT_ERROR = 0x819c000a, - PR_EMS_AB_HTTP_PUB_PF = 0x819e1102, - PR_EMS_AB_HTTP_PUB_PF_ERROR = 0x819e000a, - PR_EMS_AB_X500_RDN = 0x81a1001e, - PR_EMS_AB_X500_RDN_UNICODE = 0x81a1001f, - PR_EMS_AB_X500_RDN_ERROR = 0x81a1000a, - PR_EMS_AB_X500_NC = 0x81a2001e, - PR_EMS_AB_X500_NC_UNICODE = 0x81a2001f, - PR_EMS_AB_X500_NC_ERROR = 0x81a2000a, - PR_EMS_AB_REFERRAL_LIST = 0x81a3101e, - PR_EMS_AB_REFERRAL_LIST_UNICODE = 0x81a3101f, - PR_EMS_AB_REFERRAL_LIST_ERROR = 0x81a3000a, - PR_EMS_AB_NNTP_DISTRIBUTIONS_FLAG = 0x81a4000b, - PR_EMS_AB_NNTP_DISTRIBUTIONS_FLAG_ERROR = 0x81a4000a, - PR_EMS_AB_ASSOC_PROTOCOL_CFG_NNTP_O = 0x81a5000d, - PR_EMS_AB_ASSOC_PROTOCOL_CFG_NNTP_O_ERROR = 0x81a5000a, - PR_EMS_AB_ASSOC_PROTOCOL_CFG_NNTP = 0x81a5001e, - PR_EMS_AB_ASSOC_PROTOCOL_CFG_NNTP_UNICODE = 0x81a5001f, - PR_EMS_AB_NNTP_NEWSFEEDS_O = 0x81a6000d, - PR_EMS_AB_NNTP_NEWSFEEDS_O_ERROR = 0x81a6000a, - PR_EMS_AB_NNTP_NEWSFEEDS = 0x81a6101e, - PR_EMS_AB_NNTP_NEWSFEEDS_UNICODE = 0x81a6101f, - PR_EMS_AB_ENABLED_PROTOCOL_CFG = 0x81a8000b, - PR_EMS_AB_ENABLED_PROTOCOL_CFG_ERROR = 0x81a8000a, - PR_EMS_AB_HTTP_PUB_AB_ATTRIBUTES = 0x81a9101e, - PR_EMS_AB_HTTP_PUB_AB_ATTRIBUTES_UNICODE = 0x81a9101f, - PR_EMS_AB_HTTP_PUB_AB_ATTRIBUTES_ERROR = 0x81a9000a, - PR_EMS_AB_HTTP_SERVERS = 0x81ab101e, - PR_EMS_AB_HTTP_SERVERS_UNICODE = 0x81ab101f, - PR_EMS_AB_HTTP_SERVERS_ERROR = 0x81ab000a, - PR_EMS_AB_MODERATED = 0x81ac000b, - PR_EMS_AB_MODERATED_ERROR = 0x81ac000a, - PR_EMS_AB_RAS_ACCOUNT = 0x81ad001e, - PR_EMS_AB_RAS_ACCOUNT_UNICODE = 0x81ad001f, - PR_EMS_AB_RAS_ACCOUNT_ERROR = 0x81ad000a, - PR_EMS_AB_RAS_PASSWORD = 0x81ae0102, - PR_EMS_AB_RAS_PASSWORD_ERROR = 0x81ae000a, - PR_EMS_AB_INCOMING_PASSWORD = 0x81af0102, - PR_EMS_AB_INCOMING_PASSWORD_ERROR = 0x81af000a, - PR_EMS_AB_OUTBOUND_HOST_TYPE = 0x81b0000b, - PR_EMS_AB_OUTBOUND_HOST_TYPE_ERROR = 0x81b0000a, - PR_EMS_AB_PROXY_GENERATION_ENABLED = 0x81b1000b, - PR_EMS_AB_PROXY_GENERATION_ENABLED_ERROR = 0x81b1000a, - PR_EMS_AB_ROOT_NEWSGROUPS_FOLDER_ID = 0x81b20102, - PR_EMS_AB_ROOT_NEWSGROUPS_FOLDER_ID_ERROR = 0x81b2000a, - PR_EMS_AB_CONNECTION_TYPE = 0x81b3000b, - PR_EMS_AB_CONNECTION_TYPE_ERROR = 0x81b3000a, - PR_EMS_AB_CONNECTION_LIST_FILTER_TYPE = 0x81b40003, - PR_EMS_AB_CONNECTION_LIST_FILTER_TYPE_ERROR = 0x81b4000a, - PR_EMS_AB_PORT_NUMBER = 0x81b50003, - PR_EMS_AB_PORT_NUMBER_ERROR = 0x81b5000a, - PR_EMS_AB_PROTOCOL_SETTINGS = 0x81b6101e, - PR_EMS_AB_PROTOCOL_SETTINGS_UNICODE = 0x81b6101f, - PR_EMS_AB_PROTOCOL_SETTINGS_ERROR = 0x81b6000a, - PR_EMS_AB_GROUP_BY_ATTR_1 = 0x81b7001e, - PR_EMS_AB_GROUP_BY_ATTR_1_UNICODE = 0x81b7001f, - PR_EMS_AB_GROUP_BY_ATTR_1_ERROR = 0x81b7000a, - PR_EMS_AB_GROUP_BY_ATTR_2 = 0x81b8001e, - PR_EMS_AB_GROUP_BY_ATTR_2_UNICODE = 0x81b8001f, - PR_EMS_AB_GROUP_BY_ATTR_2_ERROR = 0x81b8000a, - PR_EMS_AB_GROUP_BY_ATTR_3 = 0x81b9001e, - PR_EMS_AB_GROUP_BY_ATTR_3_UNICODE = 0x81b9001f, - PR_EMS_AB_GROUP_BY_ATTR_3_ERROR = 0x81b9000a, - PR_EMS_AB_GROUP_BY_ATTR_4 = 0x81ba001e, - PR_EMS_AB_GROUP_BY_ATTR_4_UNICODE = 0x81ba001f, - PR_EMS_AB_GROUP_BY_ATTR_4_ERROR = 0x81ba000a, - PR_EMS_AB_VIEW_SITE = 0x81be001e, - PR_EMS_AB_VIEW_SITE_UNICODE = 0x81be001f, - PR_EMS_AB_VIEW_SITE_ERROR = 0x81be000a, - PR_EMS_AB_VIEW_CONTAINER_1 = 0x81bf001e, - PR_EMS_AB_VIEW_CONTAINER_1_UNICODE = 0x81bf001f, - PR_EMS_AB_VIEW_CONTAINER_1_ERROR = 0x81bf000a, - PR_EMS_AB_VIEW_CONTAINER_2 = 0x81c0001e, - PR_EMS_AB_VIEW_CONTAINER_2_UNICODE = 0x81c0001f, - PR_EMS_AB_VIEW_CONTAINER_2_ERROR = 0x81c0000a, - PR_EMS_AB_VIEW_CONTAINER_3 = 0x81c1001e, - PR_EMS_AB_VIEW_CONTAINER_3_UNICODE = 0x81c1001f, - PR_EMS_AB_VIEW_CONTAINER_3_ERROR = 0x81c1000a, - PR_EMS_AB_PROMO_EXPIRATION = 0x81c20040, - PR_EMS_AB_PROMO_EXPIRATION_ERROR = 0x81c2000a, - PR_EMS_AB_DISABLED_GATEWAY_PROXY = 0x81c3101e, - PR_EMS_AB_DISABLED_GATEWAY_PROXY_UNICODE = 0x81c3101f, - PR_EMS_AB_DISABLED_GATEWAY_PROXY_ERROR = 0x81c3000a, - PR_EMS_AB_COMPROMISED_KEY_LIST = 0x81c40102, - PR_EMS_AB_COMPROMISED_KEY_LIST_ERROR = 0x81c4000a, - PR_EMS_AB_INSADMIN_O = 0x81c5000d, - PR_EMS_AB_INSADMIN_O_ERROR = 0x81c5000a, - PR_EMS_AB_INSADMIN = 0x81c5001e, - PR_EMS_AB_INSADMIN_UNICODE = 0x81c5001f, - PR_EMS_AB_OVERRIDE_NNTP_CONTENT_FORMAT = 0x81c6000b, - PR_EMS_AB_OVERRIDE_NNTP_CONTENT_FORMAT_ERROR = 0x81c6000a, - PR_EMS_AB_OBJ_VIEW_CONTAINERS_O = 0x81c7000d, - PR_EMS_AB_OBJ_VIEW_CONTAINERS_O_ERROR = 0x81c7000a, - PR_EMS_AB_OBJ_VIEW_CONTAINERS = 0x81c7101e, - PR_EMS_AB_OBJ_VIEW_CONTAINERS_UNICODE = 0x81c7101f, - PR_EMS_AB_VIEW_FLAGS = 0x8c180003, - PR_EMS_AB_VIEW_FLAGS_ERROR = 0x8c18000a, - PR_EMS_AB_GROUP_BY_ATTR_VALUE_STR = 0x8c19001e, - PR_EMS_AB_GROUP_BY_ATTR_VALUE_STR_UNICODE = 0x8c19001f, - PR_EMS_AB_GROUP_BY_ATTR_VALUE_STR_ERROR = 0x8c19000a, - PR_EMS_AB_GROUP_BY_ATTR_VALUE_DN_O = 0x8c1a000d, - PR_EMS_AB_GROUP_BY_ATTR_VALUE_DN_O_ERROR = 0x8c1a000a, - PR_EMS_AB_GROUP_BY_ATTR_VALUE_DN = 0x8c1a001e, - PR_EMS_AB_GROUP_BY_ATTR_VALUE_DN_UNICODE = 0x8c1a001f, - PR_EMS_AB_VIEW_DEFINITION = 0x8c1b1102, - PR_EMS_AB_VIEW_DEFINITION_ERROR = 0x8c1b000a, - PR_EMS_AB_MIME_TYPES = 0x8c1c0102, - PR_EMS_AB_MIME_TYPES_ERROR = 0x8c1c000a, - PR_EMS_AB_LDAP_SEARCH_CFG = 0x8c1d0003, - PR_EMS_AB_LDAP_SEARCH_CFG_ERROR = 0x8c1d000a, - PR_EMS_AB_INBOUND_DN_O = 0x8c1e000d, - PR_EMS_AB_INBOUND_DN_O_ERROR = 0x8c1e000a, - PR_EMS_AB_INBOUND_DN = 0x8c1e001e, - PR_EMS_AB_INBOUND_DN_UNICODE = 0x8c1e001f, - PR_EMS_AB_INBOUND_NEWSFEED_TYPE = 0x8c1f000b, - PR_EMS_AB_INBOUND_NEWSFEED_TYPE_ERROR = 0x8c1f000a, - PR_EMS_AB_INBOUND_ACCEPT_ALL = 0x8c20000b, - PR_EMS_AB_INBOUND_ACCEPT_ALL_ERROR = 0x8c20000a, - PR_EMS_AB_ENABLED = 0x8c21000b, - PR_EMS_AB_ENABLED_ERROR = 0x8c21000a, - PR_EMS_AB_PRESERVE_INTERNET_CONTENT = 0x8c22000b, - PR_EMS_AB_PRESERVE_INTERNET_CONTENT_ERROR = 0x8c22000a, - PR_EMS_AB_DISABLE_DEFERRED_COMMIT = 0x8c23000b, - PR_EMS_AB_DISABLE_DEFERRED_COMMIT_ERROR = 0x8c23000a, - PR_EMS_AB_CLIENT_ACCESS_ENABLED = 0x8c24000b, - PR_EMS_AB_CLIENT_ACCESS_ENABLED_ERROR = 0x8c24000a, - PR_EMS_AB_REQUIRE_SSL = 0x8c25000b, - PR_EMS_AB_REQUIRE_SSL_ERROR = 0x8c25000a, - PR_EMS_AB_ANONYMOUS_ACCOUNT = 0x8c26001e, - PR_EMS_AB_ANONYMOUS_ACCOUNT_UNICODE = 0x8c26001f, - PR_EMS_AB_ANONYMOUS_ACCOUNT_ERROR = 0x8c26000a, - PR_EMS_AB_CERTIFICATE_CHAIN_V3 = 0x8c270102, - PR_EMS_AB_CERTIFICATE_CHAIN_V3_ERROR = 0x8c27000a, - PR_EMS_AB_CERTIFICATE_REVOCATION_LIST_V3 = 0x8c280102, - PR_EMS_AB_CERTIFICATE_REVOCATION_LIST_V3_ERROR = 0x8c28000a, - PR_EMS_AB_CERTIFICATE_REVOCATION_LIST_V1 = 0x8c290102, - PR_EMS_AB_CERTIFICATE_REVOCATION_LIST_V1_ERROR = 0x8c29000a, - PR_EMS_AB_CROSS_CERTIFICATE_CRL = 0x8c301102, - PR_EMS_AB_CROSS_CERTIFICATE_CRL_ERROR = 0x8c30000a, - PR_EMS_AB_SEND_EMAIL_MESSAGE = 0x8c31000b, - PR_EMS_AB_SEND_EMAIL_MESSAGE_ERROR = 0x8c31000a, - PR_EMS_AB_ENABLE_COMPATIBILITY = 0x8c32000b, - PR_EMS_AB_ENABLE_COMPATIBILITY_ERROR = 0x8c32000a, - PR_EMS_AB_SMIME_ALG_LIST_NA = 0x8c33101e, - PR_EMS_AB_SMIME_ALG_LIST_NA_UNICODE = 0x8c33101f, - PR_EMS_AB_SMIME_ALG_LIST_NA_ERROR = 0x8c33000a, - PR_EMS_AB_SMIME_ALG_LIST_OTHER = 0x8c34101e, - PR_EMS_AB_SMIME_ALG_LIST_OTHER_UNICODE = 0x8c34101f, - PR_EMS_AB_SMIME_ALG_LIST_OTHER_ERROR = 0x8c34000a, - PR_EMS_AB_SMIME_ALG_SELECTED_NA = 0x8c35001e, - PR_EMS_AB_SMIME_ALG_SELECTED_NA_UNICODE = 0x8c35001f, - PR_EMS_AB_SMIME_ALG_SELECTED_NA_ERROR = 0x8c35000a, - PR_EMS_AB_SMIME_ALG_SELECTED_OTHER = 0x8c36001e, - PR_EMS_AB_SMIME_ALG_SELECTED_OTHER_UNICODE = 0x8c36001f, - PR_EMS_AB_SMIME_ALG_SELECTED_OTHER_ERROR = 0x8c36000a, - PR_EMS_AB_DEFAULT_MESSAGE_FORMAT = 0x8c37000b, - PR_EMS_AB_DEFAULT_MESSAGE_FORMAT_ERROR = 0x8c37000a, - PR_EMS_AB_TYPE = 0x8c38001e, - PR_EMS_AB_TYPE_UNICODE = 0x8c38001f, - PR_EMS_AB_TYPE_ERROR = 0x8c38000a, - PR_EMS_AB_DO_OAB_VERSION = 0x8c3a0003, - PR_EMS_AB_DO_OAB_VERSION_ERROR = 0x8c3a000a, - PR_EMS_AB_VOICE_MAIL_SYSTEM_GUID = 0x8c3b0102, - PR_EMS_AB_VOICE_MAIL_SYSTEM_GUID_ERROR = 0x8c3b000a, - PR_EMS_AB_VOICE_MAIL_USER_ID = 0x8c3c001e, - PR_EMS_AB_VOICE_MAIL_USER_ID_UNICODE = 0x8c3c001f, - PR_EMS_AB_VOICE_MAIL_USER_ID_ERROR = 0x8c3c000a, - PR_EMS_AB_VOICE_MAIL_PASSWORD = 0x8c3d001e, - PR_EMS_AB_VOICE_MAIL_PASSWORD_UNICODE = 0x8c3d001f, - PR_EMS_AB_VOICE_MAIL_PASSWORD_ERROR = 0x8c3d000a, - PR_EMS_AB_VOICE_MAIL_RECORDED_NAME = 0x8c3e0102, - PR_EMS_AB_VOICE_MAIL_RECORDED_NAME_ERROR = 0x8c3e000a, - PR_EMS_AB_VOICE_MAIL_GREETINGS = 0x8c3f101e, - PR_EMS_AB_VOICE_MAIL_GREETINGS_UNICODE = 0x8c3f101f, - PR_EMS_AB_VOICE_MAIL_GREETINGS_ERROR = 0x8c3f000a, - PR_EMS_AB_VOICE_MAIL_FLAGS = 0x8c401102, - PR_EMS_AB_VOICE_MAIL_FLAGS_ERROR = 0x8c40000a, - PR_EMS_AB_VOICE_MAIL_VOLUME = 0x8c410003, - PR_EMS_AB_VOICE_MAIL_VOLUME_ERROR = 0x8c41000a, - PR_EMS_AB_VOICE_MAIL_SPEED = 0x8c420003, - PR_EMS_AB_VOICE_MAIL_SPEED_ERROR = 0x8c42000a, - PR_EMS_AB_VOICE_MAIL_RECORDING_LENGTH = 0x8c431003, - PR_EMS_AB_VOICE_MAIL_RECORDING_LENGTH_ERROR = 0x8c43000a, - PR_EMS_AB_DISPLAY_NAME_SUFFIX = 0x8c44001e, - PR_EMS_AB_DISPLAY_NAME_SUFFIX_UNICODE = 0x8c44001f, - PR_EMS_AB_DISPLAY_NAME_SUFFIX_ERROR = 0x8c44000a, - PR_EMS_AB_ATTRIBUTE_CERTIFICATE = 0x8c451102, - PR_EMS_AB_ATTRIBUTE_CERTIFICATE_ERROR = 0x8c45000a, - PR_EMS_AB_DELTA_REVOCATION_LIST = 0x8c461102, - PR_EMS_AB_DELTA_REVOCATION_LIST_ERROR = 0x8c46000a, - PR_EMS_AB_SECURITY_POLICY = 0x8c471102, - PR_EMS_AB_SECURITY_POLICY_ERROR = 0x8c47000a, - PR_EMS_AB_SUPPORT_SMIME_SIGNATURES = 0x8c48000b, - PR_EMS_AB_SUPPORT_SMIME_SIGNATURES_ERROR = 0x8c48000a, - PR_EMS_AB_DELEGATE_USER = 0x8c49000b, - PR_EMS_AB_DELEGATE_USER_ERROR = 0x8c49000a, - PR_EMS_AB_LIST_PUBLIC_FOLDERS = 0x8c50000b, - PR_EMS_AB_LIST_PUBLIC_FOLDERS_ERROR = 0x8c50000a, - PR_EMS_AB_LABELEDURI = 0x8c51001e, - PR_EMS_AB_LABELEDURI_UNICODE = 0x8c51001f, - PR_EMS_AB_LABELEDURI_ERROR = 0x8c51000a, - PR_EMS_AB_RETURN_EXACT_MSG_SIZE = 0x8c52000b, - PR_EMS_AB_RETURN_EXACT_MSG_SIZE_ERROR = 0x8c52000a, - PR_EMS_AB_GENERATION_QUALIFIER = 0x8c53001e, - PR_EMS_AB_GENERATION_QUALIFIER_UNICODE = 0x8c53001f, - PR_EMS_AB_GENERATION_QUALIFIER_ERROR = 0x8c53000a, - PR_EMS_AB_HOUSE_IDENTIFIER = 0x8c54001e, - PR_EMS_AB_HOUSE_IDENTIFIER_UNICODE = 0x8c54001f, - PR_EMS_AB_HOUSE_IDENTIFIER_ERROR = 0x8c54000a, - PR_EMS_AB_SUPPORTED_ALGORITHMS = 0x8c550102, - PR_EMS_AB_SUPPORTED_ALGORITHMS_ERROR = 0x8c55000a, - PR_EMS_AB_DMD_NAME = 0x8c56001e, - PR_EMS_AB_DMD_NAME_UNICODE = 0x8c56001f, - PR_EMS_AB_DMD_NAME_ERROR = 0x8c56000a, - PR_EMS_AB_EXTENSION_ATTRIBUTE_11 = 0x8c57001e, - PR_EMS_AB_EXTENSION_ATTRIBUTE_11_UNICODE = 0x8c57001f, - PR_EMS_AB_EXTENSION_ATTRIBUTE_11_ERROR = 0x8c57000a, - PR_EMS_AB_EXTENSION_ATTRIBUTE_12 = 0x8c58001e, - PR_EMS_AB_EXTENSION_ATTRIBUTE_12_UNICODE = 0x8c58001f, - PR_EMS_AB_EXTENSION_ATTRIBUTE_12_ERROR = 0x8c58000a, - PR_EMS_AB_EXTENSION_ATTRIBUTE_13 = 0x8c59001e, - PR_EMS_AB_EXTENSION_ATTRIBUTE_13_UNICODE = 0x8c59001f, - PR_EMS_AB_EXTENSION_ATTRIBUTE_13_ERROR = 0x8c59000a, - PR_EMS_AB_EXTENSION_ATTRIBUTE_14 = 0x8c60001e, - PR_EMS_AB_EXTENSION_ATTRIBUTE_14_UNICODE = 0x8c60001f, - PR_EMS_AB_EXTENSION_ATTRIBUTE_14_ERROR = 0x8c60000a, - PR_EMS_AB_EXTENSION_ATTRIBUTE_15 = 0x8c61001e, - PR_EMS_AB_EXTENSION_ATTRIBUTE_15_UNICODE = 0x8c61001f, - PR_EMS_AB_EXTENSION_ATTRIBUTE_15_ERROR = 0x8c61000a, - PR_EMS_AB_REPLICATED_OBJECT_VERSION = 0x8c620003, - PR_EMS_AB_REPLICATED_OBJECT_VERSION_ERROR = 0x8c62000a, - PR_EMS_AB_MAIL_DROP = 0x8c63001e, - PR_EMS_AB_MAIL_DROP_UNICODE = 0x8c63001f, - PR_EMS_AB_MAIL_DROP_ERROR = 0x8c63000a, - PR_EMS_AB_FORWARDING_ADDRESS = 0x8c64001e, - PR_EMS_AB_FORWARDING_ADDRESS_UNICODE = 0x8c64001f, - PR_EMS_AB_FORWARDING_ADDRESS_ERROR = 0x8c64000a, - PR_EMS_AB_FORM_DATA = 0x8c650102, - PR_EMS_AB_FORM_DATA_ERROR = 0x8c65000a, - PR_EMS_AB_OWA_SERVER = 0x8c66001e, - PR_EMS_AB_OWA_SERVER_UNICODE = 0x8c66001f, - PR_EMS_AB_OWA_SERVER_ERROR = 0x8c66000a, - PR_EMS_AB_EMPLOYEE_NUMBER = 0x8c67001e, - PR_EMS_AB_EMPLOYEE_NUMBER_UNICODE = 0x8c67001f, - PR_EMS_AB_EMPLOYEE_NUMBER_ERROR = 0x8c67000a, - PR_EMS_AB_TELEPHONE_PERSONAL_PAGER = 0x8c68001e, - PR_EMS_AB_TELEPHONE_PERSONAL_PAGER_UNICODE = 0x8c68001f, - PR_EMS_AB_TELEPHONE_PERSONAL_PAGER_ERROR = 0x8c68000a, - PR_EMS_AB_EMPLOYEE_TYPE = 0x8c69001e, - PR_EMS_AB_EMPLOYEE_TYPE_UNICODE = 0x8c69001f, - PR_EMS_AB_EMPLOYEE_TYPE_ERROR = 0x8c69000a, - PR_EMS_AB_TAGGED_X509_CERT = 0x8c6a1102, - PR_EMS_AB_TAGGED_X509_CERT_ERROR = 0x8c6a000a, - PR_EMS_AB_PERSONAL_TITLE = 0x8c6b001e, - PR_EMS_AB_PERSONAL_TITLE_UNICODE = 0x8c6b001f, - PR_EMS_AB_PERSONAL_TITLE_ERROR = 0x8c6b000a, - PR_EMS_AB_LANGUAGE_ISO639 = 0x8c6c001e, - PR_EMS_AB_LANGUAGE_ISO639_UNICODE = 0x8c6c001f, - PR_EMS_AB_LANGUAGE_ISO639_ERROR = 0x8c6c000a, - PR_EMS_AB_OTHER_RECIPS = 0xf000000d, - PR_EMS_AB_OTHER_RECIPS_ERROR = 0xf000000a, - PR_EMS_AB_CHILD_RDNS = 0xfff8101e, - PR_EMS_AB_CHILD_RDNS_UNICODE = 0xfff8101f, - PR_EMS_AB_CHILD_RDNS_ERROR = 0xfff8000a, - PR_EMS_AB_HIERARCHY_PATH = 0xfff9001e, - PR_EMS_AB_HIERARCHY_PATH_UNICODE = 0xfff9001f, - PR_EMS_AB_HIERARCHY_PATH_ERROR = 0xfff9000a, - PR_EMS_AB_OBJECT_OID = 0xfffa0102, - PR_EMS_AB_OBJECT_OID_ERROR = 0xfffa000a, - PR_EMS_AB_IS_MASTER = 0xfffb000b, - PR_EMS_AB_IS_MASTER_ERROR = 0xfffb000a, - PR_EMS_AB_PARENT_ENTRYID = 0xfffc0102, - PR_EMS_AB_PARENT_ENTRYID_ERROR = 0xfffc000a, - PR_EMS_AB_CONTAINERID = 0xfffd0003, - PR_EMS_AB_CONTAINERID_ERROR = 0xfffd000a, - PR_EMS_AB_SERVER = 0xfffe001e, - PR_EMS_AB_SERVER_UNICODE = 0xfffe001f, - PR_EMS_AB_SERVER_ERROR = 0xfffe000a, - MAPI_PROP_RESERVED = 0xFFFFFFFF -} MAPITAGS; - diff --git a/epan/dissectors/pidl/mapicodes_enum.h b/epan/dissectors/pidl/mapicodes_enum.h new file mode 100644 index 0000000000..64b671e5e3 --- /dev/null +++ b/epan/dissectors/pidl/mapicodes_enum.h @@ -0,0 +1,98 @@ +/* + MAPI Implementation + + OpenChange Project + + Copyright (C) Julien Kerihuel 2006 + + 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 2 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, write to the Free Software + Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. +*/ + +/* parser auto-generated by mparse */ + +typedef [public, v1_enum, flag(NDR_PAHEX)] enum { + MAPI_E_SUCCESS = 0x00000000, + MAPI_E_NO_SUPPORT = 0x80040102, + MAPI_E_BAD_CHARWIDTH = 0x80040103, + MAPI_E_STRING_TOO_LONG = 0x80040105, + MAPI_E_UNKNOWN_FLAGS = 0x80040106, + MAPI_E_INVALID_ENTRYID = 0x80040107, + MAPI_E_INVALID_OBJECT = 0x80040108, + MAPI_E_OBJECT_CHANGED = 0x80040109, + MAPI_E_OBJECT_DELETED = 0x8004010A, + MAPI_E_BUSY = 0x8004010B, + MAPI_E_NOT_ENOUGH_DISK = 0x8004010D, + MAPI_E_NOT_ENOUGH_RESOURCES = 0x8004010E, + MAPI_E_NOT_FOUND = 0x8004010F, + MAPI_E_VERSION = 0x80040110, + MAPI_E_LOGON_FAILED = 0x80040111, + MAPI_E_SESSION_LIMIT = 0x80040112, + MAPI_E_USER_CANCEL = 0x80040113, + MAPI_E_UNABLE_TO_ABORT = 0x80040114, + MAPI_E_NETWORK_ERROR = 0x80040115, + MAPI_E_DISK_ERROR = 0x80040116, + MAPI_E_TOO_COMPLEX = 0x80040117, + MAPI_E_BAD_COLUMN = 0x80040118, + MAPI_E_EXTENDED_ERROR = 0x80040119, + MAPI_E_COMPUTED = 0x8004011A, + MAPI_E_CORRUPT_DATA = 0x8004011B, + MAPI_E_UNCONFIGURED = 0x8004011C, + MAPI_E_FAILONEPROVIDER = 0x8004011D, + MAPI_E_UNKNOWN_CPID = 0x8004011E, + MAPI_E_UNKNOWN_LCID = 0x8004011F, + MAPI_E_PASSWORD_CHANGE_REQUIRED = 0x80040120, + MAPI_E_PASSWORD_EXPIRED = 0x80040121, + MAPI_E_INVALID_WORKSTATION_ACCOUNT = 0x80040122, + MAPI_E_INVALID_ACCESS_TIME = 0x80040123, + MAPI_E_ACCOUNT_DISABLED = 0x80040124, + MAPI_E_END_OF_SESSION = 0x80040200, + MAPI_E_UNKNOWN_ENTRYID = 0x80040201, + MAPI_E_MISSING_REQUIRED_COLUMN = 0x80040202, + MAPI_W_NO_SERVICE = 0x80040203, + MAPI_E_BAD_VALUE = 0x80040301, + MAPI_E_INVALID_TYPE = 0x80040302, + MAPI_E_TYPE_NO_SUPPORT = 0x80040303, + MAPI_E_UNEXPECTED_TYPE = 0x80040304, + MAPI_E_TOO_BIG = 0x80040305, + MAPI_E_DECLINE_COPY = 0x80040306, + MAPI_E_UNEXPECTED_ID = 0x80040307, + MAPI_W_ERRORS_RETURNED = 0x80040380, + MAPI_E_UNABLE_TO_COMPLETE = 0x80040400, + MAPI_E_TIMEOUT = 0x80040401, + MAPI_E_TABLE_EMPTY = 0x80040402, + MAPI_E_TABLE_TOO_BIG = 0x80040403, + MAPI_E_INVALID_BOOKMARK = 0x80040405, + MAPI_W_POSITION_CHANGED = 0x80040481, + MAPI_W_APPROX_COUNT = 0x80040482, + MAPI_E_WAIT = 0x80040500, + MAPI_E_CANCEL = 0x80040501, + MAPI_E_NOT_ME = 0x80040502, + MAPI_W_CANCEL_MESSAGE = 0x80040580, + MAPI_E_CORRUPT_STORE = 0x80040600, + MAPI_E_NOT_IN_QUEUE = 0x80040601, + MAPI_E_NO_SUPPRESS = 0x80040602, + MAPI_E_COLLISION = 0x80040604, + MAPI_E_NOT_INITIALIZED = 0x80040605, + MAPI_E_NON_STANDARD = 0x80040606, + MAPI_E_NO_RECIPIENTS = 0x80040607, + MAPI_E_SUBMITTED = 0x80040608, + MAPI_E_HAS_FOLDERS = 0x80040609, + MAPI_E_HAS_MESAGES = 0x8004060A, + MAPI_E_FOLDER_CYCLE = 0x8004060B, + MAPI_W_PARTIAL_COMPLETION = 0x80040680, + MAPI_E_AMBIGUOUS_RECIP = 0x80040700, + MAPI_E_RESERVED = 0xFFFFFFFF +} MAPISTATUS; + diff --git a/epan/dissectors/pidl/mapitags_enum.h b/epan/dissectors/pidl/mapitags_enum.h new file mode 100644 index 0000000000..2ca596f14c --- /dev/null +++ b/epan/dissectors/pidl/mapitags_enum.h @@ -0,0 +1,3421 @@ +/* + MAPI Implementation + + OpenChange Project + + Copyright (C) Julien Kerihuel 2006 + + 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 2 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, write to the Free Software + Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. +*/ + + +/* parser auto-generated by mparse */ + +typedef [v1_enum, flag(NDR_PAHEX)] enum { + PR_ACKNOWLEDGEMENT_MODE = 0x00010003, + PR_ACKNOWLEDGEMENT_MODE_ERROR = 0x0001000a, + PR_ALTERNATE_RECIPIENT_ALLOWED = 0x0002000b, + PR_ALTERNATE_RECIPIENT_ALLOWED_ERROR = 0x0002000a, + PR_AUTHORIZING_USERS = 0x00030102, + PR_AUTHORIZING_USERS_ERROR = 0x0003000a, + PR_AUTO_FORWARD_COMMENT = 0x0004001e, + PR_AUTO_FORWARD_COMMENT_UNICODE = 0x0004001f, + PR_AUTO_FORWARD_COMMENT_ERROR = 0x0004000a, + PR_AUTO_FORWARDED = 0x0005000b, + PR_AUTO_FORWARDED_ERROR = 0x0005000a, + PR_CONTENT_CONFIDENTIALITY_ALGORITHM_ID = 0x00060102, + PR_CONTENT_CONFIDENTIALITY_ALGORITHM_ID_ERROR = 0x0006000a, + PR_CONTENT_CORRELATOR = 0x00070102, + PR_CONTENT_CORRELATOR_ERROR = 0x0007000a, + PR_CONTENT_IDENTIFIER = 0x0008001e, + PR_CONTENT_IDENTIFIER_UNICODE = 0x0008001f, + PR_CONTENT_IDENTIFIER_ERROR = 0x0008000a, + PR_CONTENT_LENGTH = 0x00090003, + PR_CONTENT_LENGTH_ERROR = 0x0009000a, + PR_CONTENT_RETURN_REQUESTED = 0x000a000b, + PR_CONTENT_RETURN_REQUESTED_ERROR = 0x000a000a, + PR_CONVERSATION_KEY = 0x000b0102, + PR_CONVERSATION_KEY_ERROR = 0x000b000a, + PR_CONVERSION_EITS = 0x000c0102, + PR_CONVERSION_EITS_ERROR = 0x000c000a, + PR_CONVERSION_WITH_LOSS_PROHIBITED = 0x000d000b, + PR_CONVERSION_WITH_LOSS_PROHIBITED_ERROR = 0x000d000a, + PR_CONVERTED_EITS = 0x000e0102, + PR_CONVERTED_EITS_ERROR = 0x000e000a, + PR_DEFERRED_DELIVERY_TIME = 0x000f0040, + PR_DEFERRED_DELIVERY_TIME_ERROR = 0x000f000a, + PR_DELIVER_TIME = 0x00100040, + PR_DELIVER_TIME_ERROR = 0x0010000a, + PR_DISCARD_REASON = 0x00110003, + PR_DISCARD_REASON_ERROR = 0x0011000a, + PR_DISCLOSURE_OF_RECIPIENTS = 0x0012000b, + PR_DISCLOSURE_OF_RECIPIENTS_ERROR = 0x0012000a, + PR_DL_EXPANSION_HISTORY = 0x00130102, + PR_DL_EXPANSION_HISTORY_ERROR = 0x0013000a, + PR_DL_EXPANSION_PROHIBITED = 0x0014000b, + PR_DL_EXPANSION_PROHIBITED_ERROR = 0x0014000a, + PR_EXPIRY_TIME = 0x00150040, + PR_EXPIRY_TIME_ERROR = 0x0015000a, + PR_IMPLICIT_CONVERSION_PROHIBITED = 0x0016000b, + PR_IMPLICIT_CONVERSION_PROHIBITED_ERROR = 0x0016000a, + PR_IMPORTANCE = 0x00170003, + PR_IMPORTANCE_ERROR = 0x0017000a, + PR_IPM_ID = 0x00180102, + PR_IPM_ID_ERROR = 0x0018000a, + PR_LATEST_DELIVERY_TIME = 0x00190040, + PR_LATEST_DELIVERY_TIME_ERROR = 0x0019000a, + PR_MESSAGE_CLASS = 0x001a001e, + PR_MESSAGE_CLASS_UNICODE = 0x001a001f, + PR_MESSAGE_CLASS_ERROR = 0x001a000a, + PR_MESSAGE_DELIVERY_ID = 0x001b0102, + PR_MESSAGE_DELIVERY_ID_ERROR = 0x001b000a, + PR_MESSAGE_SECURITY_LABEL = 0x001e0102, + PR_MESSAGE_SECURITY_LABEL_ERROR = 0x001e000a, + PR_OBSOLETED_IPMS = 0x001f0102, + PR_OBSOLETED_IPMS_ERROR = 0x001f000a, + PR_ORIGINALLY_INTENDED_RECIPIENT_NAME = 0x00200102, + PR_ORIGINALLY_INTENDED_RECIPIENT_NAME_ERROR = 0x0020000a, + PR_ORIGINAL_EITS = 0x00210102, + PR_ORIGINAL_EITS_ERROR = 0x0021000a, + PR_ORIGINATOR_CERTIFICATE = 0x00220102, + PR_ORIGINATOR_CERTIFICATE_ERROR = 0x0022000a, + PR_ORIGINATOR_DELIVERY_REPORT_REQUESTED = 0x0023000b, + PR_ORIGINATOR_DELIVERY_REPORT_REQUESTED_ERROR = 0x0023000a, + PR_ORIGINATOR_RETURN_ADDRESS = 0x00240102, + PR_ORIGINATOR_RETURN_ADDRESS_ERROR = 0x0024000a, + PR_PARENT_KEY = 0x00250102, + PR_PARENT_KEY_ERROR = 0x0025000a, + PR_PRIORITY = 0x00260003, + PR_PRIORITY_ERROR = 0x0026000a, + PR_ORIGIN_CHECK = 0x00270102, + PR_ORIGIN_CHECK_ERROR = 0x0027000a, + PR_PROOF_OF_SUBMISSION_REQUESTED = 0x0028000b, + PR_PROOF_OF_SUBMISSION_REQUESTED_ERROR = 0x0028000a, + PR_READ_RECEIPT_REQUESTED = 0x0029000b, + PR_READ_RECEIPT_REQUESTED_ERROR = 0x0029000a, + PR_RECEIPT_TIME = 0x002a0040, + PR_RECEIPT_TIME_ERROR = 0x002a000a, + PR_RECIPIENT_REASSIGNMENT_PROHIBITED = 0x002b000b, + PR_RECIPIENT_REASSIGNMENT_PROHIBITED_ERROR = 0x002b000a, + PR_REDIRECTION_HISTORY = 0x002c0102, + PR_REDIRECTION_HISTORY_ERROR = 0x002c000a, + PR_RELATED_IPMS = 0x002d0102, + PR_RELATED_IPMS_ERROR = 0x002d000a, + PR_ORIGINAL_SENSITIVITY = 0x002e0003, + PR_ORIGINAL_SENSITIVITY_ERROR = 0x002e000a, + PR_LANGUAGES = 0x002f001e, + PR_LANGUAGES_UNICODE = 0x002f001f, + PR_LANGUAGES_ERROR = 0x002f000a, + PR_REPLY_TIME = 0x00300040, + PR_REPLY_TIME_ERROR = 0x0030000a, + PR_REPORT_TAG = 0x00310102, + PR_REPORT_TAG_ERROR = 0x0031000a, + PR_REPORT_TIME = 0x00320040, + PR_REPORT_TIME_ERROR = 0x0032000a, + PR_RETURNED_IPM = 0x0033000b, + PR_RETURNED_IPM_ERROR = 0x0033000a, + PR_SECURITY = 0x00340003, + PR_SECURITY_ERROR = 0x0034000a, + PR_INCOMPLETE_COPY = 0x0035000b, + PR_INCOMPLETE_COPY_ERROR = 0x0035000a, + PR_SENSITIVITY = 0x00360003, + PR_SENSITIVITY_ERROR = 0x0036000a, + PR_SUBJECT = 0x0037001e, + PR_SUBJECT_UNICODE = 0x0037001f, + PR_SUBJECT_ERROR = 0x0037000a, + PR_SUBJECT_IPM = 0x00380102, + PR_SUBJECT_IPM_ERROR = 0x0038000a, + PR_CLIENT_SUBMIT_TIME = 0x00390040, + PR_CLIENT_SUBMIT_TIME_ERROR = 0x0039000a, + PR_REPORT_NAME = 0x003a001e, + PR_REPORT_NAME_UNICODE = 0x003a001f, + PR_REPORT_NAME_ERROR = 0x003a000a, + PR_SENT_REPRESENTING_SEARCH_KEY = 0x003b0102, + PR_SENT_REPRESENTING_SEARCH_KEY_ERROR = 0x003b000a, + PR_X400_CONTENT_TYPE = 0x003c0102, + PR_X400_CONTENT_TYPE_ERROR = 0x003c000a, + PR_SUBJECT_PREFIX = 0x003d001e, + PR_SUBJECT_PREFIX_UNICODE = 0x003d001f, + PR_SUBJECT_PREFIX_ERROR = 0x003d000a, + PR_NON_RECEIPT_REASON = 0x003e0003, + PR_NON_RECEIPT_REASON_ERROR = 0x003e000a, + PR_RECEIVED_BY_ENTRYID = 0x003f0102, + PR_RECEIVED_BY_ENTRYID_ERROR = 0x003f000a, + PR_RECEIVED_BY_NAME = 0x0040001e, + PR_RECEIVED_BY_NAME_UNICODE = 0x0040001f, + PR_RECEIVED_BY_NAME_ERROR = 0x0040000a, + PR_SENT_REPRESENTING_ENTRYID = 0x00410102, + PR_SENT_REPRESENTING_ENTRYID_ERROR = 0x0041000a, + PR_SENT_REPRESENTING_NAME = 0x0042001e, + PR_SENT_REPRESENTING_NAME_UNICODE = 0x0042001f, + PR_SENT_REPRESENTING_NAME_ERROR = 0x0042000a, + PR_RCVD_REPRESENTING_ENTRYID = 0x00430102, + PR_RCVD_REPRESENTING_ENTRYID_ERROR = 0x0043000a, + PR_RCVD_REPRESENTING_NAME = 0x0044001e, + PR_RCVD_REPRESENTING_NAME_UNICODE = 0x0044001f, + PR_RCVD_REPRESENTING_NAME_ERROR = 0x0044000a, + PR_REPORT_ENTRYID = 0x00450102, + PR_REPORT_ENTRYID_ERROR = 0x0045000a, + PR_READ_RECEIPT_ENTRYID = 0x00460102, + PR_READ_RECEIPT_ENTRYID_ERROR = 0x0046000a, + PR_MESSAGE_SUBMISSION_ID = 0x00470102, + PR_MESSAGE_SUBMISSION_ID_ERROR = 0x0047000a, + PR_PROVIDER_SUBMIT_TIME = 0x00480040, + PR_PROVIDER_SUBMIT_TIME_ERROR = 0x0048000a, + PR_ORIGINAL_SUBJECT = 0x0049001e, + PR_ORIGINAL_SUBJECT_UNICODE = 0x0049001f, + PR_ORIGINAL_SUBJECT_ERROR = 0x0049000a, + PR_DISC_VAL = 0x004a000b, + PR_DISC_VAL_ERROR = 0x004a000a, + PR_ORIG_MESSAGE_CLASS = 0x004b001e, + PR_ORIG_MESSAGE_CLASS_UNICODE = 0x004b001f, + PR_ORIG_MESSAGE_CLASS_ERROR = 0x004b000a, + PR_ORIGINAL_AUTHOR_ENTRYID = 0x004c0102, + PR_ORIGINAL_AUTHOR_ENTRYID_ERROR = 0x004c000a, + PR_ORIGINAL_AUTHOR_NAME = 0x004d001e, + PR_ORIGINAL_AUTHOR_NAME_UNICODE = 0x004d001f, + PR_ORIGINAL_AUTHOR_NAME_ERROR = 0x004d000a, + PR_ORIGINAL_SUBMIT_TIME = 0x004e0040, + PR_ORIGINAL_SUBMIT_TIME_ERROR = 0x004e000a, + PR_REPLY_RECIPIENT_ENTRIES = 0x004f0102, + PR_REPLY_RECIPIENT_ENTRIES_ERROR = 0x004f000a, + PR_REPLY_RECIPIENT_NAMES = 0x0050001e, + PR_REPLY_RECIPIENT_NAMES_UNICODE = 0x0050001f, + PR_REPLY_RECIPIENT_NAMES_ERROR = 0x0050000a, + PR_RECEIVED_BY_SEARCH_KEY = 0x00510102, + PR_RECEIVED_BY_SEARCH_KEY_ERROR = 0x0051000a, + PR_RCVD_REPRESENTING_SEARCH_KEY = 0x00520102, + PR_RCVD_REPRESENTING_SEARCH_KEY_ERROR = 0x0052000a, + PR_READ_RECEIPT_SEARCH_KEY = 0x00530102, + PR_READ_RECEIPT_SEARCH_KEY_ERROR = 0x0053000a, + PR_REPORT_SEARCH_KEY = 0x00540102, + PR_REPORT_SEARCH_KEY_ERROR = 0x0054000a, + PR_ORIGINAL_DELIVERY_TIME = 0x00550040, + PR_ORIGINAL_DELIVERY_TIME_ERROR = 0x0055000a, + PR_ORIGINAL_AUTHOR_SEARCH_KEY = 0x00560102, + PR_ORIGINAL_AUTHOR_SEARCH_KEY_ERROR = 0x0056000a, + PR_MESSAGE_TO_ME = 0x0057000b, + PR_MESSAGE_TO_ME_ERROR = 0x0057000a, + PR_MESSAGE_CC_ME = 0x0058000b, + PR_MESSAGE_CC_ME_ERROR = 0x0058000a, + PR_MESSAGE_RECIP_ME = 0x0059000b, + PR_MESSAGE_RECIP_ME_ERROR = 0x0059000a, + PR_ORIGINAL_SENDER_NAME = 0x005a001e, + PR_ORIGINAL_SENDER_NAME_UNICODE = 0x005a001f, + PR_ORIGINAL_SENDER_NAME_ERROR = 0x005a000a, + PR_ORIGINAL_SENDER_ENTRYID = 0x005b0102, + PR_ORIGINAL_SENDER_ENTRYID_ERROR = 0x005b000a, + PR_ORIGINAL_SENDER_SEARCH_KEY = 0x005c0102, + PR_ORIGINAL_SENDER_SEARCH_KEY_ERROR = 0x005c000a, + PR_ORIGINAL_SENT_REPRESENTING_NAME = 0x005d001e, + PR_ORIGINAL_SENT_REPRESENTING_NAME_UNICODE = 0x005d001f, + PR_ORIGINAL_SENT_REPRESENTING_NAME_ERROR = 0x005d000a, + PR_ORIGINAL_SENT_REPRESENTING_ENTRYID = 0x005e0102, + PR_ORIGINAL_SENT_REPRESENTING_ENTRYID_ERROR = 0x005e000a, + PR_ORIGINAL_SENT_REPRESENTING_SEARCH_KEY = 0x005f0102, + PR_ORIGINAL_SENT_REPRESENTING_SEARCH_KEY_ERROR = 0x005f000a, + PR_START_DATE = 0x00600040, + PR_START_DATE_ERROR = 0x0060000a, + PR_END_DATE = 0x00610040, + PR_END_DATE_ERROR = 0x0061000a, + PR_OWNER_APPT_ID = 0x00620003, + PR_OWNER_APPT_ID_ERROR = 0x0062000a, + PR_RESPONSE_REQUESTED = 0x0063000b, + PR_RESPONSE_REQUESTED_ERROR = 0x0063000a, + PR_SENT_REPRESENTING_ADDRTYPE = 0x0064001e, + PR_SENT_REPRESENTING_ADDRTYPE_UNICODE = 0x0064001f, + PR_SENT_REPRESENTING_ADDRTYPE_ERROR = 0x0064000a, + PR_SENT_REPRESENTING_EMAIL_ADDRESS = 0x0065001e, + PR_SENT_REPRESENTING_EMAIL_ADDRESS_UNICODE = 0x0065001f, + PR_SENT_REPRESENTING_EMAIL_ADDRESS_ERROR = 0x0065000a, + PR_ORIGINAL_SENDER_ADDRTYPE = 0x0066001e, + PR_ORIGINAL_SENDER_ADDRTYPE_UNICODE = 0x0066001f, + PR_ORIGINAL_SENDER_ADDRTYPE_ERROR = 0x0066000a, + PR_ORIGINAL_SENDER_EMAIL_ADDRESS = 0x0067001e, + PR_ORIGINAL_SENDER_EMAIL_ADDRESS_UNICODE = 0x0067001f, + PR_ORIGINAL_SENDER_EMAIL_ADDRESS_ERROR = 0x0067000a, + PR_ORIGINAL_SENT_REPRESENTING_ADDRTYPE = 0x0068001e, + PR_ORIGINAL_SENT_REPRESENTING_ADDRTYPE_UNICODE = 0x0068001f, + PR_ORIGINAL_SENT_REPRESENTING_ADDRTYPE_ERROR = 0x0068000a, + PR_ORIGINAL_SENT_REPRESENTING_EMAIL_ADDRESS = 0x0069001e, + PR_ORIGINAL_SENT_REPRESENTING_EMAIL_ADDRESS_UNICODE = 0x0069001f, + PR_ORIGINAL_SENT_REPRESENTING_EMAIL_ADDRESS_ERROR = 0x0069000a, + PR_CONVERSATION_TOPIC = 0x0070001e, + PR_CONVERSATION_TOPIC_UNICODE = 0x0070001f, + PR_CONVERSATION_TOPIC_ERROR = 0x0070000a, + PR_CONVERSATION_INDEX = 0x00710102, + PR_CONVERSATION_INDEX_ERROR = 0x0071000a, + PR_ORIGINAL_DISPLAY_BCC = 0x0072001e, + PR_ORIGINAL_DISPLAY_BCC_UNICODE = 0x0072001f, + PR_ORIGINAL_DISPLAY_BCC_ERROR = 0x0072000a, + PR_ORIGINAL_DISPLAY_CC = 0x0073001e, + PR_ORIGINAL_DISPLAY_CC_UNICODE = 0x0073001f, + PR_ORIGINAL_DISPLAY_CC_ERROR = 0x0073000a, + PR_ORIGINAL_DISPLAY_TO = 0x0074001e, + PR_ORIGINAL_DISPLAY_TO_UNICODE = 0x0074001f, + PR_ORIGINAL_DISPLAY_TO_ERROR = 0x0074000a, + PR_RECEIVED_BY_ADDRTYPE = 0x0075001e, + PR_RECEIVED_BY_ADDRTYPE_UNICODE = 0x0075001f, + PR_RECEIVED_BY_ADDRTYPE_ERROR = 0x0075000a, + PR_RECEIVED_BY_EMAIL_ADDRESS = 0x0076001e, + PR_RECEIVED_BY_EMAIL_ADDRESS_UNICODE = 0x0076001f, + PR_RECEIVED_BY_EMAIL_ADDRESS_ERROR = 0x0076000a, + PR_RCVD_REPRESENTING_ADDRTYPE = 0x0077001e, + PR_RCVD_REPRESENTING_ADDRTYPE_UNICODE = 0x0077001f, + PR_RCVD_REPRESENTING_ADDRTYPE_ERROR = 0x0077000a, + PR_RCVD_REPRESENTING_EMAIL_ADDRESS = 0x0078001e, + PR_RCVD_REPRESENTING_EMAIL_ADDRESS_UNICODE = 0x0078001f, + PR_RCVD_REPRESENTING_EMAIL_ADDRESS_ERROR = 0x0078000a, + PR_ORIGINAL_AUTHOR_ADDRTYPE = 0x0079001e, + PR_ORIGINAL_AUTHOR_ADDRTYPE_UNICODE = 0x0079001f, + PR_ORIGINAL_AUTHOR_ADDRTYPE_ERROR = 0x0079000a, + PR_ORIGINAL_AUTHOR_EMAIL_ADDRESS = 0x007a001e, + PR_ORIGINAL_AUTHOR_EMAIL_ADDRESS_UNICODE = 0x007a001f, + PR_ORIGINAL_AUTHOR_EMAIL_ADDRESS_ERROR = 0x007a000a, + PR_ORIGINALLY_INTENDED_RECIP_ADDRTYPE = 0x007b001e, + PR_ORIGINALLY_INTENDED_RECIP_ADDRTYPE_UNICODE = 0x007b001f, + PR_ORIGINALLY_INTENDED_RECIP_ADDRTYPE_ERROR = 0x007b000a, + PR_ORIGINALLY_INTENDED_RECIP_EMAIL_ADDRESS = 0x007c001e, + PR_ORIGINALLY_INTENDED_RECIP_EMAIL_ADDRESS_UNICODE = 0x007c001f, + PR_ORIGINALLY_INTENDED_RECIP_EMAIL_ADDRESS_ERROR = 0x007c000a, + PR_TRANSPORT_MESSAGE_HEADERS = 0x007d001e, + PR_TRANSPORT_MESSAGE_HEADERS_UNICODE = 0x007d001f, + PR_TRANSPORT_MESSAGE_HEADERS_ERROR = 0x007d000a, + PR_DELEGATION = 0x007e0102, + PR_DELEGATION_ERROR = 0x007e000a, + PR_TNEF_CORRELATION_KEY = 0x007f0102, + PR_TNEF_CORRELATION_KEY_ERROR = 0x007f000a, + PR_CONTENT_INTEGRITY_CHECK = 0x0c000102, + PR_CONTENT_INTEGRITY_CHECK_ERROR = 0x0c00000a, + PR_EXPLICIT_CONVERSION = 0x0c010003, + PR_EXPLICIT_CONVERSION_ERROR = 0x0c01000a, + PR_IPM_RETURN_REQUESTED = 0x0c02000b, + PR_IPM_RETURN_REQUESTED_ERROR = 0x0c02000a, + PR_MESSAGE_TOKEN = 0x0c030102, + PR_MESSAGE_TOKEN_ERROR = 0x0c03000a, + PR_NDR_REASON_CODE = 0x0c040003, + PR_NDR_REASON_CODE_ERROR = 0x0c04000a, + PR_NDR_DIAG_CODE = 0x0c050003, + PR_NDR_DIAG_CODE_ERROR = 0x0c05000a, + PR_NON_RECEIPT_NOTIFICATION_REQUESTED = 0x0c06000b, + PR_NON_RECEIPT_NOTIFICATION_REQUESTED_ERROR = 0x0c06000a, + PR_DELIVERY_POINT = 0x0c070003, + PR_DELIVERY_POINT_ERROR = 0x0c07000a, + PR_ORIGINATOR_NON_DELIVERY_REPORT_REQUESTED = 0x0c08000b, + PR_ORIGINATOR_NON_DELIVERY_REPORT_REQUESTED_ERROR = 0x0c08000a, + PR_ORIGINATOR_REQUESTED_ALTERNATE_RECIPIENT = 0x0c090102, + PR_ORIGINATOR_REQUESTED_ALTERNATE_RECIPIENT_ERROR = 0x0c09000a, + PR_PHYSICAL_DELIVERY_BUREAU_FAX_DELIVERY = 0x0c0a000b, + PR_PHYSICAL_DELIVERY_BUREAU_FAX_DELIVERY_ERROR = 0x0c0a000a, + PR_PHYSICAL_DELIVERY_MODE = 0x0c0b0003, + PR_PHYSICAL_DELIVERY_MODE_ERROR = 0x0c0b000a, + PR_PHYSICAL_DELIVERY_REPORT_REQUEST = 0x0c0c0003, + PR_PHYSICAL_DELIVERY_REPORT_REQUEST_ERROR = 0x0c0c000a, + PR_PHYSICAL_FORWARDING_ADDRESS = 0x0c0d0102, + PR_PHYSICAL_FORWARDING_ADDRESS_ERROR = 0x0c0d000a, + PR_PHYSICAL_FORWARDING_ADDRESS_REQUESTED = 0x0c0e000b, + PR_PHYSICAL_FORWARDING_ADDRESS_REQUESTED_ERROR = 0x0c0e000a, + PR_PHYSICAL_FORWARDING_PROHIBITED = 0x0c0f000b, + PR_PHYSICAL_FORWARDING_PROHIBITED_ERROR = 0x0c0f000a, + PR_PHYSICAL_RENDITION_ATTRIBUTES = 0x0c100102, + PR_PHYSICAL_RENDITION_ATTRIBUTES_ERROR = 0x0c10000a, + PR_PROOF_OF_DELIVERY = 0x0c110102, + PR_PROOF_OF_DELIVERY_ERROR = 0x0c11000a, + PR_PROOF_OF_DELIVERY_REQUESTED = 0x0c12000b, + PR_PROOF_OF_DELIVERY_REQUESTED_ERROR = 0x0c12000a, + PR_RECIPIENT_CERTIFICATE = 0x0c130102, + PR_RECIPIENT_CERTIFICATE_ERROR = 0x0c13000a, + PR_RECIPIENT_NUMBER_FOR_ADVICE = 0x0c14001e, + PR_RECIPIENT_NUMBER_FOR_ADVICE_UNICODE = 0x0c14001f, + PR_RECIPIENT_NUMBER_FOR_ADVICE_ERROR = 0x0c14000a, + PR_RECIPIENT_TYPE = 0x0c150003, + PR_RECIPIENT_TYPE_ERROR = 0x0c15000a, + PR_REGISTERED_MAIL_TYPE = 0x0c160003, + PR_REGISTERED_MAIL_TYPE_ERROR = 0x0c16000a, + PR_REPLY_REQUESTED = 0x0c17000b, + PR_REPLY_REQUESTED_ERROR = 0x0c17000a, + PR_REQUESTED_DELIVERY_METHOD = 0x0c180003, + PR_REQUESTED_DELIVERY_METHOD_ERROR = 0x0c18000a, + PR_SENDER_ENTRYID = 0x0c190102, + PR_SENDER_ENTRYID_ERROR = 0x0c19000a, + PR_SENDER_NAME = 0x0c1a001e, + PR_SENDER_NAME_UNICODE = 0x0c1a001f, + PR_SENDER_NAME_ERROR = 0x0c1a000a, + PR_SUPPLEMENTARY_INFO = 0x0c1b001e, + PR_SUPPLEMENTARY_INFO_UNICODE = 0x0c1b001f, + PR_SUPPLEMENTARY_INFO_ERROR = 0x0c1b000a, + PR_TYPE_OF_MTS_USER = 0x0c1c0003, + PR_TYPE_OF_MTS_USER_ERROR = 0x0c1c000a, + PR_SENDER_SEARCH_KEY = 0x0c1d0102, + PR_SENDER_SEARCH_KEY_ERROR = 0x0c1d000a, + PR_SENDER_ADDRTYPE = 0x0c1e001e, + PR_SENDER_ADDRTYPE_UNICODE = 0x0c1e001f, + PR_SENDER_ADDRTYPE_ERROR = 0x0c1e000a, + PR_SENDER_EMAIL_ADDRESS = 0x0c1f001e, + PR_SENDER_EMAIL_ADDRESS_UNICODE = 0x0c1f001f, + PR_SENDER_EMAIL_ADDRESS_ERROR = 0x0c1f000a, + PR_CURRENT_VERSION = 0x0e000014, + PR_CURRENT_VERSION_ERROR = 0x0e00000a, + PR_DELETE_AFTER_SUBMIT = 0x0e01000b, + PR_DELETE_AFTER_SUBMIT_ERROR = 0x0e01000a, + PR_DISPLAY_BCC = 0x0e02001e, + PR_DISPLAY_BCC_UNICODE = 0x0e02001f, + PR_DISPLAY_BCC_ERROR = 0x0e02000a, + PR_DISPLAY_CC = 0x0e03001e, + PR_DISPLAY_CC_UNICODE = 0x0e03001f, + PR_DISPLAY_CC_ERROR = 0x0e03000a, + PR_DISPLAY_TO = 0x0e04001e, + PR_DISPLAY_TO_UNICODE = 0x0e04001f, + PR_DISPLAY_TO_ERROR = 0x0e04000a, + PR_PARENT_DISPLAY = 0x0e05001e, + PR_PARENT_DISPLAY_UNICODE = 0x0e05001f, + PR_PARENT_DISPLAY_ERROR = 0x0e05000a, + PR_MESSAGE_DELIVERY_TIME = 0x0e060040, + PR_MESSAGE_DELIVERY_TIME_ERROR = 0x0e06000a, + PR_MESSAGE_FLAGS = 0x0e070003, + PR_MESSAGE_FLAGS_ERROR = 0x0e07000a, + PR_MESSAGE_SIZE = 0x0e080003, + PR_MESSAGE_SIZE_ERROR = 0x0e08000a, + PR_MESSAGE_SIZE_EXTENDED = 0x0e080014, + PR_PARENT_ENTRYID = 0x0e090102, + PR_PARENT_ENTRYID_ERROR = 0x0e09000a, + PR_SENTMAIL_ENTRYID = 0x0e0a0102, + PR_SENTMAIL_ENTRYID_ERROR = 0x0e0a000a, + PR_CORRELATE = 0x0e0c000b, + PR_CORRELATE_ERROR = 0x0e0c000a, + PR_CORRELATE_MTSID = 0x0e0d0102, + PR_CORRELATE_MTSID_ERROR = 0x0e0d000a, + PR_DISCRETE_VALUES = 0x0e0e000b, + PR_DISCRETE_VALUES_ERROR = 0x0e0e000a, + PR_RESPONSIBILITY = 0x0e0f000b, + PR_RESPONSIBILITY_ERROR = 0x0e0f000a, + PR_SPOOLER_STATUS = 0x0e100003, + PR_SPOOLER_STATUS_ERROR = 0x0e10000a, + PR_TRANSPORT_STATUS = 0x0e110003, + PR_TRANSPORT_STATUS_ERROR = 0x0e11000a, + PR_MESSAGE_RECIPIENTS = 0x0e12000d, + PR_MESSAGE_RECIPIENTS_ERROR = 0x0e12000a, + PR_MESSAGE_ATTACHMENTS = 0x0e13000d, + PR_MESSAGE_ATTACHMENTS_ERROR = 0x0e13000a, + PR_SUBMIT_FLAGS = 0x0e140003, + PR_SUBMIT_FLAGS_ERROR = 0x0e14000a, + PR_RECIPIENT_STATUS = 0x0e150003, + PR_RECIPIENT_STATUS_ERROR = 0x0e15000a, + PR_TRANSPORT_KEY = 0x0e160003, + PR_TRANSPORT_KEY_ERROR = 0x0e16000a, + PR_MSG_STATUS = 0x0e170003, + PR_MSG_STATUS_ERROR = 0x0e17000a, + PR_MESSAGE_DOWNLOAD_TIME = 0x0e180003, + PR_MESSAGE_DOWNLOAD_TIME_ERROR = 0x0e18000a, + PR_CREATION_VERSION = 0x0e190014, + PR_CREATION_VERSION_ERROR = 0x0e19000a, + PR_MODIFY_VERSION = 0x0e1a0014, + PR_MODIFY_VERSION_ERROR = 0x0e1a000a, + PR_HASATTACH = 0x0e1b000b, + PR_HASATTACH_ERROR = 0x0e1b000a, + PR_BODY_CRC = 0x0e1c0003, + PR_BODY_CRC_ERROR = 0x0e1c000a, + PR_NORMALIZED_SUBJECT = 0x0e1d001e, + PR_NORMALIZED_SUBJECT_UNICODE = 0x0e1d001f, + PR_NORMALIZED_SUBJECT_ERROR = 0x0e1d000a, + PR_RTF_IN_SYNC = 0x0e1f000b, + PR_RTF_IN_SYNC_ERROR = 0x0e1f000a, + PR_ATTACH_SIZE = 0x0e200003, + PR_ATTACH_SIZE_ERROR = 0x0e20000a, + PR_ATTACH_NUM = 0x0e210003, + PR_ATTACH_NUM_ERROR = 0x0e21000a, + PR_PREPROCESS = 0x0e22000b, + PR_PREPROCESS_ERROR = 0x0e22000a, + PR_INTERNET_ARTICLE_NUMBER = 0x0e230003, + PR_INTERNET_ARTICLE_NUMBER_ERROR = 0x0e23000a, + PR_NEWSGROUP_NAME = 0x0e24001e, + PR_NEWSGROUP_NAME_UNICODE = 0x0e24001f, + PR_NEWSGROUP_NAME_ERROR = 0x0e24000a, + PR_ORIGINATING_MTA_CERTIFICATE = 0x0e250102, + PR_ORIGINATING_MTA_CERTIFICATE_ERROR = 0x0e25000a, + PR_PROOF_OF_SUBMISSION = 0x0e260102, + PR_PROOF_OF_SUBMISSION_ERROR = 0x0e26000a, + PR_NT_SECURITY_DESCRIPTOR = 0x0e270102, + PR_NT_SECURITY_DESCRIPTOR_ERROR = 0x0e27000a, + PR_CREATOR_SID = 0x0e580102, + PR_CREATOR_SID_ERROR = 0x0e58000a, + PR_LAST_MODIFIER_SID = 0x0e590102, + PR_LAST_MODIFIER_SID_ERROR = 0x0e59000a, + PR_MIME_HANDLER_CLASSIDS = 0x0e5e0048, + PR_MIME_HANDLER_CLASSIDS_ERROR = 0x0e5e000a, + PR_URL_COMP_NAME_POSTFIX = 0x0e610003, + PR_URL_COMP_NAME_POSTFIX_ERROR = 0x0e61000a, + PR_URL_COMP_NAME_SET = 0x0e62000b, + PR_URL_COMP_NAME_SET_ERROR = 0x0e62000a, + PR_SUBFOLDER_CT = 0x0e630003, + PR_SUBFOLDER_CT_ERROR = 0x0e63000a, + PR_DELETED_SUBFOLDER_CT = 0x0e640003, + PR_DELETED_SUBFOLDER_CT_ERROR = 0x0e64000a, + PR_DELETE_TIME = 0x0e660040, + PR_DELETE_TIME_ERROR = 0x0e66000a, + PR_AGE_LIMIT = 0x0e670102, + PR_AGE_LIMIT_ERROR = 0x0e67000a, + PR_TRUST_SENDER = 0x0e790003, + PR_TRUST_SENDER_ERROR = 0x0e79000a, + PR_ATTACH_VIRUS_SCAN_INFO = 0x0e960102, + PR_ATTACH_VIRUS_SCAN_INFO_ERROR = 0x0e96000a, + PR_ACCESS = 0x0ff40003, + PR_ACCESS_ERROR = 0x0ff4000a, + PR_ROW_TYPE = 0x0ff50003, + PR_ROW_TYPE_ERROR = 0x0ff5000a, + PR_INSTANCE_KEY = 0x0ff60102, + PR_INSTANCE_KEY_ERROR = 0x0ff6000a, + PR_ACCESS_LEVEL = 0x0ff70003, + PR_ACCESS_LEVEL_ERROR = 0x0ff7000a, + PR_MAPPING_SIGNATURE = 0x0ff80102, + PR_MAPPING_SIGNATURE_ERROR = 0x0ff8000a, + PR_RECORD_KEY = 0x0ff90102, + PR_RECORD_KEY_ERROR = 0x0ff9000a, + PR_STORE_RECORD_KEY = 0x0ffa0102, + PR_STORE_RECORD_KEY_ERROR = 0x0ffa000a, + PR_STORE_ENTRYID = 0x0ffb0102, + PR_STORE_ENTRYID_ERROR = 0x0ffb000a, + PR_MINI_ICON = 0x0ffc0102, + PR_MINI_ICON_ERROR = 0x0ffc000a, + PR_ICON = 0x0ffd0102, + PR_ICON_ERROR = 0x0ffd000a, + PR_OBJECT_TYPE = 0x0ffe0003, + PR_OBJECT_TYPE_ERROR = 0x0ffe000a, + PR_ENTRYID = 0x0fff0102, + PR_ENTRYID_ERROR = 0x0fff000a, + PR_BODY = 0x1000001e, + PR_BODY_UNICODE = 0x1000001f, + PR_BODY_ERROR = 0x1000000a, + PR_REPORT_TEXT = 0x1001001e, + PR_REPORT_TEXT_UNICODE = 0x1001001f, + PR_REPORT_TEXT_ERROR = 0x1001000a, + PR_ORIGINATOR_AND_DL_EXPANSION_HISTORY = 0x10020102, + PR_ORIGINATOR_AND_DL_EXPANSION_HISTORY_ERROR = 0x1002000a, + PR_REPORTING_DL_NAME = 0x10030102, + PR_REPORTING_DL_NAME_ERROR = 0x1003000a, + PR_REPORTING_MTA_CERTIFICATE = 0x10040102, + PR_REPORTING_MTA_CERTIFICATE_ERROR = 0x1004000a, + PR_RTF_SYNC_BODY_CRC = 0x10060003, + PR_RTF_SYNC_BODY_CRC_ERROR = 0x1006000a, + PR_RTF_SYNC_BODY_COUNT = 0x10070003, + PR_RTF_SYNC_BODY_COUNT_ERROR = 0x1007000a, + PR_RTF_SYNC_BODY_TAG = 0x1008001e, + PR_RTF_SYNC_BODY_TAG_UNICODE = 0x1008001f, + PR_RTF_SYNC_BODY_TAG_ERROR = 0x1008000a, + PR_RTF_COMPRESSED = 0x10090102, + PR_RTF_COMPRESSED_ERROR = 0x1009000a, + PR_RTF_SYNC_PREFIX_COUNT = 0x10100003, + PR_RTF_SYNC_PREFIX_COUNT_ERROR = 0x1010000a, + PR_RTF_SYNC_TRAILING_COUNT = 0x10110003, + PR_RTF_SYNC_TRAILING_COUNT_ERROR = 0x1011000a, + PR_ORIGINALLY_INTENDED_RECIP_ENTRYID = 0x10120102, + PR_ORIGINALLY_INTENDED_RECIP_ENTRYID_ERROR = 0x1012000a, + PR_HTML = 0x10130102, + PR_HTML_ERROR = 0x1013000a, + PR_INTERNET_APPROVED = 0x1030001e, + PR_INTERNET_APPROVED_UNICODE = 0x1030001f, + PR_INTERNET_APPROVED_ERROR = 0x1030000a, + PR_INTERNET_CONTROL = 0x1031001e, + PR_INTERNET_CONTROL_UNICODE = 0x1031001f, + PR_INTERNET_CONTROL_ERROR = 0x1031000a, + PR_INTERNET_DISTRIBUTION = 0x1032001e, + PR_INTERNET_DISTRIBUTION_UNICODE = 0x1032001f, + PR_INTERNET_DISTRIBUTION_ERROR = 0x1032000a, + PR_INTERNET_FOLLOWUP_TO = 0x1033001e, + PR_INTERNET_FOLLOWUP_TO_UNICODE = 0x1033001f, + PR_INTERNET_FOLLOWUP_TO_ERROR = 0x1033000a, + PR_INTERNET_LINES = 0x10340003, + PR_INTERNET_LINES_ERROR = 0x1034000a, + PR_INTERNET_MESSAGE_ID = 0x1035001e, + PR_INTERNET_MESSAGE_ID_UNICODE = 0x1035001f, + PR_INTERNET_MESSAGE_ID_ERROR = 0x1035000a, + PR_INTERNET_NEWSGROUPS = 0x1036001e, + PR_INTERNET_NEWSGROUPS_UNICODE = 0x1036001f, + PR_INTERNET_NEWSGROUPS_ERROR = 0x1036000a, + PR_INTERNET_ORGANIZATION = 0x1037001e, + PR_INTERNET_ORGANIZATION_UNICODE = 0x1037001f, + PR_INTERNET_ORGANIZATION_ERROR = 0x1037000a, + PR_INTERNET_NNTP_PATH = 0x1038001e, + PR_INTERNET_NNTP_PATH_UNICODE = 0x1038001f, + PR_INTERNET_NNTP_PATH_ERROR = 0x1038000a, + PR_INTERNET_REFERENCES = 0x1039001e, + PR_INTERNET_REFERENCES_UNICODE = 0x1039001f, + PR_INTERNET_REFERENCES_ERROR = 0x1039000a, + PR_SUPERSEDES = 0x103a001e, + PR_SUPERSEDES_UNICODE = 0x103a001f, + PR_SUPERSEDES_ERROR = 0x103a000a, + PR_POST_FOLDER_ENTRIES = 0x103b0102, + PR_POST_FOLDER_ENTRIES_ERROR = 0x103b000a, + PR_POST_FOLDER_NAMES = 0x103c001e, + PR_POST_FOLDER_NAMES_UNICODE = 0x103c001f, + PR_POST_FOLDER_NAMES_ERROR = 0x103c000a, + PR_POST_REPLY_FOLDER_ENTRIES = 0x103d0102, + PR_POST_REPLY_FOLDER_ENTRIES_ERROR = 0x103d000a, + PR_POST_REPLY_FOLDER_NAMES = 0x103e001e, + PR_POST_REPLY_FOLDER_NAMES_UNICODE = 0x103e001f, + PR_POST_REPLY_FOLDER_NAMES_ERROR = 0x103e000a, + PR_POST_REPLY_DENIED = 0x103f0102, + PR_POST_REPLY_DENIED_ERROR = 0x103f000a, + PR_NNTP_XREF = 0x1040001e, + PR_NNTP_XREF_UNICODE = 0x1040001f, + PR_NNTP_XREF_ERROR = 0x1040000a, + PR_INTERNET_PRECEDENCE = 0x1041001e, + PR_INTERNET_PRECEDENCE_UNICODE = 0x1041001f, + PR_INTERNET_PRECEDENCE_ERROR = 0x1041000a, + PR_IN_REPLY_TO_ID = 0x1042001e, + PR_IN_REPLY_TO_ID_UNICODE = 0x1042001f, + PR_IN_REPLY_TO_ID_ERROR = 0x1042000a, + PR_LIST_HELP = 0x1043001e, + PR_LIST_HELP_UNICODE = 0x1043001f, + PR_LIST_HELP_ERROR = 0x1043000a, + PR_LIST_SUBSCRIBE = 0x1044001e, + PR_LIST_SUBSCRIBE_UNICODE = 0x1044001f, + PR_LIST_SUBSCRIBE_ERROR = 0x1044000a, + PR_LIST_UNSUBSCRIBE = 0x1045001e, + PR_LIST_UNSUBSCRIBE_UNICODE = 0x1045001f, + PR_LIST_UNSUBSCRIBE_ERROR = 0x1045000a, + PR_ACTION = 0x10800003, + PR_ACTION_ERROR = 0x1080000a, + PR_ACTION_FLAG = 0x10810003, + PR_ACTION_FLAG_ERROR = 0x1081000a, + PR_ACTION_DATE = 0x10820040, + PR_ACTION_DATE_ERROR = 0x1082000a, + PR_FLAG_STATUS = 0x10900003, + PR_FLAG_STATUS_ERROR = 0x1090000a, + PR_FLAG_COMPLETE = 0x10910040, + PR_FLAG_COMPLETE_ERROR = 0x1091000a, + PR_SMTP_TEMP_TBL_DATA = 0x10c00102, + PR_SMTP_TEMP_TBL_DATA_ERROR = 0x10c0000a, + PR_SMTP_TEMP_TBL_DATA_2 = 0x10c10003, + PR_SMTP_TEMP_TBL_DATA_2_ERROR = 0x10c1000a, + PR_SMTP_TEMP_TBL_DATA_3 = 0x10c20102, + PR_SMTP_TEMP_TBL_DATA_3_ERROR = 0x10c2000a, + PR_CAL_START_TIME = 0x10c30040, + PR_CAL_START_TIME_ERROR = 0x10c3000a, + PR_CAL_END_TIME = 0x10c40040, + PR_CAL_END_TIME_ERROR = 0x10c4000a, + PR_CAL_RECURRING_ID = 0x10c50040, + PR_CAL_RECURRING_ID_ERROR = 0x10c5000a, + PR_DAV_SUBMIT_DATA = 0x10c6001e, + PR_DAV_SUBMIT_DATA_UNICODE = 0x10c6001f, + PR_DAV_SUBMIT_DATA_ERROR = 0x10c6000a, + PR_CDO_EXPANSION_INDEX = 0x10c70003, + PR_CDO_EXPANSION_INDEX_ERROR = 0x10c7000a, + PR_IFS_INTERNAL_DATA = 0x10c80102, + PR_IFS_INTERNAL_DATA_ERROR = 0x10c8000a, + PR_CAL_REMINDER_NEXT_TIME = 0x10ca0040, + PR_CAL_REMINDER_NEXT_TIME_ERROR = 0x10ca000a, + PR_OWA_URL = 0x10f1001e, + PR_OWA_URL_UNICODE = 0x10f1001f, + PR_OWA_URL_ERROR = 0x10f1000a, + PR_DISABLE_FULL_FIDELITY = 0x10f2000b, + PR_DISABLE_FULL_FIDELITY_ERROR = 0x10f2000a, + PR_URL_COMP_NAME = 0x10f3001e, + PR_URL_COMP_NAME_UNICODE = 0x10f3001f, + PR_URL_COMP_NAME_ERROR = 0x10f3000a, + PR_ATTR_HIDDEN = 0x10f4000b, + PR_ATTR_HIDDEN_ERROR = 0x10f4000a, + PR_ATTR_SYSTEM = 0x10f5000b, + PR_ATTR_SYSTEM_ERROR = 0x10f5000a, + PR_ATTR_READONLY = 0x10f6000b, + PR_ATTR_READONLY_ERROR = 0x10f6000a, + PR_P1_CONTENT = 0x11000102, + PR_P1_CONTENT_ERROR = 0x1100000a, + PR_P1_CONTENT_TYPE = 0x11010102, + PR_P1_CONTENT_TYPE_ERROR = 0x1101000a, + PR_ROWID = 0x30000003, + PR_ROWID_ERROR = 0x3000000a, + PR_DISPLAY_NAME = 0x3001001e, + PR_DISPLAY_NAME_UNICODE = 0x3001001f, + PR_DISPLAY_NAME_ERROR = 0x3001000a, + PR_ADDRTYPE = 0x3002001e, + PR_ADDRTYPE_UNICODE = 0x3002001f, + PR_ADDRTYPE_ERROR = 0x3002000a, + PR_EMAIL_ADDRESS = 0x3003001e, + PR_EMAIL_ADDRESS_UNICODE = 0x3003001f, + PR_EMAIL_ADDRESS_ERROR = 0x3003000a, + PR_COMMENT = 0x3004001e, + PR_COMMENT_UNICODE = 0x3004001f, + PR_COMMENT_ERROR = 0x3004000a, + PR_DEPTH = 0x30050003, + PR_DEPTH_ERROR = 0x3005000a, + PR_PROVIDER_DISPLAY = 0x3006001e, + PR_PROVIDER_DISPLAY_UNICODE = 0x3006001f, + PR_PROVIDER_DISPLAY_ERROR = 0x3006000a, + PR_CREATION_TIME = 0x30070040, + PR_CREATION_TIME_ERROR = 0x3007000a, + PR_LAST_MODIFICATION_TIME = 0x30080040, + PR_LAST_MODIFICATION_TIME_ERROR = 0x3008000a, + PR_RESOURCE_FLAGS = 0x30090003, + PR_RESOURCE_FLAGS_ERROR = 0x3009000a, + PR_PROVIDER_DLL_NAME = 0x300a001e, + PR_PROVIDER_DLL_NAME_UNICODE = 0x300a001f, + PR_PROVIDER_DLL_NAME_ERROR = 0x300a000a, + PR_SEARCH_KEY = 0x300b0102, + PR_SEARCH_KEY_ERROR = 0x300b000a, + PR_PROVIDER_UID = 0x300c0102, + PR_PROVIDER_UID_ERROR = 0x300c000a, + PR_PROVIDER_ORDINAL = 0x300d0003, + PR_PROVIDER_ORDINAL_ERROR = 0x300d000a, + PR_FORM_VERSION = 0x3301001e, + PR_FORM_VERSION_UNICODE = 0x3301001f, + PR_FORM_VERSION_ERROR = 0x3301000a, + PR_FORM_CLSID = 0x33020048, + PR_FORM_CLSID_ERROR = 0x3302000a, + PR_FORM_CONTACT_NAME = 0x3303001e, + PR_FORM_CONTACT_NAME_UNICODE = 0x3303001f, + PR_FORM_CONTACT_NAME_ERROR = 0x3303000a, + PR_FORM_CATEGORY = 0x3304001e, + PR_FORM_CATEGORY_UNICODE = 0x3304001f, + PR_FORM_CATEGORY_ERROR = 0x3304000a, + PR_FORM_CATEGORY_SUB = 0x3305001e, + PR_FORM_CATEGORY_SUB_UNICODE = 0x3305001f, + PR_FORM_CATEGORY_SUB_ERROR = 0x3305000a, + PR_FORM_HOST_MAP = 0x33061003, + PR_FORM_HOST_MAP_ERROR = 0x3306000a, + PR_FORM_HIDDEN = 0x3307000b, + PR_FORM_HIDDEN_ERROR = 0x3307000a, + PR_FORM_DESIGNER_NAME = 0x3308001e, + PR_FORM_DESIGNER_NAME_UNICODE = 0x3308001f, + PR_FORM_DESIGNER_NAME_ERROR = 0x3308000a, + PR_FORM_DESIGNER_GUID = 0x33090048, + PR_FORM_DESIGNER_GUID_ERROR = 0x3309000a, + PR_FORM_MESSAGE_BEHAVIOR = 0x330a0003, + PR_FORM_MESSAGE_BEHAVIOR_ERROR = 0x330a000a, + PR_DEFAULT_STORE = 0x3400000b, + PR_DEFAULT_STORE_ERROR = 0x3400000a, + PR_STORE_SUPPORT_MASK = 0x340d0003, + PR_STORE_SUPPORT_MASK_ERROR = 0x340d000a, + PR_STORE_STATE = 0x340e0003, + PR_STORE_STATE_ERROR = 0x340e000a, + PR_IPM_SUBTREE_SEARCH_KEY = 0x34100102, + PR_IPM_SUBTREE_SEARCH_KEY_ERROR = 0x3410000a, + PR_IPM_OUTBOX_SEARCH_KEY = 0x34110102, + PR_IPM_OUTBOX_SEARCH_KEY_ERROR = 0x3411000a, + PR_IPM_WASTEBASKET_SEARCH_KEY = 0x34120102, + PR_IPM_WASTEBASKET_SEARCH_KEY_ERROR = 0x3412000a, + PR_IPM_SENTMAIL_SEARCH_KEY = 0x34130102, + PR_IPM_SENTMAIL_SEARCH_KEY_ERROR = 0x3413000a, + PR_MDB_PROVIDER = 0x34140102, + PR_MDB_PROVIDER_ERROR = 0x3414000a, + PR_RECEIVE_FOLDER_SETTINGS = 0x3415000d, + PR_RECEIVE_FOLDER_SETTINGS_ERROR = 0x3415000a, + PR_VALID_FOLDER_MASK = 0x35df0003, + PR_VALID_FOLDER_MASK_ERROR = 0x35df000a, + PR_IPM_SUBTREE_ENTRYID = 0x35e00102, + PR_IPM_SUBTREE_ENTRYID_ERROR = 0x35e0000a, + PR_IPM_OUTBOX_ENTRYID = 0x35e20102, + PR_IPM_OUTBOX_ENTRYID_ERROR = 0x35e2000a, + PR_IPM_WASTEBASKET_ENTRYID = 0x35e30102, + PR_IPM_WASTEBASKET_ENTRYID_ERROR = 0x35e3000a, + PR_IPM_SENTMAIL_ENTRYID = 0x35e40102, + PR_IPM_SENTMAIL_ENTRYID_ERROR = 0x35e4000a, + PR_VIEWS_ENTRYID = 0x35e50102, + PR_VIEWS_ENTRYID_ERROR = 0x35e5000a, + PR_COMMON_VIEWS_ENTRYID = 0x35e60102, + PR_COMMON_VIEWS_ENTRYID_ERROR = 0x35e6000a, + PR_FINDER_ENTRYID = 0x35e70102, + PR_FINDER_ENTRYID_ERROR = 0x35e7000a, + PR_CONTAINER_FLAGS = 0x36000003, + PR_CONTAINER_FLAGS_ERROR = 0x3600000a, + PR_FOLDER_TYPE = 0x36010003, + PR_FOLDER_TYPE_ERROR = 0x3601000a, + PR_CONTENT_COUNT = 0x36020003, + PR_CONTENT_COUNT_ERROR = 0x3602000a, + PR_CONTENT_UNREAD = 0x36030003, + PR_CONTENT_UNREAD_ERROR = 0x3603000a, + PR_CREATE_TEMPLATES = 0x3604000d, + PR_CREATE_TEMPLATES_ERROR = 0x3604000a, + PR_DETAILS_TABLE = 0x3605000d, + PR_DETAILS_TABLE_ERROR = 0x3605000a, + PR_SEARCH = 0x3607000d, + PR_SEARCH_ERROR = 0x3607000a, + PR_SELECTABLE = 0x3609000b, + PR_SELECTABLE_ERROR = 0x3609000a, + PR_SUBFOLDERS = 0x360a000b, + PR_SUBFOLDERS_ERROR = 0x360a000a, + PR_STATUS = 0x360b0003, + PR_STATUS_ERROR = 0x360b000a, + PR_ANR = 0x360c001e, + PR_ANR_UNICODE = 0x360c001f, + PR_ANR_ERROR = 0x360c000a, + PR_CONTENTS_SORT_ORDER = 0x360d1003, + PR_CONTENTS_SORT_ORDER_ERROR = 0x360d000a, + PR_CONTAINER_HIERARCHY = 0x360e000d, + PR_CONTAINER_HIERARCHY_ERROR = 0x360e000a, + PR_CONTAINER_CONTENTS = 0x360f000d, + PR_CONTAINER_CONTENTS_ERROR = 0x360f000a, + PR_FOLDER_ASSOCIATED_CONTENTS = 0x3610000d, + PR_FOLDER_ASSOCIATED_CONTENTS_ERROR = 0x3610000a, + PR_DEF_CREATE_DL = 0x36110102, + PR_DEF_CREATE_DL_ERROR = 0x3611000a, + PR_DEF_CREATE_MAILUSER = 0x36120102, + PR_DEF_CREATE_MAILUSER_ERROR = 0x3612000a, + PR_CONTAINER_CLASS = 0x3613001e, + PR_CONTAINER_CLASS_UNICODE = 0x3613001f, + PR_CONTAINER_CLASS_ERROR = 0x3613000a, + PR_CONTAINER_MODIFY_VERSION = 0x36140014, + PR_CONTAINER_MODIFY_VERSION_ERROR = 0x3614000a, + PR_AB_PROVIDER_ID = 0x36150102, + PR_AB_PROVIDER_ID_ERROR = 0x3615000a, + PR_DEFAULT_VIEW_ENTRYID = 0x36160102, + PR_DEFAULT_VIEW_ENTRYID_ERROR = 0x3616000a, + PR_ASSOC_CONTENT_COUNT = 0x36170003, + PR_ASSOC_CONTENT_COUNT_ERROR = 0x3617000a, + PR_PACKED_NAME_PROPS = 0x361c0102, + PR_PACKED_NAME_PROPS_ERROR = 0x361c000a, + PR_IPM_APPOINTMENT_ENTRYID = 0x36d00102, + PR_IPM_APPOINTMENT_ENTRYID_ERROR = 0x36d0000a, + PR_IPM_CONTACT_ENTRYID = 0x36d10102, + PR_IPM_CONTACT_ENTRYID_ERROR = 0x36d1000a, + PR_IPM_JOURNAL_ENTRYID = 0x36d20102, + PR_IPM_JOURNAL_ENTRYID_ERROR = 0x36d2000a, + PR_IPM_NOTE_ENTRYID = 0x36d30102, + PR_IPM_NOTE_ENTRYID_ERROR = 0x36d3000a, + PR_IPM_TASK_ENTRYID = 0x36d40102, + PR_IPM_TASK_ENTRYID_ERROR = 0x36d4000a, + PR_REMINDERS_ONLINE_ENTRYID = 0x36d50102, + PR_REMINDERS_ONLINE_ENTRYID_ERROR = 0x36d5000a, + PR_REMINDERS_OFFLINE_ENTRYID = 0x36d60102, + PR_REMINDERS_OFFLINE_ENTRYID_ERROR = 0x36d6000a, + PR_IPM_DRAFTS_ENTRYID = 0x36d70102, + PR_IPM_DRAFTS_ENTRYID_ERROR = 0x36d7000a, + PR_OUTLOOK_2003_ENTRYIDS = 0x36d81102, + PR_OUTLOOK_2003_ENTRYIDS_ERROR = 0x36d8000a, + PR_FOLDER_WEBVIEWINFO = 0x36df0102, + PR_FOLDER_WEBVIEWINFO_ERROR = 0x36df000a, + PR_FOLDER_XVIEWINFO_E = 0x36e00102, + PR_FOLDER_XVIEWINFO_E_ERROR = 0x36e0000a, + PR_FOLDER_VIEWS_ONLY = 0x36e10003, + PR_FOLDER_VIEWS_ONLY_ERROR = 0x36e1000a, + PR_FREEBUSY_ENTRYIDS = 0x36e41102, + PR_FREEBUSY_ENTRYIDS_ERROR = 0x36e4000a, + PR_DEF_MSG_CLASS = 0x36e5001e, + PR_DEF_MSG_CLASS_UNICODE = 0x36e5001f, + PR_DEF_MSG_CLASS_ERROR = 0x36e5000a, + PR_DEF_FORM_NAME = 0x36e6001e, + PR_DEF_FORM_NAME_UNICODE = 0x36e6001f, + PR_DEF_FORM_NAME_ERROR = 0x36e6000a, + PR_GENERATE_EXCHANGE_VIEWS = 0x36e9000b, + PR_GENERATE_EXCHANGE_VIEWS_ERROR = 0x36e9000a, + PR_AGING_PERIOD = 0x36ec0003, + PR_AGING_PERIOD_ERROR = 0x36ec000a, + PR_AGING_GRANULARITY = 0x36ee0003, + PR_AGING_GRANULARITY_ERROR = 0x36ee000a, + PR_ATTACHMENT_X400_PARAMETERS = 0x37000102, + PR_ATTACHMENT_X400_PARAMETERS_ERROR = 0x3700000a, + PR_ATTACH_DATA_OBJ = 0x3701000d, + PR_ATTACH_DATA_OBJ_ERROR = 0x3701000a, + PR_ATTACH_DATA_BIN = 0x37010102, + PR_ATTACH_ENCODING = 0x37020102, + PR_ATTACH_ENCODING_ERROR = 0x3702000a, + PR_ATTACH_EXTENSION = 0x3703001e, + PR_ATTACH_EXTENSION_UNICODE = 0x3703001f, + PR_ATTACH_EXTENSION_ERROR = 0x3703000a, + PR_ATTACH_FILENAME = 0x3704001e, + PR_ATTACH_FILENAME_UNICODE = 0x3704001f, + PR_ATTACH_FILENAME_ERROR = 0x3704000a, + PR_ATTACH_METHOD = 0x37050003, + PR_ATTACH_METHOD_ERROR = 0x3705000a, + PR_ATTACH_LONG_FILENAME = 0x3707001e, + PR_ATTACH_LONG_FILENAME_UNICODE = 0x3707001f, + PR_ATTACH_LONG_FILENAME_ERROR = 0x3707000a, + PR_ATTACH_PATHNAME = 0x3708001e, + PR_ATTACH_PATHNAME_UNICODE = 0x3708001f, + PR_ATTACH_PATHNAME_ERROR = 0x3708000a, + PR_ATTACH_RENDERING = 0x37090102, + PR_ATTACH_RENDERING_ERROR = 0x3709000a, + PR_ATTACH_TAG = 0x370a0102, + PR_ATTACH_TAG_ERROR = 0x370a000a, + PR_RENDERING_POSITION = 0x370b0003, + PR_RENDERING_POSITION_ERROR = 0x370b000a, + PR_ATTACH_TRANSPORT_NAME = 0x370c001e, + PR_ATTACH_TRANSPORT_NAME_UNICODE = 0x370c001f, + PR_ATTACH_TRANSPORT_NAME_ERROR = 0x370c000a, + PR_ATTACH_LONG_PATHNAME = 0x370d001e, + PR_ATTACH_LONG_PATHNAME_UNICODE = 0x370d001f, + PR_ATTACH_LONG_PATHNAME_ERROR = 0x370d000a, + PR_ATTACH_MIME_TAG = 0x370e001e, + PR_ATTACH_MIME_TAG_UNICODE = 0x370e001f, + PR_ATTACH_MIME_TAG_ERROR = 0x370e000a, + PR_ATTACH_ADDITIONAL_INFO = 0x370f0102, + PR_ATTACH_ADDITIONAL_INFO_ERROR = 0x370f000a, + PR_ATTACH_CONTENT_ID = 0x3712001e, + PR_ATTACH_CONTENT_ID_UNICODE = 0x3712001f, + PR_ATTACH_CONTENT_ID_ERROR = 0x3712000a, + PR_ATTACH_CONTENT_LOCATION = 0x3713001e, + PR_ATTACH_CONTENT_LOCATION_UNICODE = 0x3713001f, + PR_ATTACH_CONTENT_LOCATION_ERROR = 0x3713000a, + PR_ATTACH_FLAGS = 0x37140003, + PR_ATTACH_FLAGS_ERROR = 0x3714000a, + PR_ATTACH_CONTENT_DISPOSITION = 0x3716001e, + PR_ATTACH_CONTENT_DISPOSITION_UNICODE = 0x3716001f, + PR_ATTACH_CONTENT_DISPOSITION_ERROR = 0x3716000a, + PR_SYNCEVENT_SUPPRESS_GUID = 0x38800102, + PR_SYNCEVENT_SUPPRESS_GUID_ERROR = 0x3880000a, + PR_DISPLAY_TYPE = 0x39000003, + PR_DISPLAY_TYPE_ERROR = 0x3900000a, + PR_TEMPLATEID = 0x39020102, + PR_TEMPLATEID_ERROR = 0x3902000a, + PR_PRIMARY_CAPABILITY = 0x39040102, + PR_PRIMARY_CAPABILITY_ERROR = 0x3904000a, + PR_SMTP_ADDRESS = 0x39fe001e, + PR_SMTP_ADDRESS_UNICODE = 0x39fe001f, + PR_SMTP_ADDRESS_ERROR = 0x39fe000a, + PR_7BIT_DISPLAY_NAME = 0x39ff001e, + PR_7BIT_DISPLAY_NAME_UNICODE = 0x39ff001f, + PR_7BIT_DISPLAY_NAME_ERROR = 0x39ff000a, + PR_ACCOUNT = 0x3a00001e, + PR_ACCOUNT_UNICODE = 0x3a00001f, + PR_ACCOUNT_ERROR = 0x3a00000a, + PR_ALTERNATE_RECIPIENT = 0x3a010102, + PR_ALTERNATE_RECIPIENT_ERROR = 0x3a01000a, + PR_CALLBACK_TELEPHONE_NUMBER = 0x3a02001e, + PR_CALLBACK_TELEPHONE_NUMBER_UNICODE = 0x3a02001f, + PR_CALLBACK_TELEPHONE_NUMBER_ERROR = 0x3a02000a, + PR_CONVERSION_PROHIBITED = 0x3a03000b, + PR_CONVERSION_PROHIBITED_ERROR = 0x3a03000a, + PR_DISCLOSE_RECIPIENTS = 0x3a04000b, + PR_DISCLOSE_RECIPIENTS_ERROR = 0x3a04000a, + PR_GENERATION = 0x3a05001e, + PR_GENERATION_UNICODE = 0x3a05001f, + PR_GENERATION_ERROR = 0x3a05000a, + PR_GIVEN_NAME = 0x3a06001e, + PR_GIVEN_NAME_UNICODE = 0x3a06001f, + PR_GIVEN_NAME_ERROR = 0x3a06000a, + PR_GOVERNMENT_ID_NUMBER = 0x3a07001e, + PR_GOVERNMENT_ID_NUMBER_UNICODE = 0x3a07001f, + PR_GOVERNMENT_ID_NUMBER_ERROR = 0x3a07000a, + PR_OFFICE_TELEPHONE_NUMBER = 0x3a08001e, + PR_OFFICE_TELEPHONE_NUMBER_UNICODE = 0x3a08001f, + PR_OFFICE_TELEPHONE_NUMBER_ERROR = 0x3a08000a, + PR_HOME_TELEPHONE_NUMBER = 0x3a09001e, + PR_HOME_TELEPHONE_NUMBER_UNICODE = 0x3a09001f, + PR_HOME_TELEPHONE_NUMBER_ERROR = 0x3a09000a, + PR_INITIALS = 0x3a0a001e, + PR_INITIALS_UNICODE = 0x3a0a001f, + PR_INITIALS_ERROR = 0x3a0a000a, + PR_KEYWORD = 0x3a0b001e, + PR_KEYWORD_UNICODE = 0x3a0b001f, + PR_KEYWORD_ERROR = 0x3a0b000a, + PR_LANGUAGE = 0x3a0c001e, + PR_LANGUAGE_UNICODE = 0x3a0c001f, + PR_LANGUAGE_ERROR = 0x3a0c000a, + PR_LOCATION = 0x3a0d001e, + PR_LOCATION_UNICODE = 0x3a0d001f, + PR_LOCATION_ERROR = 0x3a0d000a, + PR_MAIL_PERMISSION = 0x3a0e000b, + PR_MAIL_PERMISSION_ERROR = 0x3a0e000a, + PR_MHS_COMMON_NAME = 0x3a0f001e, + PR_MHS_COMMON_NAME_UNICODE = 0x3a0f001f, + PR_MHS_COMMON_NAME_ERROR = 0x3a0f000a, + PR_ORGANIZATIONAL_ID_NUMBER = 0x3a10001e, + PR_ORGANIZATIONAL_ID_NUMBER_UNICODE = 0x3a10001f, + PR_ORGANIZATIONAL_ID_NUMBER_ERROR = 0x3a10000a, + PR_SURNAME = 0x3a11001e, + PR_SURNAME_UNICODE = 0x3a11001f, + PR_SURNAME_ERROR = 0x3a11000a, + PR_ORIGINAL_ENTRYID = 0x3a120102, + PR_ORIGINAL_ENTRYID_ERROR = 0x3a12000a, + PR_ORIGINAL_DISPLAY_NAME = 0x3a13001e, + PR_ORIGINAL_DISPLAY_NAME_UNICODE = 0x3a13001f, + PR_ORIGINAL_DISPLAY_NAME_ERROR = 0x3a13000a, + PR_ORIGINAL_SEARCH_KEY = 0x3a140102, + PR_ORIGINAL_SEARCH_KEY_ERROR = 0x3a14000a, + PR_POSTAL_ADDRESS = 0x3a15001e, + PR_POSTAL_ADDRESS_UNICODE = 0x3a15001f, + PR_POSTAL_ADDRESS_ERROR = 0x3a15000a, + PR_COMPANY_NAME = 0x3a16001e, + PR_COMPANY_NAME_UNICODE = 0x3a16001f, + PR_COMPANY_NAME_ERROR = 0x3a16000a, + PR_TITLE = 0x3a17001e, + PR_TITLE_UNICODE = 0x3a17001f, + PR_TITLE_ERROR = 0x3a17000a, + PR_DEPARTMENT_NAME = 0x3a18001e, + PR_DEPARTMENT_NAME_UNICODE = 0x3a18001f, + PR_DEPARTMENT_NAME_ERROR = 0x3a18000a, + PR_OFFICE_LOCATION = 0x3a19001e, + PR_OFFICE_LOCATION_UNICODE = 0x3a19001f, + PR_OFFICE_LOCATION_ERROR = 0x3a19000a, + PR_PRIMARY_TELEPHONE_NUMBER = 0x3a1a001e, + PR_PRIMARY_TELEPHONE_NUMBER_UNICODE = 0x3a1a001f, + PR_PRIMARY_TELEPHONE_NUMBER_ERROR = 0x3a1a000a, + PR_OFFICE2_TELEPHONE_NUMBER = 0x3a1b001e, + PR_OFFICE2_TELEPHONE_NUMBER_UNICODE = 0x3a1b001f, + PR_OFFICE2_TELEPHONE_NUMBER_ERROR = 0x3a1b000a, + PR_MOBILE_TELEPHONE_NUMBER = 0x3a1c001e, + PR_MOBILE_TELEPHONE_NUMBER_UNICODE = 0x3a1c001f, + PR_MOBILE_TELEPHONE_NUMBER_ERROR = 0x3a1c000a, + PR_RADIO_TELEPHONE_NUMBER = 0x3a1d001e, + PR_RADIO_TELEPHONE_NUMBER_UNICODE = 0x3a1d001f, + PR_RADIO_TELEPHONE_NUMBER_ERROR = 0x3a1d000a, + PR_CAR_TELEPHONE_NUMBER = 0x3a1e001e, + PR_CAR_TELEPHONE_NUMBER_UNICODE = 0x3a1e001f, + PR_CAR_TELEPHONE_NUMBER_ERROR = 0x3a1e000a, + PR_OTHER_TELEPHONE_NUMBER = 0x3a1f001e, + PR_OTHER_TELEPHONE_NUMBER_UNICODE = 0x3a1f001f, + PR_OTHER_TELEPHONE_NUMBER_ERROR = 0x3a1f000a, + PR_TRANSMITTABLE_DISPLAY_NAME = 0x3a20001e, + PR_TRANSMITTABLE_DISPLAY_NAME_UNICODE = 0x3a20001f, + PR_TRANSMITTABLE_DISPLAY_NAME_ERROR = 0x3a20000a, + PR_PAGER_TELEPHONE_NUMBER = 0x3a21001e, + PR_PAGER_TELEPHONE_NUMBER_UNICODE = 0x3a21001f, + PR_PAGER_TELEPHONE_NUMBER_ERROR = 0x3a21000a, + PR_USER_CERTIFICATE = 0x3a220102, + PR_USER_CERTIFICATE_ERROR = 0x3a22000a, + PR_PRIMARY_FAX_NUMBER = 0x3a23001e, + PR_PRIMARY_FAX_NUMBER_UNICODE = 0x3a23001f, + PR_PRIMARY_FAX_NUMBER_ERROR = 0x3a23000a, + PR_HOME_FAX_NUMBER = 0x3a25001e, + PR_HOME_FAX_NUMBER_UNICODE = 0x3a25001f, + PR_HOME_FAX_NUMBER_ERROR = 0x3a25000a, + PR_COUNTRY = 0x3a26001e, + PR_COUNTRY_UNICODE = 0x3a26001f, + PR_COUNTRY_ERROR = 0x3a26000a, + PR_LOCALITY = 0x3a27001e, + PR_LOCALITY_UNICODE = 0x3a27001f, + PR_LOCALITY_ERROR = 0x3a27000a, + PR_STATE_OR_PROVINCE = 0x3a28001e, + PR_STATE_OR_PROVINCE_UNICODE = 0x3a28001f, + PR_STATE_OR_PROVINCE_ERROR = 0x3a28000a, + PR_STREET_ADDRESS = 0x3a29001e, + PR_STREET_ADDRESS_UNICODE = 0x3a29001f, + PR_STREET_ADDRESS_ERROR = 0x3a29000a, + PR_POSTAL_CODE = 0x3a2a001e, + PR_POSTAL_CODE_UNICODE = 0x3a2a001f, + PR_POSTAL_CODE_ERROR = 0x3a2a000a, + PR_POST_OFFICE_BOX = 0x3a2b001e, + PR_POST_OFFICE_BOX_UNICODE = 0x3a2b001f, + PR_POST_OFFICE_BOX_ERROR = 0x3a2b000a, + PR_TELEX_NUMBER = 0x3a2c001e, + PR_TELEX_NUMBER_UNICODE = 0x3a2c001f, + PR_TELEX_NUMBER_ERROR = 0x3a2c000a, + PR_ISDN_NUMBER = 0x3a2d001e, + PR_ISDN_NUMBER_UNICODE = 0x3a2d001f, + PR_ISDN_NUMBER_ERROR = 0x3a2d000a, + PR_ASSISTANT_TELEPHONE_NUMBER = 0x3a2e001e, + PR_ASSISTANT_TELEPHONE_NUMBER_UNICODE = 0x3a2e001f, + PR_ASSISTANT_TELEPHONE_NUMBER_ERROR = 0x3a2e000a, + PR_HOME2_TELEPHONE_NUMBER = 0x3a2f001e, + PR_HOME2_TELEPHONE_NUMBER_UNICODE = 0x3a2f001f, + PR_HOME2_TELEPHONE_NUMBER_ERROR = 0x3a2f000a, + PR_ASSISTANT = 0x3a30001e, + PR_ASSISTANT_UNICODE = 0x3a30001f, + PR_ASSISTANT_ERROR = 0x3a30000a, + PR_SEND_RICH_INFO = 0x3a40000b, + PR_SEND_RICH_INFO_ERROR = 0x3a40000a, + PR_WEDDING_ANNIVERSARY = 0x3a410040, + PR_WEDDING_ANNIVERSARY_ERROR = 0x3a41000a, + PR_BIRTHDAY = 0x3a420040, + PR_BIRTHDAY_ERROR = 0x3a42000a, + PR_HOBBIES = 0x3a43001e, + PR_HOBBIES_UNICODE = 0x3a43001f, + PR_HOBBIES_ERROR = 0x3a43000a, + PR_MIDDLE_NAME = 0x3a44001e, + PR_MIDDLE_NAME_UNICODE = 0x3a44001f, + PR_MIDDLE_NAME_ERROR = 0x3a44000a, + PR_DISPLAY_NAME_PREFIX = 0x3a45001e, + PR_DISPLAY_NAME_PREFIX_UNICODE = 0x3a45001f, + PR_DISPLAY_NAME_PREFIX_ERROR = 0x3a45000a, + PR_PROFESSION = 0x3a46001e, + PR_PROFESSION_UNICODE = 0x3a46001f, + PR_PROFESSION_ERROR = 0x3a46000a, + PR_PREFERRED_BY_NAME = 0x3a47001e, + PR_PREFERRED_BY_NAME_UNICODE = 0x3a47001f, + PR_PREFERRED_BY_NAME_ERROR = 0x3a47000a, + PR_SPOUSE_NAME = 0x3a48001e, + PR_SPOUSE_NAME_UNICODE = 0x3a48001f, + PR_SPOUSE_NAME_ERROR = 0x3a48000a, + PR_COMPUTER_NETWORK_NAME = 0x3a49001e, + PR_COMPUTER_NETWORK_NAME_UNICODE = 0x3a49001f, + PR_COMPUTER_NETWORK_NAME_ERROR = 0x3a49000a, + PR_CUSTOMER_ID = 0x3a4a001e, + PR_CUSTOMER_ID_UNICODE = 0x3a4a001f, + PR_CUSTOMER_ID_ERROR = 0x3a4a000a, + PR_TTYTDD_PHONE_NUMBER = 0x3a4b001e, + PR_TTYTDD_PHONE_NUMBER_UNICODE = 0x3a4b001f, + PR_TTYTDD_PHONE_NUMBER_ERROR = 0x3a4b000a, + PR_FTP_SITE = 0x3a4c001e, + PR_FTP_SITE_UNICODE = 0x3a4c001f, + PR_FTP_SITE_ERROR = 0x3a4c000a, + PR_GENDER = 0x3a4d0002, + PR_GENDER_ERROR = 0x3a4d000a, + PR_MANAGER_NAME = 0x3a4e001e, + PR_MANAGER_NAME_UNICODE = 0x3a4e001f, + PR_MANAGER_NAME_ERROR = 0x3a4e000a, + PR_NICKNAME = 0x3a4f001e, + PR_NICKNAME_UNICODE = 0x3a4f001f, + PR_NICKNAME_ERROR = 0x3a4f000a, + PR_PERSONAL_HOME_PAGE = 0x3a50001e, + PR_PERSONAL_HOME_PAGE_UNICODE = 0x3a50001f, + PR_PERSONAL_HOME_PAGE_ERROR = 0x3a50000a, + PR_BUSINESS_HOME_PAGE = 0x3a51001e, + PR_BUSINESS_HOME_PAGE_UNICODE = 0x3a51001f, + PR_BUSINESS_HOME_PAGE_ERROR = 0x3a51000a, + PR_CONTACT_VERSION = 0x3a520048, + PR_CONTACT_VERSION_ERROR = 0x3a52000a, + PR_CONTACT_ENTRYIDS = 0x3a531102, + PR_CONTACT_ENTRYIDS_ERROR = 0x3a53000a, + PR_CONTACT_ADDRTYPES = 0x3a54101e, + PR_CONTACT_ADDRTYPES_UNICODE = 0x3a54101f, + PR_CONTACT_ADDRTYPES_ERROR = 0x3a54000a, + PR_CONTACT_DEFAULT_ADDRESS_INDEX = 0x3a550003, + PR_CONTACT_DEFAULT_ADDRESS_INDEX_ERROR = 0x3a55000a, + PR_CONTACT_EMAIL_ADDRESSES = 0x3a56101e, + PR_CONTACT_EMAIL_ADDRESSES_UNICODE = 0x3a56101f, + PR_CONTACT_EMAIL_ADDRESSES_ERROR = 0x3a56000a, + PR_COMPANY_MAIN_PHONE_NUMBER = 0x3a57001e, + PR_COMPANY_MAIN_PHONE_NUMBER_UNICODE = 0x3a57001f, + PR_COMPANY_MAIN_PHONE_NUMBER_ERROR = 0x3a57000a, + PR_CHILDRENS_NAMES = 0x3a58101e, + PR_CHILDRENS_NAMES_UNICODE = 0x3a58101f, + PR_CHILDRENS_NAMES_ERROR = 0x3a58000a, + PR_HOME_ADDRESS_CITY = 0x3a59001e, + PR_HOME_ADDRESS_CITY_UNICODE = 0x3a59001f, + PR_HOME_ADDRESS_CITY_ERROR = 0x3a59000a, + PR_HOME_ADDRESS_COUNTRY = 0x3a5a001e, + PR_HOME_ADDRESS_COUNTRY_UNICODE = 0x3a5a001f, + PR_HOME_ADDRESS_COUNTRY_ERROR = 0x3a5a000a, + PR_HOME_ADDRESS_POSTAL_CODE = 0x3a5b001e, + PR_HOME_ADDRESS_POSTAL_CODE_UNICODE = 0x3a5b001f, + PR_HOME_ADDRESS_POSTAL_CODE_ERROR = 0x3a5b000a, + PR_HOME_ADDRESS_STATE_OR_PROVINCE = 0x3a5c001e, + PR_HOME_ADDRESS_STATE_OR_PROVINCE_UNICODE = 0x3a5c001f, + PR_HOME_ADDRESS_STATE_OR_PROVINCE_ERROR = 0x3a5c000a, + PR_HOME_ADDRESS_STREET = 0x3a5d001e, + PR_HOME_ADDRESS_STREET_UNICODE = 0x3a5d001f, + PR_HOME_ADDRESS_STREET_ERROR = 0x3a5d000a, + PR_HOME_ADDRESS_POST_OFFICE_BOX = 0x3a5e001e, + PR_HOME_ADDRESS_POST_OFFICE_BOX_UNICODE = 0x3a5e001f, + PR_HOME_ADDRESS_POST_OFFICE_BOX_ERROR = 0x3a5e000a, + PR_OTHER_ADDRESS_CITY = 0x3a5f001e, + PR_OTHER_ADDRESS_CITY_UNICODE = 0x3a5f001f, + PR_OTHER_ADDRESS_CITY_ERROR = 0x3a5f000a, + PR_OTHER_ADDRESS_COUNTRY = 0x3a60001e, + PR_OTHER_ADDRESS_COUNTRY_UNICODE = 0x3a60001f, + PR_OTHER_ADDRESS_COUNTRY_ERROR = 0x3a60000a, + PR_OTHER_ADDRESS_POSTAL_CODE = 0x3a61001e, + PR_OTHER_ADDRESS_POSTAL_CODE_UNICODE = 0x3a61001f, + PR_OTHER_ADDRESS_POSTAL_CODE_ERROR = 0x3a61000a, + PR_OTHER_ADDRESS_STATE_OR_PROVINCE = 0x3a62001e, + PR_OTHER_ADDRESS_STATE_OR_PROVINCE_UNICODE = 0x3a62001f, + PR_OTHER_ADDRESS_STATE_OR_PROVINCE_ERROR = 0x3a62000a, + PR_OTHER_ADDRESS_STREET = 0x3a63001e, + PR_OTHER_ADDRESS_STREET_UNICODE = 0x3a63001f, + PR_OTHER_ADDRESS_STREET_ERROR = 0x3a63000a, + PR_OTHER_ADDRESS_POST_OFFICE_BOX = 0x3a64001e, + PR_OTHER_ADDRESS_POST_OFFICE_BOX_UNICODE = 0x3a64001f, + PR_OTHER_ADDRESS_POST_OFFICE_BOX_ERROR = 0x3a64000a, + PR_USER_X509_CERTIFICATE = 0x3a701102, + PR_USER_X509_CERTIFICATE_ERROR = 0x3a70000a, + PR_SEND_INTERNET_ENCODING = 0x3a710003, + PR_SEND_INTERNET_ENCODING_ERROR = 0x3a71000a, + PR_STORE_PROVIDERS = 0x3d000102, + PR_STORE_PROVIDERS_ERROR = 0x3d00000a, + PR_AB_PROVIDERS = 0x3d010102, + PR_AB_PROVIDERS_ERROR = 0x3d01000a, + PR_TRANSPORT_PROVIDERS = 0x3d020102, + PR_TRANSPORT_PROVIDERS_ERROR = 0x3d02000a, + PR_DEFAULT_PROFILE = 0x3d04000b, + PR_DEFAULT_PROFILE_ERROR = 0x3d04000a, + PR_AB_SEARCH_PATH = 0x3d051102, + PR_AB_SEARCH_PATH_ERROR = 0x3d05000a, + PR_AB_DEFAULT_DIR = 0x3d060102, + PR_AB_DEFAULT_DIR_ERROR = 0x3d06000a, + PR_AB_DEFAULT_PAB = 0x3d070102, + PR_AB_DEFAULT_PAB_ERROR = 0x3d07000a, + PR_FILTERING_HOOKS = 0x3d080102, + PR_FILTERING_HOOKS_ERROR = 0x3d08000a, + PR_SERVICE_NAME = 0x3d09001e, + PR_SERVICE_NAME_UNICODE = 0x3d09001f, + PR_SERVICE_NAME_ERROR = 0x3d09000a, + PR_SERVICE_DLL_NAME = 0x3d0a001e, + PR_SERVICE_DLL_NAME_UNICODE = 0x3d0a001f, + PR_SERVICE_DLL_NAME_ERROR = 0x3d0a000a, + PR_SERVICE_ENTRY_NAME = 0x3d0b001e, + PR_SERVICE_ENTRY_NAME_UNICODE = 0x3d0b001f, + PR_SERVICE_ENTRY_NAME_ERROR = 0x3d0b000a, + PR_SERVICE_UID = 0x3d0c0102, + PR_SERVICE_UID_ERROR = 0x3d0c000a, + PR_SERVICE_EXTRA_UIDS = 0x3d0d0102, + PR_SERVICE_EXTRA_UIDS_ERROR = 0x3d0d000a, + PR_SERVICES = 0x3d0e0102, + PR_SERVICES_ERROR = 0x3d0e000a, + PR_SERVICE_SUPPORT_FILES = 0x3d0f101e, + PR_SERVICE_SUPPORT_FILES_UNICODE = 0x3d0f101f, + PR_SERVICE_SUPPORT_FILES_ERROR = 0x3d0f000a, + PR_SERVICE_DELETE_FILES = 0x3d10101e, + PR_SERVICE_DELETE_FILES_UNICODE = 0x3d10101f, + PR_SERVICE_DELETE_FILES_ERROR = 0x3d10000a, + PR_AB_SEARCH_PATH_UPDATE = 0x3d110102, + PR_AB_SEARCH_PATH_UPDATE_ERROR = 0x3d11000a, + PR_PROFILE_NAME = 0x3d12001e, + PR_PROFILE_NAME_UNICODE = 0x3d12001f, + PR_PROFILE_NAME_ERROR = 0x3d12000a, + PR_SERVICE_INSTALL_ID = 0x3d13001e, + PR_SERVICE_INSTALL_ID_UNICODE = 0x3d13001f, + PR_SERVICE_INSTALL_ID_ERROR = 0x3d13000a, + PR_ADMIN_SECURITY_DESCRIPTOR = 0x3d210102, + PR_ADMIN_SECURITY_DESCRIPTOR_ERROR = 0x3d21000a, + PR_IDENTITY_DISPLAY = 0x3e00001e, + PR_IDENTITY_DISPLAY_UNICODE = 0x3e00001f, + PR_IDENTITY_DISPLAY_ERROR = 0x3e00000a, + PR_IDENTITY_ENTRYID = 0x3e010102, + PR_IDENTITY_ENTRYID_ERROR = 0x3e01000a, + PR_RESOURCE_METHODS = 0x3e020003, + PR_RESOURCE_METHODS_ERROR = 0x3e02000a, + PR_RESOURCE_TYPE = 0x3e030003, + PR_RESOURCE_TYPE_ERROR = 0x3e03000a, + PR_STATUS_CODE = 0x3e040003, + PR_STATUS_CODE_ERROR = 0x3e04000a, + PR_IDENTITY_SEARCH_KEY = 0x3e050102, + PR_IDENTITY_SEARCH_KEY_ERROR = 0x3e05000a, + PR_OWN_STORE_ENTRYID = 0x3e060102, + PR_OWN_STORE_ENTRYID_ERROR = 0x3e06000a, + PR_RESOURCE_PATH = 0x3e07001e, + PR_RESOURCE_PATH_UNICODE = 0x3e07001f, + PR_RESOURCE_PATH_ERROR = 0x3e07000a, + PR_STATUS_STRING = 0x3e08001e, + PR_STATUS_STRING_UNICODE = 0x3e08001f, + PR_STATUS_STRING_ERROR = 0x3e08000a, + PR_X400_DEFERRED_DELIVERY_CANCEL = 0x3e09000b, + PR_X400_DEFERRED_DELIVERY_CANCEL_ERROR = 0x3e09000a, + PR_HEADER_FOLDER_ENTRYID = 0x3e0a0102, + PR_HEADER_FOLDER_ENTRYID_ERROR = 0x3e0a000a, + PR_REMOTE_PROGRESS = 0x3e0b0003, + PR_REMOTE_PROGRESS_ERROR = 0x3e0b000a, + PR_REMOTE_PROGRESS_TEXT = 0x3e0c001e, + PR_REMOTE_PROGRESS_TEXT_UNICODE = 0x3e0c001f, + PR_REMOTE_PROGRESS_TEXT_ERROR = 0x3e0c000a, + PR_REMOTE_VALIDATE_OK = 0x3e0d000b, + PR_REMOTE_VALIDATE_OK_ERROR = 0x3e0d000a, + PR_CONTROL_FLAGS = 0x3f000003, + PR_CONTROL_FLAGS_ERROR = 0x3f00000a, + PR_CONTROL_STRUCTURE = 0x3f010102, + PR_CONTROL_STRUCTURE_ERROR = 0x3f01000a, + PR_CONTROL_TYPE = 0x3f020003, + PR_CONTROL_TYPE_ERROR = 0x3f02000a, + PR_DELTAX = 0x3f030003, + PR_DELTAX_ERROR = 0x3f03000a, + PR_DELTAY = 0x3f040003, + PR_DELTAY_ERROR = 0x3f04000a, + PR_XPOS = 0x3f050003, + PR_XPOS_ERROR = 0x3f05000a, + PR_YPOS = 0x3f060003, + PR_YPOS_ERROR = 0x3f06000a, + PR_CONTROL_ID = 0x3f070102, + PR_CONTROL_ID_ERROR = 0x3f07000a, + PR_INITIAL_DETAILS_PANE = 0x3f080003, + PR_INITIAL_DETAILS_PANE_ERROR = 0x3f08000a, + PR_DID = 0x3f800014, + PR_DID_ERROR = 0x3f80000a, + PR_SEQID = 0x3f810014, + PR_SEQID_ERROR = 0x3f81000a, + PR_DRAFTID = 0x3f820014, + PR_DRAFTID_ERROR = 0x3f82000a, + PR_CHECK_IN_TIME = 0x3f830040, + PR_CHECK_IN_TIME_ERROR = 0x3f83000a, + PR_CHECK_IN_COMMENT = 0x3f84001e, + PR_CHECK_IN_COMMENT_UNICODE = 0x3f84001f, + PR_CHECK_IN_COMMENT_ERROR = 0x3f84000a, + PR_VERSION_OP_CODE = 0x3f850003, + PR_VERSION_OP_CODE_ERROR = 0x3f85000a, + PR_VERSION_OP_DATA = 0x3f860102, + PR_VERSION_OP_DATA_ERROR = 0x3f86000a, + PR_VERSION_SEQUENCE_NUMBER = 0x3f870003, + PR_VERSION_SEQUENCE_NUMBER_ERROR = 0x3f87000a, + PR_ATTACH_ID = 0x3f880014, + PR_ATTACH_ID_ERROR = 0x3f88000a, + PR_PKM_DOC_STATUS = 0x3f8d001e, + PR_PKM_DOC_STATUS_UNICODE = 0x3f8d001f, + PR_PKM_DOC_STATUS_ERROR = 0x3f8d000a, + PR_MV_PKM_OPERATION_REQ = 0x3f8e101e, + PR_MV_PKM_OPERATION_REQ_UNICODE = 0x3f8e101f, + PR_MV_PKM_OPERATION_REQ_ERROR = 0x3f8e000a, + PR_PKM_DOC_INTERNAL_STATE = 0x3f8f001e, + PR_PKM_DOC_INTERNAL_STATE_UNICODE = 0x3f8f001f, + PR_PKM_DOC_INTERNAL_STATE_ERROR = 0x3f8f000a, + PR_VERSIONING_FLAGS = 0x3f900002, + PR_VERSIONING_FLAGS_ERROR = 0x3f90000a, + PR_PKM_LAST_UNAPPROVED_VID = 0x3f910102, + PR_PKM_LAST_UNAPPROVED_VID_ERROR = 0x3f91000a, + PR_MV_PKM_VERSION_LABELS = 0x3f92101e, + PR_MV_PKM_VERSION_LABELS_UNICODE = 0x3f92101f, + PR_MV_PKM_VERSION_LABELS_ERROR = 0x3f92000a, + PR_MV_PKM_VERSION_STATUS = 0x3f93101e, + PR_MV_PKM_VERSION_STATUS_UNICODE = 0x3f93101f, + PR_MV_PKM_VERSION_STATUS_ERROR = 0x3f93000a, + PR_PKM_INTERNAL_DATA = 0x3f940102, + PR_PKM_INTERNAL_DATA_ERROR = 0x3f94000a, + PR_LAST_CONFLICT = 0x3fc90102, + PR_LAST_CONFLICT_ERROR = 0x3fc9000a, + PR_CONFLICT_MSG_KEY = 0x3fca0102, + PR_CONFLICT_MSG_KEY_ERROR = 0x3fca000a, + PR_REPL_HEADER = 0x3fd00102, + PR_REPL_HEADER_ERROR = 0x3fd0000a, + PR_REPL_STATUS = 0x3fd10102, + PR_REPL_STATUS_ERROR = 0x3fd1000a, + PR_REPL_CHANGES = 0x3fd20102, + PR_REPL_CHANGES_ERROR = 0x3fd2000a, + PR_REPL_RGM = 0x3fd30102, + PR_REPL_RGM_ERROR = 0x3fd3000a, + PR_RMI = 0x3fd40102, + PR_RMI_ERROR = 0x3fd4000a, + PR_INTERNAL_POST_REPLY = 0x3fd50102, + PR_INTERNAL_POST_REPLY_ERROR = 0x3fd5000a, + PR_NTSD_MODIFICATION_TIME = 0x3fd60040, + PR_NTSD_MODIFICATION_TIME_ERROR = 0x3fd6000a, + PR_PREVIEW_UNREAD = 0x3fd8001e, + PR_PREVIEW_UNREAD_UNICODE = 0x3fd8001f, + PR_PREVIEW_UNREAD_ERROR = 0x3fd8000a, + PR_PREVIEW = 0x3fd9001e, + PR_PREVIEW_UNICODE = 0x3fd9001f, + PR_PREVIEW_ERROR = 0x3fd9000a, + PR_ABSTRACT = 0x3fda001e, + PR_ABSTRACT_UNICODE = 0x3fda001f, + PR_ABSTRACT_ERROR = 0x3fda000a, + PR_DL_REPORT_FLAGS = 0x3fdb0003, + PR_DL_REPORT_FLAGS_ERROR = 0x3fdb000a, + PR_BILATERAL_INFO = 0x3fdc0102, + PR_BILATERAL_INFO_ERROR = 0x3fdc000a, + PR_MSG_BODY_ID = 0x3fdd0003, + PR_MSG_BODY_ID_ERROR = 0x3fdd000a, + PR_INTERNET_CPID = 0x3fde0003, + PR_INTERNET_CPID_ERROR = 0x3fde000a, + PR_AUTO_RESPONSE_SUPPRESS = 0x3fdf0003, + PR_AUTO_RESPONSE_SUPPRESS_ERROR = 0x3fdf000a, + PR_ACL_TABLE = 0x3fe0000d, + PR_ACL_TABLE_ERROR = 0x3fe0000a, + PR_ACL_DATA = 0x3fe00102, + PR_RULES_TABLE = 0x3fe1000d, + PR_RULES_TABLE_ERROR = 0x3fe1000a, + PR_RULES_DATA = 0x3fe10102, + PR_FOLDER_DESIGN_FLAGS = 0x3fe20003, + PR_FOLDER_DESIGN_FLAGS_ERROR = 0x3fe2000a, + PR_DELEGATED_BY_RULE = 0x3fe3000b, + PR_DELEGATED_BY_RULE_ERROR = 0x3fe3000a, + PR_DESIGN_IN_PROGRESS = 0x3fe4000b, + PR_DESIGN_IN_PROGRESS_ERROR = 0x3fe4000a, + PR_SECURE_ORIGINATION = 0x3fe5000b, + PR_SECURE_ORIGINATION_ERROR = 0x3fe5000a, + PR_PUBLISH_IN_ADDRESS_BOOK = 0x3fe6000b, + PR_PUBLISH_IN_ADDRESS_BOOK_ERROR = 0x3fe6000a, + PR_RESOLVE_METHOD = 0x3fe70003, + PR_RESOLVE_METHOD_ERROR = 0x3fe7000a, + PR_ADDRESS_BOOK_DISPLAY_NAME = 0x3fe8001e, + PR_ADDRESS_BOOK_DISPLAY_NAME_UNICODE = 0x3fe8001f, + PR_ADDRESS_BOOK_DISPLAY_NAME_ERROR = 0x3fe8000a, + PR_EFORMS_LOCALE_ID = 0x3fe90003, + PR_EFORMS_LOCALE_ID_ERROR = 0x3fe9000a, + PR_HAS_DAMS = 0x3fea000b, + PR_HAS_DAMS_ERROR = 0x3fea000a, + PR_DEFERRED_SEND_NUMBER = 0x3feb0003, + PR_DEFERRED_SEND_NUMBER_ERROR = 0x3feb000a, + PR_DEFERRED_SEND_UNITS = 0x3fec0003, + PR_DEFERRED_SEND_UNITS_ERROR = 0x3fec000a, + PR_EXPIRY_NUMBER = 0x3fed0003, + PR_EXPIRY_NUMBER_ERROR = 0x3fed000a, + PR_EXPIRY_UNITS = 0x3fee0003, + PR_EXPIRY_UNITS_ERROR = 0x3fee000a, + PR_DEFERRED_SEND_TIME = 0x3fef0040, + PR_DEFERRED_SEND_TIME_ERROR = 0x3fef000a, + PR_CONFLICT_ENTRYID = 0x3ff00102, + PR_CONFLICT_ENTRYID_ERROR = 0x3ff0000a, + PR_MESSAGE_LOCALE_ID = 0x3ff10003, + PR_MESSAGE_LOCALE_ID_ERROR = 0x3ff1000a, + PR_RULE_TRIGGER_HISTORY = 0x3ff20102, + PR_RULE_TRIGGER_HISTORY_ERROR = 0x3ff2000a, + PR_MOVE_TO_STORE_ENTRYID = 0x3ff30102, + PR_MOVE_TO_STORE_ENTRYID_ERROR = 0x3ff3000a, + PR_MOVE_TO_FOLDER_ENTRYID = 0x3ff40102, + PR_MOVE_TO_FOLDER_ENTRYID_ERROR = 0x3ff4000a, + PR_STORAGE_QUOTA_LIMIT = 0x3ff50003, + PR_STORAGE_QUOTA_LIMIT_ERROR = 0x3ff5000a, + PR_EXCESS_STORAGE_USED = 0x3ff60003, + PR_EXCESS_STORAGE_USED_ERROR = 0x3ff6000a, + PR_SVR_GENERATING_QUOTA_MSG = 0x3ff7001e, + PR_SVR_GENERATING_QUOTA_MSG_UNICODE = 0x3ff7001f, + PR_SVR_GENERATING_QUOTA_MSG_ERROR = 0x3ff7000a, + PR_CREATOR_NAME = 0x3ff8001e, + PR_CREATOR_NAME_UNICODE = 0x3ff8001f, + PR_CREATOR_NAME_ERROR = 0x3ff8000a, + PR_CREATOR_ENTRYID = 0x3ff90102, + PR_CREATOR_ENTRYID_ERROR = 0x3ff9000a, + PR_LAST_MODIFIER_NAME = 0x3ffa001e, + PR_LAST_MODIFIER_NAME_UNICODE = 0x3ffa001f, + PR_LAST_MODIFIER_NAME_ERROR = 0x3ffa000a, + PR_LAST_MODIFIER_ENTRYID = 0x3ffb0102, + PR_LAST_MODIFIER_ENTRYID_ERROR = 0x3ffb000a, + PR_REPLY_RECIPIENT_SMTP_PROXIES = 0x3ffc001e, + PR_REPLY_RECIPIENT_SMTP_PROXIES_UNICODE = 0x3ffc001f, + PR_REPLY_RECIPIENT_SMTP_PROXIES_ERROR = 0x3ffc000a, + PR_MESSAGE_CODEPAGE = 0x3ffd0003, + PR_MESSAGE_CODEPAGE_ERROR = 0x3ffd000a, + PR_EXTENDED_ACL_DATA = 0x3ffe0102, + PR_EXTENDED_ACL_DATA_ERROR = 0x3ffe000a, + PR_FROM_I_HAVE = 0x3fff000b, + PR_FROM_I_HAVE_ERROR = 0x3fff000a, + PR_NEW_ATTACH = 0x40000003, + PR_NEW_ATTACH_ERROR = 0x4000000a, + PR_START_EMBED = 0x40010003, + PR_START_EMBED_ERROR = 0x4001000a, + PR_END_EMBED = 0x40020003, + PR_END_EMBED_ERROR = 0x4002000a, + PR_START_RECIP = 0x40030003, + PR_START_RECIP_ERROR = 0x4003000a, + PR_END_RECIP = 0x40040003, + PR_END_RECIP_ERROR = 0x4004000a, + PR_END_CC_RECIP = 0x40050003, + PR_END_CC_RECIP_ERROR = 0x4005000a, + PR_END_BCC_RECIP = 0x40060003, + PR_END_BCC_RECIP_ERROR = 0x4006000a, + PR_END_P1_RECIP = 0x40070003, + PR_END_P1_RECIP_ERROR = 0x4007000a, + PR_START_TOP_FLD = 0x40090003, + PR_START_TOP_FLD_ERROR = 0x4009000a, + PR_START_SUB_FLD = 0x400a0003, + PR_START_SUB_FLD_ERROR = 0x400a000a, + PR_END_FOLDER = 0x400b0003, + PR_END_FOLDER_ERROR = 0x400b000a, + PR_START_MESSAGE = 0x400c0003, + PR_START_MESSAGE_ERROR = 0x400c000a, + PR_END_MESSAGE = 0x400d0003, + PR_END_MESSAGE_ERROR = 0x400d000a, + PR_END_ATTACH = 0x400e0003, + PR_END_ATTACH_ERROR = 0x400e000a, + PR_EC_WARNING = 0x400f0003, + PR_EC_WARNING_ERROR = 0x400f000a, + PR_START_FAI_MSG = 0x40100003, + PR_START_FAI_MSG_ERROR = 0x4010000a, + PR_NEW_FX_FOLDER = 0x40110102, + PR_NEW_FX_FOLDER_ERROR = 0x4011000a, + PR_INCR_SYNC_CHG = 0x40120003, + PR_INCR_SYNC_CHG_ERROR = 0x4012000a, + PR_INCR_SYNC_DEL = 0x40130003, + PR_INCR_SYNC_DEL_ERROR = 0x4013000a, + PR_INCR_SYNC_END = 0x40140003, + PR_INCR_SYNC_END_ERROR = 0x4014000a, + PR_INCR_SYNC_MSG = 0x40150003, + PR_INCR_SYNC_MSG_ERROR = 0x4015000a, + PR_FX_DEL_PROP = 0x40160003, + PR_FX_DEL_PROP_ERROR = 0x4016000a, + PR_IDSET_GIVEN = 0x40170003, + PR_IDSET_GIVEN_ERROR = 0x4017000a, + PR_SENDER_FLAGS = 0x40190003, + PR_SENDER_FLAGS_ERROR = 0x4019000a, + PR_SENT_REPRESENTING_FLAGS = 0x401a0003, + PR_SENT_REPRESENTING_FLAGS_ERROR = 0x401a000a, + PR_RCVD_BY_FLAGS = 0x401b0003, + PR_RCVD_BY_FLAGS_ERROR = 0x401b000a, + PR_RCVD_REPRESENTING_FLAGS = 0x401c0003, + PR_RCVD_REPRESENTING_FLAGS_ERROR = 0x401c000a, + PR_ORIGINAL_SENDER_FLAGS = 0x401d0003, + PR_ORIGINAL_SENDER_FLAGS_ERROR = 0x401d000a, + PR_ORIGINAL_SENT_REPRESENTING_FLAGS = 0x401e0003, + PR_ORIGINAL_SENT_REPRESENTING_FLAGS_ERROR = 0x401e000a, + PR_REPORT_FLAGS = 0x401f0003, + PR_REPORT_FLAGS_ERROR = 0x401f000a, + PR_READ_RECEIPT_FLAGS = 0x40200003, + PR_READ_RECEIPT_FLAGS_ERROR = 0x4020000a, + PR_SOFT_DELETES = 0x4021000b, + PR_SOFT_DELETES_ERROR = 0x4021000a, + PR_MESSAGE_SUBMISSION_ID_FROM_CLIENT = 0x402c0102, + PR_MESSAGE_SUBMISSION_ID_FROM_CLIENT_ERROR = 0x402c000a, + PR_SENDER_SIMPLE_DISP_NAME = 0x4030001e, + PR_SENDER_SIMPLE_DISP_NAME_UNICODE = 0x4030001f, + PR_SENDER_SIMPLE_DISP_NAME_ERROR = 0x4030000a, + PR_SENT_REPRESENTING_SIMPLE_DISP_NAME = 0x4031001e, + PR_SENT_REPRESENTING_SIMPLE_DISP_NAME_UNICODE = 0x4031001f, + PR_SENT_REPRESENTING_SIMPLE_DISP_NAME_ERROR = 0x4031000a, + PR_CREATOR_SIMPLE_DISP_NAME = 0x4038001e, + PR_CREATOR_SIMPLE_DISP_NAME_UNICODE = 0x4038001f, + PR_CREATOR_SIMPLE_DISP_NAME_ERROR = 0x4038000a, + PR_ORG_ADDR_TYPE = 0x403d001e, + PR_ORG_ADDR_TYPE_UNICODE = 0x403d001f, + PR_ORG_ADDR_TYPE_ERROR = 0x403d000a, + PR_ORG_EMAIL_ADDR = 0x403e001e, + PR_ORG_EMAIL_ADDR_UNICODE = 0x403e001f, + PR_ORG_EMAIL_ADDR_ERROR = 0x403e000a, + PR_CREATOR_FLAGS = 0x40590003, + PR_CREATOR_FLAGS_ERROR = 0x4059000a, + PR_MODIFIER_FLAGS = 0x405a0003, + PR_MODIFIER_FLAGS_ERROR = 0x405a000a, + PR_ORIGINATOR_FLAGS = 0x405b0003, + PR_ORIGINATOR_FLAGS_ERROR = 0x405b000a, + PR_REPORT_DESTINATION_FLAGS = 0x405c0003, + PR_REPORT_DESTINATION_FLAGS_ERROR = 0x405c000a, + PR_ORIGINAL_AUTHOR_FLAGS = 0x405d0003, + PR_ORIGINAL_AUTHOR_FLAGS_ERROR = 0x405d000a, + PR_ORIGINATOR_SEARCH_KEY = 0x40610102, + PR_ORIGINATOR_SEARCH_KEY_ERROR = 0x4061000a, + PR_REPORT_DESTINATION_SEARCH_KEY = 0x40640102, + PR_REPORT_DESTINATION_SEARCH_KEY_ERROR = 0x4064000a, + PR_ER_FLAG = 0x40650003, + PR_ER_FLAG_ERROR = 0x4065000a, + PR_INTERNET_SUBJECT = 0x40680102, + PR_INTERNET_SUBJECT_ERROR = 0x4068000a, + PR_INTERNET_SENT_REPRESENTING_NAME = 0x40690102, + PR_INTERNET_SENT_REPRESENTING_NAME_ERROR = 0x4069000a, + PR_INET_MAIL_OVERRIDE_FORMAT = 0x59020003, + PR_INET_MAIL_OVERRIDE_FORMAT_ERROR = 0x5902000a, + PR_MSG_EDITOR_FORMAT = 0x59090003, + PR_MSG_EDITOR_FORMAT_ERROR = 0x5909000a, + PR_DOTSTUFF_STATE = 0x60010003, + PR_DOTSTUFF_STATE_ERROR = 0x6001000a, + PR_RULE_SERVER_RULE_ID = 0x65a00014, + PR_RULE_SERVER_RULE_ID_ERROR = 0x65a0000a, + PR_REPLY_TEMPLATE_ID = 0x65c20102, + PR_REPLY_TEMPLATE_ID_ERROR = 0x65c2000a, + PR_SOURCE_KEY = 0x65e00102, + PR_SOURCE_KEY_ERROR = 0x65e0000a, + PR_PARENT_SOURCE_KEY = 0x65e10102, + PR_PARENT_SOURCE_KEY_ERROR = 0x65e1000a, + PR_CHANGE_KEY = 0x65e20102, + PR_CHANGE_KEY_ERROR = 0x65e2000a, + PR_PREDECESSOR_CHANGE_LIST = 0x65e30102, + PR_PREDECESSOR_CHANGE_LIST_ERROR = 0x65e3000a, + PR_SYNCHRONIZE_FLAGS = 0x65e40003, + PR_SYNCHRONIZE_FLAGS_ERROR = 0x65e4000a, + PR_AUTO_ADD_NEW_SUBS = 0x65e5000b, + PR_AUTO_ADD_NEW_SUBS_ERROR = 0x65e5000a, + PR_NEW_SUBS_GET_AUTO_ADD = 0x65e6000b, + PR_NEW_SUBS_GET_AUTO_ADD_ERROR = 0x65e6000a, + PR_MESSAGE_SITE_NAME = 0x65e7001e, + PR_MESSAGE_SITE_NAME_UNICODE = 0x65e7001f, + PR_MESSAGE_SITE_NAME_ERROR = 0x65e7000a, + PR_MESSAGE_PROCESSED = 0x65e8000b, + PR_MESSAGE_PROCESSED_ERROR = 0x65e8000a, + PR_RULE_MSG_STATE = 0x65e90003, + PR_RULE_MSG_STATE_ERROR = 0x65e9000a, + PR_RULE_MSG_USER_FLAGS = 0x65ea0003, + PR_RULE_MSG_USER_FLAGS_ERROR = 0x65ea000a, + PR_RULE_MSG_PROVIDER = 0x65eb001e, + PR_RULE_MSG_PROVIDER_UNICODE = 0x65eb001f, + PR_RULE_MSG_PROVIDER_ERROR = 0x65eb000a, + PR_RULE_MSG_NAME = 0x65ec001e, + PR_RULE_MSG_NAME_UNICODE = 0x65ec001f, + PR_RULE_MSG_NAME_ERROR = 0x65ec000a, + PR_RULE_MSG_LEVEL = 0x65ed0003, + PR_RULE_MSG_LEVEL_ERROR = 0x65ed000a, + PR_RULE_MSG_PROVIDER_DATA = 0x65ee0102, + PR_RULE_MSG_PROVIDER_DATA_ERROR = 0x65ee000a, + PR_RULE_MSG_ACTIONS = 0x65ef0102, + PR_RULE_MSG_ACTIONS_ERROR = 0x65ef000a, + PR_RULE_MSG_CONDITION = 0x65f00102, + PR_RULE_MSG_CONDITION_ERROR = 0x65f0000a, + PR_RULE_MSG_CONDITION_LCID = 0x65f10003, + PR_RULE_MSG_CONDITION_LCID_ERROR = 0x65f1000a, + PR_RULE_MSG_VERSION = 0x65f20002, + PR_RULE_MSG_VERSION_ERROR = 0x65f2000a, + PR_RULE_MSG_SEQUENCE = 0x65f30003, + PR_RULE_MSG_SEQUENCE_ERROR = 0x65f3000a, + PR_PREVENT_MSG_CREATE = 0x65f4000b, + PR_PREVENT_MSG_CREATE_ERROR = 0x65f4000a, + PR_IMAP_INTERNAL_DATE = 0x65f50040, + PR_IMAP_INTERNAL_DATE_ERROR = 0x65f5000a, + PR_PROFILE_VERSION = 0x66000003, + PR_PROFILE_VERSION_ERROR = 0x6600000a, + PR_PROFILE_CONFIG_FLAGS = 0x66010003, + PR_PROFILE_CONFIG_FLAGS_ERROR = 0x6601000a, + PR_PROFILE_HOME_SERVER = 0x6602001e, + PR_PROFILE_HOME_SERVER_UNICODE = 0x6602001f, + PR_PROFILE_HOME_SERVER_ERROR = 0x6602000a, + PR_PROFILE_USER = 0x6603001e, + PR_PROFILE_USER_UNICODE = 0x6603001f, + PR_PROFILE_USER_ERROR = 0x6603000a, + PR_PROFILE_CONNECT_FLAGS = 0x66040003, + PR_PROFILE_CONNECT_FLAGS_ERROR = 0x6604000a, + PR_PROFILE_TRANSPORT_FLAGS = 0x66050003, + PR_PROFILE_TRANSPORT_FLAGS_ERROR = 0x6605000a, + PR_PROFILE_UI_STATE = 0x66060003, + PR_PROFILE_UI_STATE_ERROR = 0x6606000a, + PR_PROFILE_UNRESOLVED_NAME = 0x6607001e, + PR_PROFILE_UNRESOLVED_NAME_UNICODE = 0x6607001f, + PR_PROFILE_UNRESOLVED_NAME_ERROR = 0x6607000a, + PR_PROFILE_UNRESOLVED_SERVER = 0x6608001e, + PR_PROFILE_UNRESOLVED_SERVER_UNICODE = 0x6608001f, + PR_PROFILE_UNRESOLVED_SERVER_ERROR = 0x6608000a, + PR_PROFILE_OPEN_FLAGS = 0x66090003, + PR_PROFILE_OPEN_FLAGS_ERROR = 0x6609000a, + PR_PROFILE_BINDING_ORDER = 0x6609001e, + PR_PROFILE_BINDING_ORDER_UNICODE = 0x6609001f, + PR_PROFILE_TYPE = 0x660a0003, + PR_PROFILE_TYPE_ERROR = 0x660a000a, + PR_PROFILE_MAILBOX = 0x660b001e, + PR_PROFILE_MAILBOX_UNICODE = 0x660b001f, + PR_PROFILE_MAILBOX_ERROR = 0x660b000a, + PR_PROFILE_SERVER = 0x660c001e, + PR_PROFILE_SERVER_UNICODE = 0x660c001f, + PR_PROFILE_SERVER_ERROR = 0x660c000a, + PR_PROFILE_MAX_RESTRICT = 0x660d0003, + PR_PROFILE_MAX_RESTRICT_ERROR = 0x660d000a, + PR_PROFILE_AB_FILES_PATH = 0x660e001e, + PR_PROFILE_AB_FILES_PATH_UNICODE = 0x660e001f, + PR_PROFILE_AB_FILES_PATH_ERROR = 0x660e000a, + PR_PROFILE_FAVFLD_DISPLAY_NAME = 0x660f001e, + PR_PROFILE_FAVFLD_DISPLAY_NAME_UNICODE = 0x660f001f, + PR_PROFILE_FAVFLD_DISPLAY_NAME_ERROR = 0x660f000a, + PR_PROFILE_OFFLINE_STORE_PATH = 0x6610001e, + PR_PROFILE_OFFLINE_STORE_PATH_UNICODE = 0x6610001f, + PR_PROFILE_OFFLINE_STORE_PATH_ERROR = 0x6610000a, + PR_PROFILE_OFFLINE_INFO = 0x66110102, + PR_PROFILE_OFFLINE_INFO_ERROR = 0x6611000a, + PR_PROFILE_HOME_SERVER_DN = 0x6612001e, + PR_PROFILE_HOME_SERVER_DN_UNICODE = 0x6612001f, + PR_PROFILE_HOME_SERVER_DN_ERROR = 0x6612000a, + PR_PROFILE_HOME_SERVER_ADDRS = 0x6613101e, + PR_PROFILE_HOME_SERVER_ADDRS_UNICODE = 0x6613101f, + PR_PROFILE_HOME_SERVER_ADDRS_ERROR = 0x6613000a, + PR_PROFILE_SERVER_DN = 0x6614001e, + PR_PROFILE_SERVER_DN_UNICODE = 0x6614001f, + PR_PROFILE_SERVER_DN_ERROR = 0x6614000a, + PR_PROFILE_FAVFLD_COMMENT = 0x6615001e, + PR_PROFILE_FAVFLD_COMMENT_UNICODE = 0x6615001f, + PR_PROFILE_FAVFLD_COMMENT_ERROR = 0x6615000a, + PR_PROFILE_ALLPUB_DISPLAY_NAME = 0x6616001e, + PR_PROFILE_ALLPUB_DISPLAY_NAME_UNICODE = 0x6616001f, + PR_PROFILE_ALLPUB_DISPLAY_NAME_ERROR = 0x6616000a, + PR_PROFILE_ALLPUB_COMMENT = 0x6617001e, + PR_PROFILE_ALLPUB_COMMENT_UNICODE = 0x6617001f, + PR_PROFILE_ALLPUB_COMMENT_ERROR = 0x6617000a, + PR_DISABLE_WINSOCK = 0x66180003, + PR_DISABLE_WINSOCK_ERROR = 0x6618000a, + PR_IN_TRANSIT = 0x6618000b, + PR_PROFILE_AUTH_PACKAGE = 0x66190003, + PR_PROFILE_AUTH_PACKAGE_ERROR = 0x6619000a, + PR_USER_ENTRYID = 0x66190102, + PR_USER_NAME = 0x661a001e, + PR_USER_NAME_UNICODE = 0x661a001f, + PR_USER_NAME_ERROR = 0x661a000a, + PR_MAILBOX_OWNER_ENTRYID = 0x661b0102, + PR_MAILBOX_OWNER_ENTRYID_ERROR = 0x661b000a, + PR_MAILBOX_OWNER_NAME = 0x661c001e, + PR_MAILBOX_OWNER_NAME_UNICODE = 0x661c001f, + PR_MAILBOX_OWNER_NAME_ERROR = 0x661c000a, + PR_OOF_STATE = 0x661d000b, + PR_OOF_STATE_ERROR = 0x661d000a, + PR_SCHEDULE_FOLDER_ENTRYID = 0x661e0102, + PR_SCHEDULE_FOLDER_ENTRYID_ERROR = 0x661e000a, + PR_IPM_DAF_ENTRYID = 0x661f0102, + PR_IPM_DAF_ENTRYID_ERROR = 0x661f000a, + PR_NON_IPM_SUBTREE_ENTRYID = 0x66200102, + PR_NON_IPM_SUBTREE_ENTRYID_ERROR = 0x6620000a, + PR_EFORMS_REGISTRY_ENTRYID = 0x66210102, + PR_EFORMS_REGISTRY_ENTRYID_ERROR = 0x6621000a, + PR_SPLUS_FREE_BUSY_ENTRYID = 0x66220102, + PR_SPLUS_FREE_BUSY_ENTRYID_ERROR = 0x6622000a, + PR_HIERARCHY_SERVER = 0x6623001e, + PR_HIERARCHY_SERVER_UNICODE = 0x6623001f, + PR_HIERARCHY_SERVER_ERROR = 0x6623000a, + PR_OFFLINE_ADDRBOOK_ENTRYID = 0x66230102, + PR_EFORMS_FOR_LOCALE_ENTRYID = 0x66240102, + PR_EFORMS_FOR_LOCALE_ENTRYID_ERROR = 0x6624000a, + PR_FREE_BUSY_FOR_LOCAL_SITE_ENTRYID = 0x66250102, + PR_FREE_BUSY_FOR_LOCAL_SITE_ENTRYID_ERROR = 0x6625000a, + PR_ADDRBOOK_FOR_LOCAL_SITE_ENTRYID = 0x66260102, + PR_ADDRBOOK_FOR_LOCAL_SITE_ENTRYID_ERROR = 0x6626000a, + PR_OFFLINE_MESSAGE_ENTRYID = 0x66270102, + PR_OFFLINE_MESSAGE_ENTRYID_ERROR = 0x6627000a, + PR_GW_MTSIN_ENTRYID = 0x66280102, + PR_GW_MTSIN_ENTRYID_ERROR = 0x6628000a, + PR_GW_MTSOUT_ENTRYID = 0x66290102, + PR_GW_MTSOUT_ENTRYID_ERROR = 0x6629000a, + PR_TRANSFER_ENABLED = 0x662a000b, + PR_TRANSFER_ENABLED_ERROR = 0x662a000a, + PR_TEST_LINE_SPEED = 0x662b0102, + PR_TEST_LINE_SPEED_ERROR = 0x662b000a, + PR_HIERARCHY_SYNCHRONIZER = 0x662c000d, + PR_HIERARCHY_SYNCHRONIZER_ERROR = 0x662c000a, + PR_CONTENTS_SYNCHRONIZER = 0x662d000d, + PR_CONTENTS_SYNCHRONIZER_ERROR = 0x662d000a, + PR_COLLECTOR = 0x662e000d, + PR_COLLECTOR_ERROR = 0x662e000a, + PR_FAST_TRANSFER = 0x662f000d, + PR_FAST_TRANSFER_ERROR = 0x662f000a, + PR_IPM_FAVORITES_ENTRYID = 0x66300102, + PR_IPM_FAVORITES_ENTRYID_ERROR = 0x6630000a, + PR_IPM_PUBLIC_FOLDERS_ENTRYID = 0x66310102, + PR_IPM_PUBLIC_FOLDERS_ENTRYID_ERROR = 0x6631000a, + PR_STORE_OFFLINE = 0x6632000b, + PR_STORE_OFFLINE_ERROR = 0x6632000a, + PR_CHANGE_ADVISOR = 0x6634000d, + PR_CHANGE_ADVISOR_ERROR = 0x6634000a, + PR_FAVORITES_DEFAULT_NAME = 0x6635001e, + PR_FAVORITES_DEFAULT_NAME_UNICODE = 0x6635001f, + PR_FAVORITES_DEFAULT_NAME_ERROR = 0x6635000a, + PR_SYS_CONFIG_FOLDER_ENTRYID = 0x66360102, + PR_SYS_CONFIG_FOLDER_ENTRYID_ERROR = 0x6636000a, + PR_CHANGE_NOTIFICATION_GUID = 0x66370048, + PR_CHANGE_NOTIFICATION_GUID_ERROR = 0x6637000a, + PR_FOLDER_CHILD_COUNT = 0x66380003, + PR_FOLDER_CHILD_COUNT_ERROR = 0x6638000a, + PR_RIGHTS = 0x66390003, + PR_RIGHTS_ERROR = 0x6639000a, + PR_HAS_RULES = 0x663a000b, + PR_HAS_RULES_ERROR = 0x663a000a, + PR_ADDRESS_BOOK_ENTRYID = 0x663b0102, + PR_ADDRESS_BOOK_ENTRYID_ERROR = 0x663b000a, + PR_PUBLIC_FOLDER_ENTRYID = 0x663c0102, + PR_PUBLIC_FOLDER_ENTRYID_ERROR = 0x663c000a, + PR_OFFLINE_FLAGS = 0x663d0003, + PR_OFFLINE_FLAGS_ERROR = 0x663d000a, + PR_HIERARCHY_CHANGE_NUM = 0x663e0003, + PR_HIERARCHY_CHANGE_NUM_ERROR = 0x663e000a, + PR_HAS_MODERATOR_RULES = 0x663f000b, + PR_HAS_MODERATOR_RULES_ERROR = 0x663f000a, + PR_DELETED_MSG_COUNT = 0x66400003, + PR_DELETED_MSG_COUNT_ERROR = 0x6640000a, + PR_DELETED_FOLDER_COUNT = 0x66410003, + PR_DELETED_FOLDER_COUNT_ERROR = 0x6641000a, + PR_OLDEST_DELETED_ON = 0x66420040, + PR_OLDEST_DELETED_ON_ERROR = 0x6642000a, + PR_DELETED_ASSOC_MSG_COUNT = 0x66430003, + PR_DELETED_ASSOC_MSG_COUNT_ERROR = 0x6643000a, + PR_REPLICA_SERVER = 0x6644001e, + PR_REPLICA_SERVER_UNICODE = 0x6644001f, + PR_REPLICA_SERVER_ERROR = 0x6644000a, + PR_CLIENT_ACTIONS = 0x66450102, + PR_CLIENT_ACTIONS_ERROR = 0x6645000a, + PR_DAM_ORIGINAL_ENTRYID = 0x66460102, + PR_DAM_ORIGINAL_ENTRYID_ERROR = 0x6646000a, + PR_DAM_BACK_PATCHED = 0x6647000b, + PR_DAM_BACK_PATCHED_ERROR = 0x6647000a, + PR_RULE_ERROR = 0x66480003, + PR_RULE_ERROR_ERROR = 0x6648000a, + PR_RULE_ACTION_TYPE = 0x66490003, + PR_RULE_ACTION_TYPE_ERROR = 0x6649000a, + PR_HAS_NAMED_PROPERTIES = 0x664a000b, + PR_HAS_NAMED_PROPERTIES_ERROR = 0x664a000a, + PR_REPLICA_VERSION = 0x664b0014, + PR_REPLICA_VERSION_ERROR = 0x664b000a, + PR_RULE_ACTION_NUMBER = 0x66500003, + PR_RULE_ACTION_NUMBER_ERROR = 0x6650000a, + PR_RULE_FOLDER_ENTRYID = 0x66510102, + PR_RULE_FOLDER_ENTRYID_ERROR = 0x6651000a, + PR_ACTIVE_USER_ENTRYID = 0x66520102, + PR_ACTIVE_USER_ENTRYID_ERROR = 0x6652000a, + PR_0X400_ENVELOPE_TYPE = 0x66530003, + PR_0X400_ENVELOPE_TYPE_ERROR = 0x6653000a, + PR_MSG_FOLD_TIME = 0x66540040, + PR_MSG_FOLD_TIME_ERROR = 0x6654000a, + PR_ICS_CHANGE_KEY = 0x66550102, + PR_ICS_CHANGE_KEY_ERROR = 0x6655000a, + PR_GW_ADMIN_OPERATIONS = 0x66580003, + PR_GW_ADMIN_OPERATIONS_ERROR = 0x6658000a, + PR_INTERNET_CONTENT = 0x66590102, + PR_INTERNET_CONTENT_ERROR = 0x6659000a, + PR_HAS_ATTACH_FROM_IMAIL = 0x665a000b, + PR_HAS_ATTACH_FROM_IMAIL_ERROR = 0x665a000a, + PR_ORIGINATOR_NAME = 0x665b001e, + PR_ORIGINATOR_NAME_UNICODE = 0x665b001f, + PR_ORIGINATOR_NAME_ERROR = 0x665b000a, + PR_ORIGINATOR_ADDR = 0x665c001e, + PR_ORIGINATOR_ADDR_UNICODE = 0x665c001f, + PR_ORIGINATOR_ADDR_ERROR = 0x665c000a, + PR_ORIGINATOR_ADDRTYPE = 0x665d001e, + PR_ORIGINATOR_ADDRTYPE_UNICODE = 0x665d001f, + PR_ORIGINATOR_ADDRTYPE_ERROR = 0x665d000a, + PR_ORIGINATOR_ENTRYID = 0x665e0102, + PR_ORIGINATOR_ENTRYID_ERROR = 0x665e000a, + PR_ARRIVAL_TIME = 0x665f0040, + PR_ARRIVAL_TIME_ERROR = 0x665f000a, + PR_TRACE_INFO = 0x66600102, + PR_TRACE_INFO_ERROR = 0x6660000a, + PR_SUBJECT_TRACE_INFO = 0x66610102, + PR_SUBJECT_TRACE_INFO_ERROR = 0x6661000a, + PR_RECIPIENT_NUMBER = 0x66620003, + PR_RECIPIENT_NUMBER_ERROR = 0x6662000a, + PR_MTS_SUBJECT_ID = 0x66630102, + PR_MTS_SUBJECT_ID_ERROR = 0x6663000a, + PR_REPORT_DESTINATION_NAME = 0x6664001e, + PR_REPORT_DESTINATION_NAME_UNICODE = 0x6664001f, + PR_REPORT_DESTINATION_NAME_ERROR = 0x6664000a, + PR_REPORT_DESTINATION_ENTRYID = 0x66650102, + PR_REPORT_DESTINATION_ENTRYID_ERROR = 0x6665000a, + PR_CONTENT_SEARCH_KEY = 0x66660102, + PR_CONTENT_SEARCH_KEY_ERROR = 0x6666000a, + PR_FOREIGN_ID = 0x66670102, + PR_FOREIGN_ID_ERROR = 0x6667000a, + PR_FOREIGN_REPORT_ID = 0x66680102, + PR_FOREIGN_REPORT_ID_ERROR = 0x6668000a, + PR_FOREIGN_SUBJECT_ID = 0x66690102, + PR_FOREIGN_SUBJECT_ID_ERROR = 0x6669000a, + PR_INTERNAL_TRACE_INFO = 0x666a0102, + PR_INTERNAL_TRACE_INFO_ERROR = 0x666a000a, + PR_IN_CONFLICT = 0x666c000b, + PR_IN_CONFLICT_ERROR = 0x666c000a, + PR_LONGTERM_ENTRYID_FROM_TABLE = 0x66700102, + PR_LONGTERM_ENTRYID_FROM_TABLE_ERROR = 0x6670000a, + PR_MEMBER_ID = 0x66710014, + PR_MEMBER_ID_ERROR = 0x6671000a, + PR_MEMBER_NAME = 0x6672001e, + PR_MEMBER_NAME_UNICODE = 0x6672001f, + PR_MEMBER_NAME_ERROR = 0x6672000a, + PR_MEMBER_RIGHTS = 0x66730003, + PR_MEMBER_RIGHTS_ERROR = 0x6673000a, + PR_RULE_ID = 0x66740014, + PR_RULE_ID_ERROR = 0x6674000a, + PR_RULE_IDS = 0x66750102, + PR_RULE_IDS_ERROR = 0x6675000a, + PR_RULE_SEQUENCE = 0x66760003, + PR_RULE_SEQUENCE_ERROR = 0x6676000a, + PR_RULE_STATE = 0x66770003, + PR_RULE_STATE_ERROR = 0x6677000a, + PR_RULE_USER_FLAGS = 0x66780003, + PR_RULE_USER_FLAGS_ERROR = 0x6678000a, + PR_RULE_CONDITION = 0x667900fd, + PR_RULE_CONDITION_ERROR = 0x6679000a, + PR_PROFILE_MOAB = 0x667b001e, + PR_PROFILE_MOAB_UNICODE = 0x667b001f, + PR_PROFILE_MOAB_ERROR = 0x667b000a, + PR_PROFILE_MOAB_GUID = 0x667c001e, + PR_PROFILE_MOAB_GUID_UNICODE = 0x667c001f, + PR_PROFILE_MOAB_GUID_ERROR = 0x667c000a, + PR_PROFILE_MOAB_SEQ = 0x667d0003, + PR_PROFILE_MOAB_SEQ_ERROR = 0x667d000a, + PR_IMPLIED_RESTRICTIONS = 0x667f1102, + PR_IMPLIED_RESTRICTIONS_ERROR = 0x667f000a, + PR_RULE_ACTIONS = 0x668000fe, + PR_RULE_ACTIONS_ERROR = 0x6680000a, + PR_RULE_PROVIDER = 0x6681001e, + PR_RULE_PROVIDER_UNICODE = 0x6681001f, + PR_RULE_PROVIDER_ERROR = 0x6681000a, + PR_RULE_NAME = 0x6682001e, + PR_RULE_NAME_UNICODE = 0x6682001f, + PR_RULE_NAME_ERROR = 0x6682000a, + PR_RULE_LEVEL = 0x66830003, + PR_RULE_LEVEL_ERROR = 0x6683000a, + PR_RULE_PROVIDER_DATA = 0x66840102, + PR_RULE_PROVIDER_DATA_ERROR = 0x6684000a, + PR_LAST_FULL_BACKUP = 0x66850040, + PR_LAST_FULL_BACKUP_ERROR = 0x6685000a, + PR_PROFILE_ADDR_INFO = 0x66870102, + PR_PROFILE_ADDR_INFO_ERROR = 0x6687000a, + PR_PROFILE_OPTIONS_DATA = 0x66890102, + PR_PROFILE_OPTIONS_DATA_ERROR = 0x6689000a, + PR_EVENTS_ROOT_FOLDER_ENTRYID = 0x668a0102, + PR_EVENTS_ROOT_FOLDER_ENTRYID_ERROR = 0x668a000a, + PR_INBOUND_NEWSFEED_DN = 0x668d001e, + PR_INBOUND_NEWSFEED_DN_UNICODE = 0x668d001f, + PR_INBOUND_NEWSFEED_DN_ERROR = 0x668d000a, + PR_OUTBOUND_NEWSFEED_DN = 0x668e001e, + PR_OUTBOUND_NEWSFEED_DN_UNICODE = 0x668e001f, + PR_OUTBOUND_NEWSFEED_DN_ERROR = 0x668e000a, + PR_DELETED_ON = 0x668f0040, + PR_DELETED_ON_ERROR = 0x668f000a, + PR_REPLICATION_STYLE = 0x66900003, + PR_REPLICATION_STYLE_ERROR = 0x6690000a, + PR_REPLICATION_SCHEDULE = 0x66910102, + PR_REPLICATION_SCHEDULE_ERROR = 0x6691000a, + PR_REPLICATION_MESSAGE_PRIORITY = 0x66920003, + PR_REPLICATION_MESSAGE_PRIORITY_ERROR = 0x6692000a, + PR_OVERALL_MSG_AGE_LIMIT = 0x66930003, + PR_OVERALL_MSG_AGE_LIMIT_ERROR = 0x6693000a, + PR_REPLICATION_ALWAYS_INTERVAL = 0x66940003, + PR_REPLICATION_ALWAYS_INTERVAL_ERROR = 0x6694000a, + PR_REPLICATION_MSG_SIZE = 0x66950003, + PR_REPLICATION_MSG_SIZE_ERROR = 0x6695000a, + PR_IS_NEWSGROUP_ANCHOR = 0x6696000b, + PR_IS_NEWSGROUP_ANCHOR_ERROR = 0x6696000a, + PR_IS_NEWSGROUP = 0x6697000b, + PR_IS_NEWSGROUP_ERROR = 0x6697000a, + PR_REPLICA_LIST = 0x66980102, + PR_REPLICA_LIST_ERROR = 0x6698000a, + PR_OVERALL_AGE_LIMIT = 0x66990003, + PR_OVERALL_AGE_LIMIT_ERROR = 0x6699000a, + PR_INTERNET_CHARSET = 0x669a001e, + PR_INTERNET_CHARSET_UNICODE = 0x669a001f, + PR_INTERNET_CHARSET_ERROR = 0x669a000a, + PR_DELETED_MESSAGE_SIZE_EXTENDED = 0x669b0014, + PR_DELETED_MESSAGE_SIZE_EXTENDED_ERROR = 0x669b000a, + PR_DELETED_NORMAL_MESSAGE_SIZE_EXTENDED = 0x669c0014, + PR_DELETED_NORMAL_MESSAGE_SIZE_EXTENDED_ERROR = 0x669c000a, + PR_DELETED_ASSOC_MESSAGE_SIZE_EXTENDED = 0x669d0014, + PR_DELETED_ASSOC_MESSAGE_SIZE_EXTENDED_ERROR = 0x669d000a, + PR_SECURE_IN_SITE = 0x669e000b, + PR_SECURE_IN_SITE_ERROR = 0x669e000a, + PR_NT_USER_NAME = 0x66a0001e, + PR_NT_USER_NAME_UNICODE = 0x66a0001f, + PR_NT_USER_NAME_ERROR = 0x66a0000a, + PR_LOCALE_ID = 0x66a10003, + PR_LOCALE_ID_ERROR = 0x66a1000a, + PR_LAST_LOGON_TIME = 0x66a20040, + PR_LAST_LOGON_TIME_ERROR = 0x66a2000a, + PR_LAST_LOGOFF_TIME = 0x66a30040, + PR_LAST_LOGOFF_TIME_ERROR = 0x66a3000a, + PR_STORAGE_LIMIT_INFORMATION = 0x66a40003, + PR_STORAGE_LIMIT_INFORMATION_ERROR = 0x66a4000a, + PR_NEWSGROUP_COMPONENT = 0x66a5001e, + PR_NEWSGROUP_COMPONENT_UNICODE = 0x66a5001f, + PR_NEWSGROUP_COMPONENT_ERROR = 0x66a5000a, + PR_NEWSFEED_INFO = 0x66a60102, + PR_NEWSFEED_INFO_ERROR = 0x66a6000a, + PR_INTERNET_NEWSGROUP_NAME = 0x66a7001e, + PR_INTERNET_NEWSGROUP_NAME_UNICODE = 0x66a7001f, + PR_INTERNET_NEWSGROUP_NAME_ERROR = 0x66a7000a, + PR_FOLDER_FLAGS = 0x66a80003, + PR_FOLDER_FLAGS_ERROR = 0x66a8000a, + PR_LAST_ACCESS_TIME = 0x66a90040, + PR_LAST_ACCESS_TIME_ERROR = 0x66a9000a, + PR_RESTRICTION_COUNT = 0x66aa0003, + PR_RESTRICTION_COUNT_ERROR = 0x66aa000a, + PR_CATEG_COUNT = 0x66ab0003, + PR_CATEG_COUNT_ERROR = 0x66ab000a, + PR_CACHED_COLUMN_COUNT = 0x66ac0003, + PR_CACHED_COLUMN_COUNT_ERROR = 0x66ac000a, + PR_NORMAL_MSG_W_ATTACH_COUNT = 0x66ad0003, + PR_NORMAL_MSG_W_ATTACH_COUNT_ERROR = 0x66ad000a, + PR_ASSOC_MSG_W_ATTACH_COUNT = 0x66ae0003, + PR_ASSOC_MSG_W_ATTACH_COUNT_ERROR = 0x66ae000a, + PR_RECIPIENT_ON_NORMAL_MSG_COUNT = 0x66af0003, + PR_RECIPIENT_ON_NORMAL_MSG_COUNT_ERROR = 0x66af000a, + PR_RECIPIENT_ON_ASSOC_MSG_COUNT = 0x66b00003, + PR_RECIPIENT_ON_ASSOC_MSG_COUNT_ERROR = 0x66b0000a, + PR_ATTACH_ON_NORMAL_MSG_COUNT = 0x66b10003, + PR_ATTACH_ON_NORMAL_MSG_COUNT_ERROR = 0x66b1000a, + PR_ATTACH_ON_ASSOC_MSG_COUNT = 0x66b20003, + PR_ATTACH_ON_ASSOC_MSG_COUNT_ERROR = 0x66b2000a, + PR_NORMAL_MESSAGE_SIZE = 0x66b30003, + PR_NORMAL_MESSAGE_SIZE_ERROR = 0x66b3000a, + PR_NORMAL_MESSAGE_SIZE_EXTENDED = 0x66b30014, + PR_ASSOC_MESSAGE_SIZE = 0x66b40003, + PR_ASSOC_MESSAGE_SIZE_ERROR = 0x66b4000a, + PR_ASSOC_MESSAGE_SIZE_EXTENDED = 0x66b40014, + PR_FOLDER_PATHNAME = 0x66b5001e, + PR_FOLDER_PATHNAME_UNICODE = 0x66b5001f, + PR_FOLDER_PATHNAME_ERROR = 0x66b5000a, + PR_OWNER_COUNT = 0x66b60003, + PR_OWNER_COUNT_ERROR = 0x66b6000a, + PR_CONTACT_COUNT = 0x66b70003, + PR_CONTACT_COUNT_ERROR = 0x66b7000a, + PR_CODE_PAGE_ID = 0x66c30003, + PR_CODE_PAGE_ID_ERROR = 0x66c3000a, + PR_RETENTION_AGE_LIMIT = 0x66c40003, + PR_RETENTION_AGE_LIMIT_ERROR = 0x66c4000a, + PR_DISABLE_PERUSER_READ = 0x66c5000b, + PR_DISABLE_PERUSER_READ_ERROR = 0x66c5000a, + PR_INTERNET_PARSE_STATE = 0x66c60102, + PR_INTERNET_PARSE_STATE_ERROR = 0x66c6000a, + PR_INTERNET_MESSAGE_INFO = 0x66c70102, + PR_INTERNET_MESSAGE_INFO_ERROR = 0x66c7000a, + PR_PST_PATH = 0x6700001e, + PR_PST_PATH_UNICODE = 0x6700001f, + PR_PST_PATH_ERROR = 0x6700000a, + PR_PST_REMEMBER_PW = 0x6701000b, + PR_PST_REMEMBER_PW_ERROR = 0x6701000a, + PR_OST_ENCRYPTION = 0x67020003, + PR_OST_ENCRYPTION_ERROR = 0x6702000a, + PR_PST_PW_SZ_OLD = 0x6703001e, + PR_PST_PW_SZ_OLD_UNICODE = 0x6703001f, + PR_PST_PW_SZ_OLD_ERROR = 0x6703000a, + PR_PST_PW_SZ_NEW = 0x6704001e, + PR_PST_PW_SZ_NEW_UNICODE = 0x6704001f, + PR_PST_PW_SZ_NEW_ERROR = 0x6704000a, + PR_SORT_LOCALE_ID = 0x67050003, + PR_SORT_LOCALE_ID_ERROR = 0x6705000a, + PR_URL_NAME = 0x6707001e, + PR_URL_NAME_UNICODE = 0x6707001f, + PR_URL_NAME_ERROR = 0x6707000a, + PR_LOCAL_COMMIT_TIME = 0x67090040, + PR_LOCAL_COMMIT_TIME_ERROR = 0x6709000a, + PR_LOCAL_COMMIT_TIME_MAX = 0x670a0040, + PR_LOCAL_COMMIT_TIME_MAX_ERROR = 0x670a000a, + PR_DELETED_COUNT_TOTAL = 0x670b0003, + PR_DELETED_COUNT_TOTAL_ERROR = 0x670b000a, + PR_AUTO_RESET = 0x670c0048, + PR_AUTO_RESET_ERROR = 0x670c000a, + PR_URL_COMP_NAME_HASH = 0x67100003, + PR_URL_COMP_NAME_HASH_ERROR = 0x6710000a, + PR_MSG_FOLDER_TEMPLATE_RES_2 = 0x67110003, + PR_MSG_FOLDER_TEMPLATE_RES_2_ERROR = 0x6711000a, + PR_RANK = 0x67120003, + PR_RANK_ERROR = 0x6712000a, + PR_MSG_FOLDER_TEMPLATE_RES_4 = 0x6713000b, + PR_MSG_FOLDER_TEMPLATE_RES_4_ERROR = 0x6713000a, + PR_MSG_FOLDER_TEMPLATE_RES_5 = 0x6714000b, + PR_MSG_FOLDER_TEMPLATE_RES_5_ERROR = 0x6714000a, + PR_MSG_FOLDER_TEMPLATE_RES_6 = 0x6715000b, + PR_MSG_FOLDER_TEMPLATE_RES_6_ERROR = 0x6715000a, + PR_MSG_FOLDER_TEMPLATE_RES_7 = 0x67160102, + PR_MSG_FOLDER_TEMPLATE_RES_7_ERROR = 0x6716000a, + PR_MSG_FOLDER_TEMPLATE_RES_8 = 0x67170102, + PR_MSG_FOLDER_TEMPLATE_RES_8_ERROR = 0x6717000a, + PR_MSG_FOLDER_TEMPLATE_RES_9 = 0x67180102, + PR_MSG_FOLDER_TEMPLATE_RES_9_ERROR = 0x6718000a, + PR_MSG_FOLDER_TEMPLATE_RES_10 = 0x6719001e, + PR_MSG_FOLDER_TEMPLATE_RES_10_UNICODE = 0x6719001f, + PR_MSG_FOLDER_TEMPLATE_RES_10_ERROR = 0x6719000a, + PR_MSG_FOLDER_TEMPLATE_RES_11 = 0x671a001e, + PR_MSG_FOLDER_TEMPLATE_RES_11_UNICODE = 0x671a001f, + PR_MSG_FOLDER_TEMPLATE_RES_11_ERROR = 0x671a000a, + PR_MSG_FOLDER_TEMPLATE_RES_12 = 0x671b001e, + PR_MSG_FOLDER_TEMPLATE_RES_12_UNICODE = 0x671b001f, + PR_MSG_FOLDER_TEMPLATE_RES_12_ERROR = 0x671b000a, + PR_PF_PLATINUM_HOME_MDB = 0x671e000b, + PR_PF_PLATINUM_HOME_MDB_ERROR = 0x671e000a, + PR_PF_PROXY_REQUIRED = 0x671f000b, + PR_PF_PROXY_REQUIRED_ERROR = 0x671f000a, + PR_INTERNET_FREE_DOC_INFO = 0x67200102, + PR_INTERNET_FREE_DOC_INFO_ERROR = 0x6720000a, + PR_PF_OVER_HARD_QUOTA_LIMIT = 0x67210003, + PR_PF_OVER_HARD_QUOTA_LIMIT_ERROR = 0x6721000a, + PR_PF_MSG_SIZE_LIMIT = 0x67220003, + PR_PF_MSG_SIZE_LIMIT_ERROR = 0x6722000a, + PR_CONNECTION_MODULUS = 0x67430003, + PR_CONNECTION_MODULUS_ERROR = 0x6743000a, + PR_DELIVER_TO_DN = 0x6744001e, + PR_DELIVER_TO_DN_UNICODE = 0x6744001f, + PR_DELIVER_TO_DN_ERROR = 0x6744000a, + PR_MIME_SIZE = 0x67460003, + PR_MIME_SIZE_ERROR = 0x6746000a, + PR_FILE_SIZE_EXTENDED = 0x67470014, + PR_FILE_SIZE_EXTENDED_ERROR = 0x6747000a, + PR_FID = 0x67480014, + PR_FID_ERROR = 0x6748000a, + PR_PARENT_FID = 0x67490014, + PR_PARENT_FID_ERROR = 0x6749000a, + PR_MID = 0x674a0014, + PR_MID_ERROR = 0x674a000a, + PR_CATEG_ID = 0x674b0014, + PR_CATEG_ID_ERROR = 0x674b000a, + PR_PARENT_CATEG_ID = 0x674c0014, + PR_PARENT_CATEG_ID_ERROR = 0x674c000a, + PR_INST_ID = 0x674d0014, + PR_INST_ID_ERROR = 0x674d000a, + PR_INSTANCE_NUM = 0x674e0003, + PR_INSTANCE_NUM_ERROR = 0x674e000a, + PR_ADDRBOOK_MID = 0x674f0014, + PR_ADDRBOOK_MID_ERROR = 0x674f000a, + PR_ICS_NOTIF = 0x67500003, + PR_ICS_NOTIF_ERROR = 0x6750000a, + PR_ARTICLE_NUM_NEXT = 0x67510003, + PR_ARTICLE_NUM_NEXT_ERROR = 0x6751000a, + PR_IMAP_LAST_ARTICLE_ID = 0x67520003, + PR_IMAP_LAST_ARTICLE_ID_ERROR = 0x6752000a, + PR_NOT_822_RENDERABLE = 0x6753000b, + PR_NOT_822_RENDERABLE_ERROR = 0x6753000a, + PR_LTID = 0x67580102, + PR_LTID_ERROR = 0x6758000a, + PR_CN_EXPORT = 0x67590102, + PR_CN_EXPORT_ERROR = 0x6759000a, + PR_PCL_EXPORT = 0x675a0102, + PR_PCL_EXPORT_ERROR = 0x675a000a, + PR_CN_MV_EXPORT = 0x675b1102, + PR_CN_MV_EXPORT_ERROR = 0x675b000a, + PR_PF_QUOTA_STYLE = 0x67790003, + PR_PF_QUOTA_STYLE_ERROR = 0x6779000a, + PR_PF_STORAGE_QUOTA = 0x677b0003, + PR_PF_STORAGE_QUOTA_ERROR = 0x677b000a, + PR_SEARCH_FLAGS = 0x67830003, + PR_SEARCH_FLAGS_ERROR = 0x6783000a, + PR_ASSOCIATED = 0x67aa000b, + PR_ASSOCIATED_ERROR = 0x67aa000a, + PR_PROFILE_SECURE_MAILBOX = 0x67f00102, + PR_PROFILE_SECURE_MAILBOX_ERROR = 0x67f0000a, + PR_MAILBEAT_BOUNCE_SERVER = 0x6800001e, + PR_MAILBEAT_BOUNCE_SERVER_UNICODE = 0x6800001f, + PR_MAILBEAT_BOUNCE_SERVER_ERROR = 0x6800000a, + PR_MAILBEAT_REQUEST_SENT = 0x68010040, + PR_MAILBEAT_REQUEST_SENT_ERROR = 0x6801000a, + PR_USENET_SITE_NAME = 0x6802001e, + PR_USENET_SITE_NAME_UNICODE = 0x6802001f, + PR_USENET_SITE_NAME_ERROR = 0x6802000a, + PR_MAILBEAT_REQUEST_RECEIVED = 0x68030040, + PR_MAILBEAT_REQUEST_RECEIVED_ERROR = 0x6803000a, + PR_MAILBEAT_REQUEST_PROCESSED = 0x68040040, + PR_MAILBEAT_REQUEST_PROCESSED_ERROR = 0x6804000a, + PR_MAILBEAT_REPLY_SENT = 0x68060040, + PR_MAILBEAT_REPLY_SENT_ERROR = 0x6806000a, + PR_MAILBEAT_REPLY_SUBMIT = 0x68070040, + PR_MAILBEAT_REPLY_SUBMIT_ERROR = 0x6807000a, + PR_MAILBEAT_REPLY_RECEIVED = 0x68080040, + PR_MAILBEAT_REPLY_RECEIVED_ERROR = 0x6808000a, + PR_MAILBEAT_REPLY_PROCESSED = 0x68090040, + PR_MAILBEAT_REPLY_PROCESSED_ERROR = 0x6809000a, + PR_DELEGATES_DISPLAY_NAMES = 0x6844101e, + PR_DELEGATES_DISPLAY_NAMES_UNICODE = 0x6844101f, + PR_DELEGATES_DISPLAY_NAMES_ERROR = 0x6844000a, + PR_DELEGATES_ENTRYIDS = 0x68451102, + PR_DELEGATES_ENTRYIDS_ERROR = 0x6845000a, + PR_FREEBUSY_START_RANGE = 0x68470003, + PR_FREEBUSY_START_RANGE_ERROR = 0x6847000a, + PR_FREEBUSY_END_RANGE = 0x68480003, + PR_FREEBUSY_END_RANGE_ERROR = 0x6848000a, + PR_FREEBUSY_EMAIL_ADDRESS = 0x6849001e, + PR_FREEBUSY_EMAIL_ADDRESS_UNICODE = 0x6849001f, + PR_FREEBUSY_EMAIL_ADDRESS_ERROR = 0x6849000a, + PR_FREEBUSY_ALL_MONTHS = 0x684f1003, + PR_FREEBUSY_ALL_MONTHS_ERROR = 0x684f000a, + PR_FREEBUSY_ALL_EVENTS = 0x68501102, + PR_FREEBUSY_ALL_EVENTS_ERROR = 0x6850000a, + PR_FREEBUSY_TENTATIVE_MONTHS = 0x68511003, + PR_FREEBUSY_TENTATIVE_MONTHS_ERROR = 0x6851000a, + PR_FREEBUSY_TENTATIVE_EVENTS = 0x68521102, + PR_FREEBUSY_TENTATIVE_EVENTS_ERROR = 0x6852000a, + PR_FREEBUSY_BUSY_MONTHS = 0x68531003, + PR_FREEBUSY_BUSY_MONTHS_ERROR = 0x6853000a, + PR_FREEBUSY_BUSY_EVENTS = 0x68541102, + PR_FREEBUSY_BUSY_EVENTS_ERROR = 0x6854000a, + PR_FREEBUSY_OOF_MONTHS = 0x68551003, + PR_FREEBUSY_OOF_MONTHS_ERROR = 0x6855000a, + PR_FREEBUSY_OOF_EVENTS = 0x68561102, + PR_FREEBUSY_OOF_EVENTS_ERROR = 0x6856000a, + PR_FREEBUSY_LAST_MODIFIED = 0x68680040, + PR_FREEBUSY_LAST_MODIFIED_ERROR = 0x6868000a, + PR_FREEBUSY_NUM_MONTHS = 0x68690003, + PR_FREEBUSY_NUM_MONTHS_ERROR = 0x6869000a, + PR_DELEGATES_SEE_PRIVATE = 0x686b1003, + PR_DELEGATES_SEE_PRIVATE_ERROR = 0x686b000a, + PR_PERSONAL_FREEBUSY = 0x686c0102, + PR_PERSONAL_FREEBUSY_ERROR = 0x686c000a, + PR_PROCESS_MEETING_REQUESTS = 0x686d000b, + PR_PROCESS_MEETING_REQUESTS_ERROR = 0x686d000a, + PR_DECLINE_RECURRING_MEETING_REQUESTS = 0x686e000b, + PR_DECLINE_RECURRING_MEETING_REQUESTS_ERROR = 0x686e000a, + PR_DECLINE_CONFLICTING_MEETING_REQUESTS = 0x686f000b, + PR_DECLINE_CONFLICTING_MEETING_REQUESTS_ERROR = 0x686f000a, + PR_VD_BINARY = 0x70010102, + PR_VD_BINARY_ERROR = 0x7001000a, + PR_VD_STRINGS = 0x7002001e, + PR_VD_STRINGS_UNICODE = 0x7002001f, + PR_VD_STRINGS_ERROR = 0x7002000a, + PR_VD_FLAGS = 0x70030003, + PR_VD_FLAGS_ERROR = 0x7003000a, + PR_VD_LINK_TO = 0x70040102, + PR_VD_LINK_TO_ERROR = 0x7004000a, + PR_VD_VIEW_FOLDER = 0x70050102, + PR_VD_VIEW_FOLDER_ERROR = 0x7005000a, + PR_VD_NAME = 0x7006001e, + PR_VD_NAME_UNICODE = 0x7006001f, + PR_VD_NAME_ERROR = 0x7006000a, + PR_VD_VERSION = 0x70070003, + PR_VD_VERSION_ERROR = 0x7007000a, + PR_FAV_DISPLAY_NAME_A = 0x7c00001e, + PR_FAV_DISPLAY_NAME_A_UNICODE = 0x7c00001f, + PR_FAV_DISPLAY_NAME_A_ERROR = 0x7c00000a, + PR_FAV_PUBLIC_SOURCE_KEY = 0x7c020102, + PR_FAV_PUBLIC_SOURCE_KEY_ERROR = 0x7c02000a, + PR_OST_OSTID = 0x7c040102, + PR_OST_OSTID_ERROR = 0x7c04000a, + PR_STORE_SLOWLINK = 0x7c0a000b, + PR_STORE_SLOWLINK_ERROR = 0x7c0a000a, + PR_FAV_AUTOSUBFOLDERS = 0x7d010003, + PR_FAV_AUTOSUBFOLDERS_ERROR = 0x7d01000a, + PR_FAV_PARENT_SOURCE_KEY = 0x7d020102, + PR_FAV_PARENT_SOURCE_KEY_ERROR = 0x7d02000a, + PR_FAV_LEVEL_MASK = 0x7d030003, + PR_FAV_LEVEL_MASK_ERROR = 0x7d03000a, + PR_FAV_INHERIT_AUTO = 0x7d070003, + PR_FAV_INHERIT_AUTO_ERROR = 0x7d07000a, + PR_FAV_DEL_SUBS = 0x7d080102, + PR_FAV_DEL_SUBS_ERROR = 0x7d08000a, + PR_ATTACHMENT_LINKID = 0x7ffa0003, + PR_ATTACHMENT_LINKID_ERROR = 0x7ffa000a, + PR_EXCEPTION_STARTTIME = 0x7ffb0040, + PR_EXCEPTION_STARTTIME_ERROR = 0x7ffb000a, + PR_EXCEPTION_ENDTIME = 0x7ffc0040, + PR_EXCEPTION_ENDTIME_ERROR = 0x7ffc000a, + PR_ATTACHMENT_FLAGS = 0x7ffd0003, + PR_ATTACHMENT_FLAGS_ERROR = 0x7ffd000a, + PR_ATTACHMENT_HIDDEN = 0x7ffe000b, + PR_ATTACHMENT_HIDDEN_ERROR = 0x7ffe000a, + PR_EMS_AB_DISPLAY_NAME_OVERRIDE = 0x8001000b, + PR_EMS_AB_DISPLAY_NAME_OVERRIDE_ERROR = 0x8001000a, + PR_EMS_AB_CA_CERTIFICATE = 0x80031102, + PR_EMS_AB_CA_CERTIFICATE_ERROR = 0x8003000a, + PR_EMS_AB_FOLDER_PATHNAME = 0x8004001e, + PR_EMS_AB_FOLDER_PATHNAME_UNICODE = 0x8004001f, + PR_EMS_AB_FOLDER_PATHNAME_ERROR = 0x8004000a, + PR_EMS_AB_MANAGER = 0x8005000d, + PR_EMS_AB_MANAGER_ERROR = 0x8005000a, + PR_EMS_AB_MANAGER_T = 0x8005001e, + PR_EMS_AB_MANAGER_T_UNICODE = 0x8005001f, + PR_EMS_AB_HOME_MDB_O = 0x8006000d, + PR_EMS_AB_HOME_MDB_O_ERROR = 0x8006000a, + PR_EMS_AB_HOME_MDB = 0x8006001e, + PR_EMS_AB_HOME_MDB_UNICODE = 0x8006001f, + PR_EMS_AB_HOME_MTA_O = 0x8007000d, + PR_EMS_AB_HOME_MTA_O_ERROR = 0x8007000a, + PR_EMS_AB_HOME_MTA = 0x8007001e, + PR_EMS_AB_HOME_MTA_UNICODE = 0x8007001f, + PR_EMS_AB_IS_MEMBER_OF_DL = 0x8008000d, + PR_EMS_AB_IS_MEMBER_OF_DL_ERROR = 0x8008000a, + PR_EMS_AB_IS_MEMBER_OF_DL_T = 0x8008001e, + PR_EMS_AB_IS_MEMBER_OF_DL_T_UNICODE = 0x8008001f, + PR_EMS_AB_MEMBER = 0x8009000d, + PR_EMS_AB_MEMBER_ERROR = 0x8009000a, + PR_EMS_AB_MEMBER_T = 0x8009001e, + PR_EMS_AB_MEMBER_T_UNICODE = 0x8009001f, + PR_EMS_AB_AUTOREPLY_MESSAGE = 0x800a001e, + PR_EMS_AB_AUTOREPLY_MESSAGE_UNICODE = 0x800a001f, + PR_EMS_AB_AUTOREPLY_MESSAGE_ERROR = 0x800a000a, + PR_EMS_AB_AUTOREPLY = 0x800b000b, + PR_EMS_AB_AUTOREPLY_ERROR = 0x800b000a, + PR_EMS_AB_OWNER_O = 0x800c000d, + PR_EMS_AB_OWNER_O_ERROR = 0x800c000a, + PR_EMS_AB_OWNER = 0x800c001e, + PR_EMS_AB_OWNER_UNICODE = 0x800c001f, + PR_EMS_AB_KM_SERVER_O = 0x800d000d, + PR_EMS_AB_KM_SERVER_O_ERROR = 0x800d000a, + PR_EMS_AB_KM_SERVER = 0x800d001e, + PR_EMS_AB_KM_SERVER_UNICODE = 0x800d001f, + PR_EMS_AB_REPORTS = 0x800e000d, + PR_EMS_AB_REPORTS_ERROR = 0x800e000a, + PR_EMS_AB_PROXY_ADDRESSES = 0x800f101e, + PR_EMS_AB_PROXY_ADDRESSES_UNICODE = 0x800f101f, + PR_EMS_AB_PROXY_ADDRESSES_ERROR = 0x800f000a, + PR_EMS_AB_HELP_DATA32 = 0x80100102, + PR_EMS_AB_HELP_DATA32_ERROR = 0x8010000a, + PR_EMS_AB_TARGET_ADDRESS = 0x8011001e, + PR_EMS_AB_TARGET_ADDRESS_UNICODE = 0x8011001f, + PR_EMS_AB_TARGET_ADDRESS_ERROR = 0x8011000a, + PR_EMS_AB_TELEPHONE_NUMBER = 0x8012101e, + PR_EMS_AB_TELEPHONE_NUMBER_UNICODE = 0x8012101f, + PR_EMS_AB_TELEPHONE_NUMBER_ERROR = 0x8012000a, + PR_EMS_AB_NT_SECURITY_DESCRIPTOR = 0x80130102, + PR_EMS_AB_NT_SECURITY_DESCRIPTOR_ERROR = 0x8013000a, + PR_EMS_AB_HOME_MDB_BL_O = 0x8014000d, + PR_EMS_AB_HOME_MDB_BL_O_ERROR = 0x8014000a, + PR_EMS_AB_HOME_MDB_BL = 0x8014101e, + PR_EMS_AB_HOME_MDB_BL_UNICODE = 0x8014101f, + PR_EMS_AB_PUBLIC_DELEGATES = 0x8015000d, + PR_EMS_AB_PUBLIC_DELEGATES_ERROR = 0x8015000a, + PR_EMS_AB_PUBLIC_DELEGATES_T = 0x8015001e, + PR_EMS_AB_PUBLIC_DELEGATES_T_UNICODE = 0x8015001f, + PR_EMS_AB_CERTIFICATE_REVOCATION_LIST = 0x80160102, + PR_EMS_AB_CERTIFICATE_REVOCATION_LIST_ERROR = 0x8016000a, + PR_EMS_AB_ADDRESS_ENTRY_DISPLAY_TABLE = 0x80170102, + PR_EMS_AB_ADDRESS_ENTRY_DISPLAY_TABLE_ERROR = 0x8017000a, + PR_EMS_AB_ADDRESS_SYNTAX = 0x80180102, + PR_EMS_AB_ADDRESS_SYNTAX_ERROR = 0x8018000a, + PR_EMS_AB_BUSINESS_ROLES = 0x80230102, + PR_EMS_AB_BUSINESS_ROLES_ERROR = 0x8023000a, + PR_EMS_AB_OWNER_BL_O = 0x8024000d, + PR_EMS_AB_OWNER_BL_O_ERROR = 0x8024000a, + PR_EMS_AB_OWNER_BL = 0x8024101e, + PR_EMS_AB_OWNER_BL_UNICODE = 0x8024101f, + PR_EMS_AB_CROSS_CERTIFICATE_PAIR = 0x80251102, + PR_EMS_AB_CROSS_CERTIFICATE_PAIR_ERROR = 0x8025000a, + PR_EMS_AB_AUTHORITY_REVOCATION_LIST = 0x80261102, + PR_EMS_AB_AUTHORITY_REVOCATION_LIST_ERROR = 0x8026000a, + PR_EMS_AB_ASSOC_NT_ACCOUNT = 0x80270102, + PR_EMS_AB_ASSOC_NT_ACCOUNT_ERROR = 0x8027000a, + PR_EMS_AB_EXPIRATION_TIME = 0x80280040, + PR_EMS_AB_EXPIRATION_TIME_ERROR = 0x8028000a, + PR_EMS_AB_USN_CHANGED = 0x80290003, + PR_EMS_AB_USN_CHANGED_ERROR = 0x8029000a, + PR_EMS_AB_EXTENSION_ATTRIBUTE_1 = 0x802d001e, + PR_EMS_AB_EXTENSION_ATTRIBUTE_1_UNICODE = 0x802d001f, + PR_EMS_AB_EXTENSION_ATTRIBUTE_1_ERROR = 0x802d000a, + PR_EMS_AB_EXTENSION_ATTRIBUTE_2 = 0x802e001e, + PR_EMS_AB_EXTENSION_ATTRIBUTE_2_UNICODE = 0x802e001f, + PR_EMS_AB_EXTENSION_ATTRIBUTE_2_ERROR = 0x802e000a, + PR_EMS_AB_EXTENSION_ATTRIBUTE_3 = 0x802f001e, + PR_EMS_AB_EXTENSION_ATTRIBUTE_3_UNICODE = 0x802f001f, + PR_EMS_AB_EXTENSION_ATTRIBUTE_3_ERROR = 0x802f000a, + PR_EMS_AB_EXTENSION_ATTRIBUTE_4 = 0x8030001e, + PR_EMS_AB_EXTENSION_ATTRIBUTE_4_UNICODE = 0x8030001f, + PR_EMS_AB_EXTENSION_ATTRIBUTE_4_ERROR = 0x8030000a, + PR_EMS_AB_EXTENSION_ATTRIBUTE_5 = 0x8031001e, + PR_EMS_AB_EXTENSION_ATTRIBUTE_5_UNICODE = 0x8031001f, + PR_EMS_AB_EXTENSION_ATTRIBUTE_5_ERROR = 0x8031000a, + PR_EMS_AB_EXTENSION_ATTRIBUTE_6 = 0x8032001e, + PR_EMS_AB_EXTENSION_ATTRIBUTE_6_UNICODE = 0x8032001f, + PR_EMS_AB_EXTENSION_ATTRIBUTE_6_ERROR = 0x8032000a, + PR_EMS_AB_EXTENSION_ATTRIBUTE_7 = 0x8033001e, + PR_EMS_AB_EXTENSION_ATTRIBUTE_7_UNICODE = 0x8033001f, + PR_EMS_AB_EXTENSION_ATTRIBUTE_7_ERROR = 0x8033000a, + PR_EMS_AB_EXTENSION_ATTRIBUTE_8 = 0x8034001e, + PR_EMS_AB_EXTENSION_ATTRIBUTE_8_UNICODE = 0x8034001f, + PR_EMS_AB_EXTENSION_ATTRIBUTE_8_ERROR = 0x8034000a, + PR_EMS_AB_EXTENSION_ATTRIBUTE_9 = 0x8035001e, + PR_EMS_AB_EXTENSION_ATTRIBUTE_9_UNICODE = 0x8035001f, + PR_EMS_AB_EXTENSION_ATTRIBUTE_9_ERROR = 0x8035000a, + PR_EMS_AB_EXTENSION_ATTRIBUTE_10 = 0x8036001e, + PR_EMS_AB_EXTENSION_ATTRIBUTE_10_UNICODE = 0x8036001f, + PR_EMS_AB_EXTENSION_ATTRIBUTE_10_ERROR = 0x8036000a, + PR_EMS_AB_SECURITY_PROTOCOL = 0x80371102, + PR_EMS_AB_SECURITY_PROTOCOL_ERROR = 0x8037000a, + PR_EMS_AB_PF_CONTACTS_O = 0x8038000d, + PR_EMS_AB_PF_CONTACTS_O_ERROR = 0x8038000a, + PR_EMS_AB_PF_CONTACTS = 0x8038101e, + PR_EMS_AB_PF_CONTACTS_UNICODE = 0x8038101f, + PR_EMS_AB_HELP_DATA16 = 0x803a0102, + PR_EMS_AB_HELP_DATA16_ERROR = 0x803a000a, + PR_EMS_AB_HELP_FILE_NAME = 0x803b001e, + PR_EMS_AB_HELP_FILE_NAME_UNICODE = 0x803b001f, + PR_EMS_AB_HELP_FILE_NAME_ERROR = 0x803b000a, + PR_EMS_AB_OBJ_DIST_NAME_O = 0x803c000d, + PR_EMS_AB_OBJ_DIST_NAME_O_ERROR = 0x803c000a, + PR_EMS_AB_OBJ_DIST_NAME = 0x803c001e, + PR_EMS_AB_OBJ_DIST_NAME_UNICODE = 0x803c001f, + PR_EMS_AB_ENCRYPT_ALG_SELECTED_OTHER = 0x803d001e, + PR_EMS_AB_ENCRYPT_ALG_SELECTED_OTHER_UNICODE = 0x803d001f, + PR_EMS_AB_ENCRYPT_ALG_SELECTED_OTHER_ERROR = 0x803d000a, + PR_EMS_AB_AUTOREPLY_SUBJECT = 0x803e001e, + PR_EMS_AB_AUTOREPLY_SUBJECT_UNICODE = 0x803e001f, + PR_EMS_AB_AUTOREPLY_SUBJECT_ERROR = 0x803e000a, + PR_EMS_AB_HOME_PUBLIC_SERVER_O = 0x803f000d, + PR_EMS_AB_HOME_PUBLIC_SERVER_O_ERROR = 0x803f000a, + PR_EMS_AB_HOME_PUBLIC_SERVER = 0x803f001e, + PR_EMS_AB_HOME_PUBLIC_SERVER_UNICODE = 0x803f001f, + PR_EMS_AB_ENCRYPT_ALG_LIST_NA = 0x8040101e, + PR_EMS_AB_ENCRYPT_ALG_LIST_NA_UNICODE = 0x8040101f, + PR_EMS_AB_ENCRYPT_ALG_LIST_NA_ERROR = 0x8040000a, + PR_EMS_AB_ENCRYPT_ALG_LIST_OTHER = 0x8041101e, + PR_EMS_AB_ENCRYPT_ALG_LIST_OTHER_UNICODE = 0x8041101f, + PR_EMS_AB_ENCRYPT_ALG_LIST_OTHER_ERROR = 0x8041000a, + PR_EMS_AB_IMPORTED_FROM = 0x8042001e, + PR_EMS_AB_IMPORTED_FROM_UNICODE = 0x8042001f, + PR_EMS_AB_IMPORTED_FROM_ERROR = 0x8042000a, + PR_EMS_AB_ENCRYPT_ALG_SELECTED_NA = 0x8043001e, + PR_EMS_AB_ENCRYPT_ALG_SELECTED_NA_UNICODE = 0x8043001f, + PR_EMS_AB_ENCRYPT_ALG_SELECTED_NA_ERROR = 0x8043000a, + PR_EMS_AB_ACCESS_CATEGORY = 0x80440003, + PR_EMS_AB_ACCESS_CATEGORY_ERROR = 0x8044000a, + PR_EMS_AB_ACTIVATION_SCHEDULE = 0x80450102, + PR_EMS_AB_ACTIVATION_SCHEDULE_ERROR = 0x8045000a, + PR_EMS_AB_ACTIVATION_STYLE = 0x80460003, + PR_EMS_AB_ACTIVATION_STYLE_ERROR = 0x8046000a, + PR_EMS_AB_ADDRESS_ENTRY_DISPLAY_TABLE_MSDOS = 0x80470102, + PR_EMS_AB_ADDRESS_ENTRY_DISPLAY_TABLE_MSDOS_ERROR = 0x8047000a, + PR_EMS_AB_ADDRESS_TYPE = 0x8048001e, + PR_EMS_AB_ADDRESS_TYPE_UNICODE = 0x8048001f, + PR_EMS_AB_ADDRESS_TYPE_ERROR = 0x8048000a, + PR_EMS_AB_ADMD = 0x8049001e, + PR_EMS_AB_ADMD_UNICODE = 0x8049001f, + PR_EMS_AB_ADMD_ERROR = 0x8049000a, + PR_EMS_AB_ADMIN_DESCRIPTION = 0x804a001e, + PR_EMS_AB_ADMIN_DESCRIPTION_UNICODE = 0x804a001f, + PR_EMS_AB_ADMIN_DESCRIPTION_ERROR = 0x804a000a, + PR_EMS_AB_ADMIN_DISPLAY_NAME = 0x804b001e, + PR_EMS_AB_ADMIN_DISPLAY_NAME_UNICODE = 0x804b001f, + PR_EMS_AB_ADMIN_DISPLAY_NAME_ERROR = 0x804b000a, + PR_EMS_AB_ADMIN_EXTENSION_DLL = 0x804c001e, + PR_EMS_AB_ADMIN_EXTENSION_DLL_UNICODE = 0x804c001f, + PR_EMS_AB_ADMIN_EXTENSION_DLL_ERROR = 0x804c000a, + PR_EMS_AB_ALIASED_OBJECT_NAME_O = 0x804d000d, + PR_EMS_AB_ALIASED_OBJECT_NAME_O_ERROR = 0x804d000a, + PR_EMS_AB_ALIASED_OBJECT_NAME = 0x804d001e, + PR_EMS_AB_ALIASED_OBJECT_NAME_UNICODE = 0x804d001f, + PR_EMS_AB_ALT_RECIPIENT_O = 0x804e000d, + PR_EMS_AB_ALT_RECIPIENT_O_ERROR = 0x804e000a, + PR_EMS_AB_ALT_RECIPIENT = 0x804e001e, + PR_EMS_AB_ALT_RECIPIENT_UNICODE = 0x804e001f, + PR_EMS_AB_ALT_RECIPIENT_BL_O = 0x804f000d, + PR_EMS_AB_ALT_RECIPIENT_BL_O_ERROR = 0x804f000a, + PR_EMS_AB_ALT_RECIPIENT_BL = 0x804f101e, + PR_EMS_AB_ALT_RECIPIENT_BL_UNICODE = 0x804f101f, + PR_EMS_AB_ANCESTOR_ID = 0x80500102, + PR_EMS_AB_ANCESTOR_ID_ERROR = 0x8050000a, + PR_EMS_AB_ASSOC_REMOTE_DXA_O = 0x8051000d, + PR_EMS_AB_ASSOC_REMOTE_DXA_O_ERROR = 0x8051000a, + PR_EMS_AB_ASSOC_REMOTE_DXA = 0x8051101e, + PR_EMS_AB_ASSOC_REMOTE_DXA_UNICODE = 0x8051101f, + PR_EMS_AB_ASSOCIATION_LIFETIME = 0x80520003, + PR_EMS_AB_ASSOCIATION_LIFETIME_ERROR = 0x8052000a, + PR_EMS_AB_AUTH_ORIG_BL_O = 0x8053000d, + PR_EMS_AB_AUTH_ORIG_BL_O_ERROR = 0x8053000a, + PR_EMS_AB_AUTH_ORIG_BL = 0x8053101e, + PR_EMS_AB_AUTH_ORIG_BL_UNICODE = 0x8053101f, + PR_EMS_AB_AUTHORIZED_DOMAIN = 0x8054001e, + PR_EMS_AB_AUTHORIZED_DOMAIN_UNICODE = 0x8054001f, + PR_EMS_AB_AUTHORIZED_DOMAIN_ERROR = 0x8054000a, + PR_EMS_AB_AUTHORIZED_PASSWORD = 0x80550102, + PR_EMS_AB_AUTHORIZED_PASSWORD_ERROR = 0x8055000a, + PR_EMS_AB_AUTHORIZED_USER = 0x8056001e, + PR_EMS_AB_AUTHORIZED_USER_UNICODE = 0x8056001f, + PR_EMS_AB_AUTHORIZED_USER_ERROR = 0x8056000a, + PR_EMS_AB_BUSINESS_CATEGORY = 0x8057101e, + PR_EMS_AB_BUSINESS_CATEGORY_UNICODE = 0x8057101f, + PR_EMS_AB_BUSINESS_CATEGORY_ERROR = 0x8057000a, + PR_EMS_AB_CAN_CREATE_PF_O = 0x8058000d, + PR_EMS_AB_CAN_CREATE_PF_O_ERROR = 0x8058000a, + PR_EMS_AB_CAN_CREATE_PF = 0x8058101e, + PR_EMS_AB_CAN_CREATE_PF_UNICODE = 0x8058101f, + PR_EMS_AB_CAN_CREATE_PF_BL_O = 0x8059000d, + PR_EMS_AB_CAN_CREATE_PF_BL_O_ERROR = 0x8059000a, + PR_EMS_AB_CAN_CREATE_PF_BL = 0x8059101e, + PR_EMS_AB_CAN_CREATE_PF_BL_UNICODE = 0x8059101f, + PR_EMS_AB_CAN_CREATE_PF_DL_O = 0x805a000d, + PR_EMS_AB_CAN_CREATE_PF_DL_O_ERROR = 0x805a000a, + PR_EMS_AB_CAN_CREATE_PF_DL = 0x805a101e, + PR_EMS_AB_CAN_CREATE_PF_DL_UNICODE = 0x805a101f, + PR_EMS_AB_CAN_CREATE_PF_DL_BL_O = 0x805b000d, + PR_EMS_AB_CAN_CREATE_PF_DL_BL_O_ERROR = 0x805b000a, + PR_EMS_AB_CAN_CREATE_PF_DL_BL = 0x805b101e, + PR_EMS_AB_CAN_CREATE_PF_DL_BL_UNICODE = 0x805b101f, + PR_EMS_AB_CAN_NOT_CREATE_PF_O = 0x805c000d, + PR_EMS_AB_CAN_NOT_CREATE_PF_O_ERROR = 0x805c000a, + PR_EMS_AB_CAN_NOT_CREATE_PF = 0x805c101e, + PR_EMS_AB_CAN_NOT_CREATE_PF_UNICODE = 0x805c101f, + PR_EMS_AB_CAN_NOT_CREATE_PF_BL_O = 0x805d000d, + PR_EMS_AB_CAN_NOT_CREATE_PF_BL_O_ERROR = 0x805d000a, + PR_EMS_AB_CAN_NOT_CREATE_PF_BL = 0x805d101e, + PR_EMS_AB_CAN_NOT_CREATE_PF_BL_UNICODE = 0x805d101f, + PR_EMS_AB_CAN_NOT_CREATE_PF_DL_O = 0x805e000d, + PR_EMS_AB_CAN_NOT_CREATE_PF_DL_O_ERROR = 0x805e000a, + PR_EMS_AB_CAN_NOT_CREATE_PF_DL = 0x805e101e, + PR_EMS_AB_CAN_NOT_CREATE_PF_DL_UNICODE = 0x805e101f, + PR_EMS_AB_CAN_NOT_CREATE_PF_DL_BL_O = 0x805f000d, + PR_EMS_AB_CAN_NOT_CREATE_PF_DL_BL_O_ERROR = 0x805f000a, + PR_EMS_AB_CAN_NOT_CREATE_PF_DL_BL = 0x805f101e, + PR_EMS_AB_CAN_NOT_CREATE_PF_DL_BL_UNICODE = 0x805f101f, + PR_EMS_AB_CAN_PRESERVE_DNS = 0x8060000b, + PR_EMS_AB_CAN_PRESERVE_DNS_ERROR = 0x8060000a, + PR_EMS_AB_CLOCK_ALERT_OFFSET = 0x80610003, + PR_EMS_AB_CLOCK_ALERT_OFFSET_ERROR = 0x8061000a, + PR_EMS_AB_CLOCK_ALERT_REPAIR = 0x8062000b, + PR_EMS_AB_CLOCK_ALERT_REPAIR_ERROR = 0x8062000a, + PR_EMS_AB_CLOCK_WARNING_OFFSET = 0x80630003, + PR_EMS_AB_CLOCK_WARNING_OFFSET_ERROR = 0x8063000a, + PR_EMS_AB_CLOCK_WARNING_REPAIR = 0x8064000b, + PR_EMS_AB_CLOCK_WARNING_REPAIR_ERROR = 0x8064000a, + PR_EMS_AB_COMPUTER_NAME = 0x8065001e, + PR_EMS_AB_COMPUTER_NAME_UNICODE = 0x8065001f, + PR_EMS_AB_COMPUTER_NAME_ERROR = 0x8065000a, + PR_EMS_AB_CONNECTED_DOMAINS = 0x8066101e, + PR_EMS_AB_CONNECTED_DOMAINS_UNICODE = 0x8066101f, + PR_EMS_AB_CONNECTED_DOMAINS_ERROR = 0x8066000a, + PR_EMS_AB_CONTAINER_INFO = 0x80670003, + PR_EMS_AB_CONTAINER_INFO_ERROR = 0x8067000a, + PR_EMS_AB_COST = 0x80680003, + PR_EMS_AB_COST_ERROR = 0x8068000a, + PR_EMS_AB_COUNTRY_NAME = 0x8069001e, + PR_EMS_AB_COUNTRY_NAME_UNICODE = 0x8069001f, + PR_EMS_AB_COUNTRY_NAME_ERROR = 0x8069000a, + PR_EMS_AB_DELIV_CONT_LENGTH = 0x806a0003, + PR_EMS_AB_DELIV_CONT_LENGTH_ERROR = 0x806a000a, + PR_EMS_AB_DELIV_EITS = 0x806b1102, + PR_EMS_AB_DELIV_EITS_ERROR = 0x806b000a, + PR_EMS_AB_DELIV_EXT_CONT_TYPES = 0x806c1102, + PR_EMS_AB_DELIV_EXT_CONT_TYPES_ERROR = 0x806c000a, + PR_EMS_AB_DELIVER_AND_REDIRECT = 0x806d000b, + PR_EMS_AB_DELIVER_AND_REDIRECT_ERROR = 0x806d000a, + PR_EMS_AB_DELIVERY_MECHANISM = 0x806e0003, + PR_EMS_AB_DELIVERY_MECHANISM_ERROR = 0x806e000a, + PR_EMS_AB_DESCRIPTION = 0x806f101e, + PR_EMS_AB_DESCRIPTION_UNICODE = 0x806f101f, + PR_EMS_AB_DESCRIPTION_ERROR = 0x806f000a, + PR_EMS_AB_DESTINATION_INDICATOR = 0x8070101e, + PR_EMS_AB_DESTINATION_INDICATOR_UNICODE = 0x8070101f, + PR_EMS_AB_DESTINATION_INDICATOR_ERROR = 0x8070000a, + PR_EMS_AB_DIAGNOSTIC_REG_KEY = 0x8071001e, + PR_EMS_AB_DIAGNOSTIC_REG_KEY_UNICODE = 0x8071001f, + PR_EMS_AB_DIAGNOSTIC_REG_KEY_ERROR = 0x8071000a, + PR_EMS_AB_DL_MEM_REJECT_PERMS_BL_O = 0x8072000d, + PR_EMS_AB_DL_MEM_REJECT_PERMS_BL_O_ERROR = 0x8072000a, + PR_EMS_AB_DL_MEM_REJECT_PERMS_BL = 0x8072101e, + PR_EMS_AB_DL_MEM_REJECT_PERMS_BL_UNICODE = 0x8072101f, + PR_EMS_AB_DL_MEM_SUBMIT_PERMS_BL_O = 0x8073000d, + PR_EMS_AB_DL_MEM_SUBMIT_PERMS_BL_O_ERROR = 0x8073000a, + PR_EMS_AB_DL_MEM_SUBMIT_PERMS_BL = 0x8073101e, + PR_EMS_AB_DL_MEM_SUBMIT_PERMS_BL_UNICODE = 0x8073101f, + PR_EMS_AB_DL_MEMBER_RULE = 0x80741102, + PR_EMS_AB_DL_MEMBER_RULE_ERROR = 0x8074000a, + PR_EMS_AB_DOMAIN_DEF_ALT_RECIP_O = 0x8075000d, + PR_EMS_AB_DOMAIN_DEF_ALT_RECIP_O_ERROR = 0x8075000a, + PR_EMS_AB_DOMAIN_DEF_ALT_RECIP = 0x8075001e, + PR_EMS_AB_DOMAIN_DEF_ALT_RECIP_UNICODE = 0x8075001f, + PR_EMS_AB_DOMAIN_NAME = 0x8076001e, + PR_EMS_AB_DOMAIN_NAME_UNICODE = 0x8076001f, + PR_EMS_AB_DOMAIN_NAME_ERROR = 0x8076000a, + PR_EMS_AB_DSA_SIGNATURE = 0x80770102, + PR_EMS_AB_DSA_SIGNATURE_ERROR = 0x8077000a, + PR_EMS_AB_DXA_ADMIN_COPY = 0x8078000b, + PR_EMS_AB_DXA_ADMIN_COPY_ERROR = 0x8078000a, + PR_EMS_AB_DXA_ADMIN_FORWARD = 0x8079000b, + PR_EMS_AB_DXA_ADMIN_FORWARD_ERROR = 0x8079000a, + PR_EMS_AB_DXA_ADMIN_UPDATE = 0x807a0003, + PR_EMS_AB_DXA_ADMIN_UPDATE_ERROR = 0x807a000a, + PR_EMS_AB_DXA_APPEND_REQCN = 0x807b000b, + PR_EMS_AB_DXA_APPEND_REQCN_ERROR = 0x807b000a, + PR_EMS_AB_DXA_CONF_CONTAINER_LIST_O = 0x807c000d, + PR_EMS_AB_DXA_CONF_CONTAINER_LIST_O_ERROR = 0x807c000a, + PR_EMS_AB_DXA_CONF_CONTAINER_LIST = 0x807c101e, + PR_EMS_AB_DXA_CONF_CONTAINER_LIST_UNICODE = 0x807c101f, + PR_EMS_AB_DXA_CONF_REQ_TIME = 0x807d0040, + PR_EMS_AB_DXA_CONF_REQ_TIME_ERROR = 0x807d000a, + PR_EMS_AB_DXA_CONF_SEQ = 0x807e001e, + PR_EMS_AB_DXA_CONF_SEQ_UNICODE = 0x807e001f, + PR_EMS_AB_DXA_CONF_SEQ_ERROR = 0x807e000a, + PR_EMS_AB_DXA_CONF_SEQ_USN = 0x807f0003, + PR_EMS_AB_DXA_CONF_SEQ_USN_ERROR = 0x807f000a, + PR_EMS_AB_DXA_EXCHANGE_OPTIONS = 0x80800003, + PR_EMS_AB_DXA_EXCHANGE_OPTIONS_ERROR = 0x8080000a, + PR_EMS_AB_DXA_EXPORT_NOW = 0x8081000b, + PR_EMS_AB_DXA_EXPORT_NOW_ERROR = 0x8081000a, + PR_EMS_AB_DXA_FLAGS = 0x80820003, + PR_EMS_AB_DXA_FLAGS_ERROR = 0x8082000a, + PR_EMS_AB_DXA_IMP_SEQ = 0x8083001e, + PR_EMS_AB_DXA_IMP_SEQ_UNICODE = 0x8083001f, + PR_EMS_AB_DXA_IMP_SEQ_ERROR = 0x8083000a, + PR_EMS_AB_DXA_IMP_SEQ_TIME = 0x80840040, + PR_EMS_AB_DXA_IMP_SEQ_TIME_ERROR = 0x8084000a, + PR_EMS_AB_DXA_IMP_SEQ_USN = 0x80850003, + PR_EMS_AB_DXA_IMP_SEQ_USN_ERROR = 0x8085000a, + PR_EMS_AB_DXA_IMPORT_NOW = 0x8086000b, + PR_EMS_AB_DXA_IMPORT_NOW_ERROR = 0x8086000a, + PR_EMS_AB_DXA_IN_TEMPLATE_MAP = 0x8087101e, + PR_EMS_AB_DXA_IN_TEMPLATE_MAP_UNICODE = 0x8087101f, + PR_EMS_AB_DXA_IN_TEMPLATE_MAP_ERROR = 0x8087000a, + PR_EMS_AB_DXA_LOCAL_ADMIN_O = 0x8088000d, + PR_EMS_AB_DXA_LOCAL_ADMIN_O_ERROR = 0x8088000a, + PR_EMS_AB_DXA_LOCAL_ADMIN = 0x8088001e, + PR_EMS_AB_DXA_LOCAL_ADMIN_UNICODE = 0x8088001f, + PR_EMS_AB_DXA_LOGGING_LEVEL = 0x80890003, + PR_EMS_AB_DXA_LOGGING_LEVEL_ERROR = 0x8089000a, + PR_EMS_AB_DXA_NATIVE_ADDRESS_TYPE = 0x808a001e, + PR_EMS_AB_DXA_NATIVE_ADDRESS_TYPE_UNICODE = 0x808a001f, + PR_EMS_AB_DXA_NATIVE_ADDRESS_TYPE_ERROR = 0x808a000a, + PR_EMS_AB_DXA_OUT_TEMPLATE_MAP = 0x808b101e, + PR_EMS_AB_DXA_OUT_TEMPLATE_MAP_UNICODE = 0x808b101f, + PR_EMS_AB_DXA_OUT_TEMPLATE_MAP_ERROR = 0x808b000a, + PR_EMS_AB_DXA_PASSWORD = 0x808c001e, + PR_EMS_AB_DXA_PASSWORD_UNICODE = 0x808c001f, + PR_EMS_AB_DXA_PASSWORD_ERROR = 0x808c000a, + PR_EMS_AB_DXA_PREV_EXCHANGE_OPTIONS = 0x808d0003, + PR_EMS_AB_DXA_PREV_EXCHANGE_OPTIONS_ERROR = 0x808d000a, + PR_EMS_AB_DXA_PREV_EXPORT_NATIVE_ONLY = 0x808e000b, + PR_EMS_AB_DXA_PREV_EXPORT_NATIVE_ONLY_ERROR = 0x808e000a, + PR_EMS_AB_DXA_PREV_IN_EXCHANGE_SENSITIVITY = 0x808f0003, + PR_EMS_AB_DXA_PREV_IN_EXCHANGE_SENSITIVITY_ERROR = 0x808f000a, + PR_EMS_AB_DXA_PREV_REMOTE_ENTRIES_O = 0x8090000d, + PR_EMS_AB_DXA_PREV_REMOTE_ENTRIES_O_ERROR = 0x8090000a, + PR_EMS_AB_DXA_PREV_REMOTE_ENTRIES = 0x8090001e, + PR_EMS_AB_DXA_PREV_REMOTE_ENTRIES_UNICODE = 0x8090001f, + PR_EMS_AB_DXA_PREV_REPLICATION_SENSITIVITY = 0x80910003, + PR_EMS_AB_DXA_PREV_REPLICATION_SENSITIVITY_ERROR = 0x8091000a, + PR_EMS_AB_DXA_PREV_TEMPLATE_OPTIONS = 0x80920003, + PR_EMS_AB_DXA_PREV_TEMPLATE_OPTIONS_ERROR = 0x8092000a, + PR_EMS_AB_DXA_PREV_TYPES = 0x80930003, + PR_EMS_AB_DXA_PREV_TYPES_ERROR = 0x8093000a, + PR_EMS_AB_DXA_RECIPIENT_CP = 0x8094001e, + PR_EMS_AB_DXA_RECIPIENT_CP_UNICODE = 0x8094001f, + PR_EMS_AB_DXA_RECIPIENT_CP_ERROR = 0x8094000a, + PR_EMS_AB_DXA_REMOTE_CLIENT_O = 0x8095000d, + PR_EMS_AB_DXA_REMOTE_CLIENT_O_ERROR = 0x8095000a, + PR_EMS_AB_DXA_REMOTE_CLIENT = 0x8095001e, + PR_EMS_AB_DXA_REMOTE_CLIENT_UNICODE = 0x8095001f, + PR_EMS_AB_DXA_REQ_SEQ = 0x8096001e, + PR_EMS_AB_DXA_REQ_SEQ_UNICODE = 0x8096001f, + PR_EMS_AB_DXA_REQ_SEQ_ERROR = 0x8096000a, + PR_EMS_AB_DXA_REQ_SEQ_TIME = 0x80970040, + PR_EMS_AB_DXA_REQ_SEQ_TIME_ERROR = 0x8097000a, + PR_EMS_AB_DXA_REQ_SEQ_USN = 0x80980003, + PR_EMS_AB_DXA_REQ_SEQ_USN_ERROR = 0x8098000a, + PR_EMS_AB_DXA_REQNAME = 0x8099001e, + PR_EMS_AB_DXA_REQNAME_UNICODE = 0x8099001f, + PR_EMS_AB_DXA_REQNAME_ERROR = 0x8099000a, + PR_EMS_AB_DXA_SVR_SEQ = 0x809a001e, + PR_EMS_AB_DXA_SVR_SEQ_UNICODE = 0x809a001f, + PR_EMS_AB_DXA_SVR_SEQ_ERROR = 0x809a000a, + PR_EMS_AB_DXA_SVR_SEQ_TIME = 0x809b0040, + PR_EMS_AB_DXA_SVR_SEQ_TIME_ERROR = 0x809b000a, + PR_EMS_AB_DXA_SVR_SEQ_USN = 0x809c0003, + PR_EMS_AB_DXA_SVR_SEQ_USN_ERROR = 0x809c000a, + PR_EMS_AB_DXA_TASK = 0x809d0003, + PR_EMS_AB_DXA_TASK_ERROR = 0x809d000a, + PR_EMS_AB_DXA_TEMPLATE_OPTIONS = 0x809e0003, + PR_EMS_AB_DXA_TEMPLATE_OPTIONS_ERROR = 0x809e000a, + PR_EMS_AB_DXA_TEMPLATE_TIMESTAMP = 0x809f0040, + PR_EMS_AB_DXA_TEMPLATE_TIMESTAMP_ERROR = 0x809f000a, + PR_EMS_AB_DXA_TYPES = 0x80a00003, + PR_EMS_AB_DXA_TYPES_ERROR = 0x80a0000a, + PR_EMS_AB_DXA_UNCONF_CONTAINER_LIST_O = 0x80a1000d, + PR_EMS_AB_DXA_UNCONF_CONTAINER_LIST_O_ERROR = 0x80a1000a, + PR_EMS_AB_DXA_UNCONF_CONTAINER_LIST = 0x80a1101e, + PR_EMS_AB_DXA_UNCONF_CONTAINER_LIST_UNICODE = 0x80a1101f, + PR_EMS_AB_ENCAPSULATION_METHOD = 0x80a20003, + PR_EMS_AB_ENCAPSULATION_METHOD_ERROR = 0x80a2000a, + PR_EMS_AB_ENCRYPT = 0x80a3000b, + PR_EMS_AB_ENCRYPT_ERROR = 0x80a3000a, + PR_EMS_AB_EXPAND_DLS_LOCALLY = 0x80a4000b, + PR_EMS_AB_EXPAND_DLS_LOCALLY_ERROR = 0x80a4000a, + PR_EMS_AB_EXPORT_CONTAINERS_O = 0x80a5000d, + PR_EMS_AB_EXPORT_CONTAINERS_O_ERROR = 0x80a5000a, + PR_EMS_AB_EXPORT_CONTAINERS = 0x80a5101e, + PR_EMS_AB_EXPORT_CONTAINERS_UNICODE = 0x80a5101f, + PR_EMS_AB_EXPORT_CUSTOM_RECIPIENTS = 0x80a6000b, + PR_EMS_AB_EXPORT_CUSTOM_RECIPIENTS_ERROR = 0x80a6000a, + PR_EMS_AB_EXTENDED_CHARS_ALLOWED = 0x80a7000b, + PR_EMS_AB_EXTENDED_CHARS_ALLOWED_ERROR = 0x80a7000a, + PR_EMS_AB_EXTENSION_DATA = 0x80a81102, + PR_EMS_AB_EXTENSION_DATA_ERROR = 0x80a8000a, + PR_EMS_AB_EXTENSION_NAME = 0x80a9101e, + PR_EMS_AB_EXTENSION_NAME_UNICODE = 0x80a9101f, + PR_EMS_AB_EXTENSION_NAME_ERROR = 0x80a9000a, + PR_EMS_AB_EXTENSION_NAME_INHERITED = 0x80aa101e, + PR_EMS_AB_EXTENSION_NAME_INHERITED_UNICODE = 0x80aa101f, + PR_EMS_AB_EXTENSION_NAME_INHERITED_ERROR = 0x80aa000a, + PR_EMS_AB_FACSIMILE_TELEPHONE_NUMBER = 0x80ab1102, + PR_EMS_AB_FACSIMILE_TELEPHONE_NUMBER_ERROR = 0x80ab000a, + PR_EMS_AB_FILE_VERSION = 0x80ac0102, + PR_EMS_AB_FILE_VERSION_ERROR = 0x80ac000a, + PR_EMS_AB_FILTER_LOCAL_ADDRESSES = 0x80ad000b, + PR_EMS_AB_FILTER_LOCAL_ADDRESSES_ERROR = 0x80ad000a, + PR_EMS_AB_FOLDERS_CONTAINER_O = 0x80ae000d, + PR_EMS_AB_FOLDERS_CONTAINER_O_ERROR = 0x80ae000a, + PR_EMS_AB_FOLDERS_CONTAINER = 0x80ae001e, + PR_EMS_AB_FOLDERS_CONTAINER_UNICODE = 0x80ae001f, + PR_EMS_AB_GARBAGE_COLL_PERIOD = 0x80af0003, + PR_EMS_AB_GARBAGE_COLL_PERIOD_ERROR = 0x80af000a, + PR_EMS_AB_GATEWAY_LOCAL_CRED = 0x80b0001e, + PR_EMS_AB_GATEWAY_LOCAL_CRED_UNICODE = 0x80b0001f, + PR_EMS_AB_GATEWAY_LOCAL_CRED_ERROR = 0x80b0000a, + PR_EMS_AB_GATEWAY_LOCAL_DESIG = 0x80b1001e, + PR_EMS_AB_GATEWAY_LOCAL_DESIG_UNICODE = 0x80b1001f, + PR_EMS_AB_GATEWAY_LOCAL_DESIG_ERROR = 0x80b1000a, + PR_EMS_AB_GATEWAY_PROXY = 0x80b2101e, + PR_EMS_AB_GATEWAY_PROXY_UNICODE = 0x80b2101f, + PR_EMS_AB_GATEWAY_PROXY_ERROR = 0x80b2000a, + PR_EMS_AB_GATEWAY_ROUTING_TREE = 0x80b30102, + PR_EMS_AB_GATEWAY_ROUTING_TREE_ERROR = 0x80b3000a, + PR_EMS_AB_GWART_LAST_MODIFIED = 0x80b40040, + PR_EMS_AB_GWART_LAST_MODIFIED_ERROR = 0x80b4000a, + PR_EMS_AB_HAS_FULL_REPLICA_NCS_O = 0x80b5000d, + PR_EMS_AB_HAS_FULL_REPLICA_NCS_O_ERROR = 0x80b5000a, + PR_EMS_AB_HAS_FULL_REPLICA_NCS = 0x80b5101e, + PR_EMS_AB_HAS_FULL_REPLICA_NCS_UNICODE = 0x80b5101f, + PR_EMS_AB_HAS_MASTER_NCS_O = 0x80b6000d, + PR_EMS_AB_HAS_MASTER_NCS_O_ERROR = 0x80b6000a, + PR_EMS_AB_HAS_MASTER_NCS = 0x80b6101e, + PR_EMS_AB_HAS_MASTER_NCS_UNICODE = 0x80b6101f, + PR_EMS_AB_HEURISTICS = 0x80b70003, + PR_EMS_AB_HEURISTICS_ERROR = 0x80b7000a, + PR_EMS_AB_HIDE_DL_MEMBERSHIP = 0x80b8000b, + PR_EMS_AB_HIDE_DL_MEMBERSHIP_ERROR = 0x80b8000a, + PR_EMS_AB_HIDE_FROM_ADDRESS_BOOK = 0x80b9000b, + PR_EMS_AB_HIDE_FROM_ADDRESS_BOOK_ERROR = 0x80b9000a, + PR_EMS_AB_IMPORT_CONTAINER_O = 0x80ba000d, + PR_EMS_AB_IMPORT_CONTAINER_O_ERROR = 0x80ba000a, + PR_EMS_AB_IMPORT_CONTAINER = 0x80ba001e, + PR_EMS_AB_IMPORT_CONTAINER_UNICODE = 0x80ba001f, + PR_EMS_AB_IMPORT_SENSITIVITY = 0x80bb0003, + PR_EMS_AB_IMPORT_SENSITIVITY_ERROR = 0x80bb000a, + PR_EMS_AB_INBOUND_SITES_O = 0x80bc000d, + PR_EMS_AB_INBOUND_SITES_O_ERROR = 0x80bc000a, + PR_EMS_AB_INBOUND_SITES = 0x80bc101e, + PR_EMS_AB_INBOUND_SITES_UNICODE = 0x80bc101f, + PR_EMS_AB_INSTANCE_TYPE = 0x80bd0003, + PR_EMS_AB_INSTANCE_TYPE_ERROR = 0x80bd000a, + PR_EMS_AB_INTERNATIONAL_ISDN_NUMBER = 0x80be101e, + PR_EMS_AB_INTERNATIONAL_ISDN_NUMBER_UNICODE = 0x80be101f, + PR_EMS_AB_INTERNATIONAL_ISDN_NUMBER_ERROR = 0x80be000a, + PR_EMS_AB_INVOCATION_ID = 0x80bf0102, + PR_EMS_AB_INVOCATION_ID_ERROR = 0x80bf000a, + PR_EMS_AB_IS_DELETED = 0x80c0000b, + PR_EMS_AB_IS_DELETED_ERROR = 0x80c0000a, + PR_EMS_AB_IS_SINGLE_VALUED = 0x80c1000b, + PR_EMS_AB_IS_SINGLE_VALUED_ERROR = 0x80c1000a, + PR_EMS_AB_KCC_STATUS = 0x80c21102, + PR_EMS_AB_KCC_STATUS_ERROR = 0x80c2000a, + PR_EMS_AB_KNOWLEDGE_INFORMATION = 0x80c3101e, + PR_EMS_AB_KNOWLEDGE_INFORMATION_UNICODE = 0x80c3101f, + PR_EMS_AB_KNOWLEDGE_INFORMATION_ERROR = 0x80c3000a, + PR_EMS_AB_LINE_WRAP = 0x80c40003, + PR_EMS_AB_LINE_WRAP_ERROR = 0x80c4000a, + PR_EMS_AB_LINK_ID = 0x80c50003, + PR_EMS_AB_LINK_ID_ERROR = 0x80c5000a, + PR_EMS_AB_LOCAL_BRIDGE_HEAD = 0x80c6001e, + PR_EMS_AB_LOCAL_BRIDGE_HEAD_UNICODE = 0x80c6001f, + PR_EMS_AB_LOCAL_BRIDGE_HEAD_ERROR = 0x80c6000a, + PR_EMS_AB_LOCAL_BRIDGE_HEAD_ADDRESS = 0x80c7001e, + PR_EMS_AB_LOCAL_BRIDGE_HEAD_ADDRESS_UNICODE = 0x80c7001f, + PR_EMS_AB_LOCAL_BRIDGE_HEAD_ADDRESS_ERROR = 0x80c7000a, + PR_EMS_AB_LOCAL_INITIAL_TURN = 0x80c8000b, + PR_EMS_AB_LOCAL_INITIAL_TURN_ERROR = 0x80c8000a, + PR_EMS_AB_LOCAL_SCOPE_O = 0x80c9000d, + PR_EMS_AB_LOCAL_SCOPE_O_ERROR = 0x80c9000a, + PR_EMS_AB_LOCAL_SCOPE = 0x80c9101e, + PR_EMS_AB_LOCAL_SCOPE_UNICODE = 0x80c9101f, + PR_EMS_AB_LOG_FILENAME = 0x80ca001e, + PR_EMS_AB_LOG_FILENAME_UNICODE = 0x80ca001f, + PR_EMS_AB_LOG_FILENAME_ERROR = 0x80ca000a, + PR_EMS_AB_LOG_ROLLOVER_INTERVAL = 0x80cb0003, + PR_EMS_AB_LOG_ROLLOVER_INTERVAL_ERROR = 0x80cb000a, + PR_EMS_AB_MAINTAIN_AUTOREPLY_HISTORY = 0x80cc000b, + PR_EMS_AB_MAINTAIN_AUTOREPLY_HISTORY_ERROR = 0x80cc000a, + PR_EMS_AB_MAPI_DISPLAY_TYPE = 0x80cd0003, + PR_EMS_AB_MAPI_DISPLAY_TYPE_ERROR = 0x80cd000a, + PR_EMS_AB_MAPI_ID = 0x80ce0003, + PR_EMS_AB_MAPI_ID_ERROR = 0x80ce000a, + PR_EMS_AB_MDB_BACKOFF_INTERVAL = 0x80cf0003, + PR_EMS_AB_MDB_BACKOFF_INTERVAL_ERROR = 0x80cf000a, + PR_EMS_AB_MDB_MSG_TIME_OUT_PERIOD = 0x80d00003, + PR_EMS_AB_MDB_MSG_TIME_OUT_PERIOD_ERROR = 0x80d0000a, + PR_EMS_AB_MDB_OVER_QUOTA_LIMIT = 0x80d10003, + PR_EMS_AB_MDB_OVER_QUOTA_LIMIT_ERROR = 0x80d1000a, + PR_EMS_AB_MDB_STORAGE_QUOTA = 0x80d20003, + PR_EMS_AB_MDB_STORAGE_QUOTA_ERROR = 0x80d2000a, + PR_EMS_AB_MDB_UNREAD_LIMIT = 0x80d30003, + PR_EMS_AB_MDB_UNREAD_LIMIT_ERROR = 0x80d3000a, + PR_EMS_AB_MDB_USE_DEFAULTS = 0x80d4000b, + PR_EMS_AB_MDB_USE_DEFAULTS_ERROR = 0x80d4000a, + PR_EMS_AB_MESSAGE_TRACKING_ENABLED = 0x80d5000b, + PR_EMS_AB_MESSAGE_TRACKING_ENABLED_ERROR = 0x80d5000a, + PR_EMS_AB_MONITOR_CLOCK = 0x80d6000b, + PR_EMS_AB_MONITOR_CLOCK_ERROR = 0x80d6000a, + PR_EMS_AB_MONITOR_SERVERS = 0x80d7000b, + PR_EMS_AB_MONITOR_SERVERS_ERROR = 0x80d7000a, + PR_EMS_AB_MONITOR_SERVICES = 0x80d8000b, + PR_EMS_AB_MONITOR_SERVICES_ERROR = 0x80d8000a, + PR_EMS_AB_MONITORED_CONFIGURATIONS_O = 0x80d9000d, + PR_EMS_AB_MONITORED_CONFIGURATIONS_O_ERROR = 0x80d9000a, + PR_EMS_AB_MONITORED_CONFIGURATIONS = 0x80d9101e, + PR_EMS_AB_MONITORED_CONFIGURATIONS_UNICODE = 0x80d9101f, + PR_EMS_AB_MONITORED_SERVERS_O = 0x80da000d, + PR_EMS_AB_MONITORED_SERVERS_O_ERROR = 0x80da000a, + PR_EMS_AB_MONITORED_SERVERS = 0x80da101e, + PR_EMS_AB_MONITORED_SERVERS_UNICODE = 0x80da101f, + PR_EMS_AB_MONITORED_SERVICES = 0x80db101e, + PR_EMS_AB_MONITORED_SERVICES_UNICODE = 0x80db101f, + PR_EMS_AB_MONITORED_SERVICES_ERROR = 0x80db000a, + PR_EMS_AB_MONITORING_ALERT_DELAY = 0x80dc0003, + PR_EMS_AB_MONITORING_ALERT_DELAY_ERROR = 0x80dc000a, + PR_EMS_AB_MONITORING_ALERT_UNITS = 0x80dd0003, + PR_EMS_AB_MONITORING_ALERT_UNITS_ERROR = 0x80dd000a, + PR_EMS_AB_MONITORING_AVAILABILITY_STYLE = 0x80de0003, + PR_EMS_AB_MONITORING_AVAILABILITY_STYLE_ERROR = 0x80de000a, + PR_EMS_AB_MONITORING_AVAILABILITY_WINDOW = 0x80df0102, + PR_EMS_AB_MONITORING_AVAILABILITY_WINDOW_ERROR = 0x80df000a, + PR_EMS_AB_MONITORING_CACHED_VIA_MAIL_O = 0x80e0000d, + PR_EMS_AB_MONITORING_CACHED_VIA_MAIL_O_ERROR = 0x80e0000a, + PR_EMS_AB_MONITORING_CACHED_VIA_MAIL = 0x80e0101e, + PR_EMS_AB_MONITORING_CACHED_VIA_MAIL_UNICODE = 0x80e0101f, + PR_EMS_AB_MONITORING_CACHED_VIA_RPC_O = 0x80e1000d, + PR_EMS_AB_MONITORING_CACHED_VIA_RPC_O_ERROR = 0x80e1000a, + PR_EMS_AB_MONITORING_CACHED_VIA_RPC = 0x80e1101e, + PR_EMS_AB_MONITORING_CACHED_VIA_RPC_UNICODE = 0x80e1101f, + PR_EMS_AB_MONITORING_ESCALATION_PROCEDURE = 0x80e21102, + PR_EMS_AB_MONITORING_ESCALATION_PROCEDURE_ERROR = 0x80e2000a, + PR_EMS_AB_MONITORING_HOTSITE_POLL_INTERVAL = 0x80e30003, + PR_EMS_AB_MONITORING_HOTSITE_POLL_INTERVAL_ERROR = 0x80e3000a, + PR_EMS_AB_MONITORING_HOTSITE_POLL_UNITS = 0x80e40003, + PR_EMS_AB_MONITORING_HOTSITE_POLL_UNITS_ERROR = 0x80e4000a, + PR_EMS_AB_MONITORING_MAIL_UPDATE_INTERVAL = 0x80e50003, + PR_EMS_AB_MONITORING_MAIL_UPDATE_INTERVAL_ERROR = 0x80e5000a, + PR_EMS_AB_MONITORING_MAIL_UPDATE_UNITS = 0x80e60003, + PR_EMS_AB_MONITORING_MAIL_UPDATE_UNITS_ERROR = 0x80e6000a, + PR_EMS_AB_MONITORING_NORMAL_POLL_INTERVAL = 0x80e70003, + PR_EMS_AB_MONITORING_NORMAL_POLL_INTERVAL_ERROR = 0x80e7000a, + PR_EMS_AB_MONITORING_NORMAL_POLL_UNITS = 0x80e80003, + PR_EMS_AB_MONITORING_NORMAL_POLL_UNITS_ERROR = 0x80e8000a, + PR_EMS_AB_MONITORING_RECIPIENTS_O = 0x80e9000d, + PR_EMS_AB_MONITORING_RECIPIENTS_O_ERROR = 0x80e9000a, + PR_EMS_AB_MONITORING_RECIPIENTS = 0x80e9101e, + PR_EMS_AB_MONITORING_RECIPIENTS_UNICODE = 0x80e9101f, + PR_EMS_AB_MONITORING_RECIPIENTS_NDR_O = 0x80ea000d, + PR_EMS_AB_MONITORING_RECIPIENTS_NDR_O_ERROR = 0x80ea000a, + PR_EMS_AB_MONITORING_RECIPIENTS_NDR = 0x80ea101e, + PR_EMS_AB_MONITORING_RECIPIENTS_NDR_UNICODE = 0x80ea101f, + PR_EMS_AB_MONITORING_RPC_UPDATE_INTERVAL = 0x80eb0003, + PR_EMS_AB_MONITORING_RPC_UPDATE_INTERVAL_ERROR = 0x80eb000a, + PR_EMS_AB_MONITORING_RPC_UPDATE_UNITS = 0x80ec0003, + PR_EMS_AB_MONITORING_RPC_UPDATE_UNITS_ERROR = 0x80ec000a, + PR_EMS_AB_MONITORING_WARNING_DELAY = 0x80ed0003, + PR_EMS_AB_MONITORING_WARNING_DELAY_ERROR = 0x80ed000a, + PR_EMS_AB_MONITORING_WARNING_UNITS = 0x80ee0003, + PR_EMS_AB_MONITORING_WARNING_UNITS_ERROR = 0x80ee000a, + PR_EMS_AB_MTA_LOCAL_CRED = 0x80ef001e, + PR_EMS_AB_MTA_LOCAL_CRED_UNICODE = 0x80ef001f, + PR_EMS_AB_MTA_LOCAL_CRED_ERROR = 0x80ef000a, + PR_EMS_AB_MTA_LOCAL_DESIG = 0x80f0001e, + PR_EMS_AB_MTA_LOCAL_DESIG_UNICODE = 0x80f0001f, + PR_EMS_AB_MTA_LOCAL_DESIG_ERROR = 0x80f0000a, + PR_EMS_AB_N_ADDRESS = 0x80f10102, + PR_EMS_AB_N_ADDRESS_ERROR = 0x80f1000a, + PR_EMS_AB_N_ADDRESS_TYPE = 0x80f20003, + PR_EMS_AB_N_ADDRESS_TYPE_ERROR = 0x80f2000a, + PR_EMS_AB_NT_MACHINE_NAME = 0x80f3001e, + PR_EMS_AB_NT_MACHINE_NAME_UNICODE = 0x80f3001f, + PR_EMS_AB_NT_MACHINE_NAME_ERROR = 0x80f3000a, + PR_EMS_AB_NUM_OF_OPEN_RETRIES = 0x80f40003, + PR_EMS_AB_NUM_OF_OPEN_RETRIES_ERROR = 0x80f4000a, + PR_EMS_AB_NUM_OF_TRANSFER_RETRIES = 0x80f50003, + PR_EMS_AB_NUM_OF_TRANSFER_RETRIES_ERROR = 0x80f5000a, + PR_EMS_AB_OBJECT_CLASS_CATEGORY = 0x80f60003, + PR_EMS_AB_OBJECT_CLASS_CATEGORY_ERROR = 0x80f6000a, + PR_EMS_AB_OBJECT_VERSION = 0x80f70003, + PR_EMS_AB_OBJECT_VERSION_ERROR = 0x80f7000a, + PR_EMS_AB_OFF_LINE_AB_CONTAINERS_O = 0x80f8000d, + PR_EMS_AB_OFF_LINE_AB_CONTAINERS_O_ERROR = 0x80f8000a, + PR_EMS_AB_OFF_LINE_AB_CONTAINERS = 0x80f8101e, + PR_EMS_AB_OFF_LINE_AB_CONTAINERS_UNICODE = 0x80f8101f, + PR_EMS_AB_OFF_LINE_AB_SCHEDULE = 0x80f90102, + PR_EMS_AB_OFF_LINE_AB_SCHEDULE_ERROR = 0x80f9000a, + PR_EMS_AB_OFF_LINE_AB_SERVER_O = 0x80fa000d, + PR_EMS_AB_OFF_LINE_AB_SERVER_O_ERROR = 0x80fa000a, + PR_EMS_AB_OFF_LINE_AB_SERVER = 0x80fa001e, + PR_EMS_AB_OFF_LINE_AB_SERVER_UNICODE = 0x80fa001f, + PR_EMS_AB_OFF_LINE_AB_STYLE = 0x80fb0003, + PR_EMS_AB_OFF_LINE_AB_STYLE_ERROR = 0x80fb000a, + PR_EMS_AB_OID_TYPE = 0x80fc0003, + PR_EMS_AB_OID_TYPE_ERROR = 0x80fc000a, + PR_EMS_AB_OM_OBJECT_CLASS = 0x80fd0102, + PR_EMS_AB_OM_OBJECT_CLASS_ERROR = 0x80fd000a, + PR_EMS_AB_OM_SYNTAX = 0x80fe0003, + PR_EMS_AB_OM_SYNTAX_ERROR = 0x80fe000a, + PR_EMS_AB_OOF_REPLY_TO_ORIGINATOR = 0x80ff000b, + PR_EMS_AB_OOF_REPLY_TO_ORIGINATOR_ERROR = 0x80ff000a, + PR_EMS_AB_OPEN_RETRY_INTERVAL = 0x81000003, + PR_EMS_AB_OPEN_RETRY_INTERVAL_ERROR = 0x8100000a, + PR_EMS_AB_ORGANIZATION_NAME = 0x8101101e, + PR_EMS_AB_ORGANIZATION_NAME_UNICODE = 0x8101101f, + PR_EMS_AB_ORGANIZATION_NAME_ERROR = 0x8101000a, + PR_EMS_AB_ORGANIZATIONAL_UNIT_NAME = 0x8102101e, + PR_EMS_AB_ORGANIZATIONAL_UNIT_NAME_UNICODE = 0x8102101f, + PR_EMS_AB_ORGANIZATIONAL_UNIT_NAME_ERROR = 0x8102000a, + PR_EMS_AB_ORIGINAL_DISPLAY_TABLE = 0x81030102, + PR_EMS_AB_ORIGINAL_DISPLAY_TABLE_ERROR = 0x8103000a, + PR_EMS_AB_ORIGINAL_DISPLAY_TABLE_MSDOS = 0x81040102, + PR_EMS_AB_ORIGINAL_DISPLAY_TABLE_MSDOS_ERROR = 0x8104000a, + PR_EMS_AB_OUTBOUND_SITES_O = 0x8105000d, + PR_EMS_AB_OUTBOUND_SITES_O_ERROR = 0x8105000a, + PR_EMS_AB_OUTBOUND_SITES = 0x8105101e, + PR_EMS_AB_OUTBOUND_SITES_UNICODE = 0x8105101f, + PR_EMS_AB_P_SELECTOR = 0x81060102, + PR_EMS_AB_P_SELECTOR_ERROR = 0x8106000a, + PR_EMS_AB_P_SELECTOR_INBOUND = 0x81070102, + PR_EMS_AB_P_SELECTOR_INBOUND_ERROR = 0x8107000a, + PR_EMS_AB_PER_MSG_DIALOG_DISPLAY_TABLE = 0x81080102, + PR_EMS_AB_PER_MSG_DIALOG_DISPLAY_TABLE_ERROR = 0x8108000a, + PR_EMS_AB_PER_RECIP_DIALOG_DISPLAY_TABLE = 0x81090102, + PR_EMS_AB_PER_RECIP_DIALOG_DISPLAY_TABLE_ERROR = 0x8109000a, + PR_EMS_AB_PERIOD_REP_SYNC_TIMES = 0x810a0102, + PR_EMS_AB_PERIOD_REP_SYNC_TIMES_ERROR = 0x810a000a, + PR_EMS_AB_PERIOD_REPL_STAGGER = 0x810b0003, + PR_EMS_AB_PERIOD_REPL_STAGGER_ERROR = 0x810b000a, + PR_EMS_AB_POSTAL_ADDRESS = 0x810c1102, + PR_EMS_AB_POSTAL_ADDRESS_ERROR = 0x810c000a, + PR_EMS_AB_PREFERRED_DELIVERY_METHOD = 0x810d1003, + PR_EMS_AB_PREFERRED_DELIVERY_METHOD_ERROR = 0x810d000a, + PR_EMS_AB_PRMD = 0x810e001e, + PR_EMS_AB_PRMD_UNICODE = 0x810e001f, + PR_EMS_AB_PRMD_ERROR = 0x810e000a, + PR_EMS_AB_PROXY_GENERATOR_DLL = 0x810f001e, + PR_EMS_AB_PROXY_GENERATOR_DLL_UNICODE = 0x810f001f, + PR_EMS_AB_PROXY_GENERATOR_DLL_ERROR = 0x810f000a, + PR_EMS_AB_PUBLIC_DELEGATES_BL_O = 0x8110000d, + PR_EMS_AB_PUBLIC_DELEGATES_BL_O_ERROR = 0x8110000a, + PR_EMS_AB_PUBLIC_DELEGATES_BL = 0x8110101e, + PR_EMS_AB_PUBLIC_DELEGATES_BL_UNICODE = 0x8110101f, + PR_EMS_AB_QUOTA_NOTIFICATION_SCHEDULE = 0x81110102, + PR_EMS_AB_QUOTA_NOTIFICATION_SCHEDULE_ERROR = 0x8111000a, + PR_EMS_AB_QUOTA_NOTIFICATION_STYLE = 0x81120003, + PR_EMS_AB_QUOTA_NOTIFICATION_STYLE_ERROR = 0x8112000a, + PR_EMS_AB_RANGE_LOWER = 0x81130003, + PR_EMS_AB_RANGE_LOWER_ERROR = 0x8113000a, + PR_EMS_AB_RANGE_UPPER = 0x81140003, + PR_EMS_AB_RANGE_UPPER_ERROR = 0x8114000a, + PR_EMS_AB_RAS_CALLBACK_NUMBER = 0x8115001e, + PR_EMS_AB_RAS_CALLBACK_NUMBER_UNICODE = 0x8115001f, + PR_EMS_AB_RAS_CALLBACK_NUMBER_ERROR = 0x8115000a, + PR_EMS_AB_RAS_PHONE_NUMBER = 0x8116001e, + PR_EMS_AB_RAS_PHONE_NUMBER_UNICODE = 0x8116001f, + PR_EMS_AB_RAS_PHONE_NUMBER_ERROR = 0x8116000a, + PR_EMS_AB_RAS_PHONEBOOK_ENTRY_NAME = 0x8117001e, + PR_EMS_AB_RAS_PHONEBOOK_ENTRY_NAME_UNICODE = 0x8117001f, + PR_EMS_AB_RAS_PHONEBOOK_ENTRY_NAME_ERROR = 0x8117000a, + PR_EMS_AB_RAS_REMOTE_SRVR_NAME = 0x8118001e, + PR_EMS_AB_RAS_REMOTE_SRVR_NAME_UNICODE = 0x8118001f, + PR_EMS_AB_RAS_REMOTE_SRVR_NAME_ERROR = 0x8118000a, + PR_EMS_AB_REGISTERED_ADDRESS = 0x81191102, + PR_EMS_AB_REGISTERED_ADDRESS_ERROR = 0x8119000a, + PR_EMS_AB_REMOTE_BRIDGE_HEAD = 0x811a001e, + PR_EMS_AB_REMOTE_BRIDGE_HEAD_UNICODE = 0x811a001f, + PR_EMS_AB_REMOTE_BRIDGE_HEAD_ERROR = 0x811a000a, + PR_EMS_AB_REMOTE_BRIDGE_HEAD_ADDRESS = 0x811b001e, + PR_EMS_AB_REMOTE_BRIDGE_HEAD_ADDRESS_UNICODE = 0x811b001f, + PR_EMS_AB_REMOTE_BRIDGE_HEAD_ADDRESS_ERROR = 0x811b000a, + PR_EMS_AB_REMOTE_OUT_BH_SERVER_O = 0x811c000d, + PR_EMS_AB_REMOTE_OUT_BH_SERVER_O_ERROR = 0x811c000a, + PR_EMS_AB_REMOTE_OUT_BH_SERVER = 0x811c001e, + PR_EMS_AB_REMOTE_OUT_BH_SERVER_UNICODE = 0x811c001f, + PR_EMS_AB_REMOTE_SITE_O = 0x811d000d, + PR_EMS_AB_REMOTE_SITE_O_ERROR = 0x811d000a, + PR_EMS_AB_REMOTE_SITE = 0x811d001e, + PR_EMS_AB_REMOTE_SITE_UNICODE = 0x811d001f, + PR_EMS_AB_REPLICATION_SENSITIVITY = 0x811e0003, + PR_EMS_AB_REPLICATION_SENSITIVITY_ERROR = 0x811e000a, + PR_EMS_AB_REPLICATION_STAGGER = 0x811f0003, + PR_EMS_AB_REPLICATION_STAGGER_ERROR = 0x811f000a, + PR_EMS_AB_REPORT_TO_ORIGINATOR = 0x8120000b, + PR_EMS_AB_REPORT_TO_ORIGINATOR_ERROR = 0x8120000a, + PR_EMS_AB_REPORT_TO_OWNER = 0x8121000b, + PR_EMS_AB_REPORT_TO_OWNER_ERROR = 0x8121000a, + PR_EMS_AB_REQ_SEQ = 0x81220003, + PR_EMS_AB_REQ_SEQ_ERROR = 0x8122000a, + PR_EMS_AB_RESPONSIBLE_LOCAL_DXA_O = 0x8123000d, + PR_EMS_AB_RESPONSIBLE_LOCAL_DXA_O_ERROR = 0x8123000a, + PR_EMS_AB_RESPONSIBLE_LOCAL_DXA = 0x8123001e, + PR_EMS_AB_RESPONSIBLE_LOCAL_DXA_UNICODE = 0x8123001f, + PR_EMS_AB_RID_SERVER_O = 0x8124000d, + PR_EMS_AB_RID_SERVER_O_ERROR = 0x8124000a, + PR_EMS_AB_RID_SERVER = 0x8124001e, + PR_EMS_AB_RID_SERVER_UNICODE = 0x8124001f, + PR_EMS_AB_ROLE_OCCUPANT_O = 0x8125000d, + PR_EMS_AB_ROLE_OCCUPANT_O_ERROR = 0x8125000a, + PR_EMS_AB_ROLE_OCCUPANT = 0x8125101e, + PR_EMS_AB_ROLE_OCCUPANT_UNICODE = 0x8125101f, + PR_EMS_AB_ROUTING_LIST = 0x8126101e, + PR_EMS_AB_ROUTING_LIST_UNICODE = 0x8126101f, + PR_EMS_AB_ROUTING_LIST_ERROR = 0x8126000a, + PR_EMS_AB_RTS_CHECKPOINT_SIZE = 0x81270003, + PR_EMS_AB_RTS_CHECKPOINT_SIZE_ERROR = 0x8127000a, + PR_EMS_AB_RTS_RECOVERY_TIMEOUT = 0x81280003, + PR_EMS_AB_RTS_RECOVERY_TIMEOUT_ERROR = 0x8128000a, + PR_EMS_AB_RTS_WINDOW_SIZE = 0x81290003, + PR_EMS_AB_RTS_WINDOW_SIZE_ERROR = 0x8129000a, + PR_EMS_AB_RUNS_ON_O = 0x812a000d, + PR_EMS_AB_RUNS_ON_O_ERROR = 0x812a000a, + PR_EMS_AB_RUNS_ON = 0x812a101e, + PR_EMS_AB_RUNS_ON_UNICODE = 0x812a101f, + PR_EMS_AB_S_SELECTOR = 0x812b0102, + PR_EMS_AB_S_SELECTOR_ERROR = 0x812b000a, + PR_EMS_AB_S_SELECTOR_INBOUND = 0x812c0102, + PR_EMS_AB_S_SELECTOR_INBOUND_ERROR = 0x812c000a, + PR_EMS_AB_SEARCH_FLAGS = 0x812d0003, + PR_EMS_AB_SEARCH_FLAGS_ERROR = 0x812d000a, + PR_EMS_AB_SEARCH_GUIDE = 0x812e1102, + PR_EMS_AB_SEARCH_GUIDE_ERROR = 0x812e000a, + PR_EMS_AB_SEE_ALSO_O = 0x812f000d, + PR_EMS_AB_SEE_ALSO_O_ERROR = 0x812f000a, + PR_EMS_AB_SEE_ALSO = 0x812f101e, + PR_EMS_AB_SEE_ALSO_UNICODE = 0x812f101f, + PR_EMS_AB_SERIAL_NUMBER = 0x8130101e, + PR_EMS_AB_SERIAL_NUMBER_UNICODE = 0x8130101f, + PR_EMS_AB_SERIAL_NUMBER_ERROR = 0x8130000a, + PR_EMS_AB_SERVICE_ACTION_FIRST = 0x81310003, + PR_EMS_AB_SERVICE_ACTION_FIRST_ERROR = 0x8131000a, + PR_EMS_AB_SERVICE_ACTION_OTHER = 0x81320003, + PR_EMS_AB_SERVICE_ACTION_OTHER_ERROR = 0x8132000a, + PR_EMS_AB_SERVICE_ACTION_SECOND = 0x81330003, + PR_EMS_AB_SERVICE_ACTION_SECOND_ERROR = 0x8133000a, + PR_EMS_AB_SERVICE_RESTART_DELAY = 0x81340003, + PR_EMS_AB_SERVICE_RESTART_DELAY_ERROR = 0x8134000a, + PR_EMS_AB_SERVICE_RESTART_MESSAGE = 0x8135001e, + PR_EMS_AB_SERVICE_RESTART_MESSAGE_UNICODE = 0x8135001f, + PR_EMS_AB_SERVICE_RESTART_MESSAGE_ERROR = 0x8135000a, + PR_EMS_AB_SESSION_DISCONNECT_TIMER = 0x81360003, + PR_EMS_AB_SESSION_DISCONNECT_TIMER_ERROR = 0x8136000a, + PR_EMS_AB_SITE_AFFINITY = 0x8137101e, + PR_EMS_AB_SITE_AFFINITY_UNICODE = 0x8137101f, + PR_EMS_AB_SITE_AFFINITY_ERROR = 0x8137000a, + PR_EMS_AB_SITE_PROXY_SPACE = 0x8138101e, + PR_EMS_AB_SITE_PROXY_SPACE_UNICODE = 0x8138101f, + PR_EMS_AB_SITE_PROXY_SPACE_ERROR = 0x8138000a, + PR_EMS_AB_SPACE_LAST_COMPUTED = 0x81390040, + PR_EMS_AB_SPACE_LAST_COMPUTED_ERROR = 0x8139000a, + PR_EMS_AB_STREET_ADDRESS = 0x813a001e, + PR_EMS_AB_STREET_ADDRESS_UNICODE = 0x813a001f, + PR_EMS_AB_STREET_ADDRESS_ERROR = 0x813a000a, + PR_EMS_AB_SUB_REFS_O = 0x813b000d, + PR_EMS_AB_SUB_REFS_O_ERROR = 0x813b000a, + PR_EMS_AB_SUB_REFS = 0x813b101e, + PR_EMS_AB_SUB_REFS_UNICODE = 0x813b101f, + PR_EMS_AB_SUBMISSION_CONT_LENGTH = 0x813c0003, + PR_EMS_AB_SUBMISSION_CONT_LENGTH_ERROR = 0x813c000a, + PR_EMS_AB_SUPPORTED_APPLICATION_CONTEXT = 0x813d1102, + PR_EMS_AB_SUPPORTED_APPLICATION_CONTEXT_ERROR = 0x813d000a, + PR_EMS_AB_SUPPORTING_STACK_O = 0x813e000d, + PR_EMS_AB_SUPPORTING_STACK_O_ERROR = 0x813e000a, + PR_EMS_AB_SUPPORTING_STACK = 0x813e101e, + PR_EMS_AB_SUPPORTING_STACK_UNICODE = 0x813e101f, + PR_EMS_AB_SUPPORTING_STACK_BL_O = 0x813f000d, + PR_EMS_AB_SUPPORTING_STACK_BL_O_ERROR = 0x813f000a, + PR_EMS_AB_SUPPORTING_STACK_BL = 0x813f101e, + PR_EMS_AB_SUPPORTING_STACK_BL_UNICODE = 0x813f101f, + PR_EMS_AB_T_SELECTOR = 0x81400102, + PR_EMS_AB_T_SELECTOR_ERROR = 0x8140000a, + PR_EMS_AB_T_SELECTOR_INBOUND = 0x81410102, + PR_EMS_AB_T_SELECTOR_INBOUND_ERROR = 0x8141000a, + PR_EMS_AB_TARGET_MTAS = 0x8142101e, + PR_EMS_AB_TARGET_MTAS_UNICODE = 0x8142101f, + PR_EMS_AB_TARGET_MTAS_ERROR = 0x8142000a, + PR_EMS_AB_TELETEX_TERMINAL_IDENTIFIER = 0x81431102, + PR_EMS_AB_TELETEX_TERMINAL_IDENTIFIER_ERROR = 0x8143000a, + PR_EMS_AB_TEMP_ASSOC_THRESHOLD = 0x81440003, + PR_EMS_AB_TEMP_ASSOC_THRESHOLD_ERROR = 0x8144000a, + PR_EMS_AB_TOMBSTONE_LIFETIME = 0x81450003, + PR_EMS_AB_TOMBSTONE_LIFETIME_ERROR = 0x8145000a, + PR_EMS_AB_TRACKING_LOG_PATH_NAME = 0x8146001e, + PR_EMS_AB_TRACKING_LOG_PATH_NAME_UNICODE = 0x8146001f, + PR_EMS_AB_TRACKING_LOG_PATH_NAME_ERROR = 0x8146000a, + PR_EMS_AB_TRANS_RETRY_MINS = 0x81470003, + PR_EMS_AB_TRANS_RETRY_MINS_ERROR = 0x8147000a, + PR_EMS_AB_TRANS_TIMEOUT_MINS = 0x81480003, + PR_EMS_AB_TRANS_TIMEOUT_MINS_ERROR = 0x8148000a, + PR_EMS_AB_TRANSFER_RETRY_INTERVAL = 0x81490003, + PR_EMS_AB_TRANSFER_RETRY_INTERVAL_ERROR = 0x8149000a, + PR_EMS_AB_TRANSFER_TIMEOUT_NON_URGENT = 0x814a0003, + PR_EMS_AB_TRANSFER_TIMEOUT_NON_URGENT_ERROR = 0x814a000a, + PR_EMS_AB_TRANSFER_TIMEOUT_NORMAL = 0x814b0003, + PR_EMS_AB_TRANSFER_TIMEOUT_NORMAL_ERROR = 0x814b000a, + PR_EMS_AB_TRANSFER_TIMEOUT_URGENT = 0x814c0003, + PR_EMS_AB_TRANSFER_TIMEOUT_URGENT_ERROR = 0x814c000a, + PR_EMS_AB_TRANSLATION_TABLE_USED = 0x814d0003, + PR_EMS_AB_TRANSLATION_TABLE_USED_ERROR = 0x814d000a, + PR_EMS_AB_TRANSPORT_EXPEDITED_DATA = 0x814e000b, + PR_EMS_AB_TRANSPORT_EXPEDITED_DATA_ERROR = 0x814e000a, + PR_EMS_AB_TRUST_LEVEL = 0x814f0003, + PR_EMS_AB_TRUST_LEVEL_ERROR = 0x814f000a, + PR_EMS_AB_TURN_REQUEST_THRESHOLD = 0x81500003, + PR_EMS_AB_TURN_REQUEST_THRESHOLD_ERROR = 0x8150000a, + PR_EMS_AB_TWO_WAY_ALTERNATE_FACILITY = 0x8151000b, + PR_EMS_AB_TWO_WAY_ALTERNATE_FACILITY_ERROR = 0x8151000a, + PR_EMS_AB_UNAUTH_ORIG_BL_O = 0x8152000d, + PR_EMS_AB_UNAUTH_ORIG_BL_O_ERROR = 0x8152000a, + PR_EMS_AB_UNAUTH_ORIG_BL = 0x8152101e, + PR_EMS_AB_UNAUTH_ORIG_BL_UNICODE = 0x8152101f, + PR_EMS_AB_USER_PASSWORD = 0x81531102, + PR_EMS_AB_USER_PASSWORD_ERROR = 0x8153000a, + PR_EMS_AB_USN_CREATED = 0x81540003, + PR_EMS_AB_USN_CREATED_ERROR = 0x8154000a, + PR_EMS_AB_USN_DSA_LAST_OBJ_REMOVED = 0x81550003, + PR_EMS_AB_USN_DSA_LAST_OBJ_REMOVED_ERROR = 0x8155000a, + PR_EMS_AB_USN_LAST_OBJ_REM = 0x81560003, + PR_EMS_AB_USN_LAST_OBJ_REM_ERROR = 0x8156000a, + PR_EMS_AB_USN_SOURCE = 0x81570003, + PR_EMS_AB_USN_SOURCE_ERROR = 0x8157000a, + PR_EMS_AB_X121_ADDRESS = 0x8158101e, + PR_EMS_AB_X121_ADDRESS_UNICODE = 0x8158101f, + PR_EMS_AB_X121_ADDRESS_ERROR = 0x8158000a, + PR_EMS_AB_X25_CALL_USER_DATA_INCOMING = 0x81590102, + PR_EMS_AB_X25_CALL_USER_DATA_INCOMING_ERROR = 0x8159000a, + PR_EMS_AB_X25_CALL_USER_DATA_OUTGOING = 0x815a0102, + PR_EMS_AB_X25_CALL_USER_DATA_OUTGOING_ERROR = 0x815a000a, + PR_EMS_AB_X25_FACILITIES_DATA_INCOMING = 0x815b0102, + PR_EMS_AB_X25_FACILITIES_DATA_INCOMING_ERROR = 0x815b000a, + PR_EMS_AB_X25_FACILITIES_DATA_OUTGOING = 0x815c0102, + PR_EMS_AB_X25_FACILITIES_DATA_OUTGOING_ERROR = 0x815c000a, + PR_EMS_AB_X25_LEASED_LINE_PORT = 0x815d0102, + PR_EMS_AB_X25_LEASED_LINE_PORT_ERROR = 0x815d000a, + PR_EMS_AB_X25_LEASED_OR_SWITCHED = 0x815e000b, + PR_EMS_AB_X25_LEASED_OR_SWITCHED_ERROR = 0x815e000a, + PR_EMS_AB_X25_REMOTE_MTA_PHONE = 0x815f001e, + PR_EMS_AB_X25_REMOTE_MTA_PHONE_UNICODE = 0x815f001f, + PR_EMS_AB_X25_REMOTE_MTA_PHONE_ERROR = 0x815f000a, + PR_EMS_AB_X400_ATTACHMENT_TYPE = 0x81600102, + PR_EMS_AB_X400_ATTACHMENT_TYPE_ERROR = 0x8160000a, + PR_EMS_AB_X400_SELECTOR_SYNTAX = 0x81610003, + PR_EMS_AB_X400_SELECTOR_SYNTAX_ERROR = 0x8161000a, + PR_EMS_AB_X500_ACCESS_CONTROL_LIST = 0x81620102, + PR_EMS_AB_X500_ACCESS_CONTROL_LIST_ERROR = 0x8162000a, + PR_EMS_AB_XMIT_TIMEOUT_NON_URGENT = 0x81630003, + PR_EMS_AB_XMIT_TIMEOUT_NON_URGENT_ERROR = 0x8163000a, + PR_EMS_AB_XMIT_TIMEOUT_NORMAL = 0x81640003, + PR_EMS_AB_XMIT_TIMEOUT_NORMAL_ERROR = 0x8164000a, + PR_EMS_AB_XMIT_TIMEOUT_URGENT = 0x81650003, + PR_EMS_AB_XMIT_TIMEOUT_URGENT_ERROR = 0x8165000a, + PR_EMS_AB_SITE_FOLDER_GUID = 0x81660102, + PR_EMS_AB_SITE_FOLDER_GUID_ERROR = 0x8166000a, + PR_EMS_AB_SITE_FOLDER_SERVER_O = 0x8167000d, + PR_EMS_AB_SITE_FOLDER_SERVER_O_ERROR = 0x8167000a, + PR_EMS_AB_SITE_FOLDER_SERVER = 0x8167001e, + PR_EMS_AB_SITE_FOLDER_SERVER_UNICODE = 0x8167001f, + PR_EMS_AB_REPLICATION_MAIL_MSG_SIZE = 0x81680003, + PR_EMS_AB_REPLICATION_MAIL_MSG_SIZE_ERROR = 0x8168000a, + PR_EMS_AB_MAXIMUM_OBJECT_ID = 0x81690102, + PR_EMS_AB_MAXIMUM_OBJECT_ID_ERROR = 0x8169000a, + PR_EMS_AB_NETWORK_ADDRESS = 0x8170101e, + PR_EMS_AB_NETWORK_ADDRESS_UNICODE = 0x8170101f, + PR_EMS_AB_NETWORK_ADDRESS_ERROR = 0x8170000a, + PR_EMS_AB_LDAP_DISPLAY_NAME = 0x8171101e, + PR_EMS_AB_LDAP_DISPLAY_NAME_UNICODE = 0x8171101f, + PR_EMS_AB_LDAP_DISPLAY_NAME_ERROR = 0x8171000a, + PR_EMS_AB_SCHEMA_FLAGS = 0x81730003, + PR_EMS_AB_SCHEMA_FLAGS_ERROR = 0x8173000a, + PR_EMS_AB_BRIDGEHEAD_SERVERS_O = 0x8174000d, + PR_EMS_AB_BRIDGEHEAD_SERVERS_O_ERROR = 0x8174000a, + PR_EMS_AB_BRIDGEHEAD_SERVERS = 0x8174101e, + PR_EMS_AB_BRIDGEHEAD_SERVERS_UNICODE = 0x8174101f, + PR_EMS_AB_WWW_HOME_PAGE = 0x8175001e, + PR_EMS_AB_WWW_HOME_PAGE_UNICODE = 0x8175001f, + PR_EMS_AB_WWW_HOME_PAGE_ERROR = 0x8175000a, + PR_EMS_AB_NNTP_CONTENT_FORMAT = 0x8176001e, + PR_EMS_AB_NNTP_CONTENT_FORMAT_UNICODE = 0x8176001f, + PR_EMS_AB_NNTP_CONTENT_FORMAT_ERROR = 0x8176000a, + PR_EMS_AB_POP_CONTENT_FORMAT = 0x8177001e, + PR_EMS_AB_POP_CONTENT_FORMAT_UNICODE = 0x8177001f, + PR_EMS_AB_POP_CONTENT_FORMAT_ERROR = 0x8177000a, + PR_EMS_AB_LANGUAGE = 0x81780003, + PR_EMS_AB_LANGUAGE_ERROR = 0x8178000a, + PR_EMS_AB_POP_CHARACTER_SET = 0x8179001e, + PR_EMS_AB_POP_CHARACTER_SET_UNICODE = 0x8179001f, + PR_EMS_AB_POP_CHARACTER_SET_ERROR = 0x8179000a, + PR_EMS_AB_USN_INTERSITE = 0x817a0003, + PR_EMS_AB_USN_INTERSITE_ERROR = 0x817a000a, + PR_EMS_AB_SUB_SITE = 0x817b001e, + PR_EMS_AB_SUB_SITE_UNICODE = 0x817b001f, + PR_EMS_AB_SUB_SITE_ERROR = 0x817b000a, + PR_EMS_AB_SCHEMA_VERSION = 0x817c1003, + PR_EMS_AB_SCHEMA_VERSION_ERROR = 0x817c000a, + PR_EMS_AB_NNTP_CHARACTER_SET = 0x817d001e, + PR_EMS_AB_NNTP_CHARACTER_SET_UNICODE = 0x817d001f, + PR_EMS_AB_NNTP_CHARACTER_SET_ERROR = 0x817d000a, + PR_EMS_AB_USE_SERVER_VALUES = 0x817e000b, + PR_EMS_AB_USE_SERVER_VALUES_ERROR = 0x817e000a, + PR_EMS_AB_ENABLED_PROTOCOLS = 0x817f0003, + PR_EMS_AB_ENABLED_PROTOCOLS_ERROR = 0x817f000a, + PR_EMS_AB_CONNECTION_LIST_FILTER = 0x81800102, + PR_EMS_AB_CONNECTION_LIST_FILTER_ERROR = 0x8180000a, + PR_EMS_AB_AVAILABLE_AUTHORIZATION_PACKAGES = 0x8181101e, + PR_EMS_AB_AVAILABLE_AUTHORIZATION_PACKAGES_UNICODE = 0x8181101f, + PR_EMS_AB_AVAILABLE_AUTHORIZATION_PACKAGES_ERROR = 0x8181000a, + PR_EMS_AB_CHARACTER_SET_LIST = 0x8182101e, + PR_EMS_AB_CHARACTER_SET_LIST_UNICODE = 0x8182101f, + PR_EMS_AB_CHARACTER_SET_LIST_ERROR = 0x8182000a, + PR_EMS_AB_USE_SITE_VALUES = 0x8183000b, + PR_EMS_AB_USE_SITE_VALUES_ERROR = 0x8183000a, + PR_EMS_AB_ENABLED_AUTHORIZATION_PACKAGES = 0x8184101e, + PR_EMS_AB_ENABLED_AUTHORIZATION_PACKAGES_UNICODE = 0x8184101f, + PR_EMS_AB_ENABLED_AUTHORIZATION_PACKAGES_ERROR = 0x8184000a, + PR_EMS_AB_CHARACTER_SET = 0x8185001e, + PR_EMS_AB_CHARACTER_SET_UNICODE = 0x8185001f, + PR_EMS_AB_CHARACTER_SET_ERROR = 0x8185000a, + PR_EMS_AB_CONTENT_TYPE = 0x81860003, + PR_EMS_AB_CONTENT_TYPE_ERROR = 0x8186000a, + PR_EMS_AB_ANONYMOUS_ACCESS = 0x8187000b, + PR_EMS_AB_ANONYMOUS_ACCESS_ERROR = 0x8187000a, + PR_EMS_AB_CONTROL_MSG_FOLDER_ID = 0x81880102, + PR_EMS_AB_CONTROL_MSG_FOLDER_ID_ERROR = 0x8188000a, + PR_EMS_AB_USENET_SITE_NAME = 0x8189001e, + PR_EMS_AB_USENET_SITE_NAME_UNICODE = 0x8189001f, + PR_EMS_AB_USENET_SITE_NAME_ERROR = 0x8189000a, + PR_EMS_AB_CONTROL_MSG_RULES = 0x818a0102, + PR_EMS_AB_CONTROL_MSG_RULES_ERROR = 0x818a000a, + PR_EMS_AB_AVAILABLE_DISTRIBUTIONS = 0x818b001e, + PR_EMS_AB_AVAILABLE_DISTRIBUTIONS_UNICODE = 0x818b001f, + PR_EMS_AB_AVAILABLE_DISTRIBUTIONS_ERROR = 0x818b000a, + PR_EMS_AB_OUTBOUND_HOST = 0x818d0102, + PR_EMS_AB_OUTBOUND_HOST_ERROR = 0x818d000a, + PR_EMS_AB_INBOUND_HOST = 0x818e101e, + PR_EMS_AB_INBOUND_HOST_UNICODE = 0x818e101f, + PR_EMS_AB_INBOUND_HOST_ERROR = 0x818e000a, + PR_EMS_AB_OUTGOING_MSG_SIZE_LIMIT = 0x818f0003, + PR_EMS_AB_OUTGOING_MSG_SIZE_LIMIT_ERROR = 0x818f000a, + PR_EMS_AB_INCOMING_MSG_SIZE_LIMIT = 0x81900003, + PR_EMS_AB_INCOMING_MSG_SIZE_LIMIT_ERROR = 0x8190000a, + PR_EMS_AB_SEND_TNEF = 0x8191000b, + PR_EMS_AB_SEND_TNEF_ERROR = 0x8191000a, + PR_EMS_AB_AUTHORIZED_PASSWORD_CONFIRM = 0x81920102, + PR_EMS_AB_AUTHORIZED_PASSWORD_CONFIRM_ERROR = 0x8192000a, + PR_EMS_AB_INBOUND_NEWSFEED = 0x8193001e, + PR_EMS_AB_INBOUND_NEWSFEED_UNICODE = 0x8193001f, + PR_EMS_AB_INBOUND_NEWSFEED_ERROR = 0x8193000a, + PR_EMS_AB_NEWSFEED_TYPE = 0x81940003, + PR_EMS_AB_NEWSFEED_TYPE_ERROR = 0x8194000a, + PR_EMS_AB_OUTBOUND_NEWSFEED = 0x8195001e, + PR_EMS_AB_OUTBOUND_NEWSFEED_UNICODE = 0x8195001f, + PR_EMS_AB_OUTBOUND_NEWSFEED_ERROR = 0x8195000a, + PR_EMS_AB_NEWSGROUP_LIST = 0x81960102, + PR_EMS_AB_NEWSGROUP_LIST_ERROR = 0x8196000a, + PR_EMS_AB_NNTP_DISTRIBUTIONS = 0x8197101e, + PR_EMS_AB_NNTP_DISTRIBUTIONS_UNICODE = 0x8197101f, + PR_EMS_AB_NNTP_DISTRIBUTIONS_ERROR = 0x8197000a, + PR_EMS_AB_NEWSGROUP = 0x8198001e, + PR_EMS_AB_NEWSGROUP_UNICODE = 0x8198001f, + PR_EMS_AB_NEWSGROUP_ERROR = 0x8198000a, + PR_EMS_AB_MODERATOR = 0x8199001e, + PR_EMS_AB_MODERATOR_UNICODE = 0x8199001f, + PR_EMS_AB_MODERATOR_ERROR = 0x8199000a, + PR_EMS_AB_AUTHENTICATION_TO_USE = 0x819a001e, + PR_EMS_AB_AUTHENTICATION_TO_USE_UNICODE = 0x819a001f, + PR_EMS_AB_AUTHENTICATION_TO_USE_ERROR = 0x819a000a, + PR_EMS_AB_HTTP_PUB_GAL = 0x819b000b, + PR_EMS_AB_HTTP_PUB_GAL_ERROR = 0x819b000a, + PR_EMS_AB_HTTP_PUB_GAL_LIMIT = 0x819c0003, + PR_EMS_AB_HTTP_PUB_GAL_LIMIT_ERROR = 0x819c000a, + PR_EMS_AB_HTTP_PUB_PF = 0x819e1102, + PR_EMS_AB_HTTP_PUB_PF_ERROR = 0x819e000a, + PR_EMS_AB_X500_RDN = 0x81a1001e, + PR_EMS_AB_X500_RDN_UNICODE = 0x81a1001f, + PR_EMS_AB_X500_RDN_ERROR = 0x81a1000a, + PR_EMS_AB_X500_NC = 0x81a2001e, + PR_EMS_AB_X500_NC_UNICODE = 0x81a2001f, + PR_EMS_AB_X500_NC_ERROR = 0x81a2000a, + PR_EMS_AB_REFERRAL_LIST = 0x81a3101e, + PR_EMS_AB_REFERRAL_LIST_UNICODE = 0x81a3101f, + PR_EMS_AB_REFERRAL_LIST_ERROR = 0x81a3000a, + PR_EMS_AB_NNTP_DISTRIBUTIONS_FLAG = 0x81a4000b, + PR_EMS_AB_NNTP_DISTRIBUTIONS_FLAG_ERROR = 0x81a4000a, + PR_EMS_AB_ASSOC_PROTOCOL_CFG_NNTP_O = 0x81a5000d, + PR_EMS_AB_ASSOC_PROTOCOL_CFG_NNTP_O_ERROR = 0x81a5000a, + PR_EMS_AB_ASSOC_PROTOCOL_CFG_NNTP = 0x81a5001e, + PR_EMS_AB_ASSOC_PROTOCOL_CFG_NNTP_UNICODE = 0x81a5001f, + PR_EMS_AB_NNTP_NEWSFEEDS_O = 0x81a6000d, + PR_EMS_AB_NNTP_NEWSFEEDS_O_ERROR = 0x81a6000a, + PR_EMS_AB_NNTP_NEWSFEEDS = 0x81a6101e, + PR_EMS_AB_NNTP_NEWSFEEDS_UNICODE = 0x81a6101f, + PR_EMS_AB_ENABLED_PROTOCOL_CFG = 0x81a8000b, + PR_EMS_AB_ENABLED_PROTOCOL_CFG_ERROR = 0x81a8000a, + PR_EMS_AB_HTTP_PUB_AB_ATTRIBUTES = 0x81a9101e, + PR_EMS_AB_HTTP_PUB_AB_ATTRIBUTES_UNICODE = 0x81a9101f, + PR_EMS_AB_HTTP_PUB_AB_ATTRIBUTES_ERROR = 0x81a9000a, + PR_EMS_AB_HTTP_SERVERS = 0x81ab101e, + PR_EMS_AB_HTTP_SERVERS_UNICODE = 0x81ab101f, + PR_EMS_AB_HTTP_SERVERS_ERROR = 0x81ab000a, + PR_EMS_AB_MODERATED = 0x81ac000b, + PR_EMS_AB_MODERATED_ERROR = 0x81ac000a, + PR_EMS_AB_RAS_ACCOUNT = 0x81ad001e, + PR_EMS_AB_RAS_ACCOUNT_UNICODE = 0x81ad001f, + PR_EMS_AB_RAS_ACCOUNT_ERROR = 0x81ad000a, + PR_EMS_AB_RAS_PASSWORD = 0x81ae0102, + PR_EMS_AB_RAS_PASSWORD_ERROR = 0x81ae000a, + PR_EMS_AB_INCOMING_PASSWORD = 0x81af0102, + PR_EMS_AB_INCOMING_PASSWORD_ERROR = 0x81af000a, + PR_EMS_AB_OUTBOUND_HOST_TYPE = 0x81b0000b, + PR_EMS_AB_OUTBOUND_HOST_TYPE_ERROR = 0x81b0000a, + PR_EMS_AB_PROXY_GENERATION_ENABLED = 0x81b1000b, + PR_EMS_AB_PROXY_GENERATION_ENABLED_ERROR = 0x81b1000a, + PR_EMS_AB_ROOT_NEWSGROUPS_FOLDER_ID = 0x81b20102, + PR_EMS_AB_ROOT_NEWSGROUPS_FOLDER_ID_ERROR = 0x81b2000a, + PR_EMS_AB_CONNECTION_TYPE = 0x81b3000b, + PR_EMS_AB_CONNECTION_TYPE_ERROR = 0x81b3000a, + PR_EMS_AB_CONNECTION_LIST_FILTER_TYPE = 0x81b40003, + PR_EMS_AB_CONNECTION_LIST_FILTER_TYPE_ERROR = 0x81b4000a, + PR_EMS_AB_PORT_NUMBER = 0x81b50003, + PR_EMS_AB_PORT_NUMBER_ERROR = 0x81b5000a, + PR_EMS_AB_PROTOCOL_SETTINGS = 0x81b6101e, + PR_EMS_AB_PROTOCOL_SETTINGS_UNICODE = 0x81b6101f, + PR_EMS_AB_PROTOCOL_SETTINGS_ERROR = 0x81b6000a, + PR_EMS_AB_GROUP_BY_ATTR_1 = 0x81b7001e, + PR_EMS_AB_GROUP_BY_ATTR_1_UNICODE = 0x81b7001f, + PR_EMS_AB_GROUP_BY_ATTR_1_ERROR = 0x81b7000a, + PR_EMS_AB_GROUP_BY_ATTR_2 = 0x81b8001e, + PR_EMS_AB_GROUP_BY_ATTR_2_UNICODE = 0x81b8001f, + PR_EMS_AB_GROUP_BY_ATTR_2_ERROR = 0x81b8000a, + PR_EMS_AB_GROUP_BY_ATTR_3 = 0x81b9001e, + PR_EMS_AB_GROUP_BY_ATTR_3_UNICODE = 0x81b9001f, + PR_EMS_AB_GROUP_BY_ATTR_3_ERROR = 0x81b9000a, + PR_EMS_AB_GROUP_BY_ATTR_4 = 0x81ba001e, + PR_EMS_AB_GROUP_BY_ATTR_4_UNICODE = 0x81ba001f, + PR_EMS_AB_GROUP_BY_ATTR_4_ERROR = 0x81ba000a, + PR_EMS_AB_VIEW_SITE = 0x81be001e, + PR_EMS_AB_VIEW_SITE_UNICODE = 0x81be001f, + PR_EMS_AB_VIEW_SITE_ERROR = 0x81be000a, + PR_EMS_AB_VIEW_CONTAINER_1 = 0x81bf001e, + PR_EMS_AB_VIEW_CONTAINER_1_UNICODE = 0x81bf001f, + PR_EMS_AB_VIEW_CONTAINER_1_ERROR = 0x81bf000a, + PR_EMS_AB_VIEW_CONTAINER_2 = 0x81c0001e, + PR_EMS_AB_VIEW_CONTAINER_2_UNICODE = 0x81c0001f, + PR_EMS_AB_VIEW_CONTAINER_2_ERROR = 0x81c0000a, + PR_EMS_AB_VIEW_CONTAINER_3 = 0x81c1001e, + PR_EMS_AB_VIEW_CONTAINER_3_UNICODE = 0x81c1001f, + PR_EMS_AB_VIEW_CONTAINER_3_ERROR = 0x81c1000a, + PR_EMS_AB_PROMO_EXPIRATION = 0x81c20040, + PR_EMS_AB_PROMO_EXPIRATION_ERROR = 0x81c2000a, + PR_EMS_AB_DISABLED_GATEWAY_PROXY = 0x81c3101e, + PR_EMS_AB_DISABLED_GATEWAY_PROXY_UNICODE = 0x81c3101f, + PR_EMS_AB_DISABLED_GATEWAY_PROXY_ERROR = 0x81c3000a, + PR_EMS_AB_COMPROMISED_KEY_LIST = 0x81c40102, + PR_EMS_AB_COMPROMISED_KEY_LIST_ERROR = 0x81c4000a, + PR_EMS_AB_INSADMIN_O = 0x81c5000d, + PR_EMS_AB_INSADMIN_O_ERROR = 0x81c5000a, + PR_EMS_AB_INSADMIN = 0x81c5001e, + PR_EMS_AB_INSADMIN_UNICODE = 0x81c5001f, + PR_EMS_AB_OVERRIDE_NNTP_CONTENT_FORMAT = 0x81c6000b, + PR_EMS_AB_OVERRIDE_NNTP_CONTENT_FORMAT_ERROR = 0x81c6000a, + PR_EMS_AB_OBJ_VIEW_CONTAINERS_O = 0x81c7000d, + PR_EMS_AB_OBJ_VIEW_CONTAINERS_O_ERROR = 0x81c7000a, + PR_EMS_AB_OBJ_VIEW_CONTAINERS = 0x81c7101e, + PR_EMS_AB_OBJ_VIEW_CONTAINERS_UNICODE = 0x81c7101f, + PR_EMS_AB_VIEW_FLAGS = 0x8c180003, + PR_EMS_AB_VIEW_FLAGS_ERROR = 0x8c18000a, + PR_EMS_AB_GROUP_BY_ATTR_VALUE_STR = 0x8c19001e, + PR_EMS_AB_GROUP_BY_ATTR_VALUE_STR_UNICODE = 0x8c19001f, + PR_EMS_AB_GROUP_BY_ATTR_VALUE_STR_ERROR = 0x8c19000a, + PR_EMS_AB_GROUP_BY_ATTR_VALUE_DN_O = 0x8c1a000d, + PR_EMS_AB_GROUP_BY_ATTR_VALUE_DN_O_ERROR = 0x8c1a000a, + PR_EMS_AB_GROUP_BY_ATTR_VALUE_DN = 0x8c1a001e, + PR_EMS_AB_GROUP_BY_ATTR_VALUE_DN_UNICODE = 0x8c1a001f, + PR_EMS_AB_VIEW_DEFINITION = 0x8c1b1102, + PR_EMS_AB_VIEW_DEFINITION_ERROR = 0x8c1b000a, + PR_EMS_AB_MIME_TYPES = 0x8c1c0102, + PR_EMS_AB_MIME_TYPES_ERROR = 0x8c1c000a, + PR_EMS_AB_LDAP_SEARCH_CFG = 0x8c1d0003, + PR_EMS_AB_LDAP_SEARCH_CFG_ERROR = 0x8c1d000a, + PR_EMS_AB_INBOUND_DN_O = 0x8c1e000d, + PR_EMS_AB_INBOUND_DN_O_ERROR = 0x8c1e000a, + PR_EMS_AB_INBOUND_DN = 0x8c1e001e, + PR_EMS_AB_INBOUND_DN_UNICODE = 0x8c1e001f, + PR_EMS_AB_INBOUND_NEWSFEED_TYPE = 0x8c1f000b, + PR_EMS_AB_INBOUND_NEWSFEED_TYPE_ERROR = 0x8c1f000a, + PR_EMS_AB_INBOUND_ACCEPT_ALL = 0x8c20000b, + PR_EMS_AB_INBOUND_ACCEPT_ALL_ERROR = 0x8c20000a, + PR_EMS_AB_ENABLED = 0x8c21000b, + PR_EMS_AB_ENABLED_ERROR = 0x8c21000a, + PR_EMS_AB_PRESERVE_INTERNET_CONTENT = 0x8c22000b, + PR_EMS_AB_PRESERVE_INTERNET_CONTENT_ERROR = 0x8c22000a, + PR_EMS_AB_DISABLE_DEFERRED_COMMIT = 0x8c23000b, + PR_EMS_AB_DISABLE_DEFERRED_COMMIT_ERROR = 0x8c23000a, + PR_EMS_AB_CLIENT_ACCESS_ENABLED = 0x8c24000b, + PR_EMS_AB_CLIENT_ACCESS_ENABLED_ERROR = 0x8c24000a, + PR_EMS_AB_REQUIRE_SSL = 0x8c25000b, + PR_EMS_AB_REQUIRE_SSL_ERROR = 0x8c25000a, + PR_EMS_AB_ANONYMOUS_ACCOUNT = 0x8c26001e, + PR_EMS_AB_ANONYMOUS_ACCOUNT_UNICODE = 0x8c26001f, + PR_EMS_AB_ANONYMOUS_ACCOUNT_ERROR = 0x8c26000a, + PR_EMS_AB_CERTIFICATE_CHAIN_V3 = 0x8c270102, + PR_EMS_AB_CERTIFICATE_CHAIN_V3_ERROR = 0x8c27000a, + PR_EMS_AB_CERTIFICATE_REVOCATION_LIST_V3 = 0x8c280102, + PR_EMS_AB_CERTIFICATE_REVOCATION_LIST_V3_ERROR = 0x8c28000a, + PR_EMS_AB_CERTIFICATE_REVOCATION_LIST_V1 = 0x8c290102, + PR_EMS_AB_CERTIFICATE_REVOCATION_LIST_V1_ERROR = 0x8c29000a, + PR_EMS_AB_CROSS_CERTIFICATE_CRL = 0x8c301102, + PR_EMS_AB_CROSS_CERTIFICATE_CRL_ERROR = 0x8c30000a, + PR_EMS_AB_SEND_EMAIL_MESSAGE = 0x8c31000b, + PR_EMS_AB_SEND_EMAIL_MESSAGE_ERROR = 0x8c31000a, + PR_EMS_AB_ENABLE_COMPATIBILITY = 0x8c32000b, + PR_EMS_AB_ENABLE_COMPATIBILITY_ERROR = 0x8c32000a, + PR_EMS_AB_SMIME_ALG_LIST_NA = 0x8c33101e, + PR_EMS_AB_SMIME_ALG_LIST_NA_UNICODE = 0x8c33101f, + PR_EMS_AB_SMIME_ALG_LIST_NA_ERROR = 0x8c33000a, + PR_EMS_AB_SMIME_ALG_LIST_OTHER = 0x8c34101e, + PR_EMS_AB_SMIME_ALG_LIST_OTHER_UNICODE = 0x8c34101f, + PR_EMS_AB_SMIME_ALG_LIST_OTHER_ERROR = 0x8c34000a, + PR_EMS_AB_SMIME_ALG_SELECTED_NA = 0x8c35001e, + PR_EMS_AB_SMIME_ALG_SELECTED_NA_UNICODE = 0x8c35001f, + PR_EMS_AB_SMIME_ALG_SELECTED_NA_ERROR = 0x8c35000a, + PR_EMS_AB_SMIME_ALG_SELECTED_OTHER = 0x8c36001e, + PR_EMS_AB_SMIME_ALG_SELECTED_OTHER_UNICODE = 0x8c36001f, + PR_EMS_AB_SMIME_ALG_SELECTED_OTHER_ERROR = 0x8c36000a, + PR_EMS_AB_DEFAULT_MESSAGE_FORMAT = 0x8c37000b, + PR_EMS_AB_DEFAULT_MESSAGE_FORMAT_ERROR = 0x8c37000a, + PR_EMS_AB_TYPE = 0x8c38001e, + PR_EMS_AB_TYPE_UNICODE = 0x8c38001f, + PR_EMS_AB_TYPE_ERROR = 0x8c38000a, + PR_EMS_AB_DO_OAB_VERSION = 0x8c3a0003, + PR_EMS_AB_DO_OAB_VERSION_ERROR = 0x8c3a000a, + PR_EMS_AB_VOICE_MAIL_SYSTEM_GUID = 0x8c3b0102, + PR_EMS_AB_VOICE_MAIL_SYSTEM_GUID_ERROR = 0x8c3b000a, + PR_EMS_AB_VOICE_MAIL_USER_ID = 0x8c3c001e, + PR_EMS_AB_VOICE_MAIL_USER_ID_UNICODE = 0x8c3c001f, + PR_EMS_AB_VOICE_MAIL_USER_ID_ERROR = 0x8c3c000a, + PR_EMS_AB_VOICE_MAIL_PASSWORD = 0x8c3d001e, + PR_EMS_AB_VOICE_MAIL_PASSWORD_UNICODE = 0x8c3d001f, + PR_EMS_AB_VOICE_MAIL_PASSWORD_ERROR = 0x8c3d000a, + PR_EMS_AB_VOICE_MAIL_RECORDED_NAME = 0x8c3e0102, + PR_EMS_AB_VOICE_MAIL_RECORDED_NAME_ERROR = 0x8c3e000a, + PR_EMS_AB_VOICE_MAIL_GREETINGS = 0x8c3f101e, + PR_EMS_AB_VOICE_MAIL_GREETINGS_UNICODE = 0x8c3f101f, + PR_EMS_AB_VOICE_MAIL_GREETINGS_ERROR = 0x8c3f000a, + PR_EMS_AB_VOICE_MAIL_FLAGS = 0x8c401102, + PR_EMS_AB_VOICE_MAIL_FLAGS_ERROR = 0x8c40000a, + PR_EMS_AB_VOICE_MAIL_VOLUME = 0x8c410003, + PR_EMS_AB_VOICE_MAIL_VOLUME_ERROR = 0x8c41000a, + PR_EMS_AB_VOICE_MAIL_SPEED = 0x8c420003, + PR_EMS_AB_VOICE_MAIL_SPEED_ERROR = 0x8c42000a, + PR_EMS_AB_VOICE_MAIL_RECORDING_LENGTH = 0x8c431003, + PR_EMS_AB_VOICE_MAIL_RECORDING_LENGTH_ERROR = 0x8c43000a, + PR_EMS_AB_DISPLAY_NAME_SUFFIX = 0x8c44001e, + PR_EMS_AB_DISPLAY_NAME_SUFFIX_UNICODE = 0x8c44001f, + PR_EMS_AB_DISPLAY_NAME_SUFFIX_ERROR = 0x8c44000a, + PR_EMS_AB_ATTRIBUTE_CERTIFICATE = 0x8c451102, + PR_EMS_AB_ATTRIBUTE_CERTIFICATE_ERROR = 0x8c45000a, + PR_EMS_AB_DELTA_REVOCATION_LIST = 0x8c461102, + PR_EMS_AB_DELTA_REVOCATION_LIST_ERROR = 0x8c46000a, + PR_EMS_AB_SECURITY_POLICY = 0x8c471102, + PR_EMS_AB_SECURITY_POLICY_ERROR = 0x8c47000a, + PR_EMS_AB_SUPPORT_SMIME_SIGNATURES = 0x8c48000b, + PR_EMS_AB_SUPPORT_SMIME_SIGNATURES_ERROR = 0x8c48000a, + PR_EMS_AB_DELEGATE_USER = 0x8c49000b, + PR_EMS_AB_DELEGATE_USER_ERROR = 0x8c49000a, + PR_EMS_AB_LIST_PUBLIC_FOLDERS = 0x8c50000b, + PR_EMS_AB_LIST_PUBLIC_FOLDERS_ERROR = 0x8c50000a, + PR_EMS_AB_LABELEDURI = 0x8c51001e, + PR_EMS_AB_LABELEDURI_UNICODE = 0x8c51001f, + PR_EMS_AB_LABELEDURI_ERROR = 0x8c51000a, + PR_EMS_AB_RETURN_EXACT_MSG_SIZE = 0x8c52000b, + PR_EMS_AB_RETURN_EXACT_MSG_SIZE_ERROR = 0x8c52000a, + PR_EMS_AB_GENERATION_QUALIFIER = 0x8c53001e, + PR_EMS_AB_GENERATION_QUALIFIER_UNICODE = 0x8c53001f, + PR_EMS_AB_GENERATION_QUALIFIER_ERROR = 0x8c53000a, + PR_EMS_AB_HOUSE_IDENTIFIER = 0x8c54001e, + PR_EMS_AB_HOUSE_IDENTIFIER_UNICODE = 0x8c54001f, + PR_EMS_AB_HOUSE_IDENTIFIER_ERROR = 0x8c54000a, + PR_EMS_AB_SUPPORTED_ALGORITHMS = 0x8c550102, + PR_EMS_AB_SUPPORTED_ALGORITHMS_ERROR = 0x8c55000a, + PR_EMS_AB_DMD_NAME = 0x8c56001e, + PR_EMS_AB_DMD_NAME_UNICODE = 0x8c56001f, + PR_EMS_AB_DMD_NAME_ERROR = 0x8c56000a, + PR_EMS_AB_EXTENSION_ATTRIBUTE_11 = 0x8c57001e, + PR_EMS_AB_EXTENSION_ATTRIBUTE_11_UNICODE = 0x8c57001f, + PR_EMS_AB_EXTENSION_ATTRIBUTE_11_ERROR = 0x8c57000a, + PR_EMS_AB_EXTENSION_ATTRIBUTE_12 = 0x8c58001e, + PR_EMS_AB_EXTENSION_ATTRIBUTE_12_UNICODE = 0x8c58001f, + PR_EMS_AB_EXTENSION_ATTRIBUTE_12_ERROR = 0x8c58000a, + PR_EMS_AB_EXTENSION_ATTRIBUTE_13 = 0x8c59001e, + PR_EMS_AB_EXTENSION_ATTRIBUTE_13_UNICODE = 0x8c59001f, + PR_EMS_AB_EXTENSION_ATTRIBUTE_13_ERROR = 0x8c59000a, + PR_EMS_AB_EXTENSION_ATTRIBUTE_14 = 0x8c60001e, + PR_EMS_AB_EXTENSION_ATTRIBUTE_14_UNICODE = 0x8c60001f, + PR_EMS_AB_EXTENSION_ATTRIBUTE_14_ERROR = 0x8c60000a, + PR_EMS_AB_EXTENSION_ATTRIBUTE_15 = 0x8c61001e, + PR_EMS_AB_EXTENSION_ATTRIBUTE_15_UNICODE = 0x8c61001f, + PR_EMS_AB_EXTENSION_ATTRIBUTE_15_ERROR = 0x8c61000a, + PR_EMS_AB_REPLICATED_OBJECT_VERSION = 0x8c620003, + PR_EMS_AB_REPLICATED_OBJECT_VERSION_ERROR = 0x8c62000a, + PR_EMS_AB_MAIL_DROP = 0x8c63001e, + PR_EMS_AB_MAIL_DROP_UNICODE = 0x8c63001f, + PR_EMS_AB_MAIL_DROP_ERROR = 0x8c63000a, + PR_EMS_AB_FORWARDING_ADDRESS = 0x8c64001e, + PR_EMS_AB_FORWARDING_ADDRESS_UNICODE = 0x8c64001f, + PR_EMS_AB_FORWARDING_ADDRESS_ERROR = 0x8c64000a, + PR_EMS_AB_FORM_DATA = 0x8c650102, + PR_EMS_AB_FORM_DATA_ERROR = 0x8c65000a, + PR_EMS_AB_OWA_SERVER = 0x8c66001e, + PR_EMS_AB_OWA_SERVER_UNICODE = 0x8c66001f, + PR_EMS_AB_OWA_SERVER_ERROR = 0x8c66000a, + PR_EMS_AB_EMPLOYEE_NUMBER = 0x8c67001e, + PR_EMS_AB_EMPLOYEE_NUMBER_UNICODE = 0x8c67001f, + PR_EMS_AB_EMPLOYEE_NUMBER_ERROR = 0x8c67000a, + PR_EMS_AB_TELEPHONE_PERSONAL_PAGER = 0x8c68001e, + PR_EMS_AB_TELEPHONE_PERSONAL_PAGER_UNICODE = 0x8c68001f, + PR_EMS_AB_TELEPHONE_PERSONAL_PAGER_ERROR = 0x8c68000a, + PR_EMS_AB_EMPLOYEE_TYPE = 0x8c69001e, + PR_EMS_AB_EMPLOYEE_TYPE_UNICODE = 0x8c69001f, + PR_EMS_AB_EMPLOYEE_TYPE_ERROR = 0x8c69000a, + PR_EMS_AB_TAGGED_X509_CERT = 0x8c6a1102, + PR_EMS_AB_TAGGED_X509_CERT_ERROR = 0x8c6a000a, + PR_EMS_AB_PERSONAL_TITLE = 0x8c6b001e, + PR_EMS_AB_PERSONAL_TITLE_UNICODE = 0x8c6b001f, + PR_EMS_AB_PERSONAL_TITLE_ERROR = 0x8c6b000a, + PR_EMS_AB_LANGUAGE_ISO639 = 0x8c6c001e, + PR_EMS_AB_LANGUAGE_ISO639_UNICODE = 0x8c6c001f, + PR_EMS_AB_LANGUAGE_ISO639_ERROR = 0x8c6c000a, + PR_EMS_AB_OTHER_RECIPS = 0xf000000d, + PR_EMS_AB_OTHER_RECIPS_ERROR = 0xf000000a, + PR_EMS_AB_CHILD_RDNS = 0xfff8101e, + PR_EMS_AB_CHILD_RDNS_UNICODE = 0xfff8101f, + PR_EMS_AB_CHILD_RDNS_ERROR = 0xfff8000a, + PR_EMS_AB_HIERARCHY_PATH = 0xfff9001e, + PR_EMS_AB_HIERARCHY_PATH_UNICODE = 0xfff9001f, + PR_EMS_AB_HIERARCHY_PATH_ERROR = 0xfff9000a, + PR_EMS_AB_OBJECT_OID = 0xfffa0102, + PR_EMS_AB_OBJECT_OID_ERROR = 0xfffa000a, + PR_EMS_AB_IS_MASTER = 0xfffb000b, + PR_EMS_AB_IS_MASTER_ERROR = 0xfffb000a, + PR_EMS_AB_PARENT_ENTRYID = 0xfffc0102, + PR_EMS_AB_PARENT_ENTRYID_ERROR = 0xfffc000a, + PR_EMS_AB_CONTAINERID = 0xfffd0003, + PR_EMS_AB_CONTAINERID_ERROR = 0xfffd000a, + PR_EMS_AB_SERVER = 0xfffe001e, + PR_EMS_AB_SERVER_UNICODE = 0xfffe001f, + PR_EMS_AB_SERVER_ERROR = 0xfffe000a, + MAPI_PROP_RESERVED = 0xFFFFFFFF +} MAPITAGS; + diff --git a/epan/dissectors/pidl/mdssvc.cnf b/epan/dissectors/pidl/mdssvc.cnf deleted file mode 100644 index d041f74702..0000000000 --- a/epan/dissectors/pidl/mdssvc.cnf +++ /dev/null @@ -1,25 +0,0 @@ -MANUAL mdssvc_dissect_element_blob_spotlight_blob - -NOEMIT mdssvc_dissect_element_blob_spotlight_blob_ - -CODE START -static int -mdssvc_dissect_element_blob_spotlight_blob(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep _U_) -{ - tvbuff_t *spotlight_tvb; - dissector_handle_t spotlight_handle; - - if (di->conformant_run) { - return offset; - } - - spotlight_handle = find_dissector("afp_spotlight"); - if (spotlight_handle) - { - spotlight_tvb = tvb_new_subset_remaining(tvb, offset + 16); - return (offset + 16 + call_dissector(spotlight_handle, spotlight_tvb, pinfo, tree)); - } - - return offset; -} -CODE END diff --git a/epan/dissectors/pidl/mdssvc.idl b/epan/dissectors/pidl/mdssvc.idl deleted file mode 100644 index ffbe25b4a8..0000000000 --- a/epan/dissectors/pidl/mdssvc.idl +++ /dev/null @@ -1,60 +0,0 @@ -import "misc.idl"; -[ - uuid("885d85fb-c754-4062-a0e7-6872ce0064f4"), - endpoint("ncacn_np:[\\pipe\\mdssvc]", "ncacn_ip_tcp:", "ncalrpc:"), - version(2.0), - helpstring("Spotlight metadata search service") -] -interface mdssvc -{ - void mdssvc_open( - [in,out,ref] uint32 *device_id, - [in,out,ref] uint32 *unkn2, /* always 0x17 ? */ - [in,out,ref] uint32 *unkn3, /* always 0 ? */ - [in][string,charset(UTF8)] uint8 share_mount_path[], - [in][string,charset(UTF8)] uint8 share_name[], - [out,string,charset(UTF8),size_is(1025)] uint8 share_path[], - [out,ref] policy_handle *share_handle - ); - - void mdssvc_unknown1( - [in] policy_handle share_handle, - [in] uint32 unkn1, /* always 0, some status ? */ - [in] uint32 device_id, - [in] uint32 unkn3, /* = mdssvc_open.unkn2 ? */ - [in] uint32 unkn4, /* always 0, some status ? */ - [in] uint32 unkn5, /* 0x01f5*/ - [in] uint32 unkn6, /* 0x14 */ - [out,ref] uint32 *status, - [out,ref] uint32 *flags, /* always 0x6b000001 ? */ - [out,ref] uint32 *unkn7 /* always 0 ? */ - ); - - typedef [public] struct { - uint32 length; - uint32 size; - [size_is(size),length_is(length)] uint8 *spotlight_blob; - } mdssvc_blob; - - void mdssvc_cmd( - [in] policy_handle share_handle, - [in] uint32 unkn1, /* always 0, status ? */ - [in] uint32 device_id, - [in] uint32 unkn3, /* = mdssvc_open.unkn2 ? */ - [in] uint32 unkn4, /* always 0 ? */ - [in] uint32 flags, /* always 0x6b000001 ? */ - [in] mdssvc_blob request_blob, - - [in] uint32 unkn5, /* always 0 ? */ - [in] uint32 max_fragment_size1, - [in] uint32 unkn6, /* always 1 ? */ - [in] uint32 max_fragment_size2, /* always max_fragment_size1 = max_fragment_size2 ? */ - [in] uint32 unkn7, /* always 0 ? */ - [in] uint32 unkn8, /* always 0 ? */ - - - [out,ref] uint32 *status, - [out,ref] mdssvc_blob *response_blob, - [out,ref] uint32 *unkn9 /* always 0 ? */ - ); -} diff --git a/epan/dissectors/pidl/mdssvc/mdssvc.cnf b/epan/dissectors/pidl/mdssvc/mdssvc.cnf new file mode 100644 index 0000000000..d041f74702 --- /dev/null +++ b/epan/dissectors/pidl/mdssvc/mdssvc.cnf @@ -0,0 +1,25 @@ +MANUAL mdssvc_dissect_element_blob_spotlight_blob + +NOEMIT mdssvc_dissect_element_blob_spotlight_blob_ + +CODE START +static int +mdssvc_dissect_element_blob_spotlight_blob(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep _U_) +{ + tvbuff_t *spotlight_tvb; + dissector_handle_t spotlight_handle; + + if (di->conformant_run) { + return offset; + } + + spotlight_handle = find_dissector("afp_spotlight"); + if (spotlight_handle) + { + spotlight_tvb = tvb_new_subset_remaining(tvb, offset + 16); + return (offset + 16 + call_dissector(spotlight_handle, spotlight_tvb, pinfo, tree)); + } + + return offset; +} +CODE END diff --git a/epan/dissectors/pidl/mdssvc/mdssvc.idl b/epan/dissectors/pidl/mdssvc/mdssvc.idl new file mode 100644 index 0000000000..cb629e1d99 --- /dev/null +++ b/epan/dissectors/pidl/mdssvc/mdssvc.idl @@ -0,0 +1,60 @@ +import "misc/misc.idl"; +[ + uuid("885d85fb-c754-4062-a0e7-6872ce0064f4"), + endpoint("ncacn_np:[\\pipe\\mdssvc]", "ncacn_ip_tcp:", "ncalrpc:"), + version(2.0), + helpstring("Spotlight metadata search service") +] +interface mdssvc +{ + void mdssvc_open( + [in,out,ref] uint32 *device_id, + [in,out,ref] uint32 *unkn2, /* always 0x17 ? */ + [in,out,ref] uint32 *unkn3, /* always 0 ? */ + [in][string,charset(UTF8)] uint8 share_mount_path[], + [in][string,charset(UTF8)] uint8 share_name[], + [out,string,charset(UTF8),size_is(1025)] uint8 share_path[], + [out,ref] policy_handle *share_handle + ); + + void mdssvc_unknown1( + [in] policy_handle share_handle, + [in] uint32 unkn1, /* always 0, some status ? */ + [in] uint32 device_id, + [in] uint32 unkn3, /* = mdssvc_open.unkn2 ? */ + [in] uint32 unkn4, /* always 0, some status ? */ + [in] uint32 unkn5, /* 0x01f5*/ + [in] uint32 unkn6, /* 0x14 */ + [out,ref] uint32 *status, + [out,ref] uint32 *flags, /* always 0x6b000001 ? */ + [out,ref] uint32 *unkn7 /* always 0 ? */ + ); + + typedef [public] struct { + uint32 length; + uint32 size; + [size_is(size),length_is(length)] uint8 *spotlight_blob; + } mdssvc_blob; + + void mdssvc_cmd( + [in] policy_handle share_handle, + [in] uint32 unkn1, /* always 0, status ? */ + [in] uint32 device_id, + [in] uint32 unkn3, /* = mdssvc_open.unkn2 ? */ + [in] uint32 unkn4, /* always 0 ? */ + [in] uint32 flags, /* always 0x6b000001 ? */ + [in] mdssvc_blob request_blob, + + [in] uint32 unkn5, /* always 0 ? */ + [in] uint32 max_fragment_size1, + [in] uint32 unkn6, /* always 1 ? */ + [in] uint32 max_fragment_size2, /* always max_fragment_size1 = max_fragment_size2 ? */ + [in] uint32 unkn7, /* always 0 ? */ + [in] uint32 unkn8, /* always 0 ? */ + + + [out,ref] uint32 *status, + [out,ref] mdssvc_blob *response_blob, + [out,ref] uint32 *unkn9 /* always 0 ? */ + ); +} diff --git a/epan/dissectors/pidl/misc.cnf b/epan/dissectors/pidl/misc.cnf deleted file mode 100644 index f210c38583..0000000000 --- a/epan/dissectors/pidl/misc.cnf +++ /dev/null @@ -1 +0,0 @@ -NOEMIT winreg_Data diff --git a/epan/dissectors/pidl/misc.idl b/epan/dissectors/pidl/misc.idl deleted file mode 100644 index c306f35962..0000000000 --- a/epan/dissectors/pidl/misc.idl +++ /dev/null @@ -1,80 +0,0 @@ -#include "idl_types.h" - -/* - miscellaneous IDL structures -*/ - -[ - uuid("12345678-1234-1234-1234-abcdef123456"), - version(1.0), - pointer_default(unique) -] -interface misc -{ - typedef [public,noprint,gensize] struct { - uint32 time_low; - uint16 time_mid; - uint16 time_hi_and_version; - uint8 clock_seq[2]; - uint8 node[6]; - } GUID; - - typedef [public] struct { - GUID uuid; - /* The major version is encoded in the 16 least significant bits, - the minor in the 16 most significant bits. - http://www.opengroup.org/onlinepubs/9629399/chap12.htm */ - uint32 if_version; - } ndr_syntax_id; - - typedef [public] struct { - uint32 handle_type; - GUID uuid; - } policy_handle; - - /* secure channel types */ - /* Only SEC_CHAN_WKSTA can forward requests to other domains. */ - - typedef [public] enum { - SEC_CHAN_NULL = 0, - SEC_CHAN_LOCAL = 1, - SEC_CHAN_WKSTA = 2, - SEC_CHAN_DNS_DOMAIN = 3, - SEC_CHAN_DOMAIN = 4, - SEC_CHAN_LANMAN = 5, - SEC_CHAN_BDC = 6, - SEC_CHAN_RODC = 7 - } netr_SchannelType; - - typedef [public] struct { - NTSTATUS ntstatus; - uint32 unknown1; - uint32 unknown2; /* 0x00000001 */ - } KRB5_EDATA_NTSTATUS; - - typedef [public,v1_enum] enum { - REG_NONE = 0, - REG_SZ = 1, - REG_EXPAND_SZ = 2, - REG_BINARY = 3, - REG_DWORD = 4, - REG_DWORD_BIG_ENDIAN = 5, - REG_LINK = 6, - REG_MULTI_SZ = 7, - REG_RESOURCE_LIST = 8, - REG_FULL_RESOURCE_DESCRIPTOR = 9, - REG_RESOURCE_REQUIREMENTS_LIST = 10, - REG_QWORD = 11 - } winreg_Type; - - typedef [nodiscriminant,public,flag(NDR_LITTLE_ENDIAN)] union { - [case(REG_NONE)]; - [case(REG_SZ)] nstring string; - [case(REG_EXPAND_SZ)] nstring string; - [case(REG_BINARY),flag(NDR_REMAINING)] DATA_BLOB binary; - [case(REG_DWORD)] uint32 value; - [case(REG_DWORD_BIG_ENDIAN),flag(NDR_BIG_ENDIAN)] uint32 value; - [case(REG_MULTI_SZ)] nstring_array string_array; - [default,flag(NDR_REMAINING)] DATA_BLOB data; - } winreg_Data; -} diff --git a/epan/dissectors/pidl/misc/misc.cnf b/epan/dissectors/pidl/misc/misc.cnf new file mode 100644 index 0000000000..f210c38583 --- /dev/null +++ b/epan/dissectors/pidl/misc/misc.cnf @@ -0,0 +1 @@ +NOEMIT winreg_Data diff --git a/epan/dissectors/pidl/misc/misc.idl b/epan/dissectors/pidl/misc/misc.idl new file mode 100644 index 0000000000..c306f35962 --- /dev/null +++ b/epan/dissectors/pidl/misc/misc.idl @@ -0,0 +1,80 @@ +#include "idl_types.h" + +/* + miscellaneous IDL structures +*/ + +[ + uuid("12345678-1234-1234-1234-abcdef123456"), + version(1.0), + pointer_default(unique) +] +interface misc +{ + typedef [public,noprint,gensize] struct { + uint32 time_low; + uint16 time_mid; + uint16 time_hi_and_version; + uint8 clock_seq[2]; + uint8 node[6]; + } GUID; + + typedef [public] struct { + GUID uuid; + /* The major version is encoded in the 16 least significant bits, + the minor in the 16 most significant bits. + http://www.opengroup.org/onlinepubs/9629399/chap12.htm */ + uint32 if_version; + } ndr_syntax_id; + + typedef [public] struct { + uint32 handle_type; + GUID uuid; + } policy_handle; + + /* secure channel types */ + /* Only SEC_CHAN_WKSTA can forward requests to other domains. */ + + typedef [public] enum { + SEC_CHAN_NULL = 0, + SEC_CHAN_LOCAL = 1, + SEC_CHAN_WKSTA = 2, + SEC_CHAN_DNS_DOMAIN = 3, + SEC_CHAN_DOMAIN = 4, + SEC_CHAN_LANMAN = 5, + SEC_CHAN_BDC = 6, + SEC_CHAN_RODC = 7 + } netr_SchannelType; + + typedef [public] struct { + NTSTATUS ntstatus; + uint32 unknown1; + uint32 unknown2; /* 0x00000001 */ + } KRB5_EDATA_NTSTATUS; + + typedef [public,v1_enum] enum { + REG_NONE = 0, + REG_SZ = 1, + REG_EXPAND_SZ = 2, + REG_BINARY = 3, + REG_DWORD = 4, + REG_DWORD_BIG_ENDIAN = 5, + REG_LINK = 6, + REG_MULTI_SZ = 7, + REG_RESOURCE_LIST = 8, + REG_FULL_RESOURCE_DESCRIPTOR = 9, + REG_RESOURCE_REQUIREMENTS_LIST = 10, + REG_QWORD = 11 + } winreg_Type; + + typedef [nodiscriminant,public,flag(NDR_LITTLE_ENDIAN)] union { + [case(REG_NONE)]; + [case(REG_SZ)] nstring string; + [case(REG_EXPAND_SZ)] nstring string; + [case(REG_BINARY),flag(NDR_REMAINING)] DATA_BLOB binary; + [case(REG_DWORD)] uint32 value; + [case(REG_DWORD_BIG_ENDIAN),flag(NDR_BIG_ENDIAN)] uint32 value; + [case(REG_MULTI_SZ)] nstring_array string_array; + [default,flag(NDR_REMAINING)] DATA_BLOB data; + } winreg_Data; +} diff --git a/epan/dissectors/pidl/nspi/Makefile b/epan/dissectors/pidl/nspi/Makefile deleted file mode 100644 index d66ac6698e..0000000000 --- a/epan/dissectors/pidl/nspi/Makefile +++ /dev/null @@ -1,12 +0,0 @@ -PROTOCOL_NAME=nspi - -all: packet-dcerpc-$(PROTOCOL_NAME).c packet-dcerpc-$(PROTOCOL_NAME).h - -packet-dcerpc-$(PROTOCOL_NAME).c packet-dcerpc-$(PROTOCOL_NAME).h: $(PROTOCOL_NAME).idl $(PROTOCOL_NAME).cnf mapicodes_enum.h mapitags_enum.h ../idl_types.h - ../../../../tools/pidl/pidl --includedir=.. --ws-parser -- $(PROTOCOL_NAME).idl - -clean: - rm -f packet-dcerpc-$(PROTOCOL_NAME).c packet-dcerpc-$(PROTOCOL_NAME).h idl_types.h - -install: packet-dcerpc-$(PROTOCOL_NAME).c packet-dcerpc-$(PROTOCOL_NAME).h - cp packet-dcerpc-$(PROTOCOL_NAME).c packet-dcerpc-$(PROTOCOL_NAME).h ../../ diff --git a/epan/dissectors/pidl/nspi/README.ws b/epan/dissectors/pidl/nspi/README.ws index 25cf118ab2..5df056876d 100644 --- a/epan/dissectors/pidl/nspi/README.ws +++ b/epan/dissectors/pidl/nspi/README.ws @@ -1,5 +1,2 @@ This directory is a copy of the files from: svn://kb.openchange.org/openchange/tools/dissector - -It also adds a Makefile which is not part of the original svn -repository. diff --git a/epan/dissectors/pidl/nspi/mapicodes_enum.h b/epan/dissectors/pidl/nspi/mapicodes_enum.h deleted file mode 100644 index 64b671e5e3..0000000000 --- a/epan/dissectors/pidl/nspi/mapicodes_enum.h +++ /dev/null @@ -1,98 +0,0 @@ -/* - MAPI Implementation - - OpenChange Project - - Copyright (C) Julien Kerihuel 2006 - - 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 2 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, write to the Free Software - Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. -*/ - -/* parser auto-generated by mparse */ - -typedef [public, v1_enum, flag(NDR_PAHEX)] enum { - MAPI_E_SUCCESS = 0x00000000, - MAPI_E_NO_SUPPORT = 0x80040102, - MAPI_E_BAD_CHARWIDTH = 0x80040103, - MAPI_E_STRING_TOO_LONG = 0x80040105, - MAPI_E_UNKNOWN_FLAGS = 0x80040106, - MAPI_E_INVALID_ENTRYID = 0x80040107, - MAPI_E_INVALID_OBJECT = 0x80040108, - MAPI_E_OBJECT_CHANGED = 0x80040109, - MAPI_E_OBJECT_DELETED = 0x8004010A, - MAPI_E_BUSY = 0x8004010B, - MAPI_E_NOT_ENOUGH_DISK = 0x8004010D, - MAPI_E_NOT_ENOUGH_RESOURCES = 0x8004010E, - MAPI_E_NOT_FOUND = 0x8004010F, - MAPI_E_VERSION = 0x80040110, - MAPI_E_LOGON_FAILED = 0x80040111, - MAPI_E_SESSION_LIMIT = 0x80040112, - MAPI_E_USER_CANCEL = 0x80040113, - MAPI_E_UNABLE_TO_ABORT = 0x80040114, - MAPI_E_NETWORK_ERROR = 0x80040115, - MAPI_E_DISK_ERROR = 0x80040116, - MAPI_E_TOO_COMPLEX = 0x80040117, - MAPI_E_BAD_COLUMN = 0x80040118, - MAPI_E_EXTENDED_ERROR = 0x80040119, - MAPI_E_COMPUTED = 0x8004011A, - MAPI_E_CORRUPT_DATA = 0x8004011B, - MAPI_E_UNCONFIGURED = 0x8004011C, - MAPI_E_FAILONEPROVIDER = 0x8004011D, - MAPI_E_UNKNOWN_CPID = 0x8004011E, - MAPI_E_UNKNOWN_LCID = 0x8004011F, - MAPI_E_PASSWORD_CHANGE_REQUIRED = 0x80040120, - MAPI_E_PASSWORD_EXPIRED = 0x80040121, - MAPI_E_INVALID_WORKSTATION_ACCOUNT = 0x80040122, - MAPI_E_INVALID_ACCESS_TIME = 0x80040123, - MAPI_E_ACCOUNT_DISABLED = 0x80040124, - MAPI_E_END_OF_SESSION = 0x80040200, - MAPI_E_UNKNOWN_ENTRYID = 0x80040201, - MAPI_E_MISSING_REQUIRED_COLUMN = 0x80040202, - MAPI_W_NO_SERVICE = 0x80040203, - MAPI_E_BAD_VALUE = 0x80040301, - MAPI_E_INVALID_TYPE = 0x80040302, - MAPI_E_TYPE_NO_SUPPORT = 0x80040303, - MAPI_E_UNEXPECTED_TYPE = 0x80040304, - MAPI_E_TOO_BIG = 0x80040305, - MAPI_E_DECLINE_COPY = 0x80040306, - MAPI_E_UNEXPECTED_ID = 0x80040307, - MAPI_W_ERRORS_RETURNED = 0x80040380, - MAPI_E_UNABLE_TO_COMPLETE = 0x80040400, - MAPI_E_TIMEOUT = 0x80040401, - MAPI_E_TABLE_EMPTY = 0x80040402, - MAPI_E_TABLE_TOO_BIG = 0x80040403, - MAPI_E_INVALID_BOOKMARK = 0x80040405, - MAPI_W_POSITION_CHANGED = 0x80040481, - MAPI_W_APPROX_COUNT = 0x80040482, - MAPI_E_WAIT = 0x80040500, - MAPI_E_CANCEL = 0x80040501, - MAPI_E_NOT_ME = 0x80040502, - MAPI_W_CANCEL_MESSAGE = 0x80040580, - MAPI_E_CORRUPT_STORE = 0x80040600, - MAPI_E_NOT_IN_QUEUE = 0x80040601, - MAPI_E_NO_SUPPRESS = 0x80040602, - MAPI_E_COLLISION = 0x80040604, - MAPI_E_NOT_INITIALIZED = 0x80040605, - MAPI_E_NON_STANDARD = 0x80040606, - MAPI_E_NO_RECIPIENTS = 0x80040607, - MAPI_E_SUBMITTED = 0x80040608, - MAPI_E_HAS_FOLDERS = 0x80040609, - MAPI_E_HAS_MESAGES = 0x8004060A, - MAPI_E_FOLDER_CYCLE = 0x8004060B, - MAPI_W_PARTIAL_COMPLETION = 0x80040680, - MAPI_E_AMBIGUOUS_RECIP = 0x80040700, - MAPI_E_RESERVED = 0xFFFFFFFF -} MAPISTATUS; - diff --git a/epan/dissectors/pidl/nspi/mapitags_enum.h b/epan/dissectors/pidl/nspi/mapitags_enum.h deleted file mode 100644 index 2ca596f14c..0000000000 --- a/epan/dissectors/pidl/nspi/mapitags_enum.h +++ /dev/null @@ -1,3421 +0,0 @@ -/* - MAPI Implementation - - OpenChange Project - - Copyright (C) Julien Kerihuel 2006 - - 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 2 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, write to the Free Software - Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. -*/ - - -/* parser auto-generated by mparse */ - -typedef [v1_enum, flag(NDR_PAHEX)] enum { - PR_ACKNOWLEDGEMENT_MODE = 0x00010003, - PR_ACKNOWLEDGEMENT_MODE_ERROR = 0x0001000a, - PR_ALTERNATE_RECIPIENT_ALLOWED = 0x0002000b, - PR_ALTERNATE_RECIPIENT_ALLOWED_ERROR = 0x0002000a, - PR_AUTHORIZING_USERS = 0x00030102, - PR_AUTHORIZING_USERS_ERROR = 0x0003000a, - PR_AUTO_FORWARD_COMMENT = 0x0004001e, - PR_AUTO_FORWARD_COMMENT_UNICODE = 0x0004001f, - PR_AUTO_FORWARD_COMMENT_ERROR = 0x0004000a, - PR_AUTO_FORWARDED = 0x0005000b, - PR_AUTO_FORWARDED_ERROR = 0x0005000a, - PR_CONTENT_CONFIDENTIALITY_ALGORITHM_ID = 0x00060102, - PR_CONTENT_CONFIDENTIALITY_ALGORITHM_ID_ERROR = 0x0006000a, - PR_CONTENT_CORRELATOR = 0x00070102, - PR_CONTENT_CORRELATOR_ERROR = 0x0007000a, - PR_CONTENT_IDENTIFIER = 0x0008001e, - PR_CONTENT_IDENTIFIER_UNICODE = 0x0008001f, - PR_CONTENT_IDENTIFIER_ERROR = 0x0008000a, - PR_CONTENT_LENGTH = 0x00090003, - PR_CONTENT_LENGTH_ERROR = 0x0009000a, - PR_CONTENT_RETURN_REQUESTED = 0x000a000b, - PR_CONTENT_RETURN_REQUESTED_ERROR = 0x000a000a, - PR_CONVERSATION_KEY = 0x000b0102, - PR_CONVERSATION_KEY_ERROR = 0x000b000a, - PR_CONVERSION_EITS = 0x000c0102, - PR_CONVERSION_EITS_ERROR = 0x000c000a, - PR_CONVERSION_WITH_LOSS_PROHIBITED = 0x000d000b, - PR_CONVERSION_WITH_LOSS_PROHIBITED_ERROR = 0x000d000a, - PR_CONVERTED_EITS = 0x000e0102, - PR_CONVERTED_EITS_ERROR = 0x000e000a, - PR_DEFERRED_DELIVERY_TIME = 0x000f0040, - PR_DEFERRED_DELIVERY_TIME_ERROR = 0x000f000a, - PR_DELIVER_TIME = 0x00100040, - PR_DELIVER_TIME_ERROR = 0x0010000a, - PR_DISCARD_REASON = 0x00110003, - PR_DISCARD_REASON_ERROR = 0x0011000a, - PR_DISCLOSURE_OF_RECIPIENTS = 0x0012000b, - PR_DISCLOSURE_OF_RECIPIENTS_ERROR = 0x0012000a, - PR_DL_EXPANSION_HISTORY = 0x00130102, - PR_DL_EXPANSION_HISTORY_ERROR = 0x0013000a, - PR_DL_EXPANSION_PROHIBITED = 0x0014000b, - PR_DL_EXPANSION_PROHIBITED_ERROR = 0x0014000a, - PR_EXPIRY_TIME = 0x00150040, - PR_EXPIRY_TIME_ERROR = 0x0015000a, - PR_IMPLICIT_CONVERSION_PROHIBITED = 0x0016000b, - PR_IMPLICIT_CONVERSION_PROHIBITED_ERROR = 0x0016000a, - PR_IMPORTANCE = 0x00170003, - PR_IMPORTANCE_ERROR = 0x0017000a, - PR_IPM_ID = 0x00180102, - PR_IPM_ID_ERROR = 0x0018000a, - PR_LATEST_DELIVERY_TIME = 0x00190040, - PR_LATEST_DELIVERY_TIME_ERROR = 0x0019000a, - PR_MESSAGE_CLASS = 0x001a001e, - PR_MESSAGE_CLASS_UNICODE = 0x001a001f, - PR_MESSAGE_CLASS_ERROR = 0x001a000a, - PR_MESSAGE_DELIVERY_ID = 0x001b0102, - PR_MESSAGE_DELIVERY_ID_ERROR = 0x001b000a, - PR_MESSAGE_SECURITY_LABEL = 0x001e0102, - PR_MESSAGE_SECURITY_LABEL_ERROR = 0x001e000a, - PR_OBSOLETED_IPMS = 0x001f0102, - PR_OBSOLETED_IPMS_ERROR = 0x001f000a, - PR_ORIGINALLY_INTENDED_RECIPIENT_NAME = 0x00200102, - PR_ORIGINALLY_INTENDED_RECIPIENT_NAME_ERROR = 0x0020000a, - PR_ORIGINAL_EITS = 0x00210102, - PR_ORIGINAL_EITS_ERROR = 0x0021000a, - PR_ORIGINATOR_CERTIFICATE = 0x00220102, - PR_ORIGINATOR_CERTIFICATE_ERROR = 0x0022000a, - PR_ORIGINATOR_DELIVERY_REPORT_REQUESTED = 0x0023000b, - PR_ORIGINATOR_DELIVERY_REPORT_REQUESTED_ERROR = 0x0023000a, - PR_ORIGINATOR_RETURN_ADDRESS = 0x00240102, - PR_ORIGINATOR_RETURN_ADDRESS_ERROR = 0x0024000a, - PR_PARENT_KEY = 0x00250102, - PR_PARENT_KEY_ERROR = 0x0025000a, - PR_PRIORITY = 0x00260003, - PR_PRIORITY_ERROR = 0x0026000a, - PR_ORIGIN_CHECK = 0x00270102, - PR_ORIGIN_CHECK_ERROR = 0x0027000a, - PR_PROOF_OF_SUBMISSION_REQUESTED = 0x0028000b, - PR_PROOF_OF_SUBMISSION_REQUESTED_ERROR = 0x0028000a, - PR_READ_RECEIPT_REQUESTED = 0x0029000b, - PR_READ_RECEIPT_REQUESTED_ERROR = 0x0029000a, - PR_RECEIPT_TIME = 0x002a0040, - PR_RECEIPT_TIME_ERROR = 0x002a000a, - PR_RECIPIENT_REASSIGNMENT_PROHIBITED = 0x002b000b, - PR_RECIPIENT_REASSIGNMENT_PROHIBITED_ERROR = 0x002b000a, - PR_REDIRECTION_HISTORY = 0x002c0102, - PR_REDIRECTION_HISTORY_ERROR = 0x002c000a, - PR_RELATED_IPMS = 0x002d0102, - PR_RELATED_IPMS_ERROR = 0x002d000a, - PR_ORIGINAL_SENSITIVITY = 0x002e0003, - PR_ORIGINAL_SENSITIVITY_ERROR = 0x002e000a, - PR_LANGUAGES = 0x002f001e, - PR_LANGUAGES_UNICODE = 0x002f001f, - PR_LANGUAGES_ERROR = 0x002f000a, - PR_REPLY_TIME = 0x00300040, - PR_REPLY_TIME_ERROR = 0x0030000a, - PR_REPORT_TAG = 0x00310102, - PR_REPORT_TAG_ERROR = 0x0031000a, - PR_REPORT_TIME = 0x00320040, - PR_REPORT_TIME_ERROR = 0x0032000a, - PR_RETURNED_IPM = 0x0033000b, - PR_RETURNED_IPM_ERROR = 0x0033000a, - PR_SECURITY = 0x00340003, - PR_SECURITY_ERROR = 0x0034000a, - PR_INCOMPLETE_COPY = 0x0035000b, - PR_INCOMPLETE_COPY_ERROR = 0x0035000a, - PR_SENSITIVITY = 0x00360003, - PR_SENSITIVITY_ERROR = 0x0036000a, - PR_SUBJECT = 0x0037001e, - PR_SUBJECT_UNICODE = 0x0037001f, - PR_SUBJECT_ERROR = 0x0037000a, - PR_SUBJECT_IPM = 0x00380102, - PR_SUBJECT_IPM_ERROR = 0x0038000a, - PR_CLIENT_SUBMIT_TIME = 0x00390040, - PR_CLIENT_SUBMIT_TIME_ERROR = 0x0039000a, - PR_REPORT_NAME = 0x003a001e, - PR_REPORT_NAME_UNICODE = 0x003a001f, - PR_REPORT_NAME_ERROR = 0x003a000a, - PR_SENT_REPRESENTING_SEARCH_KEY = 0x003b0102, - PR_SENT_REPRESENTING_SEARCH_KEY_ERROR = 0x003b000a, - PR_X400_CONTENT_TYPE = 0x003c0102, - PR_X400_CONTENT_TYPE_ERROR = 0x003c000a, - PR_SUBJECT_PREFIX = 0x003d001e, - PR_SUBJECT_PREFIX_UNICODE = 0x003d001f, - PR_SUBJECT_PREFIX_ERROR = 0x003d000a, - PR_NON_RECEIPT_REASON = 0x003e0003, - PR_NON_RECEIPT_REASON_ERROR = 0x003e000a, - PR_RECEIVED_BY_ENTRYID = 0x003f0102, - PR_RECEIVED_BY_ENTRYID_ERROR = 0x003f000a, - PR_RECEIVED_BY_NAME = 0x0040001e, - PR_RECEIVED_BY_NAME_UNICODE = 0x0040001f, - PR_RECEIVED_BY_NAME_ERROR = 0x0040000a, - PR_SENT_REPRESENTING_ENTRYID = 0x00410102, - PR_SENT_REPRESENTING_ENTRYID_ERROR = 0x0041000a, - PR_SENT_REPRESENTING_NAME = 0x0042001e, - PR_SENT_REPRESENTING_NAME_UNICODE = 0x0042001f, - PR_SENT_REPRESENTING_NAME_ERROR = 0x0042000a, - PR_RCVD_REPRESENTING_ENTRYID = 0x00430102, - PR_RCVD_REPRESENTING_ENTRYID_ERROR = 0x0043000a, - PR_RCVD_REPRESENTING_NAME = 0x0044001e, - PR_RCVD_REPRESENTING_NAME_UNICODE = 0x0044001f, - PR_RCVD_REPRESENTING_NAME_ERROR = 0x0044000a, - PR_REPORT_ENTRYID = 0x00450102, - PR_REPORT_ENTRYID_ERROR = 0x0045000a, - PR_READ_RECEIPT_ENTRYID = 0x00460102, - PR_READ_RECEIPT_ENTRYID_ERROR = 0x0046000a, - PR_MESSAGE_SUBMISSION_ID = 0x00470102, - PR_MESSAGE_SUBMISSION_ID_ERROR = 0x0047000a, - PR_PROVIDER_SUBMIT_TIME = 0x00480040, - PR_PROVIDER_SUBMIT_TIME_ERROR = 0x0048000a, - PR_ORIGINAL_SUBJECT = 0x0049001e, - PR_ORIGINAL_SUBJECT_UNICODE = 0x0049001f, - PR_ORIGINAL_SUBJECT_ERROR = 0x0049000a, - PR_DISC_VAL = 0x004a000b, - PR_DISC_VAL_ERROR = 0x004a000a, - PR_ORIG_MESSAGE_CLASS = 0x004b001e, - PR_ORIG_MESSAGE_CLASS_UNICODE = 0x004b001f, - PR_ORIG_MESSAGE_CLASS_ERROR = 0x004b000a, - PR_ORIGINAL_AUTHOR_ENTRYID = 0x004c0102, - PR_ORIGINAL_AUTHOR_ENTRYID_ERROR = 0x004c000a, - PR_ORIGINAL_AUTHOR_NAME = 0x004d001e, - PR_ORIGINAL_AUTHOR_NAME_UNICODE = 0x004d001f, - PR_ORIGINAL_AUTHOR_NAME_ERROR = 0x004d000a, - PR_ORIGINAL_SUBMIT_TIME = 0x004e0040, - PR_ORIGINAL_SUBMIT_TIME_ERROR = 0x004e000a, - PR_REPLY_RECIPIENT_ENTRIES = 0x004f0102, - PR_REPLY_RECIPIENT_ENTRIES_ERROR = 0x004f000a, - PR_REPLY_RECIPIENT_NAMES = 0x0050001e, - PR_REPLY_RECIPIENT_NAMES_UNICODE = 0x0050001f, - PR_REPLY_RECIPIENT_NAMES_ERROR = 0x0050000a, - PR_RECEIVED_BY_SEARCH_KEY = 0x00510102, - PR_RECEIVED_BY_SEARCH_KEY_ERROR = 0x0051000a, - PR_RCVD_REPRESENTING_SEARCH_KEY = 0x00520102, - PR_RCVD_REPRESENTING_SEARCH_KEY_ERROR = 0x0052000a, - PR_READ_RECEIPT_SEARCH_KEY = 0x00530102, - PR_READ_RECEIPT_SEARCH_KEY_ERROR = 0x0053000a, - PR_REPORT_SEARCH_KEY = 0x00540102, - PR_REPORT_SEARCH_KEY_ERROR = 0x0054000a, - PR_ORIGINAL_DELIVERY_TIME = 0x00550040, - PR_ORIGINAL_DELIVERY_TIME_ERROR = 0x0055000a, - PR_ORIGINAL_AUTHOR_SEARCH_KEY = 0x00560102, - PR_ORIGINAL_AUTHOR_SEARCH_KEY_ERROR = 0x0056000a, - PR_MESSAGE_TO_ME = 0x0057000b, - PR_MESSAGE_TO_ME_ERROR = 0x0057000a, - PR_MESSAGE_CC_ME = 0x0058000b, - PR_MESSAGE_CC_ME_ERROR = 0x0058000a, - PR_MESSAGE_RECIP_ME = 0x0059000b, - PR_MESSAGE_RECIP_ME_ERROR = 0x0059000a, - PR_ORIGINAL_SENDER_NAME = 0x005a001e, - PR_ORIGINAL_SENDER_NAME_UNICODE = 0x005a001f, - PR_ORIGINAL_SENDER_NAME_ERROR = 0x005a000a, - PR_ORIGINAL_SENDER_ENTRYID = 0x005b0102, - PR_ORIGINAL_SENDER_ENTRYID_ERROR = 0x005b000a, - PR_ORIGINAL_SENDER_SEARCH_KEY = 0x005c0102, - PR_ORIGINAL_SENDER_SEARCH_KEY_ERROR = 0x005c000a, - PR_ORIGINAL_SENT_REPRESENTING_NAME = 0x005d001e, - PR_ORIGINAL_SENT_REPRESENTING_NAME_UNICODE = 0x005d001f, - PR_ORIGINAL_SENT_REPRESENTING_NAME_ERROR = 0x005d000a, - PR_ORIGINAL_SENT_REPRESENTING_ENTRYID = 0x005e0102, - PR_ORIGINAL_SENT_REPRESENTING_ENTRYID_ERROR = 0x005e000a, - PR_ORIGINAL_SENT_REPRESENTING_SEARCH_KEY = 0x005f0102, - PR_ORIGINAL_SENT_REPRESENTING_SEARCH_KEY_ERROR = 0x005f000a, - PR_START_DATE = 0x00600040, - PR_START_DATE_ERROR = 0x0060000a, - PR_END_DATE = 0x00610040, - PR_END_DATE_ERROR = 0x0061000a, - PR_OWNER_APPT_ID = 0x00620003, - PR_OWNER_APPT_ID_ERROR = 0x0062000a, - PR_RESPONSE_REQUESTED = 0x0063000b, - PR_RESPONSE_REQUESTED_ERROR = 0x0063000a, - PR_SENT_REPRESENTING_ADDRTYPE = 0x0064001e, - PR_SENT_REPRESENTING_ADDRTYPE_UNICODE = 0x0064001f, - PR_SENT_REPRESENTING_ADDRTYPE_ERROR = 0x0064000a, - PR_SENT_REPRESENTING_EMAIL_ADDRESS = 0x0065001e, - PR_SENT_REPRESENTING_EMAIL_ADDRESS_UNICODE = 0x0065001f, - PR_SENT_REPRESENTING_EMAIL_ADDRESS_ERROR = 0x0065000a, - PR_ORIGINAL_SENDER_ADDRTYPE = 0x0066001e, - PR_ORIGINAL_SENDER_ADDRTYPE_UNICODE = 0x0066001f, - PR_ORIGINAL_SENDER_ADDRTYPE_ERROR = 0x0066000a, - PR_ORIGINAL_SENDER_EMAIL_ADDRESS = 0x0067001e, - PR_ORIGINAL_SENDER_EMAIL_ADDRESS_UNICODE = 0x0067001f, - PR_ORIGINAL_SENDER_EMAIL_ADDRESS_ERROR = 0x0067000a, - PR_ORIGINAL_SENT_REPRESENTING_ADDRTYPE = 0x0068001e, - PR_ORIGINAL_SENT_REPRESENTING_ADDRTYPE_UNICODE = 0x0068001f, - PR_ORIGINAL_SENT_REPRESENTING_ADDRTYPE_ERROR = 0x0068000a, - PR_ORIGINAL_SENT_REPRESENTING_EMAIL_ADDRESS = 0x0069001e, - PR_ORIGINAL_SENT_REPRESENTING_EMAIL_ADDRESS_UNICODE = 0x0069001f, - PR_ORIGINAL_SENT_REPRESENTING_EMAIL_ADDRESS_ERROR = 0x0069000a, - PR_CONVERSATION_TOPIC = 0x0070001e, - PR_CONVERSATION_TOPIC_UNICODE = 0x0070001f, - PR_CONVERSATION_TOPIC_ERROR = 0x0070000a, - PR_CONVERSATION_INDEX = 0x00710102, - PR_CONVERSATION_INDEX_ERROR = 0x0071000a, - PR_ORIGINAL_DISPLAY_BCC = 0x0072001e, - PR_ORIGINAL_DISPLAY_BCC_UNICODE = 0x0072001f, - PR_ORIGINAL_DISPLAY_BCC_ERROR = 0x0072000a, - PR_ORIGINAL_DISPLAY_CC = 0x0073001e, - PR_ORIGINAL_DISPLAY_CC_UNICODE = 0x0073001f, - PR_ORIGINAL_DISPLAY_CC_ERROR = 0x0073000a, - PR_ORIGINAL_DISPLAY_TO = 0x0074001e, - PR_ORIGINAL_DISPLAY_TO_UNICODE = 0x0074001f, - PR_ORIGINAL_DISPLAY_TO_ERROR = 0x0074000a, - PR_RECEIVED_BY_ADDRTYPE = 0x0075001e, - PR_RECEIVED_BY_ADDRTYPE_UNICODE = 0x0075001f, - PR_RECEIVED_BY_ADDRTYPE_ERROR = 0x0075000a, - PR_RECEIVED_BY_EMAIL_ADDRESS = 0x0076001e, - PR_RECEIVED_BY_EMAIL_ADDRESS_UNICODE = 0x0076001f, - PR_RECEIVED_BY_EMAIL_ADDRESS_ERROR = 0x0076000a, - PR_RCVD_REPRESENTING_ADDRTYPE = 0x0077001e, - PR_RCVD_REPRESENTING_ADDRTYPE_UNICODE = 0x0077001f, - PR_RCVD_REPRESENTING_ADDRTYPE_ERROR = 0x0077000a, - PR_RCVD_REPRESENTING_EMAIL_ADDRESS = 0x0078001e, - PR_RCVD_REPRESENTING_EMAIL_ADDRESS_UNICODE = 0x0078001f, - PR_RCVD_REPRESENTING_EMAIL_ADDRESS_ERROR = 0x0078000a, - PR_ORIGINAL_AUTHOR_ADDRTYPE = 0x0079001e, - PR_ORIGINAL_AUTHOR_ADDRTYPE_UNICODE = 0x0079001f, - PR_ORIGINAL_AUTHOR_ADDRTYPE_ERROR = 0x0079000a, - PR_ORIGINAL_AUTHOR_EMAIL_ADDRESS = 0x007a001e, - PR_ORIGINAL_AUTHOR_EMAIL_ADDRESS_UNICODE = 0x007a001f, - PR_ORIGINAL_AUTHOR_EMAIL_ADDRESS_ERROR = 0x007a000a, - PR_ORIGINALLY_INTENDED_RECIP_ADDRTYPE = 0x007b001e, - PR_ORIGINALLY_INTENDED_RECIP_ADDRTYPE_UNICODE = 0x007b001f, - PR_ORIGINALLY_INTENDED_RECIP_ADDRTYPE_ERROR = 0x007b000a, - PR_ORIGINALLY_INTENDED_RECIP_EMAIL_ADDRESS = 0x007c001e, - PR_ORIGINALLY_INTENDED_RECIP_EMAIL_ADDRESS_UNICODE = 0x007c001f, - PR_ORIGINALLY_INTENDED_RECIP_EMAIL_ADDRESS_ERROR = 0x007c000a, - PR_TRANSPORT_MESSAGE_HEADERS = 0x007d001e, - PR_TRANSPORT_MESSAGE_HEADERS_UNICODE = 0x007d001f, - PR_TRANSPORT_MESSAGE_HEADERS_ERROR = 0x007d000a, - PR_DELEGATION = 0x007e0102, - PR_DELEGATION_ERROR = 0x007e000a, - PR_TNEF_CORRELATION_KEY = 0x007f0102, - PR_TNEF_CORRELATION_KEY_ERROR = 0x007f000a, - PR_CONTENT_INTEGRITY_CHECK = 0x0c000102, - PR_CONTENT_INTEGRITY_CHECK_ERROR = 0x0c00000a, - PR_EXPLICIT_CONVERSION = 0x0c010003, - PR_EXPLICIT_CONVERSION_ERROR = 0x0c01000a, - PR_IPM_RETURN_REQUESTED = 0x0c02000b, - PR_IPM_RETURN_REQUESTED_ERROR = 0x0c02000a, - PR_MESSAGE_TOKEN = 0x0c030102, - PR_MESSAGE_TOKEN_ERROR = 0x0c03000a, - PR_NDR_REASON_CODE = 0x0c040003, - PR_NDR_REASON_CODE_ERROR = 0x0c04000a, - PR_NDR_DIAG_CODE = 0x0c050003, - PR_NDR_DIAG_CODE_ERROR = 0x0c05000a, - PR_NON_RECEIPT_NOTIFICATION_REQUESTED = 0x0c06000b, - PR_NON_RECEIPT_NOTIFICATION_REQUESTED_ERROR = 0x0c06000a, - PR_DELIVERY_POINT = 0x0c070003, - PR_DELIVERY_POINT_ERROR = 0x0c07000a, - PR_ORIGINATOR_NON_DELIVERY_REPORT_REQUESTED = 0x0c08000b, - PR_ORIGINATOR_NON_DELIVERY_REPORT_REQUESTED_ERROR = 0x0c08000a, - PR_ORIGINATOR_REQUESTED_ALTERNATE_RECIPIENT = 0x0c090102, - PR_ORIGINATOR_REQUESTED_ALTERNATE_RECIPIENT_ERROR = 0x0c09000a, - PR_PHYSICAL_DELIVERY_BUREAU_FAX_DELIVERY = 0x0c0a000b, - PR_PHYSICAL_DELIVERY_BUREAU_FAX_DELIVERY_ERROR = 0x0c0a000a, - PR_PHYSICAL_DELIVERY_MODE = 0x0c0b0003, - PR_PHYSICAL_DELIVERY_MODE_ERROR = 0x0c0b000a, - PR_PHYSICAL_DELIVERY_REPORT_REQUEST = 0x0c0c0003, - PR_PHYSICAL_DELIVERY_REPORT_REQUEST_ERROR = 0x0c0c000a, - PR_PHYSICAL_FORWARDING_ADDRESS = 0x0c0d0102, - PR_PHYSICAL_FORWARDING_ADDRESS_ERROR = 0x0c0d000a, - PR_PHYSICAL_FORWARDING_ADDRESS_REQUESTED = 0x0c0e000b, - PR_PHYSICAL_FORWARDING_ADDRESS_REQUESTED_ERROR = 0x0c0e000a, - PR_PHYSICAL_FORWARDING_PROHIBITED = 0x0c0f000b, - PR_PHYSICAL_FORWARDING_PROHIBITED_ERROR = 0x0c0f000a, - PR_PHYSICAL_RENDITION_ATTRIBUTES = 0x0c100102, - PR_PHYSICAL_RENDITION_ATTRIBUTES_ERROR = 0x0c10000a, - PR_PROOF_OF_DELIVERY = 0x0c110102, - PR_PROOF_OF_DELIVERY_ERROR = 0x0c11000a, - PR_PROOF_OF_DELIVERY_REQUESTED = 0x0c12000b, - PR_PROOF_OF_DELIVERY_REQUESTED_ERROR = 0x0c12000a, - PR_RECIPIENT_CERTIFICATE = 0x0c130102, - PR_RECIPIENT_CERTIFICATE_ERROR = 0x0c13000a, - PR_RECIPIENT_NUMBER_FOR_ADVICE = 0x0c14001e, - PR_RECIPIENT_NUMBER_FOR_ADVICE_UNICODE = 0x0c14001f, - PR_RECIPIENT_NUMBER_FOR_ADVICE_ERROR = 0x0c14000a, - PR_RECIPIENT_TYPE = 0x0c150003, - PR_RECIPIENT_TYPE_ERROR = 0x0c15000a, - PR_REGISTERED_MAIL_TYPE = 0x0c160003, - PR_REGISTERED_MAIL_TYPE_ERROR = 0x0c16000a, - PR_REPLY_REQUESTED = 0x0c17000b, - PR_REPLY_REQUESTED_ERROR = 0x0c17000a, - PR_REQUESTED_DELIVERY_METHOD = 0x0c180003, - PR_REQUESTED_DELIVERY_METHOD_ERROR = 0x0c18000a, - PR_SENDER_ENTRYID = 0x0c190102, - PR_SENDER_ENTRYID_ERROR = 0x0c19000a, - PR_SENDER_NAME = 0x0c1a001e, - PR_SENDER_NAME_UNICODE = 0x0c1a001f, - PR_SENDER_NAME_ERROR = 0x0c1a000a, - PR_SUPPLEMENTARY_INFO = 0x0c1b001e, - PR_SUPPLEMENTARY_INFO_UNICODE = 0x0c1b001f, - PR_SUPPLEMENTARY_INFO_ERROR = 0x0c1b000a, - PR_TYPE_OF_MTS_USER = 0x0c1c0003, - PR_TYPE_OF_MTS_USER_ERROR = 0x0c1c000a, - PR_SENDER_SEARCH_KEY = 0x0c1d0102, - PR_SENDER_SEARCH_KEY_ERROR = 0x0c1d000a, - PR_SENDER_ADDRTYPE = 0x0c1e001e, - PR_SENDER_ADDRTYPE_UNICODE = 0x0c1e001f, - PR_SENDER_ADDRTYPE_ERROR = 0x0c1e000a, - PR_SENDER_EMAIL_ADDRESS = 0x0c1f001e, - PR_SENDER_EMAIL_ADDRESS_UNICODE = 0x0c1f001f, - PR_SENDER_EMAIL_ADDRESS_ERROR = 0x0c1f000a, - PR_CURRENT_VERSION = 0x0e000014, - PR_CURRENT_VERSION_ERROR = 0x0e00000a, - PR_DELETE_AFTER_SUBMIT = 0x0e01000b, - PR_DELETE_AFTER_SUBMIT_ERROR = 0x0e01000a, - PR_DISPLAY_BCC = 0x0e02001e, - PR_DISPLAY_BCC_UNICODE = 0x0e02001f, - PR_DISPLAY_BCC_ERROR = 0x0e02000a, - PR_DISPLAY_CC = 0x0e03001e, - PR_DISPLAY_CC_UNICODE = 0x0e03001f, - PR_DISPLAY_CC_ERROR = 0x0e03000a, - PR_DISPLAY_TO = 0x0e04001e, - PR_DISPLAY_TO_UNICODE = 0x0e04001f, - PR_DISPLAY_TO_ERROR = 0x0e04000a, - PR_PARENT_DISPLAY = 0x0e05001e, - PR_PARENT_DISPLAY_UNICODE = 0x0e05001f, - PR_PARENT_DISPLAY_ERROR = 0x0e05000a, - PR_MESSAGE_DELIVERY_TIME = 0x0e060040, - PR_MESSAGE_DELIVERY_TIME_ERROR = 0x0e06000a, - PR_MESSAGE_FLAGS = 0x0e070003, - PR_MESSAGE_FLAGS_ERROR = 0x0e07000a, - PR_MESSAGE_SIZE = 0x0e080003, - PR_MESSAGE_SIZE_ERROR = 0x0e08000a, - PR_MESSAGE_SIZE_EXTENDED = 0x0e080014, - PR_PARENT_ENTRYID = 0x0e090102, - PR_PARENT_ENTRYID_ERROR = 0x0e09000a, - PR_SENTMAIL_ENTRYID = 0x0e0a0102, - PR_SENTMAIL_ENTRYID_ERROR = 0x0e0a000a, - PR_CORRELATE = 0x0e0c000b, - PR_CORRELATE_ERROR = 0x0e0c000a, - PR_CORRELATE_MTSID = 0x0e0d0102, - PR_CORRELATE_MTSID_ERROR = 0x0e0d000a, - PR_DISCRETE_VALUES = 0x0e0e000b, - PR_DISCRETE_VALUES_ERROR = 0x0e0e000a, - PR_RESPONSIBILITY = 0x0e0f000b, - PR_RESPONSIBILITY_ERROR = 0x0e0f000a, - PR_SPOOLER_STATUS = 0x0e100003, - PR_SPOOLER_STATUS_ERROR = 0x0e10000a, - PR_TRANSPORT_STATUS = 0x0e110003, - PR_TRANSPORT_STATUS_ERROR = 0x0e11000a, - PR_MESSAGE_RECIPIENTS = 0x0e12000d, - PR_MESSAGE_RECIPIENTS_ERROR = 0x0e12000a, - PR_MESSAGE_ATTACHMENTS = 0x0e13000d, - PR_MESSAGE_ATTACHMENTS_ERROR = 0x0e13000a, - PR_SUBMIT_FLAGS = 0x0e140003, - PR_SUBMIT_FLAGS_ERROR = 0x0e14000a, - PR_RECIPIENT_STATUS = 0x0e150003, - PR_RECIPIENT_STATUS_ERROR = 0x0e15000a, - PR_TRANSPORT_KEY = 0x0e160003, - PR_TRANSPORT_KEY_ERROR = 0x0e16000a, - PR_MSG_STATUS = 0x0e170003, - PR_MSG_STATUS_ERROR = 0x0e17000a, - PR_MESSAGE_DOWNLOAD_TIME = 0x0e180003, - PR_MESSAGE_DOWNLOAD_TIME_ERROR = 0x0e18000a, - PR_CREATION_VERSION = 0x0e190014, - PR_CREATION_VERSION_ERROR = 0x0e19000a, - PR_MODIFY_VERSION = 0x0e1a0014, - PR_MODIFY_VERSION_ERROR = 0x0e1a000a, - PR_HASATTACH = 0x0e1b000b, - PR_HASATTACH_ERROR = 0x0e1b000a, - PR_BODY_CRC = 0x0e1c0003, - PR_BODY_CRC_ERROR = 0x0e1c000a, - PR_NORMALIZED_SUBJECT = 0x0e1d001e, - PR_NORMALIZED_SUBJECT_UNICODE = 0x0e1d001f, - PR_NORMALIZED_SUBJECT_ERROR = 0x0e1d000a, - PR_RTF_IN_SYNC = 0x0e1f000b, - PR_RTF_IN_SYNC_ERROR = 0x0e1f000a, - PR_ATTACH_SIZE = 0x0e200003, - PR_ATTACH_SIZE_ERROR = 0x0e20000a, - PR_ATTACH_NUM = 0x0e210003, - PR_ATTACH_NUM_ERROR = 0x0e21000a, - PR_PREPROCESS = 0x0e22000b, - PR_PREPROCESS_ERROR = 0x0e22000a, - PR_INTERNET_ARTICLE_NUMBER = 0x0e230003, - PR_INTERNET_ARTICLE_NUMBER_ERROR = 0x0e23000a, - PR_NEWSGROUP_NAME = 0x0e24001e, - PR_NEWSGROUP_NAME_UNICODE = 0x0e24001f, - PR_NEWSGROUP_NAME_ERROR = 0x0e24000a, - PR_ORIGINATING_MTA_CERTIFICATE = 0x0e250102, - PR_ORIGINATING_MTA_CERTIFICATE_ERROR = 0x0e25000a, - PR_PROOF_OF_SUBMISSION = 0x0e260102, - PR_PROOF_OF_SUBMISSION_ERROR = 0x0e26000a, - PR_NT_SECURITY_DESCRIPTOR = 0x0e270102, - PR_NT_SECURITY_DESCRIPTOR_ERROR = 0x0e27000a, - PR_CREATOR_SID = 0x0e580102, - PR_CREATOR_SID_ERROR = 0x0e58000a, - PR_LAST_MODIFIER_SID = 0x0e590102, - PR_LAST_MODIFIER_SID_ERROR = 0x0e59000a, - PR_MIME_HANDLER_CLASSIDS = 0x0e5e0048, - PR_MIME_HANDLER_CLASSIDS_ERROR = 0x0e5e000a, - PR_URL_COMP_NAME_POSTFIX = 0x0e610003, - PR_URL_COMP_NAME_POSTFIX_ERROR = 0x0e61000a, - PR_URL_COMP_NAME_SET = 0x0e62000b, - PR_URL_COMP_NAME_SET_ERROR = 0x0e62000a, - PR_SUBFOLDER_CT = 0x0e630003, - PR_SUBFOLDER_CT_ERROR = 0x0e63000a, - PR_DELETED_SUBFOLDER_CT = 0x0e640003, - PR_DELETED_SUBFOLDER_CT_ERROR = 0x0e64000a, - PR_DELETE_TIME = 0x0e660040, - PR_DELETE_TIME_ERROR = 0x0e66000a, - PR_AGE_LIMIT = 0x0e670102, - PR_AGE_LIMIT_ERROR = 0x0e67000a, - PR_TRUST_SENDER = 0x0e790003, - PR_TRUST_SENDER_ERROR = 0x0e79000a, - PR_ATTACH_VIRUS_SCAN_INFO = 0x0e960102, - PR_ATTACH_VIRUS_SCAN_INFO_ERROR = 0x0e96000a, - PR_ACCESS = 0x0ff40003, - PR_ACCESS_ERROR = 0x0ff4000a, - PR_ROW_TYPE = 0x0ff50003, - PR_ROW_TYPE_ERROR = 0x0ff5000a, - PR_INSTANCE_KEY = 0x0ff60102, - PR_INSTANCE_KEY_ERROR = 0x0ff6000a, - PR_ACCESS_LEVEL = 0x0ff70003, - PR_ACCESS_LEVEL_ERROR = 0x0ff7000a, - PR_MAPPING_SIGNATURE = 0x0ff80102, - PR_MAPPING_SIGNATURE_ERROR = 0x0ff8000a, - PR_RECORD_KEY = 0x0ff90102, - PR_RECORD_KEY_ERROR = 0x0ff9000a, - PR_STORE_RECORD_KEY = 0x0ffa0102, - PR_STORE_RECORD_KEY_ERROR = 0x0ffa000a, - PR_STORE_ENTRYID = 0x0ffb0102, - PR_STORE_ENTRYID_ERROR = 0x0ffb000a, - PR_MINI_ICON = 0x0ffc0102, - PR_MINI_ICON_ERROR = 0x0ffc000a, - PR_ICON = 0x0ffd0102, - PR_ICON_ERROR = 0x0ffd000a, - PR_OBJECT_TYPE = 0x0ffe0003, - PR_OBJECT_TYPE_ERROR = 0x0ffe000a, - PR_ENTRYID = 0x0fff0102, - PR_ENTRYID_ERROR = 0x0fff000a, - PR_BODY = 0x1000001e, - PR_BODY_UNICODE = 0x1000001f, - PR_BODY_ERROR = 0x1000000a, - PR_REPORT_TEXT = 0x1001001e, - PR_REPORT_TEXT_UNICODE = 0x1001001f, - PR_REPORT_TEXT_ERROR = 0x1001000a, - PR_ORIGINATOR_AND_DL_EXPANSION_HISTORY = 0x10020102, - PR_ORIGINATOR_AND_DL_EXPANSION_HISTORY_ERROR = 0x1002000a, - PR_REPORTING_DL_NAME = 0x10030102, - PR_REPORTING_DL_NAME_ERROR = 0x1003000a, - PR_REPORTING_MTA_CERTIFICATE = 0x10040102, - PR_REPORTING_MTA_CERTIFICATE_ERROR = 0x1004000a, - PR_RTF_SYNC_BODY_CRC = 0x10060003, - PR_RTF_SYNC_BODY_CRC_ERROR = 0x1006000a, - PR_RTF_SYNC_BODY_COUNT = 0x10070003, - PR_RTF_SYNC_BODY_COUNT_ERROR = 0x1007000a, - PR_RTF_SYNC_BODY_TAG = 0x1008001e, - PR_RTF_SYNC_BODY_TAG_UNICODE = 0x1008001f, - PR_RTF_SYNC_BODY_TAG_ERROR = 0x1008000a, - PR_RTF_COMPRESSED = 0x10090102, - PR_RTF_COMPRESSED_ERROR = 0x1009000a, - PR_RTF_SYNC_PREFIX_COUNT = 0x10100003, - PR_RTF_SYNC_PREFIX_COUNT_ERROR = 0x1010000a, - PR_RTF_SYNC_TRAILING_COUNT = 0x10110003, - PR_RTF_SYNC_TRAILING_COUNT_ERROR = 0x1011000a, - PR_ORIGINALLY_INTENDED_RECIP_ENTRYID = 0x10120102, - PR_ORIGINALLY_INTENDED_RECIP_ENTRYID_ERROR = 0x1012000a, - PR_HTML = 0x10130102, - PR_HTML_ERROR = 0x1013000a, - PR_INTERNET_APPROVED = 0x1030001e, - PR_INTERNET_APPROVED_UNICODE = 0x1030001f, - PR_INTERNET_APPROVED_ERROR = 0x1030000a, - PR_INTERNET_CONTROL = 0x1031001e, - PR_INTERNET_CONTROL_UNICODE = 0x1031001f, - PR_INTERNET_CONTROL_ERROR = 0x1031000a, - PR_INTERNET_DISTRIBUTION = 0x1032001e, - PR_INTERNET_DISTRIBUTION_UNICODE = 0x1032001f, - PR_INTERNET_DISTRIBUTION_ERROR = 0x1032000a, - PR_INTERNET_FOLLOWUP_TO = 0x1033001e, - PR_INTERNET_FOLLOWUP_TO_UNICODE = 0x1033001f, - PR_INTERNET_FOLLOWUP_TO_ERROR = 0x1033000a, - PR_INTERNET_LINES = 0x10340003, - PR_INTERNET_LINES_ERROR = 0x1034000a, - PR_INTERNET_MESSAGE_ID = 0x1035001e, - PR_INTERNET_MESSAGE_ID_UNICODE = 0x1035001f, - PR_INTERNET_MESSAGE_ID_ERROR = 0x1035000a, - PR_INTERNET_NEWSGROUPS = 0x1036001e, - PR_INTERNET_NEWSGROUPS_UNICODE = 0x1036001f, - PR_INTERNET_NEWSGROUPS_ERROR = 0x1036000a, - PR_INTERNET_ORGANIZATION = 0x1037001e, - PR_INTERNET_ORGANIZATION_UNICODE = 0x1037001f, - PR_INTERNET_ORGANIZATION_ERROR = 0x1037000a, - PR_INTERNET_NNTP_PATH = 0x1038001e, - PR_INTERNET_NNTP_PATH_UNICODE = 0x1038001f, - PR_INTERNET_NNTP_PATH_ERROR = 0x1038000a, - PR_INTERNET_REFERENCES = 0x1039001e, - PR_INTERNET_REFERENCES_UNICODE = 0x1039001f, - PR_INTERNET_REFERENCES_ERROR = 0x1039000a, - PR_SUPERSEDES = 0x103a001e, - PR_SUPERSEDES_UNICODE = 0x103a001f, - PR_SUPERSEDES_ERROR = 0x103a000a, - PR_POST_FOLDER_ENTRIES = 0x103b0102, - PR_POST_FOLDER_ENTRIES_ERROR = 0x103b000a, - PR_POST_FOLDER_NAMES = 0x103c001e, - PR_POST_FOLDER_NAMES_UNICODE = 0x103c001f, - PR_POST_FOLDER_NAMES_ERROR = 0x103c000a, - PR_POST_REPLY_FOLDER_ENTRIES = 0x103d0102, - PR_POST_REPLY_FOLDER_ENTRIES_ERROR = 0x103d000a, - PR_POST_REPLY_FOLDER_NAMES = 0x103e001e, - PR_POST_REPLY_FOLDER_NAMES_UNICODE = 0x103e001f, - PR_POST_REPLY_FOLDER_NAMES_ERROR = 0x103e000a, - PR_POST_REPLY_DENIED = 0x103f0102, - PR_POST_REPLY_DENIED_ERROR = 0x103f000a, - PR_NNTP_XREF = 0x1040001e, - PR_NNTP_XREF_UNICODE = 0x1040001f, - PR_NNTP_XREF_ERROR = 0x1040000a, - PR_INTERNET_PRECEDENCE = 0x1041001e, - PR_INTERNET_PRECEDENCE_UNICODE = 0x1041001f, - PR_INTERNET_PRECEDENCE_ERROR = 0x1041000a, - PR_IN_REPLY_TO_ID = 0x1042001e, - PR_IN_REPLY_TO_ID_UNICODE = 0x1042001f, - PR_IN_REPLY_TO_ID_ERROR = 0x1042000a, - PR_LIST_HELP = 0x1043001e, - PR_LIST_HELP_UNICODE = 0x1043001f, - PR_LIST_HELP_ERROR = 0x1043000a, - PR_LIST_SUBSCRIBE = 0x1044001e, - PR_LIST_SUBSCRIBE_UNICODE = 0x1044001f, - PR_LIST_SUBSCRIBE_ERROR = 0x1044000a, - PR_LIST_UNSUBSCRIBE = 0x1045001e, - PR_LIST_UNSUBSCRIBE_UNICODE = 0x1045001f, - PR_LIST_UNSUBSCRIBE_ERROR = 0x1045000a, - PR_ACTION = 0x10800003, - PR_ACTION_ERROR = 0x1080000a, - PR_ACTION_FLAG = 0x10810003, - PR_ACTION_FLAG_ERROR = 0x1081000a, - PR_ACTION_DATE = 0x10820040, - PR_ACTION_DATE_ERROR = 0x1082000a, - PR_FLAG_STATUS = 0x10900003, - PR_FLAG_STATUS_ERROR = 0x1090000a, - PR_FLAG_COMPLETE = 0x10910040, - PR_FLAG_COMPLETE_ERROR = 0x1091000a, - PR_SMTP_TEMP_TBL_DATA = 0x10c00102, - PR_SMTP_TEMP_TBL_DATA_ERROR = 0x10c0000a, - PR_SMTP_TEMP_TBL_DATA_2 = 0x10c10003, - PR_SMTP_TEMP_TBL_DATA_2_ERROR = 0x10c1000a, - PR_SMTP_TEMP_TBL_DATA_3 = 0x10c20102, - PR_SMTP_TEMP_TBL_DATA_3_ERROR = 0x10c2000a, - PR_CAL_START_TIME = 0x10c30040, - PR_CAL_START_TIME_ERROR = 0x10c3000a, - PR_CAL_END_TIME = 0x10c40040, - PR_CAL_END_TIME_ERROR = 0x10c4000a, - PR_CAL_RECURRING_ID = 0x10c50040, - PR_CAL_RECURRING_ID_ERROR = 0x10c5000a, - PR_DAV_SUBMIT_DATA = 0x10c6001e, - PR_DAV_SUBMIT_DATA_UNICODE = 0x10c6001f, - PR_DAV_SUBMIT_DATA_ERROR = 0x10c6000a, - PR_CDO_EXPANSION_INDEX = 0x10c70003, - PR_CDO_EXPANSION_INDEX_ERROR = 0x10c7000a, - PR_IFS_INTERNAL_DATA = 0x10c80102, - PR_IFS_INTERNAL_DATA_ERROR = 0x10c8000a, - PR_CAL_REMINDER_NEXT_TIME = 0x10ca0040, - PR_CAL_REMINDER_NEXT_TIME_ERROR = 0x10ca000a, - PR_OWA_URL = 0x10f1001e, - PR_OWA_URL_UNICODE = 0x10f1001f, - PR_OWA_URL_ERROR = 0x10f1000a, - PR_DISABLE_FULL_FIDELITY = 0x10f2000b, - PR_DISABLE_FULL_FIDELITY_ERROR = 0x10f2000a, - PR_URL_COMP_NAME = 0x10f3001e, - PR_URL_COMP_NAME_UNICODE = 0x10f3001f, - PR_URL_COMP_NAME_ERROR = 0x10f3000a, - PR_ATTR_HIDDEN = 0x10f4000b, - PR_ATTR_HIDDEN_ERROR = 0x10f4000a, - PR_ATTR_SYSTEM = 0x10f5000b, - PR_ATTR_SYSTEM_ERROR = 0x10f5000a, - PR_ATTR_READONLY = 0x10f6000b, - PR_ATTR_READONLY_ERROR = 0x10f6000a, - PR_P1_CONTENT = 0x11000102, - PR_P1_CONTENT_ERROR = 0x1100000a, - PR_P1_CONTENT_TYPE = 0x11010102, - PR_P1_CONTENT_TYPE_ERROR = 0x1101000a, - PR_ROWID = 0x30000003, - PR_ROWID_ERROR = 0x3000000a, - PR_DISPLAY_NAME = 0x3001001e, - PR_DISPLAY_NAME_UNICODE = 0x3001001f, - PR_DISPLAY_NAME_ERROR = 0x3001000a, - PR_ADDRTYPE = 0x3002001e, - PR_ADDRTYPE_UNICODE = 0x3002001f, - PR_ADDRTYPE_ERROR = 0x3002000a, - PR_EMAIL_ADDRESS = 0x3003001e, - PR_EMAIL_ADDRESS_UNICODE = 0x3003001f, - PR_EMAIL_ADDRESS_ERROR = 0x3003000a, - PR_COMMENT = 0x3004001e, - PR_COMMENT_UNICODE = 0x3004001f, - PR_COMMENT_ERROR = 0x3004000a, - PR_DEPTH = 0x30050003, - PR_DEPTH_ERROR = 0x3005000a, - PR_PROVIDER_DISPLAY = 0x3006001e, - PR_PROVIDER_DISPLAY_UNICODE = 0x3006001f, - PR_PROVIDER_DISPLAY_ERROR = 0x3006000a, - PR_CREATION_TIME = 0x30070040, - PR_CREATION_TIME_ERROR = 0x3007000a, - PR_LAST_MODIFICATION_TIME = 0x30080040, - PR_LAST_MODIFICATION_TIME_ERROR = 0x3008000a, - PR_RESOURCE_FLAGS = 0x30090003, - PR_RESOURCE_FLAGS_ERROR = 0x3009000a, - PR_PROVIDER_DLL_NAME = 0x300a001e, - PR_PROVIDER_DLL_NAME_UNICODE = 0x300a001f, - PR_PROVIDER_DLL_NAME_ERROR = 0x300a000a, - PR_SEARCH_KEY = 0x300b0102, - PR_SEARCH_KEY_ERROR = 0x300b000a, - PR_PROVIDER_UID = 0x300c0102, - PR_PROVIDER_UID_ERROR = 0x300c000a, - PR_PROVIDER_ORDINAL = 0x300d0003, - PR_PROVIDER_ORDINAL_ERROR = 0x300d000a, - PR_FORM_VERSION = 0x3301001e, - PR_FORM_VERSION_UNICODE = 0x3301001f, - PR_FORM_VERSION_ERROR = 0x3301000a, - PR_FORM_CLSID = 0x33020048, - PR_FORM_CLSID_ERROR = 0x3302000a, - PR_FORM_CONTACT_NAME = 0x3303001e, - PR_FORM_CONTACT_NAME_UNICODE = 0x3303001f, - PR_FORM_CONTACT_NAME_ERROR = 0x3303000a, - PR_FORM_CATEGORY = 0x3304001e, - PR_FORM_CATEGORY_UNICODE = 0x3304001f, - PR_FORM_CATEGORY_ERROR = 0x3304000a, - PR_FORM_CATEGORY_SUB = 0x3305001e, - PR_FORM_CATEGORY_SUB_UNICODE = 0x3305001f, - PR_FORM_CATEGORY_SUB_ERROR = 0x3305000a, - PR_FORM_HOST_MAP = 0x33061003, - PR_FORM_HOST_MAP_ERROR = 0x3306000a, - PR_FORM_HIDDEN = 0x3307000b, - PR_FORM_HIDDEN_ERROR = 0x3307000a, - PR_FORM_DESIGNER_NAME = 0x3308001e, - PR_FORM_DESIGNER_NAME_UNICODE = 0x3308001f, - PR_FORM_DESIGNER_NAME_ERROR = 0x3308000a, - PR_FORM_DESIGNER_GUID = 0x33090048, - PR_FORM_DESIGNER_GUID_ERROR = 0x3309000a, - PR_FORM_MESSAGE_BEHAVIOR = 0x330a0003, - PR_FORM_MESSAGE_BEHAVIOR_ERROR = 0x330a000a, - PR_DEFAULT_STORE = 0x3400000b, - PR_DEFAULT_STORE_ERROR = 0x3400000a, - PR_STORE_SUPPORT_MASK = 0x340d0003, - PR_STORE_SUPPORT_MASK_ERROR = 0x340d000a, - PR_STORE_STATE = 0x340e0003, - PR_STORE_STATE_ERROR = 0x340e000a, - PR_IPM_SUBTREE_SEARCH_KEY = 0x34100102, - PR_IPM_SUBTREE_SEARCH_KEY_ERROR = 0x3410000a, - PR_IPM_OUTBOX_SEARCH_KEY = 0x34110102, - PR_IPM_OUTBOX_SEARCH_KEY_ERROR = 0x3411000a, - PR_IPM_WASTEBASKET_SEARCH_KEY = 0x34120102, - PR_IPM_WASTEBASKET_SEARCH_KEY_ERROR = 0x3412000a, - PR_IPM_SENTMAIL_SEARCH_KEY = 0x34130102, - PR_IPM_SENTMAIL_SEARCH_KEY_ERROR = 0x3413000a, - PR_MDB_PROVIDER = 0x34140102, - PR_MDB_PROVIDER_ERROR = 0x3414000a, - PR_RECEIVE_FOLDER_SETTINGS = 0x3415000d, - PR_RECEIVE_FOLDER_SETTINGS_ERROR = 0x3415000a, - PR_VALID_FOLDER_MASK = 0x35df0003, - PR_VALID_FOLDER_MASK_ERROR = 0x35df000a, - PR_IPM_SUBTREE_ENTRYID = 0x35e00102, - PR_IPM_SUBTREE_ENTRYID_ERROR = 0x35e0000a, - PR_IPM_OUTBOX_ENTRYID = 0x35e20102, - PR_IPM_OUTBOX_ENTRYID_ERROR = 0x35e2000a, - PR_IPM_WASTEBASKET_ENTRYID = 0x35e30102, - PR_IPM_WASTEBASKET_ENTRYID_ERROR = 0x35e3000a, - PR_IPM_SENTMAIL_ENTRYID = 0x35e40102, - PR_IPM_SENTMAIL_ENTRYID_ERROR = 0x35e4000a, - PR_VIEWS_ENTRYID = 0x35e50102, - PR_VIEWS_ENTRYID_ERROR = 0x35e5000a, - PR_COMMON_VIEWS_ENTRYID = 0x35e60102, - PR_COMMON_VIEWS_ENTRYID_ERROR = 0x35e6000a, - PR_FINDER_ENTRYID = 0x35e70102, - PR_FINDER_ENTRYID_ERROR = 0x35e7000a, - PR_CONTAINER_FLAGS = 0x36000003, - PR_CONTAINER_FLAGS_ERROR = 0x3600000a, - PR_FOLDER_TYPE = 0x36010003, - PR_FOLDER_TYPE_ERROR = 0x3601000a, - PR_CONTENT_COUNT = 0x36020003, - PR_CONTENT_COUNT_ERROR = 0x3602000a, - PR_CONTENT_UNREAD = 0x36030003, - PR_CONTENT_UNREAD_ERROR = 0x3603000a, - PR_CREATE_TEMPLATES = 0x3604000d, - PR_CREATE_TEMPLATES_ERROR = 0x3604000a, - PR_DETAILS_TABLE = 0x3605000d, - PR_DETAILS_TABLE_ERROR = 0x3605000a, - PR_SEARCH = 0x3607000d, - PR_SEARCH_ERROR = 0x3607000a, - PR_SELECTABLE = 0x3609000b, - PR_SELECTABLE_ERROR = 0x3609000a, - PR_SUBFOLDERS = 0x360a000b, - PR_SUBFOLDERS_ERROR = 0x360a000a, - PR_STATUS = 0x360b0003, - PR_STATUS_ERROR = 0x360b000a, - PR_ANR = 0x360c001e, - PR_ANR_UNICODE = 0x360c001f, - PR_ANR_ERROR = 0x360c000a, - PR_CONTENTS_SORT_ORDER = 0x360d1003, - PR_CONTENTS_SORT_ORDER_ERROR = 0x360d000a, - PR_CONTAINER_HIERARCHY = 0x360e000d, - PR_CONTAINER_HIERARCHY_ERROR = 0x360e000a, - PR_CONTAINER_CONTENTS = 0x360f000d, - PR_CONTAINER_CONTENTS_ERROR = 0x360f000a, - PR_FOLDER_ASSOCIATED_CONTENTS = 0x3610000d, - PR_FOLDER_ASSOCIATED_CONTENTS_ERROR = 0x3610000a, - PR_DEF_CREATE_DL = 0x36110102, - PR_DEF_CREATE_DL_ERROR = 0x3611000a, - PR_DEF_CREATE_MAILUSER = 0x36120102, - PR_DEF_CREATE_MAILUSER_ERROR = 0x3612000a, - PR_CONTAINER_CLASS = 0x3613001e, - PR_CONTAINER_CLASS_UNICODE = 0x3613001f, - PR_CONTAINER_CLASS_ERROR = 0x3613000a, - PR_CONTAINER_MODIFY_VERSION = 0x36140014, - PR_CONTAINER_MODIFY_VERSION_ERROR = 0x3614000a, - PR_AB_PROVIDER_ID = 0x36150102, - PR_AB_PROVIDER_ID_ERROR = 0x3615000a, - PR_DEFAULT_VIEW_ENTRYID = 0x36160102, - PR_DEFAULT_VIEW_ENTRYID_ERROR = 0x3616000a, - PR_ASSOC_CONTENT_COUNT = 0x36170003, - PR_ASSOC_CONTENT_COUNT_ERROR = 0x3617000a, - PR_PACKED_NAME_PROPS = 0x361c0102, - PR_PACKED_NAME_PROPS_ERROR = 0x361c000a, - PR_IPM_APPOINTMENT_ENTRYID = 0x36d00102, - PR_IPM_APPOINTMENT_ENTRYID_ERROR = 0x36d0000a, - PR_IPM_CONTACT_ENTRYID = 0x36d10102, - PR_IPM_CONTACT_ENTRYID_ERROR = 0x36d1000a, - PR_IPM_JOURNAL_ENTRYID = 0x36d20102, - PR_IPM_JOURNAL_ENTRYID_ERROR = 0x36d2000a, - PR_IPM_NOTE_ENTRYID = 0x36d30102, - PR_IPM_NOTE_ENTRYID_ERROR = 0x36d3000a, - PR_IPM_TASK_ENTRYID = 0x36d40102, - PR_IPM_TASK_ENTRYID_ERROR = 0x36d4000a, - PR_REMINDERS_ONLINE_ENTRYID = 0x36d50102, - PR_REMINDERS_ONLINE_ENTRYID_ERROR = 0x36d5000a, - PR_REMINDERS_OFFLINE_ENTRYID = 0x36d60102, - PR_REMINDERS_OFFLINE_ENTRYID_ERROR = 0x36d6000a, - PR_IPM_DRAFTS_ENTRYID = 0x36d70102, - PR_IPM_DRAFTS_ENTRYID_ERROR = 0x36d7000a, - PR_OUTLOOK_2003_ENTRYIDS = 0x36d81102, - PR_OUTLOOK_2003_ENTRYIDS_ERROR = 0x36d8000a, - PR_FOLDER_WEBVIEWINFO = 0x36df0102, - PR_FOLDER_WEBVIEWINFO_ERROR = 0x36df000a, - PR_FOLDER_XVIEWINFO_E = 0x36e00102, - PR_FOLDER_XVIEWINFO_E_ERROR = 0x36e0000a, - PR_FOLDER_VIEWS_ONLY = 0x36e10003, - PR_FOLDER_VIEWS_ONLY_ERROR = 0x36e1000a, - PR_FREEBUSY_ENTRYIDS = 0x36e41102, - PR_FREEBUSY_ENTRYIDS_ERROR = 0x36e4000a, - PR_DEF_MSG_CLASS = 0x36e5001e, - PR_DEF_MSG_CLASS_UNICODE = 0x36e5001f, - PR_DEF_MSG_CLASS_ERROR = 0x36e5000a, - PR_DEF_FORM_NAME = 0x36e6001e, - PR_DEF_FORM_NAME_UNICODE = 0x36e6001f, - PR_DEF_FORM_NAME_ERROR = 0x36e6000a, - PR_GENERATE_EXCHANGE_VIEWS = 0x36e9000b, - PR_GENERATE_EXCHANGE_VIEWS_ERROR = 0x36e9000a, - PR_AGING_PERIOD = 0x36ec0003, - PR_AGING_PERIOD_ERROR = 0x36ec000a, - PR_AGING_GRANULARITY = 0x36ee0003, - PR_AGING_GRANULARITY_ERROR = 0x36ee000a, - PR_ATTACHMENT_X400_PARAMETERS = 0x37000102, - PR_ATTACHMENT_X400_PARAMETERS_ERROR = 0x3700000a, - PR_ATTACH_DATA_OBJ = 0x3701000d, - PR_ATTACH_DATA_OBJ_ERROR = 0x3701000a, - PR_ATTACH_DATA_BIN = 0x37010102, - PR_ATTACH_ENCODING = 0x37020102, - PR_ATTACH_ENCODING_ERROR = 0x3702000a, - PR_ATTACH_EXTENSION = 0x3703001e, - PR_ATTACH_EXTENSION_UNICODE = 0x3703001f, - PR_ATTACH_EXTENSION_ERROR = 0x3703000a, - PR_ATTACH_FILENAME = 0x3704001e, - PR_ATTACH_FILENAME_UNICODE = 0x3704001f, - PR_ATTACH_FILENAME_ERROR = 0x3704000a, - PR_ATTACH_METHOD = 0x37050003, - PR_ATTACH_METHOD_ERROR = 0x3705000a, - PR_ATTACH_LONG_FILENAME = 0x3707001e, - PR_ATTACH_LONG_FILENAME_UNICODE = 0x3707001f, - PR_ATTACH_LONG_FILENAME_ERROR = 0x3707000a, - PR_ATTACH_PATHNAME = 0x3708001e, - PR_ATTACH_PATHNAME_UNICODE = 0x3708001f, - PR_ATTACH_PATHNAME_ERROR = 0x3708000a, - PR_ATTACH_RENDERING = 0x37090102, - PR_ATTACH_RENDERING_ERROR = 0x3709000a, - PR_ATTACH_TAG = 0x370a0102, - PR_ATTACH_TAG_ERROR = 0x370a000a, - PR_RENDERING_POSITION = 0x370b0003, - PR_RENDERING_POSITION_ERROR = 0x370b000a, - PR_ATTACH_TRANSPORT_NAME = 0x370c001e, - PR_ATTACH_TRANSPORT_NAME_UNICODE = 0x370c001f, - PR_ATTACH_TRANSPORT_NAME_ERROR = 0x370c000a, - PR_ATTACH_LONG_PATHNAME = 0x370d001e, - PR_ATTACH_LONG_PATHNAME_UNICODE = 0x370d001f, - PR_ATTACH_LONG_PATHNAME_ERROR = 0x370d000a, - PR_ATTACH_MIME_TAG = 0x370e001e, - PR_ATTACH_MIME_TAG_UNICODE = 0x370e001f, - PR_ATTACH_MIME_TAG_ERROR = 0x370e000a, - PR_ATTACH_ADDITIONAL_INFO = 0x370f0102, - PR_ATTACH_ADDITIONAL_INFO_ERROR = 0x370f000a, - PR_ATTACH_CONTENT_ID = 0x3712001e, - PR_ATTACH_CONTENT_ID_UNICODE = 0x3712001f, - PR_ATTACH_CONTENT_ID_ERROR = 0x3712000a, - PR_ATTACH_CONTENT_LOCATION = 0x3713001e, - PR_ATTACH_CONTENT_LOCATION_UNICODE = 0x3713001f, - PR_ATTACH_CONTENT_LOCATION_ERROR = 0x3713000a, - PR_ATTACH_FLAGS = 0x37140003, - PR_ATTACH_FLAGS_ERROR = 0x3714000a, - PR_ATTACH_CONTENT_DISPOSITION = 0x3716001e, - PR_ATTACH_CONTENT_DISPOSITION_UNICODE = 0x3716001f, - PR_ATTACH_CONTENT_DISPOSITION_ERROR = 0x3716000a, - PR_SYNCEVENT_SUPPRESS_GUID = 0x38800102, - PR_SYNCEVENT_SUPPRESS_GUID_ERROR = 0x3880000a, - PR_DISPLAY_TYPE = 0x39000003, - PR_DISPLAY_TYPE_ERROR = 0x3900000a, - PR_TEMPLATEID = 0x39020102, - PR_TEMPLATEID_ERROR = 0x3902000a, - PR_PRIMARY_CAPABILITY = 0x39040102, - PR_PRIMARY_CAPABILITY_ERROR = 0x3904000a, - PR_SMTP_ADDRESS = 0x39fe001e, - PR_SMTP_ADDRESS_UNICODE = 0x39fe001f, - PR_SMTP_ADDRESS_ERROR = 0x39fe000a, - PR_7BIT_DISPLAY_NAME = 0x39ff001e, - PR_7BIT_DISPLAY_NAME_UNICODE = 0x39ff001f, - PR_7BIT_DISPLAY_NAME_ERROR = 0x39ff000a, - PR_ACCOUNT = 0x3a00001e, - PR_ACCOUNT_UNICODE = 0x3a00001f, - PR_ACCOUNT_ERROR = 0x3a00000a, - PR_ALTERNATE_RECIPIENT = 0x3a010102, - PR_ALTERNATE_RECIPIENT_ERROR = 0x3a01000a, - PR_CALLBACK_TELEPHONE_NUMBER = 0x3a02001e, - PR_CALLBACK_TELEPHONE_NUMBER_UNICODE = 0x3a02001f, - PR_CALLBACK_TELEPHONE_NUMBER_ERROR = 0x3a02000a, - PR_CONVERSION_PROHIBITED = 0x3a03000b, - PR_CONVERSION_PROHIBITED_ERROR = 0x3a03000a, - PR_DISCLOSE_RECIPIENTS = 0x3a04000b, - PR_DISCLOSE_RECIPIENTS_ERROR = 0x3a04000a, - PR_GENERATION = 0x3a05001e, - PR_GENERATION_UNICODE = 0x3a05001f, - PR_GENERATION_ERROR = 0x3a05000a, - PR_GIVEN_NAME = 0x3a06001e, - PR_GIVEN_NAME_UNICODE = 0x3a06001f, - PR_GIVEN_NAME_ERROR = 0x3a06000a, - PR_GOVERNMENT_ID_NUMBER = 0x3a07001e, - PR_GOVERNMENT_ID_NUMBER_UNICODE = 0x3a07001f, - PR_GOVERNMENT_ID_NUMBER_ERROR = 0x3a07000a, - PR_OFFICE_TELEPHONE_NUMBER = 0x3a08001e, - PR_OFFICE_TELEPHONE_NUMBER_UNICODE = 0x3a08001f, - PR_OFFICE_TELEPHONE_NUMBER_ERROR = 0x3a08000a, - PR_HOME_TELEPHONE_NUMBER = 0x3a09001e, - PR_HOME_TELEPHONE_NUMBER_UNICODE = 0x3a09001f, - PR_HOME_TELEPHONE_NUMBER_ERROR = 0x3a09000a, - PR_INITIALS = 0x3a0a001e, - PR_INITIALS_UNICODE = 0x3a0a001f, - PR_INITIALS_ERROR = 0x3a0a000a, - PR_KEYWORD = 0x3a0b001e, - PR_KEYWORD_UNICODE = 0x3a0b001f, - PR_KEYWORD_ERROR = 0x3a0b000a, - PR_LANGUAGE = 0x3a0c001e, - PR_LANGUAGE_UNICODE = 0x3a0c001f, - PR_LANGUAGE_ERROR = 0x3a0c000a, - PR_LOCATION = 0x3a0d001e, - PR_LOCATION_UNICODE = 0x3a0d001f, - PR_LOCATION_ERROR = 0x3a0d000a, - PR_MAIL_PERMISSION = 0x3a0e000b, - PR_MAIL_PERMISSION_ERROR = 0x3a0e000a, - PR_MHS_COMMON_NAME = 0x3a0f001e, - PR_MHS_COMMON_NAME_UNICODE = 0x3a0f001f, - PR_MHS_COMMON_NAME_ERROR = 0x3a0f000a, - PR_ORGANIZATIONAL_ID_NUMBER = 0x3a10001e, - PR_ORGANIZATIONAL_ID_NUMBER_UNICODE = 0x3a10001f, - PR_ORGANIZATIONAL_ID_NUMBER_ERROR = 0x3a10000a, - PR_SURNAME = 0x3a11001e, - PR_SURNAME_UNICODE = 0x3a11001f, - PR_SURNAME_ERROR = 0x3a11000a, - PR_ORIGINAL_ENTRYID = 0x3a120102, - PR_ORIGINAL_ENTRYID_ERROR = 0x3a12000a, - PR_ORIGINAL_DISPLAY_NAME = 0x3a13001e, - PR_ORIGINAL_DISPLAY_NAME_UNICODE = 0x3a13001f, - PR_ORIGINAL_DISPLAY_NAME_ERROR = 0x3a13000a, - PR_ORIGINAL_SEARCH_KEY = 0x3a140102, - PR_ORIGINAL_SEARCH_KEY_ERROR = 0x3a14000a, - PR_POSTAL_ADDRESS = 0x3a15001e, - PR_POSTAL_ADDRESS_UNICODE = 0x3a15001f, - PR_POSTAL_ADDRESS_ERROR = 0x3a15000a, - PR_COMPANY_NAME = 0x3a16001e, - PR_COMPANY_NAME_UNICODE = 0x3a16001f, - PR_COMPANY_NAME_ERROR = 0x3a16000a, - PR_TITLE = 0x3a17001e, - PR_TITLE_UNICODE = 0x3a17001f, - PR_TITLE_ERROR = 0x3a17000a, - PR_DEPARTMENT_NAME = 0x3a18001e, - PR_DEPARTMENT_NAME_UNICODE = 0x3a18001f, - PR_DEPARTMENT_NAME_ERROR = 0x3a18000a, - PR_OFFICE_LOCATION = 0x3a19001e, - PR_OFFICE_LOCATION_UNICODE = 0x3a19001f, - PR_OFFICE_LOCATION_ERROR = 0x3a19000a, - PR_PRIMARY_TELEPHONE_NUMBER = 0x3a1a001e, - PR_PRIMARY_TELEPHONE_NUMBER_UNICODE = 0x3a1a001f, - PR_PRIMARY_TELEPHONE_NUMBER_ERROR = 0x3a1a000a, - PR_OFFICE2_TELEPHONE_NUMBER = 0x3a1b001e, - PR_OFFICE2_TELEPHONE_NUMBER_UNICODE = 0x3a1b001f, - PR_OFFICE2_TELEPHONE_NUMBER_ERROR = 0x3a1b000a, - PR_MOBILE_TELEPHONE_NUMBER = 0x3a1c001e, - PR_MOBILE_TELEPHONE_NUMBER_UNICODE = 0x3a1c001f, - PR_MOBILE_TELEPHONE_NUMBER_ERROR = 0x3a1c000a, - PR_RADIO_TELEPHONE_NUMBER = 0x3a1d001e, - PR_RADIO_TELEPHONE_NUMBER_UNICODE = 0x3a1d001f, - PR_RADIO_TELEPHONE_NUMBER_ERROR = 0x3a1d000a, - PR_CAR_TELEPHONE_NUMBER = 0x3a1e001e, - PR_CAR_TELEPHONE_NUMBER_UNICODE = 0x3a1e001f, - PR_CAR_TELEPHONE_NUMBER_ERROR = 0x3a1e000a, - PR_OTHER_TELEPHONE_NUMBER = 0x3a1f001e, - PR_OTHER_TELEPHONE_NUMBER_UNICODE = 0x3a1f001f, - PR_OTHER_TELEPHONE_NUMBER_ERROR = 0x3a1f000a, - PR_TRANSMITTABLE_DISPLAY_NAME = 0x3a20001e, - PR_TRANSMITTABLE_DISPLAY_NAME_UNICODE = 0x3a20001f, - PR_TRANSMITTABLE_DISPLAY_NAME_ERROR = 0x3a20000a, - PR_PAGER_TELEPHONE_NUMBER = 0x3a21001e, - PR_PAGER_TELEPHONE_NUMBER_UNICODE = 0x3a21001f, - PR_PAGER_TELEPHONE_NUMBER_ERROR = 0x3a21000a, - PR_USER_CERTIFICATE = 0x3a220102, - PR_USER_CERTIFICATE_ERROR = 0x3a22000a, - PR_PRIMARY_FAX_NUMBER = 0x3a23001e, - PR_PRIMARY_FAX_NUMBER_UNICODE = 0x3a23001f, - PR_PRIMARY_FAX_NUMBER_ERROR = 0x3a23000a, - PR_HOME_FAX_NUMBER = 0x3a25001e, - PR_HOME_FAX_NUMBER_UNICODE = 0x3a25001f, - PR_HOME_FAX_NUMBER_ERROR = 0x3a25000a, - PR_COUNTRY = 0x3a26001e, - PR_COUNTRY_UNICODE = 0x3a26001f, - PR_COUNTRY_ERROR = 0x3a26000a, - PR_LOCALITY = 0x3a27001e, - PR_LOCALITY_UNICODE = 0x3a27001f, - PR_LOCALITY_ERROR = 0x3a27000a, - PR_STATE_OR_PROVINCE = 0x3a28001e, - PR_STATE_OR_PROVINCE_UNICODE = 0x3a28001f, - PR_STATE_OR_PROVINCE_ERROR = 0x3a28000a, - PR_STREET_ADDRESS = 0x3a29001e, - PR_STREET_ADDRESS_UNICODE = 0x3a29001f, - PR_STREET_ADDRESS_ERROR = 0x3a29000a, - PR_POSTAL_CODE = 0x3a2a001e, - PR_POSTAL_CODE_UNICODE = 0x3a2a001f, - PR_POSTAL_CODE_ERROR = 0x3a2a000a, - PR_POST_OFFICE_BOX = 0x3a2b001e, - PR_POST_OFFICE_BOX_UNICODE = 0x3a2b001f, - PR_POST_OFFICE_BOX_ERROR = 0x3a2b000a, - PR_TELEX_NUMBER = 0x3a2c001e, - PR_TELEX_NUMBER_UNICODE = 0x3a2c001f, - PR_TELEX_NUMBER_ERROR = 0x3a2c000a, - PR_ISDN_NUMBER = 0x3a2d001e, - PR_ISDN_NUMBER_UNICODE = 0x3a2d001f, - PR_ISDN_NUMBER_ERROR = 0x3a2d000a, - PR_ASSISTANT_TELEPHONE_NUMBER = 0x3a2e001e, - PR_ASSISTANT_TELEPHONE_NUMBER_UNICODE = 0x3a2e001f, - PR_ASSISTANT_TELEPHONE_NUMBER_ERROR = 0x3a2e000a, - PR_HOME2_TELEPHONE_NUMBER = 0x3a2f001e, - PR_HOME2_TELEPHONE_NUMBER_UNICODE = 0x3a2f001f, - PR_HOME2_TELEPHONE_NUMBER_ERROR = 0x3a2f000a, - PR_ASSISTANT = 0x3a30001e, - PR_ASSISTANT_UNICODE = 0x3a30001f, - PR_ASSISTANT_ERROR = 0x3a30000a, - PR_SEND_RICH_INFO = 0x3a40000b, - PR_SEND_RICH_INFO_ERROR = 0x3a40000a, - PR_WEDDING_ANNIVERSARY = 0x3a410040, - PR_WEDDING_ANNIVERSARY_ERROR = 0x3a41000a, - PR_BIRTHDAY = 0x3a420040, - PR_BIRTHDAY_ERROR = 0x3a42000a, - PR_HOBBIES = 0x3a43001e, - PR_HOBBIES_UNICODE = 0x3a43001f, - PR_HOBBIES_ERROR = 0x3a43000a, - PR_MIDDLE_NAME = 0x3a44001e, - PR_MIDDLE_NAME_UNICODE = 0x3a44001f, - PR_MIDDLE_NAME_ERROR = 0x3a44000a, - PR_DISPLAY_NAME_PREFIX = 0x3a45001e, - PR_DISPLAY_NAME_PREFIX_UNICODE = 0x3a45001f, - PR_DISPLAY_NAME_PREFIX_ERROR = 0x3a45000a, - PR_PROFESSION = 0x3a46001e, - PR_PROFESSION_UNICODE = 0x3a46001f, - PR_PROFESSION_ERROR = 0x3a46000a, - PR_PREFERRED_BY_NAME = 0x3a47001e, - PR_PREFERRED_BY_NAME_UNICODE = 0x3a47001f, - PR_PREFERRED_BY_NAME_ERROR = 0x3a47000a, - PR_SPOUSE_NAME = 0x3a48001e, - PR_SPOUSE_NAME_UNICODE = 0x3a48001f, - PR_SPOUSE_NAME_ERROR = 0x3a48000a, - PR_COMPUTER_NETWORK_NAME = 0x3a49001e, - PR_COMPUTER_NETWORK_NAME_UNICODE = 0x3a49001f, - PR_COMPUTER_NETWORK_NAME_ERROR = 0x3a49000a, - PR_CUSTOMER_ID = 0x3a4a001e, - PR_CUSTOMER_ID_UNICODE = 0x3a4a001f, - PR_CUSTOMER_ID_ERROR = 0x3a4a000a, - PR_TTYTDD_PHONE_NUMBER = 0x3a4b001e, - PR_TTYTDD_PHONE_NUMBER_UNICODE = 0x3a4b001f, - PR_TTYTDD_PHONE_NUMBER_ERROR = 0x3a4b000a, - PR_FTP_SITE = 0x3a4c001e, - PR_FTP_SITE_UNICODE = 0x3a4c001f, - PR_FTP_SITE_ERROR = 0x3a4c000a, - PR_GENDER = 0x3a4d0002, - PR_GENDER_ERROR = 0x3a4d000a, - PR_MANAGER_NAME = 0x3a4e001e, - PR_MANAGER_NAME_UNICODE = 0x3a4e001f, - PR_MANAGER_NAME_ERROR = 0x3a4e000a, - PR_NICKNAME = 0x3a4f001e, - PR_NICKNAME_UNICODE = 0x3a4f001f, - PR_NICKNAME_ERROR = 0x3a4f000a, - PR_PERSONAL_HOME_PAGE = 0x3a50001e, - PR_PERSONAL_HOME_PAGE_UNICODE = 0x3a50001f, - PR_PERSONAL_HOME_PAGE_ERROR = 0x3a50000a, - PR_BUSINESS_HOME_PAGE = 0x3a51001e, - PR_BUSINESS_HOME_PAGE_UNICODE = 0x3a51001f, - PR_BUSINESS_HOME_PAGE_ERROR = 0x3a51000a, - PR_CONTACT_VERSION = 0x3a520048, - PR_CONTACT_VERSION_ERROR = 0x3a52000a, - PR_CONTACT_ENTRYIDS = 0x3a531102, - PR_CONTACT_ENTRYIDS_ERROR = 0x3a53000a, - PR_CONTACT_ADDRTYPES = 0x3a54101e, - PR_CONTACT_ADDRTYPES_UNICODE = 0x3a54101f, - PR_CONTACT_ADDRTYPES_ERROR = 0x3a54000a, - PR_CONTACT_DEFAULT_ADDRESS_INDEX = 0x3a550003, - PR_CONTACT_DEFAULT_ADDRESS_INDEX_ERROR = 0x3a55000a, - PR_CONTACT_EMAIL_ADDRESSES = 0x3a56101e, - PR_CONTACT_EMAIL_ADDRESSES_UNICODE = 0x3a56101f, - PR_CONTACT_EMAIL_ADDRESSES_ERROR = 0x3a56000a, - PR_COMPANY_MAIN_PHONE_NUMBER = 0x3a57001e, - PR_COMPANY_MAIN_PHONE_NUMBER_UNICODE = 0x3a57001f, - PR_COMPANY_MAIN_PHONE_NUMBER_ERROR = 0x3a57000a, - PR_CHILDRENS_NAMES = 0x3a58101e, - PR_CHILDRENS_NAMES_UNICODE = 0x3a58101f, - PR_CHILDRENS_NAMES_ERROR = 0x3a58000a, - PR_HOME_ADDRESS_CITY = 0x3a59001e, - PR_HOME_ADDRESS_CITY_UNICODE = 0x3a59001f, - PR_HOME_ADDRESS_CITY_ERROR = 0x3a59000a, - PR_HOME_ADDRESS_COUNTRY = 0x3a5a001e, - PR_HOME_ADDRESS_COUNTRY_UNICODE = 0x3a5a001f, - PR_HOME_ADDRESS_COUNTRY_ERROR = 0x3a5a000a, - PR_HOME_ADDRESS_POSTAL_CODE = 0x3a5b001e, - PR_HOME_ADDRESS_POSTAL_CODE_UNICODE = 0x3a5b001f, - PR_HOME_ADDRESS_POSTAL_CODE_ERROR = 0x3a5b000a, - PR_HOME_ADDRESS_STATE_OR_PROVINCE = 0x3a5c001e, - PR_HOME_ADDRESS_STATE_OR_PROVINCE_UNICODE = 0x3a5c001f, - PR_HOME_ADDRESS_STATE_OR_PROVINCE_ERROR = 0x3a5c000a, - PR_HOME_ADDRESS_STREET = 0x3a5d001e, - PR_HOME_ADDRESS_STREET_UNICODE = 0x3a5d001f, - PR_HOME_ADDRESS_STREET_ERROR = 0x3a5d000a, - PR_HOME_ADDRESS_POST_OFFICE_BOX = 0x3a5e001e, - PR_HOME_ADDRESS_POST_OFFICE_BOX_UNICODE = 0x3a5e001f, - PR_HOME_ADDRESS_POST_OFFICE_BOX_ERROR = 0x3a5e000a, - PR_OTHER_ADDRESS_CITY = 0x3a5f001e, - PR_OTHER_ADDRESS_CITY_UNICODE = 0x3a5f001f, - PR_OTHER_ADDRESS_CITY_ERROR = 0x3a5f000a, - PR_OTHER_ADDRESS_COUNTRY = 0x3a60001e, - PR_OTHER_ADDRESS_COUNTRY_UNICODE = 0x3a60001f, - PR_OTHER_ADDRESS_COUNTRY_ERROR = 0x3a60000a, - PR_OTHER_ADDRESS_POSTAL_CODE = 0x3a61001e, - PR_OTHER_ADDRESS_POSTAL_CODE_UNICODE = 0x3a61001f, - PR_OTHER_ADDRESS_POSTAL_CODE_ERROR = 0x3a61000a, - PR_OTHER_ADDRESS_STATE_OR_PROVINCE = 0x3a62001e, - PR_OTHER_ADDRESS_STATE_OR_PROVINCE_UNICODE = 0x3a62001f, - PR_OTHER_ADDRESS_STATE_OR_PROVINCE_ERROR = 0x3a62000a, - PR_OTHER_ADDRESS_STREET = 0x3a63001e, - PR_OTHER_ADDRESS_STREET_UNICODE = 0x3a63001f, - PR_OTHER_ADDRESS_STREET_ERROR = 0x3a63000a, - PR_OTHER_ADDRESS_POST_OFFICE_BOX = 0x3a64001e, - PR_OTHER_ADDRESS_POST_OFFICE_BOX_UNICODE = 0x3a64001f, - PR_OTHER_ADDRESS_POST_OFFICE_BOX_ERROR = 0x3a64000a, - PR_USER_X509_CERTIFICATE = 0x3a701102, - PR_USER_X509_CERTIFICATE_ERROR = 0x3a70000a, - PR_SEND_INTERNET_ENCODING = 0x3a710003, - PR_SEND_INTERNET_ENCODING_ERROR = 0x3a71000a, - PR_STORE_PROVIDERS = 0x3d000102, - PR_STORE_PROVIDERS_ERROR = 0x3d00000a, - PR_AB_PROVIDERS = 0x3d010102, - PR_AB_PROVIDERS_ERROR = 0x3d01000a, - PR_TRANSPORT_PROVIDERS = 0x3d020102, - PR_TRANSPORT_PROVIDERS_ERROR = 0x3d02000a, - PR_DEFAULT_PROFILE = 0x3d04000b, - PR_DEFAULT_PROFILE_ERROR = 0x3d04000a, - PR_AB_SEARCH_PATH = 0x3d051102, - PR_AB_SEARCH_PATH_ERROR = 0x3d05000a, - PR_AB_DEFAULT_DIR = 0x3d060102, - PR_AB_DEFAULT_DIR_ERROR = 0x3d06000a, - PR_AB_DEFAULT_PAB = 0x3d070102, - PR_AB_DEFAULT_PAB_ERROR = 0x3d07000a, - PR_FILTERING_HOOKS = 0x3d080102, - PR_FILTERING_HOOKS_ERROR = 0x3d08000a, - PR_SERVICE_NAME = 0x3d09001e, - PR_SERVICE_NAME_UNICODE = 0x3d09001f, - PR_SERVICE_NAME_ERROR = 0x3d09000a, - PR_SERVICE_DLL_NAME = 0x3d0a001e, - PR_SERVICE_DLL_NAME_UNICODE = 0x3d0a001f, - PR_SERVICE_DLL_NAME_ERROR = 0x3d0a000a, - PR_SERVICE_ENTRY_NAME = 0x3d0b001e, - PR_SERVICE_ENTRY_NAME_UNICODE = 0x3d0b001f, - PR_SERVICE_ENTRY_NAME_ERROR = 0x3d0b000a, - PR_SERVICE_UID = 0x3d0c0102, - PR_SERVICE_UID_ERROR = 0x3d0c000a, - PR_SERVICE_EXTRA_UIDS = 0x3d0d0102, - PR_SERVICE_EXTRA_UIDS_ERROR = 0x3d0d000a, - PR_SERVICES = 0x3d0e0102, - PR_SERVICES_ERROR = 0x3d0e000a, - PR_SERVICE_SUPPORT_FILES = 0x3d0f101e, - PR_SERVICE_SUPPORT_FILES_UNICODE = 0x3d0f101f, - PR_SERVICE_SUPPORT_FILES_ERROR = 0x3d0f000a, - PR_SERVICE_DELETE_FILES = 0x3d10101e, - PR_SERVICE_DELETE_FILES_UNICODE = 0x3d10101f, - PR_SERVICE_DELETE_FILES_ERROR = 0x3d10000a, - PR_AB_SEARCH_PATH_UPDATE = 0x3d110102, - PR_AB_SEARCH_PATH_UPDATE_ERROR = 0x3d11000a, - PR_PROFILE_NAME = 0x3d12001e, - PR_PROFILE_NAME_UNICODE = 0x3d12001f, - PR_PROFILE_NAME_ERROR = 0x3d12000a, - PR_SERVICE_INSTALL_ID = 0x3d13001e, - PR_SERVICE_INSTALL_ID_UNICODE = 0x3d13001f, - PR_SERVICE_INSTALL_ID_ERROR = 0x3d13000a, - PR_ADMIN_SECURITY_DESCRIPTOR = 0x3d210102, - PR_ADMIN_SECURITY_DESCRIPTOR_ERROR = 0x3d21000a, - PR_IDENTITY_DISPLAY = 0x3e00001e, - PR_IDENTITY_DISPLAY_UNICODE = 0x3e00001f, - PR_IDENTITY_DISPLAY_ERROR = 0x3e00000a, - PR_IDENTITY_ENTRYID = 0x3e010102, - PR_IDENTITY_ENTRYID_ERROR = 0x3e01000a, - PR_RESOURCE_METHODS = 0x3e020003, - PR_RESOURCE_METHODS_ERROR = 0x3e02000a, - PR_RESOURCE_TYPE = 0x3e030003, - PR_RESOURCE_TYPE_ERROR = 0x3e03000a, - PR_STATUS_CODE = 0x3e040003, - PR_STATUS_CODE_ERROR = 0x3e04000a, - PR_IDENTITY_SEARCH_KEY = 0x3e050102, - PR_IDENTITY_SEARCH_KEY_ERROR = 0x3e05000a, - PR_OWN_STORE_ENTRYID = 0x3e060102, - PR_OWN_STORE_ENTRYID_ERROR = 0x3e06000a, - PR_RESOURCE_PATH = 0x3e07001e, - PR_RESOURCE_PATH_UNICODE = 0x3e07001f, - PR_RESOURCE_PATH_ERROR = 0x3e07000a, - PR_STATUS_STRING = 0x3e08001e, - PR_STATUS_STRING_UNICODE = 0x3e08001f, - PR_STATUS_STRING_ERROR = 0x3e08000a, - PR_X400_DEFERRED_DELIVERY_CANCEL = 0x3e09000b, - PR_X400_DEFERRED_DELIVERY_CANCEL_ERROR = 0x3e09000a, - PR_HEADER_FOLDER_ENTRYID = 0x3e0a0102, - PR_HEADER_FOLDER_ENTRYID_ERROR = 0x3e0a000a, - PR_REMOTE_PROGRESS = 0x3e0b0003, - PR_REMOTE_PROGRESS_ERROR = 0x3e0b000a, - PR_REMOTE_PROGRESS_TEXT = 0x3e0c001e, - PR_REMOTE_PROGRESS_TEXT_UNICODE = 0x3e0c001f, - PR_REMOTE_PROGRESS_TEXT_ERROR = 0x3e0c000a, - PR_REMOTE_VALIDATE_OK = 0x3e0d000b, - PR_REMOTE_VALIDATE_OK_ERROR = 0x3e0d000a, - PR_CONTROL_FLAGS = 0x3f000003, - PR_CONTROL_FLAGS_ERROR = 0x3f00000a, - PR_CONTROL_STRUCTURE = 0x3f010102, - PR_CONTROL_STRUCTURE_ERROR = 0x3f01000a, - PR_CONTROL_TYPE = 0x3f020003, - PR_CONTROL_TYPE_ERROR = 0x3f02000a, - PR_DELTAX = 0x3f030003, - PR_DELTAX_ERROR = 0x3f03000a, - PR_DELTAY = 0x3f040003, - PR_DELTAY_ERROR = 0x3f04000a, - PR_XPOS = 0x3f050003, - PR_XPOS_ERROR = 0x3f05000a, - PR_YPOS = 0x3f060003, - PR_YPOS_ERROR = 0x3f06000a, - PR_CONTROL_ID = 0x3f070102, - PR_CONTROL_ID_ERROR = 0x3f07000a, - PR_INITIAL_DETAILS_PANE = 0x3f080003, - PR_INITIAL_DETAILS_PANE_ERROR = 0x3f08000a, - PR_DID = 0x3f800014, - PR_DID_ERROR = 0x3f80000a, - PR_SEQID = 0x3f810014, - PR_SEQID_ERROR = 0x3f81000a, - PR_DRAFTID = 0x3f820014, - PR_DRAFTID_ERROR = 0x3f82000a, - PR_CHECK_IN_TIME = 0x3f830040, - PR_CHECK_IN_TIME_ERROR = 0x3f83000a, - PR_CHECK_IN_COMMENT = 0x3f84001e, - PR_CHECK_IN_COMMENT_UNICODE = 0x3f84001f, - PR_CHECK_IN_COMMENT_ERROR = 0x3f84000a, - PR_VERSION_OP_CODE = 0x3f850003, - PR_VERSION_OP_CODE_ERROR = 0x3f85000a, - PR_VERSION_OP_DATA = 0x3f860102, - PR_VERSION_OP_DATA_ERROR = 0x3f86000a, - PR_VERSION_SEQUENCE_NUMBER = 0x3f870003, - PR_VERSION_SEQUENCE_NUMBER_ERROR = 0x3f87000a, - PR_ATTACH_ID = 0x3f880014, - PR_ATTACH_ID_ERROR = 0x3f88000a, - PR_PKM_DOC_STATUS = 0x3f8d001e, - PR_PKM_DOC_STATUS_UNICODE = 0x3f8d001f, - PR_PKM_DOC_STATUS_ERROR = 0x3f8d000a, - PR_MV_PKM_OPERATION_REQ = 0x3f8e101e, - PR_MV_PKM_OPERATION_REQ_UNICODE = 0x3f8e101f, - PR_MV_PKM_OPERATION_REQ_ERROR = 0x3f8e000a, - PR_PKM_DOC_INTERNAL_STATE = 0x3f8f001e, - PR_PKM_DOC_INTERNAL_STATE_UNICODE = 0x3f8f001f, - PR_PKM_DOC_INTERNAL_STATE_ERROR = 0x3f8f000a, - PR_VERSIONING_FLAGS = 0x3f900002, - PR_VERSIONING_FLAGS_ERROR = 0x3f90000a, - PR_PKM_LAST_UNAPPROVED_VID = 0x3f910102, - PR_PKM_LAST_UNAPPROVED_VID_ERROR = 0x3f91000a, - PR_MV_PKM_VERSION_LABELS = 0x3f92101e, - PR_MV_PKM_VERSION_LABELS_UNICODE = 0x3f92101f, - PR_MV_PKM_VERSION_LABELS_ERROR = 0x3f92000a, - PR_MV_PKM_VERSION_STATUS = 0x3f93101e, - PR_MV_PKM_VERSION_STATUS_UNICODE = 0x3f93101f, - PR_MV_PKM_VERSION_STATUS_ERROR = 0x3f93000a, - PR_PKM_INTERNAL_DATA = 0x3f940102, - PR_PKM_INTERNAL_DATA_ERROR = 0x3f94000a, - PR_LAST_CONFLICT = 0x3fc90102, - PR_LAST_CONFLICT_ERROR = 0x3fc9000a, - PR_CONFLICT_MSG_KEY = 0x3fca0102, - PR_CONFLICT_MSG_KEY_ERROR = 0x3fca000a, - PR_REPL_HEADER = 0x3fd00102, - PR_REPL_HEADER_ERROR = 0x3fd0000a, - PR_REPL_STATUS = 0x3fd10102, - PR_REPL_STATUS_ERROR = 0x3fd1000a, - PR_REPL_CHANGES = 0x3fd20102, - PR_REPL_CHANGES_ERROR = 0x3fd2000a, - PR_REPL_RGM = 0x3fd30102, - PR_REPL_RGM_ERROR = 0x3fd3000a, - PR_RMI = 0x3fd40102, - PR_RMI_ERROR = 0x3fd4000a, - PR_INTERNAL_POST_REPLY = 0x3fd50102, - PR_INTERNAL_POST_REPLY_ERROR = 0x3fd5000a, - PR_NTSD_MODIFICATION_TIME = 0x3fd60040, - PR_NTSD_MODIFICATION_TIME_ERROR = 0x3fd6000a, - PR_PREVIEW_UNREAD = 0x3fd8001e, - PR_PREVIEW_UNREAD_UNICODE = 0x3fd8001f, - PR_PREVIEW_UNREAD_ERROR = 0x3fd8000a, - PR_PREVIEW = 0x3fd9001e, - PR_PREVIEW_UNICODE = 0x3fd9001f, - PR_PREVIEW_ERROR = 0x3fd9000a, - PR_ABSTRACT = 0x3fda001e, - PR_ABSTRACT_UNICODE = 0x3fda001f, - PR_ABSTRACT_ERROR = 0x3fda000a, - PR_DL_REPORT_FLAGS = 0x3fdb0003, - PR_DL_REPORT_FLAGS_ERROR = 0x3fdb000a, - PR_BILATERAL_INFO = 0x3fdc0102, - PR_BILATERAL_INFO_ERROR = 0x3fdc000a, - PR_MSG_BODY_ID = 0x3fdd0003, - PR_MSG_BODY_ID_ERROR = 0x3fdd000a, - PR_INTERNET_CPID = 0x3fde0003, - PR_INTERNET_CPID_ERROR = 0x3fde000a, - PR_AUTO_RESPONSE_SUPPRESS = 0x3fdf0003, - PR_AUTO_RESPONSE_SUPPRESS_ERROR = 0x3fdf000a, - PR_ACL_TABLE = 0x3fe0000d, - PR_ACL_TABLE_ERROR = 0x3fe0000a, - PR_ACL_DATA = 0x3fe00102, - PR_RULES_TABLE = 0x3fe1000d, - PR_RULES_TABLE_ERROR = 0x3fe1000a, - PR_RULES_DATA = 0x3fe10102, - PR_FOLDER_DESIGN_FLAGS = 0x3fe20003, - PR_FOLDER_DESIGN_FLAGS_ERROR = 0x3fe2000a, - PR_DELEGATED_BY_RULE = 0x3fe3000b, - PR_DELEGATED_BY_RULE_ERROR = 0x3fe3000a, - PR_DESIGN_IN_PROGRESS = 0x3fe4000b, - PR_DESIGN_IN_PROGRESS_ERROR = 0x3fe4000a, - PR_SECURE_ORIGINATION = 0x3fe5000b, - PR_SECURE_ORIGINATION_ERROR = 0x3fe5000a, - PR_PUBLISH_IN_ADDRESS_BOOK = 0x3fe6000b, - PR_PUBLISH_IN_ADDRESS_BOOK_ERROR = 0x3fe6000a, - PR_RESOLVE_METHOD = 0x3fe70003, - PR_RESOLVE_METHOD_ERROR = 0x3fe7000a, - PR_ADDRESS_BOOK_DISPLAY_NAME = 0x3fe8001e, - PR_ADDRESS_BOOK_DISPLAY_NAME_UNICODE = 0x3fe8001f, - PR_ADDRESS_BOOK_DISPLAY_NAME_ERROR = 0x3fe8000a, - PR_EFORMS_LOCALE_ID = 0x3fe90003, - PR_EFORMS_LOCALE_ID_ERROR = 0x3fe9000a, - PR_HAS_DAMS = 0x3fea000b, - PR_HAS_DAMS_ERROR = 0x3fea000a, - PR_DEFERRED_SEND_NUMBER = 0x3feb0003, - PR_DEFERRED_SEND_NUMBER_ERROR = 0x3feb000a, - PR_DEFERRED_SEND_UNITS = 0x3fec0003, - PR_DEFERRED_SEND_UNITS_ERROR = 0x3fec000a, - PR_EXPIRY_NUMBER = 0x3fed0003, - PR_EXPIRY_NUMBER_ERROR = 0x3fed000a, - PR_EXPIRY_UNITS = 0x3fee0003, - PR_EXPIRY_UNITS_ERROR = 0x3fee000a, - PR_DEFERRED_SEND_TIME = 0x3fef0040, - PR_DEFERRED_SEND_TIME_ERROR = 0x3fef000a, - PR_CONFLICT_ENTRYID = 0x3ff00102, - PR_CONFLICT_ENTRYID_ERROR = 0x3ff0000a, - PR_MESSAGE_LOCALE_ID = 0x3ff10003, - PR_MESSAGE_LOCALE_ID_ERROR = 0x3ff1000a, - PR_RULE_TRIGGER_HISTORY = 0x3ff20102, - PR_RULE_TRIGGER_HISTORY_ERROR = 0x3ff2000a, - PR_MOVE_TO_STORE_ENTRYID = 0x3ff30102, - PR_MOVE_TO_STORE_ENTRYID_ERROR = 0x3ff3000a, - PR_MOVE_TO_FOLDER_ENTRYID = 0x3ff40102, - PR_MOVE_TO_FOLDER_ENTRYID_ERROR = 0x3ff4000a, - PR_STORAGE_QUOTA_LIMIT = 0x3ff50003, - PR_STORAGE_QUOTA_LIMIT_ERROR = 0x3ff5000a, - PR_EXCESS_STORAGE_USED = 0x3ff60003, - PR_EXCESS_STORAGE_USED_ERROR = 0x3ff6000a, - PR_SVR_GENERATING_QUOTA_MSG = 0x3ff7001e, - PR_SVR_GENERATING_QUOTA_MSG_UNICODE = 0x3ff7001f, - PR_SVR_GENERATING_QUOTA_MSG_ERROR = 0x3ff7000a, - PR_CREATOR_NAME = 0x3ff8001e, - PR_CREATOR_NAME_UNICODE = 0x3ff8001f, - PR_CREATOR_NAME_ERROR = 0x3ff8000a, - PR_CREATOR_ENTRYID = 0x3ff90102, - PR_CREATOR_ENTRYID_ERROR = 0x3ff9000a, - PR_LAST_MODIFIER_NAME = 0x3ffa001e, - PR_LAST_MODIFIER_NAME_UNICODE = 0x3ffa001f, - PR_LAST_MODIFIER_NAME_ERROR = 0x3ffa000a, - PR_LAST_MODIFIER_ENTRYID = 0x3ffb0102, - PR_LAST_MODIFIER_ENTRYID_ERROR = 0x3ffb000a, - PR_REPLY_RECIPIENT_SMTP_PROXIES = 0x3ffc001e, - PR_REPLY_RECIPIENT_SMTP_PROXIES_UNICODE = 0x3ffc001f, - PR_REPLY_RECIPIENT_SMTP_PROXIES_ERROR = 0x3ffc000a, - PR_MESSAGE_CODEPAGE = 0x3ffd0003, - PR_MESSAGE_CODEPAGE_ERROR = 0x3ffd000a, - PR_EXTENDED_ACL_DATA = 0x3ffe0102, - PR_EXTENDED_ACL_DATA_ERROR = 0x3ffe000a, - PR_FROM_I_HAVE = 0x3fff000b, - PR_FROM_I_HAVE_ERROR = 0x3fff000a, - PR_NEW_ATTACH = 0x40000003, - PR_NEW_ATTACH_ERROR = 0x4000000a, - PR_START_EMBED = 0x40010003, - PR_START_EMBED_ERROR = 0x4001000a, - PR_END_EMBED = 0x40020003, - PR_END_EMBED_ERROR = 0x4002000a, - PR_START_RECIP = 0x40030003, - PR_START_RECIP_ERROR = 0x4003000a, - PR_END_RECIP = 0x40040003, - PR_END_RECIP_ERROR = 0x4004000a, - PR_END_CC_RECIP = 0x40050003, - PR_END_CC_RECIP_ERROR = 0x4005000a, - PR_END_BCC_RECIP = 0x40060003, - PR_END_BCC_RECIP_ERROR = 0x4006000a, - PR_END_P1_RECIP = 0x40070003, - PR_END_P1_RECIP_ERROR = 0x4007000a, - PR_START_TOP_FLD = 0x40090003, - PR_START_TOP_FLD_ERROR = 0x4009000a, - PR_START_SUB_FLD = 0x400a0003, - PR_START_SUB_FLD_ERROR = 0x400a000a, - PR_END_FOLDER = 0x400b0003, - PR_END_FOLDER_ERROR = 0x400b000a, - PR_START_MESSAGE = 0x400c0003, - PR_START_MESSAGE_ERROR = 0x400c000a, - PR_END_MESSAGE = 0x400d0003, - PR_END_MESSAGE_ERROR = 0x400d000a, - PR_END_ATTACH = 0x400e0003, - PR_END_ATTACH_ERROR = 0x400e000a, - PR_EC_WARNING = 0x400f0003, - PR_EC_WARNING_ERROR = 0x400f000a, - PR_START_FAI_MSG = 0x40100003, - PR_START_FAI_MSG_ERROR = 0x4010000a, - PR_NEW_FX_FOLDER = 0x40110102, - PR_NEW_FX_FOLDER_ERROR = 0x4011000a, - PR_INCR_SYNC_CHG = 0x40120003, - PR_INCR_SYNC_CHG_ERROR = 0x4012000a, - PR_INCR_SYNC_DEL = 0x40130003, - PR_INCR_SYNC_DEL_ERROR = 0x4013000a, - PR_INCR_SYNC_END = 0x40140003, - PR_INCR_SYNC_END_ERROR = 0x4014000a, - PR_INCR_SYNC_MSG = 0x40150003, - PR_INCR_SYNC_MSG_ERROR = 0x4015000a, - PR_FX_DEL_PROP = 0x40160003, - PR_FX_DEL_PROP_ERROR = 0x4016000a, - PR_IDSET_GIVEN = 0x40170003, - PR_IDSET_GIVEN_ERROR = 0x4017000a, - PR_SENDER_FLAGS = 0x40190003, - PR_SENDER_FLAGS_ERROR = 0x4019000a, - PR_SENT_REPRESENTING_FLAGS = 0x401a0003, - PR_SENT_REPRESENTING_FLAGS_ERROR = 0x401a000a, - PR_RCVD_BY_FLAGS = 0x401b0003, - PR_RCVD_BY_FLAGS_ERROR = 0x401b000a, - PR_RCVD_REPRESENTING_FLAGS = 0x401c0003, - PR_RCVD_REPRESENTING_FLAGS_ERROR = 0x401c000a, - PR_ORIGINAL_SENDER_FLAGS = 0x401d0003, - PR_ORIGINAL_SENDER_FLAGS_ERROR = 0x401d000a, - PR_ORIGINAL_SENT_REPRESENTING_FLAGS = 0x401e0003, - PR_ORIGINAL_SENT_REPRESENTING_FLAGS_ERROR = 0x401e000a, - PR_REPORT_FLAGS = 0x401f0003, - PR_REPORT_FLAGS_ERROR = 0x401f000a, - PR_READ_RECEIPT_FLAGS = 0x40200003, - PR_READ_RECEIPT_FLAGS_ERROR = 0x4020000a, - PR_SOFT_DELETES = 0x4021000b, - PR_SOFT_DELETES_ERROR = 0x4021000a, - PR_MESSAGE_SUBMISSION_ID_FROM_CLIENT = 0x402c0102, - PR_MESSAGE_SUBMISSION_ID_FROM_CLIENT_ERROR = 0x402c000a, - PR_SENDER_SIMPLE_DISP_NAME = 0x4030001e, - PR_SENDER_SIMPLE_DISP_NAME_UNICODE = 0x4030001f, - PR_SENDER_SIMPLE_DISP_NAME_ERROR = 0x4030000a, - PR_SENT_REPRESENTING_SIMPLE_DISP_NAME = 0x4031001e, - PR_SENT_REPRESENTING_SIMPLE_DISP_NAME_UNICODE = 0x4031001f, - PR_SENT_REPRESENTING_SIMPLE_DISP_NAME_ERROR = 0x4031000a, - PR_CREATOR_SIMPLE_DISP_NAME = 0x4038001e, - PR_CREATOR_SIMPLE_DISP_NAME_UNICODE = 0x4038001f, - PR_CREATOR_SIMPLE_DISP_NAME_ERROR = 0x4038000a, - PR_ORG_ADDR_TYPE = 0x403d001e, - PR_ORG_ADDR_TYPE_UNICODE = 0x403d001f, - PR_ORG_ADDR_TYPE_ERROR = 0x403d000a, - PR_ORG_EMAIL_ADDR = 0x403e001e, - PR_ORG_EMAIL_ADDR_UNICODE = 0x403e001f, - PR_ORG_EMAIL_ADDR_ERROR = 0x403e000a, - PR_CREATOR_FLAGS = 0x40590003, - PR_CREATOR_FLAGS_ERROR = 0x4059000a, - PR_MODIFIER_FLAGS = 0x405a0003, - PR_MODIFIER_FLAGS_ERROR = 0x405a000a, - PR_ORIGINATOR_FLAGS = 0x405b0003, - PR_ORIGINATOR_FLAGS_ERROR = 0x405b000a, - PR_REPORT_DESTINATION_FLAGS = 0x405c0003, - PR_REPORT_DESTINATION_FLAGS_ERROR = 0x405c000a, - PR_ORIGINAL_AUTHOR_FLAGS = 0x405d0003, - PR_ORIGINAL_AUTHOR_FLAGS_ERROR = 0x405d000a, - PR_ORIGINATOR_SEARCH_KEY = 0x40610102, - PR_ORIGINATOR_SEARCH_KEY_ERROR = 0x4061000a, - PR_REPORT_DESTINATION_SEARCH_KEY = 0x40640102, - PR_REPORT_DESTINATION_SEARCH_KEY_ERROR = 0x4064000a, - PR_ER_FLAG = 0x40650003, - PR_ER_FLAG_ERROR = 0x4065000a, - PR_INTERNET_SUBJECT = 0x40680102, - PR_INTERNET_SUBJECT_ERROR = 0x4068000a, - PR_INTERNET_SENT_REPRESENTING_NAME = 0x40690102, - PR_INTERNET_SENT_REPRESENTING_NAME_ERROR = 0x4069000a, - PR_INET_MAIL_OVERRIDE_FORMAT = 0x59020003, - PR_INET_MAIL_OVERRIDE_FORMAT_ERROR = 0x5902000a, - PR_MSG_EDITOR_FORMAT = 0x59090003, - PR_MSG_EDITOR_FORMAT_ERROR = 0x5909000a, - PR_DOTSTUFF_STATE = 0x60010003, - PR_DOTSTUFF_STATE_ERROR = 0x6001000a, - PR_RULE_SERVER_RULE_ID = 0x65a00014, - PR_RULE_SERVER_RULE_ID_ERROR = 0x65a0000a, - PR_REPLY_TEMPLATE_ID = 0x65c20102, - PR_REPLY_TEMPLATE_ID_ERROR = 0x65c2000a, - PR_SOURCE_KEY = 0x65e00102, - PR_SOURCE_KEY_ERROR = 0x65e0000a, - PR_PARENT_SOURCE_KEY = 0x65e10102, - PR_PARENT_SOURCE_KEY_ERROR = 0x65e1000a, - PR_CHANGE_KEY = 0x65e20102, - PR_CHANGE_KEY_ERROR = 0x65e2000a, - PR_PREDECESSOR_CHANGE_LIST = 0x65e30102, - PR_PREDECESSOR_CHANGE_LIST_ERROR = 0x65e3000a, - PR_SYNCHRONIZE_FLAGS = 0x65e40003, - PR_SYNCHRONIZE_FLAGS_ERROR = 0x65e4000a, - PR_AUTO_ADD_NEW_SUBS = 0x65e5000b, - PR_AUTO_ADD_NEW_SUBS_ERROR = 0x65e5000a, - PR_NEW_SUBS_GET_AUTO_ADD = 0x65e6000b, - PR_NEW_SUBS_GET_AUTO_ADD_ERROR = 0x65e6000a, - PR_MESSAGE_SITE_NAME = 0x65e7001e, - PR_MESSAGE_SITE_NAME_UNICODE = 0x65e7001f, - PR_MESSAGE_SITE_NAME_ERROR = 0x65e7000a, - PR_MESSAGE_PROCESSED = 0x65e8000b, - PR_MESSAGE_PROCESSED_ERROR = 0x65e8000a, - PR_RULE_MSG_STATE = 0x65e90003, - PR_RULE_MSG_STATE_ERROR = 0x65e9000a, - PR_RULE_MSG_USER_FLAGS = 0x65ea0003, - PR_RULE_MSG_USER_FLAGS_ERROR = 0x65ea000a, - PR_RULE_MSG_PROVIDER = 0x65eb001e, - PR_RULE_MSG_PROVIDER_UNICODE = 0x65eb001f, - PR_RULE_MSG_PROVIDER_ERROR = 0x65eb000a, - PR_RULE_MSG_NAME = 0x65ec001e, - PR_RULE_MSG_NAME_UNICODE = 0x65ec001f, - PR_RULE_MSG_NAME_ERROR = 0x65ec000a, - PR_RULE_MSG_LEVEL = 0x65ed0003, - PR_RULE_MSG_LEVEL_ERROR = 0x65ed000a, - PR_RULE_MSG_PROVIDER_DATA = 0x65ee0102, - PR_RULE_MSG_PROVIDER_DATA_ERROR = 0x65ee000a, - PR_RULE_MSG_ACTIONS = 0x65ef0102, - PR_RULE_MSG_ACTIONS_ERROR = 0x65ef000a, - PR_RULE_MSG_CONDITION = 0x65f00102, - PR_RULE_MSG_CONDITION_ERROR = 0x65f0000a, - PR_RULE_MSG_CONDITION_LCID = 0x65f10003, - PR_RULE_MSG_CONDITION_LCID_ERROR = 0x65f1000a, - PR_RULE_MSG_VERSION = 0x65f20002, - PR_RULE_MSG_VERSION_ERROR = 0x65f2000a, - PR_RULE_MSG_SEQUENCE = 0x65f30003, - PR_RULE_MSG_SEQUENCE_ERROR = 0x65f3000a, - PR_PREVENT_MSG_CREATE = 0x65f4000b, - PR_PREVENT_MSG_CREATE_ERROR = 0x65f4000a, - PR_IMAP_INTERNAL_DATE = 0x65f50040, - PR_IMAP_INTERNAL_DATE_ERROR = 0x65f5000a, - PR_PROFILE_VERSION = 0x66000003, - PR_PROFILE_VERSION_ERROR = 0x6600000a, - PR_PROFILE_CONFIG_FLAGS = 0x66010003, - PR_PROFILE_CONFIG_FLAGS_ERROR = 0x6601000a, - PR_PROFILE_HOME_SERVER = 0x6602001e, - PR_PROFILE_HOME_SERVER_UNICODE = 0x6602001f, - PR_PROFILE_HOME_SERVER_ERROR = 0x6602000a, - PR_PROFILE_USER = 0x6603001e, - PR_PROFILE_USER_UNICODE = 0x6603001f, - PR_PROFILE_USER_ERROR = 0x6603000a, - PR_PROFILE_CONNECT_FLAGS = 0x66040003, - PR_PROFILE_CONNECT_FLAGS_ERROR = 0x6604000a, - PR_PROFILE_TRANSPORT_FLAGS = 0x66050003, - PR_PROFILE_TRANSPORT_FLAGS_ERROR = 0x6605000a, - PR_PROFILE_UI_STATE = 0x66060003, - PR_PROFILE_UI_STATE_ERROR = 0x6606000a, - PR_PROFILE_UNRESOLVED_NAME = 0x6607001e, - PR_PROFILE_UNRESOLVED_NAME_UNICODE = 0x6607001f, - PR_PROFILE_UNRESOLVED_NAME_ERROR = 0x6607000a, - PR_PROFILE_UNRESOLVED_SERVER = 0x6608001e, - PR_PROFILE_UNRESOLVED_SERVER_UNICODE = 0x6608001f, - PR_PROFILE_UNRESOLVED_SERVER_ERROR = 0x6608000a, - PR_PROFILE_OPEN_FLAGS = 0x66090003, - PR_PROFILE_OPEN_FLAGS_ERROR = 0x6609000a, - PR_PROFILE_BINDING_ORDER = 0x6609001e, - PR_PROFILE_BINDING_ORDER_UNICODE = 0x6609001f, - PR_PROFILE_TYPE = 0x660a0003, - PR_PROFILE_TYPE_ERROR = 0x660a000a, - PR_PROFILE_MAILBOX = 0x660b001e, - PR_PROFILE_MAILBOX_UNICODE = 0x660b001f, - PR_PROFILE_MAILBOX_ERROR = 0x660b000a, - PR_PROFILE_SERVER = 0x660c001e, - PR_PROFILE_SERVER_UNICODE = 0x660c001f, - PR_PROFILE_SERVER_ERROR = 0x660c000a, - PR_PROFILE_MAX_RESTRICT = 0x660d0003, - PR_PROFILE_MAX_RESTRICT_ERROR = 0x660d000a, - PR_PROFILE_AB_FILES_PATH = 0x660e001e, - PR_PROFILE_AB_FILES_PATH_UNICODE = 0x660e001f, - PR_PROFILE_AB_FILES_PATH_ERROR = 0x660e000a, - PR_PROFILE_FAVFLD_DISPLAY_NAME = 0x660f001e, - PR_PROFILE_FAVFLD_DISPLAY_NAME_UNICODE = 0x660f001f, - PR_PROFILE_FAVFLD_DISPLAY_NAME_ERROR = 0x660f000a, - PR_PROFILE_OFFLINE_STORE_PATH = 0x6610001e, - PR_PROFILE_OFFLINE_STORE_PATH_UNICODE = 0x6610001f, - PR_PROFILE_OFFLINE_STORE_PATH_ERROR = 0x6610000a, - PR_PROFILE_OFFLINE_INFO = 0x66110102, - PR_PROFILE_OFFLINE_INFO_ERROR = 0x6611000a, - PR_PROFILE_HOME_SERVER_DN = 0x6612001e, - PR_PROFILE_HOME_SERVER_DN_UNICODE = 0x6612001f, - PR_PROFILE_HOME_SERVER_DN_ERROR = 0x6612000a, - PR_PROFILE_HOME_SERVER_ADDRS = 0x6613101e, - PR_PROFILE_HOME_SERVER_ADDRS_UNICODE = 0x6613101f, - PR_PROFILE_HOME_SERVER_ADDRS_ERROR = 0x6613000a, - PR_PROFILE_SERVER_DN = 0x6614001e, - PR_PROFILE_SERVER_DN_UNICODE = 0x6614001f, - PR_PROFILE_SERVER_DN_ERROR = 0x6614000a, - PR_PROFILE_FAVFLD_COMMENT = 0x6615001e, - PR_PROFILE_FAVFLD_COMMENT_UNICODE = 0x6615001f, - PR_PROFILE_FAVFLD_COMMENT_ERROR = 0x6615000a, - PR_PROFILE_ALLPUB_DISPLAY_NAME = 0x6616001e, - PR_PROFILE_ALLPUB_DISPLAY_NAME_UNICODE = 0x6616001f, - PR_PROFILE_ALLPUB_DISPLAY_NAME_ERROR = 0x6616000a, - PR_PROFILE_ALLPUB_COMMENT = 0x6617001e, - PR_PROFILE_ALLPUB_COMMENT_UNICODE = 0x6617001f, - PR_PROFILE_ALLPUB_COMMENT_ERROR = 0x6617000a, - PR_DISABLE_WINSOCK = 0x66180003, - PR_DISABLE_WINSOCK_ERROR = 0x6618000a, - PR_IN_TRANSIT = 0x6618000b, - PR_PROFILE_AUTH_PACKAGE = 0x66190003, - PR_PROFILE_AUTH_PACKAGE_ERROR = 0x6619000a, - PR_USER_ENTRYID = 0x66190102, - PR_USER_NAME = 0x661a001e, - PR_USER_NAME_UNICODE = 0x661a001f, - PR_USER_NAME_ERROR = 0x661a000a, - PR_MAILBOX_OWNER_ENTRYID = 0x661b0102, - PR_MAILBOX_OWNER_ENTRYID_ERROR = 0x661b000a, - PR_MAILBOX_OWNER_NAME = 0x661c001e, - PR_MAILBOX_OWNER_NAME_UNICODE = 0x661c001f, - PR_MAILBOX_OWNER_NAME_ERROR = 0x661c000a, - PR_OOF_STATE = 0x661d000b, - PR_OOF_STATE_ERROR = 0x661d000a, - PR_SCHEDULE_FOLDER_ENTRYID = 0x661e0102, - PR_SCHEDULE_FOLDER_ENTRYID_ERROR = 0x661e000a, - PR_IPM_DAF_ENTRYID = 0x661f0102, - PR_IPM_DAF_ENTRYID_ERROR = 0x661f000a, - PR_NON_IPM_SUBTREE_ENTRYID = 0x66200102, - PR_NON_IPM_SUBTREE_ENTRYID_ERROR = 0x6620000a, - PR_EFORMS_REGISTRY_ENTRYID = 0x66210102, - PR_EFORMS_REGISTRY_ENTRYID_ERROR = 0x6621000a, - PR_SPLUS_FREE_BUSY_ENTRYID = 0x66220102, - PR_SPLUS_FREE_BUSY_ENTRYID_ERROR = 0x6622000a, - PR_HIERARCHY_SERVER = 0x6623001e, - PR_HIERARCHY_SERVER_UNICODE = 0x6623001f, - PR_HIERARCHY_SERVER_ERROR = 0x6623000a, - PR_OFFLINE_ADDRBOOK_ENTRYID = 0x66230102, - PR_EFORMS_FOR_LOCALE_ENTRYID = 0x66240102, - PR_EFORMS_FOR_LOCALE_ENTRYID_ERROR = 0x6624000a, - PR_FREE_BUSY_FOR_LOCAL_SITE_ENTRYID = 0x66250102, - PR_FREE_BUSY_FOR_LOCAL_SITE_ENTRYID_ERROR = 0x6625000a, - PR_ADDRBOOK_FOR_LOCAL_SITE_ENTRYID = 0x66260102, - PR_ADDRBOOK_FOR_LOCAL_SITE_ENTRYID_ERROR = 0x6626000a, - PR_OFFLINE_MESSAGE_ENTRYID = 0x66270102, - PR_OFFLINE_MESSAGE_ENTRYID_ERROR = 0x6627000a, - PR_GW_MTSIN_ENTRYID = 0x66280102, - PR_GW_MTSIN_ENTRYID_ERROR = 0x6628000a, - PR_GW_MTSOUT_ENTRYID = 0x66290102, - PR_GW_MTSOUT_ENTRYID_ERROR = 0x6629000a, - PR_TRANSFER_ENABLED = 0x662a000b, - PR_TRANSFER_ENABLED_ERROR = 0x662a000a, - PR_TEST_LINE_SPEED = 0x662b0102, - PR_TEST_LINE_SPEED_ERROR = 0x662b000a, - PR_HIERARCHY_SYNCHRONIZER = 0x662c000d, - PR_HIERARCHY_SYNCHRONIZER_ERROR = 0x662c000a, - PR_CONTENTS_SYNCHRONIZER = 0x662d000d, - PR_CONTENTS_SYNCHRONIZER_ERROR = 0x662d000a, - PR_COLLECTOR = 0x662e000d, - PR_COLLECTOR_ERROR = 0x662e000a, - PR_FAST_TRANSFER = 0x662f000d, - PR_FAST_TRANSFER_ERROR = 0x662f000a, - PR_IPM_FAVORITES_ENTRYID = 0x66300102, - PR_IPM_FAVORITES_ENTRYID_ERROR = 0x6630000a, - PR_IPM_PUBLIC_FOLDERS_ENTRYID = 0x66310102, - PR_IPM_PUBLIC_FOLDERS_ENTRYID_ERROR = 0x6631000a, - PR_STORE_OFFLINE = 0x6632000b, - PR_STORE_OFFLINE_ERROR = 0x6632000a, - PR_CHANGE_ADVISOR = 0x6634000d, - PR_CHANGE_ADVISOR_ERROR = 0x6634000a, - PR_FAVORITES_DEFAULT_NAME = 0x6635001e, - PR_FAVORITES_DEFAULT_NAME_UNICODE = 0x6635001f, - PR_FAVORITES_DEFAULT_NAME_ERROR = 0x6635000a, - PR_SYS_CONFIG_FOLDER_ENTRYID = 0x66360102, - PR_SYS_CONFIG_FOLDER_ENTRYID_ERROR = 0x6636000a, - PR_CHANGE_NOTIFICATION_GUID = 0x66370048, - PR_CHANGE_NOTIFICATION_GUID_ERROR = 0x6637000a, - PR_FOLDER_CHILD_COUNT = 0x66380003, - PR_FOLDER_CHILD_COUNT_ERROR = 0x6638000a, - PR_RIGHTS = 0x66390003, - PR_RIGHTS_ERROR = 0x6639000a, - PR_HAS_RULES = 0x663a000b, - PR_HAS_RULES_ERROR = 0x663a000a, - PR_ADDRESS_BOOK_ENTRYID = 0x663b0102, - PR_ADDRESS_BOOK_ENTRYID_ERROR = 0x663b000a, - PR_PUBLIC_FOLDER_ENTRYID = 0x663c0102, - PR_PUBLIC_FOLDER_ENTRYID_ERROR = 0x663c000a, - PR_OFFLINE_FLAGS = 0x663d0003, - PR_OFFLINE_FLAGS_ERROR = 0x663d000a, - PR_HIERARCHY_CHANGE_NUM = 0x663e0003, - PR_HIERARCHY_CHANGE_NUM_ERROR = 0x663e000a, - PR_HAS_MODERATOR_RULES = 0x663f000b, - PR_HAS_MODERATOR_RULES_ERROR = 0x663f000a, - PR_DELETED_MSG_COUNT = 0x66400003, - PR_DELETED_MSG_COUNT_ERROR = 0x6640000a, - PR_DELETED_FOLDER_COUNT = 0x66410003, - PR_DELETED_FOLDER_COUNT_ERROR = 0x6641000a, - PR_OLDEST_DELETED_ON = 0x66420040, - PR_OLDEST_DELETED_ON_ERROR = 0x6642000a, - PR_DELETED_ASSOC_MSG_COUNT = 0x66430003, - PR_DELETED_ASSOC_MSG_COUNT_ERROR = 0x6643000a, - PR_REPLICA_SERVER = 0x6644001e, - PR_REPLICA_SERVER_UNICODE = 0x6644001f, - PR_REPLICA_SERVER_ERROR = 0x6644000a, - PR_CLIENT_ACTIONS = 0x66450102, - PR_CLIENT_ACTIONS_ERROR = 0x6645000a, - PR_DAM_ORIGINAL_ENTRYID = 0x66460102, - PR_DAM_ORIGINAL_ENTRYID_ERROR = 0x6646000a, - PR_DAM_BACK_PATCHED = 0x6647000b, - PR_DAM_BACK_PATCHED_ERROR = 0x6647000a, - PR_RULE_ERROR = 0x66480003, - PR_RULE_ERROR_ERROR = 0x6648000a, - PR_RULE_ACTION_TYPE = 0x66490003, - PR_RULE_ACTION_TYPE_ERROR = 0x6649000a, - PR_HAS_NAMED_PROPERTIES = 0x664a000b, - PR_HAS_NAMED_PROPERTIES_ERROR = 0x664a000a, - PR_REPLICA_VERSION = 0x664b0014, - PR_REPLICA_VERSION_ERROR = 0x664b000a, - PR_RULE_ACTION_NUMBER = 0x66500003, - PR_RULE_ACTION_NUMBER_ERROR = 0x6650000a, - PR_RULE_FOLDER_ENTRYID = 0x66510102, - PR_RULE_FOLDER_ENTRYID_ERROR = 0x6651000a, - PR_ACTIVE_USER_ENTRYID = 0x66520102, - PR_ACTIVE_USER_ENTRYID_ERROR = 0x6652000a, - PR_0X400_ENVELOPE_TYPE = 0x66530003, - PR_0X400_ENVELOPE_TYPE_ERROR = 0x6653000a, - PR_MSG_FOLD_TIME = 0x66540040, - PR_MSG_FOLD_TIME_ERROR = 0x6654000a, - PR_ICS_CHANGE_KEY = 0x66550102, - PR_ICS_CHANGE_KEY_ERROR = 0x6655000a, - PR_GW_ADMIN_OPERATIONS = 0x66580003, - PR_GW_ADMIN_OPERATIONS_ERROR = 0x6658000a, - PR_INTERNET_CONTENT = 0x66590102, - PR_INTERNET_CONTENT_ERROR = 0x6659000a, - PR_HAS_ATTACH_FROM_IMAIL = 0x665a000b, - PR_HAS_ATTACH_FROM_IMAIL_ERROR = 0x665a000a, - PR_ORIGINATOR_NAME = 0x665b001e, - PR_ORIGINATOR_NAME_UNICODE = 0x665b001f, - PR_ORIGINATOR_NAME_ERROR = 0x665b000a, - PR_ORIGINATOR_ADDR = 0x665c001e, - PR_ORIGINATOR_ADDR_UNICODE = 0x665c001f, - PR_ORIGINATOR_ADDR_ERROR = 0x665c000a, - PR_ORIGINATOR_ADDRTYPE = 0x665d001e, - PR_ORIGINATOR_ADDRTYPE_UNICODE = 0x665d001f, - PR_ORIGINATOR_ADDRTYPE_ERROR = 0x665d000a, - PR_ORIGINATOR_ENTRYID = 0x665e0102, - PR_ORIGINATOR_ENTRYID_ERROR = 0x665e000a, - PR_ARRIVAL_TIME = 0x665f0040, - PR_ARRIVAL_TIME_ERROR = 0x665f000a, - PR_TRACE_INFO = 0x66600102, - PR_TRACE_INFO_ERROR = 0x6660000a, - PR_SUBJECT_TRACE_INFO = 0x66610102, - PR_SUBJECT_TRACE_INFO_ERROR = 0x6661000a, - PR_RECIPIENT_NUMBER = 0x66620003, - PR_RECIPIENT_NUMBER_ERROR = 0x6662000a, - PR_MTS_SUBJECT_ID = 0x66630102, - PR_MTS_SUBJECT_ID_ERROR = 0x6663000a, - PR_REPORT_DESTINATION_NAME = 0x6664001e, - PR_REPORT_DESTINATION_NAME_UNICODE = 0x6664001f, - PR_REPORT_DESTINATION_NAME_ERROR = 0x6664000a, - PR_REPORT_DESTINATION_ENTRYID = 0x66650102, - PR_REPORT_DESTINATION_ENTRYID_ERROR = 0x6665000a, - PR_CONTENT_SEARCH_KEY = 0x66660102, - PR_CONTENT_SEARCH_KEY_ERROR = 0x6666000a, - PR_FOREIGN_ID = 0x66670102, - PR_FOREIGN_ID_ERROR = 0x6667000a, - PR_FOREIGN_REPORT_ID = 0x66680102, - PR_FOREIGN_REPORT_ID_ERROR = 0x6668000a, - PR_FOREIGN_SUBJECT_ID = 0x66690102, - PR_FOREIGN_SUBJECT_ID_ERROR = 0x6669000a, - PR_INTERNAL_TRACE_INFO = 0x666a0102, - PR_INTERNAL_TRACE_INFO_ERROR = 0x666a000a, - PR_IN_CONFLICT = 0x666c000b, - PR_IN_CONFLICT_ERROR = 0x666c000a, - PR_LONGTERM_ENTRYID_FROM_TABLE = 0x66700102, - PR_LONGTERM_ENTRYID_FROM_TABLE_ERROR = 0x6670000a, - PR_MEMBER_ID = 0x66710014, - PR_MEMBER_ID_ERROR = 0x6671000a, - PR_MEMBER_NAME = 0x6672001e, - PR_MEMBER_NAME_UNICODE = 0x6672001f, - PR_MEMBER_NAME_ERROR = 0x6672000a, - PR_MEMBER_RIGHTS = 0x66730003, - PR_MEMBER_RIGHTS_ERROR = 0x6673000a, - PR_RULE_ID = 0x66740014, - PR_RULE_ID_ERROR = 0x6674000a, - PR_RULE_IDS = 0x66750102, - PR_RULE_IDS_ERROR = 0x6675000a, - PR_RULE_SEQUENCE = 0x66760003, - PR_RULE_SEQUENCE_ERROR = 0x6676000a, - PR_RULE_STATE = 0x66770003, - PR_RULE_STATE_ERROR = 0x6677000a, - PR_RULE_USER_FLAGS = 0x66780003, - PR_RULE_USER_FLAGS_ERROR = 0x6678000a, - PR_RULE_CONDITION = 0x667900fd, - PR_RULE_CONDITION_ERROR = 0x6679000a, - PR_PROFILE_MOAB = 0x667b001e, - PR_PROFILE_MOAB_UNICODE = 0x667b001f, - PR_PROFILE_MOAB_ERROR = 0x667b000a, - PR_PROFILE_MOAB_GUID = 0x667c001e, - PR_PROFILE_MOAB_GUID_UNICODE = 0x667c001f, - PR_PROFILE_MOAB_GUID_ERROR = 0x667c000a, - PR_PROFILE_MOAB_SEQ = 0x667d0003, - PR_PROFILE_MOAB_SEQ_ERROR = 0x667d000a, - PR_IMPLIED_RESTRICTIONS = 0x667f1102, - PR_IMPLIED_RESTRICTIONS_ERROR = 0x667f000a, - PR_RULE_ACTIONS = 0x668000fe, - PR_RULE_ACTIONS_ERROR = 0x6680000a, - PR_RULE_PROVIDER = 0x6681001e, - PR_RULE_PROVIDER_UNICODE = 0x6681001f, - PR_RULE_PROVIDER_ERROR = 0x6681000a, - PR_RULE_NAME = 0x6682001e, - PR_RULE_NAME_UNICODE = 0x6682001f, - PR_RULE_NAME_ERROR = 0x6682000a, - PR_RULE_LEVEL = 0x66830003, - PR_RULE_LEVEL_ERROR = 0x6683000a, - PR_RULE_PROVIDER_DATA = 0x66840102, - PR_RULE_PROVIDER_DATA_ERROR = 0x6684000a, - PR_LAST_FULL_BACKUP = 0x66850040, - PR_LAST_FULL_BACKUP_ERROR = 0x6685000a, - PR_PROFILE_ADDR_INFO = 0x66870102, - PR_PROFILE_ADDR_INFO_ERROR = 0x6687000a, - PR_PROFILE_OPTIONS_DATA = 0x66890102, - PR_PROFILE_OPTIONS_DATA_ERROR = 0x6689000a, - PR_EVENTS_ROOT_FOLDER_ENTRYID = 0x668a0102, - PR_EVENTS_ROOT_FOLDER_ENTRYID_ERROR = 0x668a000a, - PR_INBOUND_NEWSFEED_DN = 0x668d001e, - PR_INBOUND_NEWSFEED_DN_UNICODE = 0x668d001f, - PR_INBOUND_NEWSFEED_DN_ERROR = 0x668d000a, - PR_OUTBOUND_NEWSFEED_DN = 0x668e001e, - PR_OUTBOUND_NEWSFEED_DN_UNICODE = 0x668e001f, - PR_OUTBOUND_NEWSFEED_DN_ERROR = 0x668e000a, - PR_DELETED_ON = 0x668f0040, - PR_DELETED_ON_ERROR = 0x668f000a, - PR_REPLICATION_STYLE = 0x66900003, - PR_REPLICATION_STYLE_ERROR = 0x6690000a, - PR_REPLICATION_SCHEDULE = 0x66910102, - PR_REPLICATION_SCHEDULE_ERROR = 0x6691000a, - PR_REPLICATION_MESSAGE_PRIORITY = 0x66920003, - PR_REPLICATION_MESSAGE_PRIORITY_ERROR = 0x6692000a, - PR_OVERALL_MSG_AGE_LIMIT = 0x66930003, - PR_OVERALL_MSG_AGE_LIMIT_ERROR = 0x6693000a, - PR_REPLICATION_ALWAYS_INTERVAL = 0x66940003, - PR_REPLICATION_ALWAYS_INTERVAL_ERROR = 0x6694000a, - PR_REPLICATION_MSG_SIZE = 0x66950003, - PR_REPLICATION_MSG_SIZE_ERROR = 0x6695000a, - PR_IS_NEWSGROUP_ANCHOR = 0x6696000b, - PR_IS_NEWSGROUP_ANCHOR_ERROR = 0x6696000a, - PR_IS_NEWSGROUP = 0x6697000b, - PR_IS_NEWSGROUP_ERROR = 0x6697000a, - PR_REPLICA_LIST = 0x66980102, - PR_REPLICA_LIST_ERROR = 0x6698000a, - PR_OVERALL_AGE_LIMIT = 0x66990003, - PR_OVERALL_AGE_LIMIT_ERROR = 0x6699000a, - PR_INTERNET_CHARSET = 0x669a001e, - PR_INTERNET_CHARSET_UNICODE = 0x669a001f, - PR_INTERNET_CHARSET_ERROR = 0x669a000a, - PR_DELETED_MESSAGE_SIZE_EXTENDED = 0x669b0014, - PR_DELETED_MESSAGE_SIZE_EXTENDED_ERROR = 0x669b000a, - PR_DELETED_NORMAL_MESSAGE_SIZE_EXTENDED = 0x669c0014, - PR_DELETED_NORMAL_MESSAGE_SIZE_EXTENDED_ERROR = 0x669c000a, - PR_DELETED_ASSOC_MESSAGE_SIZE_EXTENDED = 0x669d0014, - PR_DELETED_ASSOC_MESSAGE_SIZE_EXTENDED_ERROR = 0x669d000a, - PR_SECURE_IN_SITE = 0x669e000b, - PR_SECURE_IN_SITE_ERROR = 0x669e000a, - PR_NT_USER_NAME = 0x66a0001e, - PR_NT_USER_NAME_UNICODE = 0x66a0001f, - PR_NT_USER_NAME_ERROR = 0x66a0000a, - PR_LOCALE_ID = 0x66a10003, - PR_LOCALE_ID_ERROR = 0x66a1000a, - PR_LAST_LOGON_TIME = 0x66a20040, - PR_LAST_LOGON_TIME_ERROR = 0x66a2000a, - PR_LAST_LOGOFF_TIME = 0x66a30040, - PR_LAST_LOGOFF_TIME_ERROR = 0x66a3000a, - PR_STORAGE_LIMIT_INFORMATION = 0x66a40003, - PR_STORAGE_LIMIT_INFORMATION_ERROR = 0x66a4000a, - PR_NEWSGROUP_COMPONENT = 0x66a5001e, - PR_NEWSGROUP_COMPONENT_UNICODE = 0x66a5001f, - PR_NEWSGROUP_COMPONENT_ERROR = 0x66a5000a, - PR_NEWSFEED_INFO = 0x66a60102, - PR_NEWSFEED_INFO_ERROR = 0x66a6000a, - PR_INTERNET_NEWSGROUP_NAME = 0x66a7001e, - PR_INTERNET_NEWSGROUP_NAME_UNICODE = 0x66a7001f, - PR_INTERNET_NEWSGROUP_NAME_ERROR = 0x66a7000a, - PR_FOLDER_FLAGS = 0x66a80003, - PR_FOLDER_FLAGS_ERROR = 0x66a8000a, - PR_LAST_ACCESS_TIME = 0x66a90040, - PR_LAST_ACCESS_TIME_ERROR = 0x66a9000a, - PR_RESTRICTION_COUNT = 0x66aa0003, - PR_RESTRICTION_COUNT_ERROR = 0x66aa000a, - PR_CATEG_COUNT = 0x66ab0003, - PR_CATEG_COUNT_ERROR = 0x66ab000a, - PR_CACHED_COLUMN_COUNT = 0x66ac0003, - PR_CACHED_COLUMN_COUNT_ERROR = 0x66ac000a, - PR_NORMAL_MSG_W_ATTACH_COUNT = 0x66ad0003, - PR_NORMAL_MSG_W_ATTACH_COUNT_ERROR = 0x66ad000a, - PR_ASSOC_MSG_W_ATTACH_COUNT = 0x66ae0003, - PR_ASSOC_MSG_W_ATTACH_COUNT_ERROR = 0x66ae000a, - PR_RECIPIENT_ON_NORMAL_MSG_COUNT = 0x66af0003, - PR_RECIPIENT_ON_NORMAL_MSG_COUNT_ERROR = 0x66af000a, - PR_RECIPIENT_ON_ASSOC_MSG_COUNT = 0x66b00003, - PR_RECIPIENT_ON_ASSOC_MSG_COUNT_ERROR = 0x66b0000a, - PR_ATTACH_ON_NORMAL_MSG_COUNT = 0x66b10003, - PR_ATTACH_ON_NORMAL_MSG_COUNT_ERROR = 0x66b1000a, - PR_ATTACH_ON_ASSOC_MSG_COUNT = 0x66b20003, - PR_ATTACH_ON_ASSOC_MSG_COUNT_ERROR = 0x66b2000a, - PR_NORMAL_MESSAGE_SIZE = 0x66b30003, - PR_NORMAL_MESSAGE_SIZE_ERROR = 0x66b3000a, - PR_NORMAL_MESSAGE_SIZE_EXTENDED = 0x66b30014, - PR_ASSOC_MESSAGE_SIZE = 0x66b40003, - PR_ASSOC_MESSAGE_SIZE_ERROR = 0x66b4000a, - PR_ASSOC_MESSAGE_SIZE_EXTENDED = 0x66b40014, - PR_FOLDER_PATHNAME = 0x66b5001e, - PR_FOLDER_PATHNAME_UNICODE = 0x66b5001f, - PR_FOLDER_PATHNAME_ERROR = 0x66b5000a, - PR_OWNER_COUNT = 0x66b60003, - PR_OWNER_COUNT_ERROR = 0x66b6000a, - PR_CONTACT_COUNT = 0x66b70003, - PR_CONTACT_COUNT_ERROR = 0x66b7000a, - PR_CODE_PAGE_ID = 0x66c30003, - PR_CODE_PAGE_ID_ERROR = 0x66c3000a, - PR_RETENTION_AGE_LIMIT = 0x66c40003, - PR_RETENTION_AGE_LIMIT_ERROR = 0x66c4000a, - PR_DISABLE_PERUSER_READ = 0x66c5000b, - PR_DISABLE_PERUSER_READ_ERROR = 0x66c5000a, - PR_INTERNET_PARSE_STATE = 0x66c60102, - PR_INTERNET_PARSE_STATE_ERROR = 0x66c6000a, - PR_INTERNET_MESSAGE_INFO = 0x66c70102, - PR_INTERNET_MESSAGE_INFO_ERROR = 0x66c7000a, - PR_PST_PATH = 0x6700001e, - PR_PST_PATH_UNICODE = 0x6700001f, - PR_PST_PATH_ERROR = 0x6700000a, - PR_PST_REMEMBER_PW = 0x6701000b, - PR_PST_REMEMBER_PW_ERROR = 0x6701000a, - PR_OST_ENCRYPTION = 0x67020003, - PR_OST_ENCRYPTION_ERROR = 0x6702000a, - PR_PST_PW_SZ_OLD = 0x6703001e, - PR_PST_PW_SZ_OLD_UNICODE = 0x6703001f, - PR_PST_PW_SZ_OLD_ERROR = 0x6703000a, - PR_PST_PW_SZ_NEW = 0x6704001e, - PR_PST_PW_SZ_NEW_UNICODE = 0x6704001f, - PR_PST_PW_SZ_NEW_ERROR = 0x6704000a, - PR_SORT_LOCALE_ID = 0x67050003, - PR_SORT_LOCALE_ID_ERROR = 0x6705000a, - PR_URL_NAME = 0x6707001e, - PR_URL_NAME_UNICODE = 0x6707001f, - PR_URL_NAME_ERROR = 0x6707000a, - PR_LOCAL_COMMIT_TIME = 0x67090040, - PR_LOCAL_COMMIT_TIME_ERROR = 0x6709000a, - PR_LOCAL_COMMIT_TIME_MAX = 0x670a0040, - PR_LOCAL_COMMIT_TIME_MAX_ERROR = 0x670a000a, - PR_DELETED_COUNT_TOTAL = 0x670b0003, - PR_DELETED_COUNT_TOTAL_ERROR = 0x670b000a, - PR_AUTO_RESET = 0x670c0048, - PR_AUTO_RESET_ERROR = 0x670c000a, - PR_URL_COMP_NAME_HASH = 0x67100003, - PR_URL_COMP_NAME_HASH_ERROR = 0x6710000a, - PR_MSG_FOLDER_TEMPLATE_RES_2 = 0x67110003, - PR_MSG_FOLDER_TEMPLATE_RES_2_ERROR = 0x6711000a, - PR_RANK = 0x67120003, - PR_RANK_ERROR = 0x6712000a, - PR_MSG_FOLDER_TEMPLATE_RES_4 = 0x6713000b, - PR_MSG_FOLDER_TEMPLATE_RES_4_ERROR = 0x6713000a, - PR_MSG_FOLDER_TEMPLATE_RES_5 = 0x6714000b, - PR_MSG_FOLDER_TEMPLATE_RES_5_ERROR = 0x6714000a, - PR_MSG_FOLDER_TEMPLATE_RES_6 = 0x6715000b, - PR_MSG_FOLDER_TEMPLATE_RES_6_ERROR = 0x6715000a, - PR_MSG_FOLDER_TEMPLATE_RES_7 = 0x67160102, - PR_MSG_FOLDER_TEMPLATE_RES_7_ERROR = 0x6716000a, - PR_MSG_FOLDER_TEMPLATE_RES_8 = 0x67170102, - PR_MSG_FOLDER_TEMPLATE_RES_8_ERROR = 0x6717000a, - PR_MSG_FOLDER_TEMPLATE_RES_9 = 0x67180102, - PR_MSG_FOLDER_TEMPLATE_RES_9_ERROR = 0x6718000a, - PR_MSG_FOLDER_TEMPLATE_RES_10 = 0x6719001e, - PR_MSG_FOLDER_TEMPLATE_RES_10_UNICODE = 0x6719001f, - PR_MSG_FOLDER_TEMPLATE_RES_10_ERROR = 0x6719000a, - PR_MSG_FOLDER_TEMPLATE_RES_11 = 0x671a001e, - PR_MSG_FOLDER_TEMPLATE_RES_11_UNICODE = 0x671a001f, - PR_MSG_FOLDER_TEMPLATE_RES_11_ERROR = 0x671a000a, - PR_MSG_FOLDER_TEMPLATE_RES_12 = 0x671b001e, - PR_MSG_FOLDER_TEMPLATE_RES_12_UNICODE = 0x671b001f, - PR_MSG_FOLDER_TEMPLATE_RES_12_ERROR = 0x671b000a, - PR_PF_PLATINUM_HOME_MDB = 0x671e000b, - PR_PF_PLATINUM_HOME_MDB_ERROR = 0x671e000a, - PR_PF_PROXY_REQUIRED = 0x671f000b, - PR_PF_PROXY_REQUIRED_ERROR = 0x671f000a, - PR_INTERNET_FREE_DOC_INFO = 0x67200102, - PR_INTERNET_FREE_DOC_INFO_ERROR = 0x6720000a, - PR_PF_OVER_HARD_QUOTA_LIMIT = 0x67210003, - PR_PF_OVER_HARD_QUOTA_LIMIT_ERROR = 0x6721000a, - PR_PF_MSG_SIZE_LIMIT = 0x67220003, - PR_PF_MSG_SIZE_LIMIT_ERROR = 0x6722000a, - PR_CONNECTION_MODULUS = 0x67430003, - PR_CONNECTION_MODULUS_ERROR = 0x6743000a, - PR_DELIVER_TO_DN = 0x6744001e, - PR_DELIVER_TO_DN_UNICODE = 0x6744001f, - PR_DELIVER_TO_DN_ERROR = 0x6744000a, - PR_MIME_SIZE = 0x67460003, - PR_MIME_SIZE_ERROR = 0x6746000a, - PR_FILE_SIZE_EXTENDED = 0x67470014, - PR_FILE_SIZE_EXTENDED_ERROR = 0x6747000a, - PR_FID = 0x67480014, - PR_FID_ERROR = 0x6748000a, - PR_PARENT_FID = 0x67490014, - PR_PARENT_FID_ERROR = 0x6749000a, - PR_MID = 0x674a0014, - PR_MID_ERROR = 0x674a000a, - PR_CATEG_ID = 0x674b0014, - PR_CATEG_ID_ERROR = 0x674b000a, - PR_PARENT_CATEG_ID = 0x674c0014, - PR_PARENT_CATEG_ID_ERROR = 0x674c000a, - PR_INST_ID = 0x674d0014, - PR_INST_ID_ERROR = 0x674d000a, - PR_INSTANCE_NUM = 0x674e0003, - PR_INSTANCE_NUM_ERROR = 0x674e000a, - PR_ADDRBOOK_MID = 0x674f0014, - PR_ADDRBOOK_MID_ERROR = 0x674f000a, - PR_ICS_NOTIF = 0x67500003, - PR_ICS_NOTIF_ERROR = 0x6750000a, - PR_ARTICLE_NUM_NEXT = 0x67510003, - PR_ARTICLE_NUM_NEXT_ERROR = 0x6751000a, - PR_IMAP_LAST_ARTICLE_ID = 0x67520003, - PR_IMAP_LAST_ARTICLE_ID_ERROR = 0x6752000a, - PR_NOT_822_RENDERABLE = 0x6753000b, - PR_NOT_822_RENDERABLE_ERROR = 0x6753000a, - PR_LTID = 0x67580102, - PR_LTID_ERROR = 0x6758000a, - PR_CN_EXPORT = 0x67590102, - PR_CN_EXPORT_ERROR = 0x6759000a, - PR_PCL_EXPORT = 0x675a0102, - PR_PCL_EXPORT_ERROR = 0x675a000a, - PR_CN_MV_EXPORT = 0x675b1102, - PR_CN_MV_EXPORT_ERROR = 0x675b000a, - PR_PF_QUOTA_STYLE = 0x67790003, - PR_PF_QUOTA_STYLE_ERROR = 0x6779000a, - PR_PF_STORAGE_QUOTA = 0x677b0003, - PR_PF_STORAGE_QUOTA_ERROR = 0x677b000a, - PR_SEARCH_FLAGS = 0x67830003, - PR_SEARCH_FLAGS_ERROR = 0x6783000a, - PR_ASSOCIATED = 0x67aa000b, - PR_ASSOCIATED_ERROR = 0x67aa000a, - PR_PROFILE_SECURE_MAILBOX = 0x67f00102, - PR_PROFILE_SECURE_MAILBOX_ERROR = 0x67f0000a, - PR_MAILBEAT_BOUNCE_SERVER = 0x6800001e, - PR_MAILBEAT_BOUNCE_SERVER_UNICODE = 0x6800001f, - PR_MAILBEAT_BOUNCE_SERVER_ERROR = 0x6800000a, - PR_MAILBEAT_REQUEST_SENT = 0x68010040, - PR_MAILBEAT_REQUEST_SENT_ERROR = 0x6801000a, - PR_USENET_SITE_NAME = 0x6802001e, - PR_USENET_SITE_NAME_UNICODE = 0x6802001f, - PR_USENET_SITE_NAME_ERROR = 0x6802000a, - PR_MAILBEAT_REQUEST_RECEIVED = 0x68030040, - PR_MAILBEAT_REQUEST_RECEIVED_ERROR = 0x6803000a, - PR_MAILBEAT_REQUEST_PROCESSED = 0x68040040, - PR_MAILBEAT_REQUEST_PROCESSED_ERROR = 0x6804000a, - PR_MAILBEAT_REPLY_SENT = 0x68060040, - PR_MAILBEAT_REPLY_SENT_ERROR = 0x6806000a, - PR_MAILBEAT_REPLY_SUBMIT = 0x68070040, - PR_MAILBEAT_REPLY_SUBMIT_ERROR = 0x6807000a, - PR_MAILBEAT_REPLY_RECEIVED = 0x68080040, - PR_MAILBEAT_REPLY_RECEIVED_ERROR = 0x6808000a, - PR_MAILBEAT_REPLY_PROCESSED = 0x68090040, - PR_MAILBEAT_REPLY_PROCESSED_ERROR = 0x6809000a, - PR_DELEGATES_DISPLAY_NAMES = 0x6844101e, - PR_DELEGATES_DISPLAY_NAMES_UNICODE = 0x6844101f, - PR_DELEGATES_DISPLAY_NAMES_ERROR = 0x6844000a, - PR_DELEGATES_ENTRYIDS = 0x68451102, - PR_DELEGATES_ENTRYIDS_ERROR = 0x6845000a, - PR_FREEBUSY_START_RANGE = 0x68470003, - PR_FREEBUSY_START_RANGE_ERROR = 0x6847000a, - PR_FREEBUSY_END_RANGE = 0x68480003, - PR_FREEBUSY_END_RANGE_ERROR = 0x6848000a, - PR_FREEBUSY_EMAIL_ADDRESS = 0x6849001e, - PR_FREEBUSY_EMAIL_ADDRESS_UNICODE = 0x6849001f, - PR_FREEBUSY_EMAIL_ADDRESS_ERROR = 0x6849000a, - PR_FREEBUSY_ALL_MONTHS = 0x684f1003, - PR_FREEBUSY_ALL_MONTHS_ERROR = 0x684f000a, - PR_FREEBUSY_ALL_EVENTS = 0x68501102, - PR_FREEBUSY_ALL_EVENTS_ERROR = 0x6850000a, - PR_FREEBUSY_TENTATIVE_MONTHS = 0x68511003, - PR_FREEBUSY_TENTATIVE_MONTHS_ERROR = 0x6851000a, - PR_FREEBUSY_TENTATIVE_EVENTS = 0x68521102, - PR_FREEBUSY_TENTATIVE_EVENTS_ERROR = 0x6852000a, - PR_FREEBUSY_BUSY_MONTHS = 0x68531003, - PR_FREEBUSY_BUSY_MONTHS_ERROR = 0x6853000a, - PR_FREEBUSY_BUSY_EVENTS = 0x68541102, - PR_FREEBUSY_BUSY_EVENTS_ERROR = 0x6854000a, - PR_FREEBUSY_OOF_MONTHS = 0x68551003, - PR_FREEBUSY_OOF_MONTHS_ERROR = 0x6855000a, - PR_FREEBUSY_OOF_EVENTS = 0x68561102, - PR_FREEBUSY_OOF_EVENTS_ERROR = 0x6856000a, - PR_FREEBUSY_LAST_MODIFIED = 0x68680040, - PR_FREEBUSY_LAST_MODIFIED_ERROR = 0x6868000a, - PR_FREEBUSY_NUM_MONTHS = 0x68690003, - PR_FREEBUSY_NUM_MONTHS_ERROR = 0x6869000a, - PR_DELEGATES_SEE_PRIVATE = 0x686b1003, - PR_DELEGATES_SEE_PRIVATE_ERROR = 0x686b000a, - PR_PERSONAL_FREEBUSY = 0x686c0102, - PR_PERSONAL_FREEBUSY_ERROR = 0x686c000a, - PR_PROCESS_MEETING_REQUESTS = 0x686d000b, - PR_PROCESS_MEETING_REQUESTS_ERROR = 0x686d000a, - PR_DECLINE_RECURRING_MEETING_REQUESTS = 0x686e000b, - PR_DECLINE_RECURRING_MEETING_REQUESTS_ERROR = 0x686e000a, - PR_DECLINE_CONFLICTING_MEETING_REQUESTS = 0x686f000b, - PR_DECLINE_CONFLICTING_MEETING_REQUESTS_ERROR = 0x686f000a, - PR_VD_BINARY = 0x70010102, - PR_VD_BINARY_ERROR = 0x7001000a, - PR_VD_STRINGS = 0x7002001e, - PR_VD_STRINGS_UNICODE = 0x7002001f, - PR_VD_STRINGS_ERROR = 0x7002000a, - PR_VD_FLAGS = 0x70030003, - PR_VD_FLAGS_ERROR = 0x7003000a, - PR_VD_LINK_TO = 0x70040102, - PR_VD_LINK_TO_ERROR = 0x7004000a, - PR_VD_VIEW_FOLDER = 0x70050102, - PR_VD_VIEW_FOLDER_ERROR = 0x7005000a, - PR_VD_NAME = 0x7006001e, - PR_VD_NAME_UNICODE = 0x7006001f, - PR_VD_NAME_ERROR = 0x7006000a, - PR_VD_VERSION = 0x70070003, - PR_VD_VERSION_ERROR = 0x7007000a, - PR_FAV_DISPLAY_NAME_A = 0x7c00001e, - PR_FAV_DISPLAY_NAME_A_UNICODE = 0x7c00001f, - PR_FAV_DISPLAY_NAME_A_ERROR = 0x7c00000a, - PR_FAV_PUBLIC_SOURCE_KEY = 0x7c020102, - PR_FAV_PUBLIC_SOURCE_KEY_ERROR = 0x7c02000a, - PR_OST_OSTID = 0x7c040102, - PR_OST_OSTID_ERROR = 0x7c04000a, - PR_STORE_SLOWLINK = 0x7c0a000b, - PR_STORE_SLOWLINK_ERROR = 0x7c0a000a, - PR_FAV_AUTOSUBFOLDERS = 0x7d010003, - PR_FAV_AUTOSUBFOLDERS_ERROR = 0x7d01000a, - PR_FAV_PARENT_SOURCE_KEY = 0x7d020102, - PR_FAV_PARENT_SOURCE_KEY_ERROR = 0x7d02000a, - PR_FAV_LEVEL_MASK = 0x7d030003, - PR_FAV_LEVEL_MASK_ERROR = 0x7d03000a, - PR_FAV_INHERIT_AUTO = 0x7d070003, - PR_FAV_INHERIT_AUTO_ERROR = 0x7d07000a, - PR_FAV_DEL_SUBS = 0x7d080102, - PR_FAV_DEL_SUBS_ERROR = 0x7d08000a, - PR_ATTACHMENT_LINKID = 0x7ffa0003, - PR_ATTACHMENT_LINKID_ERROR = 0x7ffa000a, - PR_EXCEPTION_STARTTIME = 0x7ffb0040, - PR_EXCEPTION_STARTTIME_ERROR = 0x7ffb000a, - PR_EXCEPTION_ENDTIME = 0x7ffc0040, - PR_EXCEPTION_ENDTIME_ERROR = 0x7ffc000a, - PR_ATTACHMENT_FLAGS = 0x7ffd0003, - PR_ATTACHMENT_FLAGS_ERROR = 0x7ffd000a, - PR_ATTACHMENT_HIDDEN = 0x7ffe000b, - PR_ATTACHMENT_HIDDEN_ERROR = 0x7ffe000a, - PR_EMS_AB_DISPLAY_NAME_OVERRIDE = 0x8001000b, - PR_EMS_AB_DISPLAY_NAME_OVERRIDE_ERROR = 0x8001000a, - PR_EMS_AB_CA_CERTIFICATE = 0x80031102, - PR_EMS_AB_CA_CERTIFICATE_ERROR = 0x8003000a, - PR_EMS_AB_FOLDER_PATHNAME = 0x8004001e, - PR_EMS_AB_FOLDER_PATHNAME_UNICODE = 0x8004001f, - PR_EMS_AB_FOLDER_PATHNAME_ERROR = 0x8004000a, - PR_EMS_AB_MANAGER = 0x8005000d, - PR_EMS_AB_MANAGER_ERROR = 0x8005000a, - PR_EMS_AB_MANAGER_T = 0x8005001e, - PR_EMS_AB_MANAGER_T_UNICODE = 0x8005001f, - PR_EMS_AB_HOME_MDB_O = 0x8006000d, - PR_EMS_AB_HOME_MDB_O_ERROR = 0x8006000a, - PR_EMS_AB_HOME_MDB = 0x8006001e, - PR_EMS_AB_HOME_MDB_UNICODE = 0x8006001f, - PR_EMS_AB_HOME_MTA_O = 0x8007000d, - PR_EMS_AB_HOME_MTA_O_ERROR = 0x8007000a, - PR_EMS_AB_HOME_MTA = 0x8007001e, - PR_EMS_AB_HOME_MTA_UNICODE = 0x8007001f, - PR_EMS_AB_IS_MEMBER_OF_DL = 0x8008000d, - PR_EMS_AB_IS_MEMBER_OF_DL_ERROR = 0x8008000a, - PR_EMS_AB_IS_MEMBER_OF_DL_T = 0x8008001e, - PR_EMS_AB_IS_MEMBER_OF_DL_T_UNICODE = 0x8008001f, - PR_EMS_AB_MEMBER = 0x8009000d, - PR_EMS_AB_MEMBER_ERROR = 0x8009000a, - PR_EMS_AB_MEMBER_T = 0x8009001e, - PR_EMS_AB_MEMBER_T_UNICODE = 0x8009001f, - PR_EMS_AB_AUTOREPLY_MESSAGE = 0x800a001e, - PR_EMS_AB_AUTOREPLY_MESSAGE_UNICODE = 0x800a001f, - PR_EMS_AB_AUTOREPLY_MESSAGE_ERROR = 0x800a000a, - PR_EMS_AB_AUTOREPLY = 0x800b000b, - PR_EMS_AB_AUTOREPLY_ERROR = 0x800b000a, - PR_EMS_AB_OWNER_O = 0x800c000d, - PR_EMS_AB_OWNER_O_ERROR = 0x800c000a, - PR_EMS_AB_OWNER = 0x800c001e, - PR_EMS_AB_OWNER_UNICODE = 0x800c001f, - PR_EMS_AB_KM_SERVER_O = 0x800d000d, - PR_EMS_AB_KM_SERVER_O_ERROR = 0x800d000a, - PR_EMS_AB_KM_SERVER = 0x800d001e, - PR_EMS_AB_KM_SERVER_UNICODE = 0x800d001f, - PR_EMS_AB_REPORTS = 0x800e000d, - PR_EMS_AB_REPORTS_ERROR = 0x800e000a, - PR_EMS_AB_PROXY_ADDRESSES = 0x800f101e, - PR_EMS_AB_PROXY_ADDRESSES_UNICODE = 0x800f101f, - PR_EMS_AB_PROXY_ADDRESSES_ERROR = 0x800f000a, - PR_EMS_AB_HELP_DATA32 = 0x80100102, - PR_EMS_AB_HELP_DATA32_ERROR = 0x8010000a, - PR_EMS_AB_TARGET_ADDRESS = 0x8011001e, - PR_EMS_AB_TARGET_ADDRESS_UNICODE = 0x8011001f, - PR_EMS_AB_TARGET_ADDRESS_ERROR = 0x8011000a, - PR_EMS_AB_TELEPHONE_NUMBER = 0x8012101e, - PR_EMS_AB_TELEPHONE_NUMBER_UNICODE = 0x8012101f, - PR_EMS_AB_TELEPHONE_NUMBER_ERROR = 0x8012000a, - PR_EMS_AB_NT_SECURITY_DESCRIPTOR = 0x80130102, - PR_EMS_AB_NT_SECURITY_DESCRIPTOR_ERROR = 0x8013000a, - PR_EMS_AB_HOME_MDB_BL_O = 0x8014000d, - PR_EMS_AB_HOME_MDB_BL_O_ERROR = 0x8014000a, - PR_EMS_AB_HOME_MDB_BL = 0x8014101e, - PR_EMS_AB_HOME_MDB_BL_UNICODE = 0x8014101f, - PR_EMS_AB_PUBLIC_DELEGATES = 0x8015000d, - PR_EMS_AB_PUBLIC_DELEGATES_ERROR = 0x8015000a, - PR_EMS_AB_PUBLIC_DELEGATES_T = 0x8015001e, - PR_EMS_AB_PUBLIC_DELEGATES_T_UNICODE = 0x8015001f, - PR_EMS_AB_CERTIFICATE_REVOCATION_LIST = 0x80160102, - PR_EMS_AB_CERTIFICATE_REVOCATION_LIST_ERROR = 0x8016000a, - PR_EMS_AB_ADDRESS_ENTRY_DISPLAY_TABLE = 0x80170102, - PR_EMS_AB_ADDRESS_ENTRY_DISPLAY_TABLE_ERROR = 0x8017000a, - PR_EMS_AB_ADDRESS_SYNTAX = 0x80180102, - PR_EMS_AB_ADDRESS_SYNTAX_ERROR = 0x8018000a, - PR_EMS_AB_BUSINESS_ROLES = 0x80230102, - PR_EMS_AB_BUSINESS_ROLES_ERROR = 0x8023000a, - PR_EMS_AB_OWNER_BL_O = 0x8024000d, - PR_EMS_AB_OWNER_BL_O_ERROR = 0x8024000a, - PR_EMS_AB_OWNER_BL = 0x8024101e, - PR_EMS_AB_OWNER_BL_UNICODE = 0x8024101f, - PR_EMS_AB_CROSS_CERTIFICATE_PAIR = 0x80251102, - PR_EMS_AB_CROSS_CERTIFICATE_PAIR_ERROR = 0x8025000a, - PR_EMS_AB_AUTHORITY_REVOCATION_LIST = 0x80261102, - PR_EMS_AB_AUTHORITY_REVOCATION_LIST_ERROR = 0x8026000a, - PR_EMS_AB_ASSOC_NT_ACCOUNT = 0x80270102, - PR_EMS_AB_ASSOC_NT_ACCOUNT_ERROR = 0x8027000a, - PR_EMS_AB_EXPIRATION_TIME = 0x80280040, - PR_EMS_AB_EXPIRATION_TIME_ERROR = 0x8028000a, - PR_EMS_AB_USN_CHANGED = 0x80290003, - PR_EMS_AB_USN_CHANGED_ERROR = 0x8029000a, - PR_EMS_AB_EXTENSION_ATTRIBUTE_1 = 0x802d001e, - PR_EMS_AB_EXTENSION_ATTRIBUTE_1_UNICODE = 0x802d001f, - PR_EMS_AB_EXTENSION_ATTRIBUTE_1_ERROR = 0x802d000a, - PR_EMS_AB_EXTENSION_ATTRIBUTE_2 = 0x802e001e, - PR_EMS_AB_EXTENSION_ATTRIBUTE_2_UNICODE = 0x802e001f, - PR_EMS_AB_EXTENSION_ATTRIBUTE_2_ERROR = 0x802e000a, - PR_EMS_AB_EXTENSION_ATTRIBUTE_3 = 0x802f001e, - PR_EMS_AB_EXTENSION_ATTRIBUTE_3_UNICODE = 0x802f001f, - PR_EMS_AB_EXTENSION_ATTRIBUTE_3_ERROR = 0x802f000a, - PR_EMS_AB_EXTENSION_ATTRIBUTE_4 = 0x8030001e, - PR_EMS_AB_EXTENSION_ATTRIBUTE_4_UNICODE = 0x8030001f, - PR_EMS_AB_EXTENSION_ATTRIBUTE_4_ERROR = 0x8030000a, - PR_EMS_AB_EXTENSION_ATTRIBUTE_5 = 0x8031001e, - PR_EMS_AB_EXTENSION_ATTRIBUTE_5_UNICODE = 0x8031001f, - PR_EMS_AB_EXTENSION_ATTRIBUTE_5_ERROR = 0x8031000a, - PR_EMS_AB_EXTENSION_ATTRIBUTE_6 = 0x8032001e, - PR_EMS_AB_EXTENSION_ATTRIBUTE_6_UNICODE = 0x8032001f, - PR_EMS_AB_EXTENSION_ATTRIBUTE_6_ERROR = 0x8032000a, - PR_EMS_AB_EXTENSION_ATTRIBUTE_7 = 0x8033001e, - PR_EMS_AB_EXTENSION_ATTRIBUTE_7_UNICODE = 0x8033001f, - PR_EMS_AB_EXTENSION_ATTRIBUTE_7_ERROR = 0x8033000a, - PR_EMS_AB_EXTENSION_ATTRIBUTE_8 = 0x8034001e, - PR_EMS_AB_EXTENSION_ATTRIBUTE_8_UNICODE = 0x8034001f, - PR_EMS_AB_EXTENSION_ATTRIBUTE_8_ERROR = 0x8034000a, - PR_EMS_AB_EXTENSION_ATTRIBUTE_9 = 0x8035001e, - PR_EMS_AB_EXTENSION_ATTRIBUTE_9_UNICODE = 0x8035001f, - PR_EMS_AB_EXTENSION_ATTRIBUTE_9_ERROR = 0x8035000a, - PR_EMS_AB_EXTENSION_ATTRIBUTE_10 = 0x8036001e, - PR_EMS_AB_EXTENSION_ATTRIBUTE_10_UNICODE = 0x8036001f, - PR_EMS_AB_EXTENSION_ATTRIBUTE_10_ERROR = 0x8036000a, - PR_EMS_AB_SECURITY_PROTOCOL = 0x80371102, - PR_EMS_AB_SECURITY_PROTOCOL_ERROR = 0x8037000a, - PR_EMS_AB_PF_CONTACTS_O = 0x8038000d, - PR_EMS_AB_PF_CONTACTS_O_ERROR = 0x8038000a, - PR_EMS_AB_PF_CONTACTS = 0x8038101e, - PR_EMS_AB_PF_CONTACTS_UNICODE = 0x8038101f, - PR_EMS_AB_HELP_DATA16 = 0x803a0102, - PR_EMS_AB_HELP_DATA16_ERROR = 0x803a000a, - PR_EMS_AB_HELP_FILE_NAME = 0x803b001e, - PR_EMS_AB_HELP_FILE_NAME_UNICODE = 0x803b001f, - PR_EMS_AB_HELP_FILE_NAME_ERROR = 0x803b000a, - PR_EMS_AB_OBJ_DIST_NAME_O = 0x803c000d, - PR_EMS_AB_OBJ_DIST_NAME_O_ERROR = 0x803c000a, - PR_EMS_AB_OBJ_DIST_NAME = 0x803c001e, - PR_EMS_AB_OBJ_DIST_NAME_UNICODE = 0x803c001f, - PR_EMS_AB_ENCRYPT_ALG_SELECTED_OTHER = 0x803d001e, - PR_EMS_AB_ENCRYPT_ALG_SELECTED_OTHER_UNICODE = 0x803d001f, - PR_EMS_AB_ENCRYPT_ALG_SELECTED_OTHER_ERROR = 0x803d000a, - PR_EMS_AB_AUTOREPLY_SUBJECT = 0x803e001e, - PR_EMS_AB_AUTOREPLY_SUBJECT_UNICODE = 0x803e001f, - PR_EMS_AB_AUTOREPLY_SUBJECT_ERROR = 0x803e000a, - PR_EMS_AB_HOME_PUBLIC_SERVER_O = 0x803f000d, - PR_EMS_AB_HOME_PUBLIC_SERVER_O_ERROR = 0x803f000a, - PR_EMS_AB_HOME_PUBLIC_SERVER = 0x803f001e, - PR_EMS_AB_HOME_PUBLIC_SERVER_UNICODE = 0x803f001f, - PR_EMS_AB_ENCRYPT_ALG_LIST_NA = 0x8040101e, - PR_EMS_AB_ENCRYPT_ALG_LIST_NA_UNICODE = 0x8040101f, - PR_EMS_AB_ENCRYPT_ALG_LIST_NA_ERROR = 0x8040000a, - PR_EMS_AB_ENCRYPT_ALG_LIST_OTHER = 0x8041101e, - PR_EMS_AB_ENCRYPT_ALG_LIST_OTHER_UNICODE = 0x8041101f, - PR_EMS_AB_ENCRYPT_ALG_LIST_OTHER_ERROR = 0x8041000a, - PR_EMS_AB_IMPORTED_FROM = 0x8042001e, - PR_EMS_AB_IMPORTED_FROM_UNICODE = 0x8042001f, - PR_EMS_AB_IMPORTED_FROM_ERROR = 0x8042000a, - PR_EMS_AB_ENCRYPT_ALG_SELECTED_NA = 0x8043001e, - PR_EMS_AB_ENCRYPT_ALG_SELECTED_NA_UNICODE = 0x8043001f, - PR_EMS_AB_ENCRYPT_ALG_SELECTED_NA_ERROR = 0x8043000a, - PR_EMS_AB_ACCESS_CATEGORY = 0x80440003, - PR_EMS_AB_ACCESS_CATEGORY_ERROR = 0x8044000a, - PR_EMS_AB_ACTIVATION_SCHEDULE = 0x80450102, - PR_EMS_AB_ACTIVATION_SCHEDULE_ERROR = 0x8045000a, - PR_EMS_AB_ACTIVATION_STYLE = 0x80460003, - PR_EMS_AB_ACTIVATION_STYLE_ERROR = 0x8046000a, - PR_EMS_AB_ADDRESS_ENTRY_DISPLAY_TABLE_MSDOS = 0x80470102, - PR_EMS_AB_ADDRESS_ENTRY_DISPLAY_TABLE_MSDOS_ERROR = 0x8047000a, - PR_EMS_AB_ADDRESS_TYPE = 0x8048001e, - PR_EMS_AB_ADDRESS_TYPE_UNICODE = 0x8048001f, - PR_EMS_AB_ADDRESS_TYPE_ERROR = 0x8048000a, - PR_EMS_AB_ADMD = 0x8049001e, - PR_EMS_AB_ADMD_UNICODE = 0x8049001f, - PR_EMS_AB_ADMD_ERROR = 0x8049000a, - PR_EMS_AB_ADMIN_DESCRIPTION = 0x804a001e, - PR_EMS_AB_ADMIN_DESCRIPTION_UNICODE = 0x804a001f, - PR_EMS_AB_ADMIN_DESCRIPTION_ERROR = 0x804a000a, - PR_EMS_AB_ADMIN_DISPLAY_NAME = 0x804b001e, - PR_EMS_AB_ADMIN_DISPLAY_NAME_UNICODE = 0x804b001f, - PR_EMS_AB_ADMIN_DISPLAY_NAME_ERROR = 0x804b000a, - PR_EMS_AB_ADMIN_EXTENSION_DLL = 0x804c001e, - PR_EMS_AB_ADMIN_EXTENSION_DLL_UNICODE = 0x804c001f, - PR_EMS_AB_ADMIN_EXTENSION_DLL_ERROR = 0x804c000a, - PR_EMS_AB_ALIASED_OBJECT_NAME_O = 0x804d000d, - PR_EMS_AB_ALIASED_OBJECT_NAME_O_ERROR = 0x804d000a, - PR_EMS_AB_ALIASED_OBJECT_NAME = 0x804d001e, - PR_EMS_AB_ALIASED_OBJECT_NAME_UNICODE = 0x804d001f, - PR_EMS_AB_ALT_RECIPIENT_O = 0x804e000d, - PR_EMS_AB_ALT_RECIPIENT_O_ERROR = 0x804e000a, - PR_EMS_AB_ALT_RECIPIENT = 0x804e001e, - PR_EMS_AB_ALT_RECIPIENT_UNICODE = 0x804e001f, - PR_EMS_AB_ALT_RECIPIENT_BL_O = 0x804f000d, - PR_EMS_AB_ALT_RECIPIENT_BL_O_ERROR = 0x804f000a, - PR_EMS_AB_ALT_RECIPIENT_BL = 0x804f101e, - PR_EMS_AB_ALT_RECIPIENT_BL_UNICODE = 0x804f101f, - PR_EMS_AB_ANCESTOR_ID = 0x80500102, - PR_EMS_AB_ANCESTOR_ID_ERROR = 0x8050000a, - PR_EMS_AB_ASSOC_REMOTE_DXA_O = 0x8051000d, - PR_EMS_AB_ASSOC_REMOTE_DXA_O_ERROR = 0x8051000a, - PR_EMS_AB_ASSOC_REMOTE_DXA = 0x8051101e, - PR_EMS_AB_ASSOC_REMOTE_DXA_UNICODE = 0x8051101f, - PR_EMS_AB_ASSOCIATION_LIFETIME = 0x80520003, - PR_EMS_AB_ASSOCIATION_LIFETIME_ERROR = 0x8052000a, - PR_EMS_AB_AUTH_ORIG_BL_O = 0x8053000d, - PR_EMS_AB_AUTH_ORIG_BL_O_ERROR = 0x8053000a, - PR_EMS_AB_AUTH_ORIG_BL = 0x8053101e, - PR_EMS_AB_AUTH_ORIG_BL_UNICODE = 0x8053101f, - PR_EMS_AB_AUTHORIZED_DOMAIN = 0x8054001e, - PR_EMS_AB_AUTHORIZED_DOMAIN_UNICODE = 0x8054001f, - PR_EMS_AB_AUTHORIZED_DOMAIN_ERROR = 0x8054000a, - PR_EMS_AB_AUTHORIZED_PASSWORD = 0x80550102, - PR_EMS_AB_AUTHORIZED_PASSWORD_ERROR = 0x8055000a, - PR_EMS_AB_AUTHORIZED_USER = 0x8056001e, - PR_EMS_AB_AUTHORIZED_USER_UNICODE = 0x8056001f, - PR_EMS_AB_AUTHORIZED_USER_ERROR = 0x8056000a, - PR_EMS_AB_BUSINESS_CATEGORY = 0x8057101e, - PR_EMS_AB_BUSINESS_CATEGORY_UNICODE = 0x8057101f, - PR_EMS_AB_BUSINESS_CATEGORY_ERROR = 0x8057000a, - PR_EMS_AB_CAN_CREATE_PF_O = 0x8058000d, - PR_EMS_AB_CAN_CREATE_PF_O_ERROR = 0x8058000a, - PR_EMS_AB_CAN_CREATE_PF = 0x8058101e, - PR_EMS_AB_CAN_CREATE_PF_UNICODE = 0x8058101f, - PR_EMS_AB_CAN_CREATE_PF_BL_O = 0x8059000d, - PR_EMS_AB_CAN_CREATE_PF_BL_O_ERROR = 0x8059000a, - PR_EMS_AB_CAN_CREATE_PF_BL = 0x8059101e, - PR_EMS_AB_CAN_CREATE_PF_BL_UNICODE = 0x8059101f, - PR_EMS_AB_CAN_CREATE_PF_DL_O = 0x805a000d, - PR_EMS_AB_CAN_CREATE_PF_DL_O_ERROR = 0x805a000a, - PR_EMS_AB_CAN_CREATE_PF_DL = 0x805a101e, - PR_EMS_AB_CAN_CREATE_PF_DL_UNICODE = 0x805a101f, - PR_EMS_AB_CAN_CREATE_PF_DL_BL_O = 0x805b000d, - PR_EMS_AB_CAN_CREATE_PF_DL_BL_O_ERROR = 0x805b000a, - PR_EMS_AB_CAN_CREATE_PF_DL_BL = 0x805b101e, - PR_EMS_AB_CAN_CREATE_PF_DL_BL_UNICODE = 0x805b101f, - PR_EMS_AB_CAN_NOT_CREATE_PF_O = 0x805c000d, - PR_EMS_AB_CAN_NOT_CREATE_PF_O_ERROR = 0x805c000a, - PR_EMS_AB_CAN_NOT_CREATE_PF = 0x805c101e, - PR_EMS_AB_CAN_NOT_CREATE_PF_UNICODE = 0x805c101f, - PR_EMS_AB_CAN_NOT_CREATE_PF_BL_O = 0x805d000d, - PR_EMS_AB_CAN_NOT_CREATE_PF_BL_O_ERROR = 0x805d000a, - PR_EMS_AB_CAN_NOT_CREATE_PF_BL = 0x805d101e, - PR_EMS_AB_CAN_NOT_CREATE_PF_BL_UNICODE = 0x805d101f, - PR_EMS_AB_CAN_NOT_CREATE_PF_DL_O = 0x805e000d, - PR_EMS_AB_CAN_NOT_CREATE_PF_DL_O_ERROR = 0x805e000a, - PR_EMS_AB_CAN_NOT_CREATE_PF_DL = 0x805e101e, - PR_EMS_AB_CAN_NOT_CREATE_PF_DL_UNICODE = 0x805e101f, - PR_EMS_AB_CAN_NOT_CREATE_PF_DL_BL_O = 0x805f000d, - PR_EMS_AB_CAN_NOT_CREATE_PF_DL_BL_O_ERROR = 0x805f000a, - PR_EMS_AB_CAN_NOT_CREATE_PF_DL_BL = 0x805f101e, - PR_EMS_AB_CAN_NOT_CREATE_PF_DL_BL_UNICODE = 0x805f101f, - PR_EMS_AB_CAN_PRESERVE_DNS = 0x8060000b, - PR_EMS_AB_CAN_PRESERVE_DNS_ERROR = 0x8060000a, - PR_EMS_AB_CLOCK_ALERT_OFFSET = 0x80610003, - PR_EMS_AB_CLOCK_ALERT_OFFSET_ERROR = 0x8061000a, - PR_EMS_AB_CLOCK_ALERT_REPAIR = 0x8062000b, - PR_EMS_AB_CLOCK_ALERT_REPAIR_ERROR = 0x8062000a, - PR_EMS_AB_CLOCK_WARNING_OFFSET = 0x80630003, - PR_EMS_AB_CLOCK_WARNING_OFFSET_ERROR = 0x8063000a, - PR_EMS_AB_CLOCK_WARNING_REPAIR = 0x8064000b, - PR_EMS_AB_CLOCK_WARNING_REPAIR_ERROR = 0x8064000a, - PR_EMS_AB_COMPUTER_NAME = 0x8065001e, - PR_EMS_AB_COMPUTER_NAME_UNICODE = 0x8065001f, - PR_EMS_AB_COMPUTER_NAME_ERROR = 0x8065000a, - PR_EMS_AB_CONNECTED_DOMAINS = 0x8066101e, - PR_EMS_AB_CONNECTED_DOMAINS_UNICODE = 0x8066101f, - PR_EMS_AB_CONNECTED_DOMAINS_ERROR = 0x8066000a, - PR_EMS_AB_CONTAINER_INFO = 0x80670003, - PR_EMS_AB_CONTAINER_INFO_ERROR = 0x8067000a, - PR_EMS_AB_COST = 0x80680003, - PR_EMS_AB_COST_ERROR = 0x8068000a, - PR_EMS_AB_COUNTRY_NAME = 0x8069001e, - PR_EMS_AB_COUNTRY_NAME_UNICODE = 0x8069001f, - PR_EMS_AB_COUNTRY_NAME_ERROR = 0x8069000a, - PR_EMS_AB_DELIV_CONT_LENGTH = 0x806a0003, - PR_EMS_AB_DELIV_CONT_LENGTH_ERROR = 0x806a000a, - PR_EMS_AB_DELIV_EITS = 0x806b1102, - PR_EMS_AB_DELIV_EITS_ERROR = 0x806b000a, - PR_EMS_AB_DELIV_EXT_CONT_TYPES = 0x806c1102, - PR_EMS_AB_DELIV_EXT_CONT_TYPES_ERROR = 0x806c000a, - PR_EMS_AB_DELIVER_AND_REDIRECT = 0x806d000b, - PR_EMS_AB_DELIVER_AND_REDIRECT_ERROR = 0x806d000a, - PR_EMS_AB_DELIVERY_MECHANISM = 0x806e0003, - PR_EMS_AB_DELIVERY_MECHANISM_ERROR = 0x806e000a, - PR_EMS_AB_DESCRIPTION = 0x806f101e, - PR_EMS_AB_DESCRIPTION_UNICODE = 0x806f101f, - PR_EMS_AB_DESCRIPTION_ERROR = 0x806f000a, - PR_EMS_AB_DESTINATION_INDICATOR = 0x8070101e, - PR_EMS_AB_DESTINATION_INDICATOR_UNICODE = 0x8070101f, - PR_EMS_AB_DESTINATION_INDICATOR_ERROR = 0x8070000a, - PR_EMS_AB_DIAGNOSTIC_REG_KEY = 0x8071001e, - PR_EMS_AB_DIAGNOSTIC_REG_KEY_UNICODE = 0x8071001f, - PR_EMS_AB_DIAGNOSTIC_REG_KEY_ERROR = 0x8071000a, - PR_EMS_AB_DL_MEM_REJECT_PERMS_BL_O = 0x8072000d, - PR_EMS_AB_DL_MEM_REJECT_PERMS_BL_O_ERROR = 0x8072000a, - PR_EMS_AB_DL_MEM_REJECT_PERMS_BL = 0x8072101e, - PR_EMS_AB_DL_MEM_REJECT_PERMS_BL_UNICODE = 0x8072101f, - PR_EMS_AB_DL_MEM_SUBMIT_PERMS_BL_O = 0x8073000d, - PR_EMS_AB_DL_MEM_SUBMIT_PERMS_BL_O_ERROR = 0x8073000a, - PR_EMS_AB_DL_MEM_SUBMIT_PERMS_BL = 0x8073101e, - PR_EMS_AB_DL_MEM_SUBMIT_PERMS_BL_UNICODE = 0x8073101f, - PR_EMS_AB_DL_MEMBER_RULE = 0x80741102, - PR_EMS_AB_DL_MEMBER_RULE_ERROR = 0x8074000a, - PR_EMS_AB_DOMAIN_DEF_ALT_RECIP_O = 0x8075000d, - PR_EMS_AB_DOMAIN_DEF_ALT_RECIP_O_ERROR = 0x8075000a, - PR_EMS_AB_DOMAIN_DEF_ALT_RECIP = 0x8075001e, - PR_EMS_AB_DOMAIN_DEF_ALT_RECIP_UNICODE = 0x8075001f, - PR_EMS_AB_DOMAIN_NAME = 0x8076001e, - PR_EMS_AB_DOMAIN_NAME_UNICODE = 0x8076001f, - PR_EMS_AB_DOMAIN_NAME_ERROR = 0x8076000a, - PR_EMS_AB_DSA_SIGNATURE = 0x80770102, - PR_EMS_AB_DSA_SIGNATURE_ERROR = 0x8077000a, - PR_EMS_AB_DXA_ADMIN_COPY = 0x8078000b, - PR_EMS_AB_DXA_ADMIN_COPY_ERROR = 0x8078000a, - PR_EMS_AB_DXA_ADMIN_FORWARD = 0x8079000b, - PR_EMS_AB_DXA_ADMIN_FORWARD_ERROR = 0x8079000a, - PR_EMS_AB_DXA_ADMIN_UPDATE = 0x807a0003, - PR_EMS_AB_DXA_ADMIN_UPDATE_ERROR = 0x807a000a, - PR_EMS_AB_DXA_APPEND_REQCN = 0x807b000b, - PR_EMS_AB_DXA_APPEND_REQCN_ERROR = 0x807b000a, - PR_EMS_AB_DXA_CONF_CONTAINER_LIST_O = 0x807c000d, - PR_EMS_AB_DXA_CONF_CONTAINER_LIST_O_ERROR = 0x807c000a, - PR_EMS_AB_DXA_CONF_CONTAINER_LIST = 0x807c101e, - PR_EMS_AB_DXA_CONF_CONTAINER_LIST_UNICODE = 0x807c101f, - PR_EMS_AB_DXA_CONF_REQ_TIME = 0x807d0040, - PR_EMS_AB_DXA_CONF_REQ_TIME_ERROR = 0x807d000a, - PR_EMS_AB_DXA_CONF_SEQ = 0x807e001e, - PR_EMS_AB_DXA_CONF_SEQ_UNICODE = 0x807e001f, - PR_EMS_AB_DXA_CONF_SEQ_ERROR = 0x807e000a, - PR_EMS_AB_DXA_CONF_SEQ_USN = 0x807f0003, - PR_EMS_AB_DXA_CONF_SEQ_USN_ERROR = 0x807f000a, - PR_EMS_AB_DXA_EXCHANGE_OPTIONS = 0x80800003, - PR_EMS_AB_DXA_EXCHANGE_OPTIONS_ERROR = 0x8080000a, - PR_EMS_AB_DXA_EXPORT_NOW = 0x8081000b, - PR_EMS_AB_DXA_EXPORT_NOW_ERROR = 0x8081000a, - PR_EMS_AB_DXA_FLAGS = 0x80820003, - PR_EMS_AB_DXA_FLAGS_ERROR = 0x8082000a, - PR_EMS_AB_DXA_IMP_SEQ = 0x8083001e, - PR_EMS_AB_DXA_IMP_SEQ_UNICODE = 0x8083001f, - PR_EMS_AB_DXA_IMP_SEQ_ERROR = 0x8083000a, - PR_EMS_AB_DXA_IMP_SEQ_TIME = 0x80840040, - PR_EMS_AB_DXA_IMP_SEQ_TIME_ERROR = 0x8084000a, - PR_EMS_AB_DXA_IMP_SEQ_USN = 0x80850003, - PR_EMS_AB_DXA_IMP_SEQ_USN_ERROR = 0x8085000a, - PR_EMS_AB_DXA_IMPORT_NOW = 0x8086000b, - PR_EMS_AB_DXA_IMPORT_NOW_ERROR = 0x8086000a, - PR_EMS_AB_DXA_IN_TEMPLATE_MAP = 0x8087101e, - PR_EMS_AB_DXA_IN_TEMPLATE_MAP_UNICODE = 0x8087101f, - PR_EMS_AB_DXA_IN_TEMPLATE_MAP_ERROR = 0x8087000a, - PR_EMS_AB_DXA_LOCAL_ADMIN_O = 0x8088000d, - PR_EMS_AB_DXA_LOCAL_ADMIN_O_ERROR = 0x8088000a, - PR_EMS_AB_DXA_LOCAL_ADMIN = 0x8088001e, - PR_EMS_AB_DXA_LOCAL_ADMIN_UNICODE = 0x8088001f, - PR_EMS_AB_DXA_LOGGING_LEVEL = 0x80890003, - PR_EMS_AB_DXA_LOGGING_LEVEL_ERROR = 0x8089000a, - PR_EMS_AB_DXA_NATIVE_ADDRESS_TYPE = 0x808a001e, - PR_EMS_AB_DXA_NATIVE_ADDRESS_TYPE_UNICODE = 0x808a001f, - PR_EMS_AB_DXA_NATIVE_ADDRESS_TYPE_ERROR = 0x808a000a, - PR_EMS_AB_DXA_OUT_TEMPLATE_MAP = 0x808b101e, - PR_EMS_AB_DXA_OUT_TEMPLATE_MAP_UNICODE = 0x808b101f, - PR_EMS_AB_DXA_OUT_TEMPLATE_MAP_ERROR = 0x808b000a, - PR_EMS_AB_DXA_PASSWORD = 0x808c001e, - PR_EMS_AB_DXA_PASSWORD_UNICODE = 0x808c001f, - PR_EMS_AB_DXA_PASSWORD_ERROR = 0x808c000a, - PR_EMS_AB_DXA_PREV_EXCHANGE_OPTIONS = 0x808d0003, - PR_EMS_AB_DXA_PREV_EXCHANGE_OPTIONS_ERROR = 0x808d000a, - PR_EMS_AB_DXA_PREV_EXPORT_NATIVE_ONLY = 0x808e000b, - PR_EMS_AB_DXA_PREV_EXPORT_NATIVE_ONLY_ERROR = 0x808e000a, - PR_EMS_AB_DXA_PREV_IN_EXCHANGE_SENSITIVITY = 0x808f0003, - PR_EMS_AB_DXA_PREV_IN_EXCHANGE_SENSITIVITY_ERROR = 0x808f000a, - PR_EMS_AB_DXA_PREV_REMOTE_ENTRIES_O = 0x8090000d, - PR_EMS_AB_DXA_PREV_REMOTE_ENTRIES_O_ERROR = 0x8090000a, - PR_EMS_AB_DXA_PREV_REMOTE_ENTRIES = 0x8090001e, - PR_EMS_AB_DXA_PREV_REMOTE_ENTRIES_UNICODE = 0x8090001f, - PR_EMS_AB_DXA_PREV_REPLICATION_SENSITIVITY = 0x80910003, - PR_EMS_AB_DXA_PREV_REPLICATION_SENSITIVITY_ERROR = 0x8091000a, - PR_EMS_AB_DXA_PREV_TEMPLATE_OPTIONS = 0x80920003, - PR_EMS_AB_DXA_PREV_TEMPLATE_OPTIONS_ERROR = 0x8092000a, - PR_EMS_AB_DXA_PREV_TYPES = 0x80930003, - PR_EMS_AB_DXA_PREV_TYPES_ERROR = 0x8093000a, - PR_EMS_AB_DXA_RECIPIENT_CP = 0x8094001e, - PR_EMS_AB_DXA_RECIPIENT_CP_UNICODE = 0x8094001f, - PR_EMS_AB_DXA_RECIPIENT_CP_ERROR = 0x8094000a, - PR_EMS_AB_DXA_REMOTE_CLIENT_O = 0x8095000d, - PR_EMS_AB_DXA_REMOTE_CLIENT_O_ERROR = 0x8095000a, - PR_EMS_AB_DXA_REMOTE_CLIENT = 0x8095001e, - PR_EMS_AB_DXA_REMOTE_CLIENT_UNICODE = 0x8095001f, - PR_EMS_AB_DXA_REQ_SEQ = 0x8096001e, - PR_EMS_AB_DXA_REQ_SEQ_UNICODE = 0x8096001f, - PR_EMS_AB_DXA_REQ_SEQ_ERROR = 0x8096000a, - PR_EMS_AB_DXA_REQ_SEQ_TIME = 0x80970040, - PR_EMS_AB_DXA_REQ_SEQ_TIME_ERROR = 0x8097000a, - PR_EMS_AB_DXA_REQ_SEQ_USN = 0x80980003, - PR_EMS_AB_DXA_REQ_SEQ_USN_ERROR = 0x8098000a, - PR_EMS_AB_DXA_REQNAME = 0x8099001e, - PR_EMS_AB_DXA_REQNAME_UNICODE = 0x8099001f, - PR_EMS_AB_DXA_REQNAME_ERROR = 0x8099000a, - PR_EMS_AB_DXA_SVR_SEQ = 0x809a001e, - PR_EMS_AB_DXA_SVR_SEQ_UNICODE = 0x809a001f, - PR_EMS_AB_DXA_SVR_SEQ_ERROR = 0x809a000a, - PR_EMS_AB_DXA_SVR_SEQ_TIME = 0x809b0040, - PR_EMS_AB_DXA_SVR_SEQ_TIME_ERROR = 0x809b000a, - PR_EMS_AB_DXA_SVR_SEQ_USN = 0x809c0003, - PR_EMS_AB_DXA_SVR_SEQ_USN_ERROR = 0x809c000a, - PR_EMS_AB_DXA_TASK = 0x809d0003, - PR_EMS_AB_DXA_TASK_ERROR = 0x809d000a, - PR_EMS_AB_DXA_TEMPLATE_OPTIONS = 0x809e0003, - PR_EMS_AB_DXA_TEMPLATE_OPTIONS_ERROR = 0x809e000a, - PR_EMS_AB_DXA_TEMPLATE_TIMESTAMP = 0x809f0040, - PR_EMS_AB_DXA_TEMPLATE_TIMESTAMP_ERROR = 0x809f000a, - PR_EMS_AB_DXA_TYPES = 0x80a00003, - PR_EMS_AB_DXA_TYPES_ERROR = 0x80a0000a, - PR_EMS_AB_DXA_UNCONF_CONTAINER_LIST_O = 0x80a1000d, - PR_EMS_AB_DXA_UNCONF_CONTAINER_LIST_O_ERROR = 0x80a1000a, - PR_EMS_AB_DXA_UNCONF_CONTAINER_LIST = 0x80a1101e, - PR_EMS_AB_DXA_UNCONF_CONTAINER_LIST_UNICODE = 0x80a1101f, - PR_EMS_AB_ENCAPSULATION_METHOD = 0x80a20003, - PR_EMS_AB_ENCAPSULATION_METHOD_ERROR = 0x80a2000a, - PR_EMS_AB_ENCRYPT = 0x80a3000b, - PR_EMS_AB_ENCRYPT_ERROR = 0x80a3000a, - PR_EMS_AB_EXPAND_DLS_LOCALLY = 0x80a4000b, - PR_EMS_AB_EXPAND_DLS_LOCALLY_ERROR = 0x80a4000a, - PR_EMS_AB_EXPORT_CONTAINERS_O = 0x80a5000d, - PR_EMS_AB_EXPORT_CONTAINERS_O_ERROR = 0x80a5000a, - PR_EMS_AB_EXPORT_CONTAINERS = 0x80a5101e, - PR_EMS_AB_EXPORT_CONTAINERS_UNICODE = 0x80a5101f, - PR_EMS_AB_EXPORT_CUSTOM_RECIPIENTS = 0x80a6000b, - PR_EMS_AB_EXPORT_CUSTOM_RECIPIENTS_ERROR = 0x80a6000a, - PR_EMS_AB_EXTENDED_CHARS_ALLOWED = 0x80a7000b, - PR_EMS_AB_EXTENDED_CHARS_ALLOWED_ERROR = 0x80a7000a, - PR_EMS_AB_EXTENSION_DATA = 0x80a81102, - PR_EMS_AB_EXTENSION_DATA_ERROR = 0x80a8000a, - PR_EMS_AB_EXTENSION_NAME = 0x80a9101e, - PR_EMS_AB_EXTENSION_NAME_UNICODE = 0x80a9101f, - PR_EMS_AB_EXTENSION_NAME_ERROR = 0x80a9000a, - PR_EMS_AB_EXTENSION_NAME_INHERITED = 0x80aa101e, - PR_EMS_AB_EXTENSION_NAME_INHERITED_UNICODE = 0x80aa101f, - PR_EMS_AB_EXTENSION_NAME_INHERITED_ERROR = 0x80aa000a, - PR_EMS_AB_FACSIMILE_TELEPHONE_NUMBER = 0x80ab1102, - PR_EMS_AB_FACSIMILE_TELEPHONE_NUMBER_ERROR = 0x80ab000a, - PR_EMS_AB_FILE_VERSION = 0x80ac0102, - PR_EMS_AB_FILE_VERSION_ERROR = 0x80ac000a, - PR_EMS_AB_FILTER_LOCAL_ADDRESSES = 0x80ad000b, - PR_EMS_AB_FILTER_LOCAL_ADDRESSES_ERROR = 0x80ad000a, - PR_EMS_AB_FOLDERS_CONTAINER_O = 0x80ae000d, - PR_EMS_AB_FOLDERS_CONTAINER_O_ERROR = 0x80ae000a, - PR_EMS_AB_FOLDERS_CONTAINER = 0x80ae001e, - PR_EMS_AB_FOLDERS_CONTAINER_UNICODE = 0x80ae001f, - PR_EMS_AB_GARBAGE_COLL_PERIOD = 0x80af0003, - PR_EMS_AB_GARBAGE_COLL_PERIOD_ERROR = 0x80af000a, - PR_EMS_AB_GATEWAY_LOCAL_CRED = 0x80b0001e, - PR_EMS_AB_GATEWAY_LOCAL_CRED_UNICODE = 0x80b0001f, - PR_EMS_AB_GATEWAY_LOCAL_CRED_ERROR = 0x80b0000a, - PR_EMS_AB_GATEWAY_LOCAL_DESIG = 0x80b1001e, - PR_EMS_AB_GATEWAY_LOCAL_DESIG_UNICODE = 0x80b1001f, - PR_EMS_AB_GATEWAY_LOCAL_DESIG_ERROR = 0x80b1000a, - PR_EMS_AB_GATEWAY_PROXY = 0x80b2101e, - PR_EMS_AB_GATEWAY_PROXY_UNICODE = 0x80b2101f, - PR_EMS_AB_GATEWAY_PROXY_ERROR = 0x80b2000a, - PR_EMS_AB_GATEWAY_ROUTING_TREE = 0x80b30102, - PR_EMS_AB_GATEWAY_ROUTING_TREE_ERROR = 0x80b3000a, - PR_EMS_AB_GWART_LAST_MODIFIED = 0x80b40040, - PR_EMS_AB_GWART_LAST_MODIFIED_ERROR = 0x80b4000a, - PR_EMS_AB_HAS_FULL_REPLICA_NCS_O = 0x80b5000d, - PR_EMS_AB_HAS_FULL_REPLICA_NCS_O_ERROR = 0x80b5000a, - PR_EMS_AB_HAS_FULL_REPLICA_NCS = 0x80b5101e, - PR_EMS_AB_HAS_FULL_REPLICA_NCS_UNICODE = 0x80b5101f, - PR_EMS_AB_HAS_MASTER_NCS_O = 0x80b6000d, - PR_EMS_AB_HAS_MASTER_NCS_O_ERROR = 0x80b6000a, - PR_EMS_AB_HAS_MASTER_NCS = 0x80b6101e, - PR_EMS_AB_HAS_MASTER_NCS_UNICODE = 0x80b6101f, - PR_EMS_AB_HEURISTICS = 0x80b70003, - PR_EMS_AB_HEURISTICS_ERROR = 0x80b7000a, - PR_EMS_AB_HIDE_DL_MEMBERSHIP = 0x80b8000b, - PR_EMS_AB_HIDE_DL_MEMBERSHIP_ERROR = 0x80b8000a, - PR_EMS_AB_HIDE_FROM_ADDRESS_BOOK = 0x80b9000b, - PR_EMS_AB_HIDE_FROM_ADDRESS_BOOK_ERROR = 0x80b9000a, - PR_EMS_AB_IMPORT_CONTAINER_O = 0x80ba000d, - PR_EMS_AB_IMPORT_CONTAINER_O_ERROR = 0x80ba000a, - PR_EMS_AB_IMPORT_CONTAINER = 0x80ba001e, - PR_EMS_AB_IMPORT_CONTAINER_UNICODE = 0x80ba001f, - PR_EMS_AB_IMPORT_SENSITIVITY = 0x80bb0003, - PR_EMS_AB_IMPORT_SENSITIVITY_ERROR = 0x80bb000a, - PR_EMS_AB_INBOUND_SITES_O = 0x80bc000d, - PR_EMS_AB_INBOUND_SITES_O_ERROR = 0x80bc000a, - PR_EMS_AB_INBOUND_SITES = 0x80bc101e, - PR_EMS_AB_INBOUND_SITES_UNICODE = 0x80bc101f, - PR_EMS_AB_INSTANCE_TYPE = 0x80bd0003, - PR_EMS_AB_INSTANCE_TYPE_ERROR = 0x80bd000a, - PR_EMS_AB_INTERNATIONAL_ISDN_NUMBER = 0x80be101e, - PR_EMS_AB_INTERNATIONAL_ISDN_NUMBER_UNICODE = 0x80be101f, - PR_EMS_AB_INTERNATIONAL_ISDN_NUMBER_ERROR = 0x80be000a, - PR_EMS_AB_INVOCATION_ID = 0x80bf0102, - PR_EMS_AB_INVOCATION_ID_ERROR = 0x80bf000a, - PR_EMS_AB_IS_DELETED = 0x80c0000b, - PR_EMS_AB_IS_DELETED_ERROR = 0x80c0000a, - PR_EMS_AB_IS_SINGLE_VALUED = 0x80c1000b, - PR_EMS_AB_IS_SINGLE_VALUED_ERROR = 0x80c1000a, - PR_EMS_AB_KCC_STATUS = 0x80c21102, - PR_EMS_AB_KCC_STATUS_ERROR = 0x80c2000a, - PR_EMS_AB_KNOWLEDGE_INFORMATION = 0x80c3101e, - PR_EMS_AB_KNOWLEDGE_INFORMATION_UNICODE = 0x80c3101f, - PR_EMS_AB_KNOWLEDGE_INFORMATION_ERROR = 0x80c3000a, - PR_EMS_AB_LINE_WRAP = 0x80c40003, - PR_EMS_AB_LINE_WRAP_ERROR = 0x80c4000a, - PR_EMS_AB_LINK_ID = 0x80c50003, - PR_EMS_AB_LINK_ID_ERROR = 0x80c5000a, - PR_EMS_AB_LOCAL_BRIDGE_HEAD = 0x80c6001e, - PR_EMS_AB_LOCAL_BRIDGE_HEAD_UNICODE = 0x80c6001f, - PR_EMS_AB_LOCAL_BRIDGE_HEAD_ERROR = 0x80c6000a, - PR_EMS_AB_LOCAL_BRIDGE_HEAD_ADDRESS = 0x80c7001e, - PR_EMS_AB_LOCAL_BRIDGE_HEAD_ADDRESS_UNICODE = 0x80c7001f, - PR_EMS_AB_LOCAL_BRIDGE_HEAD_ADDRESS_ERROR = 0x80c7000a, - PR_EMS_AB_LOCAL_INITIAL_TURN = 0x80c8000b, - PR_EMS_AB_LOCAL_INITIAL_TURN_ERROR = 0x80c8000a, - PR_EMS_AB_LOCAL_SCOPE_O = 0x80c9000d, - PR_EMS_AB_LOCAL_SCOPE_O_ERROR = 0x80c9000a, - PR_EMS_AB_LOCAL_SCOPE = 0x80c9101e, - PR_EMS_AB_LOCAL_SCOPE_UNICODE = 0x80c9101f, - PR_EMS_AB_LOG_FILENAME = 0x80ca001e, - PR_EMS_AB_LOG_FILENAME_UNICODE = 0x80ca001f, - PR_EMS_AB_LOG_FILENAME_ERROR = 0x80ca000a, - PR_EMS_AB_LOG_ROLLOVER_INTERVAL = 0x80cb0003, - PR_EMS_AB_LOG_ROLLOVER_INTERVAL_ERROR = 0x80cb000a, - PR_EMS_AB_MAINTAIN_AUTOREPLY_HISTORY = 0x80cc000b, - PR_EMS_AB_MAINTAIN_AUTOREPLY_HISTORY_ERROR = 0x80cc000a, - PR_EMS_AB_MAPI_DISPLAY_TYPE = 0x80cd0003, - PR_EMS_AB_MAPI_DISPLAY_TYPE_ERROR = 0x80cd000a, - PR_EMS_AB_MAPI_ID = 0x80ce0003, - PR_EMS_AB_MAPI_ID_ERROR = 0x80ce000a, - PR_EMS_AB_MDB_BACKOFF_INTERVAL = 0x80cf0003, - PR_EMS_AB_MDB_BACKOFF_INTERVAL_ERROR = 0x80cf000a, - PR_EMS_AB_MDB_MSG_TIME_OUT_PERIOD = 0x80d00003, - PR_EMS_AB_MDB_MSG_TIME_OUT_PERIOD_ERROR = 0x80d0000a, - PR_EMS_AB_MDB_OVER_QUOTA_LIMIT = 0x80d10003, - PR_EMS_AB_MDB_OVER_QUOTA_LIMIT_ERROR = 0x80d1000a, - PR_EMS_AB_MDB_STORAGE_QUOTA = 0x80d20003, - PR_EMS_AB_MDB_STORAGE_QUOTA_ERROR = 0x80d2000a, - PR_EMS_AB_MDB_UNREAD_LIMIT = 0x80d30003, - PR_EMS_AB_MDB_UNREAD_LIMIT_ERROR = 0x80d3000a, - PR_EMS_AB_MDB_USE_DEFAULTS = 0x80d4000b, - PR_EMS_AB_MDB_USE_DEFAULTS_ERROR = 0x80d4000a, - PR_EMS_AB_MESSAGE_TRACKING_ENABLED = 0x80d5000b, - PR_EMS_AB_MESSAGE_TRACKING_ENABLED_ERROR = 0x80d5000a, - PR_EMS_AB_MONITOR_CLOCK = 0x80d6000b, - PR_EMS_AB_MONITOR_CLOCK_ERROR = 0x80d6000a, - PR_EMS_AB_MONITOR_SERVERS = 0x80d7000b, - PR_EMS_AB_MONITOR_SERVERS_ERROR = 0x80d7000a, - PR_EMS_AB_MONITOR_SERVICES = 0x80d8000b, - PR_EMS_AB_MONITOR_SERVICES_ERROR = 0x80d8000a, - PR_EMS_AB_MONITORED_CONFIGURATIONS_O = 0x80d9000d, - PR_EMS_AB_MONITORED_CONFIGURATIONS_O_ERROR = 0x80d9000a, - PR_EMS_AB_MONITORED_CONFIGURATIONS = 0x80d9101e, - PR_EMS_AB_MONITORED_CONFIGURATIONS_UNICODE = 0x80d9101f, - PR_EMS_AB_MONITORED_SERVERS_O = 0x80da000d, - PR_EMS_AB_MONITORED_SERVERS_O_ERROR = 0x80da000a, - PR_EMS_AB_MONITORED_SERVERS = 0x80da101e, - PR_EMS_AB_MONITORED_SERVERS_UNICODE = 0x80da101f, - PR_EMS_AB_MONITORED_SERVICES = 0x80db101e, - PR_EMS_AB_MONITORED_SERVICES_UNICODE = 0x80db101f, - PR_EMS_AB_MONITORED_SERVICES_ERROR = 0x80db000a, - PR_EMS_AB_MONITORING_ALERT_DELAY = 0x80dc0003, - PR_EMS_AB_MONITORING_ALERT_DELAY_ERROR = 0x80dc000a, - PR_EMS_AB_MONITORING_ALERT_UNITS = 0x80dd0003, - PR_EMS_AB_MONITORING_ALERT_UNITS_ERROR = 0x80dd000a, - PR_EMS_AB_MONITORING_AVAILABILITY_STYLE = 0x80de0003, - PR_EMS_AB_MONITORING_AVAILABILITY_STYLE_ERROR = 0x80de000a, - PR_EMS_AB_MONITORING_AVAILABILITY_WINDOW = 0x80df0102, - PR_EMS_AB_MONITORING_AVAILABILITY_WINDOW_ERROR = 0x80df000a, - PR_EMS_AB_MONITORING_CACHED_VIA_MAIL_O = 0x80e0000d, - PR_EMS_AB_MONITORING_CACHED_VIA_MAIL_O_ERROR = 0x80e0000a, - PR_EMS_AB_MONITORING_CACHED_VIA_MAIL = 0x80e0101e, - PR_EMS_AB_MONITORING_CACHED_VIA_MAIL_UNICODE = 0x80e0101f, - PR_EMS_AB_MONITORING_CACHED_VIA_RPC_O = 0x80e1000d, - PR_EMS_AB_MONITORING_CACHED_VIA_RPC_O_ERROR = 0x80e1000a, - PR_EMS_AB_MONITORING_CACHED_VIA_RPC = 0x80e1101e, - PR_EMS_AB_MONITORING_CACHED_VIA_RPC_UNICODE = 0x80e1101f, - PR_EMS_AB_MONITORING_ESCALATION_PROCEDURE = 0x80e21102, - PR_EMS_AB_MONITORING_ESCALATION_PROCEDURE_ERROR = 0x80e2000a, - PR_EMS_AB_MONITORING_HOTSITE_POLL_INTERVAL = 0x80e30003, - PR_EMS_AB_MONITORING_HOTSITE_POLL_INTERVAL_ERROR = 0x80e3000a, - PR_EMS_AB_MONITORING_HOTSITE_POLL_UNITS = 0x80e40003, - PR_EMS_AB_MONITORING_HOTSITE_POLL_UNITS_ERROR = 0x80e4000a, - PR_EMS_AB_MONITORING_MAIL_UPDATE_INTERVAL = 0x80e50003, - PR_EMS_AB_MONITORING_MAIL_UPDATE_INTERVAL_ERROR = 0x80e5000a, - PR_EMS_AB_MONITORING_MAIL_UPDATE_UNITS = 0x80e60003, - PR_EMS_AB_MONITORING_MAIL_UPDATE_UNITS_ERROR = 0x80e6000a, - PR_EMS_AB_MONITORING_NORMAL_POLL_INTERVAL = 0x80e70003, - PR_EMS_AB_MONITORING_NORMAL_POLL_INTERVAL_ERROR = 0x80e7000a, - PR_EMS_AB_MONITORING_NORMAL_POLL_UNITS = 0x80e80003, - PR_EMS_AB_MONITORING_NORMAL_POLL_UNITS_ERROR = 0x80e8000a, - PR_EMS_AB_MONITORING_RECIPIENTS_O = 0x80e9000d, - PR_EMS_AB_MONITORING_RECIPIENTS_O_ERROR = 0x80e9000a, - PR_EMS_AB_MONITORING_RECIPIENTS = 0x80e9101e, - PR_EMS_AB_MONITORING_RECIPIENTS_UNICODE = 0x80e9101f, - PR_EMS_AB_MONITORING_RECIPIENTS_NDR_O = 0x80ea000d, - PR_EMS_AB_MONITORING_RECIPIENTS_NDR_O_ERROR = 0x80ea000a, - PR_EMS_AB_MONITORING_RECIPIENTS_NDR = 0x80ea101e, - PR_EMS_AB_MONITORING_RECIPIENTS_NDR_UNICODE = 0x80ea101f, - PR_EMS_AB_MONITORING_RPC_UPDATE_INTERVAL = 0x80eb0003, - PR_EMS_AB_MONITORING_RPC_UPDATE_INTERVAL_ERROR = 0x80eb000a, - PR_EMS_AB_MONITORING_RPC_UPDATE_UNITS = 0x80ec0003, - PR_EMS_AB_MONITORING_RPC_UPDATE_UNITS_ERROR = 0x80ec000a, - PR_EMS_AB_MONITORING_WARNING_DELAY = 0x80ed0003, - PR_EMS_AB_MONITORING_WARNING_DELAY_ERROR = 0x80ed000a, - PR_EMS_AB_MONITORING_WARNING_UNITS = 0x80ee0003, - PR_EMS_AB_MONITORING_WARNING_UNITS_ERROR = 0x80ee000a, - PR_EMS_AB_MTA_LOCAL_CRED = 0x80ef001e, - PR_EMS_AB_MTA_LOCAL_CRED_UNICODE = 0x80ef001f, - PR_EMS_AB_MTA_LOCAL_CRED_ERROR = 0x80ef000a, - PR_EMS_AB_MTA_LOCAL_DESIG = 0x80f0001e, - PR_EMS_AB_MTA_LOCAL_DESIG_UNICODE = 0x80f0001f, - PR_EMS_AB_MTA_LOCAL_DESIG_ERROR = 0x80f0000a, - PR_EMS_AB_N_ADDRESS = 0x80f10102, - PR_EMS_AB_N_ADDRESS_ERROR = 0x80f1000a, - PR_EMS_AB_N_ADDRESS_TYPE = 0x80f20003, - PR_EMS_AB_N_ADDRESS_TYPE_ERROR = 0x80f2000a, - PR_EMS_AB_NT_MACHINE_NAME = 0x80f3001e, - PR_EMS_AB_NT_MACHINE_NAME_UNICODE = 0x80f3001f, - PR_EMS_AB_NT_MACHINE_NAME_ERROR = 0x80f3000a, - PR_EMS_AB_NUM_OF_OPEN_RETRIES = 0x80f40003, - PR_EMS_AB_NUM_OF_OPEN_RETRIES_ERROR = 0x80f4000a, - PR_EMS_AB_NUM_OF_TRANSFER_RETRIES = 0x80f50003, - PR_EMS_AB_NUM_OF_TRANSFER_RETRIES_ERROR = 0x80f5000a, - PR_EMS_AB_OBJECT_CLASS_CATEGORY = 0x80f60003, - PR_EMS_AB_OBJECT_CLASS_CATEGORY_ERROR = 0x80f6000a, - PR_EMS_AB_OBJECT_VERSION = 0x80f70003, - PR_EMS_AB_OBJECT_VERSION_ERROR = 0x80f7000a, - PR_EMS_AB_OFF_LINE_AB_CONTAINERS_O = 0x80f8000d, - PR_EMS_AB_OFF_LINE_AB_CONTAINERS_O_ERROR = 0x80f8000a, - PR_EMS_AB_OFF_LINE_AB_CONTAINERS = 0x80f8101e, - PR_EMS_AB_OFF_LINE_AB_CONTAINERS_UNICODE = 0x80f8101f, - PR_EMS_AB_OFF_LINE_AB_SCHEDULE = 0x80f90102, - PR_EMS_AB_OFF_LINE_AB_SCHEDULE_ERROR = 0x80f9000a, - PR_EMS_AB_OFF_LINE_AB_SERVER_O = 0x80fa000d, - PR_EMS_AB_OFF_LINE_AB_SERVER_O_ERROR = 0x80fa000a, - PR_EMS_AB_OFF_LINE_AB_SERVER = 0x80fa001e, - PR_EMS_AB_OFF_LINE_AB_SERVER_UNICODE = 0x80fa001f, - PR_EMS_AB_OFF_LINE_AB_STYLE = 0x80fb0003, - PR_EMS_AB_OFF_LINE_AB_STYLE_ERROR = 0x80fb000a, - PR_EMS_AB_OID_TYPE = 0x80fc0003, - PR_EMS_AB_OID_TYPE_ERROR = 0x80fc000a, - PR_EMS_AB_OM_OBJECT_CLASS = 0x80fd0102, - PR_EMS_AB_OM_OBJECT_CLASS_ERROR = 0x80fd000a, - PR_EMS_AB_OM_SYNTAX = 0x80fe0003, - PR_EMS_AB_OM_SYNTAX_ERROR = 0x80fe000a, - PR_EMS_AB_OOF_REPLY_TO_ORIGINATOR = 0x80ff000b, - PR_EMS_AB_OOF_REPLY_TO_ORIGINATOR_ERROR = 0x80ff000a, - PR_EMS_AB_OPEN_RETRY_INTERVAL = 0x81000003, - PR_EMS_AB_OPEN_RETRY_INTERVAL_ERROR = 0x8100000a, - PR_EMS_AB_ORGANIZATION_NAME = 0x8101101e, - PR_EMS_AB_ORGANIZATION_NAME_UNICODE = 0x8101101f, - PR_EMS_AB_ORGANIZATION_NAME_ERROR = 0x8101000a, - PR_EMS_AB_ORGANIZATIONAL_UNIT_NAME = 0x8102101e, - PR_EMS_AB_ORGANIZATIONAL_UNIT_NAME_UNICODE = 0x8102101f, - PR_EMS_AB_ORGANIZATIONAL_UNIT_NAME_ERROR = 0x8102000a, - PR_EMS_AB_ORIGINAL_DISPLAY_TABLE = 0x81030102, - PR_EMS_AB_ORIGINAL_DISPLAY_TABLE_ERROR = 0x8103000a, - PR_EMS_AB_ORIGINAL_DISPLAY_TABLE_MSDOS = 0x81040102, - PR_EMS_AB_ORIGINAL_DISPLAY_TABLE_MSDOS_ERROR = 0x8104000a, - PR_EMS_AB_OUTBOUND_SITES_O = 0x8105000d, - PR_EMS_AB_OUTBOUND_SITES_O_ERROR = 0x8105000a, - PR_EMS_AB_OUTBOUND_SITES = 0x8105101e, - PR_EMS_AB_OUTBOUND_SITES_UNICODE = 0x8105101f, - PR_EMS_AB_P_SELECTOR = 0x81060102, - PR_EMS_AB_P_SELECTOR_ERROR = 0x8106000a, - PR_EMS_AB_P_SELECTOR_INBOUND = 0x81070102, - PR_EMS_AB_P_SELECTOR_INBOUND_ERROR = 0x8107000a, - PR_EMS_AB_PER_MSG_DIALOG_DISPLAY_TABLE = 0x81080102, - PR_EMS_AB_PER_MSG_DIALOG_DISPLAY_TABLE_ERROR = 0x8108000a, - PR_EMS_AB_PER_RECIP_DIALOG_DISPLAY_TABLE = 0x81090102, - PR_EMS_AB_PER_RECIP_DIALOG_DISPLAY_TABLE_ERROR = 0x8109000a, - PR_EMS_AB_PERIOD_REP_SYNC_TIMES = 0x810a0102, - PR_EMS_AB_PERIOD_REP_SYNC_TIMES_ERROR = 0x810a000a, - PR_EMS_AB_PERIOD_REPL_STAGGER = 0x810b0003, - PR_EMS_AB_PERIOD_REPL_STAGGER_ERROR = 0x810b000a, - PR_EMS_AB_POSTAL_ADDRESS = 0x810c1102, - PR_EMS_AB_POSTAL_ADDRESS_ERROR = 0x810c000a, - PR_EMS_AB_PREFERRED_DELIVERY_METHOD = 0x810d1003, - PR_EMS_AB_PREFERRED_DELIVERY_METHOD_ERROR = 0x810d000a, - PR_EMS_AB_PRMD = 0x810e001e, - PR_EMS_AB_PRMD_UNICODE = 0x810e001f, - PR_EMS_AB_PRMD_ERROR = 0x810e000a, - PR_EMS_AB_PROXY_GENERATOR_DLL = 0x810f001e, - PR_EMS_AB_PROXY_GENERATOR_DLL_UNICODE = 0x810f001f, - PR_EMS_AB_PROXY_GENERATOR_DLL_ERROR = 0x810f000a, - PR_EMS_AB_PUBLIC_DELEGATES_BL_O = 0x8110000d, - PR_EMS_AB_PUBLIC_DELEGATES_BL_O_ERROR = 0x8110000a, - PR_EMS_AB_PUBLIC_DELEGATES_BL = 0x8110101e, - PR_EMS_AB_PUBLIC_DELEGATES_BL_UNICODE = 0x8110101f, - PR_EMS_AB_QUOTA_NOTIFICATION_SCHEDULE = 0x81110102, - PR_EMS_AB_QUOTA_NOTIFICATION_SCHEDULE_ERROR = 0x8111000a, - PR_EMS_AB_QUOTA_NOTIFICATION_STYLE = 0x81120003, - PR_EMS_AB_QUOTA_NOTIFICATION_STYLE_ERROR = 0x8112000a, - PR_EMS_AB_RANGE_LOWER = 0x81130003, - PR_EMS_AB_RANGE_LOWER_ERROR = 0x8113000a, - PR_EMS_AB_RANGE_UPPER = 0x81140003, - PR_EMS_AB_RANGE_UPPER_ERROR = 0x8114000a, - PR_EMS_AB_RAS_CALLBACK_NUMBER = 0x8115001e, - PR_EMS_AB_RAS_CALLBACK_NUMBER_UNICODE = 0x8115001f, - PR_EMS_AB_RAS_CALLBACK_NUMBER_ERROR = 0x8115000a, - PR_EMS_AB_RAS_PHONE_NUMBER = 0x8116001e, - PR_EMS_AB_RAS_PHONE_NUMBER_UNICODE = 0x8116001f, - PR_EMS_AB_RAS_PHONE_NUMBER_ERROR = 0x8116000a, - PR_EMS_AB_RAS_PHONEBOOK_ENTRY_NAME = 0x8117001e, - PR_EMS_AB_RAS_PHONEBOOK_ENTRY_NAME_UNICODE = 0x8117001f, - PR_EMS_AB_RAS_PHONEBOOK_ENTRY_NAME_ERROR = 0x8117000a, - PR_EMS_AB_RAS_REMOTE_SRVR_NAME = 0x8118001e, - PR_EMS_AB_RAS_REMOTE_SRVR_NAME_UNICODE = 0x8118001f, - PR_EMS_AB_RAS_REMOTE_SRVR_NAME_ERROR = 0x8118000a, - PR_EMS_AB_REGISTERED_ADDRESS = 0x81191102, - PR_EMS_AB_REGISTERED_ADDRESS_ERROR = 0x8119000a, - PR_EMS_AB_REMOTE_BRIDGE_HEAD = 0x811a001e, - PR_EMS_AB_REMOTE_BRIDGE_HEAD_UNICODE = 0x811a001f, - PR_EMS_AB_REMOTE_BRIDGE_HEAD_ERROR = 0x811a000a, - PR_EMS_AB_REMOTE_BRIDGE_HEAD_ADDRESS = 0x811b001e, - PR_EMS_AB_REMOTE_BRIDGE_HEAD_ADDRESS_UNICODE = 0x811b001f, - PR_EMS_AB_REMOTE_BRIDGE_HEAD_ADDRESS_ERROR = 0x811b000a, - PR_EMS_AB_REMOTE_OUT_BH_SERVER_O = 0x811c000d, - PR_EMS_AB_REMOTE_OUT_BH_SERVER_O_ERROR = 0x811c000a, - PR_EMS_AB_REMOTE_OUT_BH_SERVER = 0x811c001e, - PR_EMS_AB_REMOTE_OUT_BH_SERVER_UNICODE = 0x811c001f, - PR_EMS_AB_REMOTE_SITE_O = 0x811d000d, - PR_EMS_AB_REMOTE_SITE_O_ERROR = 0x811d000a, - PR_EMS_AB_REMOTE_SITE = 0x811d001e, - PR_EMS_AB_REMOTE_SITE_UNICODE = 0x811d001f, - PR_EMS_AB_REPLICATION_SENSITIVITY = 0x811e0003, - PR_EMS_AB_REPLICATION_SENSITIVITY_ERROR = 0x811e000a, - PR_EMS_AB_REPLICATION_STAGGER = 0x811f0003, - PR_EMS_AB_REPLICATION_STAGGER_ERROR = 0x811f000a, - PR_EMS_AB_REPORT_TO_ORIGINATOR = 0x8120000b, - PR_EMS_AB_REPORT_TO_ORIGINATOR_ERROR = 0x8120000a, - PR_EMS_AB_REPORT_TO_OWNER = 0x8121000b, - PR_EMS_AB_REPORT_TO_OWNER_ERROR = 0x8121000a, - PR_EMS_AB_REQ_SEQ = 0x81220003, - PR_EMS_AB_REQ_SEQ_ERROR = 0x8122000a, - PR_EMS_AB_RESPONSIBLE_LOCAL_DXA_O = 0x8123000d, - PR_EMS_AB_RESPONSIBLE_LOCAL_DXA_O_ERROR = 0x8123000a, - PR_EMS_AB_RESPONSIBLE_LOCAL_DXA = 0x8123001e, - PR_EMS_AB_RESPONSIBLE_LOCAL_DXA_UNICODE = 0x8123001f, - PR_EMS_AB_RID_SERVER_O = 0x8124000d, - PR_EMS_AB_RID_SERVER_O_ERROR = 0x8124000a, - PR_EMS_AB_RID_SERVER = 0x8124001e, - PR_EMS_AB_RID_SERVER_UNICODE = 0x8124001f, - PR_EMS_AB_ROLE_OCCUPANT_O = 0x8125000d, - PR_EMS_AB_ROLE_OCCUPANT_O_ERROR = 0x8125000a, - PR_EMS_AB_ROLE_OCCUPANT = 0x8125101e, - PR_EMS_AB_ROLE_OCCUPANT_UNICODE = 0x8125101f, - PR_EMS_AB_ROUTING_LIST = 0x8126101e, - PR_EMS_AB_ROUTING_LIST_UNICODE = 0x8126101f, - PR_EMS_AB_ROUTING_LIST_ERROR = 0x8126000a, - PR_EMS_AB_RTS_CHECKPOINT_SIZE = 0x81270003, - PR_EMS_AB_RTS_CHECKPOINT_SIZE_ERROR = 0x8127000a, - PR_EMS_AB_RTS_RECOVERY_TIMEOUT = 0x81280003, - PR_EMS_AB_RTS_RECOVERY_TIMEOUT_ERROR = 0x8128000a, - PR_EMS_AB_RTS_WINDOW_SIZE = 0x81290003, - PR_EMS_AB_RTS_WINDOW_SIZE_ERROR = 0x8129000a, - PR_EMS_AB_RUNS_ON_O = 0x812a000d, - PR_EMS_AB_RUNS_ON_O_ERROR = 0x812a000a, - PR_EMS_AB_RUNS_ON = 0x812a101e, - PR_EMS_AB_RUNS_ON_UNICODE = 0x812a101f, - PR_EMS_AB_S_SELECTOR = 0x812b0102, - PR_EMS_AB_S_SELECTOR_ERROR = 0x812b000a, - PR_EMS_AB_S_SELECTOR_INBOUND = 0x812c0102, - PR_EMS_AB_S_SELECTOR_INBOUND_ERROR = 0x812c000a, - PR_EMS_AB_SEARCH_FLAGS = 0x812d0003, - PR_EMS_AB_SEARCH_FLAGS_ERROR = 0x812d000a, - PR_EMS_AB_SEARCH_GUIDE = 0x812e1102, - PR_EMS_AB_SEARCH_GUIDE_ERROR = 0x812e000a, - PR_EMS_AB_SEE_ALSO_O = 0x812f000d, - PR_EMS_AB_SEE_ALSO_O_ERROR = 0x812f000a, - PR_EMS_AB_SEE_ALSO = 0x812f101e, - PR_EMS_AB_SEE_ALSO_UNICODE = 0x812f101f, - PR_EMS_AB_SERIAL_NUMBER = 0x8130101e, - PR_EMS_AB_SERIAL_NUMBER_UNICODE = 0x8130101f, - PR_EMS_AB_SERIAL_NUMBER_ERROR = 0x8130000a, - PR_EMS_AB_SERVICE_ACTION_FIRST = 0x81310003, - PR_EMS_AB_SERVICE_ACTION_FIRST_ERROR = 0x8131000a, - PR_EMS_AB_SERVICE_ACTION_OTHER = 0x81320003, - PR_EMS_AB_SERVICE_ACTION_OTHER_ERROR = 0x8132000a, - PR_EMS_AB_SERVICE_ACTION_SECOND = 0x81330003, - PR_EMS_AB_SERVICE_ACTION_SECOND_ERROR = 0x8133000a, - PR_EMS_AB_SERVICE_RESTART_DELAY = 0x81340003, - PR_EMS_AB_SERVICE_RESTART_DELAY_ERROR = 0x8134000a, - PR_EMS_AB_SERVICE_RESTART_MESSAGE = 0x8135001e, - PR_EMS_AB_SERVICE_RESTART_MESSAGE_UNICODE = 0x8135001f, - PR_EMS_AB_SERVICE_RESTART_MESSAGE_ERROR = 0x8135000a, - PR_EMS_AB_SESSION_DISCONNECT_TIMER = 0x81360003, - PR_EMS_AB_SESSION_DISCONNECT_TIMER_ERROR = 0x8136000a, - PR_EMS_AB_SITE_AFFINITY = 0x8137101e, - PR_EMS_AB_SITE_AFFINITY_UNICODE = 0x8137101f, - PR_EMS_AB_SITE_AFFINITY_ERROR = 0x8137000a, - PR_EMS_AB_SITE_PROXY_SPACE = 0x8138101e, - PR_EMS_AB_SITE_PROXY_SPACE_UNICODE = 0x8138101f, - PR_EMS_AB_SITE_PROXY_SPACE_ERROR = 0x8138000a, - PR_EMS_AB_SPACE_LAST_COMPUTED = 0x81390040, - PR_EMS_AB_SPACE_LAST_COMPUTED_ERROR = 0x8139000a, - PR_EMS_AB_STREET_ADDRESS = 0x813a001e, - PR_EMS_AB_STREET_ADDRESS_UNICODE = 0x813a001f, - PR_EMS_AB_STREET_ADDRESS_ERROR = 0x813a000a, - PR_EMS_AB_SUB_REFS_O = 0x813b000d, - PR_EMS_AB_SUB_REFS_O_ERROR = 0x813b000a, - PR_EMS_AB_SUB_REFS = 0x813b101e, - PR_EMS_AB_SUB_REFS_UNICODE = 0x813b101f, - PR_EMS_AB_SUBMISSION_CONT_LENGTH = 0x813c0003, - PR_EMS_AB_SUBMISSION_CONT_LENGTH_ERROR = 0x813c000a, - PR_EMS_AB_SUPPORTED_APPLICATION_CONTEXT = 0x813d1102, - PR_EMS_AB_SUPPORTED_APPLICATION_CONTEXT_ERROR = 0x813d000a, - PR_EMS_AB_SUPPORTING_STACK_O = 0x813e000d, - PR_EMS_AB_SUPPORTING_STACK_O_ERROR = 0x813e000a, - PR_EMS_AB_SUPPORTING_STACK = 0x813e101e, - PR_EMS_AB_SUPPORTING_STACK_UNICODE = 0x813e101f, - PR_EMS_AB_SUPPORTING_STACK_BL_O = 0x813f000d, - PR_EMS_AB_SUPPORTING_STACK_BL_O_ERROR = 0x813f000a, - PR_EMS_AB_SUPPORTING_STACK_BL = 0x813f101e, - PR_EMS_AB_SUPPORTING_STACK_BL_UNICODE = 0x813f101f, - PR_EMS_AB_T_SELECTOR = 0x81400102, - PR_EMS_AB_T_SELECTOR_ERROR = 0x8140000a, - PR_EMS_AB_T_SELECTOR_INBOUND = 0x81410102, - PR_EMS_AB_T_SELECTOR_INBOUND_ERROR = 0x8141000a, - PR_EMS_AB_TARGET_MTAS = 0x8142101e, - PR_EMS_AB_TARGET_MTAS_UNICODE = 0x8142101f, - PR_EMS_AB_TARGET_MTAS_ERROR = 0x8142000a, - PR_EMS_AB_TELETEX_TERMINAL_IDENTIFIER = 0x81431102, - PR_EMS_AB_TELETEX_TERMINAL_IDENTIFIER_ERROR = 0x8143000a, - PR_EMS_AB_TEMP_ASSOC_THRESHOLD = 0x81440003, - PR_EMS_AB_TEMP_ASSOC_THRESHOLD_ERROR = 0x8144000a, - PR_EMS_AB_TOMBSTONE_LIFETIME = 0x81450003, - PR_EMS_AB_TOMBSTONE_LIFETIME_ERROR = 0x8145000a, - PR_EMS_AB_TRACKING_LOG_PATH_NAME = 0x8146001e, - PR_EMS_AB_TRACKING_LOG_PATH_NAME_UNICODE = 0x8146001f, - PR_EMS_AB_TRACKING_LOG_PATH_NAME_ERROR = 0x8146000a, - PR_EMS_AB_TRANS_RETRY_MINS = 0x81470003, - PR_EMS_AB_TRANS_RETRY_MINS_ERROR = 0x8147000a, - PR_EMS_AB_TRANS_TIMEOUT_MINS = 0x81480003, - PR_EMS_AB_TRANS_TIMEOUT_MINS_ERROR = 0x8148000a, - PR_EMS_AB_TRANSFER_RETRY_INTERVAL = 0x81490003, - PR_EMS_AB_TRANSFER_RETRY_INTERVAL_ERROR = 0x8149000a, - PR_EMS_AB_TRANSFER_TIMEOUT_NON_URGENT = 0x814a0003, - PR_EMS_AB_TRANSFER_TIMEOUT_NON_URGENT_ERROR = 0x814a000a, - PR_EMS_AB_TRANSFER_TIMEOUT_NORMAL = 0x814b0003, - PR_EMS_AB_TRANSFER_TIMEOUT_NORMAL_ERROR = 0x814b000a, - PR_EMS_AB_TRANSFER_TIMEOUT_URGENT = 0x814c0003, - PR_EMS_AB_TRANSFER_TIMEOUT_URGENT_ERROR = 0x814c000a, - PR_EMS_AB_TRANSLATION_TABLE_USED = 0x814d0003, - PR_EMS_AB_TRANSLATION_TABLE_USED_ERROR = 0x814d000a, - PR_EMS_AB_TRANSPORT_EXPEDITED_DATA = 0x814e000b, - PR_EMS_AB_TRANSPORT_EXPEDITED_DATA_ERROR = 0x814e000a, - PR_EMS_AB_TRUST_LEVEL = 0x814f0003, - PR_EMS_AB_TRUST_LEVEL_ERROR = 0x814f000a, - PR_EMS_AB_TURN_REQUEST_THRESHOLD = 0x81500003, - PR_EMS_AB_TURN_REQUEST_THRESHOLD_ERROR = 0x8150000a, - PR_EMS_AB_TWO_WAY_ALTERNATE_FACILITY = 0x8151000b, - PR_EMS_AB_TWO_WAY_ALTERNATE_FACILITY_ERROR = 0x8151000a, - PR_EMS_AB_UNAUTH_ORIG_BL_O = 0x8152000d, - PR_EMS_AB_UNAUTH_ORIG_BL_O_ERROR = 0x8152000a, - PR_EMS_AB_UNAUTH_ORIG_BL = 0x8152101e, - PR_EMS_AB_UNAUTH_ORIG_BL_UNICODE = 0x8152101f, - PR_EMS_AB_USER_PASSWORD = 0x81531102, - PR_EMS_AB_USER_PASSWORD_ERROR = 0x8153000a, - PR_EMS_AB_USN_CREATED = 0x81540003, - PR_EMS_AB_USN_CREATED_ERROR = 0x8154000a, - PR_EMS_AB_USN_DSA_LAST_OBJ_REMOVED = 0x81550003, - PR_EMS_AB_USN_DSA_LAST_OBJ_REMOVED_ERROR = 0x8155000a, - PR_EMS_AB_USN_LAST_OBJ_REM = 0x81560003, - PR_EMS_AB_USN_LAST_OBJ_REM_ERROR = 0x8156000a, - PR_EMS_AB_USN_SOURCE = 0x81570003, - PR_EMS_AB_USN_SOURCE_ERROR = 0x8157000a, - PR_EMS_AB_X121_ADDRESS = 0x8158101e, - PR_EMS_AB_X121_ADDRESS_UNICODE = 0x8158101f, - PR_EMS_AB_X121_ADDRESS_ERROR = 0x8158000a, - PR_EMS_AB_X25_CALL_USER_DATA_INCOMING = 0x81590102, - PR_EMS_AB_X25_CALL_USER_DATA_INCOMING_ERROR = 0x8159000a, - PR_EMS_AB_X25_CALL_USER_DATA_OUTGOING = 0x815a0102, - PR_EMS_AB_X25_CALL_USER_DATA_OUTGOING_ERROR = 0x815a000a, - PR_EMS_AB_X25_FACILITIES_DATA_INCOMING = 0x815b0102, - PR_EMS_AB_X25_FACILITIES_DATA_INCOMING_ERROR = 0x815b000a, - PR_EMS_AB_X25_FACILITIES_DATA_OUTGOING = 0x815c0102, - PR_EMS_AB_X25_FACILITIES_DATA_OUTGOING_ERROR = 0x815c000a, - PR_EMS_AB_X25_LEASED_LINE_PORT = 0x815d0102, - PR_EMS_AB_X25_LEASED_LINE_PORT_ERROR = 0x815d000a, - PR_EMS_AB_X25_LEASED_OR_SWITCHED = 0x815e000b, - PR_EMS_AB_X25_LEASED_OR_SWITCHED_ERROR = 0x815e000a, - PR_EMS_AB_X25_REMOTE_MTA_PHONE = 0x815f001e, - PR_EMS_AB_X25_REMOTE_MTA_PHONE_UNICODE = 0x815f001f, - PR_EMS_AB_X25_REMOTE_MTA_PHONE_ERROR = 0x815f000a, - PR_EMS_AB_X400_ATTACHMENT_TYPE = 0x81600102, - PR_EMS_AB_X400_ATTACHMENT_TYPE_ERROR = 0x8160000a, - PR_EMS_AB_X400_SELECTOR_SYNTAX = 0x81610003, - PR_EMS_AB_X400_SELECTOR_SYNTAX_ERROR = 0x8161000a, - PR_EMS_AB_X500_ACCESS_CONTROL_LIST = 0x81620102, - PR_EMS_AB_X500_ACCESS_CONTROL_LIST_ERROR = 0x8162000a, - PR_EMS_AB_XMIT_TIMEOUT_NON_URGENT = 0x81630003, - PR_EMS_AB_XMIT_TIMEOUT_NON_URGENT_ERROR = 0x8163000a, - PR_EMS_AB_XMIT_TIMEOUT_NORMAL = 0x81640003, - PR_EMS_AB_XMIT_TIMEOUT_NORMAL_ERROR = 0x8164000a, - PR_EMS_AB_XMIT_TIMEOUT_URGENT = 0x81650003, - PR_EMS_AB_XMIT_TIMEOUT_URGENT_ERROR = 0x8165000a, - PR_EMS_AB_SITE_FOLDER_GUID = 0x81660102, - PR_EMS_AB_SITE_FOLDER_GUID_ERROR = 0x8166000a, - PR_EMS_AB_SITE_FOLDER_SERVER_O = 0x8167000d, - PR_EMS_AB_SITE_FOLDER_SERVER_O_ERROR = 0x8167000a, - PR_EMS_AB_SITE_FOLDER_SERVER = 0x8167001e, - PR_EMS_AB_SITE_FOLDER_SERVER_UNICODE = 0x8167001f, - PR_EMS_AB_REPLICATION_MAIL_MSG_SIZE = 0x81680003, - PR_EMS_AB_REPLICATION_MAIL_MSG_SIZE_ERROR = 0x8168000a, - PR_EMS_AB_MAXIMUM_OBJECT_ID = 0x81690102, - PR_EMS_AB_MAXIMUM_OBJECT_ID_ERROR = 0x8169000a, - PR_EMS_AB_NETWORK_ADDRESS = 0x8170101e, - PR_EMS_AB_NETWORK_ADDRESS_UNICODE = 0x8170101f, - PR_EMS_AB_NETWORK_ADDRESS_ERROR = 0x8170000a, - PR_EMS_AB_LDAP_DISPLAY_NAME = 0x8171101e, - PR_EMS_AB_LDAP_DISPLAY_NAME_UNICODE = 0x8171101f, - PR_EMS_AB_LDAP_DISPLAY_NAME_ERROR = 0x8171000a, - PR_EMS_AB_SCHEMA_FLAGS = 0x81730003, - PR_EMS_AB_SCHEMA_FLAGS_ERROR = 0x8173000a, - PR_EMS_AB_BRIDGEHEAD_SERVERS_O = 0x8174000d, - PR_EMS_AB_BRIDGEHEAD_SERVERS_O_ERROR = 0x8174000a, - PR_EMS_AB_BRIDGEHEAD_SERVERS = 0x8174101e, - PR_EMS_AB_BRIDGEHEAD_SERVERS_UNICODE = 0x8174101f, - PR_EMS_AB_WWW_HOME_PAGE = 0x8175001e, - PR_EMS_AB_WWW_HOME_PAGE_UNICODE = 0x8175001f, - PR_EMS_AB_WWW_HOME_PAGE_ERROR = 0x8175000a, - PR_EMS_AB_NNTP_CONTENT_FORMAT = 0x8176001e, - PR_EMS_AB_NNTP_CONTENT_FORMAT_UNICODE = 0x8176001f, - PR_EMS_AB_NNTP_CONTENT_FORMAT_ERROR = 0x8176000a, - PR_EMS_AB_POP_CONTENT_FORMAT = 0x8177001e, - PR_EMS_AB_POP_CONTENT_FORMAT_UNICODE = 0x8177001f, - PR_EMS_AB_POP_CONTENT_FORMAT_ERROR = 0x8177000a, - PR_EMS_AB_LANGUAGE = 0x81780003, - PR_EMS_AB_LANGUAGE_ERROR = 0x8178000a, - PR_EMS_AB_POP_CHARACTER_SET = 0x8179001e, - PR_EMS_AB_POP_CHARACTER_SET_UNICODE = 0x8179001f, - PR_EMS_AB_POP_CHARACTER_SET_ERROR = 0x8179000a, - PR_EMS_AB_USN_INTERSITE = 0x817a0003, - PR_EMS_AB_USN_INTERSITE_ERROR = 0x817a000a, - PR_EMS_AB_SUB_SITE = 0x817b001e, - PR_EMS_AB_SUB_SITE_UNICODE = 0x817b001f, - PR_EMS_AB_SUB_SITE_ERROR = 0x817b000a, - PR_EMS_AB_SCHEMA_VERSION = 0x817c1003, - PR_EMS_AB_SCHEMA_VERSION_ERROR = 0x817c000a, - PR_EMS_AB_NNTP_CHARACTER_SET = 0x817d001e, - PR_EMS_AB_NNTP_CHARACTER_SET_UNICODE = 0x817d001f, - PR_EMS_AB_NNTP_CHARACTER_SET_ERROR = 0x817d000a, - PR_EMS_AB_USE_SERVER_VALUES = 0x817e000b, - PR_EMS_AB_USE_SERVER_VALUES_ERROR = 0x817e000a, - PR_EMS_AB_ENABLED_PROTOCOLS = 0x817f0003, - PR_EMS_AB_ENABLED_PROTOCOLS_ERROR = 0x817f000a, - PR_EMS_AB_CONNECTION_LIST_FILTER = 0x81800102, - PR_EMS_AB_CONNECTION_LIST_FILTER_ERROR = 0x8180000a, - PR_EMS_AB_AVAILABLE_AUTHORIZATION_PACKAGES = 0x8181101e, - PR_EMS_AB_AVAILABLE_AUTHORIZATION_PACKAGES_UNICODE = 0x8181101f, - PR_EMS_AB_AVAILABLE_AUTHORIZATION_PACKAGES_ERROR = 0x8181000a, - PR_EMS_AB_CHARACTER_SET_LIST = 0x8182101e, - PR_EMS_AB_CHARACTER_SET_LIST_UNICODE = 0x8182101f, - PR_EMS_AB_CHARACTER_SET_LIST_ERROR = 0x8182000a, - PR_EMS_AB_USE_SITE_VALUES = 0x8183000b, - PR_EMS_AB_USE_SITE_VALUES_ERROR = 0x8183000a, - PR_EMS_AB_ENABLED_AUTHORIZATION_PACKAGES = 0x8184101e, - PR_EMS_AB_ENABLED_AUTHORIZATION_PACKAGES_UNICODE = 0x8184101f, - PR_EMS_AB_ENABLED_AUTHORIZATION_PACKAGES_ERROR = 0x8184000a, - PR_EMS_AB_CHARACTER_SET = 0x8185001e, - PR_EMS_AB_CHARACTER_SET_UNICODE = 0x8185001f, - PR_EMS_AB_CHARACTER_SET_ERROR = 0x8185000a, - PR_EMS_AB_CONTENT_TYPE = 0x81860003, - PR_EMS_AB_CONTENT_TYPE_ERROR = 0x8186000a, - PR_EMS_AB_ANONYMOUS_ACCESS = 0x8187000b, - PR_EMS_AB_ANONYMOUS_ACCESS_ERROR = 0x8187000a, - PR_EMS_AB_CONTROL_MSG_FOLDER_ID = 0x81880102, - PR_EMS_AB_CONTROL_MSG_FOLDER_ID_ERROR = 0x8188000a, - PR_EMS_AB_USENET_SITE_NAME = 0x8189001e, - PR_EMS_AB_USENET_SITE_NAME_UNICODE = 0x8189001f, - PR_EMS_AB_USENET_SITE_NAME_ERROR = 0x8189000a, - PR_EMS_AB_CONTROL_MSG_RULES = 0x818a0102, - PR_EMS_AB_CONTROL_MSG_RULES_ERROR = 0x818a000a, - PR_EMS_AB_AVAILABLE_DISTRIBUTIONS = 0x818b001e, - PR_EMS_AB_AVAILABLE_DISTRIBUTIONS_UNICODE = 0x818b001f, - PR_EMS_AB_AVAILABLE_DISTRIBUTIONS_ERROR = 0x818b000a, - PR_EMS_AB_OUTBOUND_HOST = 0x818d0102, - PR_EMS_AB_OUTBOUND_HOST_ERROR = 0x818d000a, - PR_EMS_AB_INBOUND_HOST = 0x818e101e, - PR_EMS_AB_INBOUND_HOST_UNICODE = 0x818e101f, - PR_EMS_AB_INBOUND_HOST_ERROR = 0x818e000a, - PR_EMS_AB_OUTGOING_MSG_SIZE_LIMIT = 0x818f0003, - PR_EMS_AB_OUTGOING_MSG_SIZE_LIMIT_ERROR = 0x818f000a, - PR_EMS_AB_INCOMING_MSG_SIZE_LIMIT = 0x81900003, - PR_EMS_AB_INCOMING_MSG_SIZE_LIMIT_ERROR = 0x8190000a, - PR_EMS_AB_SEND_TNEF = 0x8191000b, - PR_EMS_AB_SEND_TNEF_ERROR = 0x8191000a, - PR_EMS_AB_AUTHORIZED_PASSWORD_CONFIRM = 0x81920102, - PR_EMS_AB_AUTHORIZED_PASSWORD_CONFIRM_ERROR = 0x8192000a, - PR_EMS_AB_INBOUND_NEWSFEED = 0x8193001e, - PR_EMS_AB_INBOUND_NEWSFEED_UNICODE = 0x8193001f, - PR_EMS_AB_INBOUND_NEWSFEED_ERROR = 0x8193000a, - PR_EMS_AB_NEWSFEED_TYPE = 0x81940003, - PR_EMS_AB_NEWSFEED_TYPE_ERROR = 0x8194000a, - PR_EMS_AB_OUTBOUND_NEWSFEED = 0x8195001e, - PR_EMS_AB_OUTBOUND_NEWSFEED_UNICODE = 0x8195001f, - PR_EMS_AB_OUTBOUND_NEWSFEED_ERROR = 0x8195000a, - PR_EMS_AB_NEWSGROUP_LIST = 0x81960102, - PR_EMS_AB_NEWSGROUP_LIST_ERROR = 0x8196000a, - PR_EMS_AB_NNTP_DISTRIBUTIONS = 0x8197101e, - PR_EMS_AB_NNTP_DISTRIBUTIONS_UNICODE = 0x8197101f, - PR_EMS_AB_NNTP_DISTRIBUTIONS_ERROR = 0x8197000a, - PR_EMS_AB_NEWSGROUP = 0x8198001e, - PR_EMS_AB_NEWSGROUP_UNICODE = 0x8198001f, - PR_EMS_AB_NEWSGROUP_ERROR = 0x8198000a, - PR_EMS_AB_MODERATOR = 0x8199001e, - PR_EMS_AB_MODERATOR_UNICODE = 0x8199001f, - PR_EMS_AB_MODERATOR_ERROR = 0x8199000a, - PR_EMS_AB_AUTHENTICATION_TO_USE = 0x819a001e, - PR_EMS_AB_AUTHENTICATION_TO_USE_UNICODE = 0x819a001f, - PR_EMS_AB_AUTHENTICATION_TO_USE_ERROR = 0x819a000a, - PR_EMS_AB_HTTP_PUB_GAL = 0x819b000b, - PR_EMS_AB_HTTP_PUB_GAL_ERROR = 0x819b000a, - PR_EMS_AB_HTTP_PUB_GAL_LIMIT = 0x819c0003, - PR_EMS_AB_HTTP_PUB_GAL_LIMIT_ERROR = 0x819c000a, - PR_EMS_AB_HTTP_PUB_PF = 0x819e1102, - PR_EMS_AB_HTTP_PUB_PF_ERROR = 0x819e000a, - PR_EMS_AB_X500_RDN = 0x81a1001e, - PR_EMS_AB_X500_RDN_UNICODE = 0x81a1001f, - PR_EMS_AB_X500_RDN_ERROR = 0x81a1000a, - PR_EMS_AB_X500_NC = 0x81a2001e, - PR_EMS_AB_X500_NC_UNICODE = 0x81a2001f, - PR_EMS_AB_X500_NC_ERROR = 0x81a2000a, - PR_EMS_AB_REFERRAL_LIST = 0x81a3101e, - PR_EMS_AB_REFERRAL_LIST_UNICODE = 0x81a3101f, - PR_EMS_AB_REFERRAL_LIST_ERROR = 0x81a3000a, - PR_EMS_AB_NNTP_DISTRIBUTIONS_FLAG = 0x81a4000b, - PR_EMS_AB_NNTP_DISTRIBUTIONS_FLAG_ERROR = 0x81a4000a, - PR_EMS_AB_ASSOC_PROTOCOL_CFG_NNTP_O = 0x81a5000d, - PR_EMS_AB_ASSOC_PROTOCOL_CFG_NNTP_O_ERROR = 0x81a5000a, - PR_EMS_AB_ASSOC_PROTOCOL_CFG_NNTP = 0x81a5001e, - PR_EMS_AB_ASSOC_PROTOCOL_CFG_NNTP_UNICODE = 0x81a5001f, - PR_EMS_AB_NNTP_NEWSFEEDS_O = 0x81a6000d, - PR_EMS_AB_NNTP_NEWSFEEDS_O_ERROR = 0x81a6000a, - PR_EMS_AB_NNTP_NEWSFEEDS = 0x81a6101e, - PR_EMS_AB_NNTP_NEWSFEEDS_UNICODE = 0x81a6101f, - PR_EMS_AB_ENABLED_PROTOCOL_CFG = 0x81a8000b, - PR_EMS_AB_ENABLED_PROTOCOL_CFG_ERROR = 0x81a8000a, - PR_EMS_AB_HTTP_PUB_AB_ATTRIBUTES = 0x81a9101e, - PR_EMS_AB_HTTP_PUB_AB_ATTRIBUTES_UNICODE = 0x81a9101f, - PR_EMS_AB_HTTP_PUB_AB_ATTRIBUTES_ERROR = 0x81a9000a, - PR_EMS_AB_HTTP_SERVERS = 0x81ab101e, - PR_EMS_AB_HTTP_SERVERS_UNICODE = 0x81ab101f, - PR_EMS_AB_HTTP_SERVERS_ERROR = 0x81ab000a, - PR_EMS_AB_MODERATED = 0x81ac000b, - PR_EMS_AB_MODERATED_ERROR = 0x81ac000a, - PR_EMS_AB_RAS_ACCOUNT = 0x81ad001e, - PR_EMS_AB_RAS_ACCOUNT_UNICODE = 0x81ad001f, - PR_EMS_AB_RAS_ACCOUNT_ERROR = 0x81ad000a, - PR_EMS_AB_RAS_PASSWORD = 0x81ae0102, - PR_EMS_AB_RAS_PASSWORD_ERROR = 0x81ae000a, - PR_EMS_AB_INCOMING_PASSWORD = 0x81af0102, - PR_EMS_AB_INCOMING_PASSWORD_ERROR = 0x81af000a, - PR_EMS_AB_OUTBOUND_HOST_TYPE = 0x81b0000b, - PR_EMS_AB_OUTBOUND_HOST_TYPE_ERROR = 0x81b0000a, - PR_EMS_AB_PROXY_GENERATION_ENABLED = 0x81b1000b, - PR_EMS_AB_PROXY_GENERATION_ENABLED_ERROR = 0x81b1000a, - PR_EMS_AB_ROOT_NEWSGROUPS_FOLDER_ID = 0x81b20102, - PR_EMS_AB_ROOT_NEWSGROUPS_FOLDER_ID_ERROR = 0x81b2000a, - PR_EMS_AB_CONNECTION_TYPE = 0x81b3000b, - PR_EMS_AB_CONNECTION_TYPE_ERROR = 0x81b3000a, - PR_EMS_AB_CONNECTION_LIST_FILTER_TYPE = 0x81b40003, - PR_EMS_AB_CONNECTION_LIST_FILTER_TYPE_ERROR = 0x81b4000a, - PR_EMS_AB_PORT_NUMBER = 0x81b50003, - PR_EMS_AB_PORT_NUMBER_ERROR = 0x81b5000a, - PR_EMS_AB_PROTOCOL_SETTINGS = 0x81b6101e, - PR_EMS_AB_PROTOCOL_SETTINGS_UNICODE = 0x81b6101f, - PR_EMS_AB_PROTOCOL_SETTINGS_ERROR = 0x81b6000a, - PR_EMS_AB_GROUP_BY_ATTR_1 = 0x81b7001e, - PR_EMS_AB_GROUP_BY_ATTR_1_UNICODE = 0x81b7001f, - PR_EMS_AB_GROUP_BY_ATTR_1_ERROR = 0x81b7000a, - PR_EMS_AB_GROUP_BY_ATTR_2 = 0x81b8001e, - PR_EMS_AB_GROUP_BY_ATTR_2_UNICODE = 0x81b8001f, - PR_EMS_AB_GROUP_BY_ATTR_2_ERROR = 0x81b8000a, - PR_EMS_AB_GROUP_BY_ATTR_3 = 0x81b9001e, - PR_EMS_AB_GROUP_BY_ATTR_3_UNICODE = 0x81b9001f, - PR_EMS_AB_GROUP_BY_ATTR_3_ERROR = 0x81b9000a, - PR_EMS_AB_GROUP_BY_ATTR_4 = 0x81ba001e, - PR_EMS_AB_GROUP_BY_ATTR_4_UNICODE = 0x81ba001f, - PR_EMS_AB_GROUP_BY_ATTR_4_ERROR = 0x81ba000a, - PR_EMS_AB_VIEW_SITE = 0x81be001e, - PR_EMS_AB_VIEW_SITE_UNICODE = 0x81be001f, - PR_EMS_AB_VIEW_SITE_ERROR = 0x81be000a, - PR_EMS_AB_VIEW_CONTAINER_1 = 0x81bf001e, - PR_EMS_AB_VIEW_CONTAINER_1_UNICODE = 0x81bf001f, - PR_EMS_AB_VIEW_CONTAINER_1_ERROR = 0x81bf000a, - PR_EMS_AB_VIEW_CONTAINER_2 = 0x81c0001e, - PR_EMS_AB_VIEW_CONTAINER_2_UNICODE = 0x81c0001f, - PR_EMS_AB_VIEW_CONTAINER_2_ERROR = 0x81c0000a, - PR_EMS_AB_VIEW_CONTAINER_3 = 0x81c1001e, - PR_EMS_AB_VIEW_CONTAINER_3_UNICODE = 0x81c1001f, - PR_EMS_AB_VIEW_CONTAINER_3_ERROR = 0x81c1000a, - PR_EMS_AB_PROMO_EXPIRATION = 0x81c20040, - PR_EMS_AB_PROMO_EXPIRATION_ERROR = 0x81c2000a, - PR_EMS_AB_DISABLED_GATEWAY_PROXY = 0x81c3101e, - PR_EMS_AB_DISABLED_GATEWAY_PROXY_UNICODE = 0x81c3101f, - PR_EMS_AB_DISABLED_GATEWAY_PROXY_ERROR = 0x81c3000a, - PR_EMS_AB_COMPROMISED_KEY_LIST = 0x81c40102, - PR_EMS_AB_COMPROMISED_KEY_LIST_ERROR = 0x81c4000a, - PR_EMS_AB_INSADMIN_O = 0x81c5000d, - PR_EMS_AB_INSADMIN_O_ERROR = 0x81c5000a, - PR_EMS_AB_INSADMIN = 0x81c5001e, - PR_EMS_AB_INSADMIN_UNICODE = 0x81c5001f, - PR_EMS_AB_OVERRIDE_NNTP_CONTENT_FORMAT = 0x81c6000b, - PR_EMS_AB_OVERRIDE_NNTP_CONTENT_FORMAT_ERROR = 0x81c6000a, - PR_EMS_AB_OBJ_VIEW_CONTAINERS_O = 0x81c7000d, - PR_EMS_AB_OBJ_VIEW_CONTAINERS_O_ERROR = 0x81c7000a, - PR_EMS_AB_OBJ_VIEW_CONTAINERS = 0x81c7101e, - PR_EMS_AB_OBJ_VIEW_CONTAINERS_UNICODE = 0x81c7101f, - PR_EMS_AB_VIEW_FLAGS = 0x8c180003, - PR_EMS_AB_VIEW_FLAGS_ERROR = 0x8c18000a, - PR_EMS_AB_GROUP_BY_ATTR_VALUE_STR = 0x8c19001e, - PR_EMS_AB_GROUP_BY_ATTR_VALUE_STR_UNICODE = 0x8c19001f, - PR_EMS_AB_GROUP_BY_ATTR_VALUE_STR_ERROR = 0x8c19000a, - PR_EMS_AB_GROUP_BY_ATTR_VALUE_DN_O = 0x8c1a000d, - PR_EMS_AB_GROUP_BY_ATTR_VALUE_DN_O_ERROR = 0x8c1a000a, - PR_EMS_AB_GROUP_BY_ATTR_VALUE_DN = 0x8c1a001e, - PR_EMS_AB_GROUP_BY_ATTR_VALUE_DN_UNICODE = 0x8c1a001f, - PR_EMS_AB_VIEW_DEFINITION = 0x8c1b1102, - PR_EMS_AB_VIEW_DEFINITION_ERROR = 0x8c1b000a, - PR_EMS_AB_MIME_TYPES = 0x8c1c0102, - PR_EMS_AB_MIME_TYPES_ERROR = 0x8c1c000a, - PR_EMS_AB_LDAP_SEARCH_CFG = 0x8c1d0003, - PR_EMS_AB_LDAP_SEARCH_CFG_ERROR = 0x8c1d000a, - PR_EMS_AB_INBOUND_DN_O = 0x8c1e000d, - PR_EMS_AB_INBOUND_DN_O_ERROR = 0x8c1e000a, - PR_EMS_AB_INBOUND_DN = 0x8c1e001e, - PR_EMS_AB_INBOUND_DN_UNICODE = 0x8c1e001f, - PR_EMS_AB_INBOUND_NEWSFEED_TYPE = 0x8c1f000b, - PR_EMS_AB_INBOUND_NEWSFEED_TYPE_ERROR = 0x8c1f000a, - PR_EMS_AB_INBOUND_ACCEPT_ALL = 0x8c20000b, - PR_EMS_AB_INBOUND_ACCEPT_ALL_ERROR = 0x8c20000a, - PR_EMS_AB_ENABLED = 0x8c21000b, - PR_EMS_AB_ENABLED_ERROR = 0x8c21000a, - PR_EMS_AB_PRESERVE_INTERNET_CONTENT = 0x8c22000b, - PR_EMS_AB_PRESERVE_INTERNET_CONTENT_ERROR = 0x8c22000a, - PR_EMS_AB_DISABLE_DEFERRED_COMMIT = 0x8c23000b, - PR_EMS_AB_DISABLE_DEFERRED_COMMIT_ERROR = 0x8c23000a, - PR_EMS_AB_CLIENT_ACCESS_ENABLED = 0x8c24000b, - PR_EMS_AB_CLIENT_ACCESS_ENABLED_ERROR = 0x8c24000a, - PR_EMS_AB_REQUIRE_SSL = 0x8c25000b, - PR_EMS_AB_REQUIRE_SSL_ERROR = 0x8c25000a, - PR_EMS_AB_ANONYMOUS_ACCOUNT = 0x8c26001e, - PR_EMS_AB_ANONYMOUS_ACCOUNT_UNICODE = 0x8c26001f, - PR_EMS_AB_ANONYMOUS_ACCOUNT_ERROR = 0x8c26000a, - PR_EMS_AB_CERTIFICATE_CHAIN_V3 = 0x8c270102, - PR_EMS_AB_CERTIFICATE_CHAIN_V3_ERROR = 0x8c27000a, - PR_EMS_AB_CERTIFICATE_REVOCATION_LIST_V3 = 0x8c280102, - PR_EMS_AB_CERTIFICATE_REVOCATION_LIST_V3_ERROR = 0x8c28000a, - PR_EMS_AB_CERTIFICATE_REVOCATION_LIST_V1 = 0x8c290102, - PR_EMS_AB_CERTIFICATE_REVOCATION_LIST_V1_ERROR = 0x8c29000a, - PR_EMS_AB_CROSS_CERTIFICATE_CRL = 0x8c301102, - PR_EMS_AB_CROSS_CERTIFICATE_CRL_ERROR = 0x8c30000a, - PR_EMS_AB_SEND_EMAIL_MESSAGE = 0x8c31000b, - PR_EMS_AB_SEND_EMAIL_MESSAGE_ERROR = 0x8c31000a, - PR_EMS_AB_ENABLE_COMPATIBILITY = 0x8c32000b, - PR_EMS_AB_ENABLE_COMPATIBILITY_ERROR = 0x8c32000a, - PR_EMS_AB_SMIME_ALG_LIST_NA = 0x8c33101e, - PR_EMS_AB_SMIME_ALG_LIST_NA_UNICODE = 0x8c33101f, - PR_EMS_AB_SMIME_ALG_LIST_NA_ERROR = 0x8c33000a, - PR_EMS_AB_SMIME_ALG_LIST_OTHER = 0x8c34101e, - PR_EMS_AB_SMIME_ALG_LIST_OTHER_UNICODE = 0x8c34101f, - PR_EMS_AB_SMIME_ALG_LIST_OTHER_ERROR = 0x8c34000a, - PR_EMS_AB_SMIME_ALG_SELECTED_NA = 0x8c35001e, - PR_EMS_AB_SMIME_ALG_SELECTED_NA_UNICODE = 0x8c35001f, - PR_EMS_AB_SMIME_ALG_SELECTED_NA_ERROR = 0x8c35000a, - PR_EMS_AB_SMIME_ALG_SELECTED_OTHER = 0x8c36001e, - PR_EMS_AB_SMIME_ALG_SELECTED_OTHER_UNICODE = 0x8c36001f, - PR_EMS_AB_SMIME_ALG_SELECTED_OTHER_ERROR = 0x8c36000a, - PR_EMS_AB_DEFAULT_MESSAGE_FORMAT = 0x8c37000b, - PR_EMS_AB_DEFAULT_MESSAGE_FORMAT_ERROR = 0x8c37000a, - PR_EMS_AB_TYPE = 0x8c38001e, - PR_EMS_AB_TYPE_UNICODE = 0x8c38001f, - PR_EMS_AB_TYPE_ERROR = 0x8c38000a, - PR_EMS_AB_DO_OAB_VERSION = 0x8c3a0003, - PR_EMS_AB_DO_OAB_VERSION_ERROR = 0x8c3a000a, - PR_EMS_AB_VOICE_MAIL_SYSTEM_GUID = 0x8c3b0102, - PR_EMS_AB_VOICE_MAIL_SYSTEM_GUID_ERROR = 0x8c3b000a, - PR_EMS_AB_VOICE_MAIL_USER_ID = 0x8c3c001e, - PR_EMS_AB_VOICE_MAIL_USER_ID_UNICODE = 0x8c3c001f, - PR_EMS_AB_VOICE_MAIL_USER_ID_ERROR = 0x8c3c000a, - PR_EMS_AB_VOICE_MAIL_PASSWORD = 0x8c3d001e, - PR_EMS_AB_VOICE_MAIL_PASSWORD_UNICODE = 0x8c3d001f, - PR_EMS_AB_VOICE_MAIL_PASSWORD_ERROR = 0x8c3d000a, - PR_EMS_AB_VOICE_MAIL_RECORDED_NAME = 0x8c3e0102, - PR_EMS_AB_VOICE_MAIL_RECORDED_NAME_ERROR = 0x8c3e000a, - PR_EMS_AB_VOICE_MAIL_GREETINGS = 0x8c3f101e, - PR_EMS_AB_VOICE_MAIL_GREETINGS_UNICODE = 0x8c3f101f, - PR_EMS_AB_VOICE_MAIL_GREETINGS_ERROR = 0x8c3f000a, - PR_EMS_AB_VOICE_MAIL_FLAGS = 0x8c401102, - PR_EMS_AB_VOICE_MAIL_FLAGS_ERROR = 0x8c40000a, - PR_EMS_AB_VOICE_MAIL_VOLUME = 0x8c410003, - PR_EMS_AB_VOICE_MAIL_VOLUME_ERROR = 0x8c41000a, - PR_EMS_AB_VOICE_MAIL_SPEED = 0x8c420003, - PR_EMS_AB_VOICE_MAIL_SPEED_ERROR = 0x8c42000a, - PR_EMS_AB_VOICE_MAIL_RECORDING_LENGTH = 0x8c431003, - PR_EMS_AB_VOICE_MAIL_RECORDING_LENGTH_ERROR = 0x8c43000a, - PR_EMS_AB_DISPLAY_NAME_SUFFIX = 0x8c44001e, - PR_EMS_AB_DISPLAY_NAME_SUFFIX_UNICODE = 0x8c44001f, - PR_EMS_AB_DISPLAY_NAME_SUFFIX_ERROR = 0x8c44000a, - PR_EMS_AB_ATTRIBUTE_CERTIFICATE = 0x8c451102, - PR_EMS_AB_ATTRIBUTE_CERTIFICATE_ERROR = 0x8c45000a, - PR_EMS_AB_DELTA_REVOCATION_LIST = 0x8c461102, - PR_EMS_AB_DELTA_REVOCATION_LIST_ERROR = 0x8c46000a, - PR_EMS_AB_SECURITY_POLICY = 0x8c471102, - PR_EMS_AB_SECURITY_POLICY_ERROR = 0x8c47000a, - PR_EMS_AB_SUPPORT_SMIME_SIGNATURES = 0x8c48000b, - PR_EMS_AB_SUPPORT_SMIME_SIGNATURES_ERROR = 0x8c48000a, - PR_EMS_AB_DELEGATE_USER = 0x8c49000b, - PR_EMS_AB_DELEGATE_USER_ERROR = 0x8c49000a, - PR_EMS_AB_LIST_PUBLIC_FOLDERS = 0x8c50000b, - PR_EMS_AB_LIST_PUBLIC_FOLDERS_ERROR = 0x8c50000a, - PR_EMS_AB_LABELEDURI = 0x8c51001e, - PR_EMS_AB_LABELEDURI_UNICODE = 0x8c51001f, - PR_EMS_AB_LABELEDURI_ERROR = 0x8c51000a, - PR_EMS_AB_RETURN_EXACT_MSG_SIZE = 0x8c52000b, - PR_EMS_AB_RETURN_EXACT_MSG_SIZE_ERROR = 0x8c52000a, - PR_EMS_AB_GENERATION_QUALIFIER = 0x8c53001e, - PR_EMS_AB_GENERATION_QUALIFIER_UNICODE = 0x8c53001f, - PR_EMS_AB_GENERATION_QUALIFIER_ERROR = 0x8c53000a, - PR_EMS_AB_HOUSE_IDENTIFIER = 0x8c54001e, - PR_EMS_AB_HOUSE_IDENTIFIER_UNICODE = 0x8c54001f, - PR_EMS_AB_HOUSE_IDENTIFIER_ERROR = 0x8c54000a, - PR_EMS_AB_SUPPORTED_ALGORITHMS = 0x8c550102, - PR_EMS_AB_SUPPORTED_ALGORITHMS_ERROR = 0x8c55000a, - PR_EMS_AB_DMD_NAME = 0x8c56001e, - PR_EMS_AB_DMD_NAME_UNICODE = 0x8c56001f, - PR_EMS_AB_DMD_NAME_ERROR = 0x8c56000a, - PR_EMS_AB_EXTENSION_ATTRIBUTE_11 = 0x8c57001e, - PR_EMS_AB_EXTENSION_ATTRIBUTE_11_UNICODE = 0x8c57001f, - PR_EMS_AB_EXTENSION_ATTRIBUTE_11_ERROR = 0x8c57000a, - PR_EMS_AB_EXTENSION_ATTRIBUTE_12 = 0x8c58001e, - PR_EMS_AB_EXTENSION_ATTRIBUTE_12_UNICODE = 0x8c58001f, - PR_EMS_AB_EXTENSION_ATTRIBUTE_12_ERROR = 0x8c58000a, - PR_EMS_AB_EXTENSION_ATTRIBUTE_13 = 0x8c59001e, - PR_EMS_AB_EXTENSION_ATTRIBUTE_13_UNICODE = 0x8c59001f, - PR_EMS_AB_EXTENSION_ATTRIBUTE_13_ERROR = 0x8c59000a, - PR_EMS_AB_EXTENSION_ATTRIBUTE_14 = 0x8c60001e, - PR_EMS_AB_EXTENSION_ATTRIBUTE_14_UNICODE = 0x8c60001f, - PR_EMS_AB_EXTENSION_ATTRIBUTE_14_ERROR = 0x8c60000a, - PR_EMS_AB_EXTENSION_ATTRIBUTE_15 = 0x8c61001e, - PR_EMS_AB_EXTENSION_ATTRIBUTE_15_UNICODE = 0x8c61001f, - PR_EMS_AB_EXTENSION_ATTRIBUTE_15_ERROR = 0x8c61000a, - PR_EMS_AB_REPLICATED_OBJECT_VERSION = 0x8c620003, - PR_EMS_AB_REPLICATED_OBJECT_VERSION_ERROR = 0x8c62000a, - PR_EMS_AB_MAIL_DROP = 0x8c63001e, - PR_EMS_AB_MAIL_DROP_UNICODE = 0x8c63001f, - PR_EMS_AB_MAIL_DROP_ERROR = 0x8c63000a, - PR_EMS_AB_FORWARDING_ADDRESS = 0x8c64001e, - PR_EMS_AB_FORWARDING_ADDRESS_UNICODE = 0x8c64001f, - PR_EMS_AB_FORWARDING_ADDRESS_ERROR = 0x8c64000a, - PR_EMS_AB_FORM_DATA = 0x8c650102, - PR_EMS_AB_FORM_DATA_ERROR = 0x8c65000a, - PR_EMS_AB_OWA_SERVER = 0x8c66001e, - PR_EMS_AB_OWA_SERVER_UNICODE = 0x8c66001f, - PR_EMS_AB_OWA_SERVER_ERROR = 0x8c66000a, - PR_EMS_AB_EMPLOYEE_NUMBER = 0x8c67001e, - PR_EMS_AB_EMPLOYEE_NUMBER_UNICODE = 0x8c67001f, - PR_EMS_AB_EMPLOYEE_NUMBER_ERROR = 0x8c67000a, - PR_EMS_AB_TELEPHONE_PERSONAL_PAGER = 0x8c68001e, - PR_EMS_AB_TELEPHONE_PERSONAL_PAGER_UNICODE = 0x8c68001f, - PR_EMS_AB_TELEPHONE_PERSONAL_PAGER_ERROR = 0x8c68000a, - PR_EMS_AB_EMPLOYEE_TYPE = 0x8c69001e, - PR_EMS_AB_EMPLOYEE_TYPE_UNICODE = 0x8c69001f, - PR_EMS_AB_EMPLOYEE_TYPE_ERROR = 0x8c69000a, - PR_EMS_AB_TAGGED_X509_CERT = 0x8c6a1102, - PR_EMS_AB_TAGGED_X509_CERT_ERROR = 0x8c6a000a, - PR_EMS_AB_PERSONAL_TITLE = 0x8c6b001e, - PR_EMS_AB_PERSONAL_TITLE_UNICODE = 0x8c6b001f, - PR_EMS_AB_PERSONAL_TITLE_ERROR = 0x8c6b000a, - PR_EMS_AB_LANGUAGE_ISO639 = 0x8c6c001e, - PR_EMS_AB_LANGUAGE_ISO639_UNICODE = 0x8c6c001f, - PR_EMS_AB_LANGUAGE_ISO639_ERROR = 0x8c6c000a, - PR_EMS_AB_OTHER_RECIPS = 0xf000000d, - PR_EMS_AB_OTHER_RECIPS_ERROR = 0xf000000a, - PR_EMS_AB_CHILD_RDNS = 0xfff8101e, - PR_EMS_AB_CHILD_RDNS_UNICODE = 0xfff8101f, - PR_EMS_AB_CHILD_RDNS_ERROR = 0xfff8000a, - PR_EMS_AB_HIERARCHY_PATH = 0xfff9001e, - PR_EMS_AB_HIERARCHY_PATH_UNICODE = 0xfff9001f, - PR_EMS_AB_HIERARCHY_PATH_ERROR = 0xfff9000a, - PR_EMS_AB_OBJECT_OID = 0xfffa0102, - PR_EMS_AB_OBJECT_OID_ERROR = 0xfffa000a, - PR_EMS_AB_IS_MASTER = 0xfffb000b, - PR_EMS_AB_IS_MASTER_ERROR = 0xfffb000a, - PR_EMS_AB_PARENT_ENTRYID = 0xfffc0102, - PR_EMS_AB_PARENT_ENTRYID_ERROR = 0xfffc000a, - PR_EMS_AB_CONTAINERID = 0xfffd0003, - PR_EMS_AB_CONTAINERID_ERROR = 0xfffd000a, - PR_EMS_AB_SERVER = 0xfffe001e, - PR_EMS_AB_SERVER_UNICODE = 0xfffe001f, - PR_EMS_AB_SERVER_ERROR = 0xfffe000a, - MAPI_PROP_RESERVED = 0xFFFFFFFF -} MAPITAGS; - diff --git a/epan/dissectors/pidl/rfr/Makefile b/epan/dissectors/pidl/rfr/Makefile deleted file mode 100644 index 4d12989a6b..0000000000 --- a/epan/dissectors/pidl/rfr/Makefile +++ /dev/null @@ -1,12 +0,0 @@ -PROTOCOL_NAME=rfr - -all: packet-dcerpc-$(PROTOCOL_NAME).c packet-dcerpc-$(PROTOCOL_NAME).h - -packet-dcerpc-$(PROTOCOL_NAME).c packet-dcerpc-$(PROTOCOL_NAME).h: $(PROTOCOL_NAME).idl $(PROTOCOL_NAME).cnf mapicodes_enum.h ../idl_types.h - ../../../../tools/pidl/pidl --includedir=.. --ws-parser -- $(PROTOCOL_NAME).idl - -clean: - rm -f packet-dcerpc-$(PROTOCOL_NAME).c packet-dcerpc-$(PROTOCOL_NAME).h idl_types.h - -install: packet-dcerpc-$(PROTOCOL_NAME).c packet-dcerpc-$(PROTOCOL_NAME).h - cp packet-dcerpc-$(PROTOCOL_NAME).c packet-dcerpc-$(PROTOCOL_NAME).h ../../ diff --git a/epan/dissectors/pidl/rfr/mapicodes_enum.h b/epan/dissectors/pidl/rfr/mapicodes_enum.h deleted file mode 100644 index 64b671e5e3..0000000000 --- a/epan/dissectors/pidl/rfr/mapicodes_enum.h +++ /dev/null @@ -1,98 +0,0 @@ -/* - MAPI Implementation - - OpenChange Project - - Copyright (C) Julien Kerihuel 2006 - - 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 2 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, write to the Free Software - Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. -*/ - -/* parser auto-generated by mparse */ - -typedef [public, v1_enum, flag(NDR_PAHEX)] enum { - MAPI_E_SUCCESS = 0x00000000, - MAPI_E_NO_SUPPORT = 0x80040102, - MAPI_E_BAD_CHARWIDTH = 0x80040103, - MAPI_E_STRING_TOO_LONG = 0x80040105, - MAPI_E_UNKNOWN_FLAGS = 0x80040106, - MAPI_E_INVALID_ENTRYID = 0x80040107, - MAPI_E_INVALID_OBJECT = 0x80040108, - MAPI_E_OBJECT_CHANGED = 0x80040109, - MAPI_E_OBJECT_DELETED = 0x8004010A, - MAPI_E_BUSY = 0x8004010B, - MAPI_E_NOT_ENOUGH_DISK = 0x8004010D, - MAPI_E_NOT_ENOUGH_RESOURCES = 0x8004010E, - MAPI_E_NOT_FOUND = 0x8004010F, - MAPI_E_VERSION = 0x80040110, - MAPI_E_LOGON_FAILED = 0x80040111, - MAPI_E_SESSION_LIMIT = 0x80040112, - MAPI_E_USER_CANCEL = 0x80040113, - MAPI_E_UNABLE_TO_ABORT = 0x80040114, - MAPI_E_NETWORK_ERROR = 0x80040115, - MAPI_E_DISK_ERROR = 0x80040116, - MAPI_E_TOO_COMPLEX = 0x80040117, - MAPI_E_BAD_COLUMN = 0x80040118, - MAPI_E_EXTENDED_ERROR = 0x80040119, - MAPI_E_COMPUTED = 0x8004011A, - MAPI_E_CORRUPT_DATA = 0x8004011B, - MAPI_E_UNCONFIGURED = 0x8004011C, - MAPI_E_FAILONEPROVIDER = 0x8004011D, - MAPI_E_UNKNOWN_CPID = 0x8004011E, - MAPI_E_UNKNOWN_LCID = 0x8004011F, - MAPI_E_PASSWORD_CHANGE_REQUIRED = 0x80040120, - MAPI_E_PASSWORD_EXPIRED = 0x80040121, - MAPI_E_INVALID_WORKSTATION_ACCOUNT = 0x80040122, - MAPI_E_INVALID_ACCESS_TIME = 0x80040123, - MAPI_E_ACCOUNT_DISABLED = 0x80040124, - MAPI_E_END_OF_SESSION = 0x80040200, - MAPI_E_UNKNOWN_ENTRYID = 0x80040201, - MAPI_E_MISSING_REQUIRED_COLUMN = 0x80040202, - MAPI_W_NO_SERVICE = 0x80040203, - MAPI_E_BAD_VALUE = 0x80040301, - MAPI_E_INVALID_TYPE = 0x80040302, - MAPI_E_TYPE_NO_SUPPORT = 0x80040303, - MAPI_E_UNEXPECTED_TYPE = 0x80040304, - MAPI_E_TOO_BIG = 0x80040305, - MAPI_E_DECLINE_COPY = 0x80040306, - MAPI_E_UNEXPECTED_ID = 0x80040307, - MAPI_W_ERRORS_RETURNED = 0x80040380, - MAPI_E_UNABLE_TO_COMPLETE = 0x80040400, - MAPI_E_TIMEOUT = 0x80040401, - MAPI_E_TABLE_EMPTY = 0x80040402, - MAPI_E_TABLE_TOO_BIG = 0x80040403, - MAPI_E_INVALID_BOOKMARK = 0x80040405, - MAPI_W_POSITION_CHANGED = 0x80040481, - MAPI_W_APPROX_COUNT = 0x80040482, - MAPI_E_WAIT = 0x80040500, - MAPI_E_CANCEL = 0x80040501, - MAPI_E_NOT_ME = 0x80040502, - MAPI_W_CANCEL_MESSAGE = 0x80040580, - MAPI_E_CORRUPT_STORE = 0x80040600, - MAPI_E_NOT_IN_QUEUE = 0x80040601, - MAPI_E_NO_SUPPRESS = 0x80040602, - MAPI_E_COLLISION = 0x80040604, - MAPI_E_NOT_INITIALIZED = 0x80040605, - MAPI_E_NON_STANDARD = 0x80040606, - MAPI_E_NO_RECIPIENTS = 0x80040607, - MAPI_E_SUBMITTED = 0x80040608, - MAPI_E_HAS_FOLDERS = 0x80040609, - MAPI_E_HAS_MESAGES = 0x8004060A, - MAPI_E_FOLDER_CYCLE = 0x8004060B, - MAPI_W_PARTIAL_COMPLETION = 0x80040680, - MAPI_E_AMBIGUOUS_RECIP = 0x80040700, - MAPI_E_RESERVED = 0xFFFFFFFF -} MAPISTATUS; - diff --git a/epan/dissectors/pidl/samr.cnf b/epan/dissectors/pidl/samr.cnf deleted file mode 100644 index e24c2038d9..0000000000 --- a/epan/dissectors/pidl/samr.cnf +++ /dev/null @@ -1,476 +0,0 @@ -# -# policyhandle tracking -# This block is to specify where a policyhandle is opened and where it is -# closed so that policyhandles when dissected contain nice info such as -# [opened in xxx] [closed in yyy] -# -# Policyhandles are opened in these functions -PARAM_VALUE samr_dissect_element_Connect_connect_handle_ PIDL_POLHND_OPEN|PIDL_POLHND_TYPE_SAMR_CONNECT -PARAM_VALUE samr_dissect_element_OpenDomain_domain_handle_ PIDL_POLHND_OPEN|PIDL_POLHND_TYPE_SAMR_DOMAIN -PARAM_VALUE samr_dissect_element_CreateDomainGroup_group_handle_ PIDL_POLHND_OPEN|PIDL_POLHND_TYPE_SAMR_GROUP -PARAM_VALUE samr_dissect_element_CreateUser_user_handle_ PIDL_POLHND_OPEN|PIDL_POLHND_TYPE_SAMR_USER -PARAM_VALUE samr_dissect_element_CreateDomAlias_alias_handle_ PIDL_POLHND_OPEN|PIDL_POLHND_TYPE_SAMR_ALIAS -PARAM_VALUE samr_dissect_element_OpenGroup_group_handle_ PIDL_POLHND_OPEN|PIDL_POLHND_TYPE_SAMR_GROUP -PARAM_VALUE samr_dissect_element_OpenAlias_alias_handle_ PIDL_POLHND_OPEN|PIDL_POLHND_TYPE_SAMR_ALIAS -PARAM_VALUE samr_dissect_element_OpenUser_user_handle_ PIDL_POLHND_OPEN|PIDL_POLHND_TYPE_SAMR_USER -PARAM_VALUE samr_dissect_element_CreateUser2_user_handle_ PIDL_POLHND_OPEN|PIDL_POLHND_TYPE_SAMR_USER -PARAM_VALUE samr_dissect_element_Connect2_connect_handle_ PIDL_POLHND_OPEN|PIDL_POLHND_TYPE_SAMR_CONNECT -PARAM_VALUE samr_dissect_element_Connect3_connect_handle_ PIDL_POLHND_OPEN|PIDL_POLHND_TYPE_SAMR_CONNECT -PARAM_VALUE samr_dissect_element_Connect4_connect_handle_ PIDL_POLHND_OPEN|PIDL_POLHND_TYPE_SAMR_CONNECT -PARAM_VALUE samr_dissect_element_Connect5_connect_handle_ PIDL_POLHND_OPEN|PIDL_POLHND_TYPE_SAMR_CONNECT -# Policyhandles are closed in these functions -PARAM_VALUE samr_dissect_element_Close_handle_ PIDL_POLHND_CLOSE -PARAM_VALUE samr_dissect_element_Shutdown_connect_handle_ PIDL_POLHND_CLOSE -PARAM_VALUE samr_dissect_element_DeleteDomainGroup_group_handle_ PIDL_POLHND_CLOSE -PARAM_VALUE samr_dissect_element_DeleteDomAlias_alias_handle_ PIDL_POLHND_CLOSE -PARAM_VALUE samr_dissect_element_DeleteUser_user_handle_ PIDL_POLHND_CLOSE - - - -# -# make sure all policy handles of the same type use the same filter name -# -HF_FIELD hf_samr_handle "Handle" "samr.handle" FT_BYTES BASE_NONE NULL 0 "" "" "" -HF_RENAME hf_samr_samr_Close_handle hf_samr_handle -HF_RENAME hf_samr_samr_SetSecurity_handle hf_samr_handle -HF_RENAME hf_samr_samr_QuerySecurity_handle hf_samr_handle - -HF_FIELD hf_samr_connect_handle "Connect Handle" "samr.connect_handle" FT_BYTES BASE_NONE NULL 0 "" "" "" -HF_RENAME hf_samr_samr_Connect_connect_handle hf_samr_connect_handle -HF_RENAME hf_samr_samr_LookupDomain_connect_handle hf_samr_connect_handle -HF_RENAME hf_samr_samr_EnumDomain_connect_handle hf_samr_connect_handle -HF_RENAME hf_samr_samr_OpenDomain_connect_handle hf_samr_connect_handle -HF_RENAME hf_samr_samr_Shutdown_handle hf_samr_connect_handle -HF_RENAME hf_samr_samr_Connect2_connect_handle hf_samr_connect_handle -HF_RENAME hf_samr_samr_SetBootKeyInformation_connect_handle hf_samr_connect_handle -HF_RENAME hf_samr_samr_GetBootKeyInformation_connect_handle hf_samr_connect_handle -HF_RENAME hf_samr_samr_Connect3_connect_handle hf_samr_connect_handle -HF_RENAME hf_samr_samr_Connect4_connect_handle hf_samr_connect_handle -HF_RENAME hf_samr_samr_Connect5_connect_handle hf_samr_connect_handle - -HF_FIELD hf_samr_domain_handle "Domain Handle" "samr.domain_handle" FT_BYTES BASE_NONE NULL 0 "" "" "" -HF_RENAME hf_samr_samr_OpenDomain_domain_handle hf_samr_domain_handle -HF_RENAME hf_samr_samr_QueryDomainInfo_domain_handle hf_samr_domain_handle -HF_RENAME hf_samr_samr_SetDomainInfo_domain_handle hf_samr_domain_handle -HF_RENAME hf_samr_samr_CreateDomainGroup_domain_handle hf_samr_domain_handle -HF_RENAME hf_samr_samr_EnumDomainGroups_domain_handle hf_samr_domain_handle -HF_RENAME hf_samr_samr_CreateUser_domain_handle hf_samr_domain_handle -HF_RENAME hf_samr_samr_EnumDomainUsers_domain_handle hf_samr_domain_handle -HF_RENAME hf_samr_samr_CreateDomAlias_domain_handle hf_samr_domain_handle -HF_RENAME hf_samr_samr_EnumDomainAliases_domain_handle hf_samr_domain_handle -HF_RENAME hf_samr_samr_GetAliasMembership_domain_handle hf_samr_domain_handle -HF_RENAME hf_samr_samr_LookupNames_domain_handle hf_samr_domain_handle -HF_RENAME hf_samr_samr_LookupRids_domain_handle hf_samr_domain_handle -HF_RENAME hf_samr_samr_OpenGroup_domain_handle hf_samr_domain_handle -HF_RENAME hf_samr_samr_OpenAlias_domain_handle hf_samr_domain_handle -HF_RENAME hf_samr_samr_OpenUser_domain_handle hf_samr_domain_handle -HF_RENAME hf_samr_samr_QueryDisplayInfo_domain_handle hf_samr_domain_handle -HF_RENAME hf_samr_samr_GetDisplayEnumerationIndex_domain_handle hf_samr_domain_handle -HF_RENAME hf_samr_samr_TestPrivateFunctionsDomain_domain_handle hf_samr_domain_handle -HF_RENAME hf_samr_samr_RemoveMemberFromForeignDomain_domain_handle hf_samr_domain_handle -HF_RENAME hf_samr_samr_QueryDomainInfo2_domain_handle hf_samr_domain_handle -HF_RENAME hf_samr_samr_QueryDisplayInfo2_domain_handle hf_samr_domain_handle -HF_RENAME hf_samr_samr_GetDisplayEnumerationIndex2_domain_handle hf_samr_domain_handle -HF_RENAME hf_samr_samr_CreateUser2_domain_handle hf_samr_domain_handle -HF_RENAME hf_samr_samr_QueryDisplayInfo3_domain_handle hf_samr_domain_handle -HF_RENAME hf_samr_samr_RidToSid_domain_handle hf_samr_domain_handle - -HF_FIELD hf_samr_group_handle "Group Handle" "samr.group_handle" FT_BYTES BASE_NONE NULL 0 "" "" "" -HF_RENAME hf_samr_samr_CreateDomainGroup_group_handle hf_samr_group_handle -HF_RENAME hf_samr_samr_OpenGroup_group_handle hf_samr_group_handle -HF_RENAME hf_samr_samr_QueryGroupInfo_group_handle hf_samr_group_handle -HF_RENAME hf_samr_samr_SetGroupInfo_group_handle hf_samr_group_handle -HF_RENAME hf_samr_samr_AddGroupMember_group_handle hf_samr_group_handle -HF_RENAME hf_samr_samr_DeleteDomainGroup_group_handle hf_samr_group_handle -HF_RENAME hf_samr_samr_DeleteGroupMember_group_handle hf_samr_group_handle -HF_RENAME hf_samr_samr_QueryGroupMember_group_handle hf_samr_group_handle -HF_RENAME hf_samr_samr_SetMemberAttributesOfGroup_group_handle hf_samr_group_handle - -HF_FIELD hf_samr_user_handle "User Handle" "samr.user_handle" FT_BYTES BASE_NONE NULL 0 "" "" "" -HF_RENAME hf_samr_samr_CreateUser_user_handle hf_samr_user_handle -HF_RENAME hf_samr_samr_OpenUser_user_handle hf_samr_user_handle -HF_RENAME hf_samr_samr_DeleteUser_user_handle hf_samr_user_handle -HF_RENAME hf_samr_samr_QueryUserInfo_user_handle hf_samr_user_handle -HF_RENAME hf_samr_samr_SetUserInfo_user_handle hf_samr_user_handle -HF_RENAME hf_samr_samr_ChangePasswordUser_user_handle hf_samr_user_handle -HF_RENAME hf_samr_samr_GetGroupsForUser_user_handle hf_samr_user_handle -HF_RENAME hf_samr_samr_TestPrivateFunctionsUser_user_handle hf_samr_user_handle -HF_RENAME hf_samr_samr_GetUserPwInfo_user_handle hf_samr_user_handle -HF_RENAME hf_samr_samr_QueryUserInfo2_user_handle hf_samr_user_handle -HF_RENAME hf_samr_samr_CreateUser2_user_handle hf_samr_user_handle -HF_RENAME hf_samr_samr_SetUserInfo2_user_handle hf_samr_user_handle - -HF_FIELD hf_samr_alias_handle "Alias Handle" "samr.alias_handle" FT_BYTES BASE_NONE NULL 0 "" "" "" -HF_RENAME hf_samr_samr_CreateDomAlias_alias_handle hf_samr_alias_handle -HF_RENAME hf_samr_samr_OpenAlias_alias_handle hf_samr_alias_handle -HF_RENAME hf_samr_samr_QueryAliasInfo_alias_handle hf_samr_alias_handle -HF_RENAME hf_samr_samr_SetAliasInfo_alias_handle hf_samr_alias_handle -HF_RENAME hf_samr_samr_DeleteDomAlias_alias_handle hf_samr_alias_handle -HF_RENAME hf_samr_samr_AddAliasMember_alias_handle hf_samr_alias_handle -HF_RENAME hf_samr_samr_DeleteAliasMember_alias_handle hf_samr_alias_handle -HF_RENAME hf_samr_samr_GetMembersInAlias_alias_handle hf_samr_alias_handle -HF_RENAME hf_samr_samr_AddMultipleMembersToAlias_alias_handle hf_samr_alias_handle -HF_RENAME hf_samr_samr_RemoveMultipleMembersFromAlias_alias_handle hf_samr_alias_handle - - - -# -# make all rids use the same hf field -# -HF_FIELD hf_samr_rid "RID" "samr.rid" FT_UINT32 BASE_DEC NULL 0 "" "" "" -HF_RENAME hf_samr_samr_CreateDomainGroup_rid hf_samr_rid -HF_RENAME hf_samr_samr_CreateUser_rid hf_samr_rid -HF_RENAME hf_samr_samr_CreateDomAlias_rid hf_samr_rid -HF_RENAME hf_samr_samr_Ids_ids hf_samr_rid -HF_RENAME hf_samr_samr_LookupRids_rids hf_samr_rid -HF_RENAME hf_samr_samr_OpenGroup_rid hf_samr_rid -HF_RENAME hf_samr_samr_AddGroupMember_rid hf_samr_rid -HF_RENAME hf_samr_samr_DeleteGroupMember_rid hf_samr_rid -HF_RENAME hf_samr_samr_RidTypeArray_rids hf_samr_rid -HF_RENAME hf_samr_samr_OpenAlias_rid hf_samr_rid -HF_RENAME hf_samr_samr_OpenUser_rid hf_samr_rid -HF_RENAME hf_samr_samr_UserInfo3_rid hf_samr_rid -HF_RENAME hf_samr_samr_UserInfo5_rid hf_samr_rid -HF_RENAME hf_samr_samr_UserInfo21_rid hf_samr_rid -HF_RENAME hf_samr_samr_RidWithAttribute_rid hf_samr_rid -HF_RENAME hf_samr_samr_DispEntryGeneral_rid hf_samr_rid -HF_RENAME hf_samr_samr_DispEntryFull_rid hf_samr_rid -HF_RENAME hf_samr_samr_DispEntryFullGroup_rid hf_samr_rid -HF_RENAME hf_samr_samr_CreateUser2_rid hf_samr_rid -HF_RENAME hf_samr_samr_RidToSid_rid hf_samr_rid - - - -# -# Prettification the summary line and the dissection tree -# -PARAM_VALUE samr_dissect_element_SamArray_entries__ 3|PIDL_SET_COL_INFO -PARAM_VALUE samr_dissect_element_LookupDomain_domain_name_ 3|PIDL_SET_COL_INFO -PARAM_VALUE samr_dissect_element_GetDomPwInfo_domain_name_ 3|PIDL_SET_COL_INFO -PARAM_VALUE samr_dissect_element_CreateUser_account_name_ 3|PIDL_SET_COL_INFO|PIDL_STR_SAVE -PARAM_VALUE samr_dissect_element_CreateUser2_account_name_ 3|PIDL_SET_COL_INFO|PIDL_STR_SAVE - -TYPE lsa_String "offset=dissect_ndr_lsa_String(tvb, offset, pinfo, tree, di, drep, @PARAM@, @HF@);" FT_STRING BASE_NONE 0 NULL 5 -TYPE lsa_AsciiString "offset=cnf_dissect_lsa_AsciiString(tvb, offset, pinfo, tree, di, drep, @PARAM@, @HF@);" FT_STRING BASE_NONE 0 NULL 5 -TYPE lsa_StringLarge "offset=dissect_ndr_lsa_String(tvb, offset, pinfo, tree, di, drep, @PARAM@, @HF@);" FT_STRING BASE_NONE 0 NULL 5 -TYPE lsa_AsciiStringLarge "offset=cnf_dissect_lsa_AsciiString(tvb, offset, pinfo, tree, di, drep, @PARAM@, @HF@);" FT_STRING BASE_NONE 0 NULL 5 -TYPE hyper "offset=cnf_dissect_hyper(tvb, offset, pinfo, tree, di, drep, @PARAM@, @HF@);" FT_UINT64 BASE_DEC 0 NULL 8 - - -TYPE sec_desc_buf "offset=cnf_dissect_sec_desc_buf(tvb, offset, pinfo, tree, di, drep);" FT_NONE BASE_NONE 0 NULL 4 -HF_FIELD hf_samr_sec_desc_buf_len "Sec Desc Buf Len" "samr.sec_desc_buf_len" FT_UINT32 BASE_DEC NULL 0 "" "" "" - -TYPE dom_sid2 "offset=cnf_dissect_dom_sid2(tvb, offset, pinfo, tree, di, drep);" FT_NONE BASE_NONE 0 NULL 4 - -TYPE lsa_SidArray "offset=cnf_dissect_lsa_SidArray(tvb, offset, pinfo, tree, di, drep);" FT_NONE BASE_NONE 0 NULL 4 - -TYPE security_secinfo "offset=cnf_dissect_samr_security_secinfo(tvb, offset, pinfo, tree, drep);" FT_NONE BASE_NONE 0 NULL 4 - -# -# ConnectX access masks -# -MANUAL samr_dissect_bitmap_ConnectAccessMask -HF_FIELD hf_samr_connect_access_mask "Access Mask" "samr.connect.access_mask" FT_UINT32 BASE_HEX NULL 0 "" "" "" -HF_RENAME hf_samr_samr_Connect_access_mask hf_samr_connect_access_mask -HF_RENAME hf_samr_samr_Connect2_access_mask hf_samr_connect_access_mask -HF_RENAME hf_samr_samr_Connect3_access_mask hf_samr_connect_access_mask -HF_RENAME hf_samr_samr_Connect4_access_mask hf_samr_connect_access_mask -HF_RENAME hf_samr_samr_Connect5_access_mask hf_samr_connect_access_mask -# -# User access masks -# -MANUAL samr_dissect_bitmap_UserAccessMask -HF_FIELD hf_samr_user_access_mask "Access Mask" "samr.user.access_mask" FT_UINT32 BASE_HEX NULL 0 "" "" "" -HF_RENAME hf_samr_samr_CreateUser_access_mask hf_samr_user_access_mask -HF_RENAME hf_samr_samr_OpenUser_access_mask hf_samr_user_access_mask -HF_RENAME hf_samr_samr_CreateUser2_access_mask hf_samr_user_access_mask -# -# Domain access masks -# -MANUAL samr_dissect_bitmap_DomainAccessMask -HF_FIELD hf_samr_domain_access_mask "Access Mask" "samr.domain.access_mask" FT_UINT32 BASE_HEX NULL 0 "" "" "" -HF_RENAME hf_samr_samr_OpenDomain_access_mask hf_samr_domain_access_mask -# -# Group access masks -# -MANUAL samr_dissect_bitmap_GroupAccessMask -HF_FIELD hf_samr_group_access_mask "Access Mask" "samr.group.access_mask" FT_UINT32 BASE_HEX NULL 0 "" "" "" -HF_RENAME hf_samr_samr_CreateDomainGroup_access_mask hf_samr_group_access_mask -HF_RENAME hf_samr_samr_OpenGroup_access_mask hf_samr_group_access_mask -# -# Alias access masks -# -MANUAL samr_dissect_bitmap_AliasAccessMask -HF_FIELD hf_samr_alias_access_mask "Access Mask" "samr.alias.access_mask" FT_UINT32 BASE_HEX NULL 0 "" "" "" -HF_RENAME hf_samr_samr_CreateDomAlias_access_mask hf_samr_alias_access_mask -HF_RENAME hf_samr_samr_OpenAlias_access_mask hf_samr_alias_access_mask - - -CODE START - -static void -samr_connect_specific_rights(tvbuff_t *tvb, gint offset, proto_tree *tree, guint32 access) -{ - proto_tree_add_boolean(tree, hf_samr_samr_ConnectAccessMask_SAMR_ACCESS_LOOKUP_DOMAIN, tvb, offset, 4, access); - proto_tree_add_boolean(tree, hf_samr_samr_ConnectAccessMask_SAMR_ACCESS_ENUM_DOMAINS, tvb, offset, 4, access); - proto_tree_add_boolean(tree, hf_samr_samr_ConnectAccessMask_SAMR_ACCESS_CREATE_DOMAIN, tvb, offset, 4, access); - proto_tree_add_boolean(tree, hf_samr_samr_ConnectAccessMask_SAMR_ACCESS_INITIALIZE_SERVER, tvb, offset, 4, access); - proto_tree_add_boolean(tree, hf_samr_samr_ConnectAccessMask_SAMR_ACCESS_SHUTDOWN_SERVER, tvb, offset, 4, access); - proto_tree_add_boolean(tree, hf_samr_samr_ConnectAccessMask_SAMR_ACCESS_CONNECT_TO_SERVER, tvb, offset, 4, access); -} - -struct access_mask_info samr_connect_access_mask_info = { - "SAMR Connect", /* Name of specific rights */ - samr_connect_specific_rights, /* Dissection function */ - NULL, /* Generic mapping table */ - NULL /* Standard mapping table */ -}; - -int -samr_dissect_bitmap_ConnectAccessMask(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep, int hf_index _U_, guint32 param _U_) -{ - offset = dissect_nt_access_mask( - tvb, offset, pinfo, tree, di, drep, hf_samr_connect_access_mask, - &samr_connect_access_mask_info, NULL); - return offset; -} - - -static void -samr_alias_specific_rights(tvbuff_t *tvb, gint offset, proto_tree *tree, guint32 access) -{ - proto_tree_add_boolean(tree, hf_samr_samr_AliasAccessMask_SAMR_ALIAS_ACCESS_ADD_MEMBER, tvb, offset, 4, access); - proto_tree_add_boolean(tree, hf_samr_samr_AliasAccessMask_SAMR_ALIAS_ACCESS_REMOVE_MEMBER, tvb, offset, 4, access); - proto_tree_add_boolean(tree, hf_samr_samr_AliasAccessMask_SAMR_ALIAS_ACCESS_GET_MEMBERS, tvb, offset, 4, access); - proto_tree_add_boolean(tree, hf_samr_samr_AliasAccessMask_SAMR_ALIAS_ACCESS_LOOKUP_INFO, tvb, offset, 4, access); - proto_tree_add_boolean(tree, hf_samr_samr_AliasAccessMask_SAMR_ALIAS_ACCESS_SET_INFO, tvb, offset, 4, access); -} - -struct access_mask_info samr_alias_access_mask_info = { - "SAMR Alias", /* Name of specific rights */ - samr_alias_specific_rights, /* Dissection function */ - NULL, /* Generic mapping table */ - NULL /* Standard mapping table */ -}; - -int -samr_dissect_bitmap_AliasAccessMask(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep, int hf_index _U_, guint32 param _U_) -{ - offset = dissect_nt_access_mask( - tvb, offset, pinfo, tree, di, drep, hf_samr_alias_access_mask, - &samr_alias_access_mask_info, NULL); - return offset; -} - - -static void -samr_group_specific_rights(tvbuff_t *tvb, gint offset, proto_tree *tree, guint32 access) -{ - proto_tree_add_boolean(tree, hf_samr_samr_GroupAccessMask_SAMR_GROUP_ACCESS_GET_MEMBERS, tvb, offset, 4, access); - proto_tree_add_boolean(tree, hf_samr_samr_GroupAccessMask_SAMR_GROUP_ACCESS_REMOVE_MEMBER, tvb, offset, 4, access); - proto_tree_add_boolean(tree, hf_samr_samr_GroupAccessMask_SAMR_GROUP_ACCESS_ADD_MEMBER, tvb, offset, 4, access); - proto_tree_add_boolean(tree, hf_samr_samr_GroupAccessMask_SAMR_GROUP_ACCESS_SET_INFO, tvb, offset, 4, access); - proto_tree_add_boolean(tree, hf_samr_samr_GroupAccessMask_SAMR_GROUP_ACCESS_LOOKUP_INFO, tvb, offset, 4, access); -} - -struct access_mask_info samr_group_access_mask_info = { - "SAMR Group", /* Name of specific rights */ - samr_group_specific_rights, /* Dissection function */ - NULL, /* Generic mapping table */ - NULL /* Standard mapping table */ -}; - -int -samr_dissect_bitmap_GroupAccessMask(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep, int hf_index _U_, guint32 param _U_) -{ - offset = dissect_nt_access_mask( - tvb, offset, pinfo, tree, di, drep, hf_samr_group_access_mask, - &samr_group_access_mask_info, NULL); - return offset; -} - - -static void -samr_domain_specific_rights(tvbuff_t *tvb, gint offset, proto_tree *tree, guint32 access) -{ - proto_tree_add_boolean(tree, hf_samr_samr_DomainAccessMask_SAMR_DOMAIN_ACCESS_LOOKUP_INFO_1, tvb, offset, 4, access); - proto_tree_add_boolean(tree, hf_samr_samr_DomainAccessMask_SAMR_DOMAIN_ACCESS_SET_INFO_1, tvb, offset, 4, access); - proto_tree_add_boolean(tree, hf_samr_samr_DomainAccessMask_SAMR_DOMAIN_ACCESS_LOOKUP_INFO_2, tvb, offset, 4, access); - proto_tree_add_boolean(tree, hf_samr_samr_DomainAccessMask_SAMR_DOMAIN_ACCESS_SET_INFO_2, tvb, offset, 4, access); - proto_tree_add_boolean(tree, hf_samr_samr_DomainAccessMask_SAMR_DOMAIN_ACCESS_CREATE_USER, tvb, offset, 4, access); - proto_tree_add_boolean(tree, hf_samr_samr_DomainAccessMask_SAMR_DOMAIN_ACCESS_CREATE_GROUP, tvb, offset, 4, access); - proto_tree_add_boolean(tree, hf_samr_samr_DomainAccessMask_SAMR_DOMAIN_ACCESS_CREATE_ALIAS, tvb, offset, 4, access); - proto_tree_add_boolean(tree, hf_samr_samr_DomainAccessMask_SAMR_DOMAIN_ACCESS_LOOKUP_ALIAS, tvb, offset, 4, access); - proto_tree_add_boolean(tree, hf_samr_samr_DomainAccessMask_SAMR_DOMAIN_ACCESS_ENUM_ACCOUNTS, tvb, offset, 4, access); - proto_tree_add_boolean(tree, hf_samr_samr_DomainAccessMask_SAMR_DOMAIN_ACCESS_OPEN_ACCOUNT, tvb, offset, 4, access); - proto_tree_add_boolean(tree, hf_samr_samr_DomainAccessMask_SAMR_DOMAIN_ACCESS_SET_INFO_3, tvb, offset, 4, access); -} - -struct access_mask_info samr_domain_access_mask_info = { - "SAMR Domain", /* Name of specific rights */ - samr_domain_specific_rights, /* Dissection function */ - NULL, /* Generic mapping table */ - NULL /* Standard mapping table */ -}; - -int -samr_dissect_bitmap_DomainAccessMask(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep, int hf_index _U_, guint32 param _U_) -{ - offset = dissect_nt_access_mask( - tvb, offset, pinfo, tree, di, drep, hf_samr_domain_access_mask, - &samr_domain_access_mask_info, NULL); - return offset; -} - - -static void -samr_user_specific_rights(tvbuff_t *tvb, gint offset, proto_tree *tree, guint32 access) -{ - proto_tree_add_boolean(tree, hf_samr_samr_UserAccessMask_SAMR_USER_ACCESS_CHANGE_GROUP_MEMBERSHIP, tvb, offset, 4, access); - proto_tree_add_boolean(tree, hf_samr_samr_UserAccessMask_SAMR_USER_ACCESS_GET_GROUP_MEMBERSHIP, tvb, offset, 4, access); - proto_tree_add_boolean(tree, hf_samr_samr_UserAccessMask_SAMR_USER_ACCESS_GET_GROUPS, tvb, offset, 4, access); - proto_tree_add_boolean(tree, hf_samr_samr_UserAccessMask_SAMR_USER_ACCESS_SET_PASSWORD, tvb, offset, 4, access); - proto_tree_add_boolean(tree, hf_samr_samr_UserAccessMask_SAMR_USER_ACCESS_CHANGE_PASSWORD, tvb, offset, 4, access); - proto_tree_add_boolean(tree, hf_samr_samr_UserAccessMask_SAMR_USER_ACCESS_SET_ATTRIBUTES, tvb, offset, 4, access); - proto_tree_add_boolean(tree, hf_samr_samr_UserAccessMask_SAMR_USER_ACCESS_GET_ATTRIBUTES, tvb, offset, 4, access); - proto_tree_add_boolean(tree, hf_samr_samr_UserAccessMask_SAMR_USER_ACCESS_GET_LOGONINFO, tvb, offset, 4, access); - proto_tree_add_boolean(tree, hf_samr_samr_UserAccessMask_SAMR_USER_ACCESS_SET_LOC_COM, tvb, offset, 4, access); - proto_tree_add_boolean(tree, hf_samr_samr_UserAccessMask_SAMR_USER_ACCESS_GET_LOCALE, tvb, offset, 4, access); - proto_tree_add_boolean(tree, hf_samr_samr_UserAccessMask_SAMR_USER_ACCESS_GET_NAME_ETC, tvb, offset, 4, access); -} - -struct access_mask_info samr_user_access_mask_info = { - "SAMR User", /* Name of specific rights */ - samr_user_specific_rights, /* Dissection function */ - NULL, /* Generic mapping table */ - NULL /* Standard mapping table */ -}; - -int -samr_dissect_bitmap_UserAccessMask(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep, int hf_index _U_, guint32 param _U_) -{ - offset = dissect_nt_access_mask( - tvb, offset, pinfo, tree, di, drep, hf_samr_user_access_mask, - &samr_user_access_mask_info, NULL); - return offset; -} - - -static int -cnf_dissect_lsa_AsciiString(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep, guint32 param _U_, int hfindex) -{ - offset = dissect_ndr_counted_ascii_string(tvb, offset, pinfo, tree, di, drep, - hfindex, 0); - - return offset; -} - -static int -cnf_dissect_hyper(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep, guint32 param _U_, int hfindex) -{ - offset = dissect_ndr_uint64(tvb, offset, pinfo, tree, di, drep, hfindex, NULL); - - return offset; -} - - - - -static int -cnf_dissect_sec_desc_buf_(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep) -{ - guint64 len; - e_ctx_hnd *polhnd = NULL; - dcerpc_call_value *dcv = NULL; - guint32 type=0; - struct access_mask_info *ami=NULL; - - if(di->conformant_run){ - /*just a run to handle conformant arrays, nothing to dissect */ - return offset; - } - - offset = dissect_ndr_uint3264 (tvb, offset, pinfo, tree, di, drep, - hf_samr_sec_desc_buf_len, &len); - - dcv = (dcerpc_call_value *)di->call_data; - if(dcv){ - polhnd = dcv->pol; - } - if(polhnd){ - dcerpc_fetch_polhnd_data(polhnd, NULL, &type, NULL, NULL, - pinfo->num); - } - switch(type){ - case PIDL_POLHND_TYPE_SAMR_USER: - ami=&samr_user_access_mask_info; - break; - case PIDL_POLHND_TYPE_SAMR_CONNECT: - ami=&samr_connect_access_mask_info; - break; - case PIDL_POLHND_TYPE_SAMR_DOMAIN: - ami=&samr_domain_access_mask_info; - break; - case PIDL_POLHND_TYPE_SAMR_GROUP: - ami=&samr_group_access_mask_info; - break; - case PIDL_POLHND_TYPE_SAMR_ALIAS: - ami=&samr_alias_access_mask_info; - break; - } - - dissect_nt_sec_desc(tvb, offset, pinfo, tree, drep, TRUE, (int)len, ami); - - offset += (int)len; - - return offset; -} - -static int -cnf_dissect_sec_desc_buf(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep) -{ - guint64 len; - - if(di->conformant_run){ - /*just a run to handle conformant arrays, nothing to dissect */ - return offset; - } - - offset = dissect_ndr_uint3264 (tvb, offset, pinfo, tree, di, drep, - hf_samr_sec_desc_buf_len, &len); - - offset = dissect_ndr_pointer(tvb, offset, pinfo, tree, di, drep, - cnf_dissect_sec_desc_buf_, NDR_POINTER_UNIQUE, - "SAM SECURITY DESCRIPTOR data:", -1); - - return offset; -} - - - -static int -cnf_dissect_dom_sid2(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep) -{ - offset = dissect_ndr_nt_SID(tvb, offset, pinfo, tree, di, drep); - - return offset; -} - -static int -cnf_dissect_lsa_SidArray(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep) -{ - offset = dissect_ndr_nt_PSID_ARRAY(tvb, offset, pinfo, tree, di, drep); - - return offset; -} - - -static int -cnf_dissect_samr_security_secinfo(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, guint8 *drep _U_) -{ - offset = dissect_nt_security_information(tvb, offset, tree); - - return offset; -} - -CODE END diff --git a/epan/dissectors/pidl/samr.idl b/epan/dissectors/pidl/samr.idl deleted file mode 100644 index 9488c65e22..0000000000 --- a/epan/dissectors/pidl/samr.idl +++ /dev/null @@ -1,1542 +0,0 @@ -#include "idl_types.h" - -/* - samr interface definition -*/ -/* import "misc.idl", "lsa.idl", "security.idl";*/ - -/* - Thanks to Todd Sabin for some information from his samr.idl in acltools -*/ - -[ uuid("12345778-1234-abcd-ef00-0123456789ac"), - version(1.0), - endpoint("ncacn_np:[\\pipe\\samr]","ncacn_ip_tcp:", "ncalrpc:"), - pointer_default(unique) -] interface samr -{ - - typedef [public] struct { - uint32 count; - [size_is(count)] lsa_String *names; - } lsa_Strings; - - - typedef [v1_enum] enum { - SID_NAME_USE_NONE = 0,/* NOTUSED */ - SID_NAME_USER = 1, /* user */ - SID_NAME_DOM_GRP = 2, /* domain group */ - SID_NAME_DOMAIN = 3, /* domain: don't know what this is */ - SID_NAME_ALIAS = 4, /* local group */ - SID_NAME_WKN_GRP = 5, /* well-known group */ - SID_NAME_DELETED = 6, /* deleted account: needed for c2 rating */ - SID_NAME_INVALID = 7, /* invalid account */ - SID_NAME_UNKNOWN = 8, /* oops. */ - SID_NAME_COMPUTER = 9 /* machine */ - } lsa_SidType; - - typedef [public,v1_enum] enum { - SAMR_REJECT_OTHER = 0, - SAMR_REJECT_TOO_SHORT = 1, - SAMR_REJECT_IN_HISTORY = 2, - SAMR_REJECT_COMPLEXITY = 5 - } samr_RejectReason; - - - - /* account control (acct_flags) bits */ - typedef [public,bitmap32bit] bitmap { - ACB_DISABLED = 0x00000001, /* 1 = User account disabled */ - ACB_HOMDIRREQ = 0x00000002, /* 1 = Home directory required */ - ACB_PWNOTREQ = 0x00000004, /* 1 = User password not required */ - ACB_TEMPDUP = 0x00000008, /* 1 = Temporary duplicate account */ - ACB_NORMAL = 0x00000010, /* 1 = Normal user account */ - ACB_MNS = 0x00000020, /* 1 = MNS logon user account */ - ACB_DOMTRUST = 0x00000040, /* 1 = Interdomain trust account */ - ACB_WSTRUST = 0x00000080, /* 1 = Workstation trust account */ - ACB_SVRTRUST = 0x00000100, /* 1 = Server trust account */ - ACB_PWNOEXP = 0x00000200, /* 1 = User password does not expire */ - ACB_AUTOLOCK = 0x00000400, /* 1 = Account auto locked */ - ACB_ENC_TXT_PWD_ALLOWED = 0x00000800, /* 1 = Encryped text password is allowed */ - ACB_SMARTCARD_REQUIRED = 0x00001000, /* 1 = Smart Card required */ - ACB_TRUSTED_FOR_DELEGATION = 0x00002000, /* 1 = Trusted for Delegation */ - ACB_NOT_DELEGATED = 0x00004000, /* 1 = Not delegated */ - ACB_USE_DES_KEY_ONLY = 0x00008000, /* 1 = Use DES key only */ - ACB_DONT_REQUIRE_PREAUTH = 0x00010000, /* 1 = Preauth not required */ - ACB_PW_EXPIRED = 0x00020000, /* 1 = Password Expired */ - ACB_TRUST_AUTH_DELEGAT = 0x00040000, /* 1 = Trusted to authenticate for delegation */ - ACB_NO_AUTH_DATA_REQD = 0x00080000 /* 1 = No authorization data required */ - } samr_AcctFlags; - - /* SAM server specific access rights */ - - typedef [bitmap32bit] bitmap { - SAMR_ACCESS_CONNECT_TO_SERVER = 0x00000001, - SAMR_ACCESS_SHUTDOWN_SERVER = 0x00000002, - SAMR_ACCESS_INITIALIZE_SERVER = 0x00000004, - SAMR_ACCESS_CREATE_DOMAIN = 0x00000008, - SAMR_ACCESS_ENUM_DOMAINS = 0x00000010, - SAMR_ACCESS_LOOKUP_DOMAIN = 0x00000020 - } samr_ConnectAccessMask; - - const int SAMR_ACCESS_ALL_ACCESS = 0x0000003F; - - const int GENERIC_RIGHTS_SAM_ALL_ACCESS = - (STANDARD_RIGHTS_REQUIRED_ACCESS | - SAMR_ACCESS_ALL_ACCESS); - - const int GENERIC_RIGHTS_SAM_READ = - (STANDARD_RIGHTS_READ_ACCESS | - SAMR_ACCESS_ENUM_DOMAINS); - - const int GENERIC_RIGHTS_SAM_WRITE = - (STANDARD_RIGHTS_WRITE_ACCESS | - SAMR_ACCESS_CREATE_DOMAIN | - SAMR_ACCESS_INITIALIZE_SERVER | - SAMR_ACCESS_SHUTDOWN_SERVER); - - const int GENERIC_RIGHTS_SAM_EXECUTE = - (STANDARD_RIGHTS_EXECUTE_ACCESS | - SAMR_ACCESS_LOOKUP_DOMAIN | - SAMR_ACCESS_CONNECT_TO_SERVER); - - /* User Object specific access rights */ - - typedef [bitmap32bit] bitmap { - SAMR_USER_ACCESS_GET_NAME_ETC = 0x00000001, - SAMR_USER_ACCESS_GET_LOCALE = 0x00000002, - SAMR_USER_ACCESS_SET_LOC_COM = 0x00000004, - SAMR_USER_ACCESS_GET_LOGONINFO = 0x00000008, - SAMR_USER_ACCESS_GET_ATTRIBUTES = 0x00000010, - SAMR_USER_ACCESS_SET_ATTRIBUTES = 0x00000020, - SAMR_USER_ACCESS_CHANGE_PASSWORD = 0x00000040, - SAMR_USER_ACCESS_SET_PASSWORD = 0x00000080, - SAMR_USER_ACCESS_GET_GROUPS = 0x00000100, - SAMR_USER_ACCESS_GET_GROUP_MEMBERSHIP = 0x00000200, - SAMR_USER_ACCESS_CHANGE_GROUP_MEMBERSHIP = 0x00000400 - } samr_UserAccessMask; - - typedef [bitmap32bit] bitmap { - SAMR_DOMAIN_ACCESS_LOOKUP_INFO_1 = 0x00000001, - SAMR_DOMAIN_ACCESS_SET_INFO_1 = 0x00000002, - SAMR_DOMAIN_ACCESS_LOOKUP_INFO_2 = 0x00000004, - SAMR_DOMAIN_ACCESS_SET_INFO_2 = 0x00000008, - SAMR_DOMAIN_ACCESS_CREATE_USER = 0x00000010, - SAMR_DOMAIN_ACCESS_CREATE_GROUP = 0x00000020, - SAMR_DOMAIN_ACCESS_CREATE_ALIAS = 0x00000040, - SAMR_DOMAIN_ACCESS_LOOKUP_ALIAS = 0x00000080, - SAMR_DOMAIN_ACCESS_ENUM_ACCOUNTS = 0x00000100, - SAMR_DOMAIN_ACCESS_OPEN_ACCOUNT = 0x00000200, - SAMR_DOMAIN_ACCESS_SET_INFO_3 = 0x00000400 - } samr_DomainAccessMask; - - typedef [bitmap32bit] bitmap { - SAMR_GROUP_ACCESS_LOOKUP_INFO = 0x00000001, - SAMR_GROUP_ACCESS_SET_INFO = 0x00000002, - SAMR_GROUP_ACCESS_ADD_MEMBER = 0x00000004, - SAMR_GROUP_ACCESS_REMOVE_MEMBER = 0x00000008, - SAMR_GROUP_ACCESS_GET_MEMBERS = 0x00000010 - } samr_GroupAccessMask; - /* these bits are invalid and return ACCESS_DENIED */ - const int SAMR_GROUP_ACCESS_MASK_INVALID = 0x0000ffe0; - /* generic access */ - const int SAMR_GROUP_ACCESS_ALL_ACCESS = 0x000f001f; - const int SAMR_GROUP_ACCESS_ALL_READ = 0x00020010; - const int SAMR_GROUP_ACCESS_ALL_WRITE = 0x0002000e; - const int SAMR_GROUP_ACCESS_ALL_EXECUTE = 0x00020001; - - typedef [bitmap32bit] bitmap { - SAMR_ALIAS_ACCESS_ADD_MEMBER = 0x00000001, - SAMR_ALIAS_ACCESS_REMOVE_MEMBER = 0x00000002, - SAMR_ALIAS_ACCESS_GET_MEMBERS = 0x00000004, - SAMR_ALIAS_ACCESS_LOOKUP_INFO = 0x00000008, - SAMR_ALIAS_ACCESS_SET_INFO = 0x00000010 - } samr_AliasAccessMask; - - /******************/ - /* Function: 0x00 */ - NTSTATUS samr_Connect ( - /* notice the lack of [string] */ - [in,unique] uint16 *system_name, - [in] samr_ConnectAccessMask access_mask, - [out,ref] policy_handle *connect_handle - ); - - - /******************/ - /* Function: 0x01 */ - [public] NTSTATUS samr_Close ( - [in,out,ref] policy_handle *handle - ); - - /******************/ - /* Function: 0x02 */ - - NTSTATUS samr_SetSecurity ( - [in,ref] policy_handle *handle, - [in] security_secinfo sec_info, - [in,ref] sec_desc_buf *sdbuf - ); - - /******************/ - /* Function: 0x03 */ - - NTSTATUS samr_QuerySecurity ( - [in,ref] policy_handle *handle, - [in] security_secinfo sec_info, - [out,ref] sec_desc_buf **sdbuf - ); - - /******************/ - /* Function: 0x04 */ - - /* - shutdown the SAM - once you call this the SAM will be dead - */ - NTSTATUS samr_Shutdown ( - [in,ref] policy_handle *connect_handle - ); - - /******************/ - /* Function: 0x05 */ - NTSTATUS samr_LookupDomain ( - [in,ref] policy_handle *connect_handle, - [in,ref] lsa_String *domain_name, - [out,ref] dom_sid2 **sid - ); - - - /******************/ - /* Function: 0x06 */ - - typedef struct { - uint32 idx; - lsa_String name; - } samr_SamEntry; - - typedef struct { - uint32 count; - [size_is(count)] samr_SamEntry *entries; - } samr_SamArray; - - NTSTATUS samr_EnumDomains ( - [in,ref] policy_handle *connect_handle, - [in,out,ref] uint32 *resume_handle, - [out,ref] samr_SamArray **sam, - [in] uint32 buf_size, - [out,ref] uint32 *num_entries - ); - - - /************************/ - /* Function 0x07 */ - [public] NTSTATUS samr_OpenDomain( - [in,ref] policy_handle *connect_handle, - [in] samr_DomainAccessMask access_mask, - [in,ref] dom_sid2 *sid, - [out,ref] policy_handle *domain_handle - ); - - /************************/ - /* Function 0x08 */ - - typedef enum { - DomainPasswordInformation = 1, - DomainGeneralInformation = 2, - DomainLogoffInformation = 3, - DomainOemInformation = 4, - DomainNameInformation = 5, - DomainReplicationInformation = 6, - DomainServerRoleInformation = 7, - DomainModifiedInformation = 8, - DomainStateInformation = 9, - DomainUasInformation = 10, - DomainGeneralInformation2 = 11, - DomainLockoutInformation = 12, - DomainModifiedInformation2 = 13 - } samr_DomainInfoClass; - - /* server roles */ - typedef [v1_enum] enum { - SAMR_ROLE_STANDALONE = 0, - SAMR_ROLE_DOMAIN_MEMBER = 1, - SAMR_ROLE_DOMAIN_BDC = 2, - SAMR_ROLE_DOMAIN_PDC = 3 - } samr_Role; - - /* password properties flags */ - typedef [public,bitmap32bit] bitmap { - DOMAIN_PASSWORD_COMPLEX = 0x00000001, - DOMAIN_PASSWORD_NO_ANON_CHANGE = 0x00000002, - DOMAIN_PASSWORD_NO_CLEAR_CHANGE = 0x00000004, - DOMAIN_PASSWORD_LOCKOUT_ADMINS = 0x00000008, - DOMAIN_PASSWORD_STORE_CLEARTEXT = 0x00000010, - DOMAIN_REFUSE_PASSWORD_CHANGE = 0x00000020 - } samr_PasswordProperties; - - typedef [v1_enum] enum { - DOMAIN_SERVER_ENABLED = 1, - DOMAIN_SERVER_DISABLED = 2 - } samr_DomainServerState; - - typedef struct { - uint16 min_password_length; - uint16 password_history_length; - samr_PasswordProperties password_properties; - /* yes, these are signed. They are in negative 100ns */ - dlong max_password_age; - dlong min_password_age; - } samr_DomInfo1; - - typedef struct { - NTTIME force_logoff_time; - lsa_String oem_information; /* comment */ - lsa_String domain_name; - lsa_String primary; /* PDC name if this is a BDC */ - udlong sequence_num; - samr_DomainServerState domain_server_state; - samr_Role role; - uint32 unknown3; - uint32 num_users; - uint32 num_groups; - uint32 num_aliases; - } samr_DomGeneralInformation; - - typedef struct { - NTTIME force_logoff_time; - } samr_DomInfo3; - - typedef struct { - lsa_String oem_information; /* comment */ - } samr_DomOEMInformation; - - typedef struct { - lsa_String domain_name; - } samr_DomInfo5; - - typedef struct { - lsa_String primary; - } samr_DomInfo6; - - typedef struct { - samr_Role role; - } samr_DomInfo7; - - typedef struct { - hyper sequence_num; - NTTIME domain_create_time; - } samr_DomInfo8; - - typedef struct { - samr_DomainServerState domain_server_state; - } samr_DomInfo9; - - typedef struct { - samr_DomGeneralInformation general; - hyper lockout_duration; - hyper lockout_window; - uint16 lockout_threshold; - } samr_DomGeneralInformation2; - - typedef struct { - hyper lockout_duration; - hyper lockout_window; - uint16 lockout_threshold; - } samr_DomInfo12; - - typedef struct { - hyper sequence_num; - NTTIME domain_create_time; - hyper modified_count_at_last_promotion; - } samr_DomInfo13; - - typedef [switch_type(uint16)] union { - [case(1)] samr_DomInfo1 info1; - [case(2)] samr_DomGeneralInformation general; - [case(3)] samr_DomInfo3 info3; - [case(4)] samr_DomOEMInformation oem; - [case(5)] samr_DomInfo5 info5; - [case(6)] samr_DomInfo6 info6; - [case(7)] samr_DomInfo7 info7; - [case(8)] samr_DomInfo8 info8; - [case(9)] samr_DomInfo9 info9; - [case(11)] samr_DomGeneralInformation2 general2; - [case(12)] samr_DomInfo12 info12; - [case(13)] samr_DomInfo13 info13; - } samr_DomainInfo; - - NTSTATUS samr_QueryDomainInfo( - [in,ref] policy_handle *domain_handle, - [in] samr_DomainInfoClass level, - [out,ref,switch_is(level)] samr_DomainInfo **info - ); - - /************************/ - /* Function 0x09 */ - /* - only levels 1, 3, 4, 6, 7, 9, 12 are valid for this - call in w2k3 - */ - NTSTATUS samr_SetDomainInfo( - [in,ref] policy_handle *domain_handle, - [in] samr_DomainInfoClass level, - [in,switch_is(level),ref] samr_DomainInfo *info - ); - - - /************************/ - /* Function 0x0a */ - NTSTATUS samr_CreateDomainGroup( - [in,ref] policy_handle *domain_handle, - [in,ref] lsa_String *name, - [in] samr_GroupAccessMask access_mask, - [out,ref] policy_handle *group_handle, - [out,ref] uint32 *rid - ); - - - /************************/ - /* Function 0x0b */ - NTSTATUS samr_EnumDomainGroups( - [in] policy_handle *domain_handle, - [in,out,ref] uint32 *resume_handle, - [out,ref] samr_SamArray **sam, - [in] uint32 max_size, - [out,ref] uint32 *num_entries - ); - - /************************/ - /* Function 0x0c */ - NTSTATUS samr_CreateUser( - [in,ref] policy_handle *domain_handle, - [in,ref] lsa_String *account_name, - [in] samr_UserAccessMask access_mask, - [out,ref] policy_handle *user_handle, - [out,ref] uint32 *rid - ); - - /************************/ - /* Function 0x0d */ - - - /* w2k3 treats max_size as max_users*54 and sets the - resume_handle as the rid of the last user sent - */ - const int SAMR_ENUM_USERS_MULTIPLIER = 54; - - NTSTATUS samr_EnumDomainUsers( - [in] policy_handle *domain_handle, - [in,out,ref] uint32 *resume_handle, - [in] samr_AcctFlags acct_flags, - [out,ref] samr_SamArray **sam, - [in] uint32 max_size, - [out,ref] uint32 *num_entries - ); - - /************************/ - /* Function 0x0e */ - NTSTATUS samr_CreateDomAlias( - [in,ref] policy_handle *domain_handle, - [in,ref] lsa_String *alias_name, - [in] samr_AliasAccessMask access_mask, - [out,ref] policy_handle *alias_handle, - [out,ref] uint32 *rid - ); - - /************************/ - /* Function 0x0f */ - NTSTATUS samr_EnumDomainAliases( - [in] policy_handle *domain_handle, - [in,out,ref] uint32 *resume_handle, - [out,ref] samr_SamArray **sam, - [in] uint32 max_size, - [out,ref] uint32 *num_entries - ); - - /************************/ - /* Function 0x10 */ - - typedef struct { - [range(0,1024)] uint32 count; - [size_is(count)] uint32 *ids; - } samr_Ids; - - NTSTATUS samr_GetAliasMembership( - [in,ref] policy_handle *domain_handle, - [in,ref] lsa_SidArray *sids, - [out,ref] samr_Ids *rids - ); - - /************************/ - /* Function 0x11 */ - - [public] NTSTATUS samr_LookupNames( - [in,ref] policy_handle *domain_handle, - [in,range(0,1000)] uint32 num_names, - [in,size_is(1000),length_is(num_names),ref] lsa_String *names, - [out,ref] samr_Ids *rids, - [out,ref] samr_Ids *types - ); - - - /************************/ - /* Function 0x12 */ - NTSTATUS samr_LookupRids( - [in,ref] policy_handle *domain_handle, - [in,range(0,1000)] uint32 num_rids, - [in,size_is(1000),length_is(num_rids)] uint32 rids[], - [out,ref] lsa_Strings *names, - [out,ref] samr_Ids *types - ); - - /************************/ - /* Function 0x13 */ - NTSTATUS samr_OpenGroup( - [in,ref] policy_handle *domain_handle, - [in] samr_GroupAccessMask access_mask, - [in] uint32 rid, - [out,ref] policy_handle *group_handle - ); - - /* Group attributes */ - typedef [public,bitmap32bit] bitmap { - SE_GROUP_MANDATORY = 0x00000001, - SE_GROUP_ENABLED_BY_DEFAULT = 0x00000002, - SE_GROUP_ENABLED = 0x00000004, - SE_GROUP_OWNER = 0x00000008, - SE_GROUP_USE_FOR_DENY_ONLY = 0x00000010, - SE_GROUP_RESOURCE = 0x20000000, - SE_GROUP_LOGON_ID = 0xC0000000 - } samr_GroupAttrs; - - /************************/ - /* Function 0x14 */ - - typedef struct { - lsa_String name; - samr_GroupAttrs attributes; - uint32 num_members; - lsa_String description; - } samr_GroupInfoAll; - - typedef struct { - samr_GroupAttrs attributes; - } samr_GroupInfoAttributes; - - typedef struct { - lsa_String description; - } samr_GroupInfoDescription; - - typedef enum { - GROUPINFOALL = 1, - GROUPINFONAME = 2, - GROUPINFOATTRIBUTES = 3, - GROUPINFODESCRIPTION = 4, - GROUPINFOALL2 = 5 - } samr_GroupInfoEnum; - - typedef [switch_type(samr_GroupInfoEnum)] union { - [case(GROUPINFOALL)] samr_GroupInfoAll all; - [case(GROUPINFONAME)] lsa_String name; - [case(GROUPINFOATTRIBUTES)] samr_GroupInfoAttributes attributes; - [case(GROUPINFODESCRIPTION)] lsa_String description; - [case(GROUPINFOALL2)] samr_GroupInfoAll all2; - } samr_GroupInfo; - - NTSTATUS samr_QueryGroupInfo( - [in,ref] policy_handle *group_handle, - [in] samr_GroupInfoEnum level, - [out,ref,switch_is(level)] samr_GroupInfo **info - ); - - /************************/ - /* Function 0x15 */ - NTSTATUS samr_SetGroupInfo( - [in,ref] policy_handle *group_handle, - [in] samr_GroupInfoEnum level, - [in,switch_is(level),ref] samr_GroupInfo *info - ); - - /************************/ - /* Function 0x16 */ - NTSTATUS samr_AddGroupMember( - [in,ref] policy_handle *group_handle, - [in] uint32 rid, - [in] uint32 flags - ); - - /************************/ - /* Function 0x17 */ - NTSTATUS samr_DeleteDomainGroup( - [in,out,ref] policy_handle *group_handle - ); - - /************************/ - /* Function 0x18 */ - NTSTATUS samr_DeleteGroupMember( - [in,ref] policy_handle *group_handle, - [in] uint32 rid - ); - - - /************************/ - /* Function 0x19 */ - typedef struct { - uint32 count; - [size_is(count)] uint32 *rids; - [size_is(count)] uint32 *types; - } samr_RidTypeArray; - - NTSTATUS samr_QueryGroupMember( - [in,ref] policy_handle *group_handle, - [out,ref] samr_RidTypeArray **rids - ); - - - /************************/ - /* Function 0x1a */ - - /* - win2003 seems to accept any data at all for the two integers - below, and doesn't seem to do anything with them that I can - see. Weird. I really expected the first integer to be a rid - and the second to be the attributes for that rid member. - */ - NTSTATUS samr_SetMemberAttributesOfGroup( - [in,ref] policy_handle *group_handle, - [in] uint32 unknown1, - [in] uint32 unknown2 - ); - - - /************************/ - /* Function 0x1b */ - NTSTATUS samr_OpenAlias ( - [in,ref] policy_handle *domain_handle, - [in] samr_AliasAccessMask access_mask, - [in] uint32 rid, - [out,ref] policy_handle *alias_handle - ); - - - /************************/ - /* Function 0x1c */ - - typedef struct { - lsa_String name; - uint32 num_members; - lsa_String description; - } samr_AliasInfoAll; - - typedef enum { - ALIASINFOALL = 1, - ALIASINFONAME = 2, - ALIASINFODESCRIPTION = 3 - } samr_AliasInfoEnum; - - typedef [switch_type(samr_AliasInfoEnum)] union { - [case(ALIASINFOALL)] samr_AliasInfoAll all; - [case(ALIASINFONAME)] lsa_String name; - [case(ALIASINFODESCRIPTION)] lsa_String description; - } samr_AliasInfo; - - NTSTATUS samr_QueryAliasInfo( - [in,ref] policy_handle *alias_handle, - [in] samr_AliasInfoEnum level, - [out,ref,switch_is(level)] samr_AliasInfo **info - ); - - /************************/ - /* Function 0x1d */ - NTSTATUS samr_SetAliasInfo( - [in,ref] policy_handle *alias_handle, - [in] samr_AliasInfoEnum level, - [in,switch_is(level),ref] samr_AliasInfo *info - ); - - /************************/ - /* Function 0x1e */ - NTSTATUS samr_DeleteDomAlias( - [in,out,ref] policy_handle *alias_handle - ); - - /************************/ - /* Function 0x1f */ - NTSTATUS samr_AddAliasMember( - [in,ref] policy_handle *alias_handle, - [in,ref] dom_sid2 *sid - ); - - /************************/ - /* Function 0x20 */ - NTSTATUS samr_DeleteAliasMember( - [in,ref] policy_handle *alias_handle, - [in,ref] dom_sid2 *sid - ); - - /************************/ - /* Function 0x21 */ - NTSTATUS samr_GetMembersInAlias( - [in,ref] policy_handle *alias_handle, - [out,ref] lsa_SidArray *sids - ); - - /************************/ - /* Function 0x22 */ - [public] NTSTATUS samr_OpenUser( - [in,ref] policy_handle *domain_handle, - [in] samr_UserAccessMask access_mask, - [in] uint32 rid, - [out,ref] policy_handle *user_handle - ); - - /************************/ - /* Function 0x23 */ - NTSTATUS samr_DeleteUser( - [in,out,ref] policy_handle *user_handle - ); - - /************************/ - /* Function 0x24 */ - - typedef enum { - UserGeneralInformation = 1, - UserPreferencesInformation = 2, - UserLogonInformation = 3, - UserLogonHoursInformation = 4, - UserAccountInformation = 5, - UserNameInformation = 6, - UserAccountNameInformation = 7, - UserFullNameInformation = 8, - UserPrimaryGroupInformation = 9, - UserHomeInformation = 10, - UserScriptInformation = 11, - UserProfileInformation = 12, - UserAdminCommentInformation = 13, - UserWorkStationsInformation = 14, - UserControlInformation = 16, - UserExpiresInformation = 17, - UserInternal1Information = 18, - UserParametersInformation = 20, - UserAllInformation = 21, - UserInternal4Information = 23, - UserInternal5Information = 24, - UserInternal4InformationNew = 25, - UserInternal5InformationNew = 26 - } samr_UserInfoLevel; - - typedef struct { - lsa_String account_name; - lsa_String full_name; - uint32 primary_gid; - lsa_String description; - lsa_String comment; - } samr_UserInfo1; - - typedef struct { - lsa_String comment; - lsa_String unknown; /* settable, but doesn't stick. probably obsolete */ - uint16 country_code; - uint16 code_page; - } samr_UserInfo2; - - /* this is also used in samr and netlogon */ - typedef [public, flag(NDR_PAHEX)] struct { - uint16 units_per_week; - [size_is(1260), length_is(units_per_week/8)] uint8 *bits; - } samr_LogonHours; - - typedef struct { - lsa_String account_name; - lsa_String full_name; - uint32 rid; - uint32 primary_gid; - lsa_String home_directory; - lsa_String home_drive; - lsa_String logon_script; - lsa_String profile_path; - lsa_String workstations; - NTTIME last_logon; - NTTIME last_logoff; - NTTIME last_password_change; - NTTIME allow_password_change; - NTTIME force_password_change; - samr_LogonHours logon_hours; - uint16 bad_password_count; - uint16 logon_count; - samr_AcctFlags acct_flags; - } samr_UserInfo3; - - typedef struct { - samr_LogonHours logon_hours; - } samr_UserInfo4; - - typedef struct { - lsa_String account_name; - lsa_String full_name; - uint32 rid; - uint32 primary_gid; - lsa_String home_directory; - lsa_String home_drive; - lsa_String logon_script; - lsa_String profile_path; - lsa_String description; - lsa_String workstations; - NTTIME last_logon; - NTTIME last_logoff; - samr_LogonHours logon_hours; - uint16 bad_password_count; - uint16 logon_count; - NTTIME last_password_change; - NTTIME acct_expiry; - samr_AcctFlags acct_flags; - } samr_UserInfo5; - - typedef struct { - lsa_String account_name; - lsa_String full_name; - } samr_UserInfo6; - - typedef struct { - lsa_String account_name; - } samr_UserInfo7; - - typedef struct { - lsa_String full_name; - } samr_UserInfo8; - - typedef struct { - uint32 primary_gid; - } samr_UserInfo9; - - typedef struct { - lsa_String home_directory; - lsa_String home_drive; - } samr_UserInfo10; - - typedef struct { - lsa_String logon_script; - } samr_UserInfo11; - - typedef struct { - lsa_String profile_path; - } samr_UserInfo12; - - typedef struct { - lsa_String description; - } samr_UserInfo13; - - typedef struct { - lsa_String workstations; - } samr_UserInfo14; - - typedef struct { - samr_AcctFlags acct_flags; - } samr_UserInfo16; - - typedef struct { - NTTIME acct_expiry; - } samr_UserInfo17; - - typedef [public, flag(NDR_PAHEX)] struct { - uint8 hash[16]; - } samr_Password; - - typedef struct { - samr_Password nt_pwd; - samr_Password lm_pwd; - boolean8 nt_pwd_active; - boolean8 lm_pwd_active; - uint8 password_expired; - } samr_UserInfo18; - - typedef struct { - lsa_String parameters; - } samr_UserInfo20; - - /* this defines the bits used for fields_present in info21 */ - typedef [bitmap32bit] bitmap { - SAMR_FIELD_ACCOUNT_NAME = 0x00000001, - SAMR_FIELD_FULL_NAME = 0x00000002, - SAMR_FIELD_RID = 0x00000004, - SAMR_FIELD_PRIMARY_GID = 0x00000008, - SAMR_FIELD_DESCRIPTION = 0x00000010, - SAMR_FIELD_COMMENT = 0x00000020, - SAMR_FIELD_HOME_DIRECTORY = 0x00000040, - SAMR_FIELD_HOME_DRIVE = 0x00000080, - SAMR_FIELD_LOGON_SCRIPT = 0x00000100, - SAMR_FIELD_PROFILE_PATH = 0x00000200, - SAMR_FIELD_WORKSTATIONS = 0x00000400, - SAMR_FIELD_LAST_LOGON = 0x00000800, - SAMR_FIELD_LAST_LOGOFF = 0x00001000, - SAMR_FIELD_LOGON_HOURS = 0x00002000, - SAMR_FIELD_BAD_PWD_COUNT = 0x00004000, - SAMR_FIELD_NUM_LOGONS = 0x00008000, - SAMR_FIELD_ALLOW_PWD_CHANGE = 0x00010000, - SAMR_FIELD_FORCE_PWD_CHANGE = 0x00020000, - SAMR_FIELD_LAST_PWD_CHANGE = 0x00040000, - SAMR_FIELD_ACCT_EXPIRY = 0x00080000, - SAMR_FIELD_ACCT_FLAGS = 0x00100000, - SAMR_FIELD_PARAMETERS = 0x00200000, - SAMR_FIELD_COUNTRY_CODE = 0x00400000, - SAMR_FIELD_CODE_PAGE = 0x00800000, - SAMR_FIELD_NT_PASSWORD_PRESENT = 0x01000000, /* either of these */ - SAMR_FIELD_LM_PASSWORD_PRESENT = 0x02000000, /* two bits seems to work */ - SAMR_FIELD_PRIVATE_DATA = 0x04000000, - SAMR_FIELD_EXPIRED_FLAG = 0x08000000, - SAMR_FIELD_SEC_DESC = 0x10000000, - SAMR_FIELD_OWF_PWD = 0x20000000 - } samr_FieldsPresent; - - /* used for 'password_expired' in samr_UserInfo21 */ - const int PASS_MUST_CHANGE_AT_NEXT_LOGON = 0x01; - const int PASS_DONT_CHANGE_AT_NEXT_LOGON = 0x00; - - typedef struct { - NTTIME last_logon; - NTTIME last_logoff; - NTTIME last_password_change; - NTTIME acct_expiry; - NTTIME allow_password_change; - NTTIME force_password_change; - lsa_String account_name; - lsa_String full_name; - lsa_String home_directory; - lsa_String home_drive; - lsa_String logon_script; - lsa_String profile_path; - lsa_String description; - lsa_String workstations; - lsa_String comment; - lsa_String parameters; - lsa_String lm_password; - lsa_String nt_password; - lsa_String private; - uint32 buf_count; - [size_is(buf_count)] uint8 *buffer; - uint32 rid; - uint32 primary_gid; - samr_AcctFlags acct_flags; - samr_FieldsPresent fields_present; - samr_LogonHours logon_hours; - uint16 bad_password_count; - uint16 logon_count; - uint16 country_code; - uint16 code_page; - uint8 lm_password_set; - uint8 nt_password_set; - uint8 password_expired; - uint8 unknown4; - } samr_UserInfo21; - - typedef [public, flag(NDR_PAHEX)] struct { - uint8 data[516]; - } samr_CryptPassword; - - typedef struct { - samr_UserInfo21 info; - samr_CryptPassword password; - } samr_UserInfo23; - - typedef struct { - samr_CryptPassword password; - uint8 password_expired; - } samr_UserInfo24; - - typedef [flag(NDR_PAHEX)] struct { - uint8 data[532]; - } samr_CryptPasswordEx; - - typedef struct { - samr_UserInfo21 info; - samr_CryptPasswordEx password; - } samr_UserInfo25; - - typedef struct { - samr_CryptPasswordEx password; - uint8 password_expired; - } samr_UserInfo26; - - typedef [switch_type(uint16)] union { - [case(1)] samr_UserInfo1 info1; - [case(2)] samr_UserInfo2 info2; - [case(3)] samr_UserInfo3 info3; - [case(4)] samr_UserInfo4 info4; - [case(5)] samr_UserInfo5 info5; - [case(6)] samr_UserInfo6 info6; - [case(7)] samr_UserInfo7 info7; - [case(8)] samr_UserInfo8 info8; - [case(9)] samr_UserInfo9 info9; - [case(10)] samr_UserInfo10 info10; - [case(11)] samr_UserInfo11 info11; - [case(12)] samr_UserInfo12 info12; - [case(13)] samr_UserInfo13 info13; - [case(14)] samr_UserInfo14 info14; - [case(16)] samr_UserInfo16 info16; - [case(17)] samr_UserInfo17 info17; - [case(18)] samr_UserInfo18 info18; - [case(20)] samr_UserInfo20 info20; - [case(21)] samr_UserInfo21 info21; - [case(23)] samr_UserInfo23 info23; - [case(24)] samr_UserInfo24 info24; - [case(25)] samr_UserInfo25 info25; - [case(26)] samr_UserInfo26 info26; - } samr_UserInfo; - - [public] NTSTATUS samr_QueryUserInfo( - [in,ref] policy_handle *user_handle, - [in] samr_UserInfoLevel level, - [out,ref,switch_is(level)] samr_UserInfo **info - ); - - - /************************/ - /* Function 0x25 */ - [public] NTSTATUS samr_SetUserInfo( - [in,ref] policy_handle *user_handle, - [in] samr_UserInfoLevel level, - [in,ref,switch_is(level)] samr_UserInfo *info - ); - - /************************/ - /* Function 0x26 */ - /* - this is a password change interface that doesn't give - the server the plaintext password. Depricated. - */ - NTSTATUS samr_ChangePasswordUser( - [in,ref] policy_handle *user_handle, - [in] boolean8 lm_present, - [in,unique] samr_Password *old_lm_crypted, - [in,unique] samr_Password *new_lm_crypted, - [in] boolean8 nt_present, - [in,unique] samr_Password *old_nt_crypted, - [in,unique] samr_Password *new_nt_crypted, - [in] boolean8 cross1_present, - [in,unique] samr_Password *nt_cross, - [in] boolean8 cross2_present, - [in,unique] samr_Password *lm_cross - ); - - /************************/ - /* Function 0x27 */ - - typedef [public] struct { - uint32 rid; - samr_GroupAttrs attributes; - } samr_RidWithAttribute; - - typedef [public] struct { - uint32 count; - [size_is(count)] samr_RidWithAttribute *rids; - } samr_RidWithAttributeArray; - - NTSTATUS samr_GetGroupsForUser( - [in,ref] policy_handle *user_handle, - [out,ref] samr_RidWithAttributeArray **rids - ); - - /************************/ - /* Function 0x28 */ - - typedef struct { - uint32 idx; - uint32 rid; - samr_AcctFlags acct_flags; - lsa_String account_name; - lsa_String description; - lsa_String full_name; - } samr_DispEntryGeneral; - - typedef struct { - uint32 count; - [size_is(count)] samr_DispEntryGeneral *entries; - } samr_DispInfoGeneral; - - typedef struct { - uint32 idx; - uint32 rid; - samr_AcctFlags acct_flags; - lsa_String account_name; - lsa_String description; - } samr_DispEntryFull; - - typedef struct { - uint32 count; - [size_is(count)] samr_DispEntryFull *entries; - } samr_DispInfoFull; - - typedef struct { - uint32 idx; - uint32 rid; - samr_GroupAttrs acct_flags; - lsa_String account_name; - lsa_String description; - } samr_DispEntryFullGroup; - - typedef struct { - uint32 count; - [size_is(count)] samr_DispEntryFullGroup *entries; - } samr_DispInfoFullGroups; - - typedef struct { - uint32 idx; - lsa_AsciiStringLarge account_name; - } samr_DispEntryAscii; - - typedef struct { - uint32 count; - [size_is(count)] samr_DispEntryAscii *entries; - } samr_DispInfoAscii; - - typedef enum { - SAMR_DOMAIN_DISPLAY_USER = 1, - SAMR_DOMAIN_DISPLAY_MACHINE = 2, - SAMR_DOMAIN_DISPLAY_GROUP = 3, - SAMR_DOMAIN_DISPLAY_OEM_USER = 4, - SAMR_DOMAIN_DISPLAY_OEM_GROUP = 5 - } samr_DomainDisplayInformation; - - typedef [switch_type(uint16)] union { - [case(SAMR_DOMAIN_DISPLAY_USER)] samr_DispInfoGeneral info1;/* users */ - [case(SAMR_DOMAIN_DISPLAY_MACHINE)] samr_DispInfoFull info2; /* trust accounts? */ - [case(SAMR_DOMAIN_DISPLAY_GROUP)] samr_DispInfoFullGroups info3; /* groups */ - [case(SAMR_DOMAIN_DISPLAY_OEM_USER)] samr_DispInfoAscii info4; /* users */ - [case(SAMR_DOMAIN_DISPLAY_OEM_GROUP)] samr_DispInfoAscii info5; /* groups */ - } samr_DispInfo; - - NTSTATUS samr_QueryDisplayInfo( - [in,ref] policy_handle *domain_handle, - [in] samr_DomainDisplayInformation level, - [in] uint32 start_idx, - [in] uint32 max_entries, - [in] uint32 buf_size, - [out,ref] uint32 *total_size, - [out,ref] uint32 *returned_size, - [out,ref,switch_is(level)] samr_DispInfo *info - ); - - - /************************/ - /* Function 0x29 */ - - /* - this seems to be an alphabetic search function. The returned index - is the index for samr_QueryDisplayInfo needed to get names occurring - after the specified name. The supplied name does not need to exist - in the database (for example you can supply just a first letter for - searching starting at that letter) - - The level corresponds to the samr_QueryDisplayInfo level - */ - NTSTATUS samr_GetDisplayEnumerationIndex( - [in,ref] policy_handle *domain_handle, - [in] uint16 level, - [in,ref] lsa_String *name, - [out,ref] uint32 *idx - ); - - - - /************************/ - /* Function 0x2a */ - - /* - w2k3 returns NT_STATUS_NOT_IMPLEMENTED for this - */ - NTSTATUS samr_TestPrivateFunctionsDomain( - [in,ref] policy_handle *domain_handle - ); - - - /************************/ - /* Function 0x2b */ - - /* - w2k3 returns NT_STATUS_NOT_IMPLEMENTED for this - */ - NTSTATUS samr_TestPrivateFunctionsUser( - [in,ref] policy_handle *user_handle - ); - - - /************************/ - /* Function 0x2c */ - - typedef struct { - uint16 min_password_length; - samr_PasswordProperties password_properties; - } samr_PwInfo; - - [public] NTSTATUS samr_GetUserPwInfo( - [in,ref] policy_handle *user_handle, - [out,ref] samr_PwInfo *info - ); - - /************************/ - /* Function 0x2d */ - NTSTATUS samr_RemoveMemberFromForeignDomain( - [in,ref] policy_handle *domain_handle, - [in,ref] dom_sid2 *sid - ); - - /************************/ - /* Function 0x2e */ - - /* - how is this different from QueryDomainInfo ?? - */ - NTSTATUS samr_QueryDomainInfo2( - [in,ref] policy_handle *domain_handle, - [in] samr_DomainInfoClass level, - [out,ref,switch_is(level)] samr_DomainInfo **info - ); - - /************************/ - /* Function 0x2f */ - - /* - how is this different from QueryUserInfo ?? - */ - NTSTATUS samr_QueryUserInfo2( - [in,ref] policy_handle *user_handle, - [in] samr_UserInfoLevel level, - [out,ref,switch_is(level)] samr_UserInfo **info - ); - - /************************/ - /* Function 0x30 */ - - /* - how is this different from QueryDisplayInfo?? - */ - NTSTATUS samr_QueryDisplayInfo2( - [in,ref] policy_handle *domain_handle, - [in] samr_DomainDisplayInformation level, - [in] uint32 start_idx, - [in] uint32 max_entries, - [in] uint32 buf_size, - [out,ref] uint32 *total_size, - [out,ref] uint32 *returned_size, - [out,ref,switch_is(level)] samr_DispInfo *info - ); - - /************************/ - /* Function 0x31 */ - - /* - how is this different from GetDisplayEnumerationIndex ?? - */ - NTSTATUS samr_GetDisplayEnumerationIndex2( - [in,ref] policy_handle *domain_handle, - [in] samr_DomainDisplayInformation level, - [in,ref] lsa_String *name, - [out,ref] uint32 *idx - ); - - - /************************/ - /* Function 0x32 */ - NTSTATUS samr_CreateUser2( - [in,ref] policy_handle *domain_handle, - [in,ref] lsa_String *account_name, - [in] samr_AcctFlags acct_flags, - [in] samr_UserAccessMask access_mask, - [out,ref] policy_handle *user_handle, - [out,ref] uint32 *access_granted, - [out,ref] uint32 *rid - ); - - - /************************/ - /* Function 0x33 */ - - /* - another duplicate. There must be a reason .... - */ - NTSTATUS samr_QueryDisplayInfo3( - [in,ref] policy_handle *domain_handle, - [in] samr_DomainDisplayInformation level, - [in] uint32 start_idx, - [in] uint32 max_entries, - [in] uint32 buf_size, - [out,ref] uint32 *total_size, - [out,ref] uint32 *returned_size, - [out,ref,switch_is(level)] samr_DispInfo *info - ); - - /************************/ - /* Function 0x34 */ - NTSTATUS samr_AddMultipleMembersToAlias( - [in,ref] policy_handle *alias_handle, - [in,ref] lsa_SidArray *sids - ); - - /************************/ - /* Function 0x35 */ - NTSTATUS samr_RemoveMultipleMembersFromAlias( - [in,ref] policy_handle *alias_handle, - [in,ref] lsa_SidArray *sids - ); - - /************************/ - /* Function 0x36 */ - - NTSTATUS samr_OemChangePasswordUser2( - [in,unique] lsa_AsciiString *server, - [in,ref] lsa_AsciiString *account, - [in,unique] samr_CryptPassword *password, - [in,unique] samr_Password *hash - ); - - /************************/ - /* Function 0x37 */ - NTSTATUS samr_ChangePasswordUser2( - [in,unique] lsa_String *server, - [in,ref] lsa_String *account, - [in,unique] samr_CryptPassword *nt_password, - [in,unique] samr_Password *nt_verifier, - [in] boolean8 lm_change, - [in,unique] samr_CryptPassword *lm_password, - [in,unique] samr_Password *lm_verifier - ); - - /************************/ - /* Function 0x38 */ - NTSTATUS samr_GetDomPwInfo( - [in,unique] lsa_String *domain_name, - [out,ref] samr_PwInfo *info - ); - - /************************/ - /* Function 0x39 */ - NTSTATUS samr_Connect2( - [in,unique,string,charset(UTF16)] uint16 *system_name, - [in] samr_ConnectAccessMask access_mask, - [out,ref] policy_handle *connect_handle - ); - - /************************/ - /* Function 0x3a */ - /* - seems to be an exact alias for samr_SetUserInfo() - */ - [public] NTSTATUS samr_SetUserInfo2( - [in,ref] policy_handle *user_handle, - [in] samr_UserInfoLevel level, - [in,ref,switch_is(level)] samr_UserInfo *info - ); - - /************************/ - /* Function 0x3b */ - /* - this one is mysterious. I have a few guesses, but nothing working yet - */ - NTSTATUS samr_SetBootKeyInformation( - [in,ref] policy_handle *connect_handle, - [in] uint32 unknown1, - [in] uint32 unknown2, - [in] uint32 unknown3 - ); - - /************************/ - /* Function 0x3c */ - NTSTATUS samr_GetBootKeyInformation( - [in,ref] policy_handle *domain_handle, - [out,ref] uint32 *unknown - ); - - /************************/ - /* Function 0x3d */ - NTSTATUS samr_Connect3( - [in,unique,string,charset(UTF16)] uint16 *system_name, - /* this unknown value seems to be completely ignored by w2k3 */ - [in] uint32 unknown, - [in] samr_ConnectAccessMask access_mask, - [out,ref] policy_handle *connect_handle - ); - - /************************/ - /* Function 0x3e */ - - typedef [v1_enum] enum { - SAMR_CONNECT_PRE_W2K = 1, - SAMR_CONNECT_W2K = 2, - SAMR_CONNECT_AFTER_W2K = 3 - } samr_ConnectVersion; - - NTSTATUS samr_Connect4( - [in,unique,string,charset(UTF16)] uint16 *system_name, - [in] samr_ConnectVersion client_version, - [in] samr_ConnectAccessMask access_mask, - [out,ref] policy_handle *connect_handle - ); - - /************************/ - /* Function 0x3f */ - - typedef struct { - samr_RejectReason reason; - uint32 unknown1; - uint32 unknown2; - } samr_ChangeReject; - - NTSTATUS samr_ChangePasswordUser3( - [in,unique] lsa_String *server, - [in,ref] lsa_String *account, - [in,unique] samr_CryptPassword *nt_password, - [in,unique] samr_Password *nt_verifier, - [in] boolean8 lm_change, - [in,unique] samr_CryptPassword *lm_password, - [in,unique] samr_Password *lm_verifier, - [in,unique] samr_CryptPassword *password3, - [out,ref] samr_DomInfo1 **dominfo, - [out,ref] samr_ChangeReject **reject - ); - - /************************/ - /* Function 0x40 */ - - typedef struct { - samr_ConnectVersion client_version; /* w2k3 gives 3 */ - uint32 unknown2; /* w2k3 gives 0 */ - } samr_ConnectInfo1; - - typedef union { - [case(1)] samr_ConnectInfo1 info1; - } samr_ConnectInfo; - - [public] NTSTATUS samr_Connect5( - [in,unique,string,charset(UTF16)] uint16 *system_name, - [in] samr_ConnectAccessMask access_mask, - [in] uint32 level_in, - [in,ref,switch_is(level_in)] samr_ConnectInfo *info_in, - [out,ref] uint32 *level_out, - [out,ref,switch_is(*level_out)] samr_ConnectInfo *info_out, - [out,ref] policy_handle *connect_handle - ); - - /************************/ - /* Function 0x41 */ - NTSTATUS samr_RidToSid( - [in,ref] policy_handle *domain_handle, - [in] uint32 rid, - [out,ref] dom_sid2 **sid - ); - - /************************/ - /* Function 0x42 */ - - /* - this should set the DSRM password for the server, which is used - when booting into Directory Services Recovery Mode on a DC. Win2003 - gives me NT_STATUS_NOT_SUPPORTED - */ - - NTSTATUS samr_SetDsrmPassword( - [in,unique] lsa_String *name, - [in] uint32 unknown, - [in,unique] samr_Password *hash - ); - - - /************************/ - /* Function 0x43 */ - /************************/ - typedef [bitmap32bit] bitmap { - SAMR_VALIDATE_FIELD_PASSWORD_LAST_SET = 0x00000001, - SAMR_VALIDATE_FIELD_BAD_PASSWORD_TIME = 0x00000002, - SAMR_VALIDATE_FIELD_LOCKOUT_TIME = 0x00000004, - SAMR_VALIDATE_FIELD_BAD_PASSWORD_COUNT = 0x00000008, - SAMR_VALIDATE_FIELD_PASSWORD_HISTORY_LENGTH = 0x00000010, - SAMR_VALIDATE_FIELD_PASSWORD_HISTORY = 0x00000020 - } samr_ValidateFieldsPresent; - - typedef enum { - NetValidateAuthentication = 1, - NetValidatePasswordChange= 2, - NetValidatePasswordReset = 3 - } samr_ValidatePasswordLevel; - - /* NetApi maps samr_ValidationStatus errors to WERRORs. Haven't - * identified the mapping of - * - NERR_PasswordFilterError - * - NERR_PasswordExpired and - * - NERR_PasswordCantChange - * yet - Guenther - */ - - typedef enum { - SAMR_VALIDATION_STATUS_SUCCESS = 0, - SAMR_VALIDATION_STATUS_PASSWORD_MUST_CHANGE = 1, - SAMR_VALIDATION_STATUS_ACCOUNT_LOCKED_OUT = 2, - SAMR_VALIDATION_STATUS_PASSWORD_EXPIRED = 3, - SAMR_VALIDATION_STATUS_BAD_PASSWORD = 4, - SAMR_VALIDATION_STATUS_PWD_HISTORY_CONFLICT = 5, - SAMR_VALIDATION_STATUS_PWD_TOO_SHORT = 6, - SAMR_VALIDATION_STATUS_PWD_TOO_LONG = 7, - SAMR_VALIDATION_STATUS_NOT_COMPLEX_ENOUGH = 8, - SAMR_VALIDATION_STATUS_PASSWORD_TOO_RECENT = 9, - SAMR_VALIDATION_STATUS_PASSWORD_FILTER_ERROR = 10 - } samr_ValidationStatus; - - typedef struct { - uint32 length; - [size_is(length)] uint8 *data; - } samr_ValidationBlob; - - typedef struct { - samr_ValidateFieldsPresent fields_present; - NTTIME_hyper last_password_change; - NTTIME_hyper bad_password_time; - NTTIME_hyper lockout_time; - uint32 bad_pwd_count; - uint32 pwd_history_len; - [size_is(pwd_history_len)] samr_ValidationBlob *pwd_history; - } samr_ValidatePasswordInfo; - - typedef struct { - samr_ValidatePasswordInfo info; - samr_ValidationStatus status; - } samr_ValidatePasswordRepCtr; - - typedef [switch_type(uint16)] union { - [case(1)] samr_ValidatePasswordRepCtr ctr1; - [case(2)] samr_ValidatePasswordRepCtr ctr2; - [case(3)] samr_ValidatePasswordRepCtr ctr3; - } samr_ValidatePasswordRep; - - typedef struct { - samr_ValidatePasswordInfo info; - lsa_StringLarge password; - lsa_StringLarge account; - samr_ValidationBlob hash; - boolean8 pwd_must_change_at_next_logon; - boolean8 clear_lockout; - } samr_ValidatePasswordReq3; - - typedef struct { - samr_ValidatePasswordInfo info; - lsa_StringLarge password; - lsa_StringLarge account; - samr_ValidationBlob hash; - boolean8 password_matched; - } samr_ValidatePasswordReq2; - - typedef struct { - samr_ValidatePasswordInfo info; - boolean8 password_matched; - } samr_ValidatePasswordReq1; - - typedef [switch_type(uint16)] union { - [case(1)] samr_ValidatePasswordReq1 req1; - [case(2)] samr_ValidatePasswordReq2 req2; - [case(3)] samr_ValidatePasswordReq3 req3; - } samr_ValidatePasswordReq; - - NTSTATUS samr_ValidatePassword( - [in] samr_ValidatePasswordLevel level, - [in,switch_is(level)] samr_ValidatePasswordReq *req, - [out,ref,switch_is(level)] samr_ValidatePasswordRep **rep - ); -} diff --git a/epan/dissectors/pidl/samr/samr.cnf b/epan/dissectors/pidl/samr/samr.cnf new file mode 100644 index 0000000000..e24c2038d9 --- /dev/null +++ b/epan/dissectors/pidl/samr/samr.cnf @@ -0,0 +1,476 @@ +# +# policyhandle tracking +# This block is to specify where a policyhandle is opened and where it is +# closed so that policyhandles when dissected contain nice info such as +# [opened in xxx] [closed in yyy] +# +# Policyhandles are opened in these functions +PARAM_VALUE samr_dissect_element_Connect_connect_handle_ PIDL_POLHND_OPEN|PIDL_POLHND_TYPE_SAMR_CONNECT +PARAM_VALUE samr_dissect_element_OpenDomain_domain_handle_ PIDL_POLHND_OPEN|PIDL_POLHND_TYPE_SAMR_DOMAIN +PARAM_VALUE samr_dissect_element_CreateDomainGroup_group_handle_ PIDL_POLHND_OPEN|PIDL_POLHND_TYPE_SAMR_GROUP +PARAM_VALUE samr_dissect_element_CreateUser_user_handle_ PIDL_POLHND_OPEN|PIDL_POLHND_TYPE_SAMR_USER +PARAM_VALUE samr_dissect_element_CreateDomAlias_alias_handle_ PIDL_POLHND_OPEN|PIDL_POLHND_TYPE_SAMR_ALIAS +PARAM_VALUE samr_dissect_element_OpenGroup_group_handle_ PIDL_POLHND_OPEN|PIDL_POLHND_TYPE_SAMR_GROUP +PARAM_VALUE samr_dissect_element_OpenAlias_alias_handle_ PIDL_POLHND_OPEN|PIDL_POLHND_TYPE_SAMR_ALIAS +PARAM_VALUE samr_dissect_element_OpenUser_user_handle_ PIDL_POLHND_OPEN|PIDL_POLHND_TYPE_SAMR_USER +PARAM_VALUE samr_dissect_element_CreateUser2_user_handle_ PIDL_POLHND_OPEN|PIDL_POLHND_TYPE_SAMR_USER +PARAM_VALUE samr_dissect_element_Connect2_connect_handle_ PIDL_POLHND_OPEN|PIDL_POLHND_TYPE_SAMR_CONNECT +PARAM_VALUE samr_dissect_element_Connect3_connect_handle_ PIDL_POLHND_OPEN|PIDL_POLHND_TYPE_SAMR_CONNECT +PARAM_VALUE samr_dissect_element_Connect4_connect_handle_ PIDL_POLHND_OPEN|PIDL_POLHND_TYPE_SAMR_CONNECT +PARAM_VALUE samr_dissect_element_Connect5_connect_handle_ PIDL_POLHND_OPEN|PIDL_POLHND_TYPE_SAMR_CONNECT +# Policyhandles are closed in these functions +PARAM_VALUE samr_dissect_element_Close_handle_ PIDL_POLHND_CLOSE +PARAM_VALUE samr_dissect_element_Shutdown_connect_handle_ PIDL_POLHND_CLOSE +PARAM_VALUE samr_dissect_element_DeleteDomainGroup_group_handle_ PIDL_POLHND_CLOSE +PARAM_VALUE samr_dissect_element_DeleteDomAlias_alias_handle_ PIDL_POLHND_CLOSE +PARAM_VALUE samr_dissect_element_DeleteUser_user_handle_ PIDL_POLHND_CLOSE + + + +# +# make sure all policy handles of the same type use the same filter name +# +HF_FIELD hf_samr_handle "Handle" "samr.handle" FT_BYTES BASE_NONE NULL 0 "" "" "" +HF_RENAME hf_samr_samr_Close_handle hf_samr_handle +HF_RENAME hf_samr_samr_SetSecurity_handle hf_samr_handle +HF_RENAME hf_samr_samr_QuerySecurity_handle hf_samr_handle + +HF_FIELD hf_samr_connect_handle "Connect Handle" "samr.connect_handle" FT_BYTES BASE_NONE NULL 0 "" "" "" +HF_RENAME hf_samr_samr_Connect_connect_handle hf_samr_connect_handle +HF_RENAME hf_samr_samr_LookupDomain_connect_handle hf_samr_connect_handle +HF_RENAME hf_samr_samr_EnumDomain_connect_handle hf_samr_connect_handle +HF_RENAME hf_samr_samr_OpenDomain_connect_handle hf_samr_connect_handle +HF_RENAME hf_samr_samr_Shutdown_handle hf_samr_connect_handle +HF_RENAME hf_samr_samr_Connect2_connect_handle hf_samr_connect_handle +HF_RENAME hf_samr_samr_SetBootKeyInformation_connect_handle hf_samr_connect_handle +HF_RENAME hf_samr_samr_GetBootKeyInformation_connect_handle hf_samr_connect_handle +HF_RENAME hf_samr_samr_Connect3_connect_handle hf_samr_connect_handle +HF_RENAME hf_samr_samr_Connect4_connect_handle hf_samr_connect_handle +HF_RENAME hf_samr_samr_Connect5_connect_handle hf_samr_connect_handle + +HF_FIELD hf_samr_domain_handle "Domain Handle" "samr.domain_handle" FT_BYTES BASE_NONE NULL 0 "" "" "" +HF_RENAME hf_samr_samr_OpenDomain_domain_handle hf_samr_domain_handle +HF_RENAME hf_samr_samr_QueryDomainInfo_domain_handle hf_samr_domain_handle +HF_RENAME hf_samr_samr_SetDomainInfo_domain_handle hf_samr_domain_handle +HF_RENAME hf_samr_samr_CreateDomainGroup_domain_handle hf_samr_domain_handle +HF_RENAME hf_samr_samr_EnumDomainGroups_domain_handle hf_samr_domain_handle +HF_RENAME hf_samr_samr_CreateUser_domain_handle hf_samr_domain_handle +HF_RENAME hf_samr_samr_EnumDomainUsers_domain_handle hf_samr_domain_handle +HF_RENAME hf_samr_samr_CreateDomAlias_domain_handle hf_samr_domain_handle +HF_RENAME hf_samr_samr_EnumDomainAliases_domain_handle hf_samr_domain_handle +HF_RENAME hf_samr_samr_GetAliasMembership_domain_handle hf_samr_domain_handle +HF_RENAME hf_samr_samr_LookupNames_domain_handle hf_samr_domain_handle +HF_RENAME hf_samr_samr_LookupRids_domain_handle hf_samr_domain_handle +HF_RENAME hf_samr_samr_OpenGroup_domain_handle hf_samr_domain_handle +HF_RENAME hf_samr_samr_OpenAlias_domain_handle hf_samr_domain_handle +HF_RENAME hf_samr_samr_OpenUser_domain_handle hf_samr_domain_handle +HF_RENAME hf_samr_samr_QueryDisplayInfo_domain_handle hf_samr_domain_handle +HF_RENAME hf_samr_samr_GetDisplayEnumerationIndex_domain_handle hf_samr_domain_handle +HF_RENAME hf_samr_samr_TestPrivateFunctionsDomain_domain_handle hf_samr_domain_handle +HF_RENAME hf_samr_samr_RemoveMemberFromForeignDomain_domain_handle hf_samr_domain_handle +HF_RENAME hf_samr_samr_QueryDomainInfo2_domain_handle hf_samr_domain_handle +HF_RENAME hf_samr_samr_QueryDisplayInfo2_domain_handle hf_samr_domain_handle +HF_RENAME hf_samr_samr_GetDisplayEnumerationIndex2_domain_handle hf_samr_domain_handle +HF_RENAME hf_samr_samr_CreateUser2_domain_handle hf_samr_domain_handle +HF_RENAME hf_samr_samr_QueryDisplayInfo3_domain_handle hf_samr_domain_handle +HF_RENAME hf_samr_samr_RidToSid_domain_handle hf_samr_domain_handle + +HF_FIELD hf_samr_group_handle "Group Handle" "samr.group_handle" FT_BYTES BASE_NONE NULL 0 "" "" "" +HF_RENAME hf_samr_samr_CreateDomainGroup_group_handle hf_samr_group_handle +HF_RENAME hf_samr_samr_OpenGroup_group_handle hf_samr_group_handle +HF_RENAME hf_samr_samr_QueryGroupInfo_group_handle hf_samr_group_handle +HF_RENAME hf_samr_samr_SetGroupInfo_group_handle hf_samr_group_handle +HF_RENAME hf_samr_samr_AddGroupMember_group_handle hf_samr_group_handle +HF_RENAME hf_samr_samr_DeleteDomainGroup_group_handle hf_samr_group_handle +HF_RENAME hf_samr_samr_DeleteGroupMember_group_handle hf_samr_group_handle +HF_RENAME hf_samr_samr_QueryGroupMember_group_handle hf_samr_group_handle +HF_RENAME hf_samr_samr_SetMemberAttributesOfGroup_group_handle hf_samr_group_handle + +HF_FIELD hf_samr_user_handle "User Handle" "samr.user_handle" FT_BYTES BASE_NONE NULL 0 "" "" "" +HF_RENAME hf_samr_samr_CreateUser_user_handle hf_samr_user_handle +HF_RENAME hf_samr_samr_OpenUser_user_handle hf_samr_user_handle +HF_RENAME hf_samr_samr_DeleteUser_user_handle hf_samr_user_handle +HF_RENAME hf_samr_samr_QueryUserInfo_user_handle hf_samr_user_handle +HF_RENAME hf_samr_samr_SetUserInfo_user_handle hf_samr_user_handle +HF_RENAME hf_samr_samr_ChangePasswordUser_user_handle hf_samr_user_handle +HF_RENAME hf_samr_samr_GetGroupsForUser_user_handle hf_samr_user_handle +HF_RENAME hf_samr_samr_TestPrivateFunctionsUser_user_handle hf_samr_user_handle +HF_RENAME hf_samr_samr_GetUserPwInfo_user_handle hf_samr_user_handle +HF_RENAME hf_samr_samr_QueryUserInfo2_user_handle hf_samr_user_handle +HF_RENAME hf_samr_samr_CreateUser2_user_handle hf_samr_user_handle +HF_RENAME hf_samr_samr_SetUserInfo2_user_handle hf_samr_user_handle + +HF_FIELD hf_samr_alias_handle "Alias Handle" "samr.alias_handle" FT_BYTES BASE_NONE NULL 0 "" "" "" +HF_RENAME hf_samr_samr_CreateDomAlias_alias_handle hf_samr_alias_handle +HF_RENAME hf_samr_samr_OpenAlias_alias_handle hf_samr_alias_handle +HF_RENAME hf_samr_samr_QueryAliasInfo_alias_handle hf_samr_alias_handle +HF_RENAME hf_samr_samr_SetAliasInfo_alias_handle hf_samr_alias_handle +HF_RENAME hf_samr_samr_DeleteDomAlias_alias_handle hf_samr_alias_handle +HF_RENAME hf_samr_samr_AddAliasMember_alias_handle hf_samr_alias_handle +HF_RENAME hf_samr_samr_DeleteAliasMember_alias_handle hf_samr_alias_handle +HF_RENAME hf_samr_samr_GetMembersInAlias_alias_handle hf_samr_alias_handle +HF_RENAME hf_samr_samr_AddMultipleMembersToAlias_alias_handle hf_samr_alias_handle +HF_RENAME hf_samr_samr_RemoveMultipleMembersFromAlias_alias_handle hf_samr_alias_handle + + + +# +# make all rids use the same hf field +# +HF_FIELD hf_samr_rid "RID" "samr.rid" FT_UINT32 BASE_DEC NULL 0 "" "" "" +HF_RENAME hf_samr_samr_CreateDomainGroup_rid hf_samr_rid +HF_RENAME hf_samr_samr_CreateUser_rid hf_samr_rid +HF_RENAME hf_samr_samr_CreateDomAlias_rid hf_samr_rid +HF_RENAME hf_samr_samr_Ids_ids hf_samr_rid +HF_RENAME hf_samr_samr_LookupRids_rids hf_samr_rid +HF_RENAME hf_samr_samr_OpenGroup_rid hf_samr_rid +HF_RENAME hf_samr_samr_AddGroupMember_rid hf_samr_rid +HF_RENAME hf_samr_samr_DeleteGroupMember_rid hf_samr_rid +HF_RENAME hf_samr_samr_RidTypeArray_rids hf_samr_rid +HF_RENAME hf_samr_samr_OpenAlias_rid hf_samr_rid +HF_RENAME hf_samr_samr_OpenUser_rid hf_samr_rid +HF_RENAME hf_samr_samr_UserInfo3_rid hf_samr_rid +HF_RENAME hf_samr_samr_UserInfo5_rid hf_samr_rid +HF_RENAME hf_samr_samr_UserInfo21_rid hf_samr_rid +HF_RENAME hf_samr_samr_RidWithAttribute_rid hf_samr_rid +HF_RENAME hf_samr_samr_DispEntryGeneral_rid hf_samr_rid +HF_RENAME hf_samr_samr_DispEntryFull_rid hf_samr_rid +HF_RENAME hf_samr_samr_DispEntryFullGroup_rid hf_samr_rid +HF_RENAME hf_samr_samr_CreateUser2_rid hf_samr_rid +HF_RENAME hf_samr_samr_RidToSid_rid hf_samr_rid + + + +# +# Prettification the summary line and the dissection tree +# +PARAM_VALUE samr_dissect_element_SamArray_entries__ 3|PIDL_SET_COL_INFO +PARAM_VALUE samr_dissect_element_LookupDomain_domain_name_ 3|PIDL_SET_COL_INFO +PARAM_VALUE samr_dissect_element_GetDomPwInfo_domain_name_ 3|PIDL_SET_COL_INFO +PARAM_VALUE samr_dissect_element_CreateUser_account_name_ 3|PIDL_SET_COL_INFO|PIDL_STR_SAVE +PARAM_VALUE samr_dissect_element_CreateUser2_account_name_ 3|PIDL_SET_COL_INFO|PIDL_STR_SAVE + +TYPE lsa_String "offset=dissect_ndr_lsa_String(tvb, offset, pinfo, tree, di, drep, @PARAM@, @HF@);" FT_STRING BASE_NONE 0 NULL 5 +TYPE lsa_AsciiString "offset=cnf_dissect_lsa_AsciiString(tvb, offset, pinfo, tree, di, drep, @PARAM@, @HF@);" FT_STRING BASE_NONE 0 NULL 5 +TYPE lsa_StringLarge "offset=dissect_ndr_lsa_String(tvb, offset, pinfo, tree, di, drep, @PARAM@, @HF@);" FT_STRING BASE_NONE 0 NULL 5 +TYPE lsa_AsciiStringLarge "offset=cnf_dissect_lsa_AsciiString(tvb, offset, pinfo, tree, di, drep, @PARAM@, @HF@);" FT_STRING BASE_NONE 0 NULL 5 +TYPE hyper "offset=cnf_dissect_hyper(tvb, offset, pinfo, tree, di, drep, @PARAM@, @HF@);" FT_UINT64 BASE_DEC 0 NULL 8 + + +TYPE sec_desc_buf "offset=cnf_dissect_sec_desc_buf(tvb, offset, pinfo, tree, di, drep);" FT_NONE BASE_NONE 0 NULL 4 +HF_FIELD hf_samr_sec_desc_buf_len "Sec Desc Buf Len" "samr.sec_desc_buf_len" FT_UINT32 BASE_DEC NULL 0 "" "" "" + +TYPE dom_sid2 "offset=cnf_dissect_dom_sid2(tvb, offset, pinfo, tree, di, drep);" FT_NONE BASE_NONE 0 NULL 4 + +TYPE lsa_SidArray "offset=cnf_dissect_lsa_SidArray(tvb, offset, pinfo, tree, di, drep);" FT_NONE BASE_NONE 0 NULL 4 + +TYPE security_secinfo "offset=cnf_dissect_samr_security_secinfo(tvb, offset, pinfo, tree, drep);" FT_NONE BASE_NONE 0 NULL 4 + +# +# ConnectX access masks +# +MANUAL samr_dissect_bitmap_ConnectAccessMask +HF_FIELD hf_samr_connect_access_mask "Access Mask" "samr.connect.access_mask" FT_UINT32 BASE_HEX NULL 0 "" "" "" +HF_RENAME hf_samr_samr_Connect_access_mask hf_samr_connect_access_mask +HF_RENAME hf_samr_samr_Connect2_access_mask hf_samr_connect_access_mask +HF_RENAME hf_samr_samr_Connect3_access_mask hf_samr_connect_access_mask +HF_RENAME hf_samr_samr_Connect4_access_mask hf_samr_connect_access_mask +HF_RENAME hf_samr_samr_Connect5_access_mask hf_samr_connect_access_mask +# +# User access masks +# +MANUAL samr_dissect_bitmap_UserAccessMask +HF_FIELD hf_samr_user_access_mask "Access Mask" "samr.user.access_mask" FT_UINT32 BASE_HEX NULL 0 "" "" "" +HF_RENAME hf_samr_samr_CreateUser_access_mask hf_samr_user_access_mask +HF_RENAME hf_samr_samr_OpenUser_access_mask hf_samr_user_access_mask +HF_RENAME hf_samr_samr_CreateUser2_access_mask hf_samr_user_access_mask +# +# Domain access masks +# +MANUAL samr_dissect_bitmap_DomainAccessMask +HF_FIELD hf_samr_domain_access_mask "Access Mask" "samr.domain.access_mask" FT_UINT32 BASE_HEX NULL 0 "" "" "" +HF_RENAME hf_samr_samr_OpenDomain_access_mask hf_samr_domain_access_mask +# +# Group access masks +# +MANUAL samr_dissect_bitmap_GroupAccessMask +HF_FIELD hf_samr_group_access_mask "Access Mask" "samr.group.access_mask" FT_UINT32 BASE_HEX NULL 0 "" "" "" +HF_RENAME hf_samr_samr_CreateDomainGroup_access_mask hf_samr_group_access_mask +HF_RENAME hf_samr_samr_OpenGroup_access_mask hf_samr_group_access_mask +# +# Alias access masks +# +MANUAL samr_dissect_bitmap_AliasAccessMask +HF_FIELD hf_samr_alias_access_mask "Access Mask" "samr.alias.access_mask" FT_UINT32 BASE_HEX NULL 0 "" "" "" +HF_RENAME hf_samr_samr_CreateDomAlias_access_mask hf_samr_alias_access_mask +HF_RENAME hf_samr_samr_OpenAlias_access_mask hf_samr_alias_access_mask + + +CODE START + +static void +samr_connect_specific_rights(tvbuff_t *tvb, gint offset, proto_tree *tree, guint32 access) +{ + proto_tree_add_boolean(tree, hf_samr_samr_ConnectAccessMask_SAMR_ACCESS_LOOKUP_DOMAIN, tvb, offset, 4, access); + proto_tree_add_boolean(tree, hf_samr_samr_ConnectAccessMask_SAMR_ACCESS_ENUM_DOMAINS, tvb, offset, 4, access); + proto_tree_add_boolean(tree, hf_samr_samr_ConnectAccessMask_SAMR_ACCESS_CREATE_DOMAIN, tvb, offset, 4, access); + proto_tree_add_boolean(tree, hf_samr_samr_ConnectAccessMask_SAMR_ACCESS_INITIALIZE_SERVER, tvb, offset, 4, access); + proto_tree_add_boolean(tree, hf_samr_samr_ConnectAccessMask_SAMR_ACCESS_SHUTDOWN_SERVER, tvb, offset, 4, access); + proto_tree_add_boolean(tree, hf_samr_samr_ConnectAccessMask_SAMR_ACCESS_CONNECT_TO_SERVER, tvb, offset, 4, access); +} + +struct access_mask_info samr_connect_access_mask_info = { + "SAMR Connect", /* Name of specific rights */ + samr_connect_specific_rights, /* Dissection function */ + NULL, /* Generic mapping table */ + NULL /* Standard mapping table */ +}; + +int +samr_dissect_bitmap_ConnectAccessMask(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep, int hf_index _U_, guint32 param _U_) +{ + offset = dissect_nt_access_mask( + tvb, offset, pinfo, tree, di, drep, hf_samr_connect_access_mask, + &samr_connect_access_mask_info, NULL); + return offset; +} + + +static void +samr_alias_specific_rights(tvbuff_t *tvb, gint offset, proto_tree *tree, guint32 access) +{ + proto_tree_add_boolean(tree, hf_samr_samr_AliasAccessMask_SAMR_ALIAS_ACCESS_ADD_MEMBER, tvb, offset, 4, access); + proto_tree_add_boolean(tree, hf_samr_samr_AliasAccessMask_SAMR_ALIAS_ACCESS_REMOVE_MEMBER, tvb, offset, 4, access); + proto_tree_add_boolean(tree, hf_samr_samr_AliasAccessMask_SAMR_ALIAS_ACCESS_GET_MEMBERS, tvb, offset, 4, access); + proto_tree_add_boolean(tree, hf_samr_samr_AliasAccessMask_SAMR_ALIAS_ACCESS_LOOKUP_INFO, tvb, offset, 4, access); + proto_tree_add_boolean(tree, hf_samr_samr_AliasAccessMask_SAMR_ALIAS_ACCESS_SET_INFO, tvb, offset, 4, access); +} + +struct access_mask_info samr_alias_access_mask_info = { + "SAMR Alias", /* Name of specific rights */ + samr_alias_specific_rights, /* Dissection function */ + NULL, /* Generic mapping table */ + NULL /* Standard mapping table */ +}; + +int +samr_dissect_bitmap_AliasAccessMask(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep, int hf_index _U_, guint32 param _U_) +{ + offset = dissect_nt_access_mask( + tvb, offset, pinfo, tree, di, drep, hf_samr_alias_access_mask, + &samr_alias_access_mask_info, NULL); + return offset; +} + + +static void +samr_group_specific_rights(tvbuff_t *tvb, gint offset, proto_tree *tree, guint32 access) +{ + proto_tree_add_boolean(tree, hf_samr_samr_GroupAccessMask_SAMR_GROUP_ACCESS_GET_MEMBERS, tvb, offset, 4, access); + proto_tree_add_boolean(tree, hf_samr_samr_GroupAccessMask_SAMR_GROUP_ACCESS_REMOVE_MEMBER, tvb, offset, 4, access); + proto_tree_add_boolean(tree, hf_samr_samr_GroupAccessMask_SAMR_GROUP_ACCESS_ADD_MEMBER, tvb, offset, 4, access); + proto_tree_add_boolean(tree, hf_samr_samr_GroupAccessMask_SAMR_GROUP_ACCESS_SET_INFO, tvb, offset, 4, access); + proto_tree_add_boolean(tree, hf_samr_samr_GroupAccessMask_SAMR_GROUP_ACCESS_LOOKUP_INFO, tvb, offset, 4, access); +} + +struct access_mask_info samr_group_access_mask_info = { + "SAMR Group", /* Name of specific rights */ + samr_group_specific_rights, /* Dissection function */ + NULL, /* Generic mapping table */ + NULL /* Standard mapping table */ +}; + +int +samr_dissect_bitmap_GroupAccessMask(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep, int hf_index _U_, guint32 param _U_) +{ + offset = dissect_nt_access_mask( + tvb, offset, pinfo, tree, di, drep, hf_samr_group_access_mask, + &samr_group_access_mask_info, NULL); + return offset; +} + + +static void +samr_domain_specific_rights(tvbuff_t *tvb, gint offset, proto_tree *tree, guint32 access) +{ + proto_tree_add_boolean(tree, hf_samr_samr_DomainAccessMask_SAMR_DOMAIN_ACCESS_LOOKUP_INFO_1, tvb, offset, 4, access); + proto_tree_add_boolean(tree, hf_samr_samr_DomainAccessMask_SAMR_DOMAIN_ACCESS_SET_INFO_1, tvb, offset, 4, access); + proto_tree_add_boolean(tree, hf_samr_samr_DomainAccessMask_SAMR_DOMAIN_ACCESS_LOOKUP_INFO_2, tvb, offset, 4, access); + proto_tree_add_boolean(tree, hf_samr_samr_DomainAccessMask_SAMR_DOMAIN_ACCESS_SET_INFO_2, tvb, offset, 4, access); + proto_tree_add_boolean(tree, hf_samr_samr_DomainAccessMask_SAMR_DOMAIN_ACCESS_CREATE_USER, tvb, offset, 4, access); + proto_tree_add_boolean(tree, hf_samr_samr_DomainAccessMask_SAMR_DOMAIN_ACCESS_CREATE_GROUP, tvb, offset, 4, access); + proto_tree_add_boolean(tree, hf_samr_samr_DomainAccessMask_SAMR_DOMAIN_ACCESS_CREATE_ALIAS, tvb, offset, 4, access); + proto_tree_add_boolean(tree, hf_samr_samr_DomainAccessMask_SAMR_DOMAIN_ACCESS_LOOKUP_ALIAS, tvb, offset, 4, access); + proto_tree_add_boolean(tree, hf_samr_samr_DomainAccessMask_SAMR_DOMAIN_ACCESS_ENUM_ACCOUNTS, tvb, offset, 4, access); + proto_tree_add_boolean(tree, hf_samr_samr_DomainAccessMask_SAMR_DOMAIN_ACCESS_OPEN_ACCOUNT, tvb, offset, 4, access); + proto_tree_add_boolean(tree, hf_samr_samr_DomainAccessMask_SAMR_DOMAIN_ACCESS_SET_INFO_3, tvb, offset, 4, access); +} + +struct access_mask_info samr_domain_access_mask_info = { + "SAMR Domain", /* Name of specific rights */ + samr_domain_specific_rights, /* Dissection function */ + NULL, /* Generic mapping table */ + NULL /* Standard mapping table */ +}; + +int +samr_dissect_bitmap_DomainAccessMask(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep, int hf_index _U_, guint32 param _U_) +{ + offset = dissect_nt_access_mask( + tvb, offset, pinfo, tree, di, drep, hf_samr_domain_access_mask, + &samr_domain_access_mask_info, NULL); + return offset; +} + + +static void +samr_user_specific_rights(tvbuff_t *tvb, gint offset, proto_tree *tree, guint32 access) +{ + proto_tree_add_boolean(tree, hf_samr_samr_UserAccessMask_SAMR_USER_ACCESS_CHANGE_GROUP_MEMBERSHIP, tvb, offset, 4, access); + proto_tree_add_boolean(tree, hf_samr_samr_UserAccessMask_SAMR_USER_ACCESS_GET_GROUP_MEMBERSHIP, tvb, offset, 4, access); + proto_tree_add_boolean(tree, hf_samr_samr_UserAccessMask_SAMR_USER_ACCESS_GET_GROUPS, tvb, offset, 4, access); + proto_tree_add_boolean(tree, hf_samr_samr_UserAccessMask_SAMR_USER_ACCESS_SET_PASSWORD, tvb, offset, 4, access); + proto_tree_add_boolean(tree, hf_samr_samr_UserAccessMask_SAMR_USER_ACCESS_CHANGE_PASSWORD, tvb, offset, 4, access); + proto_tree_add_boolean(tree, hf_samr_samr_UserAccessMask_SAMR_USER_ACCESS_SET_ATTRIBUTES, tvb, offset, 4, access); + proto_tree_add_boolean(tree, hf_samr_samr_UserAccessMask_SAMR_USER_ACCESS_GET_ATTRIBUTES, tvb, offset, 4, access); + proto_tree_add_boolean(tree, hf_samr_samr_UserAccessMask_SAMR_USER_ACCESS_GET_LOGONINFO, tvb, offset, 4, access); + proto_tree_add_boolean(tree, hf_samr_samr_UserAccessMask_SAMR_USER_ACCESS_SET_LOC_COM, tvb, offset, 4, access); + proto_tree_add_boolean(tree, hf_samr_samr_UserAccessMask_SAMR_USER_ACCESS_GET_LOCALE, tvb, offset, 4, access); + proto_tree_add_boolean(tree, hf_samr_samr_UserAccessMask_SAMR_USER_ACCESS_GET_NAME_ETC, tvb, offset, 4, access); +} + +struct access_mask_info samr_user_access_mask_info = { + "SAMR User", /* Name of specific rights */ + samr_user_specific_rights, /* Dissection function */ + NULL, /* Generic mapping table */ + NULL /* Standard mapping table */ +}; + +int +samr_dissect_bitmap_UserAccessMask(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep, int hf_index _U_, guint32 param _U_) +{ + offset = dissect_nt_access_mask( + tvb, offset, pinfo, tree, di, drep, hf_samr_user_access_mask, + &samr_user_access_mask_info, NULL); + return offset; +} + + +static int +cnf_dissect_lsa_AsciiString(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep, guint32 param _U_, int hfindex) +{ + offset = dissect_ndr_counted_ascii_string(tvb, offset, pinfo, tree, di, drep, + hfindex, 0); + + return offset; +} + +static int +cnf_dissect_hyper(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep, guint32 param _U_, int hfindex) +{ + offset = dissect_ndr_uint64(tvb, offset, pinfo, tree, di, drep, hfindex, NULL); + + return offset; +} + + + + +static int +cnf_dissect_sec_desc_buf_(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep) +{ + guint64 len; + e_ctx_hnd *polhnd = NULL; + dcerpc_call_value *dcv = NULL; + guint32 type=0; + struct access_mask_info *ami=NULL; + + if(di->conformant_run){ + /*just a run to handle conformant arrays, nothing to dissect */ + return offset; + } + + offset = dissect_ndr_uint3264 (tvb, offset, pinfo, tree, di, drep, + hf_samr_sec_desc_buf_len, &len); + + dcv = (dcerpc_call_value *)di->call_data; + if(dcv){ + polhnd = dcv->pol; + } + if(polhnd){ + dcerpc_fetch_polhnd_data(polhnd, NULL, &type, NULL, NULL, + pinfo->num); + } + switch(type){ + case PIDL_POLHND_TYPE_SAMR_USER: + ami=&samr_user_access_mask_info; + break; + case PIDL_POLHND_TYPE_SAMR_CONNECT: + ami=&samr_connect_access_mask_info; + break; + case PIDL_POLHND_TYPE_SAMR_DOMAIN: + ami=&samr_domain_access_mask_info; + break; + case PIDL_POLHND_TYPE_SAMR_GROUP: + ami=&samr_group_access_mask_info; + break; + case PIDL_POLHND_TYPE_SAMR_ALIAS: + ami=&samr_alias_access_mask_info; + break; + } + + dissect_nt_sec_desc(tvb, offset, pinfo, tree, drep, TRUE, (int)len, ami); + + offset += (int)len; + + return offset; +} + +static int +cnf_dissect_sec_desc_buf(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep) +{ + guint64 len; + + if(di->conformant_run){ + /*just a run to handle conformant arrays, nothing to dissect */ + return offset; + } + + offset = dissect_ndr_uint3264 (tvb, offset, pinfo, tree, di, drep, + hf_samr_sec_desc_buf_len, &len); + + offset = dissect_ndr_pointer(tvb, offset, pinfo, tree, di, drep, + cnf_dissect_sec_desc_buf_, NDR_POINTER_UNIQUE, + "SAM SECURITY DESCRIPTOR data:", -1); + + return offset; +} + + + +static int +cnf_dissect_dom_sid2(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep) +{ + offset = dissect_ndr_nt_SID(tvb, offset, pinfo, tree, di, drep); + + return offset; +} + +static int +cnf_dissect_lsa_SidArray(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep) +{ + offset = dissect_ndr_nt_PSID_ARRAY(tvb, offset, pinfo, tree, di, drep); + + return offset; +} + + +static int +cnf_dissect_samr_security_secinfo(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, guint8 *drep _U_) +{ + offset = dissect_nt_security_information(tvb, offset, tree); + + return offset; +} + +CODE END diff --git a/epan/dissectors/pidl/samr/samr.idl b/epan/dissectors/pidl/samr/samr.idl new file mode 100644 index 0000000000..9488c65e22 --- /dev/null +++ b/epan/dissectors/pidl/samr/samr.idl @@ -0,0 +1,1542 @@ +#include "idl_types.h" + +/* + samr interface definition +*/ +/* import "misc.idl", "lsa.idl", "security.idl";*/ + +/* + Thanks to Todd Sabin for some information from his samr.idl in acltools +*/ + +[ uuid("12345778-1234-abcd-ef00-0123456789ac"), + version(1.0), + endpoint("ncacn_np:[\\pipe\\samr]","ncacn_ip_tcp:", "ncalrpc:"), + pointer_default(unique) +] interface samr +{ + + typedef [public] struct { + uint32 count; + [size_is(count)] lsa_String *names; + } lsa_Strings; + + + typedef [v1_enum] enum { + SID_NAME_USE_NONE = 0,/* NOTUSED */ + SID_NAME_USER = 1, /* user */ + SID_NAME_DOM_GRP = 2, /* domain group */ + SID_NAME_DOMAIN = 3, /* domain: don't know what this is */ + SID_NAME_ALIAS = 4, /* local group */ + SID_NAME_WKN_GRP = 5, /* well-known group */ + SID_NAME_DELETED = 6, /* deleted account: needed for c2 rating */ + SID_NAME_INVALID = 7, /* invalid account */ + SID_NAME_UNKNOWN = 8, /* oops. */ + SID_NAME_COMPUTER = 9 /* machine */ + } lsa_SidType; + + typedef [public,v1_enum] enum { + SAMR_REJECT_OTHER = 0, + SAMR_REJECT_TOO_SHORT = 1, + SAMR_REJECT_IN_HISTORY = 2, + SAMR_REJECT_COMPLEXITY = 5 + } samr_RejectReason; + + + + /* account control (acct_flags) bits */ + typedef [public,bitmap32bit] bitmap { + ACB_DISABLED = 0x00000001, /* 1 = User account disabled */ + ACB_HOMDIRREQ = 0x00000002, /* 1 = Home directory required */ + ACB_PWNOTREQ = 0x00000004, /* 1 = User password not required */ + ACB_TEMPDUP = 0x00000008, /* 1 = Temporary duplicate account */ + ACB_NORMAL = 0x00000010, /* 1 = Normal user account */ + ACB_MNS = 0x00000020, /* 1 = MNS logon user account */ + ACB_DOMTRUST = 0x00000040, /* 1 = Interdomain trust account */ + ACB_WSTRUST = 0x00000080, /* 1 = Workstation trust account */ + ACB_SVRTRUST = 0x00000100, /* 1 = Server trust account */ + ACB_PWNOEXP = 0x00000200, /* 1 = User password does not expire */ + ACB_AUTOLOCK = 0x00000400, /* 1 = Account auto locked */ + ACB_ENC_TXT_PWD_ALLOWED = 0x00000800, /* 1 = Encryped text password is allowed */ + ACB_SMARTCARD_REQUIRED = 0x00001000, /* 1 = Smart Card required */ + ACB_TRUSTED_FOR_DELEGATION = 0x00002000, /* 1 = Trusted for Delegation */ + ACB_NOT_DELEGATED = 0x00004000, /* 1 = Not delegated */ + ACB_USE_DES_KEY_ONLY = 0x00008000, /* 1 = Use DES key only */ + ACB_DONT_REQUIRE_PREAUTH = 0x00010000, /* 1 = Preauth not required */ + ACB_PW_EXPIRED = 0x00020000, /* 1 = Password Expired */ + ACB_TRUST_AUTH_DELEGAT = 0x00040000, /* 1 = Trusted to authenticate for delegation */ + ACB_NO_AUTH_DATA_REQD = 0x00080000 /* 1 = No authorization data required */ + } samr_AcctFlags; + + /* SAM server specific access rights */ + + typedef [bitmap32bit] bitmap { + SAMR_ACCESS_CONNECT_TO_SERVER = 0x00000001, + SAMR_ACCESS_SHUTDOWN_SERVER = 0x00000002, + SAMR_ACCESS_INITIALIZE_SERVER = 0x00000004, + SAMR_ACCESS_CREATE_DOMAIN = 0x00000008, + SAMR_ACCESS_ENUM_DOMAINS = 0x00000010, + SAMR_ACCESS_LOOKUP_DOMAIN = 0x00000020 + } samr_ConnectAccessMask; + + const int SAMR_ACCESS_ALL_ACCESS = 0x0000003F; + + const int GENERIC_RIGHTS_SAM_ALL_ACCESS = + (STANDARD_RIGHTS_REQUIRED_ACCESS | + SAMR_ACCESS_ALL_ACCESS); + + const int GENERIC_RIGHTS_SAM_READ = + (STANDARD_RIGHTS_READ_ACCESS | + SAMR_ACCESS_ENUM_DOMAINS); + + const int GENERIC_RIGHTS_SAM_WRITE = + (STANDARD_RIGHTS_WRITE_ACCESS | + SAMR_ACCESS_CREATE_DOMAIN | + SAMR_ACCESS_INITIALIZE_SERVER | + SAMR_ACCESS_SHUTDOWN_SERVER); + + const int GENERIC_RIGHTS_SAM_EXECUTE = + (STANDARD_RIGHTS_EXECUTE_ACCESS | + SAMR_ACCESS_LOOKUP_DOMAIN | + SAMR_ACCESS_CONNECT_TO_SERVER); + + /* User Object specific access rights */ + + typedef [bitmap32bit] bitmap { + SAMR_USER_ACCESS_GET_NAME_ETC = 0x00000001, + SAMR_USER_ACCESS_GET_LOCALE = 0x00000002, + SAMR_USER_ACCESS_SET_LOC_COM = 0x00000004, + SAMR_USER_ACCESS_GET_LOGONINFO = 0x00000008, + SAMR_USER_ACCESS_GET_ATTRIBUTES = 0x00000010, + SAMR_USER_ACCESS_SET_ATTRIBUTES = 0x00000020, + SAMR_USER_ACCESS_CHANGE_PASSWORD = 0x00000040, + SAMR_USER_ACCESS_SET_PASSWORD = 0x00000080, + SAMR_USER_ACCESS_GET_GROUPS = 0x00000100, + SAMR_USER_ACCESS_GET_GROUP_MEMBERSHIP = 0x00000200, + SAMR_USER_ACCESS_CHANGE_GROUP_MEMBERSHIP = 0x00000400 + } samr_UserAccessMask; + + typedef [bitmap32bit] bitmap { + SAMR_DOMAIN_ACCESS_LOOKUP_INFO_1 = 0x00000001, + SAMR_DOMAIN_ACCESS_SET_INFO_1 = 0x00000002, + SAMR_DOMAIN_ACCESS_LOOKUP_INFO_2 = 0x00000004, + SAMR_DOMAIN_ACCESS_SET_INFO_2 = 0x00000008, + SAMR_DOMAIN_ACCESS_CREATE_USER = 0x00000010, + SAMR_DOMAIN_ACCESS_CREATE_GROUP = 0x00000020, + SAMR_DOMAIN_ACCESS_CREATE_ALIAS = 0x00000040, + SAMR_DOMAIN_ACCESS_LOOKUP_ALIAS = 0x00000080, + SAMR_DOMAIN_ACCESS_ENUM_ACCOUNTS = 0x00000100, + SAMR_DOMAIN_ACCESS_OPEN_ACCOUNT = 0x00000200, + SAMR_DOMAIN_ACCESS_SET_INFO_3 = 0x00000400 + } samr_DomainAccessMask; + + typedef [bitmap32bit] bitmap { + SAMR_GROUP_ACCESS_LOOKUP_INFO = 0x00000001, + SAMR_GROUP_ACCESS_SET_INFO = 0x00000002, + SAMR_GROUP_ACCESS_ADD_MEMBER = 0x00000004, + SAMR_GROUP_ACCESS_REMOVE_MEMBER = 0x00000008, + SAMR_GROUP_ACCESS_GET_MEMBERS = 0x00000010 + } samr_GroupAccessMask; + /* these bits are invalid and return ACCESS_DENIED */ + const int SAMR_GROUP_ACCESS_MASK_INVALID = 0x0000ffe0; + /* generic access */ + const int SAMR_GROUP_ACCESS_ALL_ACCESS = 0x000f001f; + const int SAMR_GROUP_ACCESS_ALL_READ = 0x00020010; + const int SAMR_GROUP_ACCESS_ALL_WRITE = 0x0002000e; + const int SAMR_GROUP_ACCESS_ALL_EXECUTE = 0x00020001; + + typedef [bitmap32bit] bitmap { + SAMR_ALIAS_ACCESS_ADD_MEMBER = 0x00000001, + SAMR_ALIAS_ACCESS_REMOVE_MEMBER = 0x00000002, + SAMR_ALIAS_ACCESS_GET_MEMBERS = 0x00000004, + SAMR_ALIAS_ACCESS_LOOKUP_INFO = 0x00000008, + SAMR_ALIAS_ACCESS_SET_INFO = 0x00000010 + } samr_AliasAccessMask; + + /******************/ + /* Function: 0x00 */ + NTSTATUS samr_Connect ( + /* notice the lack of [string] */ + [in,unique] uint16 *system_name, + [in] samr_ConnectAccessMask access_mask, + [out,ref] policy_handle *connect_handle + ); + + + /******************/ + /* Function: 0x01 */ + [public] NTSTATUS samr_Close ( + [in,out,ref] policy_handle *handle + ); + + /******************/ + /* Function: 0x02 */ + + NTSTATUS samr_SetSecurity ( + [in,ref] policy_handle *handle, + [in] security_secinfo sec_info, + [in,ref] sec_desc_buf *sdbuf + ); + + /******************/ + /* Function: 0x03 */ + + NTSTATUS samr_QuerySecurity ( + [in,ref] policy_handle *handle, + [in] security_secinfo sec_info, + [out,ref] sec_desc_buf **sdbuf + ); + + /******************/ + /* Function: 0x04 */ + + /* + shutdown the SAM - once you call this the SAM will be dead + */ + NTSTATUS samr_Shutdown ( + [in,ref] policy_handle *connect_handle + ); + + /******************/ + /* Function: 0x05 */ + NTSTATUS samr_LookupDomain ( + [in,ref] policy_handle *connect_handle, + [in,ref] lsa_String *domain_name, + [out,ref] dom_sid2 **sid + ); + + + /******************/ + /* Function: 0x06 */ + + typedef struct { + uint32 idx; + lsa_String name; + } samr_SamEntry; + + typedef struct { + uint32 count; + [size_is(count)] samr_SamEntry *entries; + } samr_SamArray; + + NTSTATUS samr_EnumDomains ( + [in,ref] policy_handle *connect_handle, + [in,out,ref] uint32 *resume_handle, + [out,ref] samr_SamArray **sam, + [in] uint32 buf_size, + [out,ref] uint32 *num_entries + ); + + + /************************/ + /* Function 0x07 */ + [public] NTSTATUS samr_OpenDomain( + [in,ref] policy_handle *connect_handle, + [in] samr_DomainAccessMask access_mask, + [in,ref] dom_sid2 *sid, + [out,ref] policy_handle *domain_handle + ); + + /************************/ + /* Function 0x08 */ + + typedef enum { + DomainPasswordInformation = 1, + DomainGeneralInformation = 2, + DomainLogoffInformation = 3, + DomainOemInformation = 4, + DomainNameInformation = 5, + DomainReplicationInformation = 6, + DomainServerRoleInformation = 7, + DomainModifiedInformation = 8, + DomainStateInformation = 9, + DomainUasInformation = 10, + DomainGeneralInformation2 = 11, + DomainLockoutInformation = 12, + DomainModifiedInformation2 = 13 + } samr_DomainInfoClass; + + /* server roles */ + typedef [v1_enum] enum { + SAMR_ROLE_STANDALONE = 0, + SAMR_ROLE_DOMAIN_MEMBER = 1, + SAMR_ROLE_DOMAIN_BDC = 2, + SAMR_ROLE_DOMAIN_PDC = 3 + } samr_Role; + + /* password properties flags */ + typedef [public,bitmap32bit] bitmap { + DOMAIN_PASSWORD_COMPLEX = 0x00000001, + DOMAIN_PASSWORD_NO_ANON_CHANGE = 0x00000002, + DOMAIN_PASSWORD_NO_CLEAR_CHANGE = 0x00000004, + DOMAIN_PASSWORD_LOCKOUT_ADMINS = 0x00000008, + DOMAIN_PASSWORD_STORE_CLEARTEXT = 0x00000010, + DOMAIN_REFUSE_PASSWORD_CHANGE = 0x00000020 + } samr_PasswordProperties; + + typedef [v1_enum] enum { + DOMAIN_SERVER_ENABLED = 1, + DOMAIN_SERVER_DISABLED = 2 + } samr_DomainServerState; + + typedef struct { + uint16 min_password_length; + uint16 password_history_length; + samr_PasswordProperties password_properties; + /* yes, these are signed. They are in negative 100ns */ + dlong max_password_age; + dlong min_password_age; + } samr_DomInfo1; + + typedef struct { + NTTIME force_logoff_time; + lsa_String oem_information; /* comment */ + lsa_String domain_name; + lsa_String primary; /* PDC name if this is a BDC */ + udlong sequence_num; + samr_DomainServerState domain_server_state; + samr_Role role; + uint32 unknown3; + uint32 num_users; + uint32 num_groups; + uint32 num_aliases; + } samr_DomGeneralInformation; + + typedef struct { + NTTIME force_logoff_time; + } samr_DomInfo3; + + typedef struct { + lsa_String oem_information; /* comment */ + } samr_DomOEMInformation; + + typedef struct { + lsa_String domain_name; + } samr_DomInfo5; + + typedef struct { + lsa_String primary; + } samr_DomInfo6; + + typedef struct { + samr_Role role; + } samr_DomInfo7; + + typedef struct { + hyper sequence_num; + NTTIME domain_create_time; + } samr_DomInfo8; + + typedef struct { + samr_DomainServerState domain_server_state; + } samr_DomInfo9; + + typedef struct { + samr_DomGeneralInformation general; + hyper lockout_duration; + hyper lockout_window; + uint16 lockout_threshold; + } samr_DomGeneralInformation2; + + typedef struct { + hyper lockout_duration; + hyper lockout_window; + uint16 lockout_threshold; + } samr_DomInfo12; + + typedef struct { + hyper sequence_num; + NTTIME domain_create_time; + hyper modified_count_at_last_promotion; + } samr_DomInfo13; + + typedef [switch_type(uint16)] union { + [case(1)] samr_DomInfo1 info1; + [case(2)] samr_DomGeneralInformation general; + [case(3)] samr_DomInfo3 info3; + [case(4)] samr_DomOEMInformation oem; + [case(5)] samr_DomInfo5 info5; + [case(6)] samr_DomInfo6 info6; + [case(7)] samr_DomInfo7 info7; + [case(8)] samr_DomInfo8 info8; + [case(9)] samr_DomInfo9 info9; + [case(11)] samr_DomGeneralInformation2 general2; + [case(12)] samr_DomInfo12 info12; + [case(13)] samr_DomInfo13 info13; + } samr_DomainInfo; + + NTSTATUS samr_QueryDomainInfo( + [in,ref] policy_handle *domain_handle, + [in] samr_DomainInfoClass level, + [out,ref,switch_is(level)] samr_DomainInfo **info + ); + + /************************/ + /* Function 0x09 */ + /* + only levels 1, 3, 4, 6, 7, 9, 12 are valid for this + call in w2k3 + */ + NTSTATUS samr_SetDomainInfo( + [in,ref] policy_handle *domain_handle, + [in] samr_DomainInfoClass level, + [in,switch_is(level),ref] samr_DomainInfo *info + ); + + + /************************/ + /* Function 0x0a */ + NTSTATUS samr_CreateDomainGroup( + [in,ref] policy_handle *domain_handle, + [in,ref] lsa_String *name, + [in] samr_GroupAccessMask access_mask, + [out,ref] policy_handle *group_handle, + [out,ref] uint32 *rid + ); + + + /************************/ + /* Function 0x0b */ + NTSTATUS samr_EnumDomainGroups( + [in] policy_handle *domain_handle, + [in,out,ref] uint32 *resume_handle, + [out,ref] samr_SamArray **sam, + [in] uint32 max_size, + [out,ref] uint32 *num_entries + ); + + /************************/ + /* Function 0x0c */ + NTSTATUS samr_CreateUser( + [in,ref] policy_handle *domain_handle, + [in,ref] lsa_String *account_name, + [in] samr_UserAccessMask access_mask, + [out,ref] policy_handle *user_handle, + [out,ref] uint32 *rid + ); + + /************************/ + /* Function 0x0d */ + + + /* w2k3 treats max_size as max_users*54 and sets the + resume_handle as the rid of the last user sent + */ + const int SAMR_ENUM_USERS_MULTIPLIER = 54; + + NTSTATUS samr_EnumDomainUsers( + [in] policy_handle *domain_handle, + [in,out,ref] uint32 *resume_handle, + [in] samr_AcctFlags acct_flags, + [out,ref] samr_SamArray **sam, + [in] uint32 max_size, + [out,ref] uint32 *num_entries + ); + + /************************/ + /* Function 0x0e */ + NTSTATUS samr_CreateDomAlias( + [in,ref] policy_handle *domain_handle, + [in,ref] lsa_String *alias_name, + [in] samr_AliasAccessMask access_mask, + [out,ref] policy_handle *alias_handle, + [out,ref] uint32 *rid + ); + + /************************/ + /* Function 0x0f */ + NTSTATUS samr_EnumDomainAliases( + [in] policy_handle *domain_handle, + [in,out,ref] uint32 *resume_handle, + [out,ref] samr_SamArray **sam, + [in] uint32 max_size, + [out,ref] uint32 *num_entries + ); + + /************************/ + /* Function 0x10 */ + + typedef struct { + [range(0,1024)] uint32 count; + [size_is(count)] uint32 *ids; + } samr_Ids; + + NTSTATUS samr_GetAliasMembership( + [in,ref] policy_handle *domain_handle, + [in,ref] lsa_SidArray *sids, + [out,ref] samr_Ids *rids + ); + + /************************/ + /* Function 0x11 */ + + [public] NTSTATUS samr_LookupNames( + [in,ref] policy_handle *domain_handle, + [in,range(0,1000)] uint32 num_names, + [in,size_is(1000),length_is(num_names),ref] lsa_String *names, + [out,ref] samr_Ids *rids, + [out,ref] samr_Ids *types + ); + + + /************************/ + /* Function 0x12 */ + NTSTATUS samr_LookupRids( + [in,ref] policy_handle *domain_handle, + [in,range(0,1000)] uint32 num_rids, + [in,size_is(1000),length_is(num_rids)] uint32 rids[], + [out,ref] lsa_Strings *names, + [out,ref] samr_Ids *types + ); + + /************************/ + /* Function 0x13 */ + NTSTATUS samr_OpenGroup( + [in,ref] policy_handle *domain_handle, + [in] samr_GroupAccessMask access_mask, + [in] uint32 rid, + [out,ref] policy_handle *group_handle + ); + + /* Group attributes */ + typedef [public,bitmap32bit] bitmap { + SE_GROUP_MANDATORY = 0x00000001, + SE_GROUP_ENABLED_BY_DEFAULT = 0x00000002, + SE_GROUP_ENABLED = 0x00000004, + SE_GROUP_OWNER = 0x00000008, + SE_GROUP_USE_FOR_DENY_ONLY = 0x00000010, + SE_GROUP_RESOURCE = 0x20000000, + SE_GROUP_LOGON_ID = 0xC0000000 + } samr_GroupAttrs; + + /************************/ + /* Function 0x14 */ + + typedef struct { + lsa_String name; + samr_GroupAttrs attributes; + uint32 num_members; + lsa_String description; + } samr_GroupInfoAll; + + typedef struct { + samr_GroupAttrs attributes; + } samr_GroupInfoAttributes; + + typedef struct { + lsa_String description; + } samr_GroupInfoDescription; + + typedef enum { + GROUPINFOALL = 1, + GROUPINFONAME = 2, + GROUPINFOATTRIBUTES = 3, + GROUPINFODESCRIPTION = 4, + GROUPINFOALL2 = 5 + } samr_GroupInfoEnum; + + typedef [switch_type(samr_GroupInfoEnum)] union { + [case(GROUPINFOALL)] samr_GroupInfoAll all; + [case(GROUPINFONAME)] lsa_String name; + [case(GROUPINFOATTRIBUTES)] samr_GroupInfoAttributes attributes; + [case(GROUPINFODESCRIPTION)] lsa_String description; + [case(GROUPINFOALL2)] samr_GroupInfoAll all2; + } samr_GroupInfo; + + NTSTATUS samr_QueryGroupInfo( + [in,ref] policy_handle *group_handle, + [in] samr_GroupInfoEnum level, + [out,ref,switch_is(level)] samr_GroupInfo **info + ); + + /************************/ + /* Function 0x15 */ + NTSTATUS samr_SetGroupInfo( + [in,ref] policy_handle *group_handle, + [in] samr_GroupInfoEnum level, + [in,switch_is(level),ref] samr_GroupInfo *info + ); + + /************************/ + /* Function 0x16 */ + NTSTATUS samr_AddGroupMember( + [in,ref] policy_handle *group_handle, + [in] uint32 rid, + [in] uint32 flags + ); + + /************************/ + /* Function 0x17 */ + NTSTATUS samr_DeleteDomainGroup( + [in,out,ref] policy_handle *group_handle + ); + + /************************/ + /* Function 0x18 */ + NTSTATUS samr_DeleteGroupMember( + [in,ref] policy_handle *group_handle, + [in] uint32 rid + ); + + + /************************/ + /* Function 0x19 */ + typedef struct { + uint32 count; + [size_is(count)] uint32 *rids; + [size_is(count)] uint32 *types; + } samr_RidTypeArray; + + NTSTATUS samr_QueryGroupMember( + [in,ref] policy_handle *group_handle, + [out,ref] samr_RidTypeArray **rids + ); + + + /************************/ + /* Function 0x1a */ + + /* + win2003 seems to accept any data at all for the two integers + below, and doesn't seem to do anything with them that I can + see. Weird. I really expected the first integer to be a rid + and the second to be the attributes for that rid member. + */ + NTSTATUS samr_SetMemberAttributesOfGroup( + [in,ref] policy_handle *group_handle, + [in] uint32 unknown1, + [in] uint32 unknown2 + ); + + + /************************/ + /* Function 0x1b */ + NTSTATUS samr_OpenAlias ( + [in,ref] policy_handle *domain_handle, + [in] samr_AliasAccessMask access_mask, + [in] uint32 rid, + [out,ref] policy_handle *alias_handle + ); + + + /************************/ + /* Function 0x1c */ + + typedef struct { + lsa_String name; + uint32 num_members; + lsa_String description; + } samr_AliasInfoAll; + + typedef enum { + ALIASINFOALL = 1, + ALIASINFONAME = 2, + ALIASINFODESCRIPTION = 3 + } samr_AliasInfoEnum; + + typedef [switch_type(samr_AliasInfoEnum)] union { + [case(ALIASINFOALL)] samr_AliasInfoAll all; + [case(ALIASINFONAME)] lsa_String name; + [case(ALIASINFODESCRIPTION)] lsa_String description; + } samr_AliasInfo; + + NTSTATUS samr_QueryAliasInfo( + [in,ref] policy_handle *alias_handle, + [in] samr_AliasInfoEnum level, + [out,ref,switch_is(level)] samr_AliasInfo **info + ); + + /************************/ + /* Function 0x1d */ + NTSTATUS samr_SetAliasInfo( + [in,ref] policy_handle *alias_handle, + [in] samr_AliasInfoEnum level, + [in,switch_is(level),ref] samr_AliasInfo *info + ); + + /************************/ + /* Function 0x1e */ + NTSTATUS samr_DeleteDomAlias( + [in,out,ref] policy_handle *alias_handle + ); + + /************************/ + /* Function 0x1f */ + NTSTATUS samr_AddAliasMember( + [in,ref] policy_handle *alias_handle, + [in,ref] dom_sid2 *sid + ); + + /************************/ + /* Function 0x20 */ + NTSTATUS samr_DeleteAliasMember( + [in,ref] policy_handle *alias_handle, + [in,ref] dom_sid2 *sid + ); + + /************************/ + /* Function 0x21 */ + NTSTATUS samr_GetMembersInAlias( + [in,ref] policy_handle *alias_handle, + [out,ref] lsa_SidArray *sids + ); + + /************************/ + /* Function 0x22 */ + [public] NTSTATUS samr_OpenUser( + [in,ref] policy_handle *domain_handle, + [in] samr_UserAccessMask access_mask, + [in] uint32 rid, + [out,ref] policy_handle *user_handle + ); + + /************************/ + /* Function 0x23 */ + NTSTATUS samr_DeleteUser( + [in,out,ref] policy_handle *user_handle + ); + + /************************/ + /* Function 0x24 */ + + typedef enum { + UserGeneralInformation = 1, + UserPreferencesInformation = 2, + UserLogonInformation = 3, + UserLogonHoursInformation = 4, + UserAccountInformation = 5, + UserNameInformation = 6, + UserAccountNameInformation = 7, + UserFullNameInformation = 8, + UserPrimaryGroupInformation = 9, + UserHomeInformation = 10, + UserScriptInformation = 11, + UserProfileInformation = 12, + UserAdminCommentInformation = 13, + UserWorkStationsInformation = 14, + UserControlInformation = 16, + UserExpiresInformation = 17, + UserInternal1Information = 18, + UserParametersInformation = 20, + UserAllInformation = 21, + UserInternal4Information = 23, + UserInternal5Information = 24, + UserInternal4InformationNew = 25, + UserInternal5InformationNew = 26 + } samr_UserInfoLevel; + + typedef struct { + lsa_String account_name; + lsa_String full_name; + uint32 primary_gid; + lsa_String description; + lsa_String comment; + } samr_UserInfo1; + + typedef struct { + lsa_String comment; + lsa_String unknown; /* settable, but doesn't stick. probably obsolete */ + uint16 country_code; + uint16 code_page; + } samr_UserInfo2; + + /* this is also used in samr and netlogon */ + typedef [public, flag(NDR_PAHEX)] struct { + uint16 units_per_week; + [size_is(1260), length_is(units_per_week/8)] uint8 *bits; + } samr_LogonHours; + + typedef struct { + lsa_String account_name; + lsa_String full_name; + uint32 rid; + uint32 primary_gid; + lsa_String home_directory; + lsa_String home_drive; + lsa_String logon_script; + lsa_String profile_path; + lsa_String workstations; + NTTIME last_logon; + NTTIME last_logoff; + NTTIME last_password_change; + NTTIME allow_password_change; + NTTIME force_password_change; + samr_LogonHours logon_hours; + uint16 bad_password_count; + uint16 logon_count; + samr_AcctFlags acct_flags; + } samr_UserInfo3; + + typedef struct { + samr_LogonHours logon_hours; + } samr_UserInfo4; + + typedef struct { + lsa_String account_name; + lsa_String full_name; + uint32 rid; + uint32 primary_gid; + lsa_String home_directory; + lsa_String home_drive; + lsa_String logon_script; + lsa_String profile_path; + lsa_String description; + lsa_String workstations; + NTTIME last_logon; + NTTIME last_logoff; + samr_LogonHours logon_hours; + uint16 bad_password_count; + uint16 logon_count; + NTTIME last_password_change; + NTTIME acct_expiry; + samr_AcctFlags acct_flags; + } samr_UserInfo5; + + typedef struct { + lsa_String account_name; + lsa_String full_name; + } samr_UserInfo6; + + typedef struct { + lsa_String account_name; + } samr_UserInfo7; + + typedef struct { + lsa_String full_name; + } samr_UserInfo8; + + typedef struct { + uint32 primary_gid; + } samr_UserInfo9; + + typedef struct { + lsa_String home_directory; + lsa_String home_drive; + } samr_UserInfo10; + + typedef struct { + lsa_String logon_script; + } samr_UserInfo11; + + typedef struct { + lsa_String profile_path; + } samr_UserInfo12; + + typedef struct { + lsa_String description; + } samr_UserInfo13; + + typedef struct { + lsa_String workstations; + } samr_UserInfo14; + + typedef struct { + samr_AcctFlags acct_flags; + } samr_UserInfo16; + + typedef struct { + NTTIME acct_expiry; + } samr_UserInfo17; + + typedef [public, flag(NDR_PAHEX)] struct { + uint8 hash[16]; + } samr_Password; + + typedef struct { + samr_Password nt_pwd; + samr_Password lm_pwd; + boolean8 nt_pwd_active; + boolean8 lm_pwd_active; + uint8 password_expired; + } samr_UserInfo18; + + typedef struct { + lsa_String parameters; + } samr_UserInfo20; + + /* this defines the bits used for fields_present in info21 */ + typedef [bitmap32bit] bitmap { + SAMR_FIELD_ACCOUNT_NAME = 0x00000001, + SAMR_FIELD_FULL_NAME = 0x00000002, + SAMR_FIELD_RID = 0x00000004, + SAMR_FIELD_PRIMARY_GID = 0x00000008, + SAMR_FIELD_DESCRIPTION = 0x00000010, + SAMR_FIELD_COMMENT = 0x00000020, + SAMR_FIELD_HOME_DIRECTORY = 0x00000040, + SAMR_FIELD_HOME_DRIVE = 0x00000080, + SAMR_FIELD_LOGON_SCRIPT = 0x00000100, + SAMR_FIELD_PROFILE_PATH = 0x00000200, + SAMR_FIELD_WORKSTATIONS = 0x00000400, + SAMR_FIELD_LAST_LOGON = 0x00000800, + SAMR_FIELD_LAST_LOGOFF = 0x00001000, + SAMR_FIELD_LOGON_HOURS = 0x00002000, + SAMR_FIELD_BAD_PWD_COUNT = 0x00004000, + SAMR_FIELD_NUM_LOGONS = 0x00008000, + SAMR_FIELD_ALLOW_PWD_CHANGE = 0x00010000, + SAMR_FIELD_FORCE_PWD_CHANGE = 0x00020000, + SAMR_FIELD_LAST_PWD_CHANGE = 0x00040000, + SAMR_FIELD_ACCT_EXPIRY = 0x00080000, + SAMR_FIELD_ACCT_FLAGS = 0x00100000, + SAMR_FIELD_PARAMETERS = 0x00200000, + SAMR_FIELD_COUNTRY_CODE = 0x00400000, + SAMR_FIELD_CODE_PAGE = 0x00800000, + SAMR_FIELD_NT_PASSWORD_PRESENT = 0x01000000, /* either of these */ + SAMR_FIELD_LM_PASSWORD_PRESENT = 0x02000000, /* two bits seems to work */ + SAMR_FIELD_PRIVATE_DATA = 0x04000000, + SAMR_FIELD_EXPIRED_FLAG = 0x08000000, + SAMR_FIELD_SEC_DESC = 0x10000000, + SAMR_FIELD_OWF_PWD = 0x20000000 + } samr_FieldsPresent; + + /* used for 'password_expired' in samr_UserInfo21 */ + const int PASS_MUST_CHANGE_AT_NEXT_LOGON = 0x01; + const int PASS_DONT_CHANGE_AT_NEXT_LOGON = 0x00; + + typedef struct { + NTTIME last_logon; + NTTIME last_logoff; + NTTIME last_password_change; + NTTIME acct_expiry; + NTTIME allow_password_change; + NTTIME force_password_change; + lsa_String account_name; + lsa_String full_name; + lsa_String home_directory; + lsa_String home_drive; + lsa_String logon_script; + lsa_String profile_path; + lsa_String description; + lsa_String workstations; + lsa_String comment; + lsa_String parameters; + lsa_String lm_password; + lsa_String nt_password; + lsa_String private; + uint32 buf_count; + [size_is(buf_count)] uint8 *buffer; + uint32 rid; + uint32 primary_gid; + samr_AcctFlags acct_flags; + samr_FieldsPresent fields_present; + samr_LogonHours logon_hours; + uint16 bad_password_count; + uint16 logon_count; + uint16 country_code; + uint16 code_page; + uint8 lm_password_set; + uint8 nt_password_set; + uint8 password_expired; + uint8 unknown4; + } samr_UserInfo21; + + typedef [public, flag(NDR_PAHEX)] struct { + uint8 data[516]; + } samr_CryptPassword; + + typedef struct { + samr_UserInfo21 info; + samr_CryptPassword password; + } samr_UserInfo23; + + typedef struct { + samr_CryptPassword password; + uint8 password_expired; + } samr_UserInfo24; + + typedef [flag(NDR_PAHEX)] struct { + uint8 data[532]; + } samr_CryptPasswordEx; + + typedef struct { + samr_UserInfo21 info; + samr_CryptPasswordEx password; + } samr_UserInfo25; + + typedef struct { + samr_CryptPasswordEx password; + uint8 password_expired; + } samr_UserInfo26; + + typedef [switch_type(uint16)] union { + [case(1)] samr_UserInfo1 info1; + [case(2)] samr_UserInfo2 info2; + [case(3)] samr_UserInfo3 info3; + [case(4)] samr_UserInfo4 info4; + [case(5)] samr_UserInfo5 info5; + [case(6)] samr_UserInfo6 info6; + [case(7)] samr_UserInfo7 info7; + [case(8)] samr_UserInfo8 info8; + [case(9)] samr_UserInfo9 info9; + [case(10)] samr_UserInfo10 info10; + [case(11)] samr_UserInfo11 info11; + [case(12)] samr_UserInfo12 info12; + [case(13)] samr_UserInfo13 info13; + [case(14)] samr_UserInfo14 info14; + [case(16)] samr_UserInfo16 info16; + [case(17)] samr_UserInfo17 info17; + [case(18)] samr_UserInfo18 info18; + [case(20)] samr_UserInfo20 info20; + [case(21)] samr_UserInfo21 info21; + [case(23)] samr_UserInfo23 info23; + [case(24)] samr_UserInfo24 info24; + [case(25)] samr_UserInfo25 info25; + [case(26)] samr_UserInfo26 info26; + } samr_UserInfo; + + [public] NTSTATUS samr_QueryUserInfo( + [in,ref] policy_handle *user_handle, + [in] samr_UserInfoLevel level, + [out,ref,switch_is(level)] samr_UserInfo **info + ); + + + /************************/ + /* Function 0x25 */ + [public] NTSTATUS samr_SetUserInfo( + [in,ref] policy_handle *user_handle, + [in] samr_UserInfoLevel level, + [in,ref,switch_is(level)] samr_UserInfo *info + ); + + /************************/ + /* Function 0x26 */ + /* + this is a password change interface that doesn't give + the server the plaintext password. Depricated. + */ + NTSTATUS samr_ChangePasswordUser( + [in,ref] policy_handle *user_handle, + [in] boolean8 lm_present, + [in,unique] samr_Password *old_lm_crypted, + [in,unique] samr_Password *new_lm_crypted, + [in] boolean8 nt_present, + [in,unique] samr_Password *old_nt_crypted, + [in,unique] samr_Password *new_nt_crypted, + [in] boolean8 cross1_present, + [in,unique] samr_Password *nt_cross, + [in] boolean8 cross2_present, + [in,unique] samr_Password *lm_cross + ); + + /************************/ + /* Function 0x27 */ + + typedef [public] struct { + uint32 rid; + samr_GroupAttrs attributes; + } samr_RidWithAttribute; + + typedef [public] struct { + uint32 count; + [size_is(count)] samr_RidWithAttribute *rids; + } samr_RidWithAttributeArray; + + NTSTATUS samr_GetGroupsForUser( + [in,ref] policy_handle *user_handle, + [out,ref] samr_RidWithAttributeArray **rids + ); + + /************************/ + /* Function 0x28 */ + + typedef struct { + uint32 idx; + uint32 rid; + samr_AcctFlags acct_flags; + lsa_String account_name; + lsa_String description; + lsa_String full_name; + } samr_DispEntryGeneral; + + typedef struct { + uint32 count; + [size_is(count)] samr_DispEntryGeneral *entries; + } samr_DispInfoGeneral; + + typedef struct { + uint32 idx; + uint32 rid; + samr_AcctFlags acct_flags; + lsa_String account_name; + lsa_String description; + } samr_DispEntryFull; + + typedef struct { + uint32 count; + [size_is(count)] samr_DispEntryFull *entries; + } samr_DispInfoFull; + + typedef struct { + uint32 idx; + uint32 rid; + samr_GroupAttrs acct_flags; + lsa_String account_name; + lsa_String description; + } samr_DispEntryFullGroup; + + typedef struct { + uint32 count; + [size_is(count)] samr_DispEntryFullGroup *entries; + } samr_DispInfoFullGroups; + + typedef struct { + uint32 idx; + lsa_AsciiStringLarge account_name; + } samr_DispEntryAscii; + + typedef struct { + uint32 count; + [size_is(count)] samr_DispEntryAscii *entries; + } samr_DispInfoAscii; + + typedef enum { + SAMR_DOMAIN_DISPLAY_USER = 1, + SAMR_DOMAIN_DISPLAY_MACHINE = 2, + SAMR_DOMAIN_DISPLAY_GROUP = 3, + SAMR_DOMAIN_DISPLAY_OEM_USER = 4, + SAMR_DOMAIN_DISPLAY_OEM_GROUP = 5 + } samr_DomainDisplayInformation; + + typedef [switch_type(uint16)] union { + [case(SAMR_DOMAIN_DISPLAY_USER)] samr_DispInfoGeneral info1;/* users */ + [case(SAMR_DOMAIN_DISPLAY_MACHINE)] samr_DispInfoFull info2; /* trust accounts? */ + [case(SAMR_DOMAIN_DISPLAY_GROUP)] samr_DispInfoFullGroups info3; /* groups */ + [case(SAMR_DOMAIN_DISPLAY_OEM_USER)] samr_DispInfoAscii info4; /* users */ + [case(SAMR_DOMAIN_DISPLAY_OEM_GROUP)] samr_DispInfoAscii info5; /* groups */ + } samr_DispInfo; + + NTSTATUS samr_QueryDisplayInfo( + [in,ref] policy_handle *domain_handle, + [in] samr_DomainDisplayInformation level, + [in] uint32 start_idx, + [in] uint32 max_entries, + [in] uint32 buf_size, + [out,ref] uint32 *total_size, + [out,ref] uint32 *returned_size, + [out,ref,switch_is(level)] samr_DispInfo *info + ); + + + /************************/ + /* Function 0x29 */ + + /* + this seems to be an alphabetic search function. The returned index + is the index for samr_QueryDisplayInfo needed to get names occurring + after the specified name. The supplied name does not need to exist + in the database (for example you can supply just a first letter for + searching starting at that letter) + + The level corresponds to the samr_QueryDisplayInfo level + */ + NTSTATUS samr_GetDisplayEnumerationIndex( + [in,ref] policy_handle *domain_handle, + [in] uint16 level, + [in,ref] lsa_String *name, + [out,ref] uint32 *idx + ); + + + + /************************/ + /* Function 0x2a */ + + /* + w2k3 returns NT_STATUS_NOT_IMPLEMENTED for this + */ + NTSTATUS samr_TestPrivateFunctionsDomain( + [in,ref] policy_handle *domain_handle + ); + + + /************************/ + /* Function 0x2b */ + + /* + w2k3 returns NT_STATUS_NOT_IMPLEMENTED for this + */ + NTSTATUS samr_TestPrivateFunctionsUser( + [in,ref] policy_handle *user_handle + ); + + + /************************/ + /* Function 0x2c */ + + typedef struct { + uint16 min_password_length; + samr_PasswordProperties password_properties; + } samr_PwInfo; + + [public] NTSTATUS samr_GetUserPwInfo( + [in,ref] policy_handle *user_handle, + [out,ref] samr_PwInfo *info + ); + + /************************/ + /* Function 0x2d */ + NTSTATUS samr_RemoveMemberFromForeignDomain( + [in,ref] policy_handle *domain_handle, + [in,ref] dom_sid2 *sid + ); + + /************************/ + /* Function 0x2e */ + + /* + how is this different from QueryDomainInfo ?? + */ + NTSTATUS samr_QueryDomainInfo2( + [in,ref] policy_handle *domain_handle, + [in] samr_DomainInfoClass level, + [out,ref,switch_is(level)] samr_DomainInfo **info + ); + + /************************/ + /* Function 0x2f */ + + /* + how is this different from QueryUserInfo ?? + */ + NTSTATUS samr_QueryUserInfo2( + [in,ref] policy_handle *user_handle, + [in] samr_UserInfoLevel level, + [out,ref,switch_is(level)] samr_UserInfo **info + ); + + /************************/ + /* Function 0x30 */ + + /* + how is this different from QueryDisplayInfo?? + */ + NTSTATUS samr_QueryDisplayInfo2( + [in,ref] policy_handle *domain_handle, + [in] samr_DomainDisplayInformation level, + [in] uint32 start_idx, + [in] uint32 max_entries, + [in] uint32 buf_size, + [out,ref] uint32 *total_size, + [out,ref] uint32 *returned_size, + [out,ref,switch_is(level)] samr_DispInfo *info + ); + + /************************/ + /* Function 0x31 */ + + /* + how is this different from GetDisplayEnumerationIndex ?? + */ + NTSTATUS samr_GetDisplayEnumerationIndex2( + [in,ref] policy_handle *domain_handle, + [in] samr_DomainDisplayInformation level, + [in,ref] lsa_String *name, + [out,ref] uint32 *idx + ); + + + /************************/ + /* Function 0x32 */ + NTSTATUS samr_CreateUser2( + [in,ref] policy_handle *domain_handle, + [in,ref] lsa_String *account_name, + [in] samr_AcctFlags acct_flags, + [in] samr_UserAccessMask access_mask, + [out,ref] policy_handle *user_handle, + [out,ref] uint32 *access_granted, + [out,ref] uint32 *rid + ); + + + /************************/ + /* Function 0x33 */ + + /* + another duplicate. There must be a reason .... + */ + NTSTATUS samr_QueryDisplayInfo3( + [in,ref] policy_handle *domain_handle, + [in] samr_DomainDisplayInformation level, + [in] uint32 start_idx, + [in] uint32 max_entries, + [in] uint32 buf_size, + [out,ref] uint32 *total_size, + [out,ref] uint32 *returned_size, + [out,ref,switch_is(level)] samr_DispInfo *info + ); + + /************************/ + /* Function 0x34 */ + NTSTATUS samr_AddMultipleMembersToAlias( + [in,ref] policy_handle *alias_handle, + [in,ref] lsa_SidArray *sids + ); + + /************************/ + /* Function 0x35 */ + NTSTATUS samr_RemoveMultipleMembersFromAlias( + [in,ref] policy_handle *alias_handle, + [in,ref] lsa_SidArray *sids + ); + + /************************/ + /* Function 0x36 */ + + NTSTATUS samr_OemChangePasswordUser2( + [in,unique] lsa_AsciiString *server, + [in,ref] lsa_AsciiString *account, + [in,unique] samr_CryptPassword *password, + [in,unique] samr_Password *hash + ); + + /************************/ + /* Function 0x37 */ + NTSTATUS samr_ChangePasswordUser2( + [in,unique] lsa_String *server, + [in,ref] lsa_String *account, + [in,unique] samr_CryptPassword *nt_password, + [in,unique] samr_Password *nt_verifier, + [in] boolean8 lm_change, + [in,unique] samr_CryptPassword *lm_password, + [in,unique] samr_Password *lm_verifier + ); + + /************************/ + /* Function 0x38 */ + NTSTATUS samr_GetDomPwInfo( + [in,unique] lsa_String *domain_name, + [out,ref] samr_PwInfo *info + ); + + /************************/ + /* Function 0x39 */ + NTSTATUS samr_Connect2( + [in,unique,string,charset(UTF16)] uint16 *system_name, + [in] samr_ConnectAccessMask access_mask, + [out,ref] policy_handle *connect_handle + ); + + /************************/ + /* Function 0x3a */ + /* + seems to be an exact alias for samr_SetUserInfo() + */ + [public] NTSTATUS samr_SetUserInfo2( + [in,ref] policy_handle *user_handle, + [in] samr_UserInfoLevel level, + [in,ref,switch_is(level)] samr_UserInfo *info + ); + + /************************/ + /* Function 0x3b */ + /* + this one is mysterious. I have a few guesses, but nothing working yet + */ + NTSTATUS samr_SetBootKeyInformation( + [in,ref] policy_handle *connect_handle, + [in] uint32 unknown1, + [in] uint32 unknown2, + [in] uint32 unknown3 + ); + + /************************/ + /* Function 0x3c */ + NTSTATUS samr_GetBootKeyInformation( + [in,ref] policy_handle *domain_handle, + [out,ref] uint32 *unknown + ); + + /************************/ + /* Function 0x3d */ + NTSTATUS samr_Connect3( + [in,unique,string,charset(UTF16)] uint16 *system_name, + /* this unknown value seems to be completely ignored by w2k3 */ + [in] uint32 unknown, + [in] samr_ConnectAccessMask access_mask, + [out,ref] policy_handle *connect_handle + ); + + /************************/ + /* Function 0x3e */ + + typedef [v1_enum] enum { + SAMR_CONNECT_PRE_W2K = 1, + SAMR_CONNECT_W2K = 2, + SAMR_CONNECT_AFTER_W2K = 3 + } samr_ConnectVersion; + + NTSTATUS samr_Connect4( + [in,unique,string,charset(UTF16)] uint16 *system_name, + [in] samr_ConnectVersion client_version, + [in] samr_ConnectAccessMask access_mask, + [out,ref] policy_handle *connect_handle + ); + + /************************/ + /* Function 0x3f */ + + typedef struct { + samr_RejectReason reason; + uint32 unknown1; + uint32 unknown2; + } samr_ChangeReject; + + NTSTATUS samr_ChangePasswordUser3( + [in,unique] lsa_String *server, + [in,ref] lsa_String *account, + [in,unique] samr_CryptPassword *nt_password, + [in,unique] samr_Password *nt_verifier, + [in] boolean8 lm_change, + [in,unique] samr_CryptPassword *lm_password, + [in,unique] samr_Password *lm_verifier, + [in,unique] samr_CryptPassword *password3, + [out,ref] samr_DomInfo1 **dominfo, + [out,ref] samr_ChangeReject **reject + ); + + /************************/ + /* Function 0x40 */ + + typedef struct { + samr_ConnectVersion client_version; /* w2k3 gives 3 */ + uint32 unknown2; /* w2k3 gives 0 */ + } samr_ConnectInfo1; + + typedef union { + [case(1)] samr_ConnectInfo1 info1; + } samr_ConnectInfo; + + [public] NTSTATUS samr_Connect5( + [in,unique,string,charset(UTF16)] uint16 *system_name, + [in] samr_ConnectAccessMask access_mask, + [in] uint32 level_in, + [in,ref,switch_is(level_in)] samr_ConnectInfo *info_in, + [out,ref] uint32 *level_out, + [out,ref,switch_is(*level_out)] samr_ConnectInfo *info_out, + [out,ref] policy_handle *connect_handle + ); + + /************************/ + /* Function 0x41 */ + NTSTATUS samr_RidToSid( + [in,ref] policy_handle *domain_handle, + [in] uint32 rid, + [out,ref] dom_sid2 **sid + ); + + /************************/ + /* Function 0x42 */ + + /* + this should set the DSRM password for the server, which is used + when booting into Directory Services Recovery Mode on a DC. Win2003 + gives me NT_STATUS_NOT_SUPPORTED + */ + + NTSTATUS samr_SetDsrmPassword( + [in,unique] lsa_String *name, + [in] uint32 unknown, + [in,unique] samr_Password *hash + ); + + + /************************/ + /* Function 0x43 */ + /************************/ + typedef [bitmap32bit] bitmap { + SAMR_VALIDATE_FIELD_PASSWORD_LAST_SET = 0x00000001, + SAMR_VALIDATE_FIELD_BAD_PASSWORD_TIME = 0x00000002, + SAMR_VALIDATE_FIELD_LOCKOUT_TIME = 0x00000004, + SAMR_VALIDATE_FIELD_BAD_PASSWORD_COUNT = 0x00000008, + SAMR_VALIDATE_FIELD_PASSWORD_HISTORY_LENGTH = 0x00000010, + SAMR_VALIDATE_FIELD_PASSWORD_HISTORY = 0x00000020 + } samr_ValidateFieldsPresent; + + typedef enum { + NetValidateAuthentication = 1, + NetValidatePasswordChange= 2, + NetValidatePasswordReset = 3 + } samr_ValidatePasswordLevel; + + /* NetApi maps samr_ValidationStatus errors to WERRORs. Haven't + * identified the mapping of + * - NERR_PasswordFilterError + * - NERR_PasswordExpired and + * - NERR_PasswordCantChange + * yet - Guenther + */ + + typedef enum { + SAMR_VALIDATION_STATUS_SUCCESS = 0, + SAMR_VALIDATION_STATUS_PASSWORD_MUST_CHANGE = 1, + SAMR_VALIDATION_STATUS_ACCOUNT_LOCKED_OUT = 2, + SAMR_VALIDATION_STATUS_PASSWORD_EXPIRED = 3, + SAMR_VALIDATION_STATUS_BAD_PASSWORD = 4, + SAMR_VALIDATION_STATUS_PWD_HISTORY_CONFLICT = 5, + SAMR_VALIDATION_STATUS_PWD_TOO_SHORT = 6, + SAMR_VALIDATION_STATUS_PWD_TOO_LONG = 7, + SAMR_VALIDATION_STATUS_NOT_COMPLEX_ENOUGH = 8, + SAMR_VALIDATION_STATUS_PASSWORD_TOO_RECENT = 9, + SAMR_VALIDATION_STATUS_PASSWORD_FILTER_ERROR = 10 + } samr_ValidationStatus; + + typedef struct { + uint32 length; + [size_is(length)] uint8 *data; + } samr_ValidationBlob; + + typedef struct { + samr_ValidateFieldsPresent fields_present; + NTTIME_hyper last_password_change; + NTTIME_hyper bad_password_time; + NTTIME_hyper lockout_time; + uint32 bad_pwd_count; + uint32 pwd_history_len; + [size_is(pwd_history_len)] samr_ValidationBlob *pwd_history; + } samr_ValidatePasswordInfo; + + typedef struct { + samr_ValidatePasswordInfo info; + samr_ValidationStatus status; + } samr_ValidatePasswordRepCtr; + + typedef [switch_type(uint16)] union { + [case(1)] samr_ValidatePasswordRepCtr ctr1; + [case(2)] samr_ValidatePasswordRepCtr ctr2; + [case(3)] samr_ValidatePasswordRepCtr ctr3; + } samr_ValidatePasswordRep; + + typedef struct { + samr_ValidatePasswordInfo info; + lsa_StringLarge password; + lsa_StringLarge account; + samr_ValidationBlob hash; + boolean8 pwd_must_change_at_next_logon; + boolean8 clear_lockout; + } samr_ValidatePasswordReq3; + + typedef struct { + samr_ValidatePasswordInfo info; + lsa_StringLarge password; + lsa_StringLarge account; + samr_ValidationBlob hash; + boolean8 password_matched; + } samr_ValidatePasswordReq2; + + typedef struct { + samr_ValidatePasswordInfo info; + boolean8 password_matched; + } samr_ValidatePasswordReq1; + + typedef [switch_type(uint16)] union { + [case(1)] samr_ValidatePasswordReq1 req1; + [case(2)] samr_ValidatePasswordReq2 req2; + [case(3)] samr_ValidatePasswordReq3 req3; + } samr_ValidatePasswordReq; + + NTSTATUS samr_ValidatePassword( + [in] samr_ValidatePasswordLevel level, + [in,switch_is(level)] samr_ValidatePasswordReq *req, + [out,ref,switch_is(level)] samr_ValidatePasswordRep **rep + ); +} diff --git a/epan/dissectors/pidl/srvsvc.cnf b/epan/dissectors/pidl/srvsvc.cnf deleted file mode 100644 index ed7c719574..0000000000 --- a/epan/dissectors/pidl/srvsvc.cnf +++ /dev/null @@ -1,138 +0,0 @@ -# conformance file for SRVSVC -# - -MANUAL srvsvc_dissect_element_NetShareInfo_info1501_ -MANUAL srvsvc_dissect_element_NetGetFileSecurity_sd_buf_ -MANUAL srvsvc_dissect_element_NetSetFileSecurity_sd_buf -MANUAL srvsvc_dissect_element_NetShareCtr1501_array__ -MANUAL srvsvc_dissect_element_NetShareInfo502_sd_ -# we wont need to manually define servertype once svcctl is autogenerated -MANUAL srvsvc_dissect_element_NetSrvInfo101_server_type -MANUAL srvsvc_dissect_element_NetSrvInfo102_server_type -# until we get secinfo -MANUAL srvsvc_dissect_element_NetGetFileSecurity_securityinformation -MANUAL srvsvc_dissect_element_NetSetFileSecurity_securityinformation - -HF_FIELD hf_srvsvc_sec_desc_buf_len "Sec Desc Buf Len" "srvsvc.sec_desc_buf_len" FT_UINT32 BASE_DEC NULL 0 "" "" "" - - -# -# -# Prettifications -PARAM_VALUE srvsvc_dissect_element_NetCharDevEnum_server_unc_ 1|PIDL_SET_COL_INFO -PARAM_VALUE srvsvc_dissect_element_NetCharDevEnum_level_ PIDL_SET_COL_INFO - -PARAM_VALUE srvsvc_dissect_element_NetCharDevQEnum_server_unc_ 1|PIDL_SET_COL_INFO -PARAM_VALUE srvsvc_dissect_element_NetCharDevQEnum_user_ 1|PIDL_SET_COL_INFO -PARAM_VALUE srvsvc_dissect_element_NetCharDevQEnum_level_ PIDL_SET_COL_INFO - -PARAM_VALUE srvsvc_dissect_element_NetConnEnum_server_unc_ 1|PIDL_SET_COL_INFO -PARAM_VALUE srvsvc_dissect_element_NetConnEnum_path_ 1|PIDL_SET_COL_INFO -PARAM_VALUE srvsvc_dissect_element_NetConnEnum_level_ PIDL_SET_COL_INFO - -PARAM_VALUE srvsvc_dissect_element_NetFileEnum_server_unc_ 1|PIDL_SET_COL_INFO -PARAM_VALUE srvsvc_dissect_element_NetFileEnum_level_ PIDL_SET_COL_INFO - - -CODE START - #include "packet-smb.h" - #include "packet-smb-browse.h" - -static int -srvsvc_dissect_sec_desc_buf(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep) -{ - guint32 len; - - if(di->conformant_run){ - /*just a run to handle conformant arrays, nothing to dissect */ - return offset; - } - - offset = dissect_ndr_uint32 (tvb, offset, pinfo, tree, di, drep, - hf_srvsvc_sec_desc_buf_len, &len); - - dissect_nt_sec_desc(tvb, offset, pinfo, tree, drep, TRUE, len, - NULL); - - offset += len; - - return offset; -} -static int -srvsvc_dissect_element_NetShareInfo_info1501_(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep) -{ - return srvsvc_dissect_sec_desc_buf(tvb, offset, pinfo, tree, di, drep); -} -static int -srvsvc_dissect_element_NetGetFileSecurity_sd_buf_(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep) -{ - return srvsvc_dissect_sec_desc_buf(tvb, offset, pinfo, tree, di, drep); -} -static int -srvsvc_dissect_element_NetSetFileSecurity_sd_buf(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep) -{ - return srvsvc_dissect_sec_desc_buf(tvb, offset, pinfo, tree, di, drep); -} -static int -srvsvc_dissect_element_NetShareCtr1501_array__(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep) -{ - return srvsvc_dissect_sec_desc_buf(tvb, offset, pinfo, tree, di, drep); -} -static int -srvsvc_dissect_element_NetShareInfo502_sd_(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep) -{ - return srvsvc_dissect_sec_desc_buf(tvb, offset, pinfo, tree, di, drep); -} - - - -static int -srvsvc_dissect_ServerType(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep) -{ - if(di->conformant_run){ - /*just a run to handle conformant arrays, nothing to dissect */ - return offset; - } - - offset=dissect_smb_server_type_flags(tvb, offset, pinfo, tree, - drep, 0); - - return offset; -} -static int -srvsvc_dissect_element_NetSrvInfo101_server_type(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep) -{ - return srvsvc_dissect_ServerType(tvb, offset, pinfo, tree, di, drep); -} -static int -srvsvc_dissect_element_NetSrvInfo102_server_type(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep) -{ - return srvsvc_dissect_ServerType(tvb, offset, pinfo, tree, di, drep); -} - - -static int -srvsvc_dissect_secinfo(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, dcerpc_info* di, guint8 *drep _U_) -{ - if(di->conformant_run){ - /*just a run to handle conformant arrays, nothing to dissect */ - return offset; - } - - offset=dissect_security_information_mask(tvb, tree, offset); - - return offset; -} -static int -srvsvc_dissect_element_NetGetFileSecurity_securityinformation(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep) -{ - return srvsvc_dissect_secinfo(tvb, offset, pinfo, tree, di, drep); -} -static int -srvsvc_dissect_element_NetSetFileSecurity_securityinformation(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep) -{ - return srvsvc_dissect_secinfo(tvb, offset, pinfo, tree, di, drep); -} - -CODE END - diff --git a/epan/dissectors/pidl/srvsvc.idl b/epan/dissectors/pidl/srvsvc.idl deleted file mode 100644 index a474f1f781..0000000000 --- a/epan/dissectors/pidl/srvsvc.idl +++ /dev/null @@ -1,1528 +0,0 @@ -#include "idl_types.h" - -/*import "security.idl", "svcctl.idl";*/ - -/* - srvsvc interface definitions -*/ - -[ uuid("4b324fc8-1670-01d3-1278-5a47bf6ee188"), - version(3.0), - endpoint("ncacn_np:[\\pipe\\srvsvc]", "ncacn_ip_tcp:", "ncalrpc:"), - pointer_default(unique), - pointer_default_top(unique), - helpstring("Server Service") -] interface srvsvc -{ - typedef bitmap svcctl_ServerType svcctl_ServerType; - typedef bitmap security_secinfo security_secinfo; - -/**************************/ -/* srvsvc_NetCharDev */ -/**************************/ - typedef struct { - [string,charset(UTF16)] uint16 *device; - } srvsvc_NetCharDevInfo0; - - typedef struct { - uint32 count; - [size_is(count)] srvsvc_NetCharDevInfo0 *array; - } srvsvc_NetCharDevCtr0; - - typedef struct { - [string,charset(UTF16)] uint16 *device; - uint32 status; - [string,charset(UTF16)] uint16 *user; - uint32 time; - } srvsvc_NetCharDevInfo1; - - typedef struct { - uint32 count; - [size_is(count)] srvsvc_NetCharDevInfo1 *array; - } srvsvc_NetCharDevCtr1; - - typedef union { - [case(0)] srvsvc_NetCharDevInfo0 *info0; - [case(1)] srvsvc_NetCharDevInfo1 *info1; - [default] ; - } srvsvc_NetCharDevInfo; - - typedef union { - [case(0)] srvsvc_NetCharDevCtr0 *ctr0; - [case(1)] srvsvc_NetCharDevCtr1 *ctr1; - [default] ; - } srvsvc_NetCharDevCtr; - - /******************/ - /* Function: 0x00 */ - WERROR srvsvc_NetCharDevEnum( - [in] [string,charset(UTF16)] uint16 *server_unc, - [in,out,ref] uint32 *level, - [in,out,switch_is(level),ref] srvsvc_NetCharDevCtr *ctr, - [in] uint32 max_buffer, - [out,ref] uint32 *totalentries, - [in,out] uint32 *resume_handle - ); - - /******************/ - /* Function: 0x01 */ - WERROR srvsvc_NetCharDevGetInfo( - [in] [string,charset(UTF16)] uint16 *server_unc, - [in] [string,charset(UTF16)] uint16 device_name[], - [in] uint32 level, - [out,switch_is(level),ref] srvsvc_NetCharDevInfo *info - ); - - /******************/ - /* Function: 0x02 */ - WERROR srvsvc_NetCharDevControl( - [in] [string,charset(UTF16)] uint16 *server_unc, - [in] [string,charset(UTF16)] uint16 device_name[], - [in] uint32 opcode - ); - -/**************************/ -/* srvsvc_NetCharDevQ */ -/**************************/ - typedef struct { - [string,charset(UTF16)] uint16 *device; - } srvsvc_NetCharDevQInfo0; - - typedef struct { - uint32 count; - [size_is(count)] srvsvc_NetCharDevQInfo0 *array; - } srvsvc_NetCharDevQCtr0; - - typedef struct { - [string,charset(UTF16)] uint16 *device; - uint32 priority; - [string,charset(UTF16)] uint16 *devices; - uint32 users; - uint32 num_ahead; - } srvsvc_NetCharDevQInfo1; - - typedef struct { - uint32 count; - [size_is(count)] srvsvc_NetCharDevQInfo1 *array; - } srvsvc_NetCharDevQCtr1; - - typedef union { - [case(0)] srvsvc_NetCharDevQInfo0 *info0; - [case(1)] srvsvc_NetCharDevQInfo1 *info1; - [default] ; - } srvsvc_NetCharDevQInfo; - - typedef union { - [case(0)] srvsvc_NetCharDevQCtr0 *ctr0; - [case(1)] srvsvc_NetCharDevQCtr1 *ctr1; - [default] ; - } srvsvc_NetCharDevQCtr; - - /******************/ - /* Function: 0x03 */ - WERROR srvsvc_NetCharDevQEnum( - [in] [string,charset(UTF16)] uint16 *server_unc, - [in] [string,charset(UTF16)] uint16 *user, - [in,out,ref] uint32 *level, - [in,out,switch_is(level),ref] srvsvc_NetCharDevQCtr *ctr, - [in] uint32 max_buffer, - [out,ref] uint32 *totalentries, - [in,out] uint32 *resume_handle - ); - - /******************/ - /* Function: 0x04 */ - WERROR srvsvc_NetCharDevQGetInfo( - [in] [string,charset(UTF16)] uint16 *server_unc, - [in] [string,charset(UTF16)] uint16 queue_name[], - [in] [string,charset(UTF16)] uint16 user[], - [in] uint32 level, - [out,switch_is(level),ref] srvsvc_NetCharDevQInfo *info - ); - - /******************/ - /* Function: 0x05 */ - WERROR srvsvc_NetCharDevQSetInfo( - [in] [string,charset(UTF16)] uint16 *server_unc, - [in] [string,charset(UTF16)] uint16 queue_name[], - [in] uint32 level, - [in,switch_is(level)] srvsvc_NetCharDevQInfo info, - [in,out] uint32 *parm_error - ); - - /******************/ - /* Function: 0x06 */ - WERROR srvsvc_NetCharDevQPurge( - [in] [string,charset(UTF16)] uint16 *server_unc, - [in] [string,charset(UTF16)] uint16 queue_name[] - ); - - /******************/ - /* Function: 0x07 */ - WERROR srvsvc_NetCharDevQPurgeSelf( - [in] [string,charset(UTF16)] uint16 *server_unc, - [in] [string,charset(UTF16)] uint16 queue_name[], - [in] [string,charset(UTF16)] uint16 computer_name[] - ); - -/**************************/ -/* srvsvc_NetConn */ -/**************************/ - typedef struct { - uint32 conn_id; - } srvsvc_NetConnInfo0; - - typedef struct { - uint32 count; - [size_is(count)] srvsvc_NetConnInfo0 *array; - } srvsvc_NetConnCtr0; - - typedef struct { - uint32 conn_id; - uint32 conn_type; - uint32 num_open; - uint32 num_users; - uint32 conn_time; - [string,charset(UTF16)] uint16 *user; - [string,charset(UTF16)] uint16 *share; - } srvsvc_NetConnInfo1; - - typedef struct { - uint32 count; - [size_is(count)] srvsvc_NetConnInfo1 *array; - } srvsvc_NetConnCtr1; - - typedef union { - [case(0)] srvsvc_NetConnCtr0 *ctr0; - [case(1)] srvsvc_NetConnCtr1 *ctr1; - [default] ; - } srvsvc_NetConnCtr; - - /******************/ - /* Function: 0x08 */ - WERROR srvsvc_NetConnEnum( - [in] [string,charset(UTF16)] uint16 *server_unc, - [in] [string,charset(UTF16)] uint16 *path, - [in,out,ref] uint32 *level, - [in,out,switch_is(level),ref] srvsvc_NetConnCtr *ctr, - [in] uint32 max_buffer, - [out,ref] uint32 *totalentries, - [in,out] uint32 *resume_handle - ); - -/**************************/ -/* srvsvc_NetFile */ -/**************************/ - typedef struct { - uint32 fid; - } srvsvc_NetFileInfo2; - - typedef struct { - uint32 count; - [size_is(count)] srvsvc_NetFileInfo2 *array; - } srvsvc_NetFileCtr2; - - typedef struct { - uint32 fid; - uint32 permissions; - uint32 num_locks; - [string,charset(UTF16)] uint16 *path; - [string,charset(UTF16)] uint16 *user; - } srvsvc_NetFileInfo3; - - typedef struct { - uint32 count; - [size_is(count)] srvsvc_NetFileInfo3 *array; - } srvsvc_NetFileCtr3; - - typedef union { - [case(2)] srvsvc_NetFileInfo2 *info2; - [case(3)] srvsvc_NetFileInfo3 *info3; - [default] ; - } srvsvc_NetFileInfo; - - typedef union { - [case(2)] srvsvc_NetFileCtr2 *ctr2; - [case(3)] srvsvc_NetFileCtr3 *ctr3; - [default] ; - } srvsvc_NetFileCtr; - - /******************/ - /* Function: 0x09 */ - WERROR srvsvc_NetFileEnum( - [in] [string,charset(UTF16)] uint16 *server_unc, - [in] [string,charset(UTF16)] uint16 *path, - [in] [string,charset(UTF16)] uint16 *user, - [in,out,ref] uint32 *level, - [in,out,switch_is(level),ref] srvsvc_NetFileCtr *ctr, - [in] uint32 max_buffer, - [out,ref] uint32 *totalentries, - [in,out] uint32 *resume_handle - ); - - /******************/ - /* Function: 0x0a */ - WERROR srvsvc_NetFileGetInfo( - [in] [string,charset(UTF16)] uint16 *server_unc, - [in] uint32 fid, - [in] uint32 level, - [out,switch_is(level),ref] srvsvc_NetFileInfo *info - ); - - /******************/ - /* Function: 0x0b */ - WERROR srvsvc_NetFileClose( - [in] [string,charset(UTF16)] uint16 *server_unc, - [in] uint32 fid - ); - -/**************************/ -/* srvsvc_NetSess */ -/**************************/ - typedef [bitmap32bit] bitmap { - SESS_GUEST = 0x00000001, - SESS_NOENCRYPTION = 0x00000002 - } srvsvc_SessionUserFlags; - - typedef struct { - [string,charset(UTF16)] uint16 *client; - } srvsvc_NetSessInfo0; - - typedef struct { - uint32 count; - [size_is(count)] srvsvc_NetSessInfo0 *array; - } srvsvc_NetSessCtr0; - - typedef struct { - [string,charset(UTF16)] uint16 *client; - [string,charset(UTF16)] uint16 *user; - uint32 num_open; - uint32 time; - uint32 idle_time; - srvsvc_SessionUserFlags user_flags; - } srvsvc_NetSessInfo1; - - typedef struct { - uint32 count; - [size_is(count)] srvsvc_NetSessInfo1 *array; - } srvsvc_NetSessCtr1; - - typedef struct { - [string,charset(UTF16)] uint16 *client; - [string,charset(UTF16)] uint16 *user; - uint32 num_open; - uint32 time; - uint32 idle_time; - srvsvc_SessionUserFlags user_flags; - [string,charset(UTF16)] uint16 *client_type; - } srvsvc_NetSessInfo2; - - typedef struct { - uint32 count; - [size_is(count)] srvsvc_NetSessInfo2 *array; - } srvsvc_NetSessCtr2; - - typedef struct { - [string,charset(UTF16)] uint16 *client; - [string,charset(UTF16)] uint16 *user; - uint32 time; - uint32 idle_time; - } srvsvc_NetSessInfo10; - - typedef struct { - uint32 count; - [size_is(count)] srvsvc_NetSessInfo10 *array; - } srvsvc_NetSessCtr10; - - typedef struct { - [string,charset(UTF16)] uint16 *client; - [string,charset(UTF16)] uint16 *user; - uint32 num_open; - uint32 time; - uint32 idle_time; - srvsvc_SessionUserFlags user_flags; - [string,charset(UTF16)] uint16 *client_type; - [string,charset(UTF16)] uint16 *transport; - } srvsvc_NetSessInfo502; - - typedef struct { - uint32 count; - [size_is(count)] srvsvc_NetSessInfo502 *array; - } srvsvc_NetSessCtr502; - - typedef union { - [case(0)] srvsvc_NetSessCtr0 *ctr0; - [case(1)] srvsvc_NetSessCtr1 *ctr1; - [case(2)] srvsvc_NetSessCtr2 *ctr2; - [case(10)] srvsvc_NetSessCtr10 *ctr10; - [case(502)] srvsvc_NetSessCtr502 *ctr502; - [default] ; - } srvsvc_NetSessCtr; - - /******************/ - /* Function: 0x0c */ - WERROR srvsvc_NetSessEnum( - [in] [string,charset(UTF16)] uint16 *server_unc, - [in] [string,charset(UTF16)] uint16 *client, - [in] [string,charset(UTF16)] uint16 *user, - [in,out,ref] uint32 *level, - [in,out,switch_is(level),ref] srvsvc_NetSessCtr *ctr, - [in] uint32 max_buffer, - [out,ref] uint32 *totalentries, - [in,out] uint32 *resume_handle - ); - - /******************/ - /* Function: 0x0d */ - WERROR srvsvc_NetSessDel( - [in] [string,charset(UTF16)] uint16 *server_unc, - [in] [string,charset(UTF16)] uint16 *client, - [in] [string,charset(UTF16)] uint16 *user - ); - -/**************************/ -/* srvsvc_NetShare */ -/**************************/ - - /* share types */ - const uint32 STYPE_TEMPORARY = 0x40000000; /* share is a temporary one */ - const uint32 STYPE_HIDDEN = 0x80000000; /* share is a hidden one */ - - typedef [v1_enum, flag(NDR_PAHEX)] enum { - STYPE_DISKTREE = 0, - STYPE_DISKTREE_TEMPORARY = STYPE_DISKTREE|STYPE_TEMPORARY, - STYPE_DISKTREE_HIDDEN = STYPE_DISKTREE|STYPE_HIDDEN, - STYPE_PRINTQ = 1, - STYPE_PRINTQ_TEMPORARY = STYPE_PRINTQ|STYPE_TEMPORARY, - STYPE_PRINTQ_HIDDEN = STYPE_PRINTQ|STYPE_HIDDEN, - STYPE_DEVICE = 2, /* Serial device */ - STYPE_DEVICE_TEMPORARY = STYPE_DEVICE|STYPE_TEMPORARY, - STYPE_DEVICE_HIDDEN = STYPE_DEVICE|STYPE_HIDDEN, - STYPE_IPC = 3, /* Interprocess communication (IPC) */ - STYPE_IPC_TEMPORARY = STYPE_IPC|STYPE_TEMPORARY, - STYPE_IPC_HIDDEN = STYPE_IPC|STYPE_HIDDEN - } srvsvc_ShareType; - - typedef struct { - [string,charset(UTF16)] uint16 *name; - } srvsvc_NetShareInfo0; - - typedef struct { - [string,charset(UTF16)] uint16 *name; - srvsvc_ShareType type; - [string,charset(UTF16)] uint16 *comment; - } srvsvc_NetShareInfo1; - - typedef struct { - [string,charset(UTF16)] uint16 *name; - srvsvc_ShareType type; - [string,charset(UTF16)] uint16 *comment; - uint32 permissions; - uint32 max_users; - uint32 current_users; - [string,charset(UTF16)] uint16 *path; - [string,charset(UTF16)] uint16 *password; - } srvsvc_NetShareInfo2; - - typedef struct { - [string,charset(UTF16)] uint16 *name; - srvsvc_ShareType type; - [string,charset(UTF16)] uint16 *comment; - uint32 csc_policy; - } srvsvc_NetShareInfo501; - - typedef struct { - [string,charset(UTF16)] uint16 *name; - srvsvc_ShareType type; - [string,charset(UTF16)] uint16 *comment; - uint32 permissions; - int32 max_users; - uint32 current_users; - [string,charset(UTF16)] uint16 *path; - [string,charset(UTF16)] uint16 *password; - /* maybe here is a struct sec_desc_buf following */ - uint32 unknown; - [subcontext(4)] security_descriptor *sd; - } srvsvc_NetShareInfo502; - - typedef struct { - [string,charset(UTF16)] uint16 *comment; - } srvsvc_NetShareInfo1004; - - typedef struct { - int32 max_users; - } srvsvc_NetShareInfo1006; - - typedef [bitmap32bit] bitmap { - SHARE_1005_FLAGS_IN_DFS = 0x00000001, - SHARE_1005_FLAGS_DFS_ROOT = 0x00000002, - CSC_CACHE_AUTO_REINT = 0x00000010, - CSC_CACHE_VDO = 0x00000020, - FLAGS_RESTRICT_EXCLUSIVE_OPENS = 0x00000100, - FLAGS_FORCE_SHARED_DELETE = 0x00000200, - FLAGS_ALLOW_NAMESPACE_CACHING = 0x00000400, - FLAGS_ACCESS_BASED_DIRECTORY_ENUM = 0x00000800 - } srvsvc_DFSFlags; - - const uint32 SHARE_1005_CSC_POLICY_MASK = 0x00000030; - const uint32 SHARE_1005_CSC_POLICY_SHIFT = 4; - - typedef struct { - uint32 count; - [size_is(count)] srvsvc_NetShareInfo0 *array; - } srvsvc_NetShareCtr0; - - typedef struct { - uint32 count; - [size_is(count)] srvsvc_NetShareInfo1 *array; - } srvsvc_NetShareCtr1; - - typedef struct { - uint32 count; - [size_is(count)] srvsvc_NetShareInfo2 *array; - } srvsvc_NetShareCtr2; - - typedef struct { - uint32 count; - [size_is(count)] srvsvc_NetShareInfo501 *array; - } srvsvc_NetShareCtr501; - - typedef struct { - uint32 count; - [size_is(count)] srvsvc_NetShareInfo502 *array; - } srvsvc_NetShareCtr502; - - typedef struct { - uint32 count; - [size_is(count)] srvsvc_NetShareInfo1004 *array; - } srvsvc_NetShareCtr1004; - - typedef struct { - srvsvc_DFSFlags dfs_flags; - } srvsvc_NetShareInfo1005; - - typedef struct { - uint32 count; - [size_is(count)] srvsvc_NetShareInfo1005 *array; - } srvsvc_NetShareCtr1005; - - typedef struct { - uint32 count; - [size_is(count)] srvsvc_NetShareInfo1006 *array; - } srvsvc_NetShareCtr1006; - - typedef struct { - uint32 flags; - [string,charset(UTF16)] uint16 *alternate_directory_name; - } srvsvc_NetShareInfo1007; - - typedef struct { - uint32 count; - [size_is(count)] srvsvc_NetShareInfo1007 *array; - } srvsvc_NetShareCtr1007; - - typedef struct { - uint32 count; - [size_is(count)] sec_desc_buf *array; - } srvsvc_NetShareCtr1501; - - typedef union { - [case(0)] srvsvc_NetShareInfo0 *info0; - [case(1)] srvsvc_NetShareInfo1 *info1; - [case(2)] srvsvc_NetShareInfo2 *info2; - [case(501)] srvsvc_NetShareInfo501 *info501; - [case(502)] srvsvc_NetShareInfo502 *info502; - [case(1004)] srvsvc_NetShareInfo1004 *info1004; - [case(1005)] srvsvc_NetShareInfo1005 *info1005; - [case(1006)] srvsvc_NetShareInfo1006 *info1006; - [case(1007)] srvsvc_NetShareInfo1007 *info1007; - [case(1501)] sec_desc_buf *info1501; - [default] ; - } srvsvc_NetShareInfo; - - typedef union { - [case(0)] srvsvc_NetShareCtr0 *ctr0; - [case(1)] srvsvc_NetShareCtr1 *ctr1; - [case(2)] srvsvc_NetShareCtr2 *ctr2; - [case(501)] srvsvc_NetShareCtr501 *ctr501; - [case(502)] srvsvc_NetShareCtr502 *ctr502; - [case(1004)] srvsvc_NetShareCtr1004 *ctr1004; - [case(1005)] srvsvc_NetShareCtr1005 *ctr1005; - [case(1006)] srvsvc_NetShareCtr1006 *ctr1006; - [case(1007)] srvsvc_NetShareCtr1007 *ctr1007; - [case(1501)] srvsvc_NetShareCtr1501 *ctr1501; - [default] ; - } srvsvc_NetShareCtr; - - /******************/ - /* Function: 0x0e */ - WERROR srvsvc_NetShareAdd( - [in] [string,charset(UTF16)] uint16 *server_unc, - [in] uint32 level, - [in,switch_is(level)] srvsvc_NetShareInfo info, - [in,out] uint32 *parm_error - ); - - /******************/ - /* Function: 0x0f */ - WERROR srvsvc_NetShareEnumAll ( - [in] [string,charset(UTF16)] uint16 *server_unc, - [in,out,ref] uint32 *level, - [in,out,switch_is(level),ref] srvsvc_NetShareCtr *ctr, - [in] uint32 max_buffer, - [out,ref] uint32 *totalentries, - [in,out] uint32 *resume_handle - ); - - /******************/ - /* Function: 0x10 */ - WERROR srvsvc_NetShareGetInfo( - [in] [string,charset(UTF16)] uint16 *server_unc, - [in] [string,charset(UTF16)] uint16 share_name[], - [in] uint32 level, - [out,switch_is(level),ref] srvsvc_NetShareInfo *info - ); - - /******************/ - /* Function: 0x11 */ - WERROR srvsvc_NetShareSetInfo( - [in] [string,charset(UTF16)] uint16 *server_unc, - [in] [string,charset(UTF16)] uint16 share_name[], - [in] uint32 level, - [in,switch_is(level)] srvsvc_NetShareInfo info, - [in,out] uint32 *parm_error - ); - - /******************/ - /* Function: 0x12 */ - WERROR srvsvc_NetShareDel( - [in] [string,charset(UTF16)] uint16 *server_unc, - [in] [string,charset(UTF16)] uint16 share_name[], - [in] uint32 reserved - ); - - /******************/ - /* Function: 0x13 */ - WERROR srvsvc_NetShareDelSticky( - [in] [string,charset(UTF16)] uint16 *server_unc, - [in] [string,charset(UTF16)] uint16 share_name[], - [in] uint32 reserved - ); - - /******************/ - /* Function: 0x14 */ - WERROR srvsvc_NetShareCheck( - [in] [string,charset(UTF16)] uint16 *server_unc, - [in] [string,charset(UTF16)] uint16 device_name[], - [out,ref] srvsvc_ShareType *type - ); - -/**************************/ -/* srvsvc_NetSrv */ -/**************************/ - typedef [public,v1_enum] enum { - PLATFORM_ID_DOS = 300, - PLATFORM_ID_OS2 = 400, - PLATFORM_ID_NT = 500, - PLATFORM_ID_OSF = 600, - PLATFORM_ID_VMS = 700 - } srvsvc_PlatformId; - - typedef struct { - srvsvc_PlatformId platform_id; - [string,charset(UTF16)] uint16 *server_name; - } srvsvc_NetSrvInfo100; - - typedef struct { - srvsvc_PlatformId platform_id; - [string,charset(UTF16)] uint16 *server_name; - uint32 version_major; - uint32 version_minor; - svcctl_ServerType server_type; - [string,charset(UTF16)] uint16 *comment; - } srvsvc_NetSrvInfo101; - - typedef struct { - srvsvc_PlatformId platform_id; - [string,charset(UTF16)] uint16 *server_name; - uint32 version_major; - uint32 version_minor; - svcctl_ServerType server_type; - [string,charset(UTF16)] uint16 *comment; - uint32 users; - uint32 disc; - uint32 hidden; - uint32 announce; - uint32 anndelta; - uint32 licenses; - [string,charset(UTF16)] uint16 *userpath; - } srvsvc_NetSrvInfo102; - - typedef struct { - uint32 ulist_mtime; - uint32 glist_mtime; - uint32 alist_mtime; - [string,charset(UTF16)] uint16 *alerts; - uint32 security; - uint32 numadmin; - uint32 lanmask; - [string,charset(UTF16)] uint16 *guestaccount; - uint32 chdevs; - uint32 chdevqs; - uint32 chdevjobs; - uint32 connections; - uint32 shares; - uint32 openfiles; - uint32 sessopen; - uint32 sesssvc; - uint32 sessreqs; - uint32 opensearch; - uint32 activelocks; - uint32 sizereqbufs; - uint32 numbigbufs; - uint32 numfiletasks; - uint32 alertsched; - uint32 erroralert; - uint32 logonalert; - uint32 accessalert; - uint32 diskalert; - uint32 netioalert; - uint32 maxaudits; - [string,charset(UTF16)] uint16 *srvheuristics; - } srvsvc_NetSrvInfo402; - - typedef struct { - uint32 ulist_mtime; - uint32 glist_mtime; - uint32 alist_mtime; - [string,charset(UTF16)] uint16 *alerts; - uint32 security; - uint32 numadmin; - uint32 lanmask; - [string,charset(UTF16)] uint16 *guestaccount; - uint32 chdevs; - uint32 chdevqs; - uint32 chdevjobs; - uint32 connections; - uint32 shares; - uint32 openfiles; - uint32 sessopen; - uint32 sesssvc; - uint32 sessreqs; - uint32 opensearch; - uint32 activelocks; - uint32 sizereqbufs; - uint32 numbigbufs; - uint32 numfiletasks; - uint32 alertsched; - uint32 eroralert; - uint32 logonalert; - uint32 accessalert; - uint32 diskalert; - uint32 netioalert; - uint32 maxaudits; - [string,charset(UTF16)] uint16 *srvheuristics; - uint32 auditedevents; - uint32 auditprofile; - [string,charset(UTF16)] uint16 *autopath; - } srvsvc_NetSrvInfo403; - - typedef struct { - uint32 sessopen; - uint32 sesssvc; - uint32 opensearch; - uint32 sizereqbufs; - uint32 initworkitems; - uint32 maxworkitems; - uint32 rawworkitems; - uint32 irpstacksize; - uint32 maxrawbuflen; - uint32 sessusers; - uint32 sessconns; - uint32 maxpagedmemoryusage; - uint32 maxnonpagedmemoryusage; - uint32 enablesoftcompat; - uint32 enableforcedlogoff; - uint32 timesource; - uint32 acceptdownlevelapis; - uint32 lmannounce; - } srvsvc_NetSrvInfo502; - - typedef struct{ - uint32 sessopen; - uint32 sesssvc; - uint32 opensearch; - uint32 sizereqbufs; - uint32 initworkitems; - uint32 maxworkitems; - uint32 rawworkitems; - uint32 irpstacksize; - uint32 maxrawbuflen; - uint32 sessusers; - uint32 sessconns; - uint32 maxpagedmemoryusage; - uint32 maxnonpagedmemoryusage; - uint32 enablesoftcompat; - uint32 enableforcedlogoff; - uint32 timesource; - uint32 acceptdownlevelapis; - uint32 lmannounce; - [string,charset(UTF16)] uint16 *domain; - uint32 maxcopyreadlen; - uint32 maxcopywritelen; - uint32 minkeepsearch; - uint32 maxkeepsearch; - uint32 minkeepcomplsearch; - uint32 maxkeepcomplsearch; - uint32 threadcountadd; - uint32 numlockthreads; - uint32 scavtimeout; - uint32 minrcvqueue; - uint32 minfreeworkitems; - uint32 xactmemsize; - uint32 threadpriority; - uint32 maxmpxct; - uint32 oplockbreakwait; - uint32 oplockbreakresponsewait; - uint32 enableoplocks; - uint32 enableoplockforceclose; - uint32 enablefcbopens; - uint32 enableraw; - uint32 enablesharednetdrives; - uint32 minfreeconnections; - uint32 maxfreeconnections; - } srvsvc_NetSrvInfo503; - - typedef struct{ - uint32 sessopen; - uint32 sesssvc; - uint32 opensearch; - uint32 sizereqbufs; - uint32 initworkitems; - uint32 maxworkitems; - uint32 rawworkitems; - uint32 irpstacksize; - uint32 maxrawbuflen; - uint32 sessusers; - uint32 sessconns; - uint32 maxpagedmemoryusage; - uint32 maxnonpagedmemoryusage; - uint32 enablesoftcompat; - uint32 enableforcedlogoff; - uint32 timesource; - uint32 acceptdownlevelapis; - uint32 lmannounce; - [string,charset(UTF16)] uint16 *domain; - uint32 maxcopyreadlen; - uint32 maxcopywritelen; - uint32 minkeepsearch; - uint32 minkeepcomplsearch; - uint32 maxkeepcomplsearch; - uint32 threadcountadd; - uint32 numlockthreads; - uint32 scavtimeout; - uint32 minrcvqueue; - uint32 minfreeworkitems; - uint32 xactmemsize; - uint32 threadpriority; - uint32 maxmpxct; - uint32 oplockbreakwait; - uint32 oplockbreakresponsewait; - uint32 enableoplocks; - uint32 enableoplockforceclose; - uint32 enablefcbopens; - uint32 enableraw; - uint32 enablesharednetdrives; - uint32 minfreeconnections; - uint32 maxfreeconnections; - uint32 initsesstable; - uint32 initconntable; - uint32 initfiletable; - uint32 initsearchtable; - uint32 alertsched; - uint32 errortreshold; - uint32 networkerrortreshold; - uint32 diskspacetreshold; - uint32 reserved; - uint32 maxlinkdelay; - uint32 minlinkthroughput; - uint32 linkinfovalidtime; - uint32 scavqosinfoupdatetime; - uint32 maxworkitemidletime; - } srvsvc_NetSrvInfo599; - - typedef struct{ - [string,charset(UTF16)] uint16 *comment; - } srvsvc_NetSrvInfo1005; - - typedef struct{ - uint32 disc; - } srvsvc_NetSrvInfo1010; - - typedef struct{ - uint32 hidden; - } srvsvc_NetSrvInfo1016; - - typedef struct{ - uint32 announce; - } srvsvc_NetSrvInfo1017; - - typedef struct{ - uint32 anndelta; - } srvsvc_NetSrvInfo1018; - - typedef struct{ - uint32 users; - } srvsvc_NetSrvInfo1107; - - typedef struct{ - uint32 sessopens; - } srvsvc_NetSrvInfo1501; - - typedef struct{ - uint32 sessvcs; - } srvsvc_NetSrvInfo1502; - - typedef struct{ - uint32 opensearch; - } srvsvc_NetSrvInfo1503; - - typedef struct{ - uint32 maxworkitems; - } srvsvc_NetSrvInfo1506; - - typedef struct{ - uint32 maxrawbuflen; - } srvsvc_NetSrvInfo1509; - - typedef struct{ - uint32 sessusers; - } srvsvc_NetSrvInfo1510; - - typedef struct{ - uint32 sesscons; - } srvsvc_NetSrvInfo1511; - - typedef struct{ - uint32 maxnonpagedmemoryusage; - } srvsvc_NetSrvInfo1512; - - typedef struct{ - uint32 maxpagedmemoryusage; - } srvsvc_NetSrvInfo1513; - - typedef struct{ - uint32 enablesoftcompat; - } srvsvc_NetSrvInfo1514; - - typedef struct{ - uint32 enableforcedlogoff; - } srvsvc_NetSrvInfo1515; - - typedef struct{ - uint32 timesource; - } srvsvc_NetSrvInfo1516; - - typedef struct{ - uint32 lmannounce; - } srvsvc_NetSrvInfo1518; - - typedef struct{ - uint32 maxcopyreadlen; - } srvsvc_NetSrvInfo1520; - - typedef struct{ - uint32 maxcopywritelen; - } srvsvc_NetSrvInfo1521; - - typedef struct{ - uint32 minkeepsearch; - } srvsvc_NetSrvInfo1522; - - typedef struct{ - uint32 maxkeepsearch; - } srvsvc_NetSrvInfo1523; - - typedef struct{ - uint32 minkeepcomplsearch; - } srvsvc_NetSrvInfo1524; - - typedef struct{ - uint32 maxkeepcomplsearch; - } srvsvc_NetSrvInfo1525; - - typedef struct{ - uint32 scavtimeout; - } srvsvc_NetSrvInfo1528; - - typedef struct{ - uint32 minrcvqueue; - } srvsvc_NetSrvInfo1529; - - typedef struct{ - uint32 minfreeworkitems; - } srvsvc_NetSrvInfo1530; - - typedef struct{ - uint32 maxmpxct; - } srvsvc_NetSrvInfo1533; - - typedef struct{ - uint32 oplockbreakwait; - } srvsvc_NetSrvInfo1534; - - typedef struct{ - uint32 oplockbreakresponsewait; - } srvsvc_NetSrvInfo1535; - - typedef struct{ - uint32 enableoplocks; - } srvsvc_NetSrvInfo1536; - - typedef struct{ - uint32 enableoplockforceclose; - } srvsvc_NetSrvInfo1537; - - typedef struct{ - uint32 enablefcbopens; - } srvsvc_NetSrvInfo1538; - - typedef struct{ - uint32 enableraw; - } srvsvc_NetSrvInfo1539; - - typedef struct{ - uint32 enablesharednetdrives; - } srvsvc_NetSrvInfo1540; - - typedef struct{ - uint32 minfreeconnections; - } srvsvc_NetSrvInfo1541; - - typedef struct{ - uint32 maxfreeconnections; - } srvsvc_NetSrvInfo1542; - - typedef struct{ - uint32 initsesstable; - } srvsvc_NetSrvInfo1543; - - typedef struct{ - uint32 initconntable; - } srvsvc_NetSrvInfo1544; - - typedef struct{ - uint32 initfiletable; - } srvsvc_NetSrvInfo1545; - - typedef struct{ - uint32 initsearchtable; - } srvsvc_NetSrvInfo1546; - - typedef struct{ - uint32 alertsched; - } srvsvc_NetSrvInfo1547; - - typedef struct{ - uint32 errortreshold; - } srvsvc_NetSrvInfo1548; - - typedef struct{ - uint32 networkerrortreshold; - } srvsvc_NetSrvInfo1549; - - typedef struct{ - uint32 diskspacetreshold; - } srvsvc_NetSrvInfo1550; - - typedef struct{ - uint32 maxlinkdelay; - } srvsvc_NetSrvInfo1552; - - typedef struct{ - uint32 minlinkthroughput; - } srvsvc_NetSrvInfo1553; - - typedef struct{ - uint32 linkinfovalidtime; - } srvsvc_NetSrvInfo1554; - - typedef struct{ - uint32 scavqosinfoupdatetime; - } srvsvc_NetSrvInfo1555; - - typedef struct{ - uint32 maxworkitemidletime; - } srvsvc_NetSrvInfo1556; - - - typedef union{ - [case(100)] srvsvc_NetSrvInfo100 *info100; - [case(101)] srvsvc_NetSrvInfo101 *info101; - [case(102)] srvsvc_NetSrvInfo102 *info102; - [case(402)] srvsvc_NetSrvInfo402 *info402; - [case(403)] srvsvc_NetSrvInfo403 *info403; - [case(502)] srvsvc_NetSrvInfo502 *info502; - [case(503)] srvsvc_NetSrvInfo503 *info503; - [case(599)] srvsvc_NetSrvInfo599 *info599; - [case(1005)] srvsvc_NetSrvInfo1005 *info1005; - [case(1010)] srvsvc_NetSrvInfo1010 *info1010; - [case(1016)] srvsvc_NetSrvInfo1016 *info1016; - [case(1017)] srvsvc_NetSrvInfo1017 *info1017; - [case(1018)] srvsvc_NetSrvInfo1018 *info1018; - [case(1107)] srvsvc_NetSrvInfo1107 *info1107; - [case(1501)] srvsvc_NetSrvInfo1501 *info1501; - [case(1502)] srvsvc_NetSrvInfo1502 *info1502; - [case(1503)] srvsvc_NetSrvInfo1503 *info1503; - [case(1506)] srvsvc_NetSrvInfo1506 *info1506; - [case(1509)] srvsvc_NetSrvInfo1509 *info1509; - [case(1510)] srvsvc_NetSrvInfo1510 *info1510; - [case(1511)] srvsvc_NetSrvInfo1511 *info1511; - [case(1512)] srvsvc_NetSrvInfo1512 *info1512; - [case(1513)] srvsvc_NetSrvInfo1513 *info1513; - [case(1514)] srvsvc_NetSrvInfo1514 *info1514; - [case(1515)] srvsvc_NetSrvInfo1515 *info1515; - [case(1516)] srvsvc_NetSrvInfo1516 *info1516; - [case(1518)] srvsvc_NetSrvInfo1518 *info1518; - [case(1520)] srvsvc_NetSrvInfo1520 *info1520; - [case(1521)] srvsvc_NetSrvInfo1521 *info1521; - [case(1522)] srvsvc_NetSrvInfo1522 *info1522; - [case(1523)] srvsvc_NetSrvInfo1523 *info1523; - [case(1524)] srvsvc_NetSrvInfo1524 *info1524; - [case(1525)] srvsvc_NetSrvInfo1525 *info1525; - [case(1528)] srvsvc_NetSrvInfo1528 *info1528; - [case(1529)] srvsvc_NetSrvInfo1529 *info1529; - [case(1530)] srvsvc_NetSrvInfo1530 *info1530; - [case(1533)] srvsvc_NetSrvInfo1533 *info1533; - [case(1534)] srvsvc_NetSrvInfo1534 *info1534; - [case(1535)] srvsvc_NetSrvInfo1535 *info1535; - [case(1536)] srvsvc_NetSrvInfo1536 *info1536; - [case(1537)] srvsvc_NetSrvInfo1537 *info1537; - [case(1538)] srvsvc_NetSrvInfo1538 *info1538; - [case(1539)] srvsvc_NetSrvInfo1539 *info1539; - [case(1540)] srvsvc_NetSrvInfo1540 *info1540; - [case(1541)] srvsvc_NetSrvInfo1541 *info1541; - [case(1542)] srvsvc_NetSrvInfo1542 *info1542; - [case(1543)] srvsvc_NetSrvInfo1543 *info1543; - [case(1544)] srvsvc_NetSrvInfo1544 *info1544; - [case(1545)] srvsvc_NetSrvInfo1545 *info1545; - [case(1546)] srvsvc_NetSrvInfo1546 *info1546; - [case(1547)] srvsvc_NetSrvInfo1547 *info1547; - [case(1548)] srvsvc_NetSrvInfo1548 *info1548; - [case(1549)] srvsvc_NetSrvInfo1549 *info1549; - [case(1550)] srvsvc_NetSrvInfo1550 *info1550; - [case(1552)] srvsvc_NetSrvInfo1552 *info1552; - [case(1553)] srvsvc_NetSrvInfo1553 *info1553; - [case(1554)] srvsvc_NetSrvInfo1554 *info1554; - [case(1555)] srvsvc_NetSrvInfo1555 *info1555; - [case(1556)] srvsvc_NetSrvInfo1556 *info1556; - [default]; - } srvsvc_NetSrvInfo; - - /******************/ - /* Function: 0x15 */ - WERROR srvsvc_NetSrvGetInfo( - [in] [string,charset(UTF16)] uint16 *server_unc, - [in] uint32 level, - [out,switch_is(level),ref] srvsvc_NetSrvInfo *info - ); - - /******************/ - /* Function: 0x16 */ - WERROR srvsvc_NetSrvSetInfo( - [in] [string,charset(UTF16)] uint16 *server_unc, - [in] uint32 level, - [in,switch_is(level)] srvsvc_NetSrvInfo info, - [in,out] uint32 *parm_error - ); - -/**************************/ -/* srvsvc_NetDisk */ -/**************************/ - typedef struct { - [flag(STR_LEN4)] string disk; - } srvsvc_NetDiskInfo0; - - typedef struct { - uint32 count; - [size_is(count), length_is(count)] srvsvc_NetDiskInfo0 *disks; - } srvsvc_NetDiskInfo; - - /******************/ - /* Function: 0x17 */ - WERROR srvsvc_NetDiskEnum( - [in] [string,charset(UTF16)] uint16 *server_unc, - [in] uint32 level, - [in,out,ref] srvsvc_NetDiskInfo *info, - [in] uint32 maxlen, - [out,ref] uint32 *totalentries, - [in,out] uint32 *resume_handle - ); - -/**************************/ -/* srvsvc_NetStatistics */ -/**************************/ - typedef struct { - uint32 start; - uint32 fopens; - uint32 devopens; - uint32 jobsqueued; - uint32 sopens; - uint32 stimeouts; - uint32 serrorout; - uint32 pwerrors; - uint32 permerrors; - uint32 syserrors; - uint32 bytessent_low; - uint32 bytessent_high; - uint32 bytesrcvd_low; - uint32 bytesrcvd_high; - uint32 avresponse; - uint32 reqbufneed; - uint32 bigbufneed; - } srvsvc_Statistics; - - /******************/ - /* Function: 0x18 */ - WERROR srvsvc_NetServerStatisticsGet( - [in] [string,charset(UTF16)] uint16 *server_unc, - [in] [string,charset(UTF16)] uint16 *service, - [in] uint32 level, - [in] uint32 options, - [out,ref] srvsvc_Statistics *stat - ); - -/**************************/ -/* srvsvc_NetTransport */ -/**************************/ - typedef struct { - uint32 vcs; - [string,charset(UTF16)] uint16 *name; - [size_is(addr_len)] uint8 *addr; - uint32 addr_len; - [string,charset(UTF16)] uint16 *net_addr; - } srvsvc_NetTransportInfo0; - - /******************/ - /* Function: 0x19 */ - WERROR srvsvc_NetTransportAdd( - [in] [string,charset(UTF16)] uint16 *server_unc, - [in] uint32 level, - [in,switch_is(level)] srvsvc_NetTransportInfo info - ); - - typedef struct { - uint32 count; - [size_is(count)] srvsvc_NetTransportInfo0 *array; - } srvsvc_NetTransportCtr0; - - typedef struct { - uint32 vcs; - [string,charset(UTF16)] uint16 *name; - [size_is(addr_len)] uint8 *addr; - uint32 addr_len; - [string,charset(UTF16)] uint16 *net_addr; - [string,charset(UTF16)] uint16 *domain; - } srvsvc_NetTransportInfo1; - - typedef struct { - uint32 count; - [size_is(count)] srvsvc_NetTransportInfo1 *array; - } srvsvc_NetTransportCtr1; - - typedef [bitmap32bit] bitmap { - SVTI2_REMAP_PIPE_NAMES = 0x00000001 - } srvsvc_TransportFlags; - - - typedef struct { - uint32 vcs; - [string,charset(UTF16)] uint16 *name; - [size_is(addr_len)] uint8 *addr; - uint32 addr_len; - [string,charset(UTF16)] uint16 *net_addr; - [string,charset(UTF16)] uint16 *domain; - srvsvc_TransportFlags transport_flags; - } srvsvc_NetTransportInfo2; - - typedef struct { - uint32 count; - [size_is(count)] srvsvc_NetTransportInfo2 *array; - } srvsvc_NetTransportCtr2; - - typedef struct { - uint32 vcs; - [string,charset(UTF16)] uint16 *name; - [size_is(addr_len)] uint8 *addr; - uint32 addr_len; - [string,charset(UTF16)] uint16 *net_addr; - [string,charset(UTF16)] uint16 *domain; - srvsvc_TransportFlags transport_flags; - uint32 password_len; - uint8 password[256]; - } srvsvc_NetTransportInfo3; - - typedef struct { - uint32 count; - [size_is(count)] srvsvc_NetTransportInfo3 *array; - } srvsvc_NetTransportCtr3; - - typedef union { - [case(0)] srvsvc_NetTransportCtr0 *ctr0; - [case(1)] srvsvc_NetTransportCtr1 *ctr1; - [case(2)] srvsvc_NetTransportCtr2 *ctr2; - [case(3)] srvsvc_NetTransportCtr3 *ctr3; - [default]; - } srvsvc_NetTransportCtr; - - /******************/ - /* Function: 0x1a */ - WERROR srvsvc_NetTransportEnum( - [in] [string,charset(UTF16)] uint16 *server_unc, - [in,out,ref] uint32 *level, - [in,out,switch_is(level),ref] srvsvc_NetTransportCtr *transports, - [in] uint32 max_buffer, - [out,ref] uint32 *totalentries, - [in,out] uint32 *resume_handle - ); - - /******************/ - /* Function: 0x1b */ - WERROR srvsvc_NetTransportDel( - [in] [string,charset(UTF16)] uint16 *server_unc, - [in] uint32 unknown, - [in] srvsvc_NetTransportInfo0 transport - ); - -/**************************/ -/* srvsvc_NetRemoteTOD */ -/**************************/ - typedef struct { - uint32 elapsed; /* time(NULL) */ - uint32 msecs; /* milliseconds till system reboot (uptime) */ - uint32 hours; - uint32 mins; - uint32 secs; - uint32 hunds; - int32 timezone; /* in minutes */ - uint32 tinterval; /* clock tick interval in 0.0001 second units; 310 on windows */ - uint32 day; - uint32 month; - uint32 year; - uint32 weekday; - } srvsvc_NetRemoteTODInfo; - - /******************/ - /* Function: 0x1c */ - WERROR srvsvc_NetRemoteTOD( - [in] [string,charset(UTF16)] uint16 *server_unc, - [out,unique] srvsvc_NetRemoteTODInfo *info - ); - -/**************************/ -/* srvsvc_NetServiceBits */ -/**************************/ - /******************/ - /* Function: 0x1d */ - WERROR srvsvc_NetSetServiceBits( - [in] [string,charset(UTF16)] uint16 *server_unc, - [in] [string,charset(UTF16)] uint16 *transport, - [in] uint32 servicebits, - [in] uint32 updateimmediately - ); - -/**************************/ -/* srvsvc_NetPath */ -/**************************/ - /******************/ - /* Function: 0x1e */ - WERROR srvsvc_NetPathType( - [in] [string,charset(UTF16)] uint16 *server_unc, - [in] [string,charset(UTF16)] uint16 path[], - [in] uint32 pathflags, - [out,ref] uint32 *pathtype - ); - - /******************/ - /* Function: 0x1f */ - WERROR srvsvc_NetPathCanonicalize( - [in] [string,charset(UTF16)] uint16 *server_unc, - [in] [string,charset(UTF16)] uint16 path[], - [out] [size_is(maxbuf)] uint8 can_path[], - [in] uint32 maxbuf, - [in] [string,charset(UTF16)] uint16 prefix[], - [in,out,ref] uint32 *pathtype, - [in] uint32 pathflags - ); - - /******************/ - /* Function: 0x20 */ - WERROR srvsvc_NetPathCompare( - [in] [string,charset(UTF16)] uint16 *server_unc, - [in] [string,charset(UTF16)] uint16 path1[], - [in] [string,charset(UTF16)] uint16 path2[], - [in] uint32 pathtype, - [in] uint32 pathflags - ); - -/**************************/ -/* srvsvc_NetName */ -/**************************/ - /******************/ - /* Function: 0x21 */ - WERROR srvsvc_NetNameValidate( - [in] [string,charset(UTF16)] uint16 *server_unc, - [in] [string,charset(UTF16)] uint16 name[], - [in] uint32 name_type, - [in] uint32 flags - ); - - /******************/ - /* Function: 0x22 */ - WERROR srvsvc_NETRPRNAMECANONICALIZE( - ); - - /******************/ - /* Function: 0x23 */ - WERROR srvsvc_NetPRNameCompare( - [in] [string,charset(UTF16)] uint16 *server_unc, - [in] [string,charset(UTF16)] uint16 name1[], - [in] [string,charset(UTF16)] uint16 name2[], - [in] uint32 name_type, - [in] uint32 flags - ); - -/**************************/ -/* srvsvc_NetShare ... */ -/**************************/ - /******************/ - /* Function: 0x24 */ - /* Note, there must be some way to return entries read vs - total entries ... */ - WERROR srvsvc_NetShareEnum( - [in] [string,charset(UTF16)] uint16 *server_unc, - [in,out,ref] uint32 *level, - [in,out,switch_is(level),ref] srvsvc_NetShareCtr *ctr, - [in] uint32 max_buffer, - [out,ref] uint32 *totalentries, - [in,out] uint32 *resume_handle - ); - - /******************/ - /* Function: 0x25 */ - WERROR srvsvc_NetShareDelStart( - [in] [string,charset(UTF16)] uint16 *server_unc, - [in] [string,charset(UTF16)] uint16 share[], - [in] uint32 reserved, - [out,unique] policy_handle *hnd - ); - - /******************/ - /* Function: 0x26 */ - WERROR srvsvc_NetShareDelCommit( - [in, out] policy_handle *hnd - ); - - /******************/ - /* Function: 0x27 */ - WERROR srvsvc_NetGetFileSecurity( - [in] [string,charset(UTF16)] uint16 *server_unc, - [in] [string,charset(UTF16)] uint16 *share, - [in] [string,charset(UTF16)] uint16 file[], - [in] security_secinfo securityinformation, - [out,unique] sec_desc_buf *sd_buf - ); - - /******************/ - /* Function: 0x28 */ - WERROR srvsvc_NetSetFileSecurity( - [in] [string,charset(UTF16)] uint16 *server_unc, - [in] [string,charset(UTF16)] uint16 *share, - [in] [string,charset(UTF16)] uint16 file[], - [in] security_secinfo securityinformation, - [in] sec_desc_buf sd_buf - ); - - - - typedef [switch_type(uint32)] union { - [case(0)] srvsvc_NetTransportInfo0 info0; - [case(1)] srvsvc_NetTransportInfo1 info1; - [case(2)] srvsvc_NetTransportInfo2 info2; - [case(3)] srvsvc_NetTransportInfo3 info3; - } srvsvc_NetTransportInfo; - - /******************/ - /* Function: 0x29 */ - WERROR srvsvc_NetServerTransportAddEx( - [in] [string,charset(UTF16)] uint16 *server_unc, - [in] uint32 level, - [in,switch_is(level)] srvsvc_NetTransportInfo info - ); - - /******************/ - /* Function: 0x2a */ - WERROR srvsvc_NetServerSetServiceBitsEx( - [in] [string,charset(UTF16)] uint16 *server_unc, - [in] [string,charset(UTF16)] uint16 *emulated_server_unc, - [in] [string,charset(UTF16)] uint16 *transport, - [in] uint32 servicebitsofinterest, - [in] uint32 servicebits, - [in] uint32 updateimmediately - ); - - /******************/ - /* Function: 0x2b */ - WERROR srvsvc_NETRDFSGETVERSION( - ); - - /******************/ - /* Function: 0x2c */ - WERROR srvsvc_NETRDFSCREATELOCALPARTITION( - ); - - /******************/ - /* Function: 0x2d */ - WERROR srvsvc_NETRDFSDELETELOCALPARTITION( - ); - - /******************/ - /* Function: 0x2e */ - WERROR srvsvc_NETRDFSSETLOCALVOLUMESTATE( - ); - - /******************/ - /* Function: 0x2f */ - WERROR srvsvc_NETRDFSSETSERVERINFO( - ); - - /******************/ - /* Function: 0x30 */ - WERROR srvsvc_NETRDFSCREATEEXITPOINT( - ); - - /******************/ - /* Function: 0x31 */ - WERROR srvsvc_NETRDFSDELETEEXITPOINT( - ); - - /******************/ - /* Function: 0x32 */ - WERROR srvsvc_NETRDFSMODIFYPREFIX( - ); - - /******************/ - /* Function: 0x33 */ - WERROR srvsvc_NETRDFSFIXLOCALVOLUME( - ); - - /******************/ - /* Function: 0x34 */ - WERROR srvsvc_NETRDFSMANAGERREPORTSITEINFO( - ); - - /******************/ - /* Function: 0x35 */ - WERROR srvsvc_NETRSERVERTRANSPORTDELEX( - ); -} diff --git a/epan/dissectors/pidl/srvsvc/srvsvc.cnf b/epan/dissectors/pidl/srvsvc/srvsvc.cnf new file mode 100644 index 0000000000..ed7c719574 --- /dev/null +++ b/epan/dissectors/pidl/srvsvc/srvsvc.cnf @@ -0,0 +1,138 @@ +# conformance file for SRVSVC +# + +MANUAL srvsvc_dissect_element_NetShareInfo_info1501_ +MANUAL srvsvc_dissect_element_NetGetFileSecurity_sd_buf_ +MANUAL srvsvc_dissect_element_NetSetFileSecurity_sd_buf +MANUAL srvsvc_dissect_element_NetShareCtr1501_array__ +MANUAL srvsvc_dissect_element_NetShareInfo502_sd_ +# we wont need to manually define servertype once svcctl is autogenerated +MANUAL srvsvc_dissect_element_NetSrvInfo101_server_type +MANUAL srvsvc_dissect_element_NetSrvInfo102_server_type +# until we get secinfo +MANUAL srvsvc_dissect_element_NetGetFileSecurity_securityinformation +MANUAL srvsvc_dissect_element_NetSetFileSecurity_securityinformation + +HF_FIELD hf_srvsvc_sec_desc_buf_len "Sec Desc Buf Len" "srvsvc.sec_desc_buf_len" FT_UINT32 BASE_DEC NULL 0 "" "" "" + + +# +# +# Prettifications +PARAM_VALUE srvsvc_dissect_element_NetCharDevEnum_server_unc_ 1|PIDL_SET_COL_INFO +PARAM_VALUE srvsvc_dissect_element_NetCharDevEnum_level_ PIDL_SET_COL_INFO + +PARAM_VALUE srvsvc_dissect_element_NetCharDevQEnum_server_unc_ 1|PIDL_SET_COL_INFO +PARAM_VALUE srvsvc_dissect_element_NetCharDevQEnum_user_ 1|PIDL_SET_COL_INFO +PARAM_VALUE srvsvc_dissect_element_NetCharDevQEnum_level_ PIDL_SET_COL_INFO + +PARAM_VALUE srvsvc_dissect_element_NetConnEnum_server_unc_ 1|PIDL_SET_COL_INFO +PARAM_VALUE srvsvc_dissect_element_NetConnEnum_path_ 1|PIDL_SET_COL_INFO +PARAM_VALUE srvsvc_dissect_element_NetConnEnum_level_ PIDL_SET_COL_INFO + +PARAM_VALUE srvsvc_dissect_element_NetFileEnum_server_unc_ 1|PIDL_SET_COL_INFO +PARAM_VALUE srvsvc_dissect_element_NetFileEnum_level_ PIDL_SET_COL_INFO + + +CODE START + #include "packet-smb.h" + #include "packet-smb-browse.h" + +static int +srvsvc_dissect_sec_desc_buf(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep) +{ + guint32 len; + + if(di->conformant_run){ + /*just a run to handle conformant arrays, nothing to dissect */ + return offset; + } + + offset = dissect_ndr_uint32 (tvb, offset, pinfo, tree, di, drep, + hf_srvsvc_sec_desc_buf_len, &len); + + dissect_nt_sec_desc(tvb, offset, pinfo, tree, drep, TRUE, len, + NULL); + + offset += len; + + return offset; +} +static int +srvsvc_dissect_element_NetShareInfo_info1501_(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep) +{ + return srvsvc_dissect_sec_desc_buf(tvb, offset, pinfo, tree, di, drep); +} +static int +srvsvc_dissect_element_NetGetFileSecurity_sd_buf_(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep) +{ + return srvsvc_dissect_sec_desc_buf(tvb, offset, pinfo, tree, di, drep); +} +static int +srvsvc_dissect_element_NetSetFileSecurity_sd_buf(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep) +{ + return srvsvc_dissect_sec_desc_buf(tvb, offset, pinfo, tree, di, drep); +} +static int +srvsvc_dissect_element_NetShareCtr1501_array__(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep) +{ + return srvsvc_dissect_sec_desc_buf(tvb, offset, pinfo, tree, di, drep); +} +static int +srvsvc_dissect_element_NetShareInfo502_sd_(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep) +{ + return srvsvc_dissect_sec_desc_buf(tvb, offset, pinfo, tree, di, drep); +} + + + +static int +srvsvc_dissect_ServerType(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep) +{ + if(di->conformant_run){ + /*just a run to handle conformant arrays, nothing to dissect */ + return offset; + } + + offset=dissect_smb_server_type_flags(tvb, offset, pinfo, tree, + drep, 0); + + return offset; +} +static int +srvsvc_dissect_element_NetSrvInfo101_server_type(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep) +{ + return srvsvc_dissect_ServerType(tvb, offset, pinfo, tree, di, drep); +} +static int +srvsvc_dissect_element_NetSrvInfo102_server_type(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep) +{ + return srvsvc_dissect_ServerType(tvb, offset, pinfo, tree, di, drep); +} + + +static int +srvsvc_dissect_secinfo(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, dcerpc_info* di, guint8 *drep _U_) +{ + if(di->conformant_run){ + /*just a run to handle conformant arrays, nothing to dissect */ + return offset; + } + + offset=dissect_security_information_mask(tvb, tree, offset); + + return offset; +} +static int +srvsvc_dissect_element_NetGetFileSecurity_securityinformation(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep) +{ + return srvsvc_dissect_secinfo(tvb, offset, pinfo, tree, di, drep); +} +static int +srvsvc_dissect_element_NetSetFileSecurity_securityinformation(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep) +{ + return srvsvc_dissect_secinfo(tvb, offset, pinfo, tree, di, drep); +} + +CODE END + diff --git a/epan/dissectors/pidl/srvsvc/srvsvc.idl b/epan/dissectors/pidl/srvsvc/srvsvc.idl new file mode 100644 index 0000000000..a474f1f781 --- /dev/null +++ b/epan/dissectors/pidl/srvsvc/srvsvc.idl @@ -0,0 +1,1528 @@ +#include "idl_types.h" + +/*import "security.idl", "svcctl.idl";*/ + +/* + srvsvc interface definitions +*/ + +[ uuid("4b324fc8-1670-01d3-1278-5a47bf6ee188"), + version(3.0), + endpoint("ncacn_np:[\\pipe\\srvsvc]", "ncacn_ip_tcp:", "ncalrpc:"), + pointer_default(unique), + pointer_default_top(unique), + helpstring("Server Service") +] interface srvsvc +{ + typedef bitmap svcctl_ServerType svcctl_ServerType; + typedef bitmap security_secinfo security_secinfo; + +/**************************/ +/* srvsvc_NetCharDev */ +/**************************/ + typedef struct { + [string,charset(UTF16)] uint16 *device; + } srvsvc_NetCharDevInfo0; + + typedef struct { + uint32 count; + [size_is(count)] srvsvc_NetCharDevInfo0 *array; + } srvsvc_NetCharDevCtr0; + + typedef struct { + [string,charset(UTF16)] uint16 *device; + uint32 status; + [string,charset(UTF16)] uint16 *user; + uint32 time; + } srvsvc_NetCharDevInfo1; + + typedef struct { + uint32 count; + [size_is(count)] srvsvc_NetCharDevInfo1 *array; + } srvsvc_NetCharDevCtr1; + + typedef union { + [case(0)] srvsvc_NetCharDevInfo0 *info0; + [case(1)] srvsvc_NetCharDevInfo1 *info1; + [default] ; + } srvsvc_NetCharDevInfo; + + typedef union { + [case(0)] srvsvc_NetCharDevCtr0 *ctr0; + [case(1)] srvsvc_NetCharDevCtr1 *ctr1; + [default] ; + } srvsvc_NetCharDevCtr; + + /******************/ + /* Function: 0x00 */ + WERROR srvsvc_NetCharDevEnum( + [in] [string,charset(UTF16)] uint16 *server_unc, + [in,out,ref] uint32 *level, + [in,out,switch_is(level),ref] srvsvc_NetCharDevCtr *ctr, + [in] uint32 max_buffer, + [out,ref] uint32 *totalentries, + [in,out] uint32 *resume_handle + ); + + /******************/ + /* Function: 0x01 */ + WERROR srvsvc_NetCharDevGetInfo( + [in] [string,charset(UTF16)] uint16 *server_unc, + [in] [string,charset(UTF16)] uint16 device_name[], + [in] uint32 level, + [out,switch_is(level),ref] srvsvc_NetCharDevInfo *info + ); + + /******************/ + /* Function: 0x02 */ + WERROR srvsvc_NetCharDevControl( + [in] [string,charset(UTF16)] uint16 *server_unc, + [in] [string,charset(UTF16)] uint16 device_name[], + [in] uint32 opcode + ); + +/**************************/ +/* srvsvc_NetCharDevQ */ +/**************************/ + typedef struct { + [string,charset(UTF16)] uint16 *device; + } srvsvc_NetCharDevQInfo0; + + typedef struct { + uint32 count; + [size_is(count)] srvsvc_NetCharDevQInfo0 *array; + } srvsvc_NetCharDevQCtr0; + + typedef struct { + [string,charset(UTF16)] uint16 *device; + uint32 priority; + [string,charset(UTF16)] uint16 *devices; + uint32 users; + uint32 num_ahead; + } srvsvc_NetCharDevQInfo1; + + typedef struct { + uint32 count; + [size_is(count)] srvsvc_NetCharDevQInfo1 *array; + } srvsvc_NetCharDevQCtr1; + + typedef union { + [case(0)] srvsvc_NetCharDevQInfo0 *info0; + [case(1)] srvsvc_NetCharDevQInfo1 *info1; + [default] ; + } srvsvc_NetCharDevQInfo; + + typedef union { + [case(0)] srvsvc_NetCharDevQCtr0 *ctr0; + [case(1)] srvsvc_NetCharDevQCtr1 *ctr1; + [default] ; + } srvsvc_NetCharDevQCtr; + + /******************/ + /* Function: 0x03 */ + WERROR srvsvc_NetCharDevQEnum( + [in] [string,charset(UTF16)] uint16 *server_unc, + [in] [string,charset(UTF16)] uint16 *user, + [in,out,ref] uint32 *level, + [in,out,switch_is(level),ref] srvsvc_NetCharDevQCtr *ctr, + [in] uint32 max_buffer, + [out,ref] uint32 *totalentries, + [in,out] uint32 *resume_handle + ); + + /******************/ + /* Function: 0x04 */ + WERROR srvsvc_NetCharDevQGetInfo( + [in] [string,charset(UTF16)] uint16 *server_unc, + [in] [string,charset(UTF16)] uint16 queue_name[], + [in] [string,charset(UTF16)] uint16 user[], + [in] uint32 level, + [out,switch_is(level),ref] srvsvc_NetCharDevQInfo *info + ); + + /******************/ + /* Function: 0x05 */ + WERROR srvsvc_NetCharDevQSetInfo( + [in] [string,charset(UTF16)] uint16 *server_unc, + [in] [string,charset(UTF16)] uint16 queue_name[], + [in] uint32 level, + [in,switch_is(level)] srvsvc_NetCharDevQInfo info, + [in,out] uint32 *parm_error + ); + + /******************/ + /* Function: 0x06 */ + WERROR srvsvc_NetCharDevQPurge( + [in] [string,charset(UTF16)] uint16 *server_unc, + [in] [string,charset(UTF16)] uint16 queue_name[] + ); + + /******************/ + /* Function: 0x07 */ + WERROR srvsvc_NetCharDevQPurgeSelf( + [in] [string,charset(UTF16)] uint16 *server_unc, + [in] [string,charset(UTF16)] uint16 queue_name[], + [in] [string,charset(UTF16)] uint16 computer_name[] + ); + +/**************************/ +/* srvsvc_NetConn */ +/**************************/ + typedef struct { + uint32 conn_id; + } srvsvc_NetConnInfo0; + + typedef struct { + uint32 count; + [size_is(count)] srvsvc_NetConnInfo0 *array; + } srvsvc_NetConnCtr0; + + typedef struct { + uint32 conn_id; + uint32 conn_type; + uint32 num_open; + uint32 num_users; + uint32 conn_time; + [string,charset(UTF16)] uint16 *user; + [string,charset(UTF16)] uint16 *share; + } srvsvc_NetConnInfo1; + + typedef struct { + uint32 count; + [size_is(count)] srvsvc_NetConnInfo1 *array; + } srvsvc_NetConnCtr1; + + typedef union { + [case(0)] srvsvc_NetConnCtr0 *ctr0; + [case(1)] srvsvc_NetConnCtr1 *ctr1; + [default] ; + } srvsvc_NetConnCtr; + + /******************/ + /* Function: 0x08 */ + WERROR srvsvc_NetConnEnum( + [in] [string,charset(UTF16)] uint16 *server_unc, + [in] [string,charset(UTF16)] uint16 *path, + [in,out,ref] uint32 *level, + [in,out,switch_is(level),ref] srvsvc_NetConnCtr *ctr, + [in] uint32 max_buffer, + [out,ref] uint32 *totalentries, + [in,out] uint32 *resume_handle + ); + +/**************************/ +/* srvsvc_NetFile */ +/**************************/ + typedef struct { + uint32 fid; + } srvsvc_NetFileInfo2; + + typedef struct { + uint32 count; + [size_is(count)] srvsvc_NetFileInfo2 *array; + } srvsvc_NetFileCtr2; + + typedef struct { + uint32 fid; + uint32 permissions; + uint32 num_locks; + [string,charset(UTF16)] uint16 *path; + [string,charset(UTF16)] uint16 *user; + } srvsvc_NetFileInfo3; + + typedef struct { + uint32 count; + [size_is(count)] srvsvc_NetFileInfo3 *array; + } srvsvc_NetFileCtr3; + + typedef union { + [case(2)] srvsvc_NetFileInfo2 *info2; + [case(3)] srvsvc_NetFileInfo3 *info3; + [default] ; + } srvsvc_NetFileInfo; + + typedef union { + [case(2)] srvsvc_NetFileCtr2 *ctr2; + [case(3)] srvsvc_NetFileCtr3 *ctr3; + [default] ; + } srvsvc_NetFileCtr; + + /******************/ + /* Function: 0x09 */ + WERROR srvsvc_NetFileEnum( + [in] [string,charset(UTF16)] uint16 *server_unc, + [in] [string,charset(UTF16)] uint16 *path, + [in] [string,charset(UTF16)] uint16 *user, + [in,out,ref] uint32 *level, + [in,out,switch_is(level),ref] srvsvc_NetFileCtr *ctr, + [in] uint32 max_buffer, + [out,ref] uint32 *totalentries, + [in,out] uint32 *resume_handle + ); + + /******************/ + /* Function: 0x0a */ + WERROR srvsvc_NetFileGetInfo( + [in] [string,charset(UTF16)] uint16 *server_unc, + [in] uint32 fid, + [in] uint32 level, + [out,switch_is(level),ref] srvsvc_NetFileInfo *info + ); + + /******************/ + /* Function: 0x0b */ + WERROR srvsvc_NetFileClose( + [in] [string,charset(UTF16)] uint16 *server_unc, + [in] uint32 fid + ); + +/**************************/ +/* srvsvc_NetSess */ +/**************************/ + typedef [bitmap32bit] bitmap { + SESS_GUEST = 0x00000001, + SESS_NOENCRYPTION = 0x00000002 + } srvsvc_SessionUserFlags; + + typedef struct { + [string,charset(UTF16)] uint16 *client; + } srvsvc_NetSessInfo0; + + typedef struct { + uint32 count; + [size_is(count)] srvsvc_NetSessInfo0 *array; + } srvsvc_NetSessCtr0; + + typedef struct { + [string,charset(UTF16)] uint16 *client; + [string,charset(UTF16)] uint16 *user; + uint32 num_open; + uint32 time; + uint32 idle_time; + srvsvc_SessionUserFlags user_flags; + } srvsvc_NetSessInfo1; + + typedef struct { + uint32 count; + [size_is(count)] srvsvc_NetSessInfo1 *array; + } srvsvc_NetSessCtr1; + + typedef struct { + [string,charset(UTF16)] uint16 *client; + [string,charset(UTF16)] uint16 *user; + uint32 num_open; + uint32 time; + uint32 idle_time; + srvsvc_SessionUserFlags user_flags; + [string,charset(UTF16)] uint16 *client_type; + } srvsvc_NetSessInfo2; + + typedef struct { + uint32 count; + [size_is(count)] srvsvc_NetSessInfo2 *array; + } srvsvc_NetSessCtr2; + + typedef struct { + [string,charset(UTF16)] uint16 *client; + [string,charset(UTF16)] uint16 *user; + uint32 time; + uint32 idle_time; + } srvsvc_NetSessInfo10; + + typedef struct { + uint32 count; + [size_is(count)] srvsvc_NetSessInfo10 *array; + } srvsvc_NetSessCtr10; + + typedef struct { + [string,charset(UTF16)] uint16 *client; + [string,charset(UTF16)] uint16 *user; + uint32 num_open; + uint32 time; + uint32 idle_time; + srvsvc_SessionUserFlags user_flags; + [string,charset(UTF16)] uint16 *client_type; + [string,charset(UTF16)] uint16 *transport; + } srvsvc_NetSessInfo502; + + typedef struct { + uint32 count; + [size_is(count)] srvsvc_NetSessInfo502 *array; + } srvsvc_NetSessCtr502; + + typedef union { + [case(0)] srvsvc_NetSessCtr0 *ctr0; + [case(1)] srvsvc_NetSessCtr1 *ctr1; + [case(2)] srvsvc_NetSessCtr2 *ctr2; + [case(10)] srvsvc_NetSessCtr10 *ctr10; + [case(502)] srvsvc_NetSessCtr502 *ctr502; + [default] ; + } srvsvc_NetSessCtr; + + /******************/ + /* Function: 0x0c */ + WERROR srvsvc_NetSessEnum( + [in] [string,charset(UTF16)] uint16 *server_unc, + [in] [string,charset(UTF16)] uint16 *client, + [in] [string,charset(UTF16)] uint16 *user, + [in,out,ref] uint32 *level, + [in,out,switch_is(level),ref] srvsvc_NetSessCtr *ctr, + [in] uint32 max_buffer, + [out,ref] uint32 *totalentries, + [in,out] uint32 *resume_handle + ); + + /******************/ + /* Function: 0x0d */ + WERROR srvsvc_NetSessDel( + [in] [string,charset(UTF16)] uint16 *server_unc, + [in] [string,charset(UTF16)] uint16 *client, + [in] [string,charset(UTF16)] uint16 *user + ); + +/**************************/ +/* srvsvc_NetShare */ +/**************************/ + + /* share types */ + const uint32 STYPE_TEMPORARY = 0x40000000; /* share is a temporary one */ + const uint32 STYPE_HIDDEN = 0x80000000; /* share is a hidden one */ + + typedef [v1_enum, flag(NDR_PAHEX)] enum { + STYPE_DISKTREE = 0, + STYPE_DISKTREE_TEMPORARY = STYPE_DISKTREE|STYPE_TEMPORARY, + STYPE_DISKTREE_HIDDEN = STYPE_DISKTREE|STYPE_HIDDEN, + STYPE_PRINTQ = 1, + STYPE_PRINTQ_TEMPORARY = STYPE_PRINTQ|STYPE_TEMPORARY, + STYPE_PRINTQ_HIDDEN = STYPE_PRINTQ|STYPE_HIDDEN, + STYPE_DEVICE = 2, /* Serial device */ + STYPE_DEVICE_TEMPORARY = STYPE_DEVICE|STYPE_TEMPORARY, + STYPE_DEVICE_HIDDEN = STYPE_DEVICE|STYPE_HIDDEN, + STYPE_IPC = 3, /* Interprocess communication (IPC) */ + STYPE_IPC_TEMPORARY = STYPE_IPC|STYPE_TEMPORARY, + STYPE_IPC_HIDDEN = STYPE_IPC|STYPE_HIDDEN + } srvsvc_ShareType; + + typedef struct { + [string,charset(UTF16)] uint16 *name; + } srvsvc_NetShareInfo0; + + typedef struct { + [string,charset(UTF16)] uint16 *name; + srvsvc_ShareType type; + [string,charset(UTF16)] uint16 *comment; + } srvsvc_NetShareInfo1; + + typedef struct { + [string,charset(UTF16)] uint16 *name; + srvsvc_ShareType type; + [string,charset(UTF16)] uint16 *comment; + uint32 permissions; + uint32 max_users; + uint32 current_users; + [string,charset(UTF16)] uint16 *path; + [string,charset(UTF16)] uint16 *password; + } srvsvc_NetShareInfo2; + + typedef struct { + [string,charset(UTF16)] uint16 *name; + srvsvc_ShareType type; + [string,charset(UTF16)] uint16 *comment; + uint32 csc_policy; + } srvsvc_NetShareInfo501; + + typedef struct { + [string,charset(UTF16)] uint16 *name; + srvsvc_ShareType type; + [string,charset(UTF16)] uint16 *comment; + uint32 permissions; + int32 max_users; + uint32 current_users; + [string,charset(UTF16)] uint16 *path; + [string,charset(UTF16)] uint16 *password; + /* maybe here is a struct sec_desc_buf following */ + uint32 unknown; + [subcontext(4)] security_descriptor *sd; + } srvsvc_NetShareInfo502; + + typedef struct { + [string,charset(UTF16)] uint16 *comment; + } srvsvc_NetShareInfo1004; + + typedef struct { + int32 max_users; + } srvsvc_NetShareInfo1006; + + typedef [bitmap32bit] bitmap { + SHARE_1005_FLAGS_IN_DFS = 0x00000001, + SHARE_1005_FLAGS_DFS_ROOT = 0x00000002, + CSC_CACHE_AUTO_REINT = 0x00000010, + CSC_CACHE_VDO = 0x00000020, + FLAGS_RESTRICT_EXCLUSIVE_OPENS = 0x00000100, + FLAGS_FORCE_SHARED_DELETE = 0x00000200, + FLAGS_ALLOW_NAMESPACE_CACHING = 0x00000400, + FLAGS_ACCESS_BASED_DIRECTORY_ENUM = 0x00000800 + } srvsvc_DFSFlags; + + const uint32 SHARE_1005_CSC_POLICY_MASK = 0x00000030; + const uint32 SHARE_1005_CSC_POLICY_SHIFT = 4; + + typedef struct { + uint32 count; + [size_is(count)] srvsvc_NetShareInfo0 *array; + } srvsvc_NetShareCtr0; + + typedef struct { + uint32 count; + [size_is(count)] srvsvc_NetShareInfo1 *array; + } srvsvc_NetShareCtr1; + + typedef struct { + uint32 count; + [size_is(count)] srvsvc_NetShareInfo2 *array; + } srvsvc_NetShareCtr2; + + typedef struct { + uint32 count; + [size_is(count)] srvsvc_NetShareInfo501 *array; + } srvsvc_NetShareCtr501; + + typedef struct { + uint32 count; + [size_is(count)] srvsvc_NetShareInfo502 *array; + } srvsvc_NetShareCtr502; + + typedef struct { + uint32 count; + [size_is(count)] srvsvc_NetShareInfo1004 *array; + } srvsvc_NetShareCtr1004; + + typedef struct { + srvsvc_DFSFlags dfs_flags; + } srvsvc_NetShareInfo1005; + + typedef struct { + uint32 count; + [size_is(count)] srvsvc_NetShareInfo1005 *array; + } srvsvc_NetShareCtr1005; + + typedef struct { + uint32 count; + [size_is(count)] srvsvc_NetShareInfo1006 *array; + } srvsvc_NetShareCtr1006; + + typedef struct { + uint32 flags; + [string,charset(UTF16)] uint16 *alternate_directory_name; + } srvsvc_NetShareInfo1007; + + typedef struct { + uint32 count; + [size_is(count)] srvsvc_NetShareInfo1007 *array; + } srvsvc_NetShareCtr1007; + + typedef struct { + uint32 count; + [size_is(count)] sec_desc_buf *array; + } srvsvc_NetShareCtr1501; + + typedef union { + [case(0)] srvsvc_NetShareInfo0 *info0; + [case(1)] srvsvc_NetShareInfo1 *info1; + [case(2)] srvsvc_NetShareInfo2 *info2; + [case(501)] srvsvc_NetShareInfo501 *info501; + [case(502)] srvsvc_NetShareInfo502 *info502; + [case(1004)] srvsvc_NetShareInfo1004 *info1004; + [case(1005)] srvsvc_NetShareInfo1005 *info1005; + [case(1006)] srvsvc_NetShareInfo1006 *info1006; + [case(1007)] srvsvc_NetShareInfo1007 *info1007; + [case(1501)] sec_desc_buf *info1501; + [default] ; + } srvsvc_NetShareInfo; + + typedef union { + [case(0)] srvsvc_NetShareCtr0 *ctr0; + [case(1)] srvsvc_NetShareCtr1 *ctr1; + [case(2)] srvsvc_NetShareCtr2 *ctr2; + [case(501)] srvsvc_NetShareCtr501 *ctr501; + [case(502)] srvsvc_NetShareCtr502 *ctr502; + [case(1004)] srvsvc_NetShareCtr1004 *ctr1004; + [case(1005)] srvsvc_NetShareCtr1005 *ctr1005; + [case(1006)] srvsvc_NetShareCtr1006 *ctr1006; + [case(1007)] srvsvc_NetShareCtr1007 *ctr1007; + [case(1501)] srvsvc_NetShareCtr1501 *ctr1501; + [default] ; + } srvsvc_NetShareCtr; + + /******************/ + /* Function: 0x0e */ + WERROR srvsvc_NetShareAdd( + [in] [string,charset(UTF16)] uint16 *server_unc, + [in] uint32 level, + [in,switch_is(level)] srvsvc_NetShareInfo info, + [in,out] uint32 *parm_error + ); + + /******************/ + /* Function: 0x0f */ + WERROR srvsvc_NetShareEnumAll ( + [in] [string,charset(UTF16)] uint16 *server_unc, + [in,out,ref] uint32 *level, + [in,out,switch_is(level),ref] srvsvc_NetShareCtr *ctr, + [in] uint32 max_buffer, + [out,ref] uint32 *totalentries, + [in,out] uint32 *resume_handle + ); + + /******************/ + /* Function: 0x10 */ + WERROR srvsvc_NetShareGetInfo( + [in] [string,charset(UTF16)] uint16 *server_unc, + [in] [string,charset(UTF16)] uint16 share_name[], + [in] uint32 level, + [out,switch_is(level),ref] srvsvc_NetShareInfo *info + ); + + /******************/ + /* Function: 0x11 */ + WERROR srvsvc_NetShareSetInfo( + [in] [string,charset(UTF16)] uint16 *server_unc, + [in] [string,charset(UTF16)] uint16 share_name[], + [in] uint32 level, + [in,switch_is(level)] srvsvc_NetShareInfo info, + [in,out] uint32 *parm_error + ); + + /******************/ + /* Function: 0x12 */ + WERROR srvsvc_NetShareDel( + [in] [string,charset(UTF16)] uint16 *server_unc, + [in] [string,charset(UTF16)] uint16 share_name[], + [in] uint32 reserved + ); + + /******************/ + /* Function: 0x13 */ + WERROR srvsvc_NetShareDelSticky( + [in] [string,charset(UTF16)] uint16 *server_unc, + [in] [string,charset(UTF16)] uint16 share_name[], + [in] uint32 reserved + ); + + /******************/ + /* Function: 0x14 */ + WERROR srvsvc_NetShareCheck( + [in] [string,charset(UTF16)] uint16 *server_unc, + [in] [string,charset(UTF16)] uint16 device_name[], + [out,ref] srvsvc_ShareType *type + ); + +/**************************/ +/* srvsvc_NetSrv */ +/**************************/ + typedef [public,v1_enum] enum { + PLATFORM_ID_DOS = 300, + PLATFORM_ID_OS2 = 400, + PLATFORM_ID_NT = 500, + PLATFORM_ID_OSF = 600, + PLATFORM_ID_VMS = 700 + } srvsvc_PlatformId; + + typedef struct { + srvsvc_PlatformId platform_id; + [string,charset(UTF16)] uint16 *server_name; + } srvsvc_NetSrvInfo100; + + typedef struct { + srvsvc_PlatformId platform_id; + [string,charset(UTF16)] uint16 *server_name; + uint32 version_major; + uint32 version_minor; + svcctl_ServerType server_type; + [string,charset(UTF16)] uint16 *comment; + } srvsvc_NetSrvInfo101; + + typedef struct { + srvsvc_PlatformId platform_id; + [string,charset(UTF16)] uint16 *server_name; + uint32 version_major; + uint32 version_minor; + svcctl_ServerType server_type; + [string,charset(UTF16)] uint16 *comment; + uint32 users; + uint32 disc; + uint32 hidden; + uint32 announce; + uint32 anndelta; + uint32 licenses; + [string,charset(UTF16)] uint16 *userpath; + } srvsvc_NetSrvInfo102; + + typedef struct { + uint32 ulist_mtime; + uint32 glist_mtime; + uint32 alist_mtime; + [string,charset(UTF16)] uint16 *alerts; + uint32 security; + uint32 numadmin; + uint32 lanmask; + [string,charset(UTF16)] uint16 *guestaccount; + uint32 chdevs; + uint32 chdevqs; + uint32 chdevjobs; + uint32 connections; + uint32 shares; + uint32 openfiles; + uint32 sessopen; + uint32 sesssvc; + uint32 sessreqs; + uint32 opensearch; + uint32 activelocks; + uint32 sizereqbufs; + uint32 numbigbufs; + uint32 numfiletasks; + uint32 alertsched; + uint32 erroralert; + uint32 logonalert; + uint32 accessalert; + uint32 diskalert; + uint32 netioalert; + uint32 maxaudits; + [string,charset(UTF16)] uint16 *srvheuristics; + } srvsvc_NetSrvInfo402; + + typedef struct { + uint32 ulist_mtime; + uint32 glist_mtime; + uint32 alist_mtime; + [string,charset(UTF16)] uint16 *alerts; + uint32 security; + uint32 numadmin; + uint32 lanmask; + [string,charset(UTF16)] uint16 *guestaccount; + uint32 chdevs; + uint32 chdevqs; + uint32 chdevjobs; + uint32 connections; + uint32 shares; + uint32 openfiles; + uint32 sessopen; + uint32 sesssvc; + uint32 sessreqs; + uint32 opensearch; + uint32 activelocks; + uint32 sizereqbufs; + uint32 numbigbufs; + uint32 numfiletasks; + uint32 alertsched; + uint32 eroralert; + uint32 logonalert; + uint32 accessalert; + uint32 diskalert; + uint32 netioalert; + uint32 maxaudits; + [string,charset(UTF16)] uint16 *srvheuristics; + uint32 auditedevents; + uint32 auditprofile; + [string,charset(UTF16)] uint16 *autopath; + } srvsvc_NetSrvInfo403; + + typedef struct { + uint32 sessopen; + uint32 sesssvc; + uint32 opensearch; + uint32 sizereqbufs; + uint32 initworkitems; + uint32 maxworkitems; + uint32 rawworkitems; + uint32 irpstacksize; + uint32 maxrawbuflen; + uint32 sessusers; + uint32 sessconns; + uint32 maxpagedmemoryusage; + uint32 maxnonpagedmemoryusage; + uint32 enablesoftcompat; + uint32 enableforcedlogoff; + uint32 timesource; + uint32 acceptdownlevelapis; + uint32 lmannounce; + } srvsvc_NetSrvInfo502; + + typedef struct{ + uint32 sessopen; + uint32 sesssvc; + uint32 opensearch; + uint32 sizereqbufs; + uint32 initworkitems; + uint32 maxworkitems; + uint32 rawworkitems; + uint32 irpstacksize; + uint32 maxrawbuflen; + uint32 sessusers; + uint32 sessconns; + uint32 maxpagedmemoryusage; + uint32 maxnonpagedmemoryusage; + uint32 enablesoftcompat; + uint32 enableforcedlogoff; + uint32 timesource; + uint32 acceptdownlevelapis; + uint32 lmannounce; + [string,charset(UTF16)] uint16 *domain; + uint32 maxcopyreadlen; + uint32 maxcopywritelen; + uint32 minkeepsearch; + uint32 maxkeepsearch; + uint32 minkeepcomplsearch; + uint32 maxkeepcomplsearch; + uint32 threadcountadd; + uint32 numlockthreads; + uint32 scavtimeout; + uint32 minrcvqueue; + uint32 minfreeworkitems; + uint32 xactmemsize; + uint32 threadpriority; + uint32 maxmpxct; + uint32 oplockbreakwait; + uint32 oplockbreakresponsewait; + uint32 enableoplocks; + uint32 enableoplockforceclose; + uint32 enablefcbopens; + uint32 enableraw; + uint32 enablesharednetdrives; + uint32 minfreeconnections; + uint32 maxfreeconnections; + } srvsvc_NetSrvInfo503; + + typedef struct{ + uint32 sessopen; + uint32 sesssvc; + uint32 opensearch; + uint32 sizereqbufs; + uint32 initworkitems; + uint32 maxworkitems; + uint32 rawworkitems; + uint32 irpstacksize; + uint32 maxrawbuflen; + uint32 sessusers; + uint32 sessconns; + uint32 maxpagedmemoryusage; + uint32 maxnonpagedmemoryusage; + uint32 enablesoftcompat; + uint32 enableforcedlogoff; + uint32 timesource; + uint32 acceptdownlevelapis; + uint32 lmannounce; + [string,charset(UTF16)] uint16 *domain; + uint32 maxcopyreadlen; + uint32 maxcopywritelen; + uint32 minkeepsearch; + uint32 minkeepcomplsearch; + uint32 maxkeepcomplsearch; + uint32 threadcountadd; + uint32 numlockthreads; + uint32 scavtimeout; + uint32 minrcvqueue; + uint32 minfreeworkitems; + uint32 xactmemsize; + uint32 threadpriority; + uint32 maxmpxct; + uint32 oplockbreakwait; + uint32 oplockbreakresponsewait; + uint32 enableoplocks; + uint32 enableoplockforceclose; + uint32 enablefcbopens; + uint32 enableraw; + uint32 enablesharednetdrives; + uint32 minfreeconnections; + uint32 maxfreeconnections; + uint32 initsesstable; + uint32 initconntable; + uint32 initfiletable; + uint32 initsearchtable; + uint32 alertsched; + uint32 errortreshold; + uint32 networkerrortreshold; + uint32 diskspacetreshold; + uint32 reserved; + uint32 maxlinkdelay; + uint32 minlinkthroughput; + uint32 linkinfovalidtime; + uint32 scavqosinfoupdatetime; + uint32 maxworkitemidletime; + } srvsvc_NetSrvInfo599; + + typedef struct{ + [string,charset(UTF16)] uint16 *comment; + } srvsvc_NetSrvInfo1005; + + typedef struct{ + uint32 disc; + } srvsvc_NetSrvInfo1010; + + typedef struct{ + uint32 hidden; + } srvsvc_NetSrvInfo1016; + + typedef struct{ + uint32 announce; + } srvsvc_NetSrvInfo1017; + + typedef struct{ + uint32 anndelta; + } srvsvc_NetSrvInfo1018; + + typedef struct{ + uint32 users; + } srvsvc_NetSrvInfo1107; + + typedef struct{ + uint32 sessopens; + } srvsvc_NetSrvInfo1501; + + typedef struct{ + uint32 sessvcs; + } srvsvc_NetSrvInfo1502; + + typedef struct{ + uint32 opensearch; + } srvsvc_NetSrvInfo1503; + + typedef struct{ + uint32 maxworkitems; + } srvsvc_NetSrvInfo1506; + + typedef struct{ + uint32 maxrawbuflen; + } srvsvc_NetSrvInfo1509; + + typedef struct{ + uint32 sessusers; + } srvsvc_NetSrvInfo1510; + + typedef struct{ + uint32 sesscons; + } srvsvc_NetSrvInfo1511; + + typedef struct{ + uint32 maxnonpagedmemoryusage; + } srvsvc_NetSrvInfo1512; + + typedef struct{ + uint32 maxpagedmemoryusage; + } srvsvc_NetSrvInfo1513; + + typedef struct{ + uint32 enablesoftcompat; + } srvsvc_NetSrvInfo1514; + + typedef struct{ + uint32 enableforcedlogoff; + } srvsvc_NetSrvInfo1515; + + typedef struct{ + uint32 timesource; + } srvsvc_NetSrvInfo1516; + + typedef struct{ + uint32 lmannounce; + } srvsvc_NetSrvInfo1518; + + typedef struct{ + uint32 maxcopyreadlen; + } srvsvc_NetSrvInfo1520; + + typedef struct{ + uint32 maxcopywritelen; + } srvsvc_NetSrvInfo1521; + + typedef struct{ + uint32 minkeepsearch; + } srvsvc_NetSrvInfo1522; + + typedef struct{ + uint32 maxkeepsearch; + } srvsvc_NetSrvInfo1523; + + typedef struct{ + uint32 minkeepcomplsearch; + } srvsvc_NetSrvInfo1524; + + typedef struct{ + uint32 maxkeepcomplsearch; + } srvsvc_NetSrvInfo1525; + + typedef struct{ + uint32 scavtimeout; + } srvsvc_NetSrvInfo1528; + + typedef struct{ + uint32 minrcvqueue; + } srvsvc_NetSrvInfo1529; + + typedef struct{ + uint32 minfreeworkitems; + } srvsvc_NetSrvInfo1530; + + typedef struct{ + uint32 maxmpxct; + } srvsvc_NetSrvInfo1533; + + typedef struct{ + uint32 oplockbreakwait; + } srvsvc_NetSrvInfo1534; + + typedef struct{ + uint32 oplockbreakresponsewait; + } srvsvc_NetSrvInfo1535; + + typedef struct{ + uint32 enableoplocks; + } srvsvc_NetSrvInfo1536; + + typedef struct{ + uint32 enableoplockforceclose; + } srvsvc_NetSrvInfo1537; + + typedef struct{ + uint32 enablefcbopens; + } srvsvc_NetSrvInfo1538; + + typedef struct{ + uint32 enableraw; + } srvsvc_NetSrvInfo1539; + + typedef struct{ + uint32 enablesharednetdrives; + } srvsvc_NetSrvInfo1540; + + typedef struct{ + uint32 minfreeconnections; + } srvsvc_NetSrvInfo1541; + + typedef struct{ + uint32 maxfreeconnections; + } srvsvc_NetSrvInfo1542; + + typedef struct{ + uint32 initsesstable; + } srvsvc_NetSrvInfo1543; + + typedef struct{ + uint32 initconntable; + } srvsvc_NetSrvInfo1544; + + typedef struct{ + uint32 initfiletable; + } srvsvc_NetSrvInfo1545; + + typedef struct{ + uint32 initsearchtable; + } srvsvc_NetSrvInfo1546; + + typedef struct{ + uint32 alertsched; + } srvsvc_NetSrvInfo1547; + + typedef struct{ + uint32 errortreshold; + } srvsvc_NetSrvInfo1548; + + typedef struct{ + uint32 networkerrortreshold; + } srvsvc_NetSrvInfo1549; + + typedef struct{ + uint32 diskspacetreshold; + } srvsvc_NetSrvInfo1550; + + typedef struct{ + uint32 maxlinkdelay; + } srvsvc_NetSrvInfo1552; + + typedef struct{ + uint32 minlinkthroughput; + } srvsvc_NetSrvInfo1553; + + typedef struct{ + uint32 linkinfovalidtime; + } srvsvc_NetSrvInfo1554; + + typedef struct{ + uint32 scavqosinfoupdatetime; + } srvsvc_NetSrvInfo1555; + + typedef struct{ + uint32 maxworkitemidletime; + } srvsvc_NetSrvInfo1556; + + + typedef union{ + [case(100)] srvsvc_NetSrvInfo100 *info100; + [case(101)] srvsvc_NetSrvInfo101 *info101; + [case(102)] srvsvc_NetSrvInfo102 *info102; + [case(402)] srvsvc_NetSrvInfo402 *info402; + [case(403)] srvsvc_NetSrvInfo403 *info403; + [case(502)] srvsvc_NetSrvInfo502 *info502; + [case(503)] srvsvc_NetSrvInfo503 *info503; + [case(599)] srvsvc_NetSrvInfo599 *info599; + [case(1005)] srvsvc_NetSrvInfo1005 *info1005; + [case(1010)] srvsvc_NetSrvInfo1010 *info1010; + [case(1016)] srvsvc_NetSrvInfo1016 *info1016; + [case(1017)] srvsvc_NetSrvInfo1017 *info1017; + [case(1018)] srvsvc_NetSrvInfo1018 *info1018; + [case(1107)] srvsvc_NetSrvInfo1107 *info1107; + [case(1501)] srvsvc_NetSrvInfo1501 *info1501; + [case(1502)] srvsvc_NetSrvInfo1502 *info1502; + [case(1503)] srvsvc_NetSrvInfo1503 *info1503; + [case(1506)] srvsvc_NetSrvInfo1506 *info1506; + [case(1509)] srvsvc_NetSrvInfo1509 *info1509; + [case(1510)] srvsvc_NetSrvInfo1510 *info1510; + [case(1511)] srvsvc_NetSrvInfo1511 *info1511; + [case(1512)] srvsvc_NetSrvInfo1512 *info1512; + [case(1513)] srvsvc_NetSrvInfo1513 *info1513; + [case(1514)] srvsvc_NetSrvInfo1514 *info1514; + [case(1515)] srvsvc_NetSrvInfo1515 *info1515; + [case(1516)] srvsvc_NetSrvInfo1516 *info1516; + [case(1518)] srvsvc_NetSrvInfo1518 *info1518; + [case(1520)] srvsvc_NetSrvInfo1520 *info1520; + [case(1521)] srvsvc_NetSrvInfo1521 *info1521; + [case(1522)] srvsvc_NetSrvInfo1522 *info1522; + [case(1523)] srvsvc_NetSrvInfo1523 *info1523; + [case(1524)] srvsvc_NetSrvInfo1524 *info1524; + [case(1525)] srvsvc_NetSrvInfo1525 *info1525; + [case(1528)] srvsvc_NetSrvInfo1528 *info1528; + [case(1529)] srvsvc_NetSrvInfo1529 *info1529; + [case(1530)] srvsvc_NetSrvInfo1530 *info1530; + [case(1533)] srvsvc_NetSrvInfo1533 *info1533; + [case(1534)] srvsvc_NetSrvInfo1534 *info1534; + [case(1535)] srvsvc_NetSrvInfo1535 *info1535; + [case(1536)] srvsvc_NetSrvInfo1536 *info1536; + [case(1537)] srvsvc_NetSrvInfo1537 *info1537; + [case(1538)] srvsvc_NetSrvInfo1538 *info1538; + [case(1539)] srvsvc_NetSrvInfo1539 *info1539; + [case(1540)] srvsvc_NetSrvInfo1540 *info1540; + [case(1541)] srvsvc_NetSrvInfo1541 *info1541; + [case(1542)] srvsvc_NetSrvInfo1542 *info1542; + [case(1543)] srvsvc_NetSrvInfo1543 *info1543; + [case(1544)] srvsvc_NetSrvInfo1544 *info1544; + [case(1545)] srvsvc_NetSrvInfo1545 *info1545; + [case(1546)] srvsvc_NetSrvInfo1546 *info1546; + [case(1547)] srvsvc_NetSrvInfo1547 *info1547; + [case(1548)] srvsvc_NetSrvInfo1548 *info1548; + [case(1549)] srvsvc_NetSrvInfo1549 *info1549; + [case(1550)] srvsvc_NetSrvInfo1550 *info1550; + [case(1552)] srvsvc_NetSrvInfo1552 *info1552; + [case(1553)] srvsvc_NetSrvInfo1553 *info1553; + [case(1554)] srvsvc_NetSrvInfo1554 *info1554; + [case(1555)] srvsvc_NetSrvInfo1555 *info1555; + [case(1556)] srvsvc_NetSrvInfo1556 *info1556; + [default]; + } srvsvc_NetSrvInfo; + + /******************/ + /* Function: 0x15 */ + WERROR srvsvc_NetSrvGetInfo( + [in] [string,charset(UTF16)] uint16 *server_unc, + [in] uint32 level, + [out,switch_is(level),ref] srvsvc_NetSrvInfo *info + ); + + /******************/ + /* Function: 0x16 */ + WERROR srvsvc_NetSrvSetInfo( + [in] [string,charset(UTF16)] uint16 *server_unc, + [in] uint32 level, + [in,switch_is(level)] srvsvc_NetSrvInfo info, + [in,out] uint32 *parm_error + ); + +/**************************/ +/* srvsvc_NetDisk */ +/**************************/ + typedef struct { + [flag(STR_LEN4)] string disk; + } srvsvc_NetDiskInfo0; + + typedef struct { + uint32 count; + [size_is(count), length_is(count)] srvsvc_NetDiskInfo0 *disks; + } srvsvc_NetDiskInfo; + + /******************/ + /* Function: 0x17 */ + WERROR srvsvc_NetDiskEnum( + [in] [string,charset(UTF16)] uint16 *server_unc, + [in] uint32 level, + [in,out,ref] srvsvc_NetDiskInfo *info, + [in] uint32 maxlen, + [out,ref] uint32 *totalentries, + [in,out] uint32 *resume_handle + ); + +/**************************/ +/* srvsvc_NetStatistics */ +/**************************/ + typedef struct { + uint32 start; + uint32 fopens; + uint32 devopens; + uint32 jobsqueued; + uint32 sopens; + uint32 stimeouts; + uint32 serrorout; + uint32 pwerrors; + uint32 permerrors; + uint32 syserrors; + uint32 bytessent_low; + uint32 bytessent_high; + uint32 bytesrcvd_low; + uint32 bytesrcvd_high; + uint32 avresponse; + uint32 reqbufneed; + uint32 bigbufneed; + } srvsvc_Statistics; + + /******************/ + /* Function: 0x18 */ + WERROR srvsvc_NetServerStatisticsGet( + [in] [string,charset(UTF16)] uint16 *server_unc, + [in] [string,charset(UTF16)] uint16 *service, + [in] uint32 level, + [in] uint32 options, + [out,ref] srvsvc_Statistics *stat + ); + +/**************************/ +/* srvsvc_NetTransport */ +/**************************/ + typedef struct { + uint32 vcs; + [string,charset(UTF16)] uint16 *name; + [size_is(addr_len)] uint8 *addr; + uint32 addr_len; + [string,charset(UTF16)] uint16 *net_addr; + } srvsvc_NetTransportInfo0; + + /******************/ + /* Function: 0x19 */ + WERROR srvsvc_NetTransportAdd( + [in] [string,charset(UTF16)] uint16 *server_unc, + [in] uint32 level, + [in,switch_is(level)] srvsvc_NetTransportInfo info + ); + + typedef struct { + uint32 count; + [size_is(count)] srvsvc_NetTransportInfo0 *array; + } srvsvc_NetTransportCtr0; + + typedef struct { + uint32 vcs; + [string,charset(UTF16)] uint16 *name; + [size_is(addr_len)] uint8 *addr; + uint32 addr_len; + [string,charset(UTF16)] uint16 *net_addr; + [string,charset(UTF16)] uint16 *domain; + } srvsvc_NetTransportInfo1; + + typedef struct { + uint32 count; + [size_is(count)] srvsvc_NetTransportInfo1 *array; + } srvsvc_NetTransportCtr1; + + typedef [bitmap32bit] bitmap { + SVTI2_REMAP_PIPE_NAMES = 0x00000001 + } srvsvc_TransportFlags; + + + typedef struct { + uint32 vcs; + [string,charset(UTF16)] uint16 *name; + [size_is(addr_len)] uint8 *addr; + uint32 addr_len; + [string,charset(UTF16)] uint16 *net_addr; + [string,charset(UTF16)] uint16 *domain; + srvsvc_TransportFlags transport_flags; + } srvsvc_NetTransportInfo2; + + typedef struct { + uint32 count; + [size_is(count)] srvsvc_NetTransportInfo2 *array; + } srvsvc_NetTransportCtr2; + + typedef struct { + uint32 vcs; + [string,charset(UTF16)] uint16 *name; + [size_is(addr_len)] uint8 *addr; + uint32 addr_len; + [string,charset(UTF16)] uint16 *net_addr; + [string,charset(UTF16)] uint16 *domain; + srvsvc_TransportFlags transport_flags; + uint32 password_len; + uint8 password[256]; + } srvsvc_NetTransportInfo3; + + typedef struct { + uint32 count; + [size_is(count)] srvsvc_NetTransportInfo3 *array; + } srvsvc_NetTransportCtr3; + + typedef union { + [case(0)] srvsvc_NetTransportCtr0 *ctr0; + [case(1)] srvsvc_NetTransportCtr1 *ctr1; + [case(2)] srvsvc_NetTransportCtr2 *ctr2; + [case(3)] srvsvc_NetTransportCtr3 *ctr3; + [default]; + } srvsvc_NetTransportCtr; + + /******************/ + /* Function: 0x1a */ + WERROR srvsvc_NetTransportEnum( + [in] [string,charset(UTF16)] uint16 *server_unc, + [in,out,ref] uint32 *level, + [in,out,switch_is(level),ref] srvsvc_NetTransportCtr *transports, + [in] uint32 max_buffer, + [out,ref] uint32 *totalentries, + [in,out] uint32 *resume_handle + ); + + /******************/ + /* Function: 0x1b */ + WERROR srvsvc_NetTransportDel( + [in] [string,charset(UTF16)] uint16 *server_unc, + [in] uint32 unknown, + [in] srvsvc_NetTransportInfo0 transport + ); + +/**************************/ +/* srvsvc_NetRemoteTOD */ +/**************************/ + typedef struct { + uint32 elapsed; /* time(NULL) */ + uint32 msecs; /* milliseconds till system reboot (uptime) */ + uint32 hours; + uint32 mins; + uint32 secs; + uint32 hunds; + int32 timezone; /* in minutes */ + uint32 tinterval; /* clock tick interval in 0.0001 second units; 310 on windows */ + uint32 day; + uint32 month; + uint32 year; + uint32 weekday; + } srvsvc_NetRemoteTODInfo; + + /******************/ + /* Function: 0x1c */ + WERROR srvsvc_NetRemoteTOD( + [in] [string,charset(UTF16)] uint16 *server_unc, + [out,unique] srvsvc_NetRemoteTODInfo *info + ); + +/**************************/ +/* srvsvc_NetServiceBits */ +/**************************/ + /******************/ + /* Function: 0x1d */ + WERROR srvsvc_NetSetServiceBits( + [in] [string,charset(UTF16)] uint16 *server_unc, + [in] [string,charset(UTF16)] uint16 *transport, + [in] uint32 servicebits, + [in] uint32 updateimmediately + ); + +/**************************/ +/* srvsvc_NetPath */ +/**************************/ + /******************/ + /* Function: 0x1e */ + WERROR srvsvc_NetPathType( + [in] [string,charset(UTF16)] uint16 *server_unc, + [in] [string,charset(UTF16)] uint16 path[], + [in] uint32 pathflags, + [out,ref] uint32 *pathtype + ); + + /******************/ + /* Function: 0x1f */ + WERROR srvsvc_NetPathCanonicalize( + [in] [string,charset(UTF16)] uint16 *server_unc, + [in] [string,charset(UTF16)] uint16 path[], + [out] [size_is(maxbuf)] uint8 can_path[], + [in] uint32 maxbuf, + [in] [string,charset(UTF16)] uint16 prefix[], + [in,out,ref] uint32 *pathtype, + [in] uint32 pathflags + ); + + /******************/ + /* Function: 0x20 */ + WERROR srvsvc_NetPathCompare( + [in] [string,charset(UTF16)] uint16 *server_unc, + [in] [string,charset(UTF16)] uint16 path1[], + [in] [string,charset(UTF16)] uint16 path2[], + [in] uint32 pathtype, + [in] uint32 pathflags + ); + +/**************************/ +/* srvsvc_NetName */ +/**************************/ + /******************/ + /* Function: 0x21 */ + WERROR srvsvc_NetNameValidate( + [in] [string,charset(UTF16)] uint16 *server_unc, + [in] [string,charset(UTF16)] uint16 name[], + [in] uint32 name_type, + [in] uint32 flags + ); + + /******************/ + /* Function: 0x22 */ + WERROR srvsvc_NETRPRNAMECANONICALIZE( + ); + + /******************/ + /* Function: 0x23 */ + WERROR srvsvc_NetPRNameCompare( + [in] [string,charset(UTF16)] uint16 *server_unc, + [in] [string,charset(UTF16)] uint16 name1[], + [in] [string,charset(UTF16)] uint16 name2[], + [in] uint32 name_type, + [in] uint32 flags + ); + +/**************************/ +/* srvsvc_NetShare ... */ +/**************************/ + /******************/ + /* Function: 0x24 */ + /* Note, there must be some way to return entries read vs + total entries ... */ + WERROR srvsvc_NetShareEnum( + [in] [string,charset(UTF16)] uint16 *server_unc, + [in,out,ref] uint32 *level, + [in,out,switch_is(level),ref] srvsvc_NetShareCtr *ctr, + [in] uint32 max_buffer, + [out,ref] uint32 *totalentries, + [in,out] uint32 *resume_handle + ); + + /******************/ + /* Function: 0x25 */ + WERROR srvsvc_NetShareDelStart( + [in] [string,charset(UTF16)] uint16 *server_unc, + [in] [string,charset(UTF16)] uint16 share[], + [in] uint32 reserved, + [out,unique] policy_handle *hnd + ); + + /******************/ + /* Function: 0x26 */ + WERROR srvsvc_NetShareDelCommit( + [in, out] policy_handle *hnd + ); + + /******************/ + /* Function: 0x27 */ + WERROR srvsvc_NetGetFileSecurity( + [in] [string,charset(UTF16)] uint16 *server_unc, + [in] [string,charset(UTF16)] uint16 *share, + [in] [string,charset(UTF16)] uint16 file[], + [in] security_secinfo securityinformation, + [out,unique] sec_desc_buf *sd_buf + ); + + /******************/ + /* Function: 0x28 */ + WERROR srvsvc_NetSetFileSecurity( + [in] [string,charset(UTF16)] uint16 *server_unc, + [in] [string,charset(UTF16)] uint16 *share, + [in] [string,charset(UTF16)] uint16 file[], + [in] security_secinfo securityinformation, + [in] sec_desc_buf sd_buf + ); + + + + typedef [switch_type(uint32)] union { + [case(0)] srvsvc_NetTransportInfo0 info0; + [case(1)] srvsvc_NetTransportInfo1 info1; + [case(2)] srvsvc_NetTransportInfo2 info2; + [case(3)] srvsvc_NetTransportInfo3 info3; + } srvsvc_NetTransportInfo; + + /******************/ + /* Function: 0x29 */ + WERROR srvsvc_NetServerTransportAddEx( + [in] [string,charset(UTF16)] uint16 *server_unc, + [in] uint32 level, + [in,switch_is(level)] srvsvc_NetTransportInfo info + ); + + /******************/ + /* Function: 0x2a */ + WERROR srvsvc_NetServerSetServiceBitsEx( + [in] [string,charset(UTF16)] uint16 *server_unc, + [in] [string,charset(UTF16)] uint16 *emulated_server_unc, + [in] [string,charset(UTF16)] uint16 *transport, + [in] uint32 servicebitsofinterest, + [in] uint32 servicebits, + [in] uint32 updateimmediately + ); + + /******************/ + /* Function: 0x2b */ + WERROR srvsvc_NETRDFSGETVERSION( + ); + + /******************/ + /* Function: 0x2c */ + WERROR srvsvc_NETRDFSCREATELOCALPARTITION( + ); + + /******************/ + /* Function: 0x2d */ + WERROR srvsvc_NETRDFSDELETELOCALPARTITION( + ); + + /******************/ + /* Function: 0x2e */ + WERROR srvsvc_NETRDFSSETLOCALVOLUMESTATE( + ); + + /******************/ + /* Function: 0x2f */ + WERROR srvsvc_NETRDFSSETSERVERINFO( + ); + + /******************/ + /* Function: 0x30 */ + WERROR srvsvc_NETRDFSCREATEEXITPOINT( + ); + + /******************/ + /* Function: 0x31 */ + WERROR srvsvc_NETRDFSDELETEEXITPOINT( + ); + + /******************/ + /* Function: 0x32 */ + WERROR srvsvc_NETRDFSMODIFYPREFIX( + ); + + /******************/ + /* Function: 0x33 */ + WERROR srvsvc_NETRDFSFIXLOCALVOLUME( + ); + + /******************/ + /* Function: 0x34 */ + WERROR srvsvc_NETRDFSMANAGERREPORTSITEINFO( + ); + + /******************/ + /* Function: 0x35 */ + WERROR srvsvc_NETRSERVERTRANSPORTDELEX( + ); +} diff --git a/epan/dissectors/pidl/winreg.cnf b/epan/dissectors/pidl/winreg.cnf deleted file mode 100644 index eb658d3b1a..0000000000 --- a/epan/dissectors/pidl/winreg.cnf +++ /dev/null @@ -1,229 +0,0 @@ -TYPE lsa_StringLarge "offset=lsarpc_dissect_struct_lsa_StringLarge(tvb, offset, pinfo, tree, di, drep, @HF@, @PARAM@);" FT_NONE BASE_NONE 0 NULL NULL -TYPE winreg_Type "offset=misc_dissect_enum_winreg_Type(tvb, offset, pinfo, tree, di, drep, @HF@, @PARAM@);" FT_NONE BASE_NONE 0 NULL NULL -IMPORT security_secinfo offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, di, drep, hf_winreg_winreg_GetKeySecurity_sec_info, NULL); - -# -# Make all instances of an access mask use the same hf field display filter -# name -# -HF_FIELD hf_winreg_access_mask "Access Mask" "winreg.access_mask" FT_UINT32 BASE_HEX NULL 0 "" "" "" -HF_RENAME hf_winreg_winreg_OpenHKCR_access_mask hf_winreg_access_mask -HF_RENAME hf_winreg_winreg_OpenHKLM_access_mask hf_winreg_access_mask -HF_RENAME hf_winreg_winreg_OpenHKU_access_mask hf_winreg_access_mask -HF_RENAME hf_winreg_winreg_CreateKey_access_mask hf_winreg_access_mask -HF_RENAME hf_winreg_winreg_OpenHKCC_access_mask hf_winreg_access_mask -HF_RENAME hf_winreg_winreg_OpenHKDD_access_mask hf_winreg_access_mask -HF_RENAME hf_winreg_winreg_OpenHKPT_access_mask hf_winreg_access_mask -HF_RENAME hf_winreg_winreg_OpenHKPN_access_mask hf_winreg_access_mask - - -# -# Make all instances of a system name use the same hf display filter name -# -HF_FIELD hf_winreg_system_name "System Name" "winreg.system_name" FT_UINT16 BASE_DEC NULL 0 "" "" "" -HF_RENAME hf_winreg_winreg_OpenHKCR_system_name hf_winreg_system_name -HF_RENAME hf_winreg_winreg_OpenHKCU_system_name hf_winreg_system_name -HF_RENAME hf_winreg_winreg_OpenHKLM_system_name hf_winreg_system_name -HF_RENAME hf_winreg_winreg_OpenHKPD_system_name hf_winreg_system_name -HF_RENAME hf_winreg_winreg_OpenHKU_system_name hf_winreg_system_name -HF_RENAME hf_winreg_winreg_OpenHKCC_system_name hf_winreg_system_name -HF_RENAME hf_winreg_winreg_OpenHKDD_system_name hf_winreg_system_name -HF_RENAME hf_winreg_winreg_OpenHKPT_system_name hf_winreg_system_name -HF_RENAME hf_winreg_winreg_OpenHKPN_system_name hf_winreg_system_name - - -# -# make all policyhandles use the same hf display filter name -# -HF_FIELD hf_winreg_handle "Handle" "winreg.handle" FT_BYTES BASE_NONE NULL 0 "" "" "" -HF_RENAME hf_winreg_winreg_OpenHKCR_handle hf_winreg_handle -HF_RENAME hf_winreg_winreg_OpenHKCU_handle hf_winreg_handle -HF_RENAME hf_winreg_winreg_OpenHKLM_handle hf_winreg_handle -HF_RENAME hf_winreg_winreg_OpenHKPD_handle hf_winreg_handle -HF_RENAME hf_winreg_winreg_OpenHKU_handle hf_winreg_handle -HF_RENAME hf_winreg_winreg_CloseKey_handle hf_winreg_handle -HF_RENAME hf_winreg_winreg_CreateKey_handle hf_winreg_handle -HF_RENAME hf_winreg_winreg_DeleteKey_handle hf_winreg_handle -HF_RENAME hf_winreg_winreg_DeleteValue_handle hf_winreg_handle -HF_RENAME hf_winreg_winreg_EnumKey_handle hf_winreg_handle -HF_RENAME hf_winreg_winreg_EnumValue_handle hf_winreg_handle -HF_RENAME hf_winreg_winreg_FlushKey_handle hf_winreg_handle -HF_RENAME hf_winreg_winreg_GetKeySecurity_handle hf_winreg_handle -HF_RENAME hf_winreg_winreg_LoadKey_handle hf_winreg_handle -HF_RENAME hf_winreg_winreg_NotifyChangeKeyValue_handle hf_winreg_handle -HF_RENAME hf_winreg_winreg_OpenKey_handle hf_winreg_handle -HF_RENAME hf_winreg_winreg_QueryInfoKey_handle hf_winreg_handle -HF_RENAME hf_winreg_winreg_QueryValue_handle hf_winreg_handle -HF_RENAME hf_winreg_winreg_SetKeySecurity_handle hf_winreg_handle -HF_RENAME hf_winreg_winreg_SetValue_handle hf_winreg_handle -HF_RENAME hf_winreg_winreg_GetVersion_handle hf_winreg_handle -HF_RENAME hf_winreg_winreg_OpenHKCC_handle hf_winreg_handle -HF_RENAME hf_winreg_winreg_OpenHKDD_handle hf_winreg_handle -HF_RENAME hf_winreg_winreg_OpenHKPT_handle hf_winreg_handle -HF_RENAME hf_winreg_winreg_OpenHKPN_handle hf_winreg_handle - - - -# -# Make both instances of KeySecurityData resolve to the same -# hf display filter field. -# -HF_FIELD hf_winreg_sd "KeySecurityData" "winreg.sd" FT_NONE BASE_NONE NULL 0 "" "" "" -HF_RENAME hf_winreg_winreg_GetKeySecurity_sd hf_winreg_sd -HF_RENAME hf_winreg_winreg_SetKeySecurity_sd hf_winreg_sd - - - -# -# policyhandle tracking -# This block is to specify where a policyhandle is opened and where it is -# closed so that policyhandles when dissected contain nice info such as -# [opened in xxx] [closed in yyy] -# -# Policyhandles are opened in these functions -PARAM_VALUE winreg_dissect_element_OpenHKCR_handle_ PIDL_POLHND_OPEN -PARAM_VALUE winreg_dissect_element_OpenHKCU_handle_ PIDL_POLHND_OPEN -PARAM_VALUE winreg_dissect_element_OpenHKLM_handle_ PIDL_POLHND_OPEN -PARAM_VALUE winreg_dissect_element_OpenHKPD_handle_ PIDL_POLHND_OPEN -PARAM_VALUE winreg_dissect_element_OpenHKU_handle_ PIDL_POLHND_OPEN -PARAM_VALUE winreg_dissect_element_OpenHKCC_handle_ PIDL_POLHND_OPEN -PARAM_VALUE winreg_dissect_element_OpenHKDD_handle_ PIDL_POLHND_OPEN -PARAM_VALUE winreg_dissect_element_OpenHKPT_handle_ PIDL_POLHND_OPEN -PARAM_VALUE winreg_dissect_element_OpenHKPN_handle_ PIDL_POLHND_OPEN -PARAM_VALUE winreg_dissect_element_CreateKey_new_handle_ PIDL_POLHND_OPEN -PARAM_VALUE winreg_dissect_element_OpenKey_handle_ PIDL_POLHND_OPEN -# Policyhandles are closed in these functions -PARAM_VALUE winreg_dissect_element_CloseKey_handle_ PIDL_POLHND_CLOSE - - -# winreg_String -# -# Create a new type to handle winreg_String so that we can get nice and -# pretty dissection of the strings contained within winreg -TYPE winreg_String "offset=cnf_dissect_winreg_String(tvb, offset, pinfo, tree, di, drep, @PARAM@, @HF@);" FT_STRING BASE_NONE 0 NULL 4 -# -# -# -PARAM_VALUE winreg_dissect_element_CreateKey_name 2|PIDL_SET_COL_INFO -PARAM_VALUE winreg_dissect_element_DeleteKey_key 2|PIDL_SET_COL_INFO -PARAM_VALUE winreg_dissect_element_LoadKey_keyname 2|PIDL_SET_COL_INFO -PARAM_VALUE winreg_dissect_element_OpenKey_keyname 2|PIDL_SET_COL_INFO|PIDL_STR_SAVE -PARAM_VALUE winreg_dissect_element_QueryValue_value_name 2|PIDL_SET_COL_INFO -PARAM_VALUE winreg_dissect_element_SaveKey_filename 2|PIDL_SET_COL_INFO -PARAM_VALUE winreg_dissect_element_SetValue_name 2|PIDL_SET_COL_INFO - -# -# Override the generation of dissectors of the security descriptor and the -# access mask. -# The security descriptor is just an array of bytes in the idl file -# so we override generation of it and calls the proper wireshark dissector -# after manually eating the 12 bytes of conformance data. -# -# Same for the access mask dissector since the idl would only define those -# flag bits that are specific to WINREG therefore we set up the appropriate -# structures and then call the wireshark accessmask dissector instead. -# -# -HF_FIELD hf_winreg_sd_max_size "Max Size" "winreg.sd.max_size" FT_UINT32 BASE_DEC NULL 0 "" "" "" -HF_FIELD hf_winreg_sd_offset "Offset" "winreg.sd.offset" FT_UINT32 BASE_DEC NULL 0 "" "" "" -HF_FIELD hf_winreg_sd_actual_size "Actual Size" "winreg.sd.actual_size" FT_UINT32 BASE_DEC NULL 0 "" "" "" -NOEMIT winreg_dissect_element_KeySecurityData_data__ -MANUAL winreg_dissect_element_KeySecurityData_data_ -MANUAL winreg_dissect_bitmap_AccessMask - - - -CODE START - #include "packet-dcerpc-lsa.h" -static void -winreg_specific_rights(tvbuff_t *tvb, gint offset, proto_tree *tree, guint32 access) -{ - proto_tree_add_boolean(tree, hf_winreg_winreg_AccessMask_KEY_WOW64_32KEY, tvb, offset, 4, access); - proto_tree_add_boolean(tree, hf_winreg_winreg_AccessMask_KEY_WOW64_64KEY, tvb, offset, 4, access); - proto_tree_add_boolean(tree, hf_winreg_winreg_AccessMask_KEY_CREATE_LINK, tvb, offset, 4, access); - proto_tree_add_boolean(tree, hf_winreg_winreg_AccessMask_KEY_NOTIFY, tvb, offset, 4, access); - proto_tree_add_boolean(tree, hf_winreg_winreg_AccessMask_KEY_ENUMERATE_SUB_KEYS, tvb, offset, 4, access); - proto_tree_add_boolean(tree, hf_winreg_winreg_AccessMask_KEY_CREATE_SUB_KEY, tvb, offset, 4, access); - proto_tree_add_boolean(tree, hf_winreg_winreg_AccessMask_KEY_SET_VALUE, tvb, offset, 4, access); - proto_tree_add_boolean(tree, hf_winreg_winreg_AccessMask_KEY_QUERY_VALUE, tvb, offset, 4, access); -} - -struct access_mask_info winreg_access_mask_info = { - "WINREG", /* Name of specific rights */ - winreg_specific_rights, /* Dissection function */ - NULL, /* Generic mapping table */ - NULL /* Standard mapping table */ -}; - -static int -winreg_dissect_element_KeySecurityData_data_(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep) -{ - guint32 len; - - if(di->conformant_run){ - /*just a run to handle conformant arrays, nothing to dissect */ - return offset; - } - - /* this is a varying and conformant array */ - offset = dissect_ndr_uint32 (tvb, offset, pinfo, tree, di, drep, hf_winreg_sd_max_size, NULL); - offset = dissect_ndr_uint32 (tvb, offset, pinfo, tree, di, drep, hf_winreg_sd_offset, NULL); - offset = dissect_ndr_uint32 (tvb, offset, pinfo, tree, di, drep, hf_winreg_sd_actual_size, &len); - - dissect_nt_sec_desc(tvb, offset, pinfo, tree, drep, TRUE, len, - &winreg_access_mask_info); - - offset += len; - - return offset; -} - -int -winreg_dissect_bitmap_AccessMask(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep, int hf_index _U_, guint32 param _U_) -{ - offset = dissect_nt_access_mask( - tvb, offset, pinfo, tree, di, drep, hf_winreg_access_mask, - &winreg_access_mask_info, NULL); - return offset; -} - -/* winreg_String : - * typedef [public,noejs] struct { - * [value(strlen_m_term(name)*2)] uint16 name_len; - * [value(strlen_m_term(name)*2)] uint16 name_size; - * [string,charset(UTF16)] uint16 *name; - * } winreg_String; - */ -static int -cnf_dissect_winreg_String(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *parent_tree, dcerpc_info* di, guint8 *drep, guint32 param, int hfindex) -{ - proto_item *item = NULL; - proto_tree *tree = NULL; - int old_offset; - header_field_info *hf_info; - - ALIGN_TO_4_BYTES; - - old_offset = offset; - hf_info=proto_registrar_get_nth(hfindex); - - if (parent_tree) { - tree = proto_tree_add_subtree_format(parent_tree, tvb, offset, 0, ett_winreg_winreg_String, &item, "%s: ", hf_info->name); - } - - offset = winreg_dissect_element_String_name_len(tvb, offset, pinfo, tree, di, drep); - - offset = winreg_dissect_element_String_name_size(tvb, offset, pinfo, tree, di, drep); - - offset = dissect_ndr_pointer_cb( - tvb, offset, pinfo, tree, di, drep, - dissect_ndr_wchar_cvstring, NDR_POINTER_UNIQUE, - hf_info->name, hfindex, cb_wstr_postprocess, - GINT_TO_POINTER(param)); - - proto_item_set_len(item, offset-old_offset); - - return offset; -} - -CODE END diff --git a/epan/dissectors/pidl/winreg.idl b/epan/dissectors/pidl/winreg.idl deleted file mode 100644 index 829a6435be..0000000000 --- a/epan/dissectors/pidl/winreg.idl +++ /dev/null @@ -1,460 +0,0 @@ -/* - winreg interface definition -*/ - -/*import "lsa.idl", "security.idl",*/ -import "misc.idl"; - -[ - uuid("338cd001-2244-31f1-aaaa-900038001003"), - version(1.0), - endpoint("ncacn_np:[\\pipe\\winreg]","ncacn_ip_tcp:","ncalrpc:"), - pointer_default(unique), - helpstring("Remote Registry Service") -] interface winreg -{ - typedef bitmap security_secinfo security_secinfo; - - /* - * Access Bits for registry ACLS - */ - - typedef [bitmap32bit] bitmap { - KEY_QUERY_VALUE = 0x00001, - KEY_SET_VALUE = 0x00002, - KEY_CREATE_SUB_KEY = 0x00004, - KEY_ENUMERATE_SUB_KEYS = 0x00008, - KEY_NOTIFY = 0x00010, - KEY_CREATE_LINK = 0x00020, - KEY_WOW64_64KEY = 0x00100, - KEY_WOW64_32KEY = 0x00200 - } winreg_AccessMask; - - const int REG_KEY_READ = ( STANDARD_RIGHTS_READ_ACCESS | - KEY_QUERY_VALUE | - KEY_ENUMERATE_SUB_KEYS | - KEY_NOTIFY); - - const int REG_KEY_EXECUTE = REG_KEY_READ; - - const int REG_KEY_WRITE = ( STANDARD_RIGHTS_WRITE_ACCESS | - KEY_SET_VALUE | - KEY_CREATE_SUB_KEY); - - const int REG_KEY_ALL = ( STANDARD_RIGHTS_REQUIRED_ACCESS | - REG_KEY_READ | - REG_KEY_WRITE | - KEY_CREATE_LINK); - - typedef [public] struct { - [value(strlen_m_term(name)*2)] uint16 name_len; - [value(strlen_m_term(name)*2)] uint16 name_size; - [string,charset(UTF16)] uint16 *name; - } winreg_String; - - /******************/ - /* Function: 0x00 */ - WERROR winreg_OpenHKCR( - [in,unique] uint16 *system_name, - [in] winreg_AccessMask access_mask, - [out,ref] policy_handle *handle - ); - - /******************/ - /* Function: 0x01 */ - WERROR winreg_OpenHKCU( - [in,unique] uint16 *system_name, - [in] winreg_AccessMask access_mask, - [out,ref] policy_handle *handle - ); - - /******************/ - /* Function: 0x02 */ - [public] WERROR winreg_OpenHKLM( - [in,unique] uint16 *system_name, - [in] winreg_AccessMask access_mask, - [out,ref] policy_handle *handle - ); - - /******************/ - /* Function: 0x03 */ - WERROR winreg_OpenHKPD( - [in,unique] uint16 *system_name, - [in] winreg_AccessMask access_mask, - [out,ref] policy_handle *handle - ); - - /******************/ - /* Function: 0x04 */ - WERROR winreg_OpenHKU( - [in,unique] uint16 *system_name, - [in] winreg_AccessMask access_mask, - [out,ref] policy_handle *handle - ); - - /******************/ - /* Function: 0x05 */ - [public] WERROR winreg_CloseKey( - [in,out,ref] policy_handle *handle - ); - - /******************/ - /* Function: 0x06 */ - - typedef struct { - [size_is(size),length_is(len)] uint8 *data; - uint32 size; - uint32 len; - } KeySecurityData; - - typedef struct { - uint32 length; - KeySecurityData sd; - boolean8 inherit; - } winreg_SecBuf; - - const int REG_OPTION_NON_VOLATILE = 0x00000000; - - typedef [bitmap32bit] bitmap { - REG_OPTION_VOLATILE = 0x00000001, - REG_OPTION_CREATE_LINK = 0x00000002, - REG_OPTION_BACKUP_RESTORE = 0x00000004, - REG_OPTION_OPEN_LINK = 0x00000008 - } winreg_KeyOptions; - - typedef [v1_enum] enum { - REG_ACTION_NONE = 0, /* used by caller */ - REG_CREATED_NEW_KEY = 1, - REG_OPENED_EXISTING_KEY = 2 - } winreg_CreateAction; - - [public] WERROR winreg_CreateKey( - [in,ref] policy_handle *handle, - [in] winreg_String name, - [in] winreg_String keyclass, - [in] winreg_KeyOptions options, - [in] winreg_AccessMask access_mask, - [in,unique] winreg_SecBuf *secdesc, - [out,ref] policy_handle *new_handle, - [in,out,unique] winreg_CreateAction *action_taken - ); - - /******************/ - /* Function: 0x07 */ - [public] WERROR winreg_DeleteKey( - [in,ref] policy_handle *handle, - [in] winreg_String key - ); - - /******************/ - /* Function: 0x08 */ - WERROR winreg_DeleteValue( - [in,ref] policy_handle *handle, - [in] winreg_String value - ); - - typedef struct { - [value(strlen_m_term_null(name)*2)] uint16 length; - /* size cannot be auto-set by value() as it is the - amount of space the server is allowed to use for this - string in the reply, not its current size */ - uint16 size; - [size_is(size/2),length_is(length/2),charset(UTF16)] uint16 *name; - } winreg_StringBuf; - - /******************/ - /* Function: 0x09 */ - [public] WERROR winreg_EnumKey( - [in,ref] policy_handle *handle, - [in] uint32 enum_index, - [in,out,ref] winreg_StringBuf *name, - [in,out,unique] winreg_StringBuf *keyclass, - [in,out,unique] NTTIME *last_changed_time - ); - - typedef struct { - [value(strlen_m_term(name)*2)] uint16 length; - /* size cannot be auto-set by value() as it is the - amount of space the server is allowed to use for this - string in the reply, not its current size */ - uint16 size; - [size_is(size/2),length_is(length/2),charset(UTF16)] uint16 *name; - } winreg_ValNameBuf; - - /******************/ - /* Function: 0x0a */ - - [public] WERROR winreg_EnumValue( - [in,ref] policy_handle *handle, - [in] uint32 enum_index, - [in,out,ref] winreg_ValNameBuf *name, - [in,out,unique] winreg_Type *type, - [in,out,unique,size_is(size ? *size : 0),length_is(length ? *length : 0),range(0,0x4000000)] uint8 *value, - [in,out,unique] uint32 *size, - [in,out,unique] uint32 *length - ); - - /******************/ - /* Function: 0x0b */ - [public] WERROR winreg_FlushKey( - [in,ref] policy_handle *handle - ); - - /******************/ - /* Function: 0x0c */ - [public] WERROR winreg_GetKeySecurity( - [in,ref] policy_handle *handle, - [in] security_secinfo sec_info, - [in,out,ref] KeySecurityData *sd - ); - - /******************/ - /* Function: 0x0d */ - WERROR winreg_LoadKey( - [in,ref] policy_handle *handle, - [in,unique] winreg_String *keyname, - [in,unique] winreg_String *filename - ); - - /******************/ - /* Function: 0x0e */ - typedef [public,bitmap32bit] bitmap { - REG_NOTIFY_CHANGE_NAME = 0x00000001, - REG_NOTIFY_CHANGE_ATTRIBUTES = 0x00000002, - REG_NOTIFY_CHANGE_LAST_SET = 0x00000004, - REG_NOTIFY_CHANGE_SECURITY = 0x00000008 - } winreg_NotifyChangeType; - - [public] WERROR winreg_NotifyChangeKeyValue( - [in,ref] policy_handle *handle, - [in] boolean8 watch_subtree, - [in] winreg_NotifyChangeType notify_filter, - [in] uint32 unknown, - [in] winreg_String string1, - [in] winreg_String string2, - [in] uint32 unknown2 - ); - - /******************/ - /* Function: 0x0f */ - [public] WERROR winreg_OpenKey( - [in,ref] policy_handle *parent_handle, - [in] winreg_String keyname, - [in] winreg_KeyOptions options, - [in] winreg_AccessMask access_mask, - [out,ref] policy_handle *handle - ); - - /******************/ - /* Function: 0x10 */ - [public] WERROR winreg_QueryInfoKey( - [in,ref] policy_handle *handle, - [in,out,ref] winreg_String *classname, - [out,ref] uint32 *num_subkeys, - [out,ref] uint32 *max_subkeylen, - [out,ref] uint32 *max_classlen, - [out,ref] uint32 *num_values, - [out,ref] uint32 *max_valnamelen, - [out,ref] uint32 *max_valbufsize, - [out,ref] uint32 *secdescsize, - [out,ref] NTTIME *last_changed_time - ); - - /******************/ - /* Function: 0x11 */ - [public] WERROR winreg_QueryValue( - [in,ref] policy_handle *handle, - [in,ref] winreg_String *value_name, - [in,out,unique] winreg_Type *type, - [in,out,unique,size_is(data_size ? *data_size : 0),length_is(data_length ? *data_length : 0),range(0,0x4000000)] uint8 *data, - [in,out,unique] uint32 *data_size, - [in,out,unique] uint32 *data_length - ); - - /******************/ - /* Function: 0x12 */ - WERROR winreg_ReplaceKey( - [in,ref] policy_handle *handle, - [in,ref] winreg_String *subkey, - [in,ref] winreg_String *new_file, - [in,ref] winreg_String *old_file - ); - - /******************/ - /* Function: 0x13 */ - - typedef [public,bitmap32bit] bitmap { - REG_WHOLE_HIVE_VOLATILE = 0x00000001, - REG_REFRESH_HIVE = 0x00000002, - REG_NO_LAZY_FLUSH = 0x00000004, - REG_FORCE_RESTORE = 0x00000008 - } winreg_RestoreKeyFlags; - - WERROR winreg_RestoreKey( - [in,ref] policy_handle *handle, - [in,ref] winreg_String *filename, - [in] winreg_RestoreKeyFlags flags - ); - - /******************/ - /* Function: 0x14 */ - - typedef struct { - uint32 data_size; - KeySecurityData sec_data; - uint8 inherit; - } KeySecurityAttribute; - - WERROR winreg_SaveKey( - [in,ref] policy_handle *handle, - [in,ref] winreg_String *filename, - [in,unique] KeySecurityAttribute *sec_attrib - ); - - /******************/ - /* Function: 0x15 */ - WERROR winreg_SetKeySecurity( - [in,ref] policy_handle *handle, - [in] security_secinfo sec_info, - [in,ref] KeySecurityData *sd - ); - - /******************/ - /* Function: 0x16 */ - WERROR winreg_SetValue( - [in,ref] policy_handle *handle, - [in] winreg_String name, - [in] winreg_Type type, - [in,size_is(size),ref] uint8 *data, - [in] uint32 size - ); - - /******************/ - /* Function: 0x17 */ - WERROR winreg_UnLoadKey( - [in,ref] policy_handle *handle, - [in,ref] winreg_String *subkey - ); - - /******************/ - /* Function: 0x18 */ - WERROR winreg_InitiateSystemShutdown( - [in,unique] uint16 *hostname, - /* - * Note: lsa_String and winreg_String both result - * in WERR_INVALID_PARAM - */ - [in,unique] lsa_StringLarge *message, - [in] uint32 timeout, - [in] uint8 force_apps, - [in] uint8 do_reboot - ); - - /******************/ - /* Function: 0x19 */ - WERROR winreg_AbortSystemShutdown( - [in,unique] uint16 *server - ); - - /******************/ - /* Function: 0x1a */ - [public] WERROR winreg_GetVersion( - [in,ref] policy_handle *handle, - [out,ref] uint32 *version - ); - - /******************/ - /* Function: 0x1b */ - WERROR winreg_OpenHKCC( - [in,unique] uint16 *system_name, - [in] winreg_AccessMask access_mask, - [out,ref] policy_handle *handle - ); - - /******************/ - /* Function: 0x1c */ - WERROR winreg_OpenHKDD( - [in,unique] uint16 *system_name, - [in] winreg_AccessMask access_mask, - [out,ref] policy_handle *handle - ); - - typedef struct { - winreg_ValNameBuf *ve_valuename; - uint32 ve_valuelen; - uint32 ve_valueptr; - winreg_Type ve_type; - } QueryMultipleValue; - - /******************/ - /* Function: 0x1d */ - [public] WERROR winreg_QueryMultipleValues( - [in,ref] policy_handle *key_handle, - [in,ref,size_is(num_values),length_is(num_values)] QueryMultipleValue *values_in, - [out,ref,size_is(num_values),length_is(num_values)] QueryMultipleValue *values_out, - [in] uint32 num_values, - [in,out,unique,size_is(*buffer_size),length_is(*buffer_size)] uint8 *buffer, - [in,out,ref] uint32 *buffer_size - ); - - /******************/ - /* Function: 0x1e */ - WERROR winreg_InitiateSystemShutdownEx( - [in,unique] uint16 *hostname, - /* - * Note: lsa_String and winreg_String both result - * in WERR_INVALID_PARAM - */ - [in,unique] lsa_StringLarge *message, - [in] uint32 timeout, - [in] uint8 force_apps, - [in] uint8 do_reboot, - [in] uint32 reason - ); - - /******************/ - /* Function: 0x1f */ - WERROR winreg_SaveKeyEx( - [in,ref] policy_handle *handle, - [in,ref] winreg_String *filename, - [in,unique] KeySecurityAttribute *sec_attrib, - [in] uint32 flags - ); - - /******************/ - /* Function: 0x20 */ - WERROR winreg_OpenHKPT( - [in,unique] uint16 *system_name, - [in] winreg_AccessMask access_mask, - [out,ref] policy_handle *handle - ); - - /******************/ - /* Function: 0x21 */ - WERROR winreg_OpenHKPN( - [in,unique] uint16 *system_name, - [in] winreg_AccessMask access_mask, - [out,ref] policy_handle *handle - ); - - /******************/ - /* Function: 0x22 */ - [public] WERROR winreg_QueryMultipleValues2( - [in,ref] policy_handle *key_handle, - [in,ref,size_is(num_values),length_is(num_values)] QueryMultipleValue *values_in, - [out,ref,size_is(num_values),length_is(num_values)] QueryMultipleValue *values_out, - [in] uint32 num_values, - [in,out,unique,size_is(*offered),length_is(*offered)] uint8 *buffer, - [in,ref] uint32 *offered, - [out,ref] uint32 *needed - ); - - /******************/ - /* Function: 0x23 */ - WERROR winreg_DeleteKeyEx( - [in,ref] policy_handle *handle, - [in,ref] winreg_String *key, - [in] winreg_AccessMask access_mask, - [in] uint32 reserved - ); -} diff --git a/epan/dissectors/pidl/winreg/winreg.cnf b/epan/dissectors/pidl/winreg/winreg.cnf new file mode 100644 index 0000000000..eb658d3b1a --- /dev/null +++ b/epan/dissectors/pidl/winreg/winreg.cnf @@ -0,0 +1,229 @@ +TYPE lsa_StringLarge "offset=lsarpc_dissect_struct_lsa_StringLarge(tvb, offset, pinfo, tree, di, drep, @HF@, @PARAM@);" FT_NONE BASE_NONE 0 NULL NULL +TYPE winreg_Type "offset=misc_dissect_enum_winreg_Type(tvb, offset, pinfo, tree, di, drep, @HF@, @PARAM@);" FT_NONE BASE_NONE 0 NULL NULL +IMPORT security_secinfo offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, di, drep, hf_winreg_winreg_GetKeySecurity_sec_info, NULL); + +# +# Make all instances of an access mask use the same hf field display filter +# name +# +HF_FIELD hf_winreg_access_mask "Access Mask" "winreg.access_mask" FT_UINT32 BASE_HEX NULL 0 "" "" "" +HF_RENAME hf_winreg_winreg_OpenHKCR_access_mask hf_winreg_access_mask +HF_RENAME hf_winreg_winreg_OpenHKLM_access_mask hf_winreg_access_mask +HF_RENAME hf_winreg_winreg_OpenHKU_access_mask hf_winreg_access_mask +HF_RENAME hf_winreg_winreg_CreateKey_access_mask hf_winreg_access_mask +HF_RENAME hf_winreg_winreg_OpenHKCC_access_mask hf_winreg_access_mask +HF_RENAME hf_winreg_winreg_OpenHKDD_access_mask hf_winreg_access_mask +HF_RENAME hf_winreg_winreg_OpenHKPT_access_mask hf_winreg_access_mask +HF_RENAME hf_winreg_winreg_OpenHKPN_access_mask hf_winreg_access_mask + + +# +# Make all instances of a system name use the same hf display filter name +# +HF_FIELD hf_winreg_system_name "System Name" "winreg.system_name" FT_UINT16 BASE_DEC NULL 0 "" "" "" +HF_RENAME hf_winreg_winreg_OpenHKCR_system_name hf_winreg_system_name +HF_RENAME hf_winreg_winreg_OpenHKCU_system_name hf_winreg_system_name +HF_RENAME hf_winreg_winreg_OpenHKLM_system_name hf_winreg_system_name +HF_RENAME hf_winreg_winreg_OpenHKPD_system_name hf_winreg_system_name +HF_RENAME hf_winreg_winreg_OpenHKU_system_name hf_winreg_system_name +HF_RENAME hf_winreg_winreg_OpenHKCC_system_name hf_winreg_system_name +HF_RENAME hf_winreg_winreg_OpenHKDD_system_name hf_winreg_system_name +HF_RENAME hf_winreg_winreg_OpenHKPT_system_name hf_winreg_system_name +HF_RENAME hf_winreg_winreg_OpenHKPN_system_name hf_winreg_system_name + + +# +# make all policyhandles use the same hf display filter name +# +HF_FIELD hf_winreg_handle "Handle" "winreg.handle" FT_BYTES BASE_NONE NULL 0 "" "" "" +HF_RENAME hf_winreg_winreg_OpenHKCR_handle hf_winreg_handle +HF_RENAME hf_winreg_winreg_OpenHKCU_handle hf_winreg_handle +HF_RENAME hf_winreg_winreg_OpenHKLM_handle hf_winreg_handle +HF_RENAME hf_winreg_winreg_OpenHKPD_handle hf_winreg_handle +HF_RENAME hf_winreg_winreg_OpenHKU_handle hf_winreg_handle +HF_RENAME hf_winreg_winreg_CloseKey_handle hf_winreg_handle +HF_RENAME hf_winreg_winreg_CreateKey_handle hf_winreg_handle +HF_RENAME hf_winreg_winreg_DeleteKey_handle hf_winreg_handle +HF_RENAME hf_winreg_winreg_DeleteValue_handle hf_winreg_handle +HF_RENAME hf_winreg_winreg_EnumKey_handle hf_winreg_handle +HF_RENAME hf_winreg_winreg_EnumValue_handle hf_winreg_handle +HF_RENAME hf_winreg_winreg_FlushKey_handle hf_winreg_handle +HF_RENAME hf_winreg_winreg_GetKeySecurity_handle hf_winreg_handle +HF_RENAME hf_winreg_winreg_LoadKey_handle hf_winreg_handle +HF_RENAME hf_winreg_winreg_NotifyChangeKeyValue_handle hf_winreg_handle +HF_RENAME hf_winreg_winreg_OpenKey_handle hf_winreg_handle +HF_RENAME hf_winreg_winreg_QueryInfoKey_handle hf_winreg_handle +HF_RENAME hf_winreg_winreg_QueryValue_handle hf_winreg_handle +HF_RENAME hf_winreg_winreg_SetKeySecurity_handle hf_winreg_handle +HF_RENAME hf_winreg_winreg_SetValue_handle hf_winreg_handle +HF_RENAME hf_winreg_winreg_GetVersion_handle hf_winreg_handle +HF_RENAME hf_winreg_winreg_OpenHKCC_handle hf_winreg_handle +HF_RENAME hf_winreg_winreg_OpenHKDD_handle hf_winreg_handle +HF_RENAME hf_winreg_winreg_OpenHKPT_handle hf_winreg_handle +HF_RENAME hf_winreg_winreg_OpenHKPN_handle hf_winreg_handle + + + +# +# Make both instances of KeySecurityData resolve to the same +# hf display filter field. +# +HF_FIELD hf_winreg_sd "KeySecurityData" "winreg.sd" FT_NONE BASE_NONE NULL 0 "" "" "" +HF_RENAME hf_winreg_winreg_GetKeySecurity_sd hf_winreg_sd +HF_RENAME hf_winreg_winreg_SetKeySecurity_sd hf_winreg_sd + + + +# +# policyhandle tracking +# This block is to specify where a policyhandle is opened and where it is +# closed so that policyhandles when dissected contain nice info such as +# [opened in xxx] [closed in yyy] +# +# Policyhandles are opened in these functions +PARAM_VALUE winreg_dissect_element_OpenHKCR_handle_ PIDL_POLHND_OPEN +PARAM_VALUE winreg_dissect_element_OpenHKCU_handle_ PIDL_POLHND_OPEN +PARAM_VALUE winreg_dissect_element_OpenHKLM_handle_ PIDL_POLHND_OPEN +PARAM_VALUE winreg_dissect_element_OpenHKPD_handle_ PIDL_POLHND_OPEN +PARAM_VALUE winreg_dissect_element_OpenHKU_handle_ PIDL_POLHND_OPEN +PARAM_VALUE winreg_dissect_element_OpenHKCC_handle_ PIDL_POLHND_OPEN +PARAM_VALUE winreg_dissect_element_OpenHKDD_handle_ PIDL_POLHND_OPEN +PARAM_VALUE winreg_dissect_element_OpenHKPT_handle_ PIDL_POLHND_OPEN +PARAM_VALUE winreg_dissect_element_OpenHKPN_handle_ PIDL_POLHND_OPEN +PARAM_VALUE winreg_dissect_element_CreateKey_new_handle_ PIDL_POLHND_OPEN +PARAM_VALUE winreg_dissect_element_OpenKey_handle_ PIDL_POLHND_OPEN +# Policyhandles are closed in these functions +PARAM_VALUE winreg_dissect_element_CloseKey_handle_ PIDL_POLHND_CLOSE + + +# winreg_String +# +# Create a new type to handle winreg_String so that we can get nice and +# pretty dissection of the strings contained within winreg +TYPE winreg_String "offset=cnf_dissect_winreg_String(tvb, offset, pinfo, tree, di, drep, @PARAM@, @HF@);" FT_STRING BASE_NONE 0 NULL 4 +# +# +# +PARAM_VALUE winreg_dissect_element_CreateKey_name 2|PIDL_SET_COL_INFO +PARAM_VALUE winreg_dissect_element_DeleteKey_key 2|PIDL_SET_COL_INFO +PARAM_VALUE winreg_dissect_element_LoadKey_keyname 2|PIDL_SET_COL_INFO +PARAM_VALUE winreg_dissect_element_OpenKey_keyname 2|PIDL_SET_COL_INFO|PIDL_STR_SAVE +PARAM_VALUE winreg_dissect_element_QueryValue_value_name 2|PIDL_SET_COL_INFO +PARAM_VALUE winreg_dissect_element_SaveKey_filename 2|PIDL_SET_COL_INFO +PARAM_VALUE winreg_dissect_element_SetValue_name 2|PIDL_SET_COL_INFO + +# +# Override the generation of dissectors of the security descriptor and the +# access mask. +# The security descriptor is just an array of bytes in the idl file +# so we override generation of it and calls the proper wireshark dissector +# after manually eating the 12 bytes of conformance data. +# +# Same for the access mask dissector since the idl would only define those +# flag bits that are specific to WINREG therefore we set up the appropriate +# structures and then call the wireshark accessmask dissector instead. +# +# +HF_FIELD hf_winreg_sd_max_size "Max Size" "winreg.sd.max_size" FT_UINT32 BASE_DEC NULL 0 "" "" "" +HF_FIELD hf_winreg_sd_offset "Offset" "winreg.sd.offset" FT_UINT32 BASE_DEC NULL 0 "" "" "" +HF_FIELD hf_winreg_sd_actual_size "Actual Size" "winreg.sd.actual_size" FT_UINT32 BASE_DEC NULL 0 "" "" "" +NOEMIT winreg_dissect_element_KeySecurityData_data__ +MANUAL winreg_dissect_element_KeySecurityData_data_ +MANUAL winreg_dissect_bitmap_AccessMask + + + +CODE START + #include "packet-dcerpc-lsa.h" +static void +winreg_specific_rights(tvbuff_t *tvb, gint offset, proto_tree *tree, guint32 access) +{ + proto_tree_add_boolean(tree, hf_winreg_winreg_AccessMask_KEY_WOW64_32KEY, tvb, offset, 4, access); + proto_tree_add_boolean(tree, hf_winreg_winreg_AccessMask_KEY_WOW64_64KEY, tvb, offset, 4, access); + proto_tree_add_boolean(tree, hf_winreg_winreg_AccessMask_KEY_CREATE_LINK, tvb, offset, 4, access); + proto_tree_add_boolean(tree, hf_winreg_winreg_AccessMask_KEY_NOTIFY, tvb, offset, 4, access); + proto_tree_add_boolean(tree, hf_winreg_winreg_AccessMask_KEY_ENUMERATE_SUB_KEYS, tvb, offset, 4, access); + proto_tree_add_boolean(tree, hf_winreg_winreg_AccessMask_KEY_CREATE_SUB_KEY, tvb, offset, 4, access); + proto_tree_add_boolean(tree, hf_winreg_winreg_AccessMask_KEY_SET_VALUE, tvb, offset, 4, access); + proto_tree_add_boolean(tree, hf_winreg_winreg_AccessMask_KEY_QUERY_VALUE, tvb, offset, 4, access); +} + +struct access_mask_info winreg_access_mask_info = { + "WINREG", /* Name of specific rights */ + winreg_specific_rights, /* Dissection function */ + NULL, /* Generic mapping table */ + NULL /* Standard mapping table */ +}; + +static int +winreg_dissect_element_KeySecurityData_data_(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep) +{ + guint32 len; + + if(di->conformant_run){ + /*just a run to handle conformant arrays, nothing to dissect */ + return offset; + } + + /* this is a varying and conformant array */ + offset = dissect_ndr_uint32 (tvb, offset, pinfo, tree, di, drep, hf_winreg_sd_max_size, NULL); + offset = dissect_ndr_uint32 (tvb, offset, pinfo, tree, di, drep, hf_winreg_sd_offset, NULL); + offset = dissect_ndr_uint32 (tvb, offset, pinfo, tree, di, drep, hf_winreg_sd_actual_size, &len); + + dissect_nt_sec_desc(tvb, offset, pinfo, tree, drep, TRUE, len, + &winreg_access_mask_info); + + offset += len; + + return offset; +} + +int +winreg_dissect_bitmap_AccessMask(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep, int hf_index _U_, guint32 param _U_) +{ + offset = dissect_nt_access_mask( + tvb, offset, pinfo, tree, di, drep, hf_winreg_access_mask, + &winreg_access_mask_info, NULL); + return offset; +} + +/* winreg_String : + * typedef [public,noejs] struct { + * [value(strlen_m_term(name)*2)] uint16 name_len; + * [value(strlen_m_term(name)*2)] uint16 name_size; + * [string,charset(UTF16)] uint16 *name; + * } winreg_String; + */ +static int +cnf_dissect_winreg_String(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *parent_tree, dcerpc_info* di, guint8 *drep, guint32 param, int hfindex) +{ + proto_item *item = NULL; + proto_tree *tree = NULL; + int old_offset; + header_field_info *hf_info; + + ALIGN_TO_4_BYTES; + + old_offset = offset; + hf_info=proto_registrar_get_nth(hfindex); + + if (parent_tree) { + tree = proto_tree_add_subtree_format(parent_tree, tvb, offset, 0, ett_winreg_winreg_String, &item, "%s: ", hf_info->name); + } + + offset = winreg_dissect_element_String_name_len(tvb, offset, pinfo, tree, di, drep); + + offset = winreg_dissect_element_String_name_size(tvb, offset, pinfo, tree, di, drep); + + offset = dissect_ndr_pointer_cb( + tvb, offset, pinfo, tree, di, drep, + dissect_ndr_wchar_cvstring, NDR_POINTER_UNIQUE, + hf_info->name, hfindex, cb_wstr_postprocess, + GINT_TO_POINTER(param)); + + proto_item_set_len(item, offset-old_offset); + + return offset; +} + +CODE END diff --git a/epan/dissectors/pidl/winreg/winreg.idl b/epan/dissectors/pidl/winreg/winreg.idl new file mode 100644 index 0000000000..1fd4084887 --- /dev/null +++ b/epan/dissectors/pidl/winreg/winreg.idl @@ -0,0 +1,460 @@ +/* + winreg interface definition +*/ + +/*import "lsa.idl", "security.idl",*/ +import "misc/misc.idl"; + +[ + uuid("338cd001-2244-31f1-aaaa-900038001003"), + version(1.0), + endpoint("ncacn_np:[\\pipe\\winreg]","ncacn_ip_tcp:","ncalrpc:"), + pointer_default(unique), + helpstring("Remote Registry Service") +] interface winreg +{ + typedef bitmap security_secinfo security_secinfo; + + /* + * Access Bits for registry ACLS + */ + + typedef [bitmap32bit] bitmap { + KEY_QUERY_VALUE = 0x00001, + KEY_SET_VALUE = 0x00002, + KEY_CREATE_SUB_KEY = 0x00004, + KEY_ENUMERATE_SUB_KEYS = 0x00008, + KEY_NOTIFY = 0x00010, + KEY_CREATE_LINK = 0x00020, + KEY_WOW64_64KEY = 0x00100, + KEY_WOW64_32KEY = 0x00200 + } winreg_AccessMask; + + const int REG_KEY_READ = ( STANDARD_RIGHTS_READ_ACCESS | + KEY_QUERY_VALUE | + KEY_ENUMERATE_SUB_KEYS | + KEY_NOTIFY); + + const int REG_KEY_EXECUTE = REG_KEY_READ; + + const int REG_KEY_WRITE = ( STANDARD_RIGHTS_WRITE_ACCESS | + KEY_SET_VALUE | + KEY_CREATE_SUB_KEY); + + const int REG_KEY_ALL = ( STANDARD_RIGHTS_REQUIRED_ACCESS | + REG_KEY_READ | + REG_KEY_WRITE | + KEY_CREATE_LINK); + + typedef [public] struct { + [value(strlen_m_term(name)*2)] uint16 name_len; + [value(strlen_m_term(name)*2)] uint16 name_size; + [string,charset(UTF16)] uint16 *name; + } winreg_String; + + /******************/ + /* Function: 0x00 */ + WERROR winreg_OpenHKCR( + [in,unique] uint16 *system_name, + [in] winreg_AccessMask access_mask, + [out,ref] policy_handle *handle + ); + + /******************/ + /* Function: 0x01 */ + WERROR winreg_OpenHKCU( + [in,unique] uint16 *system_name, + [in] winreg_AccessMask access_mask, + [out,ref] policy_handle *handle + ); + + /******************/ + /* Function: 0x02 */ + [public] WERROR winreg_OpenHKLM( + [in,unique] uint16 *system_name, + [in] winreg_AccessMask access_mask, + [out,ref] policy_handle *handle + ); + + /******************/ + /* Function: 0x03 */ + WERROR winreg_OpenHKPD( + [in,unique] uint16 *system_name, + [in] winreg_AccessMask access_mask, + [out,ref] policy_handle *handle + ); + + /******************/ + /* Function: 0x04 */ + WERROR winreg_OpenHKU( + [in,unique] uint16 *system_name, + [in] winreg_AccessMask access_mask, + [out,ref] policy_handle *handle + ); + + /******************/ + /* Function: 0x05 */ + [public] WERROR winreg_CloseKey( + [in,out,ref] policy_handle *handle + ); + + /******************/ + /* Function: 0x06 */ + + typedef struct { + [size_is(size),length_is(len)] uint8 *data; + uint32 size; + uint32 len; + } KeySecurityData; + + typedef struct { + uint32 length; + KeySecurityData sd; + boolean8 inherit; + } winreg_SecBuf; + + const int REG_OPTION_NON_VOLATILE = 0x00000000; + + typedef [bitmap32bit] bitmap { + REG_OPTION_VOLATILE = 0x00000001, + REG_OPTION_CREATE_LINK = 0x00000002, + REG_OPTION_BACKUP_RESTORE = 0x00000004, + REG_OPTION_OPEN_LINK = 0x00000008 + } winreg_KeyOptions; + + typedef [v1_enum] enum { + REG_ACTION_NONE = 0, /* used by caller */ + REG_CREATED_NEW_KEY = 1, + REG_OPENED_EXISTING_KEY = 2 + } winreg_CreateAction; + + [public] WERROR winreg_CreateKey( + [in,ref] policy_handle *handle, + [in] winreg_String name, + [in] winreg_String keyclass, + [in] winreg_KeyOptions options, + [in] winreg_AccessMask access_mask, + [in,unique] winreg_SecBuf *secdesc, + [out,ref] policy_handle *new_handle, + [in,out,unique] winreg_CreateAction *action_taken + ); + + /******************/ + /* Function: 0x07 */ + [public] WERROR winreg_DeleteKey( + [in,ref] policy_handle *handle, + [in] winreg_String key + ); + + /******************/ + /* Function: 0x08 */ + WERROR winreg_DeleteValue( + [in,ref] policy_handle *handle, + [in] winreg_String value + ); + + typedef struct { + [value(strlen_m_term_null(name)*2)] uint16 length; + /* size cannot be auto-set by value() as it is the + amount of space the server is allowed to use for this + string in the reply, not its current size */ + uint16 size; + [size_is(size/2),length_is(length/2),charset(UTF16)] uint16 *name; + } winreg_StringBuf; + + /******************/ + /* Function: 0x09 */ + [public] WERROR winreg_EnumKey( + [in,ref] policy_handle *handle, + [in] uint32 enum_index, + [in,out,ref] winreg_StringBuf *name, + [in,out,unique] winreg_StringBuf *keyclass, + [in,out,unique] NTTIME *last_changed_time + ); + + typedef struct { + [value(strlen_m_term(name)*2)] uint16 length; + /* size cannot be auto-set by value() as it is the + amount of space the server is allowed to use for this + string in the reply, not its current size */ + uint16 size; + [size_is(size/2),length_is(length/2),charset(UTF16)] uint16 *name; + } winreg_ValNameBuf; + + /******************/ + /* Function: 0x0a */ + + [public] WERROR winreg_EnumValue( + [in,ref] policy_handle *handle, + [in] uint32 enum_index, + [in,out,ref] winreg_ValNameBuf *name, + [in,out,unique] winreg_Type *type, + [in,out,unique,size_is(size ? *size : 0),length_is(length ? *length : 0),range(0,0x4000000)] uint8 *value, + [in,out,unique] uint32 *size, + [in,out,unique] uint32 *length + ); + + /******************/ + /* Function: 0x0b */ + [public] WERROR winreg_FlushKey( + [in,ref] policy_handle *handle + ); + + /******************/ + /* Function: 0x0c */ + [public] WERROR winreg_GetKeySecurity( + [in,ref] policy_handle *handle, + [in] security_secinfo sec_info, + [in,out,ref] KeySecurityData *sd + ); + + /******************/ + /* Function: 0x0d */ + WERROR winreg_LoadKey( + [in,ref] policy_handle *handle, + [in,unique] winreg_String *keyname, + [in,unique] winreg_String *filename + ); + + /******************/ + /* Function: 0x0e */ + typedef [public,bitmap32bit] bitmap { + REG_NOTIFY_CHANGE_NAME = 0x00000001, + REG_NOTIFY_CHANGE_ATTRIBUTES = 0x00000002, + REG_NOTIFY_CHANGE_LAST_SET = 0x00000004, + REG_NOTIFY_CHANGE_SECURITY = 0x00000008 + } winreg_NotifyChangeType; + + [public] WERROR winreg_NotifyChangeKeyValue( + [in,ref] policy_handle *handle, + [in] boolean8 watch_subtree, + [in] winreg_NotifyChangeType notify_filter, + [in] uint32 unknown, + [in] winreg_String string1, + [in] winreg_String string2, + [in] uint32 unknown2 + ); + + /******************/ + /* Function: 0x0f */ + [public] WERROR winreg_OpenKey( + [in,ref] policy_handle *parent_handle, + [in] winreg_String keyname, + [in] winreg_KeyOptions options, + [in] winreg_AccessMask access_mask, + [out,ref] policy_handle *handle + ); + + /******************/ + /* Function: 0x10 */ + [public] WERROR winreg_QueryInfoKey( + [in,ref] policy_handle *handle, + [in,out,ref] winreg_String *classname, + [out,ref] uint32 *num_subkeys, + [out,ref] uint32 *max_subkeylen, + [out,ref] uint32 *max_classlen, + [out,ref] uint32 *num_values, + [out,ref] uint32 *max_valnamelen, + [out,ref] uint32 *max_valbufsize, + [out,ref] uint32 *secdescsize, + [out,ref] NTTIME *last_changed_time + ); + + /******************/ + /* Function: 0x11 */ + [public] WERROR winreg_QueryValue( + [in,ref] policy_handle *handle, + [in,ref] winreg_String *value_name, + [in,out,unique] winreg_Type *type, + [in,out,unique,size_is(data_size ? *data_size : 0),length_is(data_length ? *data_length : 0),range(0,0x4000000)] uint8 *data, + [in,out,unique] uint32 *data_size, + [in,out,unique] uint32 *data_length + ); + + /******************/ + /* Function: 0x12 */ + WERROR winreg_ReplaceKey( + [in,ref] policy_handle *handle, + [in,ref] winreg_String *subkey, + [in,ref] winreg_String *new_file, + [in,ref] winreg_String *old_file + ); + + /******************/ + /* Function: 0x13 */ + + typedef [public,bitmap32bit] bitmap { + REG_WHOLE_HIVE_VOLATILE = 0x00000001, + REG_REFRESH_HIVE = 0x00000002, + REG_NO_LAZY_FLUSH = 0x00000004, + REG_FORCE_RESTORE = 0x00000008 + } winreg_RestoreKeyFlags; + + WERROR winreg_RestoreKey( + [in,ref] policy_handle *handle, + [in,ref] winreg_String *filename, + [in] winreg_RestoreKeyFlags flags + ); + + /******************/ + /* Function: 0x14 */ + + typedef struct { + uint32 data_size; + KeySecurityData sec_data; + uint8 inherit; + } KeySecurityAttribute; + + WERROR winreg_SaveKey( + [in,ref] policy_handle *handle, + [in,ref] winreg_String *filename, + [in,unique] KeySecurityAttribute *sec_attrib + ); + + /******************/ + /* Function: 0x15 */ + WERROR winreg_SetKeySecurity( + [in,ref] policy_handle *handle, + [in] security_secinfo sec_info, + [in,ref] KeySecurityData *sd + ); + + /******************/ + /* Function: 0x16 */ + WERROR winreg_SetValue( + [in,ref] policy_handle *handle, + [in] winreg_String name, + [in] winreg_Type type, + [in,size_is(size),ref] uint8 *data, + [in] uint32 size + ); + + /******************/ + /* Function: 0x17 */ + WERROR winreg_UnLoadKey( + [in,ref] policy_handle *handle, + [in,ref] winreg_String *subkey + ); + + /******************/ + /* Function: 0x18 */ + WERROR winreg_InitiateSystemShutdown( + [in,unique] uint16 *hostname, + /* + * Note: lsa_String and winreg_String both result + * in WERR_INVALID_PARAM + */ + [in,unique] lsa_StringLarge *message, + [in] uint32 timeout, + [in] uint8 force_apps, + [in] uint8 do_reboot + ); + + /******************/ + /* Function: 0x19 */ + WERROR winreg_AbortSystemShutdown( + [in,unique] uint16 *server + ); + + /******************/ + /* Function: 0x1a */ + [public] WERROR winreg_GetVersion( + [in,ref] policy_handle *handle, + [out,ref] uint32 *version + ); + + /******************/ + /* Function: 0x1b */ + WERROR winreg_OpenHKCC( + [in,unique] uint16 *system_name, + [in] winreg_AccessMask access_mask, + [out,ref] policy_handle *handle + ); + + /******************/ + /* Function: 0x1c */ + WERROR winreg_OpenHKDD( + [in,unique] uint16 *system_name, + [in] winreg_AccessMask access_mask, + [out,ref] policy_handle *handle + ); + + typedef struct { + winreg_ValNameBuf *ve_valuename; + uint32 ve_valuelen; + uint32 ve_valueptr; + winreg_Type ve_type; + } QueryMultipleValue; + + /******************/ + /* Function: 0x1d */ + [public] WERROR winreg_QueryMultipleValues( + [in,ref] policy_handle *key_handle, + [in,ref,size_is(num_values),length_is(num_values)] QueryMultipleValue *values_in, + [out,ref,size_is(num_values),length_is(num_values)] QueryMultipleValue *values_out, + [in] uint32 num_values, + [in,out,unique,size_is(*buffer_size),length_is(*buffer_size)] uint8 *buffer, + [in,out,ref] uint32 *buffer_size + ); + + /******************/ + /* Function: 0x1e */ + WERROR winreg_InitiateSystemShutdownEx( + [in,unique] uint16 *hostname, + /* + * Note: lsa_String and winreg_String both result + * in WERR_INVALID_PARAM + */ + [in,unique] lsa_StringLarge *message, + [in] uint32 timeout, + [in] uint8 force_apps, + [in] uint8 do_reboot, + [in] uint32 reason + ); + + /******************/ + /* Function: 0x1f */ + WERROR winreg_SaveKeyEx( + [in,ref] policy_handle *handle, + [in,ref] winreg_String *filename, + [in,unique] KeySecurityAttribute *sec_attrib, + [in] uint32 flags + ); + + /******************/ + /* Function: 0x20 */ + WERROR winreg_OpenHKPT( + [in,unique] uint16 *system_name, + [in] winreg_AccessMask access_mask, + [out,ref] policy_handle *handle + ); + + /******************/ + /* Function: 0x21 */ + WERROR winreg_OpenHKPN( + [in,unique] uint16 *system_name, + [in] winreg_AccessMask access_mask, + [out,ref] policy_handle *handle + ); + + /******************/ + /* Function: 0x22 */ + [public] WERROR winreg_QueryMultipleValues2( + [in,ref] policy_handle *key_handle, + [in,ref,size_is(num_values),length_is(num_values)] QueryMultipleValue *values_in, + [out,ref,size_is(num_values),length_is(num_values)] QueryMultipleValue *values_out, + [in] uint32 num_values, + [in,out,unique,size_is(*offered),length_is(*offered)] uint8 *buffer, + [in,ref] uint32 *offered, + [out,ref] uint32 *needed + ); + + /******************/ + /* Function: 0x23 */ + WERROR winreg_DeleteKeyEx( + [in,ref] policy_handle *handle, + [in,ref] winreg_String *key, + [in] winreg_AccessMask access_mask, + [in] uint32 reserved + ); +} diff --git a/epan/dissectors/pidl/witness.cnf b/epan/dissectors/pidl/witness.cnf deleted file mode 100644 index a934e424e7..0000000000 --- a/epan/dissectors/pidl/witness.cnf +++ /dev/null @@ -1,203 +0,0 @@ -MANUAL witness_dissect_element_interfaceInfo_group_name -NOEMIT witness_dissect_element_interfaceInfo_group_name -MANUAL witness_dissect_struct_notifyResponse -MANUAL witness_dissect_element_notifyResponse_messages -NOEMIT witness_dissect_element_notifyResponse_messages -MANUAL witness_dissect_struct_IPaddrInfoList -NOEMIT witness_dissect_struct_IPaddrInfoList -NOEMIT witness_dissect_element_IPaddrInfoList_addr - -HF_FIELD hf_witness_witness_notifyResponse_messages_ "Messages" "witness.witness_notifyResponse.messages_" FT_NONE BASE_NONE NULL 0 "" "" "" - -TYPE ipv4address "offset=PIDL_dissect_ipv4address(tvb, offset, pinfo, tree, di, drep, @HF@, PIDL_SET_COL_INFO);" FT_IPv4 BASE_NONE 0 NULL 4 - -TYPE ipv6address "offset=PIDL_dissect_ipv6address(tvb, offset, pinfo, tree, di, drep, @HF@, PIDL_SET_COL_INFO);" FT_IPv6 BASE_NONE 0 NULL 2 - -CODE START - - #include "packet-smb-common.h" - #include "to_str.h" - -static int -witness_dissect_notifyResponse_message(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_); - -static int -witness_dissect_notifyResponse_message_(tvbuff_t *tvb, int offset, int length _U_, packet_info *pinfo, - proto_tree *tree, dcerpc_info *di, guint8 *drep _U_) -{ - guint32 *type = (guint32 *)di->private_data; - guint8 le_drep[4] = { DREP_LITTLE_ENDIAN, }; - return witness_dissect_notifyResponse_message(tvb, offset, pinfo, tree, di, le_drep, - hf_witness_witness_notifyResponse_messages_, *type); -} - -static int -witness_dissect_element_notifyResponse_messages(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info *di _U_, guint8 *drep _U_) -{ - offset = dissect_ndr_ucarray_block(tvb, offset, pinfo, tree, di, drep, - witness_dissect_notifyResponse_message_); - return offset; -} - -int -witness_dissect_struct_notifyResponse(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_) -{ - guint32 *type = NULL; - proto_item *item = NULL; - proto_tree *tree = NULL; - int old_offset; - - ALIGN_TO_4_BYTES; - - ALIGN_TO_4_BYTES; - - old_offset = offset; - - if (parent_tree) { - item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA); - tree = proto_item_add_subtree(item, ett_witness_witness_notifyResponse); - } - - type = wmem_new0(wmem_packet_scope(), guint32); - - offset = witness_dissect_element_notifyResponse_type(tvb, offset, pinfo, tree, di, drep, type); - - offset = witness_dissect_element_notifyResponse_length(tvb, offset, pinfo, tree, di, drep); - - offset = witness_dissect_element_notifyResponse_num(tvb, offset, pinfo, tree, di, drep); - - di->private_data = type; - offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, - witness_dissect_element_notifyResponse_messages, - NDR_POINTER_UNIQUE, "Pointer to Message Buffer (uint8)", - hf_witness_witness_notifyResponse_messages); - - proto_item_set_len(item, offset-old_offset); - - if (di->call_data->flags & DCERPC_IS_NDR64) { - ALIGN_TO_4_BYTES; - } - - return offset; -} - -static int -witness_dissect_element_IPaddrInfoList_addr(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_) -{ - offset = witness_dissect_struct_IPaddrInfo(tvb,offset,pinfo,tree,di,drep,hf_witness_witness_IPaddrInfoList_addr,0); - - return offset; -} - -int -witness_dissect_struct_IPaddrInfoList(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_) -{ - proto_item *item = NULL; - proto_tree *tree = NULL; - gboolean oldalign = di->no_align; - int old_offset; - guint32 i, num; - - di->no_align = TRUE; - - old_offset = offset; - - if (parent_tree) { - item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA); - tree = proto_item_add_subtree(item, ett_witness_witness_IPaddrInfoList); - } - - offset = witness_dissect_element_IPaddrInfoList_length(tvb, offset, pinfo, tree, di, drep); - - offset = witness_dissect_element_IPaddrInfoList_reserved(tvb, offset, pinfo, tree, di, drep); - - num = tvb_get_letohl(tvb, offset); - - offset = witness_dissect_element_IPaddrInfoList_num(tvb, offset, pinfo, tree, di, drep); - - for (i = 0; i < num; i++) { - offset = witness_dissect_element_IPaddrInfoList_addr(tvb, offset, pinfo, tree, di, drep); - } - - proto_item_set_len(item, offset-old_offset); - - di->no_align = oldalign; - - return offset; -} - -static int -witness_dissect_element_interfaceInfo_group_name(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *parent_tree, dcerpc_info *di _U_, guint8 *drep _U_) -{ - const gchar *str; - int len = 260; - guint16 bc = tvb_captured_length_remaining(tvb, offset); - - str = get_unicode_or_ascii_string(tvb, &offset, TRUE, &len, TRUE, TRUE, &bc); - - if (str) { - proto_item *pi; - pi = proto_tree_add_string(parent_tree, hf_witness_witness_interfaceInfo_group_name, tvb, offset, 2*260, str); - proto_item_append_text(pi, " [%d]", len); - proto_item_append_text(parent_tree, ": %s", str); - - } else { - } - - return offset + 2*260; -} - -static int -PIDL_dissect_ipv4address(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info *di, guint8 *drep _U_, int hfindex, guint32 param) -{ - if (di->conformant_run) { - /* just a run to handle conformant arrays, no scalars to dissect */ - return offset; - } - - - if (!di->no_align && (offset % 4)) { - offset += 4 - (offset % 4); - } - - proto_tree_add_item(tree, hfindex, tvb, offset, 4, ENC_BIG_ENDIAN); - - if (param & PIDL_SET_COL_INFO) { - const char *ip = tvb_ip_to_str(tvb, offset); - header_field_info *hf_info = proto_registrar_get_nth(hfindex); - - proto_item_append_text(proto_tree_get_parent(tree), " %s:%s", hf_info->name, ip); - - col_append_fstr(pinfo->cinfo, COL_INFO," %s:%s", hf_info->name, ip); - } - return offset + 4; -} - -static int -PIDL_dissect_ipv6address(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info *di, guint8 *drep _U_, int hfindex, guint32 param) -{ - if (di->conformant_run) { - /* just a run to handle conformant arrays, no scalars to dissect */ - return offset; - } - - - if (!di->no_align && (offset % 2)) { - offset += 2 - (offset % 2); - } - - proto_tree_add_item(tree, hfindex, tvb, offset, 16, ENC_BIG_ENDIAN); - - if (param & PIDL_SET_COL_INFO) { - const char *ip = tvb_ip6_to_str(tvb, offset); - header_field_info *hf_info = proto_registrar_get_nth(hfindex); - - proto_item_append_text(proto_tree_get_parent(tree), " %s:%s", hf_info->name, ip); - - col_append_fstr(pinfo->cinfo, COL_INFO," %s:%s", hf_info->name, ip); - } - - return offset + 16; -} - -CODE END diff --git a/epan/dissectors/pidl/witness.idl b/epan/dissectors/pidl/witness.idl deleted file mode 100644 index febae2524a..0000000000 --- a/epan/dissectors/pidl/witness.idl +++ /dev/null @@ -1,152 +0,0 @@ -#include "idl_types.h" - -import "misc.idl"; - -[ - uuid("ccd8c074-d0e5-4a40-92b4-d074faa6ba28"), - version(1.1), - pointer_default(unique), - helpstring("SMB Witness Service"), - helper("../librpc/ndr/ndr_witness.h"), - endpoint("ncacn_ip_tcp:") -] -interface witness -{ - typedef [v1_enum] enum { - WITNESS_V1 = 0x00010001, - WITNESS_V2 = 0x00020000, - WITNESS_UNSPECIFIED_VERSION = 0xFFFFFFFF - } witness_version; - - /*****************/ - /* Function 0x00 */ - - typedef [enum16bit] enum { - WITNESS_STATE_UNKNOWN = 0x00, - WITNESS_STATE_AVAILABLE = 0x01, - WITNESS_STATE_UNAVAILABLE = 0xff - } witness_interfaceInfo_state; - - typedef [bitmap32bit] bitmap { - WITNESS_INFO_IPv4_VALID = 0x01, - WITNESS_INFO_IPv6_VALID = 0x02, - WITNESS_INFO_WITNESS_IF = 0x04 - } witness_interfaceInfo_flags; - - typedef struct { - [charset(UTF16),to_null] uint16 group_name[260]; - witness_version version; - witness_interfaceInfo_state state; - [flag(NDR_BIG_ENDIAN)] ipv4address ipv4; - [flag(NDR_BIG_ENDIAN)] ipv6address ipv6; - witness_interfaceInfo_flags flags; - } witness_interfaceInfo; - - typedef struct { - uint32 num_interfaces; - [size_is(num_interfaces)] witness_interfaceInfo *interfaces; - } witness_interfaceList; - - [public] WERROR witness_GetInterfaceList( - [out] witness_interfaceList **interface_list - ); - - /*****************/ - /* Function 0x01 */ - - [public] WERROR witness_Register( - [out,ref] policy_handle *context_handle, - [in] witness_version version, - [in,unique,string,charset(UTF16)] uint16 *net_name, - [in,unique,string,charset(UTF16)] uint16 *ip_address, - [in,unique,string,charset(UTF16)] uint16 *client_computer_name - ); - - /*****************/ - /* Function 0x02 */ - - [public] WERROR witness_UnRegister( - [in] policy_handle context_handle - ); - - /*****************/ - /* Function 0x03 */ - - typedef [v1_enum,public] enum { - WITNESS_NOTIFY_RESOURCE_CHANGE = 1, - WITNESS_NOTIFY_CLIENT_MOVE = 2, - WITNESS_NOTIFY_SHARE_MOVE = 3, - WITNESS_NOTIFY_IP_CHANGE = 4 - } witness_notifyResponse_type; - - typedef [v1_enum] enum { - WITNESS_RESOURCE_STATE_UNKNOWN = 0x00, - WITNESS_RESOURCE_STATE_AVAILABLE = 0x01, - WITNESS_RESOURCE_STATE_UNAVAILABLE = 0xff - } witness_ResourceChange_type; - - typedef [flag(NDR_NOALIGN|NDR_LITTLE_ENDIAN),gensize,public] struct { - [value(ndr_size_witness_ResourceChange(r,ndr->flags))] uint32 length; - witness_ResourceChange_type type; - nstring name; - } witness_ResourceChange; - - typedef [bitmap32bit] bitmap { - WITNESS_IPADDR_V4 = 0x01, - WITNESS_IPADDR_V6 = 0x02, - WITNESS_IPADDR_ONLINE = 0x08, - WITNESS_IPADDR_OFFLINE = 0x10 - } witness_IPaddrInfo_flags; - - typedef [flag(NDR_NOALIGN|NDR_LITTLE_ENDIAN),gensize] struct { - witness_IPaddrInfo_flags flags; - ipv4address ipv4; - ipv6address ipv6; - } witness_IPaddrInfo; - - typedef [flag(NDR_NOALIGN|NDR_LITTLE_ENDIAN)] struct { - [value(r->num*ndr_size_witness_IPaddrInfo(r->addr, ndr->flags))] uint32 length; - [value(0)] uint32 reserved; - uint32 num; - witness_IPaddrInfo addr[num]; - } witness_IPaddrInfoList; - - typedef [public,switch_type(witness_notifyResponse_type),nodiscriminant, flag(NDR_NOALIGN|NDR_LITTLE_ENDIAN)] union { - [case(WITNESS_NOTIFY_RESOURCE_CHANGE)] witness_ResourceChange resource_change; - [case(WITNESS_NOTIFY_CLIENT_MOVE)] witness_IPaddrInfoList client_move; - [case(WITNESS_NOTIFY_SHARE_MOVE)] witness_IPaddrInfoList share_move; - [case(WITNESS_NOTIFY_IP_CHANGE)] witness_IPaddrInfoList ip_change; - [default,flag(NDR_REMAINING)] DATA_BLOB data; - } witness_notifyResponse_message; - - typedef [flag(NDR_PAHEX),gensize,public,nopush,nopull] struct { - witness_notifyResponse_type type; - [value(ndr_size_witness_notifyResponse(r, ndr->flags)-20)] uint32 length; - uint32 num; - [subcontext(4), subcontext_size(length), flag(NDR_REMAINING), switch_is(type)] witness_notifyResponse_message messages[num]; - } witness_notifyResponse; - - [public] WERROR witness_AsyncNotify( - [in] policy_handle context_handle, - [out] witness_notifyResponse **response - ); - - /*****************/ - /* Function 0x04 */ - - typedef [bitmap32bit] bitmap { - WITNESS_REGISTER_NONE = 0x00, - WITNESS_REGISTER_IP_NOTIFICATION = 0x01 - } witness_RegisterEx_flags; - - WERROR witness_RegisterEx( - [out,ref] policy_handle *context_handle, - [in] witness_version version, - [in,unique,string,charset(UTF16)] uint16 *net_name, - [in,unique,string,charset(UTF16)] uint16 *share_name, - [in,unique,string,charset(UTF16)] uint16 *ip_address, - [in,unique,string,charset(UTF16)] uint16 *client_computer_name, - [in] witness_RegisterEx_flags flags, - [in] uint32 timeout - ); -} diff --git a/epan/dissectors/pidl/witness/witness.cnf b/epan/dissectors/pidl/witness/witness.cnf new file mode 100644 index 0000000000..a934e424e7 --- /dev/null +++ b/epan/dissectors/pidl/witness/witness.cnf @@ -0,0 +1,203 @@ +MANUAL witness_dissect_element_interfaceInfo_group_name +NOEMIT witness_dissect_element_interfaceInfo_group_name +MANUAL witness_dissect_struct_notifyResponse +MANUAL witness_dissect_element_notifyResponse_messages +NOEMIT witness_dissect_element_notifyResponse_messages +MANUAL witness_dissect_struct_IPaddrInfoList +NOEMIT witness_dissect_struct_IPaddrInfoList +NOEMIT witness_dissect_element_IPaddrInfoList_addr + +HF_FIELD hf_witness_witness_notifyResponse_messages_ "Messages" "witness.witness_notifyResponse.messages_" FT_NONE BASE_NONE NULL 0 "" "" "" + +TYPE ipv4address "offset=PIDL_dissect_ipv4address(tvb, offset, pinfo, tree, di, drep, @HF@, PIDL_SET_COL_INFO);" FT_IPv4 BASE_NONE 0 NULL 4 + +TYPE ipv6address "offset=PIDL_dissect_ipv6address(tvb, offset, pinfo, tree, di, drep, @HF@, PIDL_SET_COL_INFO);" FT_IPv6 BASE_NONE 0 NULL 2 + +CODE START + + #include "packet-smb-common.h" + #include "to_str.h" + +static int +witness_dissect_notifyResponse_message(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_); + +static int +witness_dissect_notifyResponse_message_(tvbuff_t *tvb, int offset, int length _U_, packet_info *pinfo, + proto_tree *tree, dcerpc_info *di, guint8 *drep _U_) +{ + guint32 *type = (guint32 *)di->private_data; + guint8 le_drep[4] = { DREP_LITTLE_ENDIAN, }; + return witness_dissect_notifyResponse_message(tvb, offset, pinfo, tree, di, le_drep, + hf_witness_witness_notifyResponse_messages_, *type); +} + +static int +witness_dissect_element_notifyResponse_messages(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info *di _U_, guint8 *drep _U_) +{ + offset = dissect_ndr_ucarray_block(tvb, offset, pinfo, tree, di, drep, + witness_dissect_notifyResponse_message_); + return offset; +} + +int +witness_dissect_struct_notifyResponse(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_) +{ + guint32 *type = NULL; + proto_item *item = NULL; + proto_tree *tree = NULL; + int old_offset; + + ALIGN_TO_4_BYTES; + + ALIGN_TO_4_BYTES; + + old_offset = offset; + + if (parent_tree) { + item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA); + tree = proto_item_add_subtree(item, ett_witness_witness_notifyResponse); + } + + type = wmem_new0(wmem_packet_scope(), guint32); + + offset = witness_dissect_element_notifyResponse_type(tvb, offset, pinfo, tree, di, drep, type); + + offset = witness_dissect_element_notifyResponse_length(tvb, offset, pinfo, tree, di, drep); + + offset = witness_dissect_element_notifyResponse_num(tvb, offset, pinfo, tree, di, drep); + + di->private_data = type; + offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, + witness_dissect_element_notifyResponse_messages, + NDR_POINTER_UNIQUE, "Pointer to Message Buffer (uint8)", + hf_witness_witness_notifyResponse_messages); + + proto_item_set_len(item, offset-old_offset); + + if (di->call_data->flags & DCERPC_IS_NDR64) { + ALIGN_TO_4_BYTES; + } + + return offset; +} + +static int +witness_dissect_element_IPaddrInfoList_addr(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_) +{ + offset = witness_dissect_struct_IPaddrInfo(tvb,offset,pinfo,tree,di,drep,hf_witness_witness_IPaddrInfoList_addr,0); + + return offset; +} + +int +witness_dissect_struct_IPaddrInfoList(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_) +{ + proto_item *item = NULL; + proto_tree *tree = NULL; + gboolean oldalign = di->no_align; + int old_offset; + guint32 i, num; + + di->no_align = TRUE; + + old_offset = offset; + + if (parent_tree) { + item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA); + tree = proto_item_add_subtree(item, ett_witness_witness_IPaddrInfoList); + } + + offset = witness_dissect_element_IPaddrInfoList_length(tvb, offset, pinfo, tree, di, drep); + + offset = witness_dissect_element_IPaddrInfoList_reserved(tvb, offset, pinfo, tree, di, drep); + + num = tvb_get_letohl(tvb, offset); + + offset = witness_dissect_element_IPaddrInfoList_num(tvb, offset, pinfo, tree, di, drep); + + for (i = 0; i < num; i++) { + offset = witness_dissect_element_IPaddrInfoList_addr(tvb, offset, pinfo, tree, di, drep); + } + + proto_item_set_len(item, offset-old_offset); + + di->no_align = oldalign; + + return offset; +} + +static int +witness_dissect_element_interfaceInfo_group_name(tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *parent_tree, dcerpc_info *di _U_, guint8 *drep _U_) +{ + const gchar *str; + int len = 260; + guint16 bc = tvb_captured_length_remaining(tvb, offset); + + str = get_unicode_or_ascii_string(tvb, &offset, TRUE, &len, TRUE, TRUE, &bc); + + if (str) { + proto_item *pi; + pi = proto_tree_add_string(parent_tree, hf_witness_witness_interfaceInfo_group_name, tvb, offset, 2*260, str); + proto_item_append_text(pi, " [%d]", len); + proto_item_append_text(parent_tree, ": %s", str); + + } else { + } + + return offset + 2*260; +} + +static int +PIDL_dissect_ipv4address(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info *di, guint8 *drep _U_, int hfindex, guint32 param) +{ + if (di->conformant_run) { + /* just a run to handle conformant arrays, no scalars to dissect */ + return offset; + } + + + if (!di->no_align && (offset % 4)) { + offset += 4 - (offset % 4); + } + + proto_tree_add_item(tree, hfindex, tvb, offset, 4, ENC_BIG_ENDIAN); + + if (param & PIDL_SET_COL_INFO) { + const char *ip = tvb_ip_to_str(tvb, offset); + header_field_info *hf_info = proto_registrar_get_nth(hfindex); + + proto_item_append_text(proto_tree_get_parent(tree), " %s:%s", hf_info->name, ip); + + col_append_fstr(pinfo->cinfo, COL_INFO," %s:%s", hf_info->name, ip); + } + return offset + 4; +} + +static int +PIDL_dissect_ipv6address(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info *di, guint8 *drep _U_, int hfindex, guint32 param) +{ + if (di->conformant_run) { + /* just a run to handle conformant arrays, no scalars to dissect */ + return offset; + } + + + if (!di->no_align && (offset % 2)) { + offset += 2 - (offset % 2); + } + + proto_tree_add_item(tree, hfindex, tvb, offset, 16, ENC_BIG_ENDIAN); + + if (param & PIDL_SET_COL_INFO) { + const char *ip = tvb_ip6_to_str(tvb, offset); + header_field_info *hf_info = proto_registrar_get_nth(hfindex); + + proto_item_append_text(proto_tree_get_parent(tree), " %s:%s", hf_info->name, ip); + + col_append_fstr(pinfo->cinfo, COL_INFO," %s:%s", hf_info->name, ip); + } + + return offset + 16; +} + +CODE END diff --git a/epan/dissectors/pidl/witness/witness.idl b/epan/dissectors/pidl/witness/witness.idl new file mode 100644 index 0000000000..ecfa1af8dc --- /dev/null +++ b/epan/dissectors/pidl/witness/witness.idl @@ -0,0 +1,152 @@ +#include "idl_types.h" + +import "misc/misc.idl"; + +[ + uuid("ccd8c074-d0e5-4a40-92b4-d074faa6ba28"), + version(1.1), + pointer_default(unique), + helpstring("SMB Witness Service"), + helper("../librpc/ndr/ndr_witness.h"), + endpoint("ncacn_ip_tcp:") +] +interface witness +{ + typedef [v1_enum] enum { + WITNESS_V1 = 0x00010001, + WITNESS_V2 = 0x00020000, + WITNESS_UNSPECIFIED_VERSION = 0xFFFFFFFF + } witness_version; + + /*****************/ + /* Function 0x00 */ + + typedef [enum16bit] enum { + WITNESS_STATE_UNKNOWN = 0x00, + WITNESS_STATE_AVAILABLE = 0x01, + WITNESS_STATE_UNAVAILABLE = 0xff + } witness_interfaceInfo_state; + + typedef [bitmap32bit] bitmap { + WITNESS_INFO_IPv4_VALID = 0x01, + WITNESS_INFO_IPv6_VALID = 0x02, + WITNESS_INFO_WITNESS_IF = 0x04 + } witness_interfaceInfo_flags; + + typedef struct { + [charset(UTF16),to_null] uint16 group_name[260]; + witness_version version; + witness_interfaceInfo_state state; + [flag(NDR_BIG_ENDIAN)] ipv4address ipv4; + [flag(NDR_BIG_ENDIAN)] ipv6address ipv6; + witness_interfaceInfo_flags flags; + } witness_interfaceInfo; + + typedef struct { + uint32 num_interfaces; + [size_is(num_interfaces)] witness_interfaceInfo *interfaces; + } witness_interfaceList; + + [public] WERROR witness_GetInterfaceList( + [out] witness_interfaceList **interface_list + ); + + /*****************/ + /* Function 0x01 */ + + [public] WERROR witness_Register( + [out,ref] policy_handle *context_handle, + [in] witness_version version, + [in,unique,string,charset(UTF16)] uint16 *net_name, + [in,unique,string,charset(UTF16)] uint16 *ip_address, + [in,unique,string,charset(UTF16)] uint16 *client_computer_name + ); + + /*****************/ + /* Function 0x02 */ + + [public] WERROR witness_UnRegister( + [in] policy_handle context_handle + ); + + /*****************/ + /* Function 0x03 */ + + typedef [v1_enum,public] enum { + WITNESS_NOTIFY_RESOURCE_CHANGE = 1, + WITNESS_NOTIFY_CLIENT_MOVE = 2, + WITNESS_NOTIFY_SHARE_MOVE = 3, + WITNESS_NOTIFY_IP_CHANGE = 4 + } witness_notifyResponse_type; + + typedef [v1_enum] enum { + WITNESS_RESOURCE_STATE_UNKNOWN = 0x00, + WITNESS_RESOURCE_STATE_AVAILABLE = 0x01, + WITNESS_RESOURCE_STATE_UNAVAILABLE = 0xff + } witness_ResourceChange_type; + + typedef [flag(NDR_NOALIGN|NDR_LITTLE_ENDIAN),gensize,public] struct { + [value(ndr_size_witness_ResourceChange(r,ndr->flags))] uint32 length; + witness_ResourceChange_type type; + nstring name; + } witness_ResourceChange; + + typedef [bitmap32bit] bitmap { + WITNESS_IPADDR_V4 = 0x01, + WITNESS_IPADDR_V6 = 0x02, + WITNESS_IPADDR_ONLINE = 0x08, + WITNESS_IPADDR_OFFLINE = 0x10 + } witness_IPaddrInfo_flags; + + typedef [flag(NDR_NOALIGN|NDR_LITTLE_ENDIAN),gensize] struct { + witness_IPaddrInfo_flags flags; + ipv4address ipv4; + ipv6address ipv6; + } witness_IPaddrInfo; + + typedef [flag(NDR_NOALIGN|NDR_LITTLE_ENDIAN)] struct { + [value(r->num*ndr_size_witness_IPaddrInfo(r->addr, ndr->flags))] uint32 length; + [value(0)] uint32 reserved; + uint32 num; + witness_IPaddrInfo addr[num]; + } witness_IPaddrInfoList; + + typedef [public,switch_type(witness_notifyResponse_type),nodiscriminant, flag(NDR_NOALIGN|NDR_LITTLE_ENDIAN)] union { + [case(WITNESS_NOTIFY_RESOURCE_CHANGE)] witness_ResourceChange resource_change; + [case(WITNESS_NOTIFY_CLIENT_MOVE)] witness_IPaddrInfoList client_move; + [case(WITNESS_NOTIFY_SHARE_MOVE)] witness_IPaddrInfoList share_move; + [case(WITNESS_NOTIFY_IP_CHANGE)] witness_IPaddrInfoList ip_change; + [default,flag(NDR_REMAINING)] DATA_BLOB data; + } witness_notifyResponse_message; + + typedef [flag(NDR_PAHEX),gensize,public,nopush,nopull] struct { + witness_notifyResponse_type type; + [value(ndr_size_witness_notifyResponse(r, ndr->flags)-20)] uint32 length; + uint32 num; + [subcontext(4), subcontext_size(length), flag(NDR_REMAINING), switch_is(type)] witness_notifyResponse_message messages[num]; + } witness_notifyResponse; + + [public] WERROR witness_AsyncNotify( + [in] policy_handle context_handle, + [out] witness_notifyResponse **response + ); + + /*****************/ + /* Function 0x04 */ + + typedef [bitmap32bit] bitmap { + WITNESS_REGISTER_NONE = 0x00, + WITNESS_REGISTER_IP_NOTIFICATION = 0x01 + } witness_RegisterEx_flags; + + WERROR witness_RegisterEx( + [out,ref] policy_handle *context_handle, + [in] witness_version version, + [in,unique,string,charset(UTF16)] uint16 *net_name, + [in,unique,string,charset(UTF16)] uint16 *share_name, + [in,unique,string,charset(UTF16)] uint16 *ip_address, + [in,unique,string,charset(UTF16)] uint16 *client_computer_name, + [in] witness_RegisterEx_flags flags, + [in] uint32 timeout + ); +} diff --git a/epan/dissectors/pidl/wkssvc.cnf b/epan/dissectors/pidl/wkssvc.cnf deleted file mode 100644 index d71519de77..0000000000 --- a/epan/dissectors/pidl/wkssvc.cnf +++ /dev/null @@ -1,87 +0,0 @@ -TFS hf_wkssvc_wkssvc_joinflags_WKSSVC_JOIN_FLAGS_DEFER_SPN "Defer setting of servicePrincipalName and dNSHostName attributes on the computer object until a rename operation" "Set servicePrincipalName and dNSHostName attributes on the computer object" - -TFS hf_wkssvc_wkssvc_joinflags_WKSSVC_JOIN_FLAGS_MACHINE_PWD_PASSED "Set the machine password after domain join to passed password" "Do not set the machine password after domain join to passed password" - -TFS hf_wkssvc_wkssvc_joinflags_WKSSVC_JOIN_FLAGS_JOIN_UNSECURE "Performs an unsecured join" "Perform a secured join" - -TFS hf_wkssvc_wkssvc_joinflags_WKSSVC_JOIN_FLAGS_DOMAIN_JOIN_IF_JOINED "Allow a join to a new domain even if the computer is already joined to a domain" "Do not allow join to a new domain if the computer is already joined to a domain" - -TFS hf_wkssvc_wkssvc_joinflags_WKSSVC_JOIN_FLAGS_WIN9X_UPGRADE "The join operation is occuring as part of an upgrade of Windows 9x" "The join operation is not part of a Windows 9x upgrade" - -TFS hf_wkssvc_wkssvc_joinflags_WKSSVC_JOIN_FLAGS_ACCOUNT_DELETE "Delete the account when a domain is left" "Do not delete the account when a domain is left" - -TFS hf_wkssvc_wkssvc_joinflags_WKSSVC_JOIN_FLAGS_ACCOUNT_CREATE "Create the account on the domain" "Do not create the account" - -TFS hf_wkssvc_wkssvc_joinflags_WKSSVC_JOIN_FLAGS_JOIN_TYPE "Join the computer to a domain" "Join the computer to a workgroup" - - -HF_FIELD hf_wkssvc_platform_id "Platform Id" "wkssvc.platform_id" FT_UINT32 BASE_DEC VALS(srvsvc_srvsvc_PlatformId_vals) 0 "" "" "" - -# -# -# Prettifications -PARAM_VALUE wkssvc_dissect_element_NetWkstaGetInfo_server_name_ 1|PIDL_SET_COL_INFO -PARAM_VALUE wkssvc_dissect_element_NetWkstaGetInfo_level PIDL_SET_COL_INFO -PARAM_VALUE wkssvc_dissect_element_NetWkstaInfo100_server_name_ 5|PIDL_SET_COL_INFO -PARAM_VALUE wkssvc_dissect_element_NetWkstaInfo100_domain_name_ 5 -PARAM_VALUE wkssvc_dissect_element_NetWkstaInfo101_server_name_ 5|PIDL_SET_COL_INFO -PARAM_VALUE wkssvc_dissect_element_NetWkstaInfo101_domain_name_ 5 -PARAM_VALUE wkssvc_dissect_element_NetWkstaInfo102_server_name_ 5|PIDL_SET_COL_INFO -PARAM_VALUE wkssvc_dissect_element_NetWkstaInfo102_domain_name_ 5 - -PARAM_VALUE wkssvc_dissect_element_NetWkstaTransportEnum_server_name_ 1|PIDL_SET_COL_INFO - - -TYPE lsa_String "offset=cnf_dissect_lsa_String(tvb, offset, pinfo, tree, di, drep, @PARAM@, @HF@);" FT_STRING BASE_NONE 0 NULL 4 -TYPE hyper "offset=cnf_dissect_hyper(tvb, offset, pinfo, tree, di, drep, @PARAM@, @HF@);" FT_UINT64 BASE_DEC 0 NULL 8 - -CODE START -/* Bug in pidl. Can not handle these dependencies properly yet */ -static int -wkssvc_dissect_struct_srvsvc_PlatformId(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep, int hf_index _U_, guint32 param _U_) -{ - offset = srvsvc_dissect_enum_PlatformId(tvb,offset,pinfo,tree,di,drep,hf_wkssvc_platform_id,0); - - return offset; -} - -static int -cnf_dissect_lsa_String(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *parent_tree, dcerpc_info* di, guint8 *drep, guint32 param, int hfindex) -{ - proto_item *item = NULL; - proto_tree *tree = NULL; - int old_offset; - header_field_info *hf_info; - - ALIGN_TO_4_BYTES; - - old_offset = offset; - hf_info=proto_registrar_get_nth(hfindex); - - if (parent_tree) { - tree = proto_tree_add_subtree_format(parent_tree, tvb, offset, 0, ett_wkssvc_lsa_String, &item, "%s: ", hf_info->name); - } - - offset = wkssvc_dissect_element_lsa_String_name_len(tvb, offset, pinfo, tree, di, drep); - offset = wkssvc_dissect_element_lsa_String_name_size(tvb, offset, pinfo, tree, di, drep); - - offset = dissect_ndr_pointer_cb( - tvb, offset, pinfo, tree, di, drep, - dissect_ndr_wchar_cvstring, NDR_POINTER_UNIQUE, - hf_info->name, hfindex, cb_wstr_postprocess, - GINT_TO_POINTER(param)); - - proto_item_set_len(item, offset-old_offset); - - return offset; -} - -static int -cnf_dissect_hyper(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep, guint32 param _U_, int hfindex) -{ - offset = dissect_ndr_uint64(tvb, offset, pinfo, tree, di, drep, hfindex, NULL); - - return offset; -} - -CODE END diff --git a/epan/dissectors/pidl/wkssvc.idl b/epan/dissectors/pidl/wkssvc.idl deleted file mode 100644 index 0b08f62f6d..0000000000 --- a/epan/dissectors/pidl/wkssvc.idl +++ /dev/null @@ -1,794 +0,0 @@ -#include "idl_types.h" - -/* - wkssvc interface definitions -*/ - -import "srvsvc.idl", "lsa.idl"; - -[ uuid("6bffd098-a112-3610-9833-46c3f87e345a"), - version(1.0), - pointer_default(unique), - pointer_default_top(unique), - helpstring("Workstation Service"), - endpoint("ncacn_np:[\\pipe\\wkssvc]","ncacn_ip_tcp:","ncalrpc:") -] interface wkssvc -{ - typedef [v1_enum] enum srvsvc_PlatformId srvsvc_PlatformId; - -#define BOOL uint32 - - typedef [public,noejs] struct { - [value(strlen_m_term(name)*2)] uint16 name_len; - [value(strlen_m_term(name)*2)] uint16 name_size; - [string,charset(UTF16)] uint16 *name; - } lsa_String; - - /******************/ - /* Function: 0x00 */ - - typedef struct { - srvsvc_PlatformId platform_id; - [string,charset(UTF16)] uint16 *server_name; - [string,charset(UTF16)] uint16 *domain_name; - uint32 version_major; - uint32 version_minor; - } wkssvc_NetWkstaInfo100; - - typedef struct { - srvsvc_PlatformId platform_id; - [string,charset(UTF16)] uint16 *server_name; - [string,charset(UTF16)] uint16 *domain_name; - uint32 version_major; - uint32 version_minor; - [string,charset(UTF16)] uint16 *lan_root; - } wkssvc_NetWkstaInfo101; - - typedef struct { - srvsvc_PlatformId platform_id; - [string,charset(UTF16)] uint16 *server_name; - [string,charset(UTF16)] uint16 *domain_name; - uint32 version_major; - uint32 version_minor; - [string,charset(UTF16)] uint16 *lan_root; - uint32 logged_on_users; - } wkssvc_NetWkstaInfo102; - - /* FIXME: 302, 402 */ - - typedef struct { - uint32 char_wait; - uint32 collection_time; - uint32 maximum_collection_count; - uint32 keep_connection; - uint32 max_commands; - uint32 session_timeout; - uint32 size_char_buf; - uint32 max_threads; - uint32 lock_quota; - uint32 lock_increment; - uint32 lock_maximum; - uint32 pipe_increment; - uint32 pipe_maximum; - uint32 cache_file_timeout; - uint32 dormant_file_limit; - uint32 read_ahead_throughput; - uint32 num_mailslot_buffers; - uint32 num_srv_announce_buffers; - uint32 max_illegal_dgram_events; - uint32 dgram_event_reset_freq; - BOOL log_election_packets; - BOOL use_opportunistic_locking; - BOOL use_unlock_behind; - BOOL use_close_behind; - BOOL buf_named_pipes; - BOOL use_lock_read_unlock; - BOOL utilize_nt_caching; - BOOL use_raw_read; - BOOL use_raw_write; - BOOL use_write_raw_data; - BOOL use_encryption; - BOOL buf_files_deny_write; - BOOL buf_read_only_files; - BOOL force_core_create_mode; - BOOL use_512_byte_max_transfer; - } wkssvc_NetWkstaInfo502; - - typedef struct { - uint32 char_wait; - } wkssvc_NetWkstaInfo1010; - - typedef struct { - uint32 collection_time; - } wkssvc_NetWkstaInfo1011; - - typedef struct { - uint32 maximum_collection_count; - } wkssvc_NetWkstaInfo1012; - - typedef struct { - uint32 keep_connection; - } wkssvc_NetWkstaInfo1013; - - typedef struct { - uint32 session_timeout; - } wkssvc_NetWkstaInfo1018; - - typedef struct { - uint32 size_char_buf; - } wkssvc_NetWkstaInfo1023; - - typedef struct { - uint32 errorlog_sz; - } wkssvc_NetWkstaInfo1027; - - /* downlevel */ - typedef struct { - uint32 print_buf_time; - } wkssvc_NetWkstaInfo1028; - - /* downlevel */ - typedef struct { - uint32 wrk_heuristics; - } wkssvc_NetWkstaInfo1032; - - typedef struct { - uint32 max_threads; - } wkssvc_NetWkstaInfo1033; - - typedef struct { - uint32 lock_quota; - } wkssvc_NetWkstaInfo1041; - - typedef struct { - uint32 lock_increment; - } wkssvc_NetWkstaInfo1042; - - typedef struct { - uint32 lock_maximum; - } wkssvc_NetWkstaInfo1043; - - typedef struct { - uint32 pipe_increment; - } wkssvc_NetWkstaInfo1044; - - typedef struct { - uint32 pipe_maximum; - } wkssvc_NetWkstaInfo1045; - - typedef struct { - uint32 dormant_file_limit; - } wkssvc_NetWkstaInfo1046; - - typedef struct { - uint32 cache_file_timeout; - } wkssvc_NetWkstaInfo1047; - - typedef struct { - uint32 use_opportunistic_locking; - } wkssvc_NetWkstaInfo1048; - - typedef struct { - uint32 use_unlock_behind; - } wkssvc_NetWkstaInfo1049; - - typedef struct { - uint32 use_close_behind; - } wkssvc_NetWkstaInfo1050; - - typedef struct { - uint32 buf_named_pipes; - } wkssvc_NetWkstaInfo1051; - - typedef struct { - uint32 use_lock_read_unlock; - } wkssvc_NetWkstaInfo1052; - - typedef struct { - uint32 utilize_nt_caching; - } wkssvc_NetWkstaInfo1053; - - typedef struct { - uint32 use_raw_read; - } wkssvc_NetWkstaInfo1054; - - typedef struct { - uint32 use_raw_write; - } wkssvc_NetWkstaInfo1055; - - typedef struct { - uint32 use_write_raw_data; - } wkssvc_NetWkstaInfo1056; - - typedef struct { - uint32 use_encryption; - } wkssvc_NetWkstaInfo1057; - - typedef struct { - uint32 buf_files_deny_write; - } wkssvc_NetWkstaInfo1058; - - typedef struct { - uint32 buf_read_only_files; - } wkssvc_NetWkstaInfo1059; - - typedef struct { - uint32 force_core_create_mode; - } wkssvc_NetWkstaInfo1060; - - typedef struct { - uint32 use_512_byte_max_transfer; - } wkssvc_NetWkstaInfo1061; - - typedef struct { - uint32 read_ahead_throughput; - } wkssvc_NetWkstaInfo1062; - - typedef union { - [case(100)] wkssvc_NetWkstaInfo100 *info100; - [case(101)] wkssvc_NetWkstaInfo101 *info101; - [case(102)] wkssvc_NetWkstaInfo102 *info102; - [case(502)] wkssvc_NetWkstaInfo502 *info502; - [case(1010)] wkssvc_NetWkstaInfo1010 *info1010; - [case(1011)] wkssvc_NetWkstaInfo1011 *info1011; - [case(1012)] wkssvc_NetWkstaInfo1012 *info1012; - [case(1013)] wkssvc_NetWkstaInfo1013 *info1013; - [case(1018)] wkssvc_NetWkstaInfo1018 *info1018; - [case(1023)] wkssvc_NetWkstaInfo1023 *info1023; - [case(1027)] wkssvc_NetWkstaInfo1027 *info1027; - [case(1028)] wkssvc_NetWkstaInfo1028 *info1028; - [case(1032)] wkssvc_NetWkstaInfo1032 *info1032; - [case(1033)] wkssvc_NetWkstaInfo1033 *info1033; - [case(1041)] wkssvc_NetWkstaInfo1041 *info1041; - [case(1042)] wkssvc_NetWkstaInfo1042 *info1042; - [case(1043)] wkssvc_NetWkstaInfo1043 *info1043; - [case(1044)] wkssvc_NetWkstaInfo1044 *info1044; - [case(1045)] wkssvc_NetWkstaInfo1045 *info1045; - [case(1046)] wkssvc_NetWkstaInfo1046 *info1046; - [case(1047)] wkssvc_NetWkstaInfo1047 *info1047; - [case(1048)] wkssvc_NetWkstaInfo1048 *info1048; - [case(1049)] wkssvc_NetWkstaInfo1049 *info1049; - [case(1050)] wkssvc_NetWkstaInfo1050 *info1050; - [case(1051)] wkssvc_NetWkstaInfo1051 *info1051; - [case(1052)] wkssvc_NetWkstaInfo1052 *info1052; - [case(1053)] wkssvc_NetWkstaInfo1053 *info1053; - [case(1054)] wkssvc_NetWkstaInfo1054 *info1054; - [case(1055)] wkssvc_NetWkstaInfo1055 *info1055; - [case(1056)] wkssvc_NetWkstaInfo1056 *info1056; - [case(1057)] wkssvc_NetWkstaInfo1057 *info1057; - [case(1058)] wkssvc_NetWkstaInfo1058 *info1058; - [case(1059)] wkssvc_NetWkstaInfo1059 *info1059; - [case(1060)] wkssvc_NetWkstaInfo1060 *info1060; - [case(1061)] wkssvc_NetWkstaInfo1061 *info1061; - [case(1062)] wkssvc_NetWkstaInfo1062 *info1062; - [default] ; - } wkssvc_NetWkstaInfo; - - WERROR wkssvc_NetWkstaGetInfo( - [in] [string,charset(UTF16)] uint16 *server_name, - [in] uint32 level, - [out,switch_is(level),ref] wkssvc_NetWkstaInfo *info - ); - - - /******************/ - /* Function: 0x01 */ - WERROR wkssvc_NetWkstaSetInfo( - [in] [string,charset(UTF16)] uint16 *server_name, - [in] uint32 level, - [in,switch_is(level),ref] wkssvc_NetWkstaInfo *info, - [in,out,ref] uint32 *parm_error - ); - - - /*****************************/ - /* Function 0x02 */ - typedef struct { - [string,charset(UTF16)] uint16 *user_name; - } wkssvc_NetrWkstaUserInfo0; - - typedef struct { - uint32 entries_read; - [size_is(entries_read)] wkssvc_NetrWkstaUserInfo0 *user0; - } wkssvc_NetWkstaEnumUsersCtr0; - - typedef struct { - [string,charset(UTF16)] uint16 *user_name; - [string,charset(UTF16)] uint16 *logon_domain; - [string,charset(UTF16)] uint16 *other_domains; - [string,charset(UTF16)] uint16 *logon_server; - } wkssvc_NetrWkstaUserInfo1; - - typedef struct { - uint32 entries_read; - [size_is(entries_read)] wkssvc_NetrWkstaUserInfo1 *user1; - } wkssvc_NetWkstaEnumUsersCtr1; - - typedef [switch_type(uint32)] union { - [case(0)] wkssvc_NetWkstaEnumUsersCtr0 *user0; - [case(1)] wkssvc_NetWkstaEnumUsersCtr1 *user1; - } wkssvc_NetWkstaEnumUsersCtr; - - typedef struct { - uint32 level; - [switch_is(level)] wkssvc_NetWkstaEnumUsersCtr ctr; - } wkssvc_NetWkstaEnumUsersInfo; - - WERROR wkssvc_NetWkstaEnumUsers( - [in] [string,charset(UTF16)] uint16 *server_name, - [in,out,ref] wkssvc_NetWkstaEnumUsersInfo *info, - [in] uint32 prefmaxlen, - [out,ref] uint32 *entries_read, - [in,out] uint32 *resume_handle - ); - - /*****************************/ - /* Function 0x03 */ - typedef struct { - [string,charset(UTF16)] uint16 *other_domains; - } wkssvc_NetrWkstaUserInfo1101; - - typedef [switch_type(uint32)] union { - [case(0)] wkssvc_NetrWkstaUserInfo0 *info0; - [case(1)] wkssvc_NetrWkstaUserInfo1 *info1; - [case(1101)] wkssvc_NetrWkstaUserInfo1101 *info1101; - } wkssvc_NetrWkstaUserInfo; - - WERROR wkssvc_NetrWkstaUserGetInfo( - [in] [string,charset(UTF16)] uint16 *unknown, - [in] uint32 level, - [out,ref] [switch_is(level)] wkssvc_NetrWkstaUserInfo *info - ); - - /*****************************/ - /* Function 0x04 */ - WERROR wkssvc_NetrWkstaUserSetInfo( - [in] [string,charset(UTF16)] uint16 *unknown, - [in] uint32 level, - [in,ref] [switch_is(level)] wkssvc_NetrWkstaUserInfo *info, - [in,out] uint32 *parm_err - ); - - /*****************************/ - /* Function 0x05 */ - - typedef struct { - uint32 quality_of_service; - uint32 vc_count; - [string,charset(UTF16)] uint16 *name; - [string,charset(UTF16)] uint16 *address; - uint32 wan_link; - } wkssvc_NetWkstaTransportInfo0; - - typedef struct { - uint32 count; - [size_is(count)] wkssvc_NetWkstaTransportInfo0 *array; - } wkssvc_NetWkstaTransportCtr0; - - typedef union { - [case(0)] wkssvc_NetWkstaTransportCtr0 *ctr0; - } wkssvc_NetWkstaTransportCtr; - - typedef struct { - uint32 level; - [switch_is(level)] wkssvc_NetWkstaTransportCtr ctr; - } wkssvc_NetWkstaTransportInfo; - - WERROR wkssvc_NetWkstaTransportEnum ( - [in] [string,charset(UTF16)] uint16 *server_name, - [in,out,ref] wkssvc_NetWkstaTransportInfo *info, - [in] uint32 max_buffer, - [out,ref] uint32 *total_entries, - [in,out] uint32 *resume_handle - ); - - /*****************************/ - /* Function 0x06 */ - /* only supported on NT */ - WERROR wkssvc_NetrWkstaTransportAdd( - [in] [string,charset(UTF16)] uint16 *server_name, - [in] uint32 level, /* must be 0 */ - [in,ref] wkssvc_NetWkstaTransportInfo0 *info0, - [in,out] uint32 *parm_err - ); - - /*****************************/ - /* Function 0x07 */ - /* only supported on NT */ - WERROR wkssvc_NetrWkstaTransportDel( - [in] [string,charset(UTF16)] uint16 *server_name, - [in] [string,charset(UTF16)] uint16 *transport_name, - [in] uint32 unknown3 - ); - - /*****************************/ - /* Function 0x08 */ - typedef struct { - [string,charset(UTF16)] uint16 *unknown1; - [string,charset(UTF16)] uint16 *unknown2; - } wkssvc_NetrUseInfo3; - - typedef struct { - [string,charset(UTF16)] uint16 *local; - [string,charset(UTF16)] uint16 *remote; - [string,charset(UTF16)] uint16 *password; - uint32 status; - uint32 asg_type; - uint32 ref_count; - uint32 use_count; - [string,charset(UTF16)] uint16 *user_name; - [string,charset(UTF16)] uint16 *domain_name; - } wkssvc_NetrUseInfo2; - - typedef struct { - [string,charset(UTF16)] uint16 *local; - [string,charset(UTF16)] uint16 *remote; - [string,charset(UTF16)] uint16 *password; - uint32 status; - uint32 asg_type; - uint32 ref_count; - uint32 use_count; - } wkssvc_NetrUseInfo1; - - typedef struct { - [string,charset(UTF16)] uint16 *local; - [string,charset(UTF16)] uint16 *remote; - } wkssvc_NetrUseInfo0; - - typedef [switch_type(uint32)] union { - [case(0)] wkssvc_NetrUseInfo0 *info0; - [case(1)] wkssvc_NetrUseInfo1 *info1; - [case(2)] wkssvc_NetrUseInfo2 *info2; - [case(3)] wkssvc_NetrUseInfo3 *info3; - } wkssvc_NetrUseGetInfoCtr; - - WERROR wkssvc_NetrUseAdd( - [in] [string,charset(UTF16)] uint16 *server_name, - [in] uint32 level, - [in,ref] [switch_is(level)] wkssvc_NetrUseGetInfoCtr *ctr, - [in,out] uint32 *parm_err - ); - - /*****************************/ - /* Function 0x09 */ - WERROR wkssvc_NetrUseGetInfo( - [in] [string,charset(UTF16)] uint16 *server_name, - [in,ref] [string,charset(UTF16)] uint16 *use_name, - [in] uint32 level, - [out,ref] [switch_is(level)] wkssvc_NetrUseGetInfoCtr *ctr - ); - - /*****************************/ - /* Function 0x0a */ - WERROR wkssvc_NetrUseDel( - [in] [string,charset(UTF16)] uint16 *server_name, - [in,ref] [string,charset(UTF16)] uint16 *use_name, - [in] uint32 force_cond - ); - - /*****************************/ - /* Function 0x0b */ - typedef struct { - uint32 count; - [size_is(count)] wkssvc_NetrUseInfo2 *array; - } wkssvc_NetrUseEnumCtr2; - - typedef struct { - uint32 count; - [size_is(count)] wkssvc_NetrUseInfo1 *array; - } wkssvc_NetrUseEnumCtr1; - - typedef struct { - uint32 count; - [size_is(count)] wkssvc_NetrUseInfo0 *array; - } wkssvc_NetrUseEnumCtr0; - - typedef [switch_type(uint32)] union { - [case(0)] wkssvc_NetrUseEnumCtr0 *ctr0; - [case(1)] wkssvc_NetrUseEnumCtr1 *ctr1; - [case(2)] wkssvc_NetrUseEnumCtr2 *ctr2; - } wkssvc_NetrUseEnumCtr; - - typedef struct { - uint32 level; - [switch_is(level)] wkssvc_NetrUseEnumCtr ctr; - } wkssvc_NetrUseEnumInfo; - - WERROR wkssvc_NetrUseEnum( - [in] [string,charset(UTF16)] uint16 *server_name, - [in,out,ref] wkssvc_NetrUseEnumInfo *info, - [in] uint32 prefmaxlen, - [out,ref] uint32 *entries_read, - [in,out] uint32 *resume_handle - ); - - /*****************************/ - /* Function 0x0c */ - WERROR wkssvc_NetrMessageBufferSend( - [in] [string,charset(UTF16)] uint16 *server_name, - [in,ref] [string,charset(UTF16)] uint16 *message_name, - [in] [string,charset(UTF16)] uint16 *message_sender_name, - [in,ref] [size_is(message_size)] uint8 *message_buffer, - [in] uint32 message_size - ); - - /*****************************/ - /* Function 0x0d */ - typedef struct { - hyper unknown1; - hyper unknown2; - hyper unknown3; - hyper unknown4; - hyper unknown5; - hyper unknown6; - hyper unknown7; - hyper unknown8; - hyper unknown9; - hyper unknown10; - hyper unknown11; - hyper unknown12; - hyper unknown13; - uint32 unknown14; - uint32 unknown15; - uint32 unknown16; - uint32 unknown17; - uint32 unknown18; - uint32 unknown19; - uint32 unknown20; - uint32 unknown21; - uint32 unknown22; - uint32 unknown23; - uint32 unknown24; - uint32 unknown25; - uint32 unknown26; - uint32 unknown27; - uint32 unknown28; - uint32 unknown29; - uint32 unknown30; - uint32 unknown31; - uint32 unknown32; - uint32 unknown33; - uint32 unknown34; - uint32 unknown35; - uint32 unknown36; - uint32 unknown37; - uint32 unknown38; - uint32 unknown39; - uint32 unknown40; - } wkssvc_NetrWorkstationStatistics; - - WERROR wkssvc_NetrWorkstationStatisticsGet( - [in] [string,charset(UTF16)] uint16 *server_name, - [in] [string,charset(UTF16)] uint16 *unknown2, - [in] uint32 unknown3, - [in] uint32 unknown4, - [out,ref] wkssvc_NetrWorkstationStatistics **info - ); - - /*****************************/ - /* Function 0x0e */ - WERROR wkssvc_NetrLogonDomainNameAdd( - [in,ref] [string,charset(UTF16)] uint16 *domain_name - ); - - /*****************************/ - /* Function 0x0f */ - WERROR wkssvc_NetrLogonDomainNameDel( - [in,ref] [string,charset(UTF16)] uint16 *domain_name - ); - - /*****************************/ - /* Function 0x10 */ - WERROR wkssvc_NetrJoinDomain( - [in] [string,charset(UTF16)] uint16 *server_name, - [in,ref] [string,charset(UTF16)] uint16 *domain_name, - [in] [string,charset(UTF16)] uint16 *account_ou, - [in] [string,charset(UTF16)] uint16 *Account, - [in] [string,charset(UTF16)] uint16 *unknown, - [in] wkssvc_joinflags join_flags - ); - - /*****************************/ - /* Function 0x11 */ - WERROR wkssvc_NetrUnjoinDomain( - [in] [string,charset(UTF16)] uint16 *server_name, - [in] [string,charset(UTF16)] uint16 *Account, - [in] [string,charset(UTF16)] uint16 *password, - [in] wkssvc_joinflags unjoin_flags - ); - - /*****************************/ - /* Function 0x12 */ - typedef [bitmap32bit] bitmap { - /* TRUE: create the account in the domain */ - WKSSVC_JOIN_FLAGS_ACCOUNT_CREATE = 0x00000002 - } wkssvc_renameflags; - - WERROR wkssvc_NetrRenameMachineInDomain( - [in] [string,charset(UTF16)] uint16 *server_name, - [in] [string,charset(UTF16)] uint16 *NewMachineName, - [in] [string,charset(UTF16)] uint16 *Account, - [in] [string,charset(UTF16)] uint16 *password, - [in] wkssvc_renameflags RenameOptions - ); - - /*****************************/ - /* Function 0x13 */ - typedef enum { - NetSetupUnknown = 0, - NetSetupMachine = 1, - NetSetupWorkgroup = 2, - NetSetupDomain = 3, - NetSetupNonExistentDomain = 4, - NetSetupDnsMachine = 5 - } wkssvc_NetValidateNameType; - - WERROR wkssvc_NetrValidateName( - [in] [string,charset(UTF16)] uint16 *server_name, - [in,ref] [string,charset(UTF16)] uint16 *name, - [in] [string,charset(UTF16)] uint16 *Account, - [in] [string,charset(UTF16)] uint16 *Password, - [in] wkssvc_NetValidateNameType name_type - ); - - /*****************************/ - /* Function 0x14 */ - typedef enum { - NetSetupUnknownStatus = 0, - NetSetupUnjoined = 1, - NetSetupWorkgroupName = 2, - NetSetupDomainName = 3 - } wkssvc_NetJoinStatus; - - WERROR wkssvc_NetrGetJoinInformation( - [in] [string,charset(UTF16)] uint16 *server_name, - [in,out,ref] [string,charset(UTF16)] uint16 **name_buffer, - [out,ref] wkssvc_NetJoinStatus *name_type - ); - - /*****************************/ - /* Function 0x15 */ - WERROR wkssvc_NetrGetJoinableOus( - [in] [string,charset(UTF16)] uint16 *server_name, - [in,ref] [string,charset(UTF16)] uint16 *domain_name, - [in] [string,charset(UTF16)] uint16 *Account, - [in] [string,charset(UTF16)] uint16 *unknown, - [in,out,ref] uint32 *num_ous, - [out,ref] [size_is(*num_ous)] [string,charset(UTF16)] uint16 ***ous - ); - - typedef [flag(NDR_PAHEX)] struct { - uint8 data[524]; - } wkssvc_PasswordBuffer; - - typedef [bitmap32bit] bitmap { - WKSSVC_JOIN_FLAGS_JOIN_WITH_NEW_NAME = 0x00000400, - WKSSVC_JOIN_FLAGS_JOIN_DC_ACCOUNT = 0x00000200, - /* TRUE: defer setting the SPN and dNSHostName until a rename operation */ - WKSSVC_JOIN_FLAGS_DEFER_SPN = 0x00000100, - - /* TRUE: set the machine password to the provided one after the join completes */ - WKSSVC_JOIN_FLAGS_MACHINE_PWD_PASSED = 0x00000080, - - /* TRUE: perform an unsecured join */ - WKSSVC_JOIN_FLAGS_JOIN_UNSECURE = 0x00000040, - - /* TRUE: allow the join to complete even if the account already exists */ - WKSSVC_JOIN_FLAGS_DOMAIN_JOIN_IF_JOINED = 0x00000020, - - /* TRUE: this join is part of a w9x upgrade */ - WKSSVC_JOIN_FLAGS_WIN9X_UPGRADE = 0x00000010, - - /* TRUE: delete the account when the domain is left */ - WKSSVC_JOIN_FLAGS_ACCOUNT_DELETE = 0x00000004, - - /* TRUE: create the account in the domain */ - WKSSVC_JOIN_FLAGS_ACCOUNT_CREATE = 0x00000002, - - /* TRUE: join domain FALSE: join workgroup */ - WKSSVC_JOIN_FLAGS_JOIN_TYPE = 0x00000001 - - } wkssvc_joinflags; - - /*****************************/ - /* Function 0x16 */ - WERROR wkssvc_NetrJoinDomain2 ( - [in] [string,charset(UTF16)] uint16 *server_name, - [in,ref] [string,charset(UTF16)] uint16 *domain_name, - [in] [string,charset(UTF16)] uint16 *account_name, - [in] [string,charset(UTF16)] uint16 *admin_account, - [in] wkssvc_PasswordBuffer *encrypted_password, - [in] wkssvc_joinflags join_flags - ); - - /*****************************/ - /* Function 0x17 */ - WERROR wkssvc_NetrUnjoinDomain2 ( - [in] [string,charset(UTF16)] uint16 *server_name, - [in] [string,charset(UTF16)] uint16 *account, - [in] wkssvc_PasswordBuffer *encrypted_password, - [in] wkssvc_joinflags unjoin_flags - ); - - /*****************************/ - /* Function 0x18 */ - WERROR wkssvc_NetrRenameMachineInDomain2( - [in] [string,charset(UTF16)] uint16 *server_name, - [in] [string,charset(UTF16)] uint16 *NewMachineName, - [in] [string,charset(UTF16)] uint16 *Account, - [in] wkssvc_PasswordBuffer *EncryptedPassword, - [in] wkssvc_renameflags RenameOptions - ); - - /*****************************/ - /* Function 0x19 */ - WERROR wkssvc_NetrValidateName2( - [in] [string,charset(UTF16)] uint16 *server_name, - [in,ref] [string,charset(UTF16)] uint16 *name, - [in] [string,charset(UTF16)] uint16 *Account, - [in] wkssvc_PasswordBuffer *EncryptedPassword, - [in] wkssvc_NetValidateNameType name_type - ); - - /*****************************/ - /* Function 0x1a */ - WERROR wkssvc_NetrGetJoinableOus2( - [in] [string,charset(UTF16)] uint16 *server_name, - [in,ref] [string,charset(UTF16)] uint16 *domain_name, - [in] [string,charset(UTF16)] uint16 *Account, - [in] wkssvc_PasswordBuffer *EncryptedPassword, - [in,out,ref] uint32 *num_ous, - [out,ref] [size_is(*num_ous)] [string,charset(UTF16)] uint16 ***ous - ); - - /*****************************/ - /* Function 0x1b */ - WERROR wkssvc_NetrAddAlternateComputerName( - [in] [string,charset(UTF16)] uint16 *server_name, - [in] [string,charset(UTF16)] uint16 *NewAlternateMachineName, - [in] [string,charset(UTF16)] uint16 *Account, - [in] wkssvc_PasswordBuffer *EncryptedPassword, - [in] uint32 Reserved - ); - - /*****************************/ - /* Function 0x1c */ - WERROR wkssvc_NetrRemoveAlternateComputerName( - [in] [string,charset(UTF16)] uint16 *server_name, - [in] [string,charset(UTF16)] uint16 *AlternateMachineNameToRemove, - [in] [string,charset(UTF16)] uint16 *Account, - [in] wkssvc_PasswordBuffer *EncryptedPassword, - [in] uint32 Reserved - ); - - /*****************************/ - /* Function 0x1d */ - WERROR wkssvc_NetrSetPrimaryComputername( - [in] [string,charset(UTF16)] uint16 *server_name, - [in] [string,charset(UTF16)] uint16 *primary_name, - [in] [string,charset(UTF16)] uint16 *Account, - [in] wkssvc_PasswordBuffer *EncryptedPassword, - [in] uint32 Reserved - ); - - /*****************************/ - /* Function 0x1e */ - typedef enum { - NetPrimaryComputerName = 0, - NetAlternateComputerNames = 1, - NetAllComputerNames = 2, - NetComputerNameTypeMax = 3 - } wkssvc_ComputerNameType; - - typedef struct { - uint32 count; - [size_is(count)] lsa_String *computer_name; - } wkssvc_ComputerNamesCtr; - - WERROR wkssvc_NetrEnumerateComputerNames( - [in] [string,charset(UTF16)] uint16 *server_name, - [in] wkssvc_ComputerNameType name_type, - [in] uint32 Reserved, - [out,ref] wkssvc_ComputerNamesCtr **ctr - ); -} diff --git a/epan/dissectors/pidl/wkssvc/wkssvc.cnf b/epan/dissectors/pidl/wkssvc/wkssvc.cnf new file mode 100644 index 0000000000..d71519de77 --- /dev/null +++ b/epan/dissectors/pidl/wkssvc/wkssvc.cnf @@ -0,0 +1,87 @@ +TFS hf_wkssvc_wkssvc_joinflags_WKSSVC_JOIN_FLAGS_DEFER_SPN "Defer setting of servicePrincipalName and dNSHostName attributes on the computer object until a rename operation" "Set servicePrincipalName and dNSHostName attributes on the computer object" + +TFS hf_wkssvc_wkssvc_joinflags_WKSSVC_JOIN_FLAGS_MACHINE_PWD_PASSED "Set the machine password after domain join to passed password" "Do not set the machine password after domain join to passed password" + +TFS hf_wkssvc_wkssvc_joinflags_WKSSVC_JOIN_FLAGS_JOIN_UNSECURE "Performs an unsecured join" "Perform a secured join" + +TFS hf_wkssvc_wkssvc_joinflags_WKSSVC_JOIN_FLAGS_DOMAIN_JOIN_IF_JOINED "Allow a join to a new domain even if the computer is already joined to a domain" "Do not allow join to a new domain if the computer is already joined to a domain" + +TFS hf_wkssvc_wkssvc_joinflags_WKSSVC_JOIN_FLAGS_WIN9X_UPGRADE "The join operation is occuring as part of an upgrade of Windows 9x" "The join operation is not part of a Windows 9x upgrade" + +TFS hf_wkssvc_wkssvc_joinflags_WKSSVC_JOIN_FLAGS_ACCOUNT_DELETE "Delete the account when a domain is left" "Do not delete the account when a domain is left" + +TFS hf_wkssvc_wkssvc_joinflags_WKSSVC_JOIN_FLAGS_ACCOUNT_CREATE "Create the account on the domain" "Do not create the account" + +TFS hf_wkssvc_wkssvc_joinflags_WKSSVC_JOIN_FLAGS_JOIN_TYPE "Join the computer to a domain" "Join the computer to a workgroup" + + +HF_FIELD hf_wkssvc_platform_id "Platform Id" "wkssvc.platform_id" FT_UINT32 BASE_DEC VALS(srvsvc_srvsvc_PlatformId_vals) 0 "" "" "" + +# +# +# Prettifications +PARAM_VALUE wkssvc_dissect_element_NetWkstaGetInfo_server_name_ 1|PIDL_SET_COL_INFO +PARAM_VALUE wkssvc_dissect_element_NetWkstaGetInfo_level PIDL_SET_COL_INFO +PARAM_VALUE wkssvc_dissect_element_NetWkstaInfo100_server_name_ 5|PIDL_SET_COL_INFO +PARAM_VALUE wkssvc_dissect_element_NetWkstaInfo100_domain_name_ 5 +PARAM_VALUE wkssvc_dissect_element_NetWkstaInfo101_server_name_ 5|PIDL_SET_COL_INFO +PARAM_VALUE wkssvc_dissect_element_NetWkstaInfo101_domain_name_ 5 +PARAM_VALUE wkssvc_dissect_element_NetWkstaInfo102_server_name_ 5|PIDL_SET_COL_INFO +PARAM_VALUE wkssvc_dissect_element_NetWkstaInfo102_domain_name_ 5 + +PARAM_VALUE wkssvc_dissect_element_NetWkstaTransportEnum_server_name_ 1|PIDL_SET_COL_INFO + + +TYPE lsa_String "offset=cnf_dissect_lsa_String(tvb, offset, pinfo, tree, di, drep, @PARAM@, @HF@);" FT_STRING BASE_NONE 0 NULL 4 +TYPE hyper "offset=cnf_dissect_hyper(tvb, offset, pinfo, tree, di, drep, @PARAM@, @HF@);" FT_UINT64 BASE_DEC 0 NULL 8 + +CODE START +/* Bug in pidl. Can not handle these dependencies properly yet */ +static int +wkssvc_dissect_struct_srvsvc_PlatformId(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep, int hf_index _U_, guint32 param _U_) +{ + offset = srvsvc_dissect_enum_PlatformId(tvb,offset,pinfo,tree,di,drep,hf_wkssvc_platform_id,0); + + return offset; +} + +static int +cnf_dissect_lsa_String(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *parent_tree, dcerpc_info* di, guint8 *drep, guint32 param, int hfindex) +{ + proto_item *item = NULL; + proto_tree *tree = NULL; + int old_offset; + header_field_info *hf_info; + + ALIGN_TO_4_BYTES; + + old_offset = offset; + hf_info=proto_registrar_get_nth(hfindex); + + if (parent_tree) { + tree = proto_tree_add_subtree_format(parent_tree, tvb, offset, 0, ett_wkssvc_lsa_String, &item, "%s: ", hf_info->name); + } + + offset = wkssvc_dissect_element_lsa_String_name_len(tvb, offset, pinfo, tree, di, drep); + offset = wkssvc_dissect_element_lsa_String_name_size(tvb, offset, pinfo, tree, di, drep); + + offset = dissect_ndr_pointer_cb( + tvb, offset, pinfo, tree, di, drep, + dissect_ndr_wchar_cvstring, NDR_POINTER_UNIQUE, + hf_info->name, hfindex, cb_wstr_postprocess, + GINT_TO_POINTER(param)); + + proto_item_set_len(item, offset-old_offset); + + return offset; +} + +static int +cnf_dissect_hyper(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep, guint32 param _U_, int hfindex) +{ + offset = dissect_ndr_uint64(tvb, offset, pinfo, tree, di, drep, hfindex, NULL); + + return offset; +} + +CODE END diff --git a/epan/dissectors/pidl/wkssvc/wkssvc.idl b/epan/dissectors/pidl/wkssvc/wkssvc.idl new file mode 100644 index 0000000000..0b08f62f6d --- /dev/null +++ b/epan/dissectors/pidl/wkssvc/wkssvc.idl @@ -0,0 +1,794 @@ +#include "idl_types.h" + +/* + wkssvc interface definitions +*/ + +import "srvsvc.idl", "lsa.idl"; + +[ uuid("6bffd098-a112-3610-9833-46c3f87e345a"), + version(1.0), + pointer_default(unique), + pointer_default_top(unique), + helpstring("Workstation Service"), + endpoint("ncacn_np:[\\pipe\\wkssvc]","ncacn_ip_tcp:","ncalrpc:") +] interface wkssvc +{ + typedef [v1_enum] enum srvsvc_PlatformId srvsvc_PlatformId; + +#define BOOL uint32 + + typedef [public,noejs] struct { + [value(strlen_m_term(name)*2)] uint16 name_len; + [value(strlen_m_term(name)*2)] uint16 name_size; + [string,charset(UTF16)] uint16 *name; + } lsa_String; + + /******************/ + /* Function: 0x00 */ + + typedef struct { + srvsvc_PlatformId platform_id; + [string,charset(UTF16)] uint16 *server_name; + [string,charset(UTF16)] uint16 *domain_name; + uint32 version_major; + uint32 version_minor; + } wkssvc_NetWkstaInfo100; + + typedef struct { + srvsvc_PlatformId platform_id; + [string,charset(UTF16)] uint16 *server_name; + [string,charset(UTF16)] uint16 *domain_name; + uint32 version_major; + uint32 version_minor; + [string,charset(UTF16)] uint16 *lan_root; + } wkssvc_NetWkstaInfo101; + + typedef struct { + srvsvc_PlatformId platform_id; + [string,charset(UTF16)] uint16 *server_name; + [string,charset(UTF16)] uint16 *domain_name; + uint32 version_major; + uint32 version_minor; + [string,charset(UTF16)] uint16 *lan_root; + uint32 logged_on_users; + } wkssvc_NetWkstaInfo102; + + /* FIXME: 302, 402 */ + + typedef struct { + uint32 char_wait; + uint32 collection_time; + uint32 maximum_collection_count; + uint32 keep_connection; + uint32 max_commands; + uint32 session_timeout; + uint32 size_char_buf; + uint32 max_threads; + uint32 lock_quota; + uint32 lock_increment; + uint32 lock_maximum; + uint32 pipe_increment; + uint32 pipe_maximum; + uint32 cache_file_timeout; + uint32 dormant_file_limit; + uint32 read_ahead_throughput; + uint32 num_mailslot_buffers; + uint32 num_srv_announce_buffers; + uint32 max_illegal_dgram_events; + uint32 dgram_event_reset_freq; + BOOL log_election_packets; + BOOL use_opportunistic_locking; + BOOL use_unlock_behind; + BOOL use_close_behind; + BOOL buf_named_pipes; + BOOL use_lock_read_unlock; + BOOL utilize_nt_caching; + BOOL use_raw_read; + BOOL use_raw_write; + BOOL use_write_raw_data; + BOOL use_encryption; + BOOL buf_files_deny_write; + BOOL buf_read_only_files; + BOOL force_core_create_mode; + BOOL use_512_byte_max_transfer; + } wkssvc_NetWkstaInfo502; + + typedef struct { + uint32 char_wait; + } wkssvc_NetWkstaInfo1010; + + typedef struct { + uint32 collection_time; + } wkssvc_NetWkstaInfo1011; + + typedef struct { + uint32 maximum_collection_count; + } wkssvc_NetWkstaInfo1012; + + typedef struct { + uint32 keep_connection; + } wkssvc_NetWkstaInfo1013; + + typedef struct { + uint32 session_timeout; + } wkssvc_NetWkstaInfo1018; + + typedef struct { + uint32 size_char_buf; + } wkssvc_NetWkstaInfo1023; + + typedef struct { + uint32 errorlog_sz; + } wkssvc_NetWkstaInfo1027; + + /* downlevel */ + typedef struct { + uint32 print_buf_time; + } wkssvc_NetWkstaInfo1028; + + /* downlevel */ + typedef struct { + uint32 wrk_heuristics; + } wkssvc_NetWkstaInfo1032; + + typedef struct { + uint32 max_threads; + } wkssvc_NetWkstaInfo1033; + + typedef struct { + uint32 lock_quota; + } wkssvc_NetWkstaInfo1041; + + typedef struct { + uint32 lock_increment; + } wkssvc_NetWkstaInfo1042; + + typedef struct { + uint32 lock_maximum; + } wkssvc_NetWkstaInfo1043; + + typedef struct { + uint32 pipe_increment; + } wkssvc_NetWkstaInfo1044; + + typedef struct { + uint32 pipe_maximum; + } wkssvc_NetWkstaInfo1045; + + typedef struct { + uint32 dormant_file_limit; + } wkssvc_NetWkstaInfo1046; + + typedef struct { + uint32 cache_file_timeout; + } wkssvc_NetWkstaInfo1047; + + typedef struct { + uint32 use_opportunistic_locking; + } wkssvc_NetWkstaInfo1048; + + typedef struct { + uint32 use_unlock_behind; + } wkssvc_NetWkstaInfo1049; + + typedef struct { + uint32 use_close_behind; + } wkssvc_NetWkstaInfo1050; + + typedef struct { + uint32 buf_named_pipes; + } wkssvc_NetWkstaInfo1051; + + typedef struct { + uint32 use_lock_read_unlock; + } wkssvc_NetWkstaInfo1052; + + typedef struct { + uint32 utilize_nt_caching; + } wkssvc_NetWkstaInfo1053; + + typedef struct { + uint32 use_raw_read; + } wkssvc_NetWkstaInfo1054; + + typedef struct { + uint32 use_raw_write; + } wkssvc_NetWkstaInfo1055; + + typedef struct { + uint32 use_write_raw_data; + } wkssvc_NetWkstaInfo1056; + + typedef struct { + uint32 use_encryption; + } wkssvc_NetWkstaInfo1057; + + typedef struct { + uint32 buf_files_deny_write; + } wkssvc_NetWkstaInfo1058; + + typedef struct { + uint32 buf_read_only_files; + } wkssvc_NetWkstaInfo1059; + + typedef struct { + uint32 force_core_create_mode; + } wkssvc_NetWkstaInfo1060; + + typedef struct { + uint32 use_512_byte_max_transfer; + } wkssvc_NetWkstaInfo1061; + + typedef struct { + uint32 read_ahead_throughput; + } wkssvc_NetWkstaInfo1062; + + typedef union { + [case(100)] wkssvc_NetWkstaInfo100 *info100; + [case(101)] wkssvc_NetWkstaInfo101 *info101; + [case(102)] wkssvc_NetWkstaInfo102 *info102; + [case(502)] wkssvc_NetWkstaInfo502 *info502; + [case(1010)] wkssvc_NetWkstaInfo1010 *info1010; + [case(1011)] wkssvc_NetWkstaInfo1011 *info1011; + [case(1012)] wkssvc_NetWkstaInfo1012 *info1012; + [case(1013)] wkssvc_NetWkstaInfo1013 *info1013; + [case(1018)] wkssvc_NetWkstaInfo1018 *info1018; + [case(1023)] wkssvc_NetWkstaInfo1023 *info1023; + [case(1027)] wkssvc_NetWkstaInfo1027 *info1027; + [case(1028)] wkssvc_NetWkstaInfo1028 *info1028; + [case(1032)] wkssvc_NetWkstaInfo1032 *info1032; + [case(1033)] wkssvc_NetWkstaInfo1033 *info1033; + [case(1041)] wkssvc_NetWkstaInfo1041 *info1041; + [case(1042)] wkssvc_NetWkstaInfo1042 *info1042; + [case(1043)] wkssvc_NetWkstaInfo1043 *info1043; + [case(1044)] wkssvc_NetWkstaInfo1044 *info1044; + [case(1045)] wkssvc_NetWkstaInfo1045 *info1045; + [case(1046)] wkssvc_NetWkstaInfo1046 *info1046; + [case(1047)] wkssvc_NetWkstaInfo1047 *info1047; + [case(1048)] wkssvc_NetWkstaInfo1048 *info1048; + [case(1049)] wkssvc_NetWkstaInfo1049 *info1049; + [case(1050)] wkssvc_NetWkstaInfo1050 *info1050; + [case(1051)] wkssvc_NetWkstaInfo1051 *info1051; + [case(1052)] wkssvc_NetWkstaInfo1052 *info1052; + [case(1053)] wkssvc_NetWkstaInfo1053 *info1053; + [case(1054)] wkssvc_NetWkstaInfo1054 *info1054; + [case(1055)] wkssvc_NetWkstaInfo1055 *info1055; + [case(1056)] wkssvc_NetWkstaInfo1056 *info1056; + [case(1057)] wkssvc_NetWkstaInfo1057 *info1057; + [case(1058)] wkssvc_NetWkstaInfo1058 *info1058; + [case(1059)] wkssvc_NetWkstaInfo1059 *info1059; + [case(1060)] wkssvc_NetWkstaInfo1060 *info1060; + [case(1061)] wkssvc_NetWkstaInfo1061 *info1061; + [case(1062)] wkssvc_NetWkstaInfo1062 *info1062; + [default] ; + } wkssvc_NetWkstaInfo; + + WERROR wkssvc_NetWkstaGetInfo( + [in] [string,charset(UTF16)] uint16 *server_name, + [in] uint32 level, + [out,switch_is(level),ref] wkssvc_NetWkstaInfo *info + ); + + + /******************/ + /* Function: 0x01 */ + WERROR wkssvc_NetWkstaSetInfo( + [in] [string,charset(UTF16)] uint16 *server_name, + [in] uint32 level, + [in,switch_is(level),ref] wkssvc_NetWkstaInfo *info, + [in,out,ref] uint32 *parm_error + ); + + + /*****************************/ + /* Function 0x02 */ + typedef struct { + [string,charset(UTF16)] uint16 *user_name; + } wkssvc_NetrWkstaUserInfo0; + + typedef struct { + uint32 entries_read; + [size_is(entries_read)] wkssvc_NetrWkstaUserInfo0 *user0; + } wkssvc_NetWkstaEnumUsersCtr0; + + typedef struct { + [string,charset(UTF16)] uint16 *user_name; + [string,charset(UTF16)] uint16 *logon_domain; + [string,charset(UTF16)] uint16 *other_domains; + [string,charset(UTF16)] uint16 *logon_server; + } wkssvc_NetrWkstaUserInfo1; + + typedef struct { + uint32 entries_read; + [size_is(entries_read)] wkssvc_NetrWkstaUserInfo1 *user1; + } wkssvc_NetWkstaEnumUsersCtr1; + + typedef [switch_type(uint32)] union { + [case(0)] wkssvc_NetWkstaEnumUsersCtr0 *user0; + [case(1)] wkssvc_NetWkstaEnumUsersCtr1 *user1; + } wkssvc_NetWkstaEnumUsersCtr; + + typedef struct { + uint32 level; + [switch_is(level)] wkssvc_NetWkstaEnumUsersCtr ctr; + } wkssvc_NetWkstaEnumUsersInfo; + + WERROR wkssvc_NetWkstaEnumUsers( + [in] [string,charset(UTF16)] uint16 *server_name, + [in,out,ref] wkssvc_NetWkstaEnumUsersInfo *info, + [in] uint32 prefmaxlen, + [out,ref] uint32 *entries_read, + [in,out] uint32 *resume_handle + ); + + /*****************************/ + /* Function 0x03 */ + typedef struct { + [string,charset(UTF16)] uint16 *other_domains; + } wkssvc_NetrWkstaUserInfo1101; + + typedef [switch_type(uint32)] union { + [case(0)] wkssvc_NetrWkstaUserInfo0 *info0; + [case(1)] wkssvc_NetrWkstaUserInfo1 *info1; + [case(1101)] wkssvc_NetrWkstaUserInfo1101 *info1101; + } wkssvc_NetrWkstaUserInfo; + + WERROR wkssvc_NetrWkstaUserGetInfo( + [in] [string,charset(UTF16)] uint16 *unknown, + [in] uint32 level, + [out,ref] [switch_is(level)] wkssvc_NetrWkstaUserInfo *info + ); + + /*****************************/ + /* Function 0x04 */ + WERROR wkssvc_NetrWkstaUserSetInfo( + [in] [string,charset(UTF16)] uint16 *unknown, + [in] uint32 level, + [in,ref] [switch_is(level)] wkssvc_NetrWkstaUserInfo *info, + [in,out] uint32 *parm_err + ); + + /*****************************/ + /* Function 0x05 */ + + typedef struct { + uint32 quality_of_service; + uint32 vc_count; + [string,charset(UTF16)] uint16 *name; + [string,charset(UTF16)] uint16 *address; + uint32 wan_link; + } wkssvc_NetWkstaTransportInfo0; + + typedef struct { + uint32 count; + [size_is(count)] wkssvc_NetWkstaTransportInfo0 *array; + } wkssvc_NetWkstaTransportCtr0; + + typedef union { + [case(0)] wkssvc_NetWkstaTransportCtr0 *ctr0; + } wkssvc_NetWkstaTransportCtr; + + typedef struct { + uint32 level; + [switch_is(level)] wkssvc_NetWkstaTransportCtr ctr; + } wkssvc_NetWkstaTransportInfo; + + WERROR wkssvc_NetWkstaTransportEnum ( + [in] [string,charset(UTF16)] uint16 *server_name, + [in,out,ref] wkssvc_NetWkstaTransportInfo *info, + [in] uint32 max_buffer, + [out,ref] uint32 *total_entries, + [in,out] uint32 *resume_handle + ); + + /*****************************/ + /* Function 0x06 */ + /* only supported on NT */ + WERROR wkssvc_NetrWkstaTransportAdd( + [in] [string,charset(UTF16)] uint16 *server_name, + [in] uint32 level, /* must be 0 */ + [in,ref] wkssvc_NetWkstaTransportInfo0 *info0, + [in,out] uint32 *parm_err + ); + + /*****************************/ + /* Function 0x07 */ + /* only supported on NT */ + WERROR wkssvc_NetrWkstaTransportDel( + [in] [string,charset(UTF16)] uint16 *server_name, + [in] [string,charset(UTF16)] uint16 *transport_name, + [in] uint32 unknown3 + ); + + /*****************************/ + /* Function 0x08 */ + typedef struct { + [string,charset(UTF16)] uint16 *unknown1; + [string,charset(UTF16)] uint16 *unknown2; + } wkssvc_NetrUseInfo3; + + typedef struct { + [string,charset(UTF16)] uint16 *local; + [string,charset(UTF16)] uint16 *remote; + [string,charset(UTF16)] uint16 *password; + uint32 status; + uint32 asg_type; + uint32 ref_count; + uint32 use_count; + [string,charset(UTF16)] uint16 *user_name; + [string,charset(UTF16)] uint16 *domain_name; + } wkssvc_NetrUseInfo2; + + typedef struct { + [string,charset(UTF16)] uint16 *local; + [string,charset(UTF16)] uint16 *remote; + [string,charset(UTF16)] uint16 *password; + uint32 status; + uint32 asg_type; + uint32 ref_count; + uint32 use_count; + } wkssvc_NetrUseInfo1; + + typedef struct { + [string,charset(UTF16)] uint16 *local; + [string,charset(UTF16)] uint16 *remote; + } wkssvc_NetrUseInfo0; + + typedef [switch_type(uint32)] union { + [case(0)] wkssvc_NetrUseInfo0 *info0; + [case(1)] wkssvc_NetrUseInfo1 *info1; + [case(2)] wkssvc_NetrUseInfo2 *info2; + [case(3)] wkssvc_NetrUseInfo3 *info3; + } wkssvc_NetrUseGetInfoCtr; + + WERROR wkssvc_NetrUseAdd( + [in] [string,charset(UTF16)] uint16 *server_name, + [in] uint32 level, + [in,ref] [switch_is(level)] wkssvc_NetrUseGetInfoCtr *ctr, + [in,out] uint32 *parm_err + ); + + /*****************************/ + /* Function 0x09 */ + WERROR wkssvc_NetrUseGetInfo( + [in] [string,charset(UTF16)] uint16 *server_name, + [in,ref] [string,charset(UTF16)] uint16 *use_name, + [in] uint32 level, + [out,ref] [switch_is(level)] wkssvc_NetrUseGetInfoCtr *ctr + ); + + /*****************************/ + /* Function 0x0a */ + WERROR wkssvc_NetrUseDel( + [in] [string,charset(UTF16)] uint16 *server_name, + [in,ref] [string,charset(UTF16)] uint16 *use_name, + [in] uint32 force_cond + ); + + /*****************************/ + /* Function 0x0b */ + typedef struct { + uint32 count; + [size_is(count)] wkssvc_NetrUseInfo2 *array; + } wkssvc_NetrUseEnumCtr2; + + typedef struct { + uint32 count; + [size_is(count)] wkssvc_NetrUseInfo1 *array; + } wkssvc_NetrUseEnumCtr1; + + typedef struct { + uint32 count; + [size_is(count)] wkssvc_NetrUseInfo0 *array; + } wkssvc_NetrUseEnumCtr0; + + typedef [switch_type(uint32)] union { + [case(0)] wkssvc_NetrUseEnumCtr0 *ctr0; + [case(1)] wkssvc_NetrUseEnumCtr1 *ctr1; + [case(2)] wkssvc_NetrUseEnumCtr2 *ctr2; + } wkssvc_NetrUseEnumCtr; + + typedef struct { + uint32 level; + [switch_is(level)] wkssvc_NetrUseEnumCtr ctr; + } wkssvc_NetrUseEnumInfo; + + WERROR wkssvc_NetrUseEnum( + [in] [string,charset(UTF16)] uint16 *server_name, + [in,out,ref] wkssvc_NetrUseEnumInfo *info, + [in] uint32 prefmaxlen, + [out,ref] uint32 *entries_read, + [in,out] uint32 *resume_handle + ); + + /*****************************/ + /* Function 0x0c */ + WERROR wkssvc_NetrMessageBufferSend( + [in] [string,charset(UTF16)] uint16 *server_name, + [in,ref] [string,charset(UTF16)] uint16 *message_name, + [in] [string,charset(UTF16)] uint16 *message_sender_name, + [in,ref] [size_is(message_size)] uint8 *message_buffer, + [in] uint32 message_size + ); + + /*****************************/ + /* Function 0x0d */ + typedef struct { + hyper unknown1; + hyper unknown2; + hyper unknown3; + hyper unknown4; + hyper unknown5; + hyper unknown6; + hyper unknown7; + hyper unknown8; + hyper unknown9; + hyper unknown10; + hyper unknown11; + hyper unknown12; + hyper unknown13; + uint32 unknown14; + uint32 unknown15; + uint32 unknown16; + uint32 unknown17; + uint32 unknown18; + uint32 unknown19; + uint32 unknown20; + uint32 unknown21; + uint32 unknown22; + uint32 unknown23; + uint32 unknown24; + uint32 unknown25; + uint32 unknown26; + uint32 unknown27; + uint32 unknown28; + uint32 unknown29; + uint32 unknown30; + uint32 unknown31; + uint32 unknown32; + uint32 unknown33; + uint32 unknown34; + uint32 unknown35; + uint32 unknown36; + uint32 unknown37; + uint32 unknown38; + uint32 unknown39; + uint32 unknown40; + } wkssvc_NetrWorkstationStatistics; + + WERROR wkssvc_NetrWorkstationStatisticsGet( + [in] [string,charset(UTF16)] uint16 *server_name, + [in] [string,charset(UTF16)] uint16 *unknown2, + [in] uint32 unknown3, + [in] uint32 unknown4, + [out,ref] wkssvc_NetrWorkstationStatistics **info + ); + + /*****************************/ + /* Function 0x0e */ + WERROR wkssvc_NetrLogonDomainNameAdd( + [in,ref] [string,charset(UTF16)] uint16 *domain_name + ); + + /*****************************/ + /* Function 0x0f */ + WERROR wkssvc_NetrLogonDomainNameDel( + [in,ref] [string,charset(UTF16)] uint16 *domain_name + ); + + /*****************************/ + /* Function 0x10 */ + WERROR wkssvc_NetrJoinDomain( + [in] [string,charset(UTF16)] uint16 *server_name, + [in,ref] [string,charset(UTF16)] uint16 *domain_name, + [in] [string,charset(UTF16)] uint16 *account_ou, + [in] [string,charset(UTF16)] uint16 *Account, + [in] [string,charset(UTF16)] uint16 *unknown, + [in] wkssvc_joinflags join_flags + ); + + /*****************************/ + /* Function 0x11 */ + WERROR wkssvc_NetrUnjoinDomain( + [in] [string,charset(UTF16)] uint16 *server_name, + [in] [string,charset(UTF16)] uint16 *Account, + [in] [string,charset(UTF16)] uint16 *password, + [in] wkssvc_joinflags unjoin_flags + ); + + /*****************************/ + /* Function 0x12 */ + typedef [bitmap32bit] bitmap { + /* TRUE: create the account in the domain */ + WKSSVC_JOIN_FLAGS_ACCOUNT_CREATE = 0x00000002 + } wkssvc_renameflags; + + WERROR wkssvc_NetrRenameMachineInDomain( + [in] [string,charset(UTF16)] uint16 *server_name, + [in] [string,charset(UTF16)] uint16 *NewMachineName, + [in] [string,charset(UTF16)] uint16 *Account, + [in] [string,charset(UTF16)] uint16 *password, + [in] wkssvc_renameflags RenameOptions + ); + + /*****************************/ + /* Function 0x13 */ + typedef enum { + NetSetupUnknown = 0, + NetSetupMachine = 1, + NetSetupWorkgroup = 2, + NetSetupDomain = 3, + NetSetupNonExistentDomain = 4, + NetSetupDnsMachine = 5 + } wkssvc_NetValidateNameType; + + WERROR wkssvc_NetrValidateName( + [in] [string,charset(UTF16)] uint16 *server_name, + [in,ref] [string,charset(UTF16)] uint16 *name, + [in] [string,charset(UTF16)] uint16 *Account, + [in] [string,charset(UTF16)] uint16 *Password, + [in] wkssvc_NetValidateNameType name_type + ); + + /*****************************/ + /* Function 0x14 */ + typedef enum { + NetSetupUnknownStatus = 0, + NetSetupUnjoined = 1, + NetSetupWorkgroupName = 2, + NetSetupDomainName = 3 + } wkssvc_NetJoinStatus; + + WERROR wkssvc_NetrGetJoinInformation( + [in] [string,charset(UTF16)] uint16 *server_name, + [in,out,ref] [string,charset(UTF16)] uint16 **name_buffer, + [out,ref] wkssvc_NetJoinStatus *name_type + ); + + /*****************************/ + /* Function 0x15 */ + WERROR wkssvc_NetrGetJoinableOus( + [in] [string,charset(UTF16)] uint16 *server_name, + [in,ref] [string,charset(UTF16)] uint16 *domain_name, + [in] [string,charset(UTF16)] uint16 *Account, + [in] [string,charset(UTF16)] uint16 *unknown, + [in,out,ref] uint32 *num_ous, + [out,ref] [size_is(*num_ous)] [string,charset(UTF16)] uint16 ***ous + ); + + typedef [flag(NDR_PAHEX)] struct { + uint8 data[524]; + } wkssvc_PasswordBuffer; + + typedef [bitmap32bit] bitmap { + WKSSVC_JOIN_FLAGS_JOIN_WITH_NEW_NAME = 0x00000400, + WKSSVC_JOIN_FLAGS_JOIN_DC_ACCOUNT = 0x00000200, + /* TRUE: defer setting the SPN and dNSHostName until a rename operation */ + WKSSVC_JOIN_FLAGS_DEFER_SPN = 0x00000100, + + /* TRUE: set the machine password to the provided one after the join completes */ + WKSSVC_JOIN_FLAGS_MACHINE_PWD_PASSED = 0x00000080, + + /* TRUE: perform an unsecured join */ + WKSSVC_JOIN_FLAGS_JOIN_UNSECURE = 0x00000040, + + /* TRUE: allow the join to complete even if the account already exists */ + WKSSVC_JOIN_FLAGS_DOMAIN_JOIN_IF_JOINED = 0x00000020, + + /* TRUE: this join is part of a w9x upgrade */ + WKSSVC_JOIN_FLAGS_WIN9X_UPGRADE = 0x00000010, + + /* TRUE: delete the account when the domain is left */ + WKSSVC_JOIN_FLAGS_ACCOUNT_DELETE = 0x00000004, + + /* TRUE: create the account in the domain */ + WKSSVC_JOIN_FLAGS_ACCOUNT_CREATE = 0x00000002, + + /* TRUE: join domain FALSE: join workgroup */ + WKSSVC_JOIN_FLAGS_JOIN_TYPE = 0x00000001 + + } wkssvc_joinflags; + + /*****************************/ + /* Function 0x16 */ + WERROR wkssvc_NetrJoinDomain2 ( + [in] [string,charset(UTF16)] uint16 *server_name, + [in,ref] [string,charset(UTF16)] uint16 *domain_name, + [in] [string,charset(UTF16)] uint16 *account_name, + [in] [string,charset(UTF16)] uint16 *admin_account, + [in] wkssvc_PasswordBuffer *encrypted_password, + [in] wkssvc_joinflags join_flags + ); + + /*****************************/ + /* Function 0x17 */ + WERROR wkssvc_NetrUnjoinDomain2 ( + [in] [string,charset(UTF16)] uint16 *server_name, + [in] [string,charset(UTF16)] uint16 *account, + [in] wkssvc_PasswordBuffer *encrypted_password, + [in] wkssvc_joinflags unjoin_flags + ); + + /*****************************/ + /* Function 0x18 */ + WERROR wkssvc_NetrRenameMachineInDomain2( + [in] [string,charset(UTF16)] uint16 *server_name, + [in] [string,charset(UTF16)] uint16 *NewMachineName, + [in] [string,charset(UTF16)] uint16 *Account, + [in] wkssvc_PasswordBuffer *EncryptedPassword, + [in] wkssvc_renameflags RenameOptions + ); + + /*****************************/ + /* Function 0x19 */ + WERROR wkssvc_NetrValidateName2( + [in] [string,charset(UTF16)] uint16 *server_name, + [in,ref] [string,charset(UTF16)] uint16 *name, + [in] [string,charset(UTF16)] uint16 *Account, + [in] wkssvc_PasswordBuffer *EncryptedPassword, + [in] wkssvc_NetValidateNameType name_type + ); + + /*****************************/ + /* Function 0x1a */ + WERROR wkssvc_NetrGetJoinableOus2( + [in] [string,charset(UTF16)] uint16 *server_name, + [in,ref] [string,charset(UTF16)] uint16 *domain_name, + [in] [string,charset(UTF16)] uint16 *Account, + [in] wkssvc_PasswordBuffer *EncryptedPassword, + [in,out,ref] uint32 *num_ous, + [out,ref] [size_is(*num_ous)] [string,charset(UTF16)] uint16 ***ous + ); + + /*****************************/ + /* Function 0x1b */ + WERROR wkssvc_NetrAddAlternateComputerName( + [in] [string,charset(UTF16)] uint16 *server_name, + [in] [string,charset(UTF16)] uint16 *NewAlternateMachineName, + [in] [string,charset(UTF16)] uint16 *Account, + [in] wkssvc_PasswordBuffer *EncryptedPassword, + [in] uint32 Reserved + ); + + /*****************************/ + /* Function 0x1c */ + WERROR wkssvc_NetrRemoveAlternateComputerName( + [in] [string,charset(UTF16)] uint16 *server_name, + [in] [string,charset(UTF16)] uint16 *AlternateMachineNameToRemove, + [in] [string,charset(UTF16)] uint16 *Account, + [in] wkssvc_PasswordBuffer *EncryptedPassword, + [in] uint32 Reserved + ); + + /*****************************/ + /* Function 0x1d */ + WERROR wkssvc_NetrSetPrimaryComputername( + [in] [string,charset(UTF16)] uint16 *server_name, + [in] [string,charset(UTF16)] uint16 *primary_name, + [in] [string,charset(UTF16)] uint16 *Account, + [in] wkssvc_PasswordBuffer *EncryptedPassword, + [in] uint32 Reserved + ); + + /*****************************/ + /* Function 0x1e */ + typedef enum { + NetPrimaryComputerName = 0, + NetAlternateComputerNames = 1, + NetAllComputerNames = 2, + NetComputerNameTypeMax = 3 + } wkssvc_ComputerNameType; + + typedef struct { + uint32 count; + [size_is(count)] lsa_String *computer_name; + } wkssvc_ComputerNamesCtr; + + WERROR wkssvc_NetrEnumerateComputerNames( + [in] [string,charset(UTF16)] uint16 *server_name, + [in] wkssvc_ComputerNameType name_type, + [in] uint32 Reserved, + [out,ref] wkssvc_ComputerNamesCtr **ctr + ); +} diff --git a/epan/dissectors/pidl/wzcsvc.cnf b/epan/dissectors/pidl/wzcsvc.cnf deleted file mode 100644 index 3187c6b537..0000000000 --- a/epan/dissectors/pidl/wzcsvc.cnf +++ /dev/null @@ -1,2 +0,0 @@ -# Conformance file - diff --git a/epan/dissectors/pidl/wzcsvc.idl b/epan/dissectors/pidl/wzcsvc.idl deleted file mode 100644 index b403c0798c..0000000000 --- a/epan/dissectors/pidl/wzcsvc.idl +++ /dev/null @@ -1,31 +0,0 @@ -/* - wireless configuration service -*/ - -[ - uuid("621dff68-3c39-4c6c-aae3-e68e2c6503ad"), - version(1.0), - helpstring("Wireless Configuration Service") -] -interface wzcsvc -{ - - void wzcsvc_EnumInterfaces(); - void wzcsvc_QueryInterface(); - void wzcsvc_SetInterface(); - void wzcsvc_RefreshInterface(); - void wzcsvc_QueryContext(); - void wzcsvc_SetContext(); - void wzcsvc_EapolUIResponse(); - void wzcsvc_EapolGetCustomAuthData(); - void wzcsvc_EapolSetCustomAuthData(); - void wzcsvc_EapolGetInterfaceParams(); - void wzcsvc_EapolSetInterfaceParams(); - void wzcsvc_EapolReAuthenticateInterface(); - void wzcsvc_EapolQueryInterfaceState(); - void wzcsvc_OpenWZCDbLogSession(); - void wzcsvc_CloseWZCDbLogSession(); - void wzcsvc_EnumWZCDbLogRecords(); - void wzcsvc_FlushWZCdbLog(); - void wzcsvc_GetWZCDbLogRecord(); -} diff --git a/epan/dissectors/pidl/wzcsvc/wzcsvc.cnf b/epan/dissectors/pidl/wzcsvc/wzcsvc.cnf new file mode 100644 index 0000000000..3187c6b537 --- /dev/null +++ b/epan/dissectors/pidl/wzcsvc/wzcsvc.cnf @@ -0,0 +1,2 @@ +# Conformance file + diff --git a/epan/dissectors/pidl/wzcsvc/wzcsvc.idl b/epan/dissectors/pidl/wzcsvc/wzcsvc.idl new file mode 100644 index 0000000000..b403c0798c --- /dev/null +++ b/epan/dissectors/pidl/wzcsvc/wzcsvc.idl @@ -0,0 +1,31 @@ +/* + wireless configuration service +*/ + +[ + uuid("621dff68-3c39-4c6c-aae3-e68e2c6503ad"), + version(1.0), + helpstring("Wireless Configuration Service") +] +interface wzcsvc +{ + + void wzcsvc_EnumInterfaces(); + void wzcsvc_QueryInterface(); + void wzcsvc_SetInterface(); + void wzcsvc_RefreshInterface(); + void wzcsvc_QueryContext(); + void wzcsvc_SetContext(); + void wzcsvc_EapolUIResponse(); + void wzcsvc_EapolGetCustomAuthData(); + void wzcsvc_EapolSetCustomAuthData(); + void wzcsvc_EapolGetInterfaceParams(); + void wzcsvc_EapolSetInterfaceParams(); + void wzcsvc_EapolReAuthenticateInterface(); + void wzcsvc_EapolQueryInterfaceState(); + void wzcsvc_OpenWZCDbLogSession(); + void wzcsvc_CloseWZCDbLogSession(); + void wzcsvc_EnumWZCDbLogRecords(); + void wzcsvc_FlushWZCdbLog(); + void wzcsvc_GetWZCDbLogRecord(); +} diff --git a/tools/pidl/lib/Parse/Pidl/Wireshark/NDR.pm b/tools/pidl/lib/Parse/Pidl/Wireshark/NDR.pm index 29de25a3f3..67419d5999 100644 --- a/tools/pidl/lib/Parse/Pidl/Wireshark/NDR.pm +++ b/tools/pidl/lib/Parse/Pidl/Wireshark/NDR.pm @@ -962,6 +962,7 @@ sub ProcessImport next if($_ eq "security"); s/^\"//; s/\.idl"?$//; + s/^.*\///; $self->pidl_hdr("#include \"packet-dcerpc-$_\.h\""); } $self->pidl_hdr(""); -- cgit v1.2.3