# # This file and its contents are supplied under the terms of the # Common Development and Distribution License ("CDDL"), version 1.0. # You may only use this file in accordance with the terms of version # 1.0 of the CDDL. # # A full copy of the text of the CDDL should have accompanied this # source. A copy of the CDDL is also available via the Internet at # http://www.illumos.org/license/CDDL. # # # Copyright (c) 2012 by Delphix. All rights reserved. # Copyright 2020 Tintri by DDN, Inc. All rights reserved. # libmlrpc Unit Test Suite README 1. Building and installing this Unit Test Suite 2. Running this Unit Test Suite 3. Test results -------------------------------------------------------------------------------- 1. Building and installing this Unit Test Suite This Test Suite runs under the testrunner framework (which can be installed as pkg:/system/test/testrunner). To build both this Unit Test Suite and the testrunner without running a full nightly: build_machine$ bldenv [-d] build_machine$ cd $SRC/test build_machine$ dmake install build_machine$ cd $SRC/pkg build_machine$ dmake install Then set the publisher on the test machine to point to your repository and install the Utils Unit Test Suite. test_machine# pkg install pkg:/system/test/libmlrpctest Note, the framework will be installed automatically, as this test suite depends on it. 2. Running this Unit Test Suite The pre-requisites for running the this Unit Test Suite are: - A non-root user with the ability to sudo(1M) to root without a password or the root user must run the test. (The samlogon test requires a user with 'solaris.smf.read.smb' authorization, such as root.) - The libmlrpc library must be installed. - The system must be joined to the domain. - Certain information must be collected from a packet capture performing NTLM authentication against the system using a domain user, all from the NetrSamLogon(Ex) request: - IDENTITY_INFO/Domain - IDENTITY_INFO/Acct Name - IDENTITY_INFO/Wkst Name - three binary files, exported from Wireshark: 1. NETWORK_INFO/Challenge (8 bytes) 2. First NETWORK_INFO/'LM Chal resp'/Bytes array/'LM Chal resp' (variable - the first is NT) 3. Second NETWORK_INFO/'LM Chal resp'/Bytes array/'LM Chal resp' (variable - the second is LM) - Enter configuration data in /opt/libmlrpc-tests/cfg/samlogon.config. Once the pre-requisites are satisfied, simply run the script: test_machine$ /opt/libmlrpc-tests/bin/libmlrpctest 3. Test results While the Unit Test Suite is running, one informational line is printed at the end of each test, and a results summary is printed at the end of the run. The results summary includes the location of the complete logs, which is of the form /var/tmp/test_results/.