none
[MS-NSPI] Data consistency check requirements. RRS feed

  • Question

  • I'm reviewing [MS-NSPI] "Name Service Provider Interface (NSPI) Protocol Specification" (v20101001) and have a question about the NDR data checks.

    3.1.4 "Message Processing Events and Sequencing Rules"  states:
    This protocol MUST indicate to the RPC runtime that it is to perform a strict NDR data consistency check at target level 5.0, as specified in [MS-RPCE].
    This protocol MUST indicate to the RPC runtime that it is to perform a strict NDR data consistency check at target level 6.0, as specified in [MS-RPCE].

    Section 3.2.4 of [MS-NSPI] is similar.

    I recognise that level 6.0 is a superset of level 5.0, but that phrasing (along with the requirement for level 5.0 in Section 2.1 of [MS-NSPI]) makes it unclear whether the requirement is for level 5.0 or level 6.0.

    Question: Does the protocol require NDR data consistency check at target level 6.0 (which includes all the level 5.0 checks), or is level 5.0 sufficient for interoperability?

    Brad

    Wednesday, November 3, 2010 10:14 AM

Answers

  • Hi Brad - I am pleased to be able to provide the following answer to your question about the version inconsistencies in [MS-NSPI] sections 2.1, 2.1.4 and 3.1.4.

    [MS-NSPI] section 2.1 Transport (http://msdn.microsoft.com/en-us/library/dd942339(v=PROT.10).aspx) will be updated to include the following additonal information:

    The target level depends on the version of Windows which the server is running on. A target level of 6.0 is enforced by Windows Server 2008 and above. A target level of 5.0 is enforced by Windows Server 2003 and below.

    Please let me know if this answers your question satisfactorily; if so, I will consider your question resolved. Thanks for helping us improve our documentation.

    Regards,
    Bill Wesse - US-CSS DSC Protocol Team

    • Marked as answer by Brad Hards Wednesday, November 24, 2010 12:33 AM
    Tuesday, November 23, 2010 8:01 PM

All replies

  • Brad,

       One of our team member will take a look at your question and respond to you soon.

     

    Thanks!

     


    Hongwei Sun -MSFT
    Wednesday, November 3, 2010 2:56 PM
  • Good morning Brad. I will begin my investigation into the level check requirement ambiguity you noted concerning
    [MS-NSPI] sections 3.1.4 & 3.2.4.

    I will follow up with you as soon as I have some results, and will file a TDI as needed to disambiguate the statements.

    Regards,
    Bill Wesse - MSFT

     

    Wednesday, November 3, 2010 4:25 PM
  • Hi Brad - I have filed a TDI concerning this, requesting clarification in [MS-NSPI] section 2.1, concerning the target level information. I will keep you updated on the progress on that TDI, and to work with you in the interim, per your needs. I have included a raft of references to help guide others reading this.

    As you noted:

    [MS-NSPI] 2.1 Transport states "This protocol configures the RPC runtime to perform a strict Network Data Representation (NDR) data consistency check at target level 5.0 as specified in [MS-RPCE] (section 3)."

    I see this is not totally in line with sections 3.1.4 & 3.2.4.

    NDR consistency checking was added gradually to the RPC runtime over time, and is controlled during build by MIDL compiler options:

    - Target level 5.0 is enabled by the “/robust” switch, and may be disabled by "/no_robust".
    - Target level 6.0 is enabled by the "/target NT60" switch.
    - Target level for any version listed below is enabled by the '/target {system}'.

    See MSDN: "/target switch"
    http://msdn.microsoft.com/en-us/library/aa367371.aspx
    ...
    The /target switch automatically activates additional switches, based on the operating system, as specified in the following table:

    Operating     /target
    System        level   Switches Activated
    ============= ======= ======================================
    Windows 2000  NT50    /Oicf /error all /robust
    Windows XP    NT51    /Oicf /error all /robust /protocol all
    Windows Vista NT60    /Oicf /error all /robust /protocol all

    Target versioning also accomodated 'downlevel' clients, such Windows 2000.

    Windows 5.0 6.0
    ======= === ===
    NT        n   n
    2000      y   n
    Xp        y   n
    2003      y   n
    2003R2    y   n
    Vista     y   y
    2008      y   y
    2008R2    y   y
    Win 7     y   y

    I have included all the relevant references below.

    ==============================================================================
    [MS-NSPI] Name Service Provider Interface (NSPI) Protocol Specification
    [MS-NSPI] 2 Messages
    [MS-NSPI] 2.1 Transport
    http://msdn.microsoft.com/en-us/library/dd942339.aspx

    This protocol configures the RPC runtime to perform a strict Network Data Representation (NDR) data consistency check at target level 5.0 as specified in [MS-RPCE] (section 3).

    [MS-NSPI] 3.1 Server Details
    [MS-NSPI] 3.1.4 Message Processing Events and Sequencing Rules
    http://msdn.microsoft.com/en-us/library/dd941939.aspx

    [MS-NSPI] 3.2 Client Details
    [MS-NSPI] 3.2.4 Message Processing Events and Sequencing Rules
    http://msdn.microsoft.com/en-us/library/dd941972.aspx

    The previous 2 link target contents contain:

    This protocol MUST indicate to the RPC runtime that it is to perform a strict NDR data consistency check at target level 5.0, as specified in [MS-RPCE] (section 3).

    This protocol MUST indicate to the RPC runtime that it is to perform a strict NDR data consistency check at target level 6.0, as specified in [MS-RPCE] (section 3).

    Regards,
    Bill Wesse - MSFT

     

    Thursday, November 4, 2010 2:42 PM
  • Hi Brad. I don't have confirmation on the target level changes I expect to be made in [MS-NSPI] 2.1 Transport
    (http://msdn.microsoft.com/en-us/library/dd942339.aspx).

    I expect it would be something like this:

    Current text:

    This protocol configures the RPC runtime to perform a strict Network Data Representation (NDR) data consistency check at target level 5.0 as specified in [MS-RPCE] (section 3).

    Probable change:

    This protocol configures the RPC runtime to perform a strict Network Data Representation (NDR) data consistency check at target levels 5.0 and 6.0 as specified in [MS-RPCE] (section 3).

    Regards,
    Bill Wesse - MSFT

    Thursday, November 11, 2010 3:53 PM
  • Hi Brad. I expect confirmation within the next week concerning the target level changes to be made in [MS-NSPI] 2.1 Transport
    (http://msdn.microsoft.com/en-us/library/dd942339.aspx).

    Thanks for your patience!

    Regards,
    Bill Wesse - MSFT

    • Proposed as answer by Bill Wesse Tuesday, November 23, 2010 8:01 PM
    Thursday, November 18, 2010 3:44 PM
  • Hi Brad - I am pleased to be able to provide the following answer to your question about the version inconsistencies in [MS-NSPI] sections 2.1, 2.1.4 and 3.1.4.

    [MS-NSPI] section 2.1 Transport (http://msdn.microsoft.com/en-us/library/dd942339(v=PROT.10).aspx) will be updated to include the following additonal information:

    The target level depends on the version of Windows which the server is running on. A target level of 6.0 is enforced by Windows Server 2008 and above. A target level of 5.0 is enforced by Windows Server 2003 and below.

    Please let me know if this answers your question satisfactorily; if so, I will consider your question resolved. Thanks for helping us improve our documentation.

    Regards,
    Bill Wesse - US-CSS DSC Protocol Team

    • Marked as answer by Brad Hards Wednesday, November 24, 2010 12:33 AM
    Tuesday, November 23, 2010 8:01 PM