Ignore:
Timestamp:
Nov 27, 2012, 4:43:17 PM (13 years ago)
Author:
Silvan Scherrer
Message:

Samba Server: updated trunk to 3.6.0

Location:
trunk/server
Files:
9 edited
5 copied

Legend:

Unmodified
Added
Removed
  • trunk/server

  • trunk/server/source4/torture/ndr/README

    r414 r745  
    11use
    2         hexdump -e '12/1 "0x%02x, " "\n"' infile|outfile
     2        hexdump -v -e '12/1 "0x%02x, " "\n"' infile|outfile
    33
    44to import ndr dumps
  • trunk/server/source4/torture/ndr/lsa.c

    r414 r745  
    19821982}
    19831983
     1984static const uint8_t lsarsetforesttrustsinformation_in_data[] = {
     1985  0x00, 0x00, 0x00, 0x00, 0x42, 0x3e, 0xd4, 0x20, 0x20, 0xe8, 0xa1, 0x43,
     1986  0x96, 0x67, 0x8c, 0xd1, 0xb9, 0x48, 0xa0, 0x3d, 0x0e, 0x00, 0x10, 0x00,
     1987  0x00, 0x00, 0x02, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     1988  0x07, 0x00, 0x00, 0x00, 0x66, 0x00, 0x31, 0x00, 0x2e, 0x00, 0x74, 0x00,
     1989  0x65, 0x00, 0x73, 0x00, 0x74, 0x00, 0x02, 0x00, 0x02, 0x00, 0x00, 0x00,
     1990  0x04, 0x00, 0x02, 0x00, 0x02, 0x00, 0x00, 0x00, 0x08, 0x00, 0x02, 0x00,
     1991  0x10, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     1992  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     1993  0x00, 0x00, 0x00, 0x00, 0x0e, 0x00, 0x10, 0x00, 0x0c, 0x00, 0x02, 0x00,
     1994  0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x00, 0x00, 0x00,
     1995  0x66, 0x00, 0x31, 0x00, 0x2e, 0x00, 0x74, 0x00, 0x65, 0x00, 0x73, 0x00,
     1996  0x74, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00,
     1997  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00,
     1998  0x14, 0x00, 0x02, 0x00, 0x0e, 0x00, 0x10, 0x00, 0x18, 0x00, 0x02, 0x00,
     1999  0x04, 0x00, 0x06, 0x00, 0x1c, 0x00, 0x02, 0x00, 0x04, 0x00, 0x00, 0x00,
     2000  0x01, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x15, 0x00, 0x00, 0x00,
     2001  0x60, 0xcc, 0x85, 0x53, 0x92, 0x64, 0x11, 0x5e, 0x37, 0xa1, 0x11, 0x65,
     2002  0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x00, 0x00, 0x00,
     2003  0x66, 0x00, 0x31, 0x00, 0x2e, 0x00, 0x74, 0x00, 0x65, 0x00, 0x73, 0x00,
     2004  0x74, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     2005  0x02, 0x00, 0x00, 0x00, 0x46, 0x00, 0x31, 0x00, 0x01
     2006};
     2007
     2008static bool lsarsetforesttrustsinformation_in_check(struct torture_context *tctx,
     2009                                                    struct lsa_lsaRSetForestTrustInformation *r)
     2010{
     2011        /* FIXME: Handle */
     2012        torture_assert_str_equal(tctx, r->in.trusted_domain_name->string, "f1.test", "trusted domain name");
     2013        torture_assert_int_equal(tctx, r->in.highest_record_type, 2, "highest record type");
     2014        torture_assert(tctx, r->in.forest_trust_info != NULL, "forest trust info");
     2015        torture_assert_int_equal(tctx, r->in.forest_trust_info->count, 2, "number fo forest trust records");
     2016        torture_assert_int_equal(tctx, r->in.forest_trust_info->entries[0]->flags, 0, "first entry flags");
     2017        torture_assert_int_equal(tctx, r->in.forest_trust_info->entries[0]->type, 0, "first entry type");
     2018        torture_assert_int_equal(tctx, r->in.forest_trust_info->entries[0]->time, 0, "first entry time");
     2019        torture_assert_str_equal(tctx, r->in.forest_trust_info->entries[0]->forest_trust_data.top_level_name.string, "f1.test", "first entry data");
     2020        torture_assert_int_equal(tctx, r->in.forest_trust_info->entries[1]->flags, 0, "second entry flags");
     2021        torture_assert_int_equal(tctx, r->in.forest_trust_info->entries[1]->type, 2, "second entry type");
     2022        torture_assert_int_equal(tctx, r->in.forest_trust_info->entries[1]->time, 0, "second entry time");
     2023        torture_assert_str_equal(tctx, r->in.forest_trust_info->entries[1]->forest_trust_data.domain_info.dns_domain_name.string, "f1.test", "second entry data");
     2024        torture_assert_str_equal(tctx, r->in.forest_trust_info->entries[1]->forest_trust_data.domain_info.netbios_domain_name.string, "F1", "second entry data");
     2025        torture_assert_int_equal(tctx, r->in.check_only, 1, "check only");
     2026
     2027        torture_assert_ntstatus_ok(tctx, r->out.result, "return code");
     2028
     2029        return true;
     2030}
     2031
     2032static const uint8_t lsasettrusteddomaininfobyname_in_data[] = {
     2033  0x00, 0x00, 0x00, 0x00, 0xe2, 0xbe, 0xb5, 0xfe, 0x4a, 0xe2, 0x25, 0x43,
     2034  0xaf, 0x37, 0x14, 0x77, 0xa5, 0xd6, 0xd9, 0x31, 0x0e, 0x00, 0x10, 0x00,
     2035  0x00, 0x00, 0x02, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     2036  0x07, 0x00, 0x00, 0x00, 0x66, 0x00, 0x31, 0x00, 0x2e, 0x00, 0x74, 0x00,
     2037  0x65, 0x00, 0x73, 0x00, 0x74, 0x00, 0x0a, 0x00, 0x0a, 0x00, 0x00, 0x00,
     2038  0x0e, 0x00, 0x10, 0x00, 0x04, 0x00, 0x02, 0x00, 0x04, 0x00, 0x06, 0x00,
     2039  0x08, 0x00, 0x02, 0x00, 0x0c, 0x00, 0x02, 0x00, 0x03, 0x00, 0x00, 0x00,
     2040  0x02, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     2041  0x44, 0x02, 0x00, 0x00, 0x10, 0x00, 0x02, 0x00, 0x08, 0x00, 0x00, 0x00,
     2042  0x00, 0x00, 0x00, 0x00, 0x07, 0x00, 0x00, 0x00, 0x66, 0x00, 0x31, 0x00,
     2043  0x2e, 0x00, 0x74, 0x00, 0x65, 0x00, 0x73, 0x00, 0x74, 0x00, 0x00, 0x00,
     2044  0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00,
     2045  0x46, 0x00, 0x31, 0x00, 0x04, 0x00, 0x00, 0x00, 0x01, 0x04, 0x00, 0x00,
     2046  0x00, 0x00, 0x00, 0x05, 0x15, 0x00, 0x00, 0x00, 0x60, 0xcc, 0x85, 0x53,
     2047  0x92, 0x64, 0x11, 0x5e, 0x37, 0xa1, 0x11, 0x65, 0x44, 0x02, 0x00, 0x00,
     2048  0x25, 0xf5, 0x9e, 0xfc, 0x2c, 0x36, 0x8e, 0x0d, 0xd8, 0x6b, 0x98, 0x14,
     2049  0xb6, 0x78, 0xcc, 0xca, 0xb2, 0xbd, 0xa0, 0x8d, 0x59, 0xd9, 0x51, 0x90,
     2050  0x14, 0x0e, 0x0c, 0x3f, 0xac, 0xed, 0x67, 0x98, 0xd9, 0x44, 0xe7, 0xec,
     2051  0x72, 0xd7, 0x83, 0xba, 0x12, 0x3e, 0xcb, 0x8a, 0xaa, 0x87, 0xdb, 0xf2,
     2052  0xf8, 0x35, 0x00, 0x9c, 0xc7, 0x76, 0x85, 0x8d, 0x04, 0x08, 0x4c, 0xa3,
     2053  0x05, 0x4b, 0x02, 0x85, 0xcd, 0x1c, 0x83, 0xd4, 0x1e, 0xcc, 0xd8, 0xa3,
     2054  0x32, 0x9e, 0xa5, 0x6f, 0xd8, 0x3d, 0xe2, 0xcd, 0xa1, 0x44, 0xf5, 0x03,
     2055  0x47, 0x79, 0x22, 0xf3, 0xb4, 0x14, 0x3d, 0x6c, 0xe3, 0x98, 0x91, 0x96,
     2056  0x89, 0x78, 0x26, 0xa1, 0x77, 0x78, 0x58, 0xa1, 0xba, 0x84, 0xb7, 0xb3,
     2057  0x7a, 0xad, 0xcf, 0x77, 0x5c, 0x92, 0x97, 0x3a, 0x19, 0x0f, 0xfa, 0x7d,
     2058  0x48, 0xa4, 0x11, 0x33, 0xdd, 0x51, 0xd6, 0x0c, 0x48, 0xd6, 0xd2, 0x59,
     2059  0x83, 0x4d, 0xf6, 0x8b, 0x6b, 0x4d, 0x6a, 0x0e, 0xcc, 0x15, 0xd6, 0x1a,
     2060  0x2f, 0x44, 0x61, 0x45, 0x8f, 0xa8, 0x1b, 0x3f, 0x2d, 0xbd, 0x3a, 0xdb,
     2061  0xe0, 0x74, 0x44, 0x27, 0x02, 0x85, 0x02, 0xb4, 0xf9, 0x7f, 0x81, 0xcb,
     2062  0x28, 0x27, 0x83, 0xfb, 0xa7, 0x92, 0x43, 0x70, 0x73, 0x2b, 0x89, 0xda,
     2063  0x03, 0x83, 0x48, 0x58, 0x04, 0xba, 0x1e, 0xe2, 0x84, 0xf3, 0xa2, 0xfa,
     2064  0x22, 0xe8, 0x5f, 0x41, 0xf3, 0xe6, 0x47, 0x92, 0x06, 0x61, 0x77, 0x31,
     2065  0x00, 0x1b, 0x9f, 0x9b, 0x8f, 0xfd, 0x1d, 0x9e, 0xcb, 0x09, 0xd7, 0xdc,
     2066  0x19, 0x94, 0xf4, 0x18, 0xfa, 0x96, 0x3e, 0xb3, 0xf0, 0x6b, 0x1c, 0x21,
     2067  0xe4, 0x52, 0xb3, 0x48, 0x19, 0x5d, 0x10, 0x8e, 0xf1, 0xb5, 0x8b, 0x72,
     2068  0x69, 0xdb, 0x60, 0x7b, 0x7c, 0xef, 0x5c, 0x16, 0x1b, 0x11, 0xf2, 0x97,
     2069  0x2e, 0xf4, 0xd1, 0xc5, 0x13, 0x52, 0xb4, 0xc7, 0xca, 0xf8, 0xc0, 0x46,
     2070  0x61, 0xdc, 0x9b, 0x8a, 0x5b, 0xcd, 0xf1, 0x1d, 0x7a, 0xc4, 0x0f, 0x02,
     2071  0x0c, 0x22, 0x4f, 0x42, 0x12, 0xbb, 0xa6, 0xe2, 0xbb, 0x92, 0xda, 0xdb,
     2072  0x12, 0xea, 0xe8, 0x61, 0xf2, 0xdd, 0x45, 0x3c, 0x35, 0x2c, 0x89, 0x92,
     2073  0x22, 0x35, 0xb0, 0x24, 0x5b, 0xa7, 0x54, 0x58, 0xe1, 0x8c, 0xf5, 0x36,
     2074  0x4d, 0x04, 0xdf, 0x25, 0x36, 0x48, 0x7b, 0x84, 0xc9, 0xb9, 0xc2, 0x2a,
     2075  0xc5, 0x62, 0x06, 0xcb, 0xa1, 0xf5, 0x26, 0x05, 0xb4, 0x20, 0xcc, 0x8b,
     2076  0xed, 0x2e, 0xa2, 0x4b, 0xa4, 0x85, 0x3e, 0x7f, 0x26, 0x25, 0x39, 0x69,
     2077  0x2f, 0x89, 0x47, 0x7e, 0xde, 0xc7, 0xa4, 0x12, 0x01, 0xc5, 0x98, 0x01,
     2078  0xf5, 0xae, 0x2e, 0x3e, 0xbd, 0xb7, 0x62, 0xaa, 0x57, 0x5d, 0xa0, 0x6f,
     2079  0xac, 0xc5, 0x4e, 0x09, 0xcc, 0x87, 0x8e, 0x76, 0x93, 0xf2, 0xc6, 0x08,
     2080  0x45, 0x88, 0x9f, 0x18, 0x9b, 0xeb, 0xa6, 0x1b, 0xf7, 0x64, 0x47, 0x73,
     2081  0x0c, 0xb2, 0xc7, 0xc5, 0xe5, 0x62, 0x56, 0x7f, 0x0a, 0xe4, 0x79, 0xaf,
     2082  0x7e, 0x71, 0xe6, 0x09, 0x22, 0x3d, 0x22, 0x10, 0x5c, 0x94, 0x71, 0x35,
     2083  0xfd, 0x28, 0x20, 0x79, 0x89, 0x47, 0x5c, 0x37, 0x41, 0xd1, 0xfe, 0xee,
     2084  0x2e, 0xd8, 0x41, 0x8e, 0x1c, 0x4d, 0x77, 0x09, 0x43, 0x6a, 0xee, 0x3c,
     2085  0x80, 0x9b, 0xb7, 0xe7, 0x4c, 0xe8, 0x38, 0xd1, 0x6b, 0xc0, 0x03, 0x4b,
     2086  0xbf, 0x8d, 0x19, 0x06, 0xad, 0x28, 0x22, 0xe7, 0x1a, 0x4e, 0x14, 0xa9,
     2087  0x90, 0xba, 0xc4, 0x13, 0x8c, 0xde, 0x30, 0xfc, 0xe2, 0xb8, 0x97, 0x90,
     2088  0x63, 0x3f, 0x30, 0xfc, 0xf5, 0x0d, 0xd2, 0xc2, 0xbe, 0xd2, 0xe3, 0x7f,
     2089  0x52, 0x4e, 0xc5, 0x91, 0x38, 0xfc, 0xa7, 0x0d, 0xec, 0xa5, 0x4f, 0xd5,
     2090  0x65, 0xb3, 0x51, 0x44, 0x21, 0x2a, 0x2e, 0x87, 0xe6, 0x91, 0x09, 0x8c,
     2091  0xa5, 0x89, 0x13, 0x69, 0x01, 0x28, 0xa8, 0x64, 0x4f, 0x87, 0x0d, 0x12,
     2092  0xe5, 0xeb, 0xce, 0xb9, 0xfa, 0xca, 0x10, 0x69, 0xa6, 0x95, 0x3b, 0x6d,
     2093  0x6e, 0xca, 0x9e, 0x75, 0x25, 0x1c, 0xfa, 0xd6, 0x68, 0x84, 0xe0, 0x1f,
     2094  0x35, 0x7e, 0x6e, 0xe8, 0xb7, 0x0a, 0x32, 0x9f, 0xc3, 0x31, 0x35, 0x84,
     2095  0xa6, 0xc7, 0x5a, 0xa2, 0x0c, 0x8c, 0x07, 0x6a, 0x66, 0xd8, 0x58, 0xb1,
     2096  0x4c, 0xb9, 0xbc, 0x46
     2097};
     2098
     2099static bool lsasettrusteddomaininfobyname_in_check(struct torture_context *tctx,
     2100                                                   struct lsa_SetTrustedDomainInfoByName *r)
     2101{
     2102        /* FIXME: Handle */
     2103        torture_assert_str_equal(tctx, r->in.trusted_domain->string, "f1.test", "trusted domain");
     2104        torture_assert_int_equal(tctx, r->in.level, LSA_TRUSTED_DOMAIN_INFO_FULL_INFO_INTERNAL, "level");
     2105        torture_assert(tctx, r->in.info != NULL, "trust info");
     2106        torture_assert_str_equal(tctx, r->in.info->full_info_internal.info_ex.domain_name.string, "f1.test", "domain name");
     2107        torture_assert_str_equal(tctx, r->in.info->full_info_internal.info_ex.netbios_name.string, "F1", "netbios name");
     2108        torture_assert(tctx, r->in.info->full_info_internal.info_ex.sid != NULL, "domain sid ptr");
     2109        torture_assert_sid_equal(tctx, r->in.info->full_info_internal.info_ex.sid, dom_sid_parse_talloc(tctx, "S-1-5-21-1401277536-1578198162-1695654199"), "domain sid");
     2110        torture_assert_int_equal(tctx, r->in.info->full_info_internal.info_ex.trust_direction, 3, "trust direction");
     2111        torture_assert_int_equal(tctx, r->in.info->full_info_internal.info_ex.trust_type, LSA_TRUST_TYPE_UPLEVEL, "trust type");
     2112        torture_assert_int_equal(tctx, r->in.info->full_info_internal.info_ex.trust_attributes, 8, "trust attributes");
     2113        torture_assert_int_equal(tctx, r->in.info->full_info_internal.posix_offset.posix_offset, 0, "posix offset");
     2114        torture_assert_int_equal(tctx, r->in.info->full_info_internal.auth_info.auth_blob.size, 580, "auth blob size");
     2115
     2116        torture_assert_ntstatus_ok(tctx, r->out.result, "return code");
     2117
     2118        return true;
     2119}
     2120
    19842121struct torture_suite *ndr_lsa_suite(TALLOC_CTX *ctx)
    19852122{
     
    20372174        torture_suite_add_ndr_pull_fn_test(suite, lsa_EnumPrivs, lsarenumerateprivileges_out_data, NDR_OUT, lsarenumerateprivileges_out_check);
    20382175
     2176        torture_suite_add_ndr_pull_fn_test(suite, lsa_lsaRSetForestTrustInformation, lsarsetforesttrustsinformation_in_data, NDR_IN, lsarsetforesttrustsinformation_in_check);
     2177
     2178        torture_suite_add_ndr_pull_fn_test(suite, lsa_SetTrustedDomainInfoByName, lsasettrusteddomaininfobyname_in_data, NDR_IN, lsasettrusteddomaininfobyname_in_check);
     2179
    20392180        return suite;
    20402181}
    2041 
  • trunk/server/source4/torture/ndr/ndr.c

    r414 r745  
    1 /* 
     1/*
    22   Unix SMB/CIFS implementation.
    33   test suite for winreg ndr operations
    44
    55   Copyright (C) Jelmer Vernooij 2007
    6    
     6
    77   This program is free software; you can redistribute it and/or modify
    88   it under the terms of the GNU General Public License as published by
    99   the Free Software Foundation; either version 3 of the License, or
    1010   (at your option) any later version.
    11    
     11
    1212   This program is distributed in the hope that it will be useful,
    1313   but WITHOUT ANY WARRANTY; without even the implied warranty of
    1414   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
    1515   GNU General Public License for more details.
    16    
     16
    1717   You should have received a copy of the GNU General Public License
    1818   along with this program.  If not, see <http://www.gnu.org/licenses/>.
     
    2222#include "torture/ndr/ndr.h"
    2323#include "torture/ndr/proto.h"
    24 #include "torture/torture.h"
    2524#include "../lib/util/dlinklist.h"
    2625#include "param/param.h"
     
    2827struct ndr_pull_test_data {
    2928        DATA_BLOB data;
     29        DATA_BLOB data_context;
    3030        size_t struct_size;
    3131        ndr_pull_flags_fn_t pull_fn;
     
    3434
    3535static bool wrap_ndr_pull_test(struct torture_context *tctx,
    36                                                            struct torture_tcase *tcase,
    37                                                            struct torture_test *test)
     36                               struct torture_tcase *tcase,
     37                               struct torture_test *test)
    3838{
    3939        bool (*check_fn) (struct torture_context *ctx, void *data) = test->fn;
    4040        const struct ndr_pull_test_data *data = (const struct ndr_pull_test_data *)test->data;
    4141        void *ds = talloc_zero_size(tctx, data->struct_size);
    42         struct ndr_pull *ndr = ndr_pull_init_blob(&(data->data), tctx, lp_iconv_convenience(tctx->lp_ctx));
     42        struct ndr_pull *ndr = ndr_pull_init_blob(&(data->data), tctx);
    4343
    4444        ndr->flags |= LIBNDR_FLAG_REF_ALLOC;
     
    4747                                   "pulling");
    4848
    49         torture_assert(tctx, ndr->offset == ndr->data_size, 
    50                                    talloc_asprintf(tctx, 
     49        torture_assert(tctx, ndr->offset == ndr->data_size,
     50                                   talloc_asprintf(tctx,
    5151                                           "%d unread bytes", ndr->data_size - ndr->offset));
    5252
    53         if (check_fn != NULL) 
     53        if (check_fn != NULL)
    5454                return check_fn(tctx, ds);
    5555        else
     
    5858
    5959_PUBLIC_ struct torture_test *_torture_suite_add_ndr_pull_test(
    60                                         struct torture_suite *suite, 
     60                                        struct torture_suite *suite,
    6161                                        const char *name, ndr_pull_flags_fn_t pull_fn,
    62                                         DATA_BLOB db, 
     62                                        DATA_BLOB db,
    6363                                        size_t struct_size,
    6464                                        int ndr_flags,
    6565                                        bool (*check_fn) (struct torture_context *ctx, void *data))
    6666{
    67         struct torture_test *test; 
     67        struct torture_test *test;
    6868        struct torture_tcase *tcase;
    6969        struct ndr_pull_test_data *data;
    70        
     70
    7171        tcase = torture_suite_add_tcase(suite, name);
    7272
     
    9090}
    9191
     92static bool wrap_ndr_inout_pull_test(struct torture_context *tctx,
     93                                     struct torture_tcase *tcase,
     94                                     struct torture_test *test)
     95{
     96        bool (*check_fn) (struct torture_context *ctx, void *data) = test->fn;
     97        const struct ndr_pull_test_data *data = (const struct ndr_pull_test_data *)test->data;
     98        void *ds = talloc_zero_size(tctx, data->struct_size);
     99        struct ndr_pull *ndr;
     100
     101        /* handle NDR_IN context */
     102
     103        ndr = ndr_pull_init_blob(&(data->data_context), tctx);
     104        torture_assert(tctx, ndr, "ndr init failed");
     105
     106        ndr->flags |= LIBNDR_FLAG_REF_ALLOC;
     107
     108        torture_assert_ndr_success(tctx,
     109                data->pull_fn(ndr, NDR_IN, ds),
     110                "ndr pull of context failed");
     111
     112        torture_assert(tctx, ndr->offset == ndr->data_size,
     113                talloc_asprintf(tctx, "%d unread bytes", ndr->data_size - ndr->offset));
     114
     115        talloc_free(ndr);
     116
     117        /* handle NDR_OUT */
     118
     119        ndr = ndr_pull_init_blob(&(data->data), tctx);
     120        torture_assert(tctx, ndr, "ndr init failed");
     121
     122        ndr->flags |= LIBNDR_FLAG_REF_ALLOC;
     123
     124        torture_assert_ndr_success(tctx,
     125                data->pull_fn(ndr, NDR_OUT, ds),
     126                "ndr pull failed");
     127
     128        torture_assert(tctx, ndr->offset == ndr->data_size,
     129                talloc_asprintf(tctx, "%d unread bytes", ndr->data_size - ndr->offset));
     130
     131        talloc_free(ndr);
     132
     133        if (check_fn) {
     134                return check_fn(tctx, ds);
     135        } else {
     136                return true;
     137        }
     138}
     139
     140_PUBLIC_ struct torture_test *_torture_suite_add_ndr_pull_inout_test(
     141                                        struct torture_suite *suite,
     142                                        const char *name, ndr_pull_flags_fn_t pull_fn,
     143                                        DATA_BLOB db_in,
     144                                        DATA_BLOB db_out,
     145                                        size_t struct_size,
     146                                        bool (*check_fn) (struct torture_context *ctx, void *data))
     147{
     148        struct torture_test *test;
     149        struct torture_tcase *tcase;
     150        struct ndr_pull_test_data *data;
     151
     152        tcase = torture_suite_add_tcase(suite, name);
     153
     154        test = talloc(tcase, struct torture_test);
     155
     156        test->name = talloc_strdup(test, name);
     157        test->description = NULL;
     158        test->run = wrap_ndr_inout_pull_test;
     159        data = talloc(test, struct ndr_pull_test_data);
     160        data->data = db_out;
     161        data->data_context = db_in;
     162        data->ndr_flags = 0;
     163        data->struct_size = struct_size;
     164        data->pull_fn = pull_fn;
     165        test->data = data;
     166        test->fn = check_fn;
     167        test->dangerous = false;
     168
     169        DLIST_ADD_END(tcase->tests, test, struct torture_test *);
     170
     171        return test;
     172}
     173
    92174static bool test_check_string_terminator(struct torture_context *tctx)
    93175{
     
    98180        /* Simple test */
    99181        blob = strhex_to_data_blob(tctx, "0000");
    100        
    101         ndr = ndr_pull_init_blob(&blob, mem_ctx, lp_iconv_convenience(tctx->lp_ctx));
     182
     183        ndr = ndr_pull_init_blob(&blob, mem_ctx);
    102184
    103185        torture_assert_ndr_success(tctx, ndr_check_string_terminator(ndr, 1, 2),
     
    111193        }
    112194
    113         torture_assert(tctx, ndr->offset == 0, 
     195        torture_assert(tctx, ndr->offset == 0,
    114196                "check_string_terminator did not reset offset");
    115197
     
    117199
    118200        blob = strhex_to_data_blob(tctx, "11220000");
    119         ndr = ndr_pull_init_blob(&blob, mem_ctx, lp_iconv_convenience(tctx->lp_ctx));
     201        ndr = ndr_pull_init_blob(&blob, mem_ctx);
    120202
    121203        torture_assert_ndr_success(tctx,
     
    145227{
    146228        struct GUID guid;
    147         torture_assert_ntstatus_equal(tctx, NT_STATUS_INVALID_PARAMETER, 
    148                                                                   GUID_from_string(NULL, &guid),
    149                                                                   "NULL failed");
     229        torture_assert_ntstatus_equal(tctx, NT_STATUS_INVALID_PARAMETER,
     230                                      GUID_from_string(NULL, &guid),
     231                                      "NULL failed");
    150232        return true;
    151233}
     
    154236{
    155237        struct GUID g1;
    156         torture_assert_ntstatus_equal(tctx, NT_STATUS_INVALID_PARAMETER, 
    157                                                                   GUID_from_string("bla", &g1),
    158                                                                   "parameter not invalid");
    159         return true;
    160 }       
     238        torture_assert_ntstatus_equal(tctx, NT_STATUS_INVALID_PARAMETER,
     239                                      GUID_from_string("bla", &g1),
     240                                      "parameter not invalid");
     241        return true;
     242}
    161243
    162244static bool test_guid_from_string(struct torture_context *tctx)
     
    164246        struct GUID g1, exp;
    165247        torture_assert_ntstatus_ok(tctx,
    166                                                            GUID_from_string("00000001-0002-0003-0405-060708090a0b", &g1),
    167                                                            "invalid return code");
     248                                   GUID_from_string("00000001-0002-0003-0405-060708090a0b", &g1),
     249                                   "invalid return code");
    168250        exp.time_low = 1;
    169251        exp.time_mid = 2;
     
    179261        torture_assert(tctx, GUID_equal(&g1, &exp), "UUID parsed incorrectly");
    180262        torture_assert_ntstatus_ok(tctx,
    181                                                            GUID_from_string("{00000001-0002-0003-0405-060708090a0b}", &g1),
    182                                                            "invalid return code");
     263                                   GUID_from_string("{00000001-0002-0003-0405-060708090a0b}", &g1),
     264                                   "invalid return code");
    183265        torture_assert(tctx, GUID_equal(&g1, &exp), "UUID parsed incorrectly");
    184266
     
    200282        g.node[4] = 10;
    201283        g.node[5] = 11;
    202         torture_assert_str_equal(tctx, "00000001-0002-0003-0405-060708090a0b", GUID_string(tctx, &g),
    203                                                          "parsing guid failed");
     284        torture_assert_str_equal(tctx, "00000001-0002-0003-0405-060708090a0b",
     285                                 GUID_string(tctx, &g),
     286                                 "parsing guid failed");
    204287        return true;
    205288}
     
    219302        g.node[4] = 10;
    220303        g.node[5] = 11;
    221         torture_assert_str_equal(tctx, "{00000001-0002-0003-0405-060708090a0b}", GUID_string2(tctx, &g),
    222                                                          "parsing guid failed");
     304        torture_assert_str_equal(tctx, "{00000001-0002-0003-0405-060708090a0b}",
     305                                 GUID_string2(tctx, &g),
     306                                 "parsing guid failed");
    223307        return true;
    224308}
     
    228312        struct GUID g1, g2;
    229313        ZERO_STRUCT(g1); ZERO_STRUCT(g2);
    230         torture_assert_int_equal(tctx, 0, GUID_compare(&g1, &g2), 
    231                                                         "GUIDs not equal");
     314        torture_assert_int_equal(tctx, 0, GUID_compare(&g1, &g2),
     315                                "GUIDs not equal");
    232316        g1.time_low = 1;
    233         torture_assert_int_equal(tctx, 1, GUID_compare(&g1, &g2), 
    234                                                         "GUID diff invalid");
     317        torture_assert_int_equal(tctx, 1, GUID_compare(&g1, &g2),
     318                                "GUID diff invalid");
    235319
    236320        g1.time_low = 10;
    237         torture_assert_int_equal(tctx, 10, GUID_compare(&g1, &g2),
    238                                                         "GUID diff invalid");
     321        torture_assert_int_equal(tctx, 1, GUID_compare(&g1, &g2),
     322                                "GUID diff invalid");
    239323
    240324        g1.time_low = 0;
    241325        g1.clock_seq[1] = 20;
    242         torture_assert_int_equal(tctx, 20, GUID_compare(&g1, &g2),
    243                                                          "GUID diff invalid");
     326        torture_assert_int_equal(tctx, 1, GUID_compare(&g1, &g2),
     327                                 "GUID diff invalid");
     328
     329        g1.time_low = ~0;
     330        torture_assert_int_equal(tctx, 1, GUID_compare(&g1, &g2),
     331                                 "GUID diff invalid");
     332
     333        g1.time_low = 0;
     334        g2.time_low = ~0;
     335        torture_assert_int_equal(tctx, -1, GUID_compare(&g1, &g2),
     336                                 "GUID diff invalid");
    244337        return true;
    245338}
     
    247340struct torture_suite *torture_local_ndr(TALLOC_CTX *mem_ctx)
    248341{
    249         struct torture_suite *suite = torture_suite_create(mem_ctx, "NDR");
     342        struct torture_suite *suite = torture_suite_create(mem_ctx, "ndr");
    250343
    251344        torture_suite_add_suite(suite, ndr_winreg_suite(suite));
     
    254347        torture_suite_add_suite(suite, ndr_epmap_suite(suite));
    255348        torture_suite_add_suite(suite, ndr_dfs_suite(suite));
     349        torture_suite_add_suite(suite, ndr_dfsblob_suite(suite));
    256350        torture_suite_add_suite(suite, ndr_netlogon_suite(suite));
    257351        torture_suite_add_suite(suite, ndr_drsuapi_suite(suite));
    258352        torture_suite_add_suite(suite, ndr_spoolss_suite(suite));
    259353        torture_suite_add_suite(suite, ndr_samr_suite(suite));
    260 
    261         torture_suite_add_simple_test(suite, "string terminator",
    262                                                                    test_check_string_terminator);
    263 
    264         torture_suite_add_simple_test(suite, "guid_from_string_null",
    265                                                                    test_guid_from_string_null);
    266 
    267         torture_suite_add_simple_test(suite, "guid_from_string",
    268                                                                    test_guid_from_string);
    269 
    270         torture_suite_add_simple_test(suite, "guid_from_string_invalid",
    271                                                                    test_guid_from_string_invalid);
    272 
    273         torture_suite_add_simple_test(suite, "guid_string_valid",
    274                                                                    test_guid_string_valid);
    275 
    276         torture_suite_add_simple_test(suite, "guid_string2_valid",
    277                                                                    test_guid_string2_valid);
    278 
    279         torture_suite_add_simple_test(suite, "guid_from_string_valid",
    280                                                                    test_guid_from_string_valid);
    281 
    282         torture_suite_add_simple_test(suite, "compare_uuid",
    283                                                                    test_compare_uuid);
     354        torture_suite_add_suite(suite, ndr_drsblobs_suite(suite));
     355        torture_suite_add_suite(suite, ndr_nbt_suite(suite));
     356        torture_suite_add_suite(suite, ndr_ntlmssp_suite(suite));
     357        torture_suite_add_suite(suite, ndr_backupkey_suite(suite));
     358
     359        torture_suite_add_simple_test(suite, "string terminator",
     360                                      test_check_string_terminator);
     361
     362        torture_suite_add_simple_test(suite, "guid_from_string_null",
     363                                      test_guid_from_string_null);
     364
     365        torture_suite_add_simple_test(suite, "guid_from_string",
     366                                      test_guid_from_string);
     367
     368        torture_suite_add_simple_test(suite, "guid_from_string_invalid",
     369                                      test_guid_from_string_invalid);
     370
     371        torture_suite_add_simple_test(suite, "guid_string_valid",
     372                                      test_guid_string_valid);
     373
     374        torture_suite_add_simple_test(suite, "guid_string2_valid",
     375                                      test_guid_string2_valid);
     376
     377        torture_suite_add_simple_test(suite, "guid_from_string_valid",
     378                                      test_guid_from_string_valid);
     379
     380        torture_suite_add_simple_test(suite, "compare_uuid",
     381                                      test_compare_uuid);
    284382
    285383        return suite;
  • trunk/server/source4/torture/ndr/ndr.h

    r414 r745  
    1 /* 
     1/*
    22   Unix SMB/CIFS implementation.
    33   SMB torture tester
    44   Copyright (C) Jelmer Vernooij 2007
    5    
     5
    66   This program is free software; you can redistribute it and/or modify
    77   it under the terms of the GNU General Public License as published by
    88   the Free Software Foundation; either version 3 of the License, or
    99   (at your option) any later version.
    10    
     10
    1111   This program is distributed in the hope that it will be useful,
    1212   but WITHOUT ANY WARRANTY; without even the implied warranty of
    1313   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
    1414   GNU General Public License for more details.
    15    
     15
    1616   You should have received a copy of the GNU General Public License
    1717   along with this program.  If not, see <http://www.gnu.org/licenses/>.
     
    2323#include "torture/torture.h"
    2424#include "librpc/ndr/libndr.h"
     25#include "libcli/security/security.h"
    2526
    2627_PUBLIC_ struct torture_test *_torture_suite_add_ndr_pull_test(
    27                                         struct torture_suite *suite, 
     28                                        struct torture_suite *suite,
    2829                                        const char *name, ndr_pull_flags_fn_t fn,
    29                                         DATA_BLOB db, 
     30                                        DATA_BLOB db,
    3031                                        size_t struct_size,
    3132                                        int ndr_flags,
    3233                                        bool (*check_fn) (struct torture_context *, void *data));
     34
     35_PUBLIC_ struct torture_test *_torture_suite_add_ndr_pull_inout_test(
     36                                        struct torture_suite *suite,
     37                                        const char *name, ndr_pull_flags_fn_t pull_fn,
     38                                        DATA_BLOB db_in,
     39                                        DATA_BLOB db_out,
     40                                        size_t struct_size,
     41                                        bool (*check_fn) (struct torture_context *ctx, void *data));
    3342
    3443#define torture_suite_add_ndr_pull_test(suite,name,data,check_fn) \
     
    4251                         sizeof(struct name), flags, (bool (*) (struct torture_context *, void *)) check_fn);
    4352
     53#define torture_suite_add_ndr_pull_io_test(suite,name,data_in,data_out,check_fn_out) \
     54                _torture_suite_add_ndr_pull_inout_test(suite, #name "_INOUT", \
     55                         (ndr_pull_flags_fn_t)ndr_pull_ ## name, \
     56                         data_blob_talloc(suite, data_in, sizeof(data_in)), \
     57                         data_blob_talloc(suite, data_out, sizeof(data_out)), \
     58                         sizeof(struct name), \
     59                         (bool (*) (struct torture_context *, void *)) check_fn_out);
     60
     61#define torture_assert_sid_equal(torture_ctx,got,expected,cmt)\
     62        do { struct dom_sid *__got = (got), *__expected = (expected); \
     63        if (!dom_sid_equal(__got, __expected)) { \
     64                torture_result(torture_ctx, TORTURE_FAIL, \
     65                                           __location__": "#got" was %s, expected %s: %s", \
     66                                           dom_sid_string(torture_ctx, __got), dom_sid_string(torture_ctx, __expected), cmt); \
     67                return false; \
     68        } \
     69        } while(0)
     70
    4471#endif /* __TORTURE_NDR_H__ */
  • trunk/server/source4/torture/ndr/netlogon.c

    r414 r745  
    44
    55   Copyright (C) Jelmer Vernooij 2007
     6   Copyright (C) Guenther Deschner 2011
    67   
    78   This program is free software; you can redistribute it and/or modify
     
    105106}
    106107
     108static const uint8_t netrlogonsamlogon_w2k_in_data[] = {
     109        0x00, 0x00, 0x02, 0x00, 0x09, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     110        0x09, 0x00, 0x00, 0x00, 0x5c, 0x00, 0x5c, 0x00, 0x57, 0x00, 0x32, 0x00,
     111        0x4b, 0x00, 0x53, 0x00, 0x52, 0x00, 0x56, 0x00, 0x00, 0x00, 0x00, 0x00,
     112        0x04, 0x00, 0x02, 0x00, 0x09, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     113        0x09, 0x00, 0x00, 0x00, 0x4d, 0x00, 0x54, 0x00, 0x48, 0x00, 0x45, 0x00,
     114        0x4c, 0x00, 0x45, 0x00, 0x4e, 0x00, 0x41, 0x00, 0x00, 0x00, 0x00, 0x00,
     115        0x08, 0x00, 0x02, 0x00, 0x08, 0xaf, 0x72, 0x50, 0xa0, 0x5b, 0x50, 0x19,
     116        0x02, 0xc3, 0x39, 0x4d, 0x0c, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
     117        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x01, 0x00,
     118        0x10, 0x00, 0x02, 0x00, 0x0c, 0x00, 0x0c, 0x00, 0x14, 0x00, 0x02, 0x00,
     119        0x00, 0x00, 0x00, 0x00, 0xad, 0xde, 0x00, 0x00, 0xef, 0xbe, 0x00, 0x00,
     120        0x1a, 0x00, 0x1a, 0x00, 0x18, 0x00, 0x02, 0x00, 0x14, 0x00, 0x14, 0x00,
     121        0x1c, 0x00, 0x02, 0x00, 0x31, 0xeb, 0xf4, 0x68, 0x62, 0x93, 0xfe, 0x38,
     122        0x51, 0xc1, 0x1d, 0x41, 0x0a, 0xbd, 0x5d, 0xdf, 0xe3, 0x4f, 0x76, 0x7f,
     123        0x19, 0x12, 0xcd, 0xfe, 0x9c, 0x68, 0xed, 0x9b, 0x1e, 0x9c, 0x66, 0xf6,
     124        0x06, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00,
     125        0x57, 0x00, 0x32, 0x00, 0x4b, 0x00, 0x44, 0x00, 0x4f, 0x00, 0x4d, 0x00,
     126        0x0d, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0d, 0x00, 0x00, 0x00,
     127        0x61, 0x00, 0x64, 0x00, 0x6d, 0x00, 0x69, 0x00, 0x6e, 0x00, 0x69, 0x00,
     128        0x73, 0x00, 0x74, 0x00, 0x72, 0x00, 0x61, 0x00, 0x74, 0x00, 0x6f, 0x00,
     129        0x72, 0x00, 0x00, 0x00, 0x0a, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     130        0x0a, 0x00, 0x00, 0x00, 0x5c, 0x00, 0x5c, 0x00, 0x6d, 0x00, 0x74, 0x00,
     131        0x68, 0x00, 0x65, 0x00, 0x6c, 0x00, 0x65, 0x00, 0x6e, 0x00, 0x61, 0x00,
     132        0x06, 0x00
     133};
     134
     135static bool netrlogonsamlogon_w2k_in_check(struct torture_context *tctx,
     136                                           struct netr_LogonSamLogon *r)
     137{
     138        uint8_t credential_expected[8] = { 0x08, 0xaf, 0x72, 0x50, 0xa0, 0x5b, 0x50, 0x19 };
     139        uint8_t return_authenticator_expected[8] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 };
     140        uint8_t lmpassword_expected[16] = { 0x31, 0xeb, 0xf4, 0x68, 0x62, 0x93, 0xfe, 0x38, 0x51, 0xc1, 0x1d, 0x41, 0x0a, 0xbd, 0x5d, 0xdf };
     141        uint8_t ntpassword_expected[16] = { 0xe3, 0x4f, 0x76, 0x7f, 0x19, 0x12, 0xcd, 0xfe, 0x9c, 0x68, 0xed, 0x9b, 0x1e, 0x9c, 0x66, 0xf6 };
     142
     143        torture_assert_str_equal(tctx, r->in.server_name, "\\\\W2KSRV", "server_name");
     144        torture_assert_str_equal(tctx, r->in.computer_name, "MTHELENA", "computer_name");
     145        torture_assert_mem_equal(tctx, r->in.credential->cred.data, credential_expected, 8, "credential");
     146/*      torture_assert_int_equal(tctx, r->in.credential->timestamp, 0, "credential.timestamp"); */
     147        torture_assert_mem_equal(tctx, r->in.return_authenticator->cred.data, return_authenticator_expected, 8, "return_authenticator.cred.data");
     148        torture_assert_int_equal(tctx, r->in.return_authenticator->timestamp, 0, "return_authenticator.timestamp");
     149        torture_assert_int_equal(tctx, r->in.logon_level, NetlogonInteractiveInformation, "logon_level");
     150        torture_assert(tctx, r->in.logon, "logon NULL pointer");
     151        torture_assert(tctx, r->in.logon->password, "logon->password NULL pointer");
     152        torture_assert_int_equal(tctx, r->in.logon->password->identity_info.domain_name.length, 12, "domain_name.length");
     153        torture_assert_int_equal(tctx, r->in.logon->password->identity_info.domain_name.size, 12, "domain_name.size");
     154        torture_assert_str_equal(tctx, r->in.logon->password->identity_info.domain_name.string, "W2KDOM", "domain_name.string");
     155        torture_assert_int_equal(tctx, r->in.logon->password->identity_info.parameter_control, 0, "parameter_control");
     156        torture_assert_int_equal(tctx, r->in.logon->password->identity_info.logon_id_low, 0xdead, "logon_id_low");
     157        torture_assert_int_equal(tctx, r->in.logon->password->identity_info.logon_id_high, 0xbeef, "logon_id_high");
     158        torture_assert_int_equal(tctx, r->in.logon->password->identity_info.account_name.length, 26, "account_name.length");
     159        torture_assert_int_equal(tctx, r->in.logon->password->identity_info.account_name.size, 26, "account_name.size");
     160        torture_assert_str_equal(tctx, r->in.logon->password->identity_info.account_name.string, "administrator", "account_name.string");
     161        torture_assert_int_equal(tctx, r->in.logon->password->identity_info.workstation.length, 20, "workstation.length");
     162        torture_assert_int_equal(tctx, r->in.logon->password->identity_info.workstation.size, 20, "workstation.size");
     163        torture_assert_str_equal(tctx, r->in.logon->password->identity_info.workstation.string, "\\\\mthelena", "workstation.string");
     164        torture_assert_mem_equal(tctx, r->in.logon->password->lmpassword.hash, lmpassword_expected, 16, "lmpassword");
     165        torture_assert_mem_equal(tctx, r->in.logon->password->ntpassword.hash, ntpassword_expected, 16, "ntpassword");
     166        torture_assert_int_equal(tctx, r->in.validation_level, 6, "validation_level");
     167
     168        return true;
     169}
     170
     171static const uint8_t netrlogonsamlogon_w2k_out_data[] = {
     172        0x6c, 0xdb, 0x14, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     173        0x00, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
     174        0x03, 0x00, 0x00, 0xc0
     175};
     176
     177static bool netrlogonsamlogon_w2k_out_check(struct torture_context *tctx,
     178                                            struct netr_LogonSamLogon *r)
     179{
     180        uint8_t return_authenticator_expected[8] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 };
     181
     182        torture_assert_mem_equal(tctx, r->out.return_authenticator->cred.data, return_authenticator_expected, 8, "return_authenticator.cred.data");
     183        torture_assert_int_equal(tctx, r->out.return_authenticator->timestamp, 0, "return_authenticator.timestamp");
     184        torture_assert(tctx, r->out.validation, "validation NULL pointer");
     185        torture_assert(tctx, (r->out.validation->sam6 == NULL), "sam6 not NULL");
     186        torture_assert_int_equal(tctx, *r->out.authoritative, 1, "authoritative");
     187        torture_assert_ntstatus_equal(tctx, r->out.result, NT_STATUS_INVALID_INFO_CLASS, "unexpected result");
     188
     189        return true;
     190}
    107191
    108192struct torture_suite *ndr_netlogon_suite(TALLOC_CTX *ctx)
     
    116200        torture_suite_add_ndr_pull_fn_test(suite, netr_ServerAuthenticate3, netrserverauthenticate3_out_data, NDR_OUT, netrserverauthenticate3_out_check );
    117201
     202        torture_suite_add_ndr_pull_fn_test(suite, netr_LogonSamLogon, netrlogonsamlogon_w2k_in_data, NDR_IN, netrlogonsamlogon_w2k_in_check );
     203#if 0
     204        /* samba currently fails to parse a validation level 6 samlogon reply
     205         * from w2k and other servers - gd */
     206        torture_suite_add_ndr_pull_io_test(suite, netr_LogonSamLogon, netrlogonsamlogon_w2k_in_data, netrlogonsamlogon_w2k_out_data, netrlogonsamlogon_w2k_out_check);
     207#endif
     208
    118209        return suite;
    119210}
    120 
  • trunk/server/source4/torture/ndr/samr.c

    r414 r745  
    44
    55   Copyright (C) Jelmer Vernooij 2007
     6   Copyright (C) Guenther Deschner 2011
    67   
    78   This program is free software; you can redistribute it and/or modify
     
    174175};
    175176
     177static const uint8_t samr_changepassworduser3_w2k_in_data[] = {
     178        0x00, 0x00, 0x02, 0x00, 0x10, 0x00, 0x10, 0x00, 0x04, 0x00, 0x02, 0x00,
     179        0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00,
     180        0x5c, 0x00, 0x5c, 0x00, 0x57, 0x00, 0x32, 0x00, 0x4b, 0x00, 0x53, 0x00,
     181        0x52, 0x00, 0x56, 0x00, 0x04, 0x00, 0x04, 0x00, 0x08, 0x00, 0x02, 0x00,
     182        0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00,
     183        0x67, 0x00, 0x64, 0x00, 0x0c, 0x00, 0x02, 0x00, 0x8a, 0x5d, 0x1b, 0x5c,
     184        0xf4, 0xf8, 0xb6, 0x79, 0xe0, 0xbf, 0x34, 0x0a, 0x9b, 0x73, 0xdb, 0x34,
     185        0x6e, 0xbe, 0xe1, 0x1f, 0x75, 0x33, 0xff, 0x3c, 0xa1, 0xca, 0xc0, 0xa8,
     186        0xfa, 0x78, 0xbe, 0x93, 0x9d, 0xb7, 0x9e, 0x15, 0xad, 0x6e, 0x27, 0xb3,
     187        0x01, 0xdb, 0x6c, 0xb8, 0x5a, 0x2b, 0x73, 0xb9, 0x5a, 0x25, 0xd1, 0xf7,
     188        0x33, 0xe8, 0x7e, 0x97, 0x7e, 0xb4, 0x90, 0x89, 0x85, 0xc8, 0x20, 0x8d,
     189        0x25, 0x02, 0x68, 0xb9, 0xe4, 0x09, 0xd1, 0xd5, 0x50, 0x6e, 0x83, 0x0a,
     190        0x21, 0x45, 0x33, 0xb2, 0xe8, 0x3b, 0xb6, 0x5a, 0x8e, 0x3c, 0x36, 0x51,
     191        0xe9, 0xb5, 0x22, 0xfe, 0xeb, 0x19, 0x44, 0xa1, 0x01, 0xa9, 0x0c, 0x2c,
     192        0x5a, 0xd1, 0xfe, 0x69, 0x10, 0x86, 0xae, 0x78, 0x01, 0xaa, 0x5d, 0xbb,
     193        0x16, 0x02, 0x2b, 0xa5, 0x26, 0xcc, 0x7c, 0x9d, 0xc0, 0x6c, 0x9c, 0x24,
     194        0x5b, 0x8b, 0x34, 0xc3, 0xbc, 0x40, 0x5e, 0x3d, 0x7c, 0x2a, 0x55, 0x36,
     195        0xfd, 0x34, 0x08, 0x08, 0x05, 0xca, 0xd2, 0xd1, 0x0e, 0xe4, 0x8f, 0xea,
     196        0xfe, 0x3f, 0x7d, 0x56, 0x3c, 0x9a, 0x59, 0x68, 0x83, 0x89, 0x21, 0x3e,
     197        0x7d, 0x33, 0xfd, 0x73, 0x70, 0xa6, 0xec, 0x36, 0xe8, 0x9d, 0x62, 0x40,
     198        0x0e, 0x97, 0x3d, 0xb0, 0xc9, 0x9d, 0x11, 0xb1, 0x55, 0x51, 0xd0, 0x1d,
     199        0x72, 0xdb, 0xf1, 0x18, 0x0a, 0x39, 0x94, 0x0f, 0xf8, 0x9a, 0xba, 0x79,
     200        0x75, 0x37, 0x83, 0x8d, 0x1a, 0x8e, 0x8b, 0x38, 0x0a, 0x44, 0xf1, 0x46,
     201        0x60, 0xef, 0x8b, 0xd8, 0x83, 0xb7, 0x10, 0x91, 0x2a, 0x42, 0x09, 0x0f,
     202        0x6a, 0x43, 0xa9, 0xca, 0x44, 0x5d, 0x7f, 0x3b, 0x96, 0xde, 0xa9, 0xd3,
     203        0x69, 0x3f, 0x0e, 0x27, 0x52, 0x32, 0x54, 0xcf, 0x4c, 0xcb, 0xf1, 0x84,
     204        0xab, 0x13, 0x5e, 0x56, 0x18, 0x96, 0xce, 0x67, 0x4f, 0x73, 0xf8, 0xb2,
     205        0xde, 0x82, 0xa6, 0x0c, 0x15, 0x72, 0x73, 0x1a, 0x00, 0x9a, 0x54, 0x85,
     206        0x4d, 0x83, 0x6d, 0x78, 0x13, 0xc5, 0x7c, 0x86, 0xa9, 0x4b, 0x34, 0x54,
     207        0xbc, 0x40, 0x13, 0x9d, 0x99, 0x0d, 0xa4, 0xc8, 0xeb, 0x6e, 0xef, 0x3f,
     208        0x94, 0x6f, 0xc4, 0x4d, 0x2d, 0x13, 0x9f, 0xd6, 0x29, 0xc6, 0x55, 0xc1,
     209        0x73, 0x86, 0xe7, 0x77, 0xe2, 0x85, 0xb4, 0x03, 0xaf, 0xe2, 0x7a, 0x9c,
     210        0x62, 0x8e, 0xc7, 0xcb, 0xa5, 0x0c, 0x1f, 0xd5, 0xa2, 0x6b, 0x59, 0xb5,
     211        0xe7, 0xde, 0xf9, 0x1c, 0xa0, 0x96, 0x48, 0xcd, 0x20, 0x52, 0x23, 0x23,
     212        0xfb, 0x88, 0x91, 0xda, 0x64, 0x41, 0x24, 0xd4, 0x30, 0x1e, 0x92, 0x69,
     213        0x4e, 0xad, 0xb9, 0x41, 0x0f, 0x7f, 0x00, 0xdc, 0xdd, 0x17, 0xe8, 0x56,
     214        0xfc, 0xbd, 0x2f, 0x57, 0x46, 0x41, 0x5a, 0xab, 0xe8, 0xbc, 0x81, 0xc1,
     215        0xdf, 0x2b, 0x5b, 0xd0, 0xb8, 0x2b, 0x54, 0xaf, 0x8c, 0xd1, 0x1a, 0x91,
     216        0x93, 0x61, 0x21, 0xd7, 0x65, 0xc4, 0x3a, 0x8b, 0xf5, 0xb5, 0x4e, 0x9b,
     217        0xf9, 0xe5, 0x77, 0x59, 0x25, 0x60, 0xd0, 0xe4, 0x73, 0x58, 0x1b, 0x03,
     218        0x9c, 0xf4, 0x80, 0x82, 0xd1, 0xa2, 0x27, 0xe9, 0x60, 0x87, 0xfd, 0x7d,
     219        0x8f, 0x25, 0x6d, 0x66, 0x8c, 0xb3, 0x7e, 0x92, 0x6a, 0xae, 0x10, 0x10,
     220        0x29, 0xcc, 0x7a, 0xeb, 0x07, 0x6e, 0x82, 0x01, 0xd0, 0xee, 0xa0, 0xb3,
     221        0x2f, 0xf0, 0x9d, 0x4c, 0x82, 0x1d, 0x3e, 0x07, 0xf1, 0xbe, 0x64, 0x01,
     222        0x6a, 0xf8, 0x28, 0xb4, 0x08, 0x51, 0xf0, 0x01, 0x1b, 0x1b, 0x58, 0x5e,
     223        0x4b, 0x8c, 0x02, 0x92, 0xcb, 0x80, 0x26, 0x9d, 0x60, 0x33, 0xee, 0x6a,
     224        0x17, 0x39, 0x46, 0x3d, 0x10, 0x04, 0x6d, 0x60, 0x91, 0xdd, 0xb7, 0x6c,
     225        0xd5, 0x28, 0x36, 0x75, 0x32, 0xf8, 0xd7, 0xc3, 0xe7, 0x90, 0x82, 0xdc,
     226        0x2a, 0xe8, 0x72, 0x05, 0x95, 0x96, 0x07, 0x40, 0x10, 0x00, 0x02, 0x00,
     227        0xa7, 0x0f, 0x62, 0x18, 0xfb, 0xca, 0x87, 0x81, 0x92, 0x4a, 0x42, 0xa1,
     228        0x04, 0x9b, 0xf8, 0x65, 0x01, 0x00, 0x00, 0x00, 0x14, 0x00, 0x02, 0x00,
     229        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     230        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     231        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     232        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     233        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     234        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     235        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     236        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     237        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     238        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     239        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     240        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     241        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     242        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     243        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     244        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     245        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     246        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     247        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     248        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     249        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     250        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     251        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     252        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     253        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     254        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     255        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     256        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     257        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     258        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     259        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     260        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     261        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     262        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     263        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     264        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     265        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     266        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     267        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     268        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     269        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     270        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     271        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     272        0x18, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     273        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
     274};
     275
     276static const uint8_t samr_changepassworduser3_w2k_out_data[] = {
     277        0xbb, 0x00, 0x00, 0xc0
     278};
     279
    176280struct torture_suite *ndr_samr_suite(TALLOC_CTX *ctx)
    177281{
     
    191295
    192296        torture_suite_add_ndr_pull_fn_test(suite, samr_QueryUserInfo, samr_queryuserinfo_in_data, NDR_IN, NULL);
    193         /* torture_suite_add_ndr_pull_fn_test(suite, samr_QueryUserInfo, samr_queryuserinfo_out_data, NDR_OUT, NULL); */
     297        torture_suite_add_ndr_pull_io_test(suite, samr_QueryUserInfo, samr_queryuserinfo_in_data, samr_queryuserinfo_out_data, NULL);
    194298
    195299        torture_suite_add_ndr_pull_fn_test(suite, samr_SetUserInfo, samr_setuserinfo_in_data, NDR_IN, NULL);
     
    205309        torture_suite_add_ndr_pull_fn_test(suite, samr_Close, samr_closehandle_out_data, NDR_OUT, NULL);
    206310
    207 
    208 
     311        torture_suite_add_ndr_pull_fn_test(suite, samr_ChangePasswordUser3, samr_changepassworduser3_w2k_in_data, NDR_IN, NULL);
     312#if 0
     313        /* Samba currently fails to parse a w2k reply */
     314        torture_suite_add_ndr_pull_fn_test(suite, samr_ChangePasswordUser3, samr_changepassworduser3_w2k_out_data, NDR_OUT, NULL);
     315#endif
    209316        return suite;
    210317}
  • trunk/server/source4/torture/ndr/spoolss.c

    r414 r745  
    218218  0x00, 0x00, 0x00, 0x00, 0xe0, 0x06, 0x00, 0x00, 0x14, 0x00, 0x00, 0x00,
    219219  0xea, 0x00, 0x00, 0x00
     220};
     221
     222static const uint8_t enumprinterdataex_w2k8r2_in_data[] = {
     223        0x00, 0x00, 0x00, 0x00, 0x62, 0x2a, 0xa4, 0x60, 0x12, 0x99, 0xea, 0x4f,
     224        0x88, 0xc9, 0xea, 0x0d, 0xb7, 0xc3, 0x61, 0x99, 0x12, 0x00, 0x00, 0x00,
     225        0x00, 0x00, 0x00, 0x00, 0x12, 0x00, 0x00, 0x00, 0x50, 0x00, 0x72, 0x00,
     226        0x69, 0x00, 0x6e, 0x00, 0x74, 0x00, 0x65, 0x00, 0x72, 0x00, 0x44, 0x00,
     227        0x72, 0x00, 0x69, 0x00, 0x76, 0x00, 0x65, 0x00, 0x72, 0x00, 0x44, 0x00,
     228        0x61, 0x00, 0x74, 0x00, 0x61, 0x00, 0x00, 0x00, 0x0c, 0x21, 0x00, 0x00
     229};
     230
     231static const uint8_t enumprinterdataex_w2k8r2_out_data[] = {
     232        0x0c, 0x21, 0x00, 0x00, 0xf4, 0x01, 0x00, 0x00, 0x24, 0x00, 0x00, 0x00,
     233        0x04, 0x00, 0x00, 0x00, 0x18, 0x02, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00,
     234        0x08, 0x02, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00,
     235        0x18, 0x02, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x08, 0x02, 0x00, 0x00,
     236        0x16, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x20, 0x02, 0x00, 0x00,
     237        0x04, 0x00, 0x00, 0x00, 0x10, 0x02, 0x00, 0x00, 0x12, 0x00, 0x00, 0x00,
     238        0x04, 0x00, 0x00, 0x00, 0x24, 0x02, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00,
     239        0x14, 0x02, 0x00, 0x00, 0x20, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00,
     240        0x34, 0x02, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x24, 0x02, 0x00, 0x00,
     241        0x18, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x3c, 0x02, 0x00, 0x00,
     242        0x30, 0x02, 0x00, 0x00, 0x58, 0x04, 0x00, 0x00, 0x26, 0x00, 0x00, 0x00,
     243        0x04, 0x00, 0x00, 0x00, 0x80, 0x04, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00,
     244        0x70, 0x04, 0x00, 0x00, 0x1e, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00,
     245        0x90, 0x04, 0x00, 0x00, 0xfd, 0x01, 0x00, 0x00, 0x7a, 0x06, 0x00, 0x00,
     246        0x0e, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x88, 0x06, 0x00, 0x00,
     247        0x04, 0x00, 0x00, 0x00, 0x78, 0x06, 0x00, 0x00, 0x1e, 0x00, 0x00, 0x00,
     248        0x07, 0x00, 0x00, 0x00, 0x96, 0x06, 0x00, 0x00, 0xcc, 0x02, 0x00, 0x00,
     249        0x4e, 0x09, 0x00, 0x00, 0x18, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00,
     250        0x68, 0x09, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x58, 0x09, 0x00, 0x00,
     251        0x24, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x7c, 0x09, 0x00, 0x00,
     252        0x10, 0x04, 0x00, 0x00, 0x78, 0x0d, 0x00, 0x00, 0x1a, 0x00, 0x00, 0x00,
     253        0x04, 0x00, 0x00, 0x00, 0x94, 0x0d, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00,
     254        0x84, 0x0d, 0x00, 0x00, 0x26, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00,
     255        0xac, 0x0d, 0x00, 0x00, 0xdc, 0x0b, 0x00, 0x00, 0x74, 0x19, 0x00, 0x00,
     256        0x14, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x88, 0x19, 0x00, 0x00,
     257        0x04, 0x00, 0x00, 0x00, 0x78, 0x19, 0x00, 0x00, 0x18, 0x00, 0x00, 0x00,
     258        0x01, 0x00, 0x00, 0x00, 0x90, 0x19, 0x00, 0x00, 0x28, 0x00, 0x00, 0x00,
     259        0xa4, 0x19, 0x00, 0x00, 0x28, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00,
     260        0xcc, 0x19, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0xbc, 0x19, 0x00, 0x00,
     261        0x2a, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0xe8, 0x19, 0x00, 0x00,
     262        0x04, 0x00, 0x00, 0x00, 0xd8, 0x19, 0x00, 0x00, 0x1a, 0x00, 0x00, 0x00,
     263        0x04, 0x00, 0x00, 0x00, 0xf4, 0x19, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00,
     264        0xe4, 0x19, 0x00, 0x00, 0x1c, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00,
     265        0x00, 0x1a, 0x00, 0x00, 0xe4, 0x02, 0x00, 0x00, 0xd0, 0x1c, 0x00, 0x00,
     266        0x20, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0xf0, 0x1c, 0x00, 0x00,
     267        0x04, 0x00, 0x00, 0x00, 0xe0, 0x1c, 0x00, 0x00, 0x18, 0x00, 0x00, 0x00,
     268        0x03, 0x00, 0x00, 0x00, 0xf8, 0x1c, 0x00, 0x00, 0xd1, 0x00, 0x00, 0x00,
     269        0xb6, 0x1d, 0x00, 0x00, 0x28, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00,
     270        0xe0, 0x1d, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0xd0, 0x1d, 0x00, 0x00,
     271        0x20, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0xf0, 0x1d, 0x00, 0x00,
     272        0x39, 0x01, 0x00, 0x00, 0x16, 0x1f, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00,
     273        0x04, 0x00, 0x00, 0x00, 0x28, 0x1f, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00,
     274        0x49, 0x00, 0x6e, 0x00, 0x69, 0x00, 0x74, 0x00, 0x44, 0x00, 0x72, 0x00,
     275        0x69, 0x00, 0x76, 0x00, 0x65, 0x00, 0x72, 0x00, 0x56, 0x00, 0x65, 0x00,
     276        0x72, 0x00, 0x73, 0x00, 0x69, 0x00, 0x6f, 0x00, 0x6e, 0x00, 0x00, 0x00,
     277        0x00, 0x06, 0x00, 0x00, 0x46, 0x00, 0x72, 0x00, 0x65, 0x00, 0x65, 0x00,
     278        0x4d, 0x00, 0x65, 0x00, 0x6d, 0x00, 0x00, 0x00, 0x00, 0x18, 0x00, 0x00,
     279        0x4a, 0x00, 0x6f, 0x00, 0x62, 0x00, 0x54, 0x00, 0x69, 0x00, 0x6d, 0x00,
     280        0x65, 0x00, 0x4f, 0x00, 0x75, 0x00, 0x74, 0x00, 0x00, 0x00, 0x00, 0x00,
     281        0x00, 0x00, 0x00, 0x00, 0x50, 0x00, 0x72, 0x00, 0x6f, 0x00, 0x74, 0x00,
     282        0x6f, 0x00, 0x63, 0x00, 0x6f, 0x00, 0x6c, 0x00, 0x00, 0x00, 0x00, 0x00,
     283        0x00, 0x00, 0x00, 0x00, 0x50, 0x00, 0x72, 0x00, 0x69, 0x00, 0x6e, 0x00,
     284        0x74, 0x00, 0x65, 0x00, 0x72, 0x00, 0x44, 0x00, 0x61, 0x00, 0x74, 0x00,
     285        0x61, 0x00, 0x53, 0x00, 0x69, 0x00, 0x7a, 0x00, 0x65, 0x00, 0x00, 0x00,
     286        0x30, 0x02, 0x00, 0x00, 0x50, 0x00, 0x72, 0x00, 0x69, 0x00, 0x6e, 0x00,
     287        0x74, 0x00, 0x65, 0x00, 0x72, 0x00, 0x44, 0x00, 0x61, 0x00, 0x74, 0x00,
     288        0x61, 0x00, 0x00, 0x00, 0x00, 0x06, 0x30, 0x02, 0x80, 0x0c, 0x00, 0x00,
     289        0x00, 0x00, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x2c, 0x01, 0x00, 0x00,
     290        0x64, 0x00, 0x58, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     291        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc6, 0x97, 0xda, 0x0b,
     292        0x12, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00,
     293        0x01, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     294        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00,
     295        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     296        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     297        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     298        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     299        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     300        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     301        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     302        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     303        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     304        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     305        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     306        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     307        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     308        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     309        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     310        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     311        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     312        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     313        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     314        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     315        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     316        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     317        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     318        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     319        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     320        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     321        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     322        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     323        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     324        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     325        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     326        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     327        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     328        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     329        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     330        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     331        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     332        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     333        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     334        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     335        0x46, 0x00, 0x65, 0x00, 0x61, 0x00, 0x74, 0x00, 0x75, 0x00, 0x72, 0x00,
     336        0x65, 0x00, 0x4b, 0x00, 0x65, 0x00, 0x79, 0x00, 0x77, 0x00, 0x6f, 0x00,
     337        0x72, 0x00, 0x64, 0x00, 0x53, 0x00, 0x69, 0x00, 0x7a, 0x00, 0x65, 0x00,
     338        0x00, 0x00, 0x00, 0x00, 0xfd, 0x01, 0x00, 0x00, 0x46, 0x00, 0x65, 0x00,
     339        0x61, 0x00, 0x74, 0x00, 0x75, 0x00, 0x72, 0x00, 0x65, 0x00, 0x4b, 0x00,
     340        0x65, 0x00, 0x79, 0x00, 0x77, 0x00, 0x6f, 0x00, 0x72, 0x00, 0x64, 0x00,
     341        0x00, 0x00, 0x00, 0x00, 0x44, 0x75, 0x70, 0x6c, 0x65, 0x78, 0x55, 0x6e,
     342        0x69, 0x74, 0x00, 0x4e, 0x6f, 0x74, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6c,
     343        0x6c, 0x65, 0x64, 0x00, 0x0a, 0x41, 0x63, 0x63, 0x65, 0x73, 0x73, 0x6f,
     344        0x72, 0x79, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x42, 0x69, 0x6e, 0x73,
     345        0x00, 0x4e, 0x6f, 0x6e, 0x65, 0x00, 0x0a, 0x49, 0x6e, 0x73, 0x74, 0x61,
     346        0x6c, 0x6c, 0x65, 0x64, 0x4d, 0x65, 0x6d, 0x6f, 0x72, 0x79, 0x00, 0x33,
     347        0x38, 0x34, 0x2d, 0x34, 0x39, 0x35, 0x4d, 0x42, 0x00, 0x0a, 0x50, 0x72,
     348        0x69, 0x6e, 0x74, 0x65, 0x72, 0x48, 0x61, 0x72, 0x64, 0x44, 0x69, 0x73,
     349        0x6b, 0x00, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x65, 0x64, 0x00,
     350        0x0a, 0x4a, 0x6f, 0x62, 0x52, 0x65, 0x74, 0x65, 0x6e, 0x74, 0x69, 0x6f,
     351        0x6e, 0x00, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x65, 0x64, 0x00,
     352        0x0a, 0x48, 0x50, 0x50, 0x61, 0x73, 0x73, 0x74, 0x68, 0x72, 0x6f, 0x75,
     353        0x67, 0x68, 0x00, 0x54, 0x72, 0x75, 0x65, 0x00, 0x0a, 0x44, 0x65, 0x76,
     354        0x69, 0x63, 0x65, 0x49, 0x73, 0x4d, 0x6f, 0x70, 0x69, 0x65, 0x72, 0x00,
     355        0x4e, 0x6f, 0x74, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x65, 0x64,
     356        0x00, 0x0a, 0x41, 0x75, 0x74, 0x6f, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67,
     357        0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x00, 0x4e, 0x6f, 0x74, 0x49,
     358        0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x65, 0x64, 0x00, 0x0a, 0x48, 0x50,
     359        0x4d, 0x65, 0x64, 0x69, 0x61, 0x50, 0x4d, 0x4c, 0x52, 0x61, 0x6e, 0x67,
     360        0x65, 0x00, 0x31, 0x35, 0x2d, 0x31, 0x39, 0x00, 0x0a, 0x48, 0x50, 0x4f,
     361        0x75, 0x74, 0x70, 0x75, 0x74, 0x42, 0x69, 0x6e, 0x50, 0x4d, 0x4c, 0x52,
     362        0x61, 0x6e, 0x67, 0x65, 0x00, 0x30, 0x2d, 0x30, 0x00, 0x0a, 0x48, 0x50,
     363        0x50, 0x72, 0x6e, 0x50, 0x72, 0x6f, 0x70, 0x52, 0x65, 0x73, 0x6f, 0x75,
     364        0x72, 0x63, 0x65, 0x44, 0x61, 0x74, 0x61, 0x00, 0x48, 0x50, 0x43, 0x61,
     365        0x62, 0x46, 0x69, 0x6c, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x00, 0x0a, 0x48,
     366        0x50, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x61, 0x62, 0x6c, 0x65,
     367        0x48, 0x43, 0x4f, 0x00, 0x33, 0x30, 0x30, 0x30, 0x53, 0x74, 0x61, 0x63,
     368        0x6b, 0x65, 0x72, 0x2d, 0x43, 0x38, 0x30, 0x38, 0x34, 0x00, 0x0a, 0x48,
     369        0x50, 0x4d, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x42, 0x69, 0x6e, 0x48,
     370        0x43, 0x4f, 0x4d, 0x61, 0x70, 0x00, 0x4e, 0x6f, 0x6e, 0x65, 0x00, 0x0a,
     371        0x48, 0x50, 0x4d, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x42, 0x69, 0x6e,
     372        0x48, 0x43, 0x4f, 0x50, 0x4d, 0x4c, 0x4d, 0x61, 0x70, 0x00, 0x4e, 0x6f,
     373        0x6e, 0x65, 0x00, 0x0a, 0x48, 0x50, 0x50, 0x44, 0x4c, 0x54, 0x79, 0x70,
     374        0x65, 0x00, 0x50, 0x44, 0x4c, 0x5f, 0x50, 0x53, 0x00, 0x0a, 0x53, 0x63,
     375        0x61, 0x6c, 0x65, 0x46, 0x72, 0x6f, 0x6d, 0x4c, 0x61, 0x72, 0x67, 0x65,
     376        0x50, 0x61, 0x70, 0x65, 0x72, 0x00, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6c,
     377        0x6c, 0x65, 0x64, 0x00, 0x0a, 0x41, 0x63, 0x74, 0x75, 0x61, 0x6c, 0x43,
     378        0x75, 0x73, 0x74, 0x6f, 0x6d, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x00, 0x33,
     379        0x30, 0x36, 0x30, 0x37, 0x30, 0x5f, 0x34, 0x36, 0x39, 0x39, 0x30, 0x30,
     380        0x00, 0x0a, 0x43, 0x6f, 0x6d, 0x62, 0x69, 0x6e, 0x65, 0x4d, 0x65, 0x64,
     381        0x69, 0x61, 0x54, 0x79, 0x70, 0x65, 0x73, 0x41, 0x6e, 0x64, 0x49, 0x6e,
     382        0x70, 0x75, 0x74, 0x42, 0x69, 0x6e, 0x73, 0x00, 0x49, 0x6e, 0x73, 0x74,
     383        0x61, 0x6c, 0x6c, 0x65, 0x64, 0x00, 0x0a, 0x00, 0x00, 0x00, 0x46, 0x00,
     384        0x6f, 0x00, 0x72, 0x00, 0x6d, 0x00, 0x73, 0x00, 0x3f, 0x00, 0x00, 0x00,
     385        0xc6, 0x97, 0xda, 0x0b, 0x44, 0x00, 0x65, 0x00, 0x70, 0x00, 0x65, 0x00,
     386        0x6e, 0x00, 0x64, 0x00, 0x65, 0x00, 0x6e, 0x00, 0x74, 0x00, 0x46, 0x00,
     387        0x69, 0x00, 0x6c, 0x00, 0x65, 0x00, 0x73, 0x00, 0x00, 0x00, 0x48, 0x00,
     388        0x50, 0x00, 0x5a, 0x00, 0x45, 0x00, 0x4e, 0x00, 0x4c, 0x00, 0x48, 0x00,
     389        0x4e, 0x00, 0x2e, 0x00, 0x43, 0x00, 0x48, 0x00, 0x4d, 0x00, 0x00, 0x00,
     390        0x48, 0x00, 0x50, 0x00, 0x5a, 0x00, 0x4c, 0x00, 0x53, 0x00, 0x4c, 0x00,
     391        0x48, 0x00, 0x4e, 0x00, 0x2e, 0x00, 0x44, 0x00, 0x4c, 0x00, 0x4c, 0x00,
     392        0x00, 0x00, 0x48, 0x00, 0x50, 0x00, 0x5a, 0x00, 0x53, 0x00, 0x53, 0x00,
     393        0x4c, 0x00, 0x48, 0x00, 0x4e, 0x00, 0x2e, 0x00, 0x44, 0x00, 0x4c, 0x00,
     394        0x4c, 0x00, 0x00, 0x00, 0x48, 0x00, 0x50, 0x00, 0x5a, 0x00, 0x55, 0x00,
     395        0x49, 0x00, 0x4c, 0x00, 0x48, 0x00, 0x4e, 0x00, 0x2e, 0x00, 0x44, 0x00,
     396        0x4c, 0x00, 0x4c, 0x00, 0x00, 0x00, 0x48, 0x00, 0x50, 0x00, 0x5a, 0x00,
     397        0x53, 0x00, 0x52, 0x00, 0x4c, 0x00, 0x48, 0x00, 0x4e, 0x00, 0x2e, 0x00,
     398        0x44, 0x00, 0x4c, 0x00, 0x4c, 0x00, 0x00, 0x00, 0x48, 0x00, 0x50, 0x00,
     399        0x5a, 0x00, 0x53, 0x00, 0x43, 0x00, 0x4c, 0x00, 0x48, 0x00, 0x4e, 0x00,
     400        0x2e, 0x00, 0x49, 0x00, 0x4e, 0x00, 0x49, 0x00, 0x00, 0x00, 0x48, 0x00,
     401        0x50, 0x00, 0x4d, 0x00, 0x43, 0x00, 0x50, 0x00, 0x44, 0x00, 0x50, 0x00,
     402        0x53, 0x00, 0x2e, 0x00, 0x58, 0x00, 0x4d, 0x00, 0x4c, 0x00, 0x00, 0x00,
     403        0x48, 0x00, 0x50, 0x00, 0x5a, 0x00, 0x53, 0x00, 0x43, 0x00, 0x4c, 0x00,
     404        0x48, 0x00, 0x4e, 0x00, 0x2e, 0x00, 0x44, 0x00, 0x54, 0x00, 0x44, 0x00,
     405        0x00, 0x00, 0x48, 0x00, 0x50, 0x00, 0x5a, 0x00, 0x46, 0x00, 0x4e, 0x00,
     406        0x4c, 0x00, 0x48, 0x00, 0x4e, 0x00, 0x2e, 0x00, 0x4e, 0x00, 0x54, 0x00,
     407        0x46, 0x00, 0x00, 0x00, 0x48, 0x00, 0x50, 0x00, 0x4d, 0x00, 0x43, 0x00,
     408        0x50, 0x00, 0x44, 0x00, 0x32, 0x00, 0x35, 0x00, 0x2e, 0x00, 0x43, 0x00,
     409        0x46, 0x00, 0x47, 0x00, 0x00, 0x00, 0x48, 0x00, 0x50, 0x00, 0x5a, 0x00,
     410        0x53, 0x00, 0x54, 0x00, 0x4c, 0x00, 0x48, 0x00, 0x4e, 0x00, 0x2e, 0x00,
     411        0x44, 0x00, 0x4c, 0x00, 0x4c, 0x00, 0x00, 0x00, 0x48, 0x00, 0x50, 0x00,
     412        0x5a, 0x00, 0x45, 0x00, 0x56, 0x00, 0x4c, 0x00, 0x48, 0x00, 0x4e, 0x00,
     413        0x2e, 0x00, 0x44, 0x00, 0x4c, 0x00, 0x4c, 0x00, 0x00, 0x00, 0x48, 0x00,
     414        0x50, 0x00, 0x43, 0x00, 0x44, 0x00, 0x4d, 0x00, 0x43, 0x00, 0x4c, 0x00,
     415        0x48, 0x00, 0x2e, 0x00, 0x44, 0x00, 0x4c, 0x00, 0x4c, 0x00, 0x00, 0x00,
     416        0x48, 0x00, 0x50, 0x00, 0x5a, 0x00, 0x49, 0x00, 0x44, 0x00, 0x52, 0x00,
     417        0x31, 0x00, 0x32, 0x00, 0x2e, 0x00, 0x44, 0x00, 0x4c, 0x00, 0x4c, 0x00,
     418        0x00, 0x00, 0x48, 0x00, 0x50, 0x00, 0x5a, 0x00, 0x49, 0x00, 0x4e, 0x00,
     419        0x57, 0x00, 0x31, 0x00, 0x32, 0x00, 0x2e, 0x00, 0x44, 0x00, 0x4c, 0x00,
     420        0x4c, 0x00, 0x00, 0x00, 0x48, 0x00, 0x50, 0x00, 0x5a, 0x00, 0x49, 0x00,
     421        0x50, 0x00, 0x4d, 0x00, 0x31, 0x00, 0x32, 0x00, 0x2e, 0x00, 0x44, 0x00,
     422        0x4c, 0x00, 0x4c, 0x00, 0x00, 0x00, 0x48, 0x00, 0x50, 0x00, 0x5a, 0x00,
     423        0x49, 0x00, 0x50, 0x00, 0x52, 0x00, 0x31, 0x00, 0x32, 0x00, 0x2e, 0x00,
     424        0x44, 0x00, 0x4c, 0x00, 0x4c, 0x00, 0x00, 0x00, 0x48, 0x00, 0x50, 0x00,
     425        0x5a, 0x00, 0x49, 0x00, 0x50, 0x00, 0x54, 0x00, 0x31, 0x00, 0x32, 0x00,
     426        0x2e, 0x00, 0x44, 0x00, 0x4c, 0x00, 0x4c, 0x00, 0x00, 0x00, 0x48, 0x00,
     427        0x50, 0x00, 0x5a, 0x00, 0x49, 0x00, 0x53, 0x00, 0x4e, 0x00, 0x31, 0x00,
     428        0x32, 0x00, 0x2e, 0x00, 0x44, 0x00, 0x4c, 0x00, 0x4c, 0x00, 0x00, 0x00,
     429        0x48, 0x00, 0x50, 0x00, 0x42, 0x00, 0x4d, 0x00, 0x49, 0x00, 0x41, 0x00,
     430        0x50, 0x00, 0x49, 0x00, 0x2e, 0x00, 0x44, 0x00, 0x4c, 0x00, 0x4c, 0x00,
     431        0x00, 0x00, 0x48, 0x00, 0x50, 0x00, 0x42, 0x00, 0x4d, 0x00, 0x49, 0x00,
     432        0x4e, 0x00, 0x49, 0x00, 0x2e, 0x00, 0x44, 0x00, 0x4c, 0x00, 0x4c, 0x00,
     433        0x00, 0x00, 0x48, 0x00, 0x50, 0x00, 0x42, 0x00, 0x4f, 0x00, 0x49, 0x00,
     434        0x44, 0x00, 0x2e, 0x00, 0x44, 0x00, 0x4c, 0x00, 0x4c, 0x00, 0x00, 0x00,
     435        0x48, 0x00, 0x50, 0x00, 0x42, 0x00, 0x4f, 0x00, 0x49, 0x00, 0x44, 0x00,
     436        0x50, 0x00, 0x53, 0x00, 0x2e, 0x00, 0x44, 0x00, 0x4c, 0x00, 0x4c, 0x00,
     437        0x00, 0x00, 0x48, 0x00, 0x50, 0x00, 0x42, 0x00, 0x50, 0x00, 0x52, 0x00,
     438        0x4f, 0x00, 0x2e, 0x00, 0x44, 0x00, 0x4c, 0x00, 0x4c, 0x00, 0x00, 0x00,
     439        0x48, 0x00, 0x50, 0x00, 0x42, 0x00, 0x50, 0x00, 0x52, 0x00, 0x4f, 0x00,
     440        0x50, 0x00, 0x53, 0x00, 0x2e, 0x00, 0x44, 0x00, 0x4c, 0x00, 0x4c, 0x00,
     441        0x00, 0x00, 0x48, 0x00, 0x50, 0x00, 0x45, 0x00, 0x41, 0x00, 0x43, 0x00,
     442        0x4c, 0x00, 0x48, 0x00, 0x4e, 0x00, 0x2e, 0x00, 0x48, 0x00, 0x50, 0x00,
     443        0x49, 0x00, 0x00, 0x00, 0x50, 0x00, 0x53, 0x00, 0x43, 0x00, 0x52, 0x00,
     444        0x49, 0x00, 0x50, 0x00, 0x54, 0x00, 0x2e, 0x00, 0x4e, 0x00, 0x54, 0x00,
     445        0x46, 0x00, 0x00, 0x00, 0x50, 0x00, 0x53, 0x00, 0x5f, 0x00, 0x53, 0x00,
     446        0x43, 0x00, 0x48, 0x00, 0x4d, 0x00, 0x2e, 0x00, 0x47, 0x00, 0x44, 0x00,
     447        0x4c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x48, 0x00, 0x50, 0x00, 0x54, 0x00,
     448        0x72, 0x00, 0x61, 0x00, 0x79, 0x00, 0x43, 0x00, 0x6f, 0x00, 0x75, 0x00,
     449        0x6e, 0x00, 0x74, 0x00, 0x00, 0x00, 0x00, 0x00, 0x13, 0x00, 0x00, 0x00,
     450        0x48, 0x00, 0x50, 0x00, 0x54, 0x00, 0x52, 0x00, 0x41, 0x00, 0x59, 0x00,
     451        0x49, 0x00, 0x4e, 0x00, 0x46, 0x00, 0x4f, 0x00, 0x52, 0x00, 0x45, 0x00,
     452        0x47, 0x00, 0x44, 0x00, 0x41, 0x00, 0x54, 0x00, 0x41, 0x00, 0x00, 0x00,
     453        0x41, 0x00, 0x75, 0x00, 0x74, 0x00, 0x6f, 0x00, 0x6d, 0x00, 0x61, 0x00,
     454        0x74, 0x00, 0x69, 0x00, 0x63, 0x00, 0x61, 0x00, 0x6c, 0x00, 0x6c, 0x00,
     455        0x79, 0x00, 0x20, 0x00, 0x53, 0x00, 0x65, 0x00, 0x6c, 0x00, 0x65, 0x00,
     456        0x63, 0x00, 0x74, 0x00, 0x00, 0x00, 0x00, 0x0f, 0x00, 0x00, 0x00, 0x50,
     457        0x00, 0x72, 0x00, 0x69, 0x00, 0x6e, 0x00, 0x74, 0x00, 0x65, 0x00, 0x72,
     458        0x00, 0x20, 0x00, 0x41, 0x00, 0x75, 0x00, 0x74, 0x00, 0x6f, 0x00, 0x20,
     459        0x00, 0x53, 0x00, 0x65, 0x00, 0x6c, 0x00, 0x65, 0x00, 0x63, 0x00, 0x74,
     460        0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x00, 0x00, 0x4d, 0x00, 0x61, 0x00,
     461        0x6e, 0x00, 0x75, 0x00, 0x61, 0x00, 0x6c, 0x00, 0x20, 0x00, 0x46, 0x00,
     462        0x65, 0x00, 0x65, 0x00, 0x64, 0x00, 0x20, 0x00, 0x69, 0x00, 0x6e, 0x00,
     463        0x20, 0x00, 0x54, 0x00, 0x72, 0x00, 0x61, 0x00, 0x79, 0x00, 0x20, 0x00,
     464        0x31, 0x00, 0x00, 0x00, 0x00, 0x02, 0x01, 0x00, 0x00, 0x54, 0x00, 0x72,
     465        0x00, 0x61, 0x00, 0x79, 0x00, 0x20, 0x00, 0x31, 0x00, 0x00, 0x00, 0x00,
     466        0x03, 0x01, 0x00, 0x00, 0x54, 0x00, 0x72, 0x00, 0x61, 0x00, 0x79, 0x00,
     467        0x20, 0x00, 0x32, 0x00, 0x00, 0x00, 0x00, 0x04, 0x01, 0x00, 0x00, 0x54,
     468        0x00, 0x72, 0x00, 0x61, 0x00, 0x79, 0x00, 0x20, 0x00, 0x33, 0x00, 0x00,
     469        0x00, 0x00, 0x05, 0x01, 0x00, 0x00, 0x54, 0x00, 0x72, 0x00, 0x61, 0x00,
     470        0x79, 0x00, 0x20, 0x00, 0x34, 0x00, 0x00, 0x00, 0x00, 0x06, 0x01, 0x00,
     471        0x00, 0x54, 0x00, 0x72, 0x00, 0x61, 0x00, 0x79, 0x00, 0x20, 0x00, 0x35,
     472        0x00, 0x00, 0x00, 0x00, 0x07, 0x01, 0x00, 0x00, 0x54, 0x00, 0x72, 0x00,
     473        0x61, 0x00, 0x79, 0x00, 0x20, 0x00, 0x36, 0x00, 0x00, 0x00, 0x00, 0x08,
     474        0x01, 0x00, 0x00, 0x54, 0x00, 0x72, 0x00, 0x61, 0x00, 0x79, 0x00, 0x20,
     475        0x00, 0x37, 0x00, 0x00, 0x00, 0x00, 0x09, 0x01, 0x00, 0x00, 0x54, 0x00,
     476        0x72, 0x00, 0x61, 0x00, 0x79, 0x00, 0x20, 0x00, 0x38, 0x00, 0x00, 0x00,
     477        0x00, 0x0a, 0x01, 0x00, 0x00, 0x54, 0x00, 0x72, 0x00, 0x61, 0x00, 0x79,
     478        0x00, 0x20, 0x00, 0x39, 0x00, 0x00, 0x00, 0x00, 0x0b, 0x01, 0x00, 0x00,
     479        0x45, 0x00, 0x78, 0x00, 0x20, 0x00, 0x54, 0x00, 0x72, 0x00, 0x61, 0x00,
     480        0x79, 0x00, 0x20, 0x00, 0x28, 0x00, 0x4d, 0x00, 0x50, 0x00, 0x35, 0x00,
     481        0x29, 0x00, 0x00, 0x00, 0x00, 0x0c, 0x01, 0x00, 0x00, 0x45, 0x00, 0x78,
     482        0x00, 0x20, 0x00, 0x54, 0x00, 0x72, 0x00, 0x61, 0x00, 0x79, 0x00, 0x20,
     483        0x00, 0x28, 0x00, 0x4d, 0x00, 0x50, 0x00, 0x36, 0x00, 0x29, 0x00, 0x00,
     484        0x00, 0x00, 0x0d, 0x01, 0x00, 0x00, 0x45, 0x00, 0x78, 0x00, 0x20, 0x00,
     485        0x54, 0x00, 0x72, 0x00, 0x61, 0x00, 0x79, 0x00, 0x20, 0x00, 0x28, 0x00,
     486        0x4d, 0x00, 0x50, 0x00, 0x37, 0x00, 0x29, 0x00, 0x00, 0x00, 0x00, 0x0e,
     487        0x01, 0x00, 0x00, 0x45, 0x00, 0x78, 0x00, 0x20, 0x00, 0x54, 0x00, 0x72,
     488        0x00, 0x61, 0x00, 0x79, 0x00, 0x20, 0x00, 0x28, 0x00, 0x4d, 0x00, 0x50,
     489        0x00, 0x38, 0x00, 0x29, 0x00, 0x00, 0x00, 0x00, 0x0f, 0x01, 0x00, 0x00,
     490        0x45, 0x00, 0x78, 0x00, 0x20, 0x00, 0x54, 0x00, 0x72, 0x00, 0x61, 0x00,
     491        0x79, 0x00, 0x20, 0x00, 0x28, 0x00, 0x4d, 0x00, 0x50, 0x00, 0x39, 0x00,
     492        0x29, 0x00, 0x00, 0x00, 0x00, 0x10, 0x01, 0x00, 0x00, 0x45, 0x00, 0x78,
     493        0x00, 0x20, 0x00, 0x54, 0x00, 0x72, 0x00, 0x61, 0x00, 0x79, 0x00, 0x20,
     494        0x00, 0x28, 0x00, 0x4d, 0x00, 0x50, 0x00, 0x31, 0x00, 0x30, 0x00, 0x29,
     495        0x00, 0x00, 0x00, 0x00, 0x11, 0x01, 0x00, 0x00, 0x45, 0x00, 0x6e, 0x00,
     496        0x76, 0x00, 0x65, 0x00, 0x6c, 0x00, 0x6f, 0x00, 0x70, 0x00, 0x65, 0x00,
     497        0x20, 0x00, 0x46, 0x00, 0x65, 0x00, 0x65, 0x00, 0x64, 0x00, 0x65, 0x00,
     498        0x72, 0x00, 0x00, 0x00, 0x00, 0x12, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
     499        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     500        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     501        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     502        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     503        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     504        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     505        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     506        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     507        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     508        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     509        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     510        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     511        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     512        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     513        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     514        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     515        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     516        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     517        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     518        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     519        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     520        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     521        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     522        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     523        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     524        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     525        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     526        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     527        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     528        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     529        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     530        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     531        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     532        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     533        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     534        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     535        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     536        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     537        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     538        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     539        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x48, 0x00, 0x50, 0x00,
     540        0x4d, 0x00, 0x65, 0x00, 0x64, 0x00, 0x69, 0x00, 0x61, 0x00, 0x43, 0x00,
     541        0x6f, 0x00, 0x75, 0x00, 0x6e, 0x00, 0x74, 0x00, 0x00, 0x00, 0x00, 0x00,
     542        0x16, 0x00, 0x00, 0x00, 0x48, 0x00, 0x50, 0x00, 0x4d, 0x00, 0x45, 0x00,
     543        0x44, 0x00, 0x49, 0x00, 0x41, 0x00, 0x49, 0x00, 0x4e, 0x00, 0x46, 0x00,
     544        0x4f, 0x00, 0x52, 0x00, 0x45, 0x00, 0x47, 0x00, 0x44, 0x00, 0x41, 0x00,
     545        0x54, 0x00, 0x41, 0x00, 0x00, 0x00, 0x00, 0x00, 0x55, 0x00, 0x6e, 0x00,
     546        0x73, 0x00, 0x70, 0x00, 0x65, 0x00, 0x63, 0x00, 0x69, 0x00, 0x66, 0x00,
     547        0x69, 0x00, 0x65, 0x00, 0x64, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00,
     548        0x00, 0x50, 0x00, 0x6c, 0x00, 0x61, 0x00, 0x69, 0x00, 0x6e, 0x00, 0x00,
     549        0x00, 0x00, 0x01, 0x01, 0x00, 0x00, 0x50, 0x00, 0x72, 0x00, 0x65, 0x00,
     550        0x70, 0x00, 0x72, 0x00, 0x69, 0x00, 0x6e, 0x00, 0x74, 0x00, 0x65, 0x00,
     551        0x64, 0x00, 0x00, 0x00, 0x00, 0x02, 0x01, 0x00, 0x00, 0x4c, 0x00, 0x65,
     552        0x00, 0x74, 0x00, 0x74, 0x00, 0x65, 0x00, 0x72, 0x00, 0x68, 0x00, 0x65,
     553        0x00, 0x61, 0x00, 0x64, 0x00, 0x00, 0x00, 0x00, 0x03, 0x01, 0x00, 0x00,
     554        0x54, 0x00, 0x72, 0x00, 0x61, 0x00, 0x6e, 0x00, 0x73, 0x00, 0x70, 0x00,
     555        0x61, 0x00, 0x72, 0x00, 0x65, 0x00, 0x6e, 0x00, 0x63, 0x00, 0x79, 0x00,
     556        0x00, 0x00, 0x00, 0x04, 0x01, 0x00, 0x00, 0x50, 0x00, 0x72, 0x00, 0x65,
     557        0x00, 0x70, 0x00, 0x75, 0x00, 0x6e, 0x00, 0x63, 0x00, 0x68, 0x00, 0x65,
     558        0x00, 0x64, 0x00, 0x00, 0x00, 0x00, 0x05, 0x01, 0x00, 0x00, 0x4c, 0x00,
     559        0x61, 0x00, 0x62, 0x00, 0x65, 0x00, 0x6c, 0x00, 0x73, 0x00, 0x00, 0x00,
     560        0x00, 0x06, 0x01, 0x00, 0x00, 0x42, 0x00, 0x6f, 0x00, 0x6e, 0x00, 0x64,
     561        0x00, 0x00, 0x00, 0x00, 0x07, 0x01, 0x00, 0x00, 0x52, 0x00, 0x65, 0x00,
     562        0x63, 0x00, 0x79, 0x00, 0x63, 0x00, 0x6c, 0x00, 0x65, 0x00, 0x64, 0x00,
     563        0x00, 0x00, 0x00, 0x08, 0x01, 0x00, 0x00, 0x43, 0x00, 0x6f, 0x00, 0x6c,
     564        0x00, 0x6f, 0x00, 0x72, 0x00, 0x00, 0x00, 0x00, 0x09, 0x01, 0x00, 0x00,
     565        0x4c, 0x00, 0x69, 0x00, 0x67, 0x00, 0x68, 0x00, 0x74, 0x00, 0x20, 0x00,
     566        0x3c, 0x00, 0x37, 0x00, 0x35, 0x00, 0x20, 0x00, 0x67, 0x00, 0x2f, 0x00,
     567        0x6d, 0x00, 0x32, 0x00, 0x00, 0x00, 0x00, 0x0a, 0x01, 0x00, 0x00, 0x48,
     568        0x00, 0x65, 0x00, 0x61, 0x00, 0x76, 0x00, 0x79, 0x00, 0x00, 0x00, 0x00,
     569        0x0b, 0x01, 0x00, 0x00, 0x43, 0x00, 0x61, 0x00, 0x72, 0x00, 0x64, 0x00,
     570        0x73, 0x00, 0x74, 0x00, 0x6f, 0x00, 0x63, 0x00, 0x6b, 0x00, 0x20, 0x00,
     571        0x3e, 0x00, 0x31, 0x00, 0x36, 0x00, 0x33, 0x00, 0x20, 0x00, 0x67, 0x00,
     572        0x2f, 0x00, 0x6d, 0x00, 0x32, 0x00, 0x00, 0x00, 0x00, 0x0c, 0x01, 0x00,
     573        0x00, 0x47, 0x00, 0x6c, 0x00, 0x6f, 0x00, 0x73, 0x00, 0x73, 0x00, 0x79,
     574        0x00, 0x00, 0x00, 0x00, 0x0d, 0x01, 0x00, 0x00, 0x48, 0x00, 0x50, 0x00,
     575        0x20, 0x00, 0x48, 0x00, 0x65, 0x00, 0x61, 0x00, 0x76, 0x00, 0x79, 0x00,
     576        0x20, 0x00, 0x47, 0x00, 0x6c, 0x00, 0x6f, 0x00, 0x73, 0x00, 0x73, 0x00,
     577        0x79, 0x00, 0x00, 0x00, 0x00, 0x0e, 0x01, 0x00, 0x00, 0x54, 0x00, 0x6f,
     578        0x00, 0x75, 0x00, 0x67, 0x00, 0x68, 0x00, 0x20, 0x00, 0x70, 0x00, 0x61,
     579        0x00, 0x70, 0x00, 0x65, 0x00, 0x72, 0x00, 0x00, 0x00, 0x00, 0x0f, 0x01,
     580        0x00, 0x00, 0x45, 0x00, 0x6e, 0x00, 0x76, 0x00, 0x65, 0x00, 0x6c, 0x00,
     581        0x6f, 0x00, 0x70, 0x00, 0x65, 0x00, 0x00, 0x00, 0x00, 0x10, 0x01, 0x00,
     582        0x00, 0x20, 0x00, 0x00, 0x00, 0x00, 0x11, 0x01, 0x00, 0x00, 0x20, 0x00,
     583        0x00, 0x00, 0x00, 0x12, 0x01, 0x00, 0x00, 0x20, 0x00, 0x00, 0x00, 0x00,
     584        0x13, 0x01, 0x00, 0x00, 0x20, 0x00, 0x00, 0x00, 0x00, 0x14, 0x01, 0x00,
     585        0x00, 0x20, 0x00, 0x00, 0x00, 0x00, 0x15, 0x01, 0x00, 0x00, 0x00, 0x00,
     586        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     587        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     588        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     589        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     590        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     591        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     592        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     593        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     594        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     595        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     596        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     597        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     598        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     599        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     600        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     601        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     602        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     603        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     604        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     605        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     606        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     607        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     608        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     609        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     610        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     611        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     612        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     613        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     614        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     615        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     616        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     617        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     618        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     619        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     620        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     621        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     622        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     623        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     624        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     625        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     626        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     627        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     628        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     629        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     630        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     631        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     632        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     633        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     634        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     635        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     636        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     637        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     638        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     639        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     640        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     641        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     642        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     643        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     644        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     645        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     646        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     647        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     648        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     649        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     650        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     651        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     652        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     653        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     654        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     655        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     656        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     657        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     658        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     659        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     660        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     661        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     662        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     663        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     664        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     665        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     666        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     667        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     668        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     669        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     670        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     671        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     672        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     673        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     674        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     675        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     676        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     677        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     678        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     679        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     680        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     681        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     682        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     683        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     684        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     685        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     686        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     687        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     688        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     689        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     690        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     691        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     692        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     693        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     694        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     695        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     696        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     697        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     698        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     699        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     700        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     701        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     702        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     703        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     704        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     705        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     706        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     707        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     708        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     709        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     710        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     711        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     712        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     713        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     714        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     715        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     716        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     717        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     718        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     719        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     720        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     721        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     722        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     723        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     724        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     725        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     726        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     727        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     728        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     729        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     730        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     731        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     732        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     733        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     734        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     735        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     736        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     737        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     738        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     739        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     740        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     741        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     742        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     743        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     744        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     745        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     746        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     747        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     748        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     749        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     750        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     751        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     752        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     753        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     754        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     755        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     756        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     757        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     758        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     759        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     760        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     761        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     762        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     763        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     764        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     765        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     766        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     767        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     768        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     769        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     770        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     771        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     772        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     773        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     774        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     775        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     776        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     777        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     778        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     779        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     780        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     781        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     782        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     783        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     784        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     785        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     786        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     787        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     788        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     789        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     790        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     791        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     792        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     793        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     794        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     795        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     796        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     797        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     798        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x42, 0x00, 0x69, 0x00,
     799        0x64, 0x00, 0x69, 0x00, 0x53, 0x00, 0x74, 0x00, 0x61, 0x00, 0x74, 0x00,
     800        0x65, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x49, 0x00, 0x6e, 0x00,
     801        0x73, 0x00, 0x74, 0x00, 0x61, 0x00, 0x6c, 0x00, 0x6c, 0x00, 0x44, 0x00,
     802        0x61, 0x00, 0x74, 0x00, 0x65, 0x00, 0x00, 0x00, 0x31, 0x00, 0x31, 0x00,
     803        0x2f, 0x00, 0x32, 0x00, 0x36, 0x00, 0x2f, 0x00, 0x32, 0x00, 0x30, 0x00,
     804        0x30, 0x00, 0x39, 0x00, 0x3a, 0x00, 0x31, 0x00, 0x32, 0x00, 0x3a, 0x00,
     805        0x31, 0x00, 0x38, 0x00, 0x3a, 0x00, 0x31, 0x00, 0x37, 0x00, 0x00, 0x00,
     806        0x43, 0x00, 0x6f, 0x00, 0x6d, 0x00, 0x62, 0x00, 0x69, 0x00, 0x6e, 0x00,
     807        0x65, 0x00, 0x64, 0x00, 0x4d, 0x00, 0x65, 0x00, 0x64, 0x00, 0x69, 0x00,
     808        0x61, 0x00, 0x53, 0x00, 0x74, 0x00, 0x61, 0x00, 0x74, 0x00, 0x75, 0x00,
     809        0x73, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x49, 0x00, 0x6e, 0x00,
     810        0x73, 0x00, 0x74, 0x00, 0x61, 0x00, 0x6c, 0x00, 0x6c, 0x00, 0x61, 0x00,
     811        0x74, 0x00, 0x69, 0x00, 0x6f, 0x00, 0x6e, 0x00, 0x43, 0x00, 0x6f, 0x00,
     812        0x6d, 0x00, 0x70, 0x00, 0x6c, 0x00, 0x65, 0x00, 0x74, 0x00, 0x65, 0x00,
     813        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x54, 0x00, 0x72, 0x00,
     814        0x61, 0x00, 0x79, 0x00, 0x46, 0x00, 0x6f, 0x00, 0x72, 0x00, 0x6d, 0x00,
     815        0x53, 0x00, 0x69, 0x00, 0x7a, 0x00, 0x65, 0x00, 0x00, 0x00, 0x00, 0x00,
     816        0xe4, 0x02, 0x00, 0x00, 0x54, 0x00, 0x72, 0x00, 0x61, 0x00, 0x79, 0x00,
     817        0x46, 0x00, 0x6f, 0x00, 0x72, 0x00, 0x6d, 0x00, 0x54, 0x00, 0x61, 0x00,
     818        0x62, 0x00, 0x6c, 0x00, 0x65, 0x00, 0x00, 0x00, 0xe4, 0x02, 0x50, 0x00,
     819        0x72, 0x00, 0x69, 0x00, 0x6e, 0x00, 0x74, 0x00, 0x65, 0x00, 0x72, 0x00,
     820        0x20, 0x00, 0x41, 0x00, 0x75, 0x00, 0x74, 0x00, 0x6f, 0x00, 0x20, 0x00,
     821        0x53, 0x00, 0x65, 0x00, 0x6c, 0x00, 0x65, 0x00, 0x63, 0x00, 0x74, 0x00,
     822        0x00, 0x00, 0x4c, 0x00, 0x65, 0x00, 0x74, 0x00, 0x74, 0x00, 0x65, 0x00,
     823        0x72, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x4d, 0x00, 0x61, 0x00,
     824        0x6e, 0x00, 0x75, 0x00, 0x61, 0x00, 0x6c, 0x00, 0x20, 0x00, 0x46, 0x00,
     825        0x65, 0x00, 0x65, 0x00, 0x64, 0x00, 0x20, 0x00, 0x69, 0x00, 0x6e, 0x00,
     826        0x20, 0x00, 0x54, 0x00, 0x72, 0x00, 0x61, 0x00, 0x79, 0x00, 0x20, 0x00,
     827        0x31, 0x00, 0x00, 0x00, 0x4c, 0x00, 0x65, 0x00, 0x74, 0x00, 0x74, 0x00,
     828        0x65, 0x00, 0x72, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x54, 0x00,
     829        0x72, 0x00, 0x61, 0x00, 0x79, 0x00, 0x20, 0x00, 0x31, 0x00, 0x00, 0x00,
     830        0x4c, 0x00, 0x65, 0x00, 0x74, 0x00, 0x74, 0x00, 0x65, 0x00, 0x72, 0x00,
     831        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x54, 0x00, 0x72, 0x00, 0x61, 0x00,
     832        0x79, 0x00, 0x20, 0x00, 0x32, 0x00, 0x00, 0x00, 0x4c, 0x00, 0x65, 0x00,
     833        0x74, 0x00, 0x74, 0x00, 0x65, 0x00, 0x72, 0x00, 0x00, 0x00, 0x00, 0x00,
     834        0x00, 0x00, 0x54, 0x00, 0x72, 0x00, 0x61, 0x00, 0x79, 0x00, 0x20, 0x00,
     835        0x33, 0x00, 0x00, 0x00, 0x4c, 0x00, 0x65, 0x00, 0x74, 0x00, 0x74, 0x00,
     836        0x65, 0x00, 0x72, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x54, 0x00,
     837        0x72, 0x00, 0x61, 0x00, 0x79, 0x00, 0x20, 0x00, 0x34, 0x00, 0x00, 0x00,
     838        0x4c, 0x00, 0x65, 0x00, 0x74, 0x00, 0x74, 0x00, 0x65, 0x00, 0x72, 0x00,
     839        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x54, 0x00, 0x72, 0x00, 0x61, 0x00,
     840        0x79, 0x00, 0x20, 0x00, 0x35, 0x00, 0x00, 0x00, 0x4c, 0x00, 0x65, 0x00,
     841        0x74, 0x00, 0x74, 0x00, 0x65, 0x00, 0x72, 0x00, 0x00, 0x00, 0x00, 0x00,
     842        0x00, 0x00, 0x54, 0x00, 0x72, 0x00, 0x61, 0x00, 0x79, 0x00, 0x20, 0x00,
     843        0x36, 0x00, 0x00, 0x00, 0x4c, 0x00, 0x65, 0x00, 0x74, 0x00, 0x74, 0x00,
     844        0x65, 0x00, 0x72, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x54, 0x00,
     845        0x72, 0x00, 0x61, 0x00, 0x79, 0x00, 0x20, 0x00, 0x37, 0x00, 0x00, 0x00,
     846        0x4c, 0x00, 0x65, 0x00, 0x74, 0x00, 0x74, 0x00, 0x65, 0x00, 0x72, 0x00,
     847        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x54, 0x00, 0x72, 0x00, 0x61, 0x00,
     848        0x79, 0x00, 0x20, 0x00, 0x38, 0x00, 0x00, 0x00, 0x4c, 0x00, 0x65, 0x00,
     849        0x74, 0x00, 0x74, 0x00, 0x65, 0x00, 0x72, 0x00, 0x00, 0x00, 0x00, 0x00,
     850        0x00, 0x00, 0x54, 0x00, 0x72, 0x00, 0x61, 0x00, 0x79, 0x00, 0x20, 0x00,
     851        0x39, 0x00, 0x00, 0x00, 0x4c, 0x00, 0x65, 0x00, 0x74, 0x00, 0x74, 0x00,
     852        0x65, 0x00, 0x72, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x45, 0x00,
     853        0x78, 0x00, 0x20, 0x00, 0x54, 0x00, 0x72, 0x00, 0x61, 0x00, 0x79, 0x00,
     854        0x20, 0x00, 0x28, 0x00, 0x4d, 0x00, 0x50, 0x00, 0x35, 0x00, 0x29, 0x00,
     855        0x00, 0x00, 0x4c, 0x00, 0x65, 0x00, 0x74, 0x00, 0x74, 0x00, 0x65, 0x00,
     856        0x72, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x45, 0x00, 0x78, 0x00,
     857        0x20, 0x00, 0x54, 0x00, 0x72, 0x00, 0x61, 0x00, 0x79, 0x00, 0x20, 0x00,
     858        0x28, 0x00, 0x4d, 0x00, 0x50, 0x00, 0x36, 0x00, 0x29, 0x00, 0x00, 0x00,
     859        0x4c, 0x00, 0x65, 0x00, 0x74, 0x00, 0x74, 0x00, 0x65, 0x00, 0x72, 0x00,
     860        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x45, 0x00, 0x78, 0x00, 0x20, 0x00,
     861        0x54, 0x00, 0x72, 0x00, 0x61, 0x00, 0x79, 0x00, 0x20, 0x00, 0x28, 0x00,
     862        0x4d, 0x00, 0x50, 0x00, 0x37, 0x00, 0x29, 0x00, 0x00, 0x00, 0x4c, 0x00,
     863        0x65, 0x00, 0x74, 0x00, 0x74, 0x00, 0x65, 0x00, 0x72, 0x00, 0x00, 0x00,
     864        0x00, 0x00, 0x00, 0x00, 0x45, 0x00, 0x78, 0x00, 0x20, 0x00, 0x54, 0x00,
     865        0x72, 0x00, 0x61, 0x00, 0x79, 0x00, 0x20, 0x00, 0x28, 0x00, 0x4d, 0x00,
     866        0x50, 0x00, 0x38, 0x00, 0x29, 0x00, 0x00, 0x00, 0x4c, 0x00, 0x65, 0x00,
     867        0x74, 0x00, 0x74, 0x00, 0x65, 0x00, 0x72, 0x00, 0x00, 0x00, 0x00, 0x00,
     868        0x00, 0x00, 0x45, 0x00, 0x78, 0x00, 0x20, 0x00, 0x54, 0x00, 0x72, 0x00,
     869        0x61, 0x00, 0x79, 0x00, 0x20, 0x00, 0x28, 0x00, 0x4d, 0x00, 0x50, 0x00,
     870        0x39, 0x00, 0x29, 0x00, 0x00, 0x00, 0x4c, 0x00, 0x65, 0x00, 0x74, 0x00,
     871        0x74, 0x00, 0x65, 0x00, 0x72, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     872        0x45, 0x00, 0x78, 0x00, 0x20, 0x00, 0x54, 0x00, 0x72, 0x00, 0x61, 0x00,
     873        0x79, 0x00, 0x20, 0x00, 0x28, 0x00, 0x4d, 0x00, 0x50, 0x00, 0x31, 0x00,
     874        0x30, 0x00, 0x29, 0x00, 0x00, 0x00, 0x4c, 0x00, 0x65, 0x00, 0x74, 0x00,
     875        0x74, 0x00, 0x65, 0x00, 0x72, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     876        0x45, 0x00, 0x6e, 0x00, 0x76, 0x00, 0x65, 0x00, 0x6c, 0x00, 0x6f, 0x00,
     877        0x70, 0x00, 0x65, 0x00, 0x20, 0x00, 0x46, 0x00, 0x65, 0x00, 0x65, 0x00,
     878        0x64, 0x00, 0x65, 0x00, 0x72, 0x00, 0x00, 0x00, 0x4c, 0x00, 0x65, 0x00,
     879        0x74, 0x00, 0x74, 0x00, 0x65, 0x00, 0x72, 0x00, 0x00, 0x00, 0x00, 0x00,
     880        0x00, 0x00, 0x00, 0x00, 0x54, 0x00, 0x72, 0x00, 0x61, 0x00, 0x79, 0x00,
     881        0x46, 0x00, 0x6f, 0x00, 0x72, 0x00, 0x6d, 0x00, 0x4d, 0x00, 0x61, 0x00,
     882        0x70, 0x00, 0x53, 0x00, 0x69, 0x00, 0x7a, 0x00, 0x65, 0x00, 0x00, 0x00,
     883        0xd1, 0x00, 0x00, 0x00, 0x54, 0x00, 0x72, 0x00, 0x61, 0x00, 0x79, 0x00,
     884        0x46, 0x00, 0x6f, 0x00, 0x72, 0x00, 0x6d, 0x00, 0x4d, 0x00, 0x61, 0x00,
     885        0x70, 0x00, 0x00, 0x00, 0x41, 0x75, 0x74, 0x6f, 0x00, 0x00, 0x00, 0x00,
     886        0x00, 0x4d, 0x61, 0x6e, 0x75, 0x61, 0x6c, 0x46, 0x65, 0x65, 0x64, 0x00,
     887        0x00, 0x00, 0x00, 0x00, 0x54, 0x72, 0x61, 0x79, 0x31, 0x00, 0x00, 0x00,
     888        0x00, 0x00, 0x54, 0x72, 0x61, 0x79, 0x32, 0x00, 0x00, 0x00, 0x00, 0x00,
     889        0x54, 0x72, 0x61, 0x79, 0x33, 0x00, 0x00, 0x00, 0x00, 0x00, 0x54, 0x72,
     890        0x61, 0x79, 0x34, 0x00, 0x00, 0x00, 0x00, 0x00, 0x54, 0x72, 0x61, 0x79,
     891        0x35, 0x00, 0x00, 0x00, 0x00, 0x00, 0x54, 0x72, 0x61, 0x79, 0x36, 0x00,
     892        0x00, 0x00, 0x00, 0x00, 0x54, 0x72, 0x61, 0x79, 0x37, 0x00, 0x00, 0x00,
     893        0x00, 0x00, 0x54, 0x72, 0x61, 0x79, 0x38, 0x00, 0x00, 0x00, 0x00, 0x00,
     894        0x54, 0x72, 0x61, 0x79, 0x39, 0x00, 0x00, 0x00, 0x00, 0x00, 0x54, 0x72,
     895        0x61, 0x79, 0x45, 0x78, 0x74, 0x31, 0x00, 0x00, 0x00, 0x00, 0x00, 0x54,
     896        0x72, 0x61, 0x79, 0x45, 0x78, 0x74, 0x32, 0x00, 0x00, 0x00, 0x00, 0x00,
     897        0x54, 0x72, 0x61, 0x79, 0x45, 0x78, 0x74, 0x33, 0x00, 0x00, 0x00, 0x00,
     898        0x00, 0x54, 0x72, 0x61, 0x79, 0x45, 0x78, 0x74, 0x34, 0x00, 0x00, 0x00,
     899        0x00, 0x00, 0x54, 0x72, 0x61, 0x79, 0x45, 0x78, 0x74, 0x35, 0x00, 0x00,
     900        0x00, 0x00, 0x00, 0x54, 0x72, 0x61, 0x79, 0x45, 0x78, 0x74, 0x36, 0x00,
     901        0x00, 0x00, 0x00, 0x00, 0x45, 0x6e, 0x76, 0x46, 0x65, 0x65, 0x64, 0x00,
     902        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x54, 0x00,
     903        0x72, 0x00, 0x61, 0x00, 0x79, 0x00, 0x46, 0x00, 0x6f, 0x00, 0x72, 0x00,
     904        0x6d, 0x00, 0x4b, 0x00, 0x65, 0x00, 0x79, 0x00, 0x77, 0x00, 0x6f, 0x00,
     905        0x72, 0x00, 0x64, 0x00, 0x53, 0x00, 0x69, 0x00, 0x7a, 0x00, 0x65, 0x00,
     906        0x00, 0x00, 0x00, 0x00, 0x39, 0x01, 0x00, 0x00, 0x54, 0x00, 0x72, 0x00,
     907        0x61, 0x00, 0x79, 0x00, 0x46, 0x00, 0x6f, 0x00, 0x72, 0x00, 0x6d, 0x00,
     908        0x4b, 0x00, 0x65, 0x00, 0x79, 0x00, 0x77, 0x00, 0x6f, 0x00, 0x72, 0x00,
     909        0x64, 0x00, 0x00, 0x00, 0x41, 0x75, 0x74, 0x6f, 0x00, 0x4c, 0x45, 0x54,
     910        0x54, 0x45, 0x52, 0x3a, 0x48, 0x50, 0x00, 0x4d, 0x61, 0x6e, 0x75, 0x61,
     911        0x6c, 0x46, 0x65, 0x65, 0x64, 0x00, 0x4c, 0x45, 0x54, 0x54, 0x45, 0x52,
     912        0x3a, 0x48, 0x50, 0x00, 0x54, 0x72, 0x61, 0x79, 0x31, 0x00, 0x4c, 0x45,
     913        0x54, 0x54, 0x45, 0x52, 0x3a, 0x48, 0x50, 0x00, 0x54, 0x72, 0x61, 0x79,
     914        0x32, 0x00, 0x4c, 0x45, 0x54, 0x54, 0x45, 0x52, 0x3a, 0x48, 0x50, 0x00,
     915        0x54, 0x72, 0x61, 0x79, 0x33, 0x00, 0x4c, 0x45, 0x54, 0x54, 0x45, 0x52,
     916        0x3a, 0x48, 0x50, 0x00, 0x54, 0x72, 0x61, 0x79, 0x34, 0x00, 0x4c, 0x45,
     917        0x54, 0x54, 0x45, 0x52, 0x3a, 0x48, 0x50, 0x00, 0x54, 0x72, 0x61, 0x79,
     918        0x35, 0x00, 0x4c, 0x45, 0x54, 0x54, 0x45, 0x52, 0x3a, 0x48, 0x50, 0x00,
     919        0x54, 0x72, 0x61, 0x79, 0x36, 0x00, 0x4c, 0x45, 0x54, 0x54, 0x45, 0x52,
     920        0x3a, 0x48, 0x50, 0x00, 0x54, 0x72, 0x61, 0x79, 0x37, 0x00, 0x4c, 0x45,
     921        0x54, 0x54, 0x45, 0x52, 0x3a, 0x48, 0x50, 0x00, 0x54, 0x72, 0x61, 0x79,
     922        0x38, 0x00, 0x4c, 0x45, 0x54, 0x54, 0x45, 0x52, 0x3a, 0x48, 0x50, 0x00,
     923        0x54, 0x72, 0x61, 0x79, 0x39, 0x00, 0x4c, 0x45, 0x54, 0x54, 0x45, 0x52,
     924        0x3a, 0x48, 0x50, 0x00, 0x54, 0x72, 0x61, 0x79, 0x45, 0x78, 0x74, 0x31,
     925        0x00, 0x4c, 0x45, 0x54, 0x54, 0x45, 0x52, 0x3a, 0x48, 0x50, 0x00, 0x54,
     926        0x72, 0x61, 0x79, 0x45, 0x78, 0x74, 0x32, 0x00, 0x4c, 0x45, 0x54, 0x54,
     927        0x45, 0x52, 0x3a, 0x48, 0x50, 0x00, 0x54, 0x72, 0x61, 0x79, 0x45, 0x78,
     928        0x74, 0x33, 0x00, 0x4c, 0x45, 0x54, 0x54, 0x45, 0x52, 0x3a, 0x48, 0x50,
     929        0x00, 0x54, 0x72, 0x61, 0x79, 0x45, 0x78, 0x74, 0x34, 0x00, 0x4c, 0x45,
     930        0x54, 0x54, 0x45, 0x52, 0x3a, 0x48, 0x50, 0x00, 0x54, 0x72, 0x61, 0x79,
     931        0x45, 0x78, 0x74, 0x35, 0x00, 0x4c, 0x45, 0x54, 0x54, 0x45, 0x52, 0x3a,
     932        0x48, 0x50, 0x00, 0x54, 0x72, 0x61, 0x79, 0x45, 0x78, 0x74, 0x36, 0x00,
     933        0x4c, 0x45, 0x54, 0x54, 0x45, 0x52, 0x3a, 0x48, 0x50, 0x00, 0x45, 0x6e,
     934        0x76, 0x46, 0x65, 0x65, 0x64, 0x00, 0x4c, 0x45, 0x54, 0x54, 0x45, 0x52,
     935        0x3a, 0x48, 0x50, 0x00, 0x00, 0x00, 0x48, 0x00, 0x50, 0x00, 0x44, 0x00,
     936        0x55, 0x00, 0x4d, 0x00, 0x4d, 0x00, 0x59, 0x00, 0x00, 0x00, 0x00, 0x00,
     937        0x00, 0x00, 0x00, 0x00, 0x0c, 0x21, 0x00, 0x00, 0x19, 0x00, 0x00, 0x00,
     938        0x00, 0x00, 0x00, 0x00
    220939};
    221940
     
    4461165};
    4471166
     1167static const uint8_t getprinterdriver2_in_data[] = {
     1168        0x00, 0x00, 0x00, 0x00, 0x80, 0x74, 0xc9, 0xc0, 0x9f, 0x5f, 0x6f, 0x46,
     1169        0xbb, 0x14, 0x48, 0xe6, 0xb6, 0xa8, 0x47, 0x40, 0x00, 0x00, 0x02, 0x00,
     1170        0x0c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0c, 0x00, 0x00, 0x00,
     1171        0x57, 0x00, 0x69, 0x00, 0x6e, 0x00, 0x64, 0x00, 0x6f, 0x00, 0x77, 0x00,
     1172        0x73, 0x00, 0x20, 0x00, 0x78, 0x00, 0x36, 0x00, 0x34, 0x00, 0x00, 0x00,
     1173        0x06, 0x00, 0x00, 0x00, 0x04, 0x00, 0x02, 0x00, 0x88, 0x04, 0x00, 0x00,
     1174        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     1175        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     1176        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     1177        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     1178        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     1179        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     1180        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     1181        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     1182        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     1183        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     1184        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     1185        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     1186        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     1187        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     1188        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     1189        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     1190        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     1191        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     1192        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     1193        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     1194        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     1195        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     1196        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     1197        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     1198        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     1199        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     1200        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     1201        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     1202        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     1203        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     1204        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     1205        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     1206        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     1207        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     1208        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     1209        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     1210        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     1211        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     1212        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     1213        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     1214        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     1215        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     1216        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     1217        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     1218        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     1219        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     1220        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     1221        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     1222        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     1223        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     1224        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     1225        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     1226        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     1227        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     1228        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     1229        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     1230        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     1231        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     1232        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     1233        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     1234        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     1235        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     1236        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     1237        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     1238        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     1239        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     1240        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     1241        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     1242        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     1243        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     1244        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     1245        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     1246        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     1247        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     1248        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     1249        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     1250        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     1251        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     1252        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     1253        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     1254        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     1255        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     1256        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     1257        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     1258        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     1259        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     1260        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     1261        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     1262        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     1263        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     1264        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     1265        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     1266        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     1267        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     1268        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     1269        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     1270        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x88, 0x04, 0x00, 0x00,
     1271        0x03, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00
     1272};
     1273
     1274static bool getprinterdriver2_in_check(struct torture_context *tctx,
     1275                                       struct spoolss_GetPrinterDriver2 *r)
     1276{
     1277        torture_assert_str_equal(tctx, r->in.architecture, "Windows x64", "architecture");
     1278        torture_assert_int_equal(tctx, r->in.level, 6, "level");
     1279        torture_assert_int_equal(tctx, r->in.offered, 1160, "offered");
     1280        torture_assert_int_equal(tctx, r->in.client_major_version, 3, "client_major_version");
     1281        torture_assert_int_equal(tctx, r->in.client_minor_version, 2, "client_minor_version");
     1282
     1283        return true;
     1284}
     1285
     1286static const uint8_t getprinterdriver2_out_data[] = {
     1287        0x00, 0x00, 0x02, 0x00, 0x88, 0x04, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00,
     1288        0x58, 0x04, 0x00, 0x00, 0x40, 0x04, 0x00, 0x00, 0xf4, 0x03, 0x00, 0x00,
     1289        0xa8, 0x03, 0x00, 0x00, 0x62, 0x03, 0x00, 0x00, 0x18, 0x03, 0x00, 0x00,
     1290        0x8c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     1291        0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x8c, 0xa3, 0xc5, 0x94, 0xc6, 0x01,
     1292        0x00, 0x00, 0x00, 0x00, 0x01, 0x40, 0xb0, 0x1d, 0x01, 0x00, 0x06, 0x00,
     1293        0x0c, 0x03, 0x00, 0x00, 0x8a, 0x02, 0x00, 0x00, 0x58, 0x02, 0x00, 0x00,
     1294        0x4c, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     1295        0x00, 0x80, 0x8c, 0xa3, 0xc5, 0x94, 0xc6, 0x01, 0x01, 0x40, 0xb0, 0x1d,
     1296        0x01, 0x00, 0x06, 0x00, 0x0c, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     1297        0x8a, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x58, 0x02, 0x00, 0x00,
     1298        0x00, 0x00, 0x00, 0x00, 0x4c, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     1299        0x00, 0x00, 0x00, 0x00, 0x5c, 0x00, 0x5c, 0x00, 0x52, 0x00, 0x48, 0x00,
     1300        0x2d, 0x00, 0x57, 0x00, 0x32, 0x00, 0x4b, 0x00, 0x38, 0x00, 0x52, 0x00,
     1301        0x32, 0x00, 0x5c, 0x00, 0x70, 0x00, 0x72, 0x00, 0x69, 0x00, 0x6e, 0x00,
     1302        0x74, 0x00, 0x24, 0x00, 0x5c, 0x00, 0x78, 0x00, 0x36, 0x00, 0x34, 0x00,
     1303        0x5c, 0x00, 0x33, 0x00, 0x5c, 0x00, 0x50, 0x00, 0x53, 0x00, 0x43, 0x00,
     1304        0x52, 0x00, 0x49, 0x00, 0x50, 0x00, 0x54, 0x00, 0x2e, 0x00, 0x4e, 0x00,
     1305        0x54, 0x00, 0x46, 0x00, 0x00, 0x00, 0x5c, 0x00, 0x5c, 0x00, 0x52, 0x00,
     1306        0x48, 0x00, 0x2d, 0x00, 0x57, 0x00, 0x32, 0x00, 0x4b, 0x00, 0x38, 0x00,
     1307        0x52, 0x00, 0x32, 0x00, 0x5c, 0x00, 0x70, 0x00, 0x72, 0x00, 0x69, 0x00,
     1308        0x6e, 0x00, 0x74, 0x00, 0x24, 0x00, 0x5c, 0x00, 0x78, 0x00, 0x36, 0x00,
     1309        0x34, 0x00, 0x5c, 0x00, 0x33, 0x00, 0x5c, 0x00, 0x50, 0x00, 0x53, 0x00,
     1310        0x5f, 0x00, 0x53, 0x00, 0x43, 0x00, 0x48, 0x00, 0x4d, 0x00, 0x2e, 0x00,
     1311        0x47, 0x00, 0x44, 0x00, 0x4c, 0x00, 0x00, 0x00, 0x5c, 0x00, 0x5c, 0x00,
     1312        0x52, 0x00, 0x48, 0x00, 0x2d, 0x00, 0x57, 0x00, 0x32, 0x00, 0x4b, 0x00,
     1313        0x38, 0x00, 0x52, 0x00, 0x32, 0x00, 0x5c, 0x00, 0x70, 0x00, 0x72, 0x00,
     1314        0x69, 0x00, 0x6e, 0x00, 0x74, 0x00, 0x24, 0x00, 0x5c, 0x00, 0x78, 0x00,
     1315        0x36, 0x00, 0x34, 0x00, 0x5c, 0x00, 0x33, 0x00, 0x5c, 0x00, 0x52, 0x00,
     1316        0x49, 0x00, 0x43, 0x00, 0x4f, 0x00, 0x48, 0x00, 0x50, 0x00, 0x53, 0x00,
     1317        0x37, 0x00, 0x2e, 0x00, 0x49, 0x00, 0x4e, 0x00, 0x49, 0x00, 0x00, 0x00,
     1318        0x5c, 0x00, 0x5c, 0x00, 0x52, 0x00, 0x48, 0x00, 0x2d, 0x00, 0x57, 0x00,
     1319        0x32, 0x00, 0x4b, 0x00, 0x38, 0x00, 0x52, 0x00, 0x32, 0x00, 0x5c, 0x00,
     1320        0x70, 0x00, 0x72, 0x00, 0x69, 0x00, 0x6e, 0x00, 0x74, 0x00, 0x24, 0x00,
     1321        0x5c, 0x00, 0x78, 0x00, 0x36, 0x00, 0x34, 0x00, 0x5c, 0x00, 0x33, 0x00,
     1322        0x5c, 0x00, 0x52, 0x00, 0x49, 0x00, 0x50, 0x00, 0x53, 0x00, 0x55, 0x00,
     1323        0x49, 0x00, 0x37, 0x00, 0x2e, 0x00, 0x44, 0x00, 0x4c, 0x00, 0x4c, 0x00,
     1324        0x00, 0x00, 0x5c, 0x00, 0x5c, 0x00, 0x52, 0x00, 0x48, 0x00, 0x2d, 0x00,
     1325        0x57, 0x00, 0x32, 0x00, 0x4b, 0x00, 0x38, 0x00, 0x52, 0x00, 0x32, 0x00,
     1326        0x5c, 0x00, 0x70, 0x00, 0x72, 0x00, 0x69, 0x00, 0x6e, 0x00, 0x74, 0x00,
     1327        0x24, 0x00, 0x5c, 0x00, 0x78, 0x00, 0x36, 0x00, 0x34, 0x00, 0x5c, 0x00,
     1328        0x33, 0x00, 0x5c, 0x00, 0x52, 0x00, 0x49, 0x00, 0x50, 0x00, 0x53, 0x00,
     1329        0x52, 0x00, 0x45, 0x00, 0x53, 0x00, 0x37, 0x00, 0x2e, 0x00, 0x44, 0x00,
     1330        0x4c, 0x00, 0x4c, 0x00, 0x00, 0x00, 0x5c, 0x00, 0x5c, 0x00, 0x52, 0x00,
     1331        0x48, 0x00, 0x2d, 0x00, 0x57, 0x00, 0x32, 0x00, 0x4b, 0x00, 0x38, 0x00,
     1332        0x52, 0x00, 0x32, 0x00, 0x5c, 0x00, 0x70, 0x00, 0x72, 0x00, 0x69, 0x00,
     1333        0x6e, 0x00, 0x74, 0x00, 0x24, 0x00, 0x5c, 0x00, 0x78, 0x00, 0x36, 0x00,
     1334        0x34, 0x00, 0x5c, 0x00, 0x33, 0x00, 0x5c, 0x00, 0x52, 0x00, 0x49, 0x00,
     1335        0x43, 0x00, 0x46, 0x00, 0x47, 0x00, 0x37, 0x00, 0x2e, 0x00, 0x58, 0x00,
     1336        0x4d, 0x00, 0x4c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x52, 0x00, 0x69, 0x00,
     1337        0x63, 0x00, 0x6f, 0x00, 0x68, 0x00, 0x00, 0x00, 0x72, 0x00, 0x69, 0x00,
     1338        0x63, 0x00, 0x6f, 0x00, 0x68, 0x00, 0x72, 0x00, 0x69, 0x00, 0x63, 0x00,
     1339        0x6f, 0x00, 0x68, 0x00, 0x5f, 0x00, 0x61, 0x00, 0x66, 0x00, 0x69, 0x00,
     1340        0x63, 0x00, 0x69, 0x00, 0x6f, 0x00, 0x5f, 0x00, 0x6d, 0x00, 0x70, 0x00,
     1341        0x35, 0x00, 0x30, 0x00, 0x36, 0x00, 0x33, 0x00, 0x00, 0x00, 0x68, 0x00,
     1342        0x74, 0x00, 0x74, 0x00, 0x70, 0x00, 0x3a, 0x00, 0x2f, 0x00, 0x2f, 0x00,
     1343        0x67, 0x00, 0x6f, 0x00, 0x2e, 0x00, 0x6d, 0x00, 0x69, 0x00, 0x63, 0x00,
     1344        0x72, 0x00, 0x6f, 0x00, 0x73, 0x00, 0x6f, 0x00, 0x66, 0x00, 0x74, 0x00,
     1345        0x2e, 0x00, 0x63, 0x00, 0x6f, 0x00, 0x6d, 0x00, 0x2f, 0x00, 0x66, 0x00,
     1346        0x77, 0x00, 0x6c, 0x00, 0x69, 0x00, 0x6e, 0x00, 0x6b, 0x00, 0x2f, 0x00,
     1347        0x3f, 0x00, 0x4c, 0x00, 0x69, 0x00, 0x6e, 0x00, 0x6b, 0x00, 0x49, 0x00,
     1348        0x44, 0x00, 0x3d, 0x00, 0x34, 0x00, 0x37, 0x00, 0x26, 0x00, 0x70, 0x00,
     1349        0x72, 0x00, 0x64, 0x00, 0x3d, 0x00, 0x31, 0x00, 0x30, 0x00, 0x37, 0x00,
     1350        0x39, 0x00, 0x38, 0x00, 0x26, 0x00, 0x73, 0x00, 0x62, 0x00, 0x70, 0x00,
     1351        0x3d, 0x00, 0x50, 0x00, 0x72, 0x00, 0x69, 0x00, 0x6e, 0x00, 0x74, 0x00,
     1352        0x65, 0x00, 0x72, 0x00, 0x73, 0x00, 0x00, 0x00, 0x52, 0x00, 0x69, 0x00,
     1353        0x63, 0x00, 0x6f, 0x00, 0x68, 0x00, 0x00, 0x00, 0x5c, 0x00, 0x5c, 0x00,
     1354        0x52, 0x00, 0x48, 0x00, 0x2d, 0x00, 0x57, 0x00, 0x32, 0x00, 0x4b, 0x00,
     1355        0x38, 0x00, 0x52, 0x00, 0x32, 0x00, 0x5c, 0x00, 0x70, 0x00, 0x72, 0x00,
     1356        0x69, 0x00, 0x6e, 0x00, 0x74, 0x00, 0x24, 0x00, 0x5c, 0x00, 0x78, 0x00,
     1357        0x36, 0x00, 0x34, 0x00, 0x5c, 0x00, 0x33, 0x00, 0x5c, 0x00, 0x50, 0x00,
     1358        0x53, 0x00, 0x43, 0x00, 0x52, 0x00, 0x49, 0x00, 0x50, 0x00, 0x54, 0x00,
     1359        0x2e, 0x00, 0x48, 0x00, 0x4c, 0x00, 0x50, 0x00, 0x00, 0x00, 0x5c, 0x00,
     1360        0x5c, 0x00, 0x52, 0x00, 0x48, 0x00, 0x2d, 0x00, 0x57, 0x00, 0x32, 0x00,
     1361        0x4b, 0x00, 0x38, 0x00, 0x52, 0x00, 0x32, 0x00, 0x5c, 0x00, 0x70, 0x00,
     1362        0x72, 0x00, 0x69, 0x00, 0x6e, 0x00, 0x74, 0x00, 0x24, 0x00, 0x5c, 0x00,
     1363        0x78, 0x00, 0x36, 0x00, 0x34, 0x00, 0x5c, 0x00, 0x33, 0x00, 0x5c, 0x00,
     1364        0x50, 0x00, 0x53, 0x00, 0x35, 0x00, 0x55, 0x00, 0x49, 0x00, 0x2e, 0x00,
     1365        0x44, 0x00, 0x4c, 0x00, 0x4c, 0x00, 0x00, 0x00, 0x5c, 0x00, 0x5c, 0x00,
     1366        0x52, 0x00, 0x48, 0x00, 0x2d, 0x00, 0x57, 0x00, 0x32, 0x00, 0x4b, 0x00,
     1367        0x38, 0x00, 0x52, 0x00, 0x32, 0x00, 0x5c, 0x00, 0x70, 0x00, 0x72, 0x00,
     1368        0x69, 0x00, 0x6e, 0x00, 0x74, 0x00, 0x24, 0x00, 0x5c, 0x00, 0x78, 0x00,
     1369        0x36, 0x00, 0x34, 0x00, 0x5c, 0x00, 0x33, 0x00, 0x5c, 0x00, 0x52, 0x00,
     1370        0x49, 0x00, 0x31, 0x00, 0x34, 0x00, 0x30, 0x00, 0x33, 0x00, 0x45, 0x00,
     1371        0x33, 0x00, 0x2e, 0x00, 0x50, 0x00, 0x50, 0x00, 0x44, 0x00, 0x00, 0x00,
     1372        0x5c, 0x00, 0x5c, 0x00, 0x52, 0x00, 0x48, 0x00, 0x2d, 0x00, 0x57, 0x00,
     1373        0x32, 0x00, 0x4b, 0x00, 0x38, 0x00, 0x52, 0x00, 0x32, 0x00, 0x5c, 0x00,
     1374        0x70, 0x00, 0x72, 0x00, 0x69, 0x00, 0x6e, 0x00, 0x74, 0x00, 0x24, 0x00,
     1375        0x5c, 0x00, 0x78, 0x00, 0x36, 0x00, 0x34, 0x00, 0x5c, 0x00, 0x33, 0x00,
     1376        0x5c, 0x00, 0x50, 0x00, 0x53, 0x00, 0x43, 0x00, 0x52, 0x00, 0x49, 0x00,
     1377        0x50, 0x00, 0x54, 0x00, 0x35, 0x00, 0x2e, 0x00, 0x44, 0x00, 0x4c, 0x00,
     1378        0x4c, 0x00, 0x00, 0x00, 0x57, 0x00, 0x69, 0x00, 0x6e, 0x00, 0x64, 0x00,
     1379        0x6f, 0x00, 0x77, 0x00, 0x73, 0x00, 0x20, 0x00, 0x78, 0x00, 0x36, 0x00,
     1380        0x34, 0x00, 0x00, 0x00, 0x52, 0x00, 0x69, 0x00, 0x63, 0x00, 0x6f, 0x00,
     1381        0x68, 0x00, 0x20, 0x00, 0x41, 0x00, 0x66, 0x00, 0x69, 0x00, 0x63, 0x00,
     1382        0x69, 0x00, 0x6f, 0x00, 0x20, 0x00, 0x4d, 0x00, 0x50, 0x00, 0x20, 0x00,
     1383        0x35, 0x00, 0x30, 0x00, 0x30, 0x00, 0x30, 0x00, 0x20, 0x00, 0x50, 0x00,
     1384        0x53, 0x00, 0x00, 0x00, 0x88, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     1385        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
     1386};
     1387
     1388static bool getprinterdriver2_out_check(struct torture_context *tctx,
     1389                                        struct spoolss_GetPrinterDriver2 *r)
     1390{
     1391        torture_assert(tctx, r->out.info, "info");
     1392        torture_assert_int_equal(tctx, r->out.info->info6.version, SPOOLSS_DRIVER_VERSION_200X, "version");
     1393        torture_assert_str_equal(tctx, r->out.info->info6.driver_name, "Ricoh Aficio MP 5000 PS", "driver_name");
     1394        torture_assert_str_equal(tctx, r->out.info->info6.architecture, "Windows x64", "architecture");
     1395        torture_assert_str_equal(tctx, r->out.info->info6.driver_path, "\\\\RH-W2K8R2\\print$\\x64\\3\\PSCRIPT5.DLL", "driver_path");
     1396        torture_assert_str_equal(tctx, r->out.info->info6.data_file, "\\\\RH-W2K8R2\\print$\\x64\\3\\RI1403E3.PPD", "data_file");
     1397        torture_assert_str_equal(tctx, r->out.info->info6.config_file, "\\\\RH-W2K8R2\\print$\\x64\\3\\PS5UI.DLL", "config_file");
     1398        torture_assert_str_equal(tctx, r->out.info->info6.help_file, "\\\\RH-W2K8R2\\print$\\x64\\3\\PSCRIPT.HLP", "help_file");
     1399        torture_assert_str_equal(tctx, r->out.info->info6.help_file, "\\\\RH-W2K8R2\\print$\\x64\\3\\PSCRIPT.HLP", "help_file");
     1400        torture_assert_str_equal(tctx, r->out.info->info6.dependent_files[0], "\\\\RH-W2K8R2\\print$\\x64\\3\\PSCRIPT.NTF", "dependent_files[0]");
     1401        torture_assert_str_equal(tctx, r->out.info->info6.dependent_files[1], "\\\\RH-W2K8R2\\print$\\x64\\3\\PS_SCHM.GDL", "dependent_files[1]");
     1402        torture_assert_str_equal(tctx, r->out.info->info6.dependent_files[2], "\\\\RH-W2K8R2\\print$\\x64\\3\\RICOHPS7.INI", "dependent_files[2]");
     1403        torture_assert_str_equal(tctx, r->out.info->info6.dependent_files[3], "\\\\RH-W2K8R2\\print$\\x64\\3\\RIPSUI7.DLL", "dependent_files[3]");
     1404        torture_assert_str_equal(tctx, r->out.info->info6.dependent_files[4], "\\\\RH-W2K8R2\\print$\\x64\\3\\RIPSRES7.DLL", "dependent_files[4]");
     1405        torture_assert_str_equal(tctx, r->out.info->info6.dependent_files[5], "\\\\RH-W2K8R2\\print$\\x64\\3\\RICFG7.XML", "dependent_files[5]");
     1406        torture_assert(tctx, r->out.info->info6.monitor_name == NULL, "monitor_name");
     1407        torture_assert(tctx, r->out.info->info6.default_datatype == NULL, "default_datatype");
     1408        torture_assert(tctx, r->out.info->info6.previous_names == NULL, "previous_names");
     1409        /* driver_date              : Wed Jun 21 02:00:00 2006 CEST */
     1410        torture_assert_u64_equal(tctx, r->out.info->info6.driver_version, 0x000600011db04001ULL, "driver_version");
     1411        torture_assert_str_equal(tctx, r->out.info->info6.manufacturer_name, "Ricoh", "manufacturer_name");
     1412        torture_assert_str_equal(tctx, r->out.info->info6.manufacturer_url, "http://go.microsoft.com/fwlink/?LinkID=47&prd=10798&sbp=Printers", "manufacturer_url");
     1413        torture_assert_str_equal(tctx, r->out.info->info6.hardware_id, "ricohricoh_aficio_mp5063", "hardware_id");
     1414        torture_assert_str_equal(tctx, r->out.info->info6.provider, "Ricoh", "provider");
     1415        torture_assert_int_equal(tctx, *r->out.needed, 1160, "needed");
     1416        torture_assert_int_equal(tctx, *r->out.server_major_version, 0, "server_major_version");
     1417        torture_assert_int_equal(tctx, *r->out.server_minor_version, 0, "server_minor_version");
     1418        torture_assert_werr_ok(tctx, r->out.result, "result");
     1419
     1420        return true;
     1421}
     1422
    4481423struct torture_suite *ndr_spoolss_suite(TALLOC_CTX *ctx)
    4491424{
     
    4591434        torture_suite_add_ndr_pull_fn_test(suite, spoolss_GetPrinter, getprinter_resp_data, NDR_OUT, NULL );
    4601435
    461         /*torture_suite_add_ndr_pull_fn_test(suite, spoolss_GetPrinterData, getprinterdata_req_data, NDR_IN, NULL );
    462         torture_suite_add_ndr_pull_fn_test(suite, spoolss_GetPrinterData, getprinterdata_resp_data, NDR_OUT, NULL );*/
     1436        torture_suite_add_ndr_pull_fn_test(suite, spoolss_GetPrinterData, getprinterdata_req_data, NDR_IN, NULL );
     1437        torture_suite_add_ndr_pull_io_test(suite, spoolss_GetPrinterData, getprinterdata_req_data, getprinterdata_resp_data, NULL );
    4631438
    4641439        torture_suite_add_ndr_pull_fn_test(suite, spoolss_ReplyOpenPrinter, replyopenprinter_req_data, NDR_IN, NULL );
     
    4801455        torture_suite_add_ndr_pull_fn_test(suite, spoolss_EnumPrinterDataEx, enumprinterdataex_out_data, NDR_OUT, NULL );
    4811456
     1457        torture_suite_add_ndr_pull_io_test(suite, spoolss_EnumPrinterDataEx, enumprinterdataex_w2k8r2_in_data, enumprinterdataex_w2k8r2_out_data, NULL);
     1458
    4821459        torture_suite_add_ndr_pull_fn_test(suite, spoolss_EnumPrinterKey, enumprinterkey_in_data, NDR_IN, NULL );
    4831460        torture_suite_add_ndr_pull_fn_test(suite, spoolss_EnumPrinterKey, enumprinterkey_out_data, NDR_OUT, NULL );
     
    4901467
    4911468        torture_suite_add_ndr_pull_fn_test(suite, spoolss_GetPrinterDriverDirectory, getprinterdriverdir_in_data, NDR_IN, NULL );
    492         /* torture_suite_add_ndr_pull_fn_test(suite, spoolss_GetPrinterDriverDirectory, getprinterdriverdir_out_data, NDR_OUT, NULL ); */
     1469        torture_suite_add_ndr_pull_io_test(suite, spoolss_GetPrinterDriverDirectory, getprinterdriverdir_in_data, getprinterdriverdir_out_data, NULL );
    4931470
    4941471        torture_suite_add_ndr_pull_fn_test(suite, spoolss_AddPrinterDriverEx, addprinterdriverex_in_data, NDR_IN, NULL );
     1472
     1473        torture_suite_add_ndr_pull_fn_test(suite, spoolss_GetPrinterDriver2, getprinterdriver2_in_data, NDR_IN, getprinterdriver2_in_check);
     1474        torture_suite_add_ndr_pull_io_test(suite, spoolss_GetPrinterDriver2, getprinterdriver2_in_data, getprinterdriver2_out_data, getprinterdriver2_out_check);
    4951475
    4961476        return suite;
  • trunk/server/source4/torture/ndr/winreg.c

    r414 r745  
    244244{
    245245        torture_assert_int_equal(tctx, r->in.num_values, 1, "num values");
    246         torture_assert_str_equal(tctx, r->in.values[0].name->name, "HOMEPATH",
    247                                                          "name");
    248 
    249         torture_assert_int_equal(tctx, r->in.values[0].type, 0, "type");
    250         torture_assert_int_equal(tctx, r->in.values[0].offset, 0, "offset");
    251         torture_assert_int_equal(tctx, r->in.values[0].length, 0, "length");
    252         torture_assert_int_equal(tctx, *r->in.buffer_size, 76, "buffer size");
     246        torture_assert_str_equal(tctx, r->in.values_in[0].ve_valuename->name, "HOMEPATH", "name");
     247        torture_assert_int_equal(tctx, r->in.values_in[0].ve_valuename->length, 18, "name len");
     248        torture_assert_int_equal(tctx, r->in.values_in[0].ve_valuename->size, 18, "name size");
     249        torture_assert_int_equal(tctx, r->in.values_in[0].ve_valuelen, 0, "length");
     250        torture_assert_int_equal(tctx, r->in.values_in[0].ve_valueptr, 0, "ve_valueptr");
     251        torture_assert_int_equal(tctx, r->in.values_in[0].ve_type, 0, "type");
     252        torture_assert_int_equal(tctx, *r->in.buffer_size, 32, "buffer size");
    253253
    254254        return true;
     
    275275                                          struct winreg_QueryMultipleValues *r)
    276276{
    277         torture_assert_str_equal(tctx, r->out.values[0].name->name, "HOMEPATH",
    278                                                          "name");
    279 
    280         torture_assert_int_equal(tctx, r->out.values[0].type, 0, "type");
    281         torture_assert_int_equal(tctx, r->out.values[0].offset, 0, "offset");
    282         torture_assert_int_equal(tctx, r->out.values[0].length, 0, "length");
     277        torture_assert_str_equal(tctx, r->out.values_out[0].ve_valuename->name, "HOMEPATH", "name");
     278        torture_assert_int_equal(tctx, r->out.values_out[0].ve_type, 0, "type");
     279        torture_assert_int_equal(tctx, r->out.values_out[0].ve_valuelen, 0, "length");
    283280        /* FIXME: r->out.buffer */
    284281        torture_assert_int_equal(tctx, *r->out.buffer_size, 76, "buffer size");
    285         torture_assert_werr_equal(tctx, r->out.result, WERR_MORE_DATA,
    286                                                                   "return code");
    287 
     282        torture_assert_werr_equal(tctx, r->out.result, WERR_MORE_DATA, "return code");
     283
     284        return true;
     285}
     286
     287const uint8_t querymultiplevalues2_in_data[] = {
     288        0x00, 0x00, 0x00, 0x00, 0x98, 0xe4, 0xdf, 0x3c, 0x70, 0xde, 0x69, 0x4a,
     289        0x90, 0xb4, 0x85, 0x36, 0x33, 0x79, 0x89, 0x32, 0x01, 0x00, 0x00, 0x00,
     290        0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00,
     291        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     292        0x0a, 0x00, 0x0a, 0x00, 0x04, 0x00, 0x02, 0x00, 0x05, 0x00, 0x00, 0x00,
     293        0x00, 0x00, 0x00, 0x00, 0x05, 0x00, 0x00, 0x00, 0x54, 0x00, 0x45, 0x00,
     294        0x4d, 0x00, 0x50, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
     295        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
     296};
     297
     298static bool querymultiplevalues2_in_check(struct torture_context *tctx,
     299                                          struct winreg_QueryMultipleValues2 *r)
     300{
     301        torture_assert_int_equal(tctx, r->in.num_values, 1, "num values");
     302        torture_assert_str_equal(tctx, r->in.values_in[0].ve_valuename->name, "TEMP", "name");
     303        torture_assert_int_equal(tctx, r->in.values_in[0].ve_valuename->length, 10, "name len");
     304        torture_assert_int_equal(tctx, r->in.values_in[0].ve_valuename->size, 10, "name size");
     305        torture_assert_int_equal(tctx, r->in.values_in[0].ve_valuelen, 0, "length");
     306        torture_assert_int_equal(tctx, r->in.values_in[0].ve_valueptr, 0,  "ve_valueptr");
     307        torture_assert_int_equal(tctx, r->in.values_in[0].ve_type, 0, "type");
     308        torture_assert_int_equal(tctx, *r->in.offered, 0, "buffer size");
     309
     310        return true;
     311}
     312
     313const uint8_t querymultiplevalues2_out_data[] = {
     314        0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
     315        0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     316        0x00, 0x00, 0x00, 0x00, 0x08, 0x00, 0x0a, 0x00, 0x04, 0x00, 0x02, 0x00,
     317        0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00,
     318        0x54, 0x00, 0x45, 0x00, 0x4d, 0x00, 0x50, 0x00, 0x00, 0x00, 0x00, 0x00,
     319        0x42, 0x00, 0x00, 0x00, 0xea, 0x00, 0x00, 0x00
     320};
     321
     322static bool querymultiplevalues2_out_check(struct torture_context *tctx,
     323                                           struct winreg_QueryMultipleValues2 *r)
     324{
    288325        return true;
    289326}
     
    324361static bool openkey_in_check(struct torture_context *tctx, struct winreg_OpenKey *r)
    325362{
    326         torture_assert_int_equal(tctx, r->in.unknown, 0, "unknown");
     363        torture_assert_int_equal(tctx, r->in.options, 0, "unknown");
    327364        torture_assert_int_equal(tctx, r->in.access_mask, 0x02000000, "access mask");
    328365        torture_assert_str_equal(tctx, r->in.keyname.name, "spottyfoot", "keyname");
     
    544581        torture_suite_add_ndr_pull_fn_test(suite, winreg_QueryValue, queryvalue_out_data, NDR_OUT, queryvalue_out_check );
    545582
    546         /*torture_suite_add_ndr_pull_fn_test(suite, winreg_QueryMultipleValues, querymultiplevalues_in_data, NDR_IN, querymultiplevalues_in_check );
    547         torture_suite_add_ndr_pull_fn_test(suite, winreg_QueryMultipleValues, querymultiplevalues_out_data, NDR_OUT, querymultiplevalues_out_check );*/
     583        torture_suite_add_ndr_pull_fn_test(suite, winreg_QueryMultipleValues, querymultiplevalues_in_data, NDR_IN, querymultiplevalues_in_check );
     584        torture_suite_add_ndr_pull_io_test(suite, winreg_QueryMultipleValues, querymultiplevalues_in_data, querymultiplevalues_out_data, querymultiplevalues_out_check);
     585
     586        torture_suite_add_ndr_pull_fn_test(suite, winreg_QueryMultipleValues2, querymultiplevalues2_in_data, NDR_IN, querymultiplevalues2_in_check );
     587        torture_suite_add_ndr_pull_io_test(suite, winreg_QueryMultipleValues2, querymultiplevalues2_in_data, querymultiplevalues2_out_data, querymultiplevalues2_out_check);
    548588
    549589        torture_suite_add_ndr_pull_fn_test(suite, winreg_FlushKey, flushkey_in_data, NDR_IN, flushkey_in_check );
Note: See TracChangeset for help on using the changeset viewer.