CDRouter Storage Test Summaries (Full)

Test Case Descriptions

  • Modules: 10
  • Test Cases: 174

Below is a full description of the testcases in each module


smb.tcl

SMB IPv4 storage tests

Test Name Synopsis
Verify SMB server responds to a service lookup smb_1 Verify SMB server responds to a service lookup


    step 1. Resolve the SMB server name using DNS or NetBIOS
    step 2. Start a new SMB client on the LAN
    step 3. Verify that the SMB client is able to log in to the SMB server and
            perform a service lookup
    step 4. Verify that the SMB server responds to the service lookup request
Test Name Synopsis
Verify SMB server allows directory listing smb_2 Verify SMB server allows directory listing


    step 1. Resolve the SMB server name using DNS or NetBIOS
    step 2. Start a new SMB client on the LAN
    step 3. Verify that the SMB client is able to log in to the SMB server and
            perform a directory listing
    step 4. Verify that the SMB server responds to the directory listing

    NOTE: CDRouter's SMB client will perform a directory listing on the folder
    specified by the testvars share and folder for the applicable smbuser
Test Name Synopsis
Verify SMB server allows file copy to server smb_10 Verify SMB server allows file copy to server


    step 1. Resolve the SMB server name using DNS or NetBIOS
    step 2. Start a new SMB client on the LAN
    step 3. Verify that the SMB client is able to copy a file to the
            specified share location on the SMB server
    step 4. Verify that the SMB client is able to delete the file copied in
            step 3

    NOTE: This test is only performed if the testvar permission is set to
    "ReadWrite" for the smbuser being tested.
Test Name Synopsis
Verify SMB server allows file copy from server smb_11 Verify SMB server allows file copy from server


    step 1. Resolve the SMB server name using DNS or NetBIOS
    step 2. Start a new SMB client on the LAN
    step 3. Verify that the SMB client is able to copy a file to the
            specified share location on the SMB server
    step 4. Verify that the SMB client is able to copy the file created
            in step 3 from the server back to the local system
    step 5. Verify that the SMB client is able to delete the file copied in
            step 3

    NOTE: This test is only performed if the testvar permission is set to
    "ReadWrite" for the smbuser being tested.
Test Name Synopsis
Verify SMB server allows creation and deletion of new folders smb_12 Verify SMB server allows creation and deletion of new folders


    step 1. Resolve the SMB server name using DNS or NetBIOS
    step 2. Start a new SMB client on the LAN
    step 3. Verify that the SMB client is able to create a new folder within the
            specified share location on the SMB server
    step 4. Verify that the SMB client is able to copy a file to the new folder
            created in step 3
    step 5. Verify that the SMB client is able to delete the file copied in
            step 4
    step 6. Verify that the SMB client is able to delete the folder created in
            step 3

    NOTE: This test is only performed if the testvar permission is set to
    "ReadWrite" for the smbuser being tested.
Test Name Synopsis
Verify SMB server allows files to be renamed smb_13 Verify SMB server allows files to be renamed


    step 1. Resolve the SMB server name using DNS or NetBIOS
    step 2. Start a new SMB client on the LAN
    step 3. Verify that the SMB client is able to copy a file to the
            specified share location on the SMB server
    step 4. Verify that the SMB client is able to rename the file copied in
            step 3
    step 5. Verify that the SMB client is able to delete the file renamed in
            step 4

    NOTE: This test is only performed if the testvar permission is set to
    "ReadWrite" for the smbuser being tested.
Test Name Synopsis
Verify SMB server allows folders to be renamed smb_14 Verify SMB server allows folders to be renamed


    step 1. Resolve the SMB server name using DNS or NetBIOS
    step 2. Start a new SMB client on the LAN
    step 3. Verify that the SMB client is able to create a new folder within the
            specified share location on the SMB server
    step 4. Verify that the SMB client is able to copy a file to the new folder
            created in step 3
    step 5. Rename the folder created in step 3
    step 6. Verify that the SMB client is able to delete the file copied in
            step 4
    step 7. Verify that the SMB client is able to delete the folder renamed in
            step 4

    NOTE: This test is only performed if the testvar permission is set to
    "ReadWrite" for the smbuser being tested.
Test Name Synopsis
Perform SMB read-after-write test to verify file integrity smb_20 Perform SMB read-after-write test to verify file integrity


    step 1. Resolve the SMB server name using DNS or NetBIOS
    step 2. Start a new SMB client on the LAN
    step 3. Verify that the SMB client is able to copy a file to the
            specified share location on the SMB server
    step 4. Verify the SMB client is able to copy the file generated in step 3
            from the SMB server back to the local system
    step 5. Perform an MD5 checksum on the original file copied to the SMB
            server in step 3 and from the SMB server in step 4
    step 6. Verify that the MD5 checksums in step 5 are the same
    step 7. Verify that the SMB client is able to delete the file copied in
            step 3

    NOTE: This test is only performed if the testvar permission is set to
    "ReadWrite" for the smbuser being tested.
Test Name Synopsis
Verify SMB server rejects clients with invalid password smb_30 Verify SMB server rejects clients with invalid password


    step 1. Resolve the SMB server name using DNS or NetBIOS
    step 2. Start a new SMB client on the LAN
    step 3. Verify that the SMB client is not able to log in to the SMB server
            and perform a directory listing using an invalid password

    NOTE: CDRouter's SMB client will perform a directory listing on the folder
    specified by the testvars share and folder for the applicable smbuser using
    an invalid password
Test Name Synopsis
Verify SMB server rejects unknown clients smb_31 Verify SMB server rejects unknown clients


    step 1. Resolve the SMB server name using DNS or NetBIOS
    step 2. Start a new SMB client on the LAN
    step 3. Verify that the SMB client is not able to log in to the SMB server
            and perform a directory listing using an unknown username

    NOTE: CDRouter's SMB client will perform a directory listing on the folder
    specified by the testvars share and folder using an unknown username
Test Name Synopsis
Verify SMB server does not allow file copy for ReadOnly clients smb_40 Verify SMB server does not allow file copy for ReadOnly clients


    step 1. Resolve the SMB server name using DNS or NetBIOS
    step 2. Start a new SMB client on the LAN
    step 3. Verify that the SMB client is not able to copy a file to the
            specified share location on the SMB server
    step 4. Verify that the ReadOnly SMB client is able to perform a directory
            listing

    NOTE: This test is only performed if the testvar permission is set to
    "ReadOnly" for the smbuser being tested.
Test Name Synopsis
Verify SMB server does not allow folder creation for ReadOnly clients smb_41 Verify SMB server does not allow folder creation for ReadOnly clients


    step 1. Resolve the SMB server name using DNS or NetBIOS
    step 2. Start a new SMB client on the LAN
    step 3. Verify that the SMB client is not able to create a new folder in the
            specified share location on the SMB server

    NOTE: This test is only performed if the testvar "permission" is set to
    "ReadOnly" for the smbuser being tested.
Test Name Synopsis
Verify SMB server supports simultaneous access from two clients smb_50 Verify SMB server supports simultaneous access from two clients


    step 1. Resolve the SMB server name using DNS or NetBIOS
    step 2. Start a new SMB client on the LAN
    step 3. Repeat step 2 to create a second instance of the SMB client on the
            same LAN DHCP host
    step 4. Verify that both SMB clients are able to copy a file to the
            specified share location simultaneously
    step 5. Verify that both SMB clients are able to copy the files
            generated in step 4 from the specified share location simultaneously
    step 6. Verify that both SMB clients are able to delete the files copied in
            step 3 simultaneously

    NOTE: This is a basic scaling test designed to verify that the SMB server
    allows simultaneous access from two instances of the same SMB client on the
    same LAN DHCP host.

    NOTE: This test is only performed if the testvar permission is set to
    "ReadWrite" for the smbuser being tested.
Test Name Synopsis
Verify all configured SMB shares and users smb_51 Verify all configured SMB shares and users


    step 1. Resolve the SMB server name using DNS or NetBIOS
    step 2. Start a new SMB client on the LAN
    step 3. Verify that the SMB client is able to copy a file to the specified
            share location
    step 4. Verify that the SMB client is able to copy the file generated in
            step 3 from the specified share location
    step 5. Verify that the SMB client is able to delete the file copied in
            step 3 from the SMB server
    step 6. Repeat steps 3 through 5 for all configured smbusers

    NOTE: This scaling test is designed to verify that all of the SMB client
    configurations, defined as "smbuser" testvar_groups, work as expected.

    NOTE: Up to 20 SMB client configurations can be created. Each SMB client
    configuration will be created and verified sequentially on the same LAN DHCP
    host.

    NOTE: If the testvar permission is set to "ReadOnly" for a particular
    SMB client configuration, only a directory listing will be performed as part
    of this test.
Test Name Synopsis
Verify the maximum number of SMB sessions smb_52 Verify the maximum number of SMB sessions


    step 1. Resolve the SMB server name using DNS or NetBIOS
    step 2. Create a new DHCP client on the LAN and verify that the client
            receives an IP address from the DUT's LAN DHCP server
    step 3. Repeat step 1 until the entire DHCP pool on the DUT is exhausted or
            the maximum number of SMB sessions, as defined by the testvar
            storageSmbMaxSessions, is reached
    step 4. Start a new SMB client using the LAN host 1
    step 5. Verify that the SMB client is able to copy a file to the specified
            share location
    step 6. Verify that the SMB client is able to copy the file generated in
            step 5 from the specified share location
    step 7. Verify that the SMB client is able to delete the file copied in
            step 5 from the SMB server
    step 8. Repeat steps 4 through 7 for all LAN DHCP clients created in step 3

    NOTE: This scaling test is designed to verify the maximum number of SMB
    client connections. Each SMB client connection will use the same SMB user
    and will be created on a unique LAN DHCP host.

    NOTE: The maximum number of SMB client connections created is specified by
    the testvar storageSmbMaxSessions, which defaults to 20. If the DHCP pool
    is smaller than the storageSmbMaxSessions value, only enough clients to
    exhaust the DHCP pool will be created.

    NOTE: If the testvar permission is set to "ReadOnly" for a particular
    SMB user, only a directory listing will be performed.

    NOTE: This test will prefer "ReadWrite" SMB users over "ReadOnly" users.
    However, it will still run if all users configured as "ReadOnly".

ftp.tcl

FTP IPv4 storage tests

Test Name Synopsis
Verify FTP server allows directory listing ftp_2 Verify FTP server allows directory listing


    step 1. Resolve the FTP server name using DNS or NetBIOS
    step 2. Start a new FTP client on the LAN
    step 3. Verify that the FTP client is able to log in to the FTP server and
            perform a directory listing
    step 4. Verify that the FTP server responds to the directory listing

    NOTE: CDRouter's FTP client will perform a directory listing on the
    directory specified by the testvar path for the applicable ftpuser


    References:

    IETF RFC 959 "FILE TRANSFER PROTOCOL (FTP)"

    https://tools.ietf.org/html/rfc959
Test Name Synopsis
Verify FTP server allows name list command ftp_3 Verify FTP server allows name list command


    step 1. Resolve the FTP server name using DNS or NetBIOS
    step 2. Start a new FTP client on the LAN
    step 3. Verify that the FTP client is able to log in to the FTP server and
            perform a name list command
    step 4. Verify that the FTP server responds to the name list

    NOTE: CDRouter's FTP client will perform a directory listing on the
    directory specified by the testvar path for the applicable ftpuser


    References:

    IETF RFC 959 "FILE TRANSFER PROTOCOL (FTP)"

    https://tools.ietf.org/html/rfc959
Test Name Synopsis
Verify FTP server allows file upload ftp_10 Verify FTP server allows file upload


    step 1. Resolve the FTP server name using DNS or NetBIOS
    step 2. Start a new FTP client on the LAN
    step 3. Verify that the FTP client is able to upload a file to the
            specified directory on the FTP server
    step 4. Verify that the FTP client is able to delete the file uploaded in
            step 3

    NOTE: This test is only performed if the testvar permission is set to
    "ReadWrite" for the ftpuser being tested.


    References:

    IETF RFC 959 "FILE TRANSFER PROTOCOL (FTP)"

    https://tools.ietf.org/html/rfc959
Test Name Synopsis
Verify FTP server allows file download ftp_11 Verify FTP server allows file download


    step 1. Resolve the FTP server name using DNS or NetBIOS
    step 2. Start a new FTP client on the LAN
    step 3. Verify that the FTP client is able to upload a file to the
            specified directory on the FTP server
    step 4. Verify that the FTP client is able to download the file uploaded
            in step 3 back to the local system
    step 5. Verify that the FTP client is able to delete the file uploaded in
            step 3

    NOTE: This test is only performed if the testvar permission is set to
    "ReadWrite" for the ftpuser being tested.


    References:

    IETF RFC 959 "FILE TRANSFER PROTOCOL (FTP)"

    https://tools.ietf.org/html/rfc959
Test Name Synopsis
Verify FTP server allows creation and deletion of new directories ftp_12 Verify FTP server allows creation and deletion of new directories


    step 1. Resolve the FTP server name using DNS or NetBIOS
    step 2. Start a new FTP client on the LAN
    step 3. Verify that the FTP client is able to create a new directory within
            the specified share location on the FTP server
    step 4. Verify that the FTP client is able to upload a file to the new
            directory created in step 3
    step 5. Verify that the FTP client is able to delete the file uploaded in
            step 4
    step 6. Verify that the FTP client is able to delete the directory created
            in step 3

    NOTE: This test is only performed if the testvar permission is set to
    "ReadWrite" for the ftpuser being tested.


    References:

    IETF RFC 959 "FILE TRANSFER PROTOCOL (FTP)"

    https://tools.ietf.org/html/rfc959
Test Name Synopsis
Verify FTP server allows files to be renamed ftp_13 Verify FTP server allows files to be renamed


    step 1. Resolve the FTP server name using DNS or NetBIOS
    step 2. Start a new FTP client on the LAN
    step 3. Verify that the FTP client is able to upload a file to the
            specified share location on the FTP server
    step 4. Verify that the FTP client is able to rename the file uploaded in
            step 3
    step 5. Verify that the FTP client is able to delete the file renamed in
            step 4

    NOTE: This test is only performed if the testvar permission is set to
    "ReadWrite" for the ftpuser being tested.


    References:

    IETF RFC 959 "FILE TRANSFER PROTOCOL (FTP)"

    https://tools.ietf.org/html/rfc959
Test Name Synopsis
Verify FTP server allows directories to be renamed ftp_14 Verify FTP server allows directories to be renamed


    step 1. Resolve the FTP server name using DNS or NetBIOS
    step 2. Start a new FTP client on the LAN
    step 3. Verify that the FTP client is able to create a new folder within the
            specified share location on the FTP server
    step 4. Verify that the FTP client is able to upload a file to the new
            directory created in step 3
    step 5. Rename the directory created in step 3
    step 6. Verify that the FTP client is able to delete the file uploaded in
            step 4
    step 7. Verify that the FTP client is able to delete the directory renamed
            in step 5

    NOTE: This test is only performed if the testvar permission is set to
    "ReadWrite" for the ftpuser being tested.


    References:

    IETF RFC 959 "FILE TRANSFER PROTOCOL (FTP)"

    https://tools.ietf.org/html/rfc959
Test Name Synopsis
Perform FTP read-after-write test to verify file integrity ftp_20 Perform FTP read-after-write test to verify file integrity


    step 1. Resolve the FTP server name using DNS or NetBIOS
    step 2. Start a new FTP client on the LAN
    step 3. Verify that the FTP client is able to upload a file to the
            specified directory on the FTP server
    step 4. Verify the FTP client is able to download the file generated in
            step 3 from the FTP server back to the local system
    step 5. Perform an MD5 checksum on the original file uploaded to the FTP
            server in step 3 and downloaded from the FTP server in step 4
    step 6. Verify that the MD5 checksums in step 5 are the same
    step 7. Verify that the FTP client is able to delete the file uploaded in
            step 3

    NOTE: This test is only performed if the testvar permission is set to
    "ReadWrite" for the ftpuser being tested.


    References:

    IETF RFC 959 "FILE TRANSFER PROTOCOL (FTP)"

    https://tools.ietf.org/html/rfc959
Test Name Synopsis
Perform FTP read-after-write test to verify file integrity using active mode ftp_21 Perform FTP read-after-write test to verify file integrity using active mode


    step 1. Resolve the FTP server name using DNS or NetBIOS
    step 2. Start a new FTP client on the LAN
    step 3. Verify that the FTP client is able to upload a file to the
            specified directory on the FTP server using an active mode
            connection
    step 4. Verify the FTP client is able to download the file generated in
            step 3 from the FTP server back to the local system using an active
            mode connection
    step 5. Perform an MD5 checksum on the original file uploaded to the FTP
            server in step 3 and downloaded from the FTP server in step 4
    step 6. Verify that the MD5 checksums in step 5 are the same
    step 7. Verify that the FTP client is able to delete the file uploaded in
            step 3

    NOTE: This test is only performed if the testvar permission is set to
    "ReadWrite" for the ftpuser being tested.


    References:

    IETF RFC 959 "FILE TRANSFER PROTOCOL (FTP)"

    https://tools.ietf.org/html/rfc959
Test Name Synopsis
Perform FTP read-after-write test to verify file integrity using active mode with EPRT disabled ftp_22 Perform FTP read-after-write test to verify file integrity using active mode with EPRT disabled


    step 1. Resolve the FTP server name using DNS or NetBIOS
    step 2. Start a new FTP client on the LAN
    step 3. Verify that the FTP client is able to upload a file to the
            specified directory on the FTP server using an active mode
            connection with the EPRT command disabled
    step 4. Verify the FTP client is able to download the file generated in
            step 3 from the FTP server back to the local system using an active
            mode connection with the EPRT command disabled
    step 5. Perform an MD5 checksum on the original file uploaded to the FTP
            server in step 3 and downloaded from the FTP server in step 4
    step 6. Verify that the MD5 checksums in step 5 are the same
    step 7. Verify that the FTP client is able to delete the file uploaded in
            step 3

    NOTE: This test is only performed if the testvar permission is set to
    "ReadWrite" for the ftpuser being tested.


    References:

    IETF RFC 959 "FILE TRANSFER PROTOCOL (FTP)"

    https://tools.ietf.org/html/rfc959
Test Name Synopsis
Perform FTP read-after-write test to verify file integrity using passive mode with EPSV disabled ftp_23 Perform FTP read-after-write test to verify file integrity using passive mode with EPSV disabled


    step 1. Resolve the FTP server name using DNS or NetBIOS
    step 2. Start a new FTP client on the LAN
    step 3. Verify that the FTP client is able to upload a file to the
            specified directory on the FTP server using a passive mode
            connection with the EPSV command disabled
    step 4. Verify the FTP client is able to download the file generated in
            step 3 from the FTP server back to the local system using a passive
            mode connection with the EPSV command disabled
    step 5. Perform an MD5 checksum on the original file uploaded to the FTP
            server in step 3 and downloaded from the FTP server in step 4
    step 6. Verify that the MD5 checksums in step 5 are the same
    step 7. Verify that the FTP client is able to delete the file uploaded in
            step 3

    NOTE: This test is only performed if the testvar permission is set to
    "ReadWrite" for the ftpuser being tested.


    References:

    IETF RFC 959 "FILE TRANSFER PROTOCOL (FTP)"

    https://tools.ietf.org/html/rfc959
Test Name Synopsis
Verify FTP server rejects clients with invalid password ftp_30 Verify FTP server rejects clients with invalid password


    step 1. Resolve the FTP server name using DNS or NetBIOS
    step 2. Start a new FTP client on the LAN
    step 3. Verify that the FTP client is not able to log in to the FTP server
            and perform a directory listing using an invalid password

    NOTE: CDRouter's FTP client will perform a directory listing on the
    directory specified by the testvar path for the applicable ftpuser using
    an invalid password


    References:

    IETF RFC 959 "FILE TRANSFER PROTOCOL (FTP)"

    https://tools.ietf.org/html/rfc959
Test Name Synopsis
Verify FTP server rejects unknown clients ftp_31 Verify FTP server rejects unknown clients


    step 1. Resolve the FTP server name using DNS or NetBIOS
    step 2. Start a new FTP client on the LAN
    step 3. Verify that the FTP client is not able to log in to the FTP server
            and perform a directory listing using an unknown username

    NOTE: CDRouter's FTP client will perform a directory listing on the
    path specified by the testvar path using an unknown username


    References:

    IETF RFC 959 "FILE TRANSFER PROTOCOL (FTP)"

    https://tools.ietf.org/html/rfc959
Test Name Synopsis
Verify FTP server does not allow file upload for ReadOnly clients ftp_40 Verify FTP server does not allow file upload for ReadOnly clients


    step 1. Resolve the FTP server name using DNS or NetBIOS
    step 2. Start a new FTP client on the LAN
    step 3. Verify that the FTP client is not able to upload a file to the
            specified path on the FTP server
    step 4. Verify that the ReadOnly FTP client is able to perform a directory
            listing

    NOTE: This test is only performed if the testvar permission is set to
    "ReadOnly" for the ftpuser being tested.


    References:

    IETF RFC 959 "FILE TRANSFER PROTOCOL (FTP)"

    https://tools.ietf.org/html/rfc959
Test Name Synopsis
Verify FTP server does not allow directory creation for ReadOnly clients ftp_41 Verify FTP server does not allow directory creation for ReadOnly clients


    step 1. Resolve the FTP server name using DNS or NetBIOS
    step 2. Start a new FTP client on the LAN
    step 3. Verify that the FTP client is not able to create a new directory in
            the specified path on the FTP server

    NOTE: This test is only performed if the testvar permission is set to
    "ReadOnly" for the ftpuser being tested.


    References:

    IETF RFC 959 "FILE TRANSFER PROTOCOL (FTP)"

    https://tools.ietf.org/html/rfc959
Test Name Synopsis
Verify FTP server supports simultaneous access from two clients ftp_50 Verify FTP server supports simultaneous access from two clients


    step 1. Resolve the FTP server name using DNS or NetBIOS
    step 2. Start a new FTP client on the LAN
    step 3. Start a second FTP client on the same LAN DHCP host with the same
            FTP user
    step 4. Verify that both FTP clients are able to upload a file to the
            specified path on the FTP server simultaneously
    step 5. Verify that both FTP clients are able to download the files
            generated in step 4 from the specified directory to the local system
            simultaneously
    step 6. Verify that both FTP clients are able to delete the files uploaded
            in step 3 simultaneously

    NOTE: This is a basic scaling test designed to verify that the FTP server
    allows simultaneous access from two instances of the same FTP client on the
    same LAN DHCP host.

    NOTE: This test is only performed if the testvar permission is set to
    "ReadWrite" for the ftpuser being tested.


    References:

    IETF RFC 959 "FILE TRANSFER PROTOCOL (FTP)"

    https://tools.ietf.org/html/rfc959
Test Name Synopsis
Verify all configured FTP users ftp_51 Verify all configured FTP users


    step 1. Resolve the FTP server name using DNS or NetBIOS
    step 2. Start a new FTP client on the LAN
    step 3. Verify that the FTP client is able to upload a file to the
            specified path on the FTP server
    step 4. Verify that the FTP client is able to download the file generated in
            step 3 from the specified directory to the local system
    step 5. Verify that the FTP client is able to delete the file uploaded in
            step 3
    step 6. Repeat steps 2 through 3 for all configured ftpusers

    NOTE: This scaling test is designed to verify that all of the FTP client
    configurations, defined as "ftpuser" testvar_groups, work as expected.

    NOTE: Up to 20 FTP client configurations can be created. Each FTP client
    configuration will be created and verified sequentially on the same LAN DHCP
    host.

    NOTE: If the testvar permission is set to "ReadOnly" for a particular
    FTP client configuration, only a directory listing will be performed as part
    of this test.


    References:

    IETF RFC 959 "FILE TRANSFER PROTOCOL (FTP)"

    https://tools.ietf.org/html/rfc959
Test Name Synopsis
Verify the maximum number of FTP sessions ftp_52 Verify the maximum number of FTP sessions


    step 1. Resolve the FTP server name using DNS or NetBIOS
    step 2. Create a new DHCP client on the LAN and verify that the client
            receives an IP address from the DUT's LAN DHCP server
    step 3. Repeat step 1 until the entire DHCP pool on the DUT is exhausted or
            the maximum number of FTP sessions, as defined by the testvar
            storageFtpMaxSessions, is reached
    step 4. Start a new FTP client using the LAN host 1
    step 5. Verify that the FTP client is able to upload a file to the specified
            directory
    step 6. Verify that the FTP client is able to download the file generated in
            step 5 from the specified directory to the local system
    step 7. Verify that the FTP client is able to delete the file uploaded in
            step 5 from the FTP server
    step 8. Repeat steps 4 through 7 for all LAN DHCP clients created in step 3

    NOTE: This scaling test is designed to verify the maximum number of FTP
    client connections. Each FTP client connection will use the same FTP user
    and will be created on a unique LAN DHCP host.

    NOTE: The maximum number of FTP client connections created is specified by
    the testvar storageFtpMaxSessions, which defaults to 20. If the DHCP pool
    is smaller than the storageFtpMaxSessions value, only enough clients to
    exhaust the DHCP pool will be created.

    NOTE: If the testvar permission is set to "ReadOnly" for a particular
    FTP user, only a directory listing will be performed.

    NOTE: This test will prefer "ReadWrite" FTP users over "ReadOnly" users.
    However, it will still run if all users configured as "ReadOnly".


    References:

    IETF RFC 959 "FILE TRANSFER PROTOCOL (FTP)"

    https://tools.ietf.org/html/rfc959

ftps.tcl

FTPS IPv4 storage tests

Test Name Synopsis
Verify FTPS server allows directory listing ftps_2 Verify FTPS server allows directory listing


    step 1. Resolve the FTPS server name using DNS or NetBIOS
    step 2. Start a new FTPS client on the LAN
    step 3. Verify that the FTPS client is able to log in to the FTPS server and
            perform a directory listing
    step 4. Verify that the FTPS server responds to the directory listing

    NOTE: CDRouter's FTPS client will perform a directory listing on the
    directory specified by the testvar path for the applicable ftpuser


    References:

    IETF RFC 2228 "FTP Security Extensions"

    https://tools.ietf.org/html/rfc2228
Test Name Synopsis
Verify FTPS server allows name list command ftps_3 Verify FTPS server allows name list command


    step 1. Resolve the FTPS server name using DNS or NetBIOS
    step 2. Start a new FTPS client on the LAN
    step 3. Verify that the FTPS client is able to log in to the FTPS server and
            perform a name list command
    step 4. Verify that the FTPS server responds to the name list

    NOTE: CDRouter's FTPS client will perform a directory listing on the
    directory specified by the testvar path for the applicable ftpuser


    References:

    IETF RFC 2228 "FTP Security Extensions"

    https://tools.ietf.org/html/rfc2228
Test Name Synopsis
Verify FTPS server allows file upload ftps_10 Verify FTPS server allows file upload


    step 1. Resolve the FTPS server name using DNS or NetBIOS
    step 2. Start a new FTPS client on the LAN
    step 3. Verify that the FTPS client is able to upload a file to the
            specified directory on the FTPS server
    step 4. Verify that the FTPS client is able to delete the file uploaded in
            step 3

    NOTE: This test is only performed if the testvar permission is set to
    "ReadWrite" for the ftpuser being tested.


    References:

    IETF RFC 2228 "FTP Security Extensions"

    https://tools.ietf.org/html/rfc2228
Test Name Synopsis
Verify FTPS server allows file download ftps_11 Verify FTPS server allows file download


    step 1. Resolve the FTPS server name using DNS or NetBIOS
    step 2. Start a new FTPS client on the LAN
    step 3. Verify that the FTPS client is able to upload a file to the
            specified directory on the FTPS server
    step 4. Verify that the FTPS client is able to download the file uploaded
            in step 3 back to the local system
    step 5. Verify that the FTPS client is able to delete the file uploaded in
            step 3

    NOTE: This test is only performed if the testvar permission is set to
    "ReadWrite" for the ftpuser being tested.


    References:

    IETF RFC 2228 "FTP Security Extensions"

    https://tools.ietf.org/html/rfc2228
Test Name Synopsis
Verify FTPS server allows creation and deletion of new directories ftps_12 Verify FTPS server allows creation and deletion of new directories


    step 1. Resolve the FTPS server name using DNS or NetBIOS
    step 2. Start a new FTPS client on the LAN
    step 3. Verify that the FTPS client is able to create a new directory within
            the specified share location on the FTPS server
    step 4. Verify that the FTPS client is able to upload a file to the new
            directory created in step 3
    step 5. Verify that the FTPS client is able to delete the file uploaded in
            step 4
    step 6. Verify that the FTPS client is able to delete the directory created
            in step 3

    NOTE: This test is only performed if the testvar permission is set to
    "ReadWrite" for the ftpuser being tested.


    References:

    IETF RFC 2228 "FTP Security Extensions"

    https://tools.ietf.org/html/rfc2228
Test Name Synopsis
Verify FTPS server allows files to be renamed ftps_13 Verify FTPS server allows files to be renamed


    step 1. Resolve the FTPS server name using DNS or NetBIOS
    step 2. Start a new FTPS client on the LAN
    step 3. Verify that the FTPS client is able to upload a file to the
            specified share location on the FTPS server
    step 4. Verify that the FTPS client is able to rename the file uploaded in
            step 3
    step 5. Verify that the FTPS client is able to delete the file renamed in
            step 4

    NOTE: This test is only performed if the testvar permission is set to
    "ReadWrite" for the ftpuser being tested.


    References:

    IETF RFC 2228 "FTP Security Extensions"

    https://tools.ietf.org/html/rfc2228
Test Name Synopsis
Verify FTPS server allows directories to be renamed ftps_14 Verify FTPS server allows directories to be renamed


    step 1. Resolve the FTPS server name using DNS or NetBIOS
    step 2. Start a new FTPS client on the LAN
    step 3. Verify that the FTPS client is able to create a new folder within the
            specified share location on the FTPS server
    step 4. Verify that the FTPS client is able to upload a file to the new
            directory created in step 3
    step 5. Rename the directory created in step 3
    step 6. Verify that the FTPS client is able to delete the file uploaded in
            step 4
    step 7. Verify that the FTPS client is able to delete the directory renamed
            in step 5

    NOTE: This test is only performed if the testvar permission is set to
    "ReadWrite" for the ftpuser being tested.


    References:

    IETF RFC 2228 "FTP Security Extensions"

    https://tools.ietf.org/html/rfc2228
Test Name Synopsis
Perform FTPS read-after-write test to verify file integrity ftps_20 Perform FTPS read-after-write test to verify file integrity


    step 1. Resolve the FTPS server name using DNS or NetBIOS
    step 2. Start a new FTPS client on the LAN
    step 3. Verify that the FTPS client is able to upload a file to the
            specified directory on the FTPS server
    step 4. Verify the FTPS client is able to download the file generated in
            step 3 from the FTPS server back to the local system
    step 5. Perform an MD5 checksum on the original file uploaded to the FTP
            server in step 3 and downloaded from the FTPS server in step 4
    step 6. Verify that the MD5 checksums in step 5 are the same
    step 7. Verify that the FTPS client is able to delete the file uploaded in
            step 3

    NOTE: This test is only performed if the testvar permission is set to
    "ReadWrite" for the ftpuser being tested.


    References:

    IETF RFC 2228 "FTP Security Extensions"

    https://tools.ietf.org/html/rfc2228
Test Name Synopsis
Perform FTPS read-after-write test to verify file integrity using active mode ftps_21 Perform FTPS read-after-write test to verify file integrity using active mode


    step 1. Resolve the FTPS server name using DNS or NetBIOS
    step 2. Start a new FTPS client on the LAN
    step 3. Verify that the FTPS client is able to upload a file to the
            specified directory on the FTPS server using an active mode
            connection
    step 4. Verify the FTPS client is able to download the file generated in
            step 3 from the FTPS server back to the local system using an active
            mode connection
    step 5. Perform an MD5 checksum on the original file uploaded to the FTP
            server in step 3 and downloaded from the FTPS server in step 4
    step 6. Verify that the MD5 checksums in step 5 are the same
    step 7. Verify that the FTPS client is able to delete the file uploaded in
            step 3

    NOTE: This test is only performed if the testvar permission is set to
    "ReadWrite" for the ftpuser being tested.


    References:

    IETF RFC 2228 "FTP Security Extensions"

    https://tools.ietf.org/html/rfc2228
Test Name Synopsis
Perform FTPS read-after-write test to verify file integrity using active mode with EPRT disabled ftps_22 Perform FTPS read-after-write test to verify file integrity using active mode with EPRT disabled


    step 1. Resolve the FTPS server name using DNS or NetBIOS
    step 2. Start a new FTPS client on the LAN
    step 3. Verify that the FTPS client is able to upload a file to the
            specified directory on the FTPS server using an active mode
            connection with the EPRT command disabled
    step 4. Verify the FTPS client is able to download the file generated in
            step 3 from the FTPS server back to the local system using an active
            mode connection with the EPRT command disabled
    step 5. Perform an MD5 checksum on the original file uploaded to the FTP
            server in step 3 and downloaded from the FTPS server in step 4
    step 6. Verify that the MD5 checksums in step 5 are the same
    step 7. Verify that the FTPS client is able to delete the file uploaded in
            step 3

    NOTE: This test is only performed if the testvar permission is set to
    "ReadWrite" for the ftpuser being tested.


    References:

    IETF RFC 2228 "FTP Security Extensions"

    https://tools.ietf.org/html/rfc2228
Test Name Synopsis
Perform FTPS read-after-write test to verify file integrity using passive mode with EPSV disabled ftps_23 Perform FTPS read-after-write test to verify file integrity using passive mode with EPSV disabled


    step 1. Resolve the FTPS server name using DNS or NetBIOS
    step 2. Start a new FTPS client on the LAN
    step 3. Verify that the FTPS client is able to upload a file to the
            specified directory on the FTPS server using a passive mode
            connection with the EPSV command disabled
    step 4. Verify the FTPS client is able to download the file generated in
            step 3 from the FTPS server back to the local system using a passive
            mode connection with the EPSV command disabled
    step 5. Perform an MD5 checksum on the original file uploaded to the FTP
            server in step 3 and downloaded from the FTPS server in step 4
    step 6. Verify that the MD5 checksums in step 5 are the same
    step 7. Verify that the FTPS client is able to delete the file uploaded in
            step 3

    NOTE: This test is only performed if the testvar permission is set to
    "ReadWrite" for the ftpuser being tested.


    References:

    IETF RFC 2228 "FTP Security Extensions"

    https://tools.ietf.org/html/rfc2228
Test Name Synopsis
Verify FTPS server rejects clients with invalid password ftps_30 Verify FTPS server rejects clients with invalid password


    step 1. Resolve the FTPS server name using DNS or NetBIOS
    step 2. Start a new FTPS client on the LAN
    step 3. Verify that the FTPS client is not able to log in to the FTPS server
            and perform a directory listing using an invalid password

    NOTE: CDRouter's FTPS client will perform a directory listing on the
    directory specified by the testvar path for the applicable ftpuser using
    an invalid password


    References:

    IETF RFC 2228 "FTP Security Extensions"

    https://tools.ietf.org/html/rfc2228
Test Name Synopsis
Verify FTPS server rejects unknown clients ftps_31 Verify FTPS server rejects unknown clients


    step 1. Resolve the FTPS server name using DNS or NetBIOS
    step 2. Start a new FTPS client on the LAN
    step 3. Verify that the FTPS client is not able to log in to the FTPS server
            and perform a directory listing using an unknown username

    NOTE: CDRouter's FTPS client will perform a directory listing on the
    path specified by the testvar path using an unknown username


    References:

    IETF RFC 2228 "FTP Security Extensions"

    https://tools.ietf.org/html/rfc2228
Test Name Synopsis
Verify FTPS server does not allow file upload for ReadOnly clients ftps_40 Verify FTPS server does not allow file upload for ReadOnly clients


    step 1. Resolve the FTPS server name using DNS or NetBIOS
    step 2. Start a new FTPS client on the LAN
    step 3. Verify that the FTPS client is not able to upload a file to the
            specified path on the FTPS server
    step 4. Verify that the ReadOnly FTPS client is able to perform a directory
            listing

    NOTE: This test is only performed if the testvar permission is set to
    "ReadOnly" for the ftpuser being tested.


    References:

    IETF RFC 2228 "FTP Security Extensions"

    https://tools.ietf.org/html/rfc2228
Test Name Synopsis
Verify FTPS server does not allow directory creation for ReadOnly clients ftps_41 Verify FTPS server does not allow directory creation for ReadOnly clients


    step 1. Resolve the FTPS server name using DNS or NetBIOS
    step 2. Start a new FTPS client on the LAN
    step 3. Verify that the FTPS client is not able to create a new directory in
            the specified path on the FTPS server

    NOTE: This test is only performed if the testvar permission is set to
    "ReadOnly" for the ftpuser being tested.


    References:

    IETF RFC 2228 "FTP Security Extensions"

    https://tools.ietf.org/html/rfc2228
Test Name Synopsis
Verify FTPS server supports simultaneous access from two clients ftps_50 Verify FTPS server supports simultaneous access from two clients


    step 1. Resolve the FTPS server name using DNS or NetBIOS
    step 2. Start a new FTPS client on the LAN
    step 3. Start a second FTPS client on the same LAN DHCP host with the same
            FTPS user
    step 4. Verify that both FTPS clients are able to upload a file to the
            specified path on the FTPS server simultaneously
    step 5. Verify that both FTPS clients are able to download the files
            generated in step 4 from the specified directory to the local system
            simultaneously
    step 6. Verify that both FTPS clients are able to delete the files uploaded
            in step 3 simultaneously

    NOTE: This is a basic scaling test designed to verify that the FTPS server
    allows simultaneous access from two instances of the same FTPS client on the
    same LAN DHCP host.

    NOTE: This test is only performed if the testvar permission is set to
    "ReadWrite" for the ftpuser being tested.


    References:

    IETF RFC 2228 "FTP Security Extensions"

    https://tools.ietf.org/html/rfc2228
Test Name Synopsis
Verify all configured FTPS users ftps_51 Verify all configured FTPS users


    step 1. Resolve the FTPS server name using DNS or NetBIOS
    step 2. Start a new FTPS client on the LAN
    step 3. Verify that the FTPS client is able to upload a file to the
            specified path on the FTPS server
    step 4. Verify that the FTPS client is able to download the file generated in
            step 3 from the specified directory to the local system
    step 5. Verify that the FTPS client is able to delete the file uploaded in
            step 3
    step 6. Repeat steps 2 through 3 for all configured ftpusers

    NOTE: This scaling test is designed to verify that all of the FTPS client
    configurations, defined as "ftpuser" testvar_groups, work as expected.

    NOTE: Up to 20 FTPS client configurations can be created. Each FTPS client
    configuration will be created and verified sequentially on the same LAN DHCP
    host.

    NOTE: If the testvar permission is set to "ReadOnly" for a particular
    FTPS client configuration, only a directory listing will be performed as part
    of this test.


    References:

    IETF RFC 2228 "FTP Security Extensions"

    https://tools.ietf.org/html/rfc2228
Test Name Synopsis
Verify the maximum number of FTPS sessions ftps_52 Verify the maximum number of FTPS sessions


    step 1. Resolve the FTPS server name using DNS or NetBIOS
    step 2. Create a new DHCP client on the LAN and verify that the client
            receives an IP address from the DUT's LAN DHCP server
    step 3. Repeat step 1 until the entire DHCP pool on the DUT is exhausted or
            the maximum number of FTPS sessions, as defined by the testvar
            storageFtpMaxSessions, is reached
    step 4. Start a new FTPS client using the LAN host 1
    step 5. Verify that the FTPS client is able to upload a file to the specified
            directory
    step 6. Verify that the FTPS client is able to download the file generated in
            step 5 from the specified directory to the local system
    step 7. Verify that the FTPS client is able to delete the file uploaded in
            step 5 from the FTPS server
    step 8. Repeat steps 4 through 7 for all LAN DHCP clients created in step 3

    NOTE: This scaling test is designed to verify the maximum number of FTP
    client connections. Each FTPS client connection will use the same FTPS user
    and will be created on a unique LAN DHCP host.

    NOTE: The maximum number of FTPS client connections created is specified by
    the testvar storageFtpMaxSessions, which defaults to 20. If the DHCP pool
    is smaller than the storageFtpMaxSessions value, only enough clients to
    exhaust the DHCP pool will be created.

    NOTE: If the testvar permission is set to "ReadOnly" for a particular
    FTPS user, only a directory listing will be performed.

    NOTE: This test will prefer "ReadWrite" FTPS users over "ReadOnly" users.
    However, it will still run if all users configured as "ReadOnly".


    References:

    IETF RFC 2228 "FTP Security Extensions"

    https://tools.ietf.org/html/rfc2228

ftp-wan.tcl

WAN FTP IPv4 storage tests

Test Name Synopsis
Verify FTP server allows directory listing ftp_wan_2 Verify FTP server allows directory listing


    step 1. Determine the WAN side FTP server address
    step 2. Start a new FTP client on the WAN
    step 3. Verify that the FTP client is able to log in to the FTP server and
            perform a directory listing
    step 4. Verify that the FTP server responds to the directory listing

    NOTE: CDRouter's FTP client will perform a directory listing on the
    directory specified by the testvar path for the applicable ftpuser


    References:

    IETF RFC 959 "FILE TRANSFER PROTOCOL (FTP)"

    https://tools.ietf.org/html/rfc959
Test Name Synopsis
Verify FTP server allows name list command ftp_wan_3 Verify FTP server allows name list command


    step 1. Determine the WAN side FTP server address
    step 2. Start a new FTP client on the WAN
    step 3. Verify that the FTP client is able to log in to the FTP server and
            perform a name list command
    step 4. Verify that the FTP server responds to the name list

    NOTE: CDRouter's FTP client will perform a directory listing on the
    directory specified by the testvar path for the applicable ftpuser


    References:

    IETF RFC 959 "FILE TRANSFER PROTOCOL (FTP)"

    https://tools.ietf.org/html/rfc959
Test Name Synopsis
Verify FTP server allows file upload ftp_wan_10 Verify FTP server allows file upload


    step 1. Determine the WAN side FTP server address
    step 2. Start a new FTP client on the WAN
    step 3. Verify that the FTP client is able to upload a file to the
            specified directory on the FTP server
    step 4. Verify that the FTP client is able to delete the file uploaded in
            step 3

    NOTE: This test is only performed if the testvar permission is set to
    "ReadWrite" for the ftpuser being tested.


    References:

    IETF RFC 959 "FILE TRANSFER PROTOCOL (FTP)"

    https://tools.ietf.org/html/rfc959
Test Name Synopsis
Verify FTP server allows file download ftp_wan_11 Verify FTP server allows file download


    step 1. Determine the WAN side FTP server address
    step 2. Start a new FTP client on the WAN
    step 3. Verify that the FTP client is able to upload a file to the
            specified directory on the FTP server
    step 4. Verify that the FTP client is able to download the file uploaded
            in step 3 back to the local system
    step 5. Verify that the FTP client is able to delete the file uploaded in
            step 3

    NOTE: This test is only performed if the testvar permission is set to
    "ReadWrite" for the ftpuser being tested.


    References:

    IETF RFC 959 "FILE TRANSFER PROTOCOL (FTP)"

    https://tools.ietf.org/html/rfc959
Test Name Synopsis
Verify FTP server allows creation and deletion of new directories ftp_wan_12 Verify FTP server allows creation and deletion of new directories


    step 1. Determine the WAN side FTP server address
    step 2. Start a new FTP client on the WAN
    step 3. Verify that the FTP client is able to create a new directory within
            the specified share location on the FTP server
    step 4. Verify that the FTP client is able to upload a file to the new
            directory created in step 3
    step 5. Verify that the FTP client is able to delete the file uploaded in
            step 4
    step 6. Verify that the FTP client is able to delete the directory created
            in step 3

    NOTE: This test is only performed if the testvar permission is set to
    "ReadWrite" for the ftpuser being tested.


    References:

    IETF RFC 959 "FILE TRANSFER PROTOCOL (FTP)"

    https://tools.ietf.org/html/rfc959
Test Name Synopsis
Verify FTP server allows files to be renamed ftp_wan_13 Verify FTP server allows files to be renamed


    step 1. Determine the WAN side FTP server address
    step 2. Start a new FTP client on the WAN
    step 3. Verify that the FTP client is able to upload a file to the
            specified share location on the FTP server
    step 4. Verify that the FTP client is able to rename the file uploaded in
            step 3
    step 5. Verify that the FTP client is able to delete the file renamed in
            step 4

    NOTE: This test is only performed if the testvar permission is set to
    "ReadWrite" for the ftpuser being tested.


    References:

    IETF RFC 959 "FILE TRANSFER PROTOCOL (FTP)"

    https://tools.ietf.org/html/rfc959
Test Name Synopsis
Verify FTP server allows directories to be renamed ftp_wan_14 Verify FTP server allows directories to be renamed


    step 1. Determine the WAN side FTP server address
    step 2. Start a new FTP client on the WAN
    step 3. Verify that the FTP client is able to create a new folder within the
            specified share location on the FTP server
    step 4. Verify that the FTP client is able to upload a file to the new
            directory created in step 3
    step 5. Rename the directory created in step 3
    step 6. Verify that the FTP client is able to delete the file uploaded in
            step 4
    step 7. Verify that the FTP client is able to delete the directory renamed
            in step 5

    NOTE: This test is only performed if the testvar permission is set to
    "ReadWrite" for the ftpuser being tested.


    References:

    IETF RFC 959 "FILE TRANSFER PROTOCOL (FTP)"

    https://tools.ietf.org/html/rfc959
Test Name Synopsis
Perform FTP read-after-write test to verify file integrity ftp_wan_20 Perform FTP read-after-write test to verify file integrity


    step 1. Determine the WAN side FTP server address
    step 2. Start a new FTP client on the WAN
    step 3. Verify that the FTP client is able to upload a file to the
            specified directory on the FTP server
    step 4. Verify the FTP client is able to download the file generated in
            step 3 from the FTP server back to the local system
    step 5. Perform an MD5 checksum on the original file uploaded to the FTP
            server in step 3 and downloaded from the FTP server in step 4
    step 6. Verify that the MD5 checksums in step 5 are the same
    step 7. Verify that the FTP client is able to delete the file uploaded in
            step 3

    NOTE: This test is only performed if the testvar permission is set to
    "ReadWrite" for the ftpuser being tested.


    References:

    IETF RFC 959 "FILE TRANSFER PROTOCOL (FTP)"

    https://tools.ietf.org/html/rfc959
Test Name Synopsis
Perform FTP read-after-write test to verify file integrity using active mode ftp_wan_21 Perform FTP read-after-write test to verify file integrity using active mode


    step 1. Determine the WAN side FTP server address
    step 2. Start a new FTP client on the WAN
    step 3. Verify that the FTP client is able to upload a file to the
            specified directory on the FTP server using an active mode
            connection
    step 4. Verify the FTP client is able to download the file generated in
            step 3 from the FTP server back to the local system using an active
            mode connection
    step 5. Perform an MD5 checksum on the original file uploaded to the FTP
            server in step 3 and downloaded from the FTP server in step 4
    step 6. Verify that the MD5 checksums in step 5 are the same
    step 7. Verify that the FTP client is able to delete the file uploaded in
            step 3

    NOTE: This test is only performed if the testvar permission is set to
    "ReadWrite" for the ftpuser being tested.


    References:

    IETF RFC 959 "FILE TRANSFER PROTOCOL (FTP)"

    https://tools.ietf.org/html/rfc959
Test Name Synopsis
Perform FTP read-after-write test to verify file integrity using active mode with EPRT disabled ftp_wan_22 Perform FTP read-after-write test to verify file integrity using active mode with EPRT disabled


    step 1. Determine the WAN side FTP server address
    step 2. Start a new FTP client on the WAN
    step 3. Verify that the FTP client is able to upload a file to the
            specified directory on the FTP server using an active mode
            connection with the EPRT command disabled
    step 4. Verify the FTP client is able to download the file generated in
            step 3 from the FTP server back to the local system using an active
            mode connection with the EPRT command disabled
    step 5. Perform an MD5 checksum on the original file uploaded to the FTP
            server in step 3 and downloaded from the FTP server in step 4
    step 6. Verify that the MD5 checksums in step 5 are the same
    step 7. Verify that the FTP client is able to delete the file uploaded in
            step 3

    NOTE: This test is only performed if the testvar permission is set to
    "ReadWrite" for the ftpuser being tested.


    References:

    IETF RFC 959 "FILE TRANSFER PROTOCOL (FTP)"

    https://tools.ietf.org/html/rfc959
Test Name Synopsis
Perform FTP read-after-write test to verify file integrity using passive mode with EPSV disabled ftp_wan_23 Perform FTP read-after-write test to verify file integrity using passive mode with EPSV disabled


    step 1. Determine the WAN side FTP server address
    step 2. Start a new FTP client on the WAN
    step 3. Verify that the FTP client is able to upload a file to the
            specified directory on the FTP server using a passive mode
            connection with the EPSV command disabled
    step 4. Verify the FTP client is able to download the file generated in
            step 3 from the FTP server back to the local system using a passive
            mode connection with the EPSV command disabled
    step 5. Perform an MD5 checksum on the original file uploaded to the FTP
            server in step 3 and downloaded from the FTP server in step 4
    step 6. Verify that the MD5 checksums in step 5 are the same
    step 7. Verify that the FTP client is able to delete the file uploaded in
            step 3

    NOTE: This test is only performed if the testvar permission is set to
    "ReadWrite" for the ftpuser being tested.


    References:

    IETF RFC 959 "FILE TRANSFER PROTOCOL (FTP)"

    https://tools.ietf.org/html/rfc959
Test Name Synopsis
Verify FTP server rejects clients with invalid password ftp_wan_30 Verify FTP server rejects clients with invalid password


    step 1. Determine the WAN side FTP server address
    step 2. Start a new FTP client on the WAN
    step 3. Verify that the FTP client is not able to log in to the FTP server
            and perform a directory listing using an invalid password

    NOTE: CDRouter's FTP client will perform a directory listing on the
    directory specified by the testvar path for the applicable ftpuser using
    an invalid password


    References:

    IETF RFC 959 "FILE TRANSFER PROTOCOL (FTP)"

    https://tools.ietf.org/html/rfc959
Test Name Synopsis
Verify FTP server rejects unknown clients ftp_wan_31 Verify FTP server rejects unknown clients


    step 1. Determine the WAN side FTP server address
    step 2. Start a new FTP client on the WAN
    step 3. Verify that the FTP client is not able to log in to the FTP server
            and perform a directory listing using an unknown username

    NOTE: CDRouter's FTP client will perform a directory listing on the
    path specified by the testvar path using an unknown username


    References:

    IETF RFC 959 "FILE TRANSFER PROTOCOL (FTP)"

    https://tools.ietf.org/html/rfc959
Test Name Synopsis
Verify FTP server does not allow file upload for ReadOnly clients ftp_wan_40 Verify FTP server does not allow file upload for ReadOnly clients


    step 1. Determine the WAN side FTP server address
    step 2. Start a new FTP client on the WAN
    step 3. Verify that the FTP client is not able to upload a file to the
            specified path on the FTP server
    step 4. Verify that the ReadOnly FTP client is able to perform a directory
            listing

    NOTE: This test is only performed if the testvar permission is set to
    "ReadOnly" for the ftpuser being tested.


    References:

    IETF RFC 959 "FILE TRANSFER PROTOCOL (FTP)"

    https://tools.ietf.org/html/rfc959
Test Name Synopsis
Verify FTP server does not allow directory creation for ReadOnly clients ftp_wan_41 Verify FTP server does not allow directory creation for ReadOnly clients


    step 1. Determine the WAN side FTP server address
    step 2. Start a new FTP client on the WAN
    step 3. Verify that the FTP client is not able to create a new directory in
            the specified path on the FTP server

    NOTE: This test is only performed if the testvar permission is set to
    "ReadOnly" for the ftpuser being tested.


    References:

    IETF RFC 959 "FILE TRANSFER PROTOCOL (FTP)"

    https://tools.ietf.org/html/rfc959
Test Name Synopsis
Verify FTP server supports simultaneous access from two clients ftp_wan_50 Verify FTP server supports simultaneous access from two clients


    step 1. Determine the WAN side FTP server address
    step 2. Start a new FTP client on the WAN
    step 3. Start a second FTP client on the same WAN host with the same
            FTP user
    step 4. Verify that both FTP clients are able to upload a file to the
            specified path on the FTP server simultaneously
    step 5. Verify that both FTP clients are able to download the files
            generated in step 4 from the specified directory to the local system
            simultaneously
    step 6. Verify that both FTP clients are able to delete the files uploaded
            in step 3 simultaneously

    NOTE: This is a basic scaling test designed to verify that the FTP server
    allows simultaneous access from two instances of the same FTP client on the
    same WAN host.

    NOTE: This test is only performed if the testvar permission is set to
    "ReadWrite" for the ftpuser being tested.


    References:

    IETF RFC 959 "FILE TRANSFER PROTOCOL (FTP)"

    https://tools.ietf.org/html/rfc959
Test Name Synopsis
Verify all configured FTP users ftp_wan_51 Verify all configured FTP users


    step 1. Determine the WAN side FTP server address
    step 2. Start a new FTP client on the WAN
    step 3. Verify that the FTP client is able to upload a file to the
            specified path on the FTP server
    step 4. Verify that the FTP client is able to download the file generated in
            step 3 from the specified directory to the local system
    step 5. Verify that the FTP client is able to delete the file uploaded in
            step 3
    step 6. Repeat steps 2 through 3 for all configured ftpusers

    NOTE: This scaling test is designed to verify that all of the FTP client
    configurations, defined as "ftpuser" testvar_groups, work as expected.

    NOTE: Up to 20 FTP client configurations can be created.

    NOTE: If the testvar permission is set to "ReadOnly" for a particular
    FTP client configuration, only a directory listing will be performed as part
    of this test.


    References:

    IETF RFC 959 "FILE TRANSFER PROTOCOL (FTP)"

    https://tools.ietf.org/html/rfc959
Test Name Synopsis
Verify the maximum number of FTP sessions ftp_wan_52 Verify the maximum number of FTP sessions


    step 1. Determine the WAN side FTP server address
    step 2. Create new WAN side FTP clients
    step 3. Start a new FTP client using the WAN client 1
    step 4. Verify that the FTP client is able to upload a file to the specified
            directory
    step 5. Verify that the FTP client is able to download the file generated in
            step 5 from the specified directory to the local system
    step 6. Verify that the FTP client is able to delete the file uploaded in
            step 5 from the FTP server
    step 7. Repeat steps 4 through 7 for all WAN clients created in step 2

    NOTE: This scaling test is designed to verify the maximum number of FTP
    client connections. Each FTP client connection will use the same FTP user
    and will be created on a unique WAN host.

    NOTE: The maximum number of FTP client connections created is specified by
    the testvar storageFtpMaxSessions, which defaults to 20.

    NOTE: If the testvar permission is set to "ReadOnly" for a particular
    FTP user, only a directory listing will be performed.

    NOTE: This test will prefer "ReadWrite" FTP users over "ReadOnly" users.
    However, it will still run if all users configured as "ReadOnly".


    References:

    IETF RFC 959 "FILE TRANSFER PROTOCOL (FTP)"

    https://tools.ietf.org/html/rfc959

ftps-wan.tcl

WAN FTPS IPv4 storage tests

Test Name Synopsis
Verify FTPS server allows directory listing ftps_wan_2 Verify FTPS server allows directory listing


    step 1. Determine the WAN side FTPS server address
    step 2. Start a new FTPS client on the WAN
    step 3. Verify that the FTPS client is able to log in to the FTPS server and
            perform a directory listing
    step 4. Verify that the FTPS server responds to the directory listing

    NOTE: CDRouter's FTPS client will perform a directory listing on the
    directory specified by the testvar path for the applicable ftpuser


    References:

    IETF RFC 2228 "FTP Security Extensions"

    https://tools.ietf.org/html/rfc2228
Test Name Synopsis
Verify FTPS server allows name list command ftps_wan_3 Verify FTPS server allows name list command


    step 1. Determine the WAN side FTPS server address
    step 2. Start a new FTPS client on the WAN
    step 3. Verify that the FTPS client is able to log in to the FTPS server and
            perform a name list command
    step 4. Verify that the FTPS server responds to the name list

    NOTE: CDRouter's FTPS client will perform a directory listing on the
    directory specified by the testvar path for the applicable ftpuser


    References:

    IETF RFC 2228 "FTP Security Extensions"

    https://tools.ietf.org/html/rfc2228
Test Name Synopsis
Verify FTPS server allows file upload ftps_wan_10 Verify FTPS server allows file upload


    step 1. Determine the WAN side FTPS server address
    step 2. Start a new FTPS client on the WAN
    step 3. Verify that the FTPS client is able to upload a file to the
            specified directory on the FTPS server
    step 4. Verify that the FTPS client is able to delete the file uploaded in
            step 3

    NOTE: This test is only performed if the testvar permission is set to
    "ReadWrite" for the ftpuser being tested.


    References:

    IETF RFC 2228 "FTP Security Extensions"

    https://tools.ietf.org/html/rfc2228
Test Name Synopsis
Verify FTPS server allows file download ftps_wan_11 Verify FTPS server allows file download


    step 1. Determine the WAN side FTPS server address
    step 2. Start a new FTPS client on the WAN
    step 3. Verify that the FTPS client is able to upload a file to the
            specified directory on the FTPS server
    step 4. Verify that the FTPS client is able to download the file uploaded
            in step 3 back to the local system
    step 5. Verify that the FTPS client is able to delete the file uploaded in
            step 3

    NOTE: This test is only performed if the testvar permission is set to
    "ReadWrite" for the ftpuser being tested.


    References:

    IETF RFC 2228 "FTP Security Extensions"

    https://tools.ietf.org/html/rfc2228
Test Name Synopsis
Verify FTPS server allows creation and deletion of new directories ftps_wan_12 Verify FTPS server allows creation and deletion of new directories


    step 1. Determine the WAN side FTPS server address
    step 2. Start a new FTPS client on the WAN
    step 3. Verify that the FTPS client is able to create a new directory within
            the specified share location on the FTPS server
    step 4. Verify that the FTPS client is able to upload a file to the new
            directory created in step 3
    step 5. Verify that the FTPS client is able to delete the file uploaded in
            step 4
    step 6. Verify that the FTPS client is able to delete the directory created
            in step 3

    NOTE: This test is only performed if the testvar permission is set to
    "ReadWrite" for the ftpuser being tested.


    References:

    IETF RFC 2228 "FTP Security Extensions"

    https://tools.ietf.org/html/rfc2228
Test Name Synopsis
Verify FTPS server allows files to be renamed ftps_wan_13 Verify FTPS server allows files to be renamed


    step 1. Determine the WAN side FTPS server address
    step 2. Start a new FTPS client on the WAN
    step 3. Verify that the FTPS client is able to upload a file to the
            specified share location on the FTPS server
    step 4. Verify that the FTPS client is able to rename the file uploaded in
            step 3
    step 5. Verify that the FTPS client is able to delete the file renamed in
            step 4

    NOTE: This test is only performed if the testvar permission is set to
    "ReadWrite" for the ftpuser being tested.


    References:

    IETF RFC 2228 "FTP Security Extensions"

    https://tools.ietf.org/html/rfc2228
Test Name Synopsis
Verify FTPS server allows directories to be renamed ftps_wan_14 Verify FTPS server allows directories to be renamed


    step 1. Determine the WAN side FTPS server address
    step 2. Start a new FTPS client on the WAN
    step 3. Verify that the FTPS client is able to create a new folder within the
            specified share location on the FTPS server
    step 4. Verify that the FTPS client is able to upload a file to the new
            directory created in step 3
    step 5. Rename the directory created in step 3
    step 6. Verify that the FTPS client is able to delete the file uploaded in
            step 4
    step 7. Verify that the FTPS client is able to delete the directory renamed
            in step 5

    NOTE: This test is only performed if the testvar permission is set to
    "ReadWrite" for the ftpuser being tested.


    References:

    IETF RFC 2228 "FTP Security Extensions"

    https://tools.ietf.org/html/rfc2228
Test Name Synopsis
Perform FTPS read-after-write test to verify file integrity ftps_wan_20 Perform FTPS read-after-write test to verify file integrity


    step 1. Determine the WAN side FTPS server address
    step 2. Start a new FTPS client on the WAN
    step 3. Verify that the FTPS client is able to upload a file to the
            specified directory on the FTPS server
    step 4. Verify the FTPS client is able to download the file generated in
            step 3 from the FTPS server back to the local system
    step 5. Perform an MD5 checksum on the original file uploaded to the FTP
            server in step 3 and downloaded from the FTPS server in step 4
    step 6. Verify that the MD5 checksums in step 5 are the same
    step 7. Verify that the FTPS client is able to delete the file uploaded in
            step 3

    NOTE: This test is only performed if the testvar permission is set to
    "ReadWrite" for the ftpuser being tested.


    References:

    IETF RFC 2228 "FTP Security Extensions"

    https://tools.ietf.org/html/rfc2228
Test Name Synopsis
Perform FTPS read-after-write test to verify file integrity using active mode ftps_wan_21 Perform FTPS read-after-write test to verify file integrity using active mode


    step 1. Determine the WAN side FTPS server address
    step 2. Start a new FTPS client on the WAN
    step 3. Verify that the FTPS client is able to upload a file to the
            specified directory on the FTPS server using an active mode
            connection
    step 4. Verify the FTPS client is able to download the file generated in
            step 3 from the FTPS server back to the local system using an active
            mode connection
    step 5. Perform an MD5 checksum on the original file uploaded to the FTP
            server in step 3 and downloaded from the FTPS server in step 4
    step 6. Verify that the MD5 checksums in step 5 are the same
    step 7. Verify that the FTPS client is able to delete the file uploaded in
            step 3

    NOTE: This test is only performed if the testvar permission is set to
    "ReadWrite" for the ftpuser being tested.


    References:

    IETF RFC 2228 "FTP Security Extensions"

    https://tools.ietf.org/html/rfc2228
Test Name Synopsis
Perform FTPS read-after-write test to verify file integrity using active mode with EPRT disabled ftps_wan_22 Perform FTPS read-after-write test to verify file integrity using active mode with EPRT disabled


    step 1. Determine the WAN side FTPS server address
    step 2. Start a new FTPS client on the WAN
    step 3. Verify that the FTPS client is able to upload a file to the
            specified directory on the FTPS server using an active mode
            connection with the EPRT command disabled
    step 4. Verify the FTPS client is able to download the file generated in
            step 3 from the FTPS server back to the local system using an active
            mode connection with the EPRT command disabled
    step 5. Perform an MD5 checksum on the original file uploaded to the FTP
            server in step 3 and downloaded from the FTPS server in step 4
    step 6. Verify that the MD5 checksums in step 5 are the same
    step 7. Verify that the FTPS client is able to delete the file uploaded in
            step 3

    NOTE: This test is only performed if the testvar permission is set to
    "ReadWrite" for the ftpuser being tested.


    References:

    IETF RFC 2228 "FTP Security Extensions"

    https://tools.ietf.org/html/rfc2228
Test Name Synopsis
Perform FTPS read-after-write test to verify file integrity using passive mode with EPSV disabled ftps_wan_23 Perform FTPS read-after-write test to verify file integrity using passive mode with EPSV disabled


    step 1. Determine the WAN side FTPS server address
    step 2. Start a new FTPS client on the WAN
    step 3. Verify that the FTPS client is able to upload a file to the
            specified directory on the FTPS server using a passive mode
            connection with the EPSV command disabled
    step 4. Verify the FTPS client is able to download the file generated in
            step 3 from the FTPS server back to the local system using a passive
            mode connection with the EPSV command disabled
    step 5. Perform an MD5 checksum on the original file uploaded to the FTP
            server in step 3 and downloaded from the FTPS server in step 4
    step 6. Verify that the MD5 checksums in step 5 are the same
    step 7. Verify that the FTPS client is able to delete the file uploaded in
            step 3

    NOTE: This test is only performed if the testvar permission is set to
    "ReadWrite" for the ftpuser being tested.


    References:

    IETF RFC 2228 "FTP Security Extensions"

    https://tools.ietf.org/html/rfc2228
Test Name Synopsis
Verify FTPS server rejects clients with invalid password ftps_wan_30 Verify FTPS server rejects clients with invalid password


    step 1. Determine the WAN side FTPS server address
    step 2. Start a new FTPS client on the WAN
    step 3. Verify that the FTPS client is not able to log in to the FTPS server
            and perform a directory listing using an invalid password

    NOTE: CDRouter's FTPS client will perform a directory listing on the
    directory specified by the testvar path for the applicable ftpuser using
    an invalid password


    References:

    IETF RFC 2228 "FTP Security Extensions"

    https://tools.ietf.org/html/rfc2228
Test Name Synopsis
Verify FTPS server rejects unknown clients ftps_wan_31 Verify FTPS server rejects unknown clients


    step 1. Determine the WAN side FTPS server address
    step 2. Start a new FTPS client on the WAN
    step 3. Verify that the FTPS client is not able to log in to the FTPS server
            and perform a directory listing using an unknown username

    NOTE: CDRouter's FTPS client will perform a directory listing on the
    path specified by the testvar path using an unknown username


    References:

    IETF RFC 2228 "FTP Security Extensions"

    https://tools.ietf.org/html/rfc2228
Test Name Synopsis
Verify FTPS server does not allow file upload for ReadOnly clients ftps_wan_40 Verify FTPS server does not allow file upload for ReadOnly clients


    step 1. Determine the WAN side FTPS server address
    step 2. Start a new FTPS client on the WAN
    step 3. Verify that the FTPS client is not able to upload a file to the
            specified path on the FTPS server
    step 4. Verify that the ReadOnly FTPS client is able to perform a directory
            listing

    NOTE: This test is only performed if the testvar permission is set to
    "ReadOnly" for the ftpuser being tested.


    References:

    IETF RFC 2228 "FTP Security Extensions"

    https://tools.ietf.org/html/rfc2228
Test Name Synopsis
Verify FTPS server does not allow directory creation for ReadOnly clients ftps_wan_41 Verify FTPS server does not allow directory creation for ReadOnly clients


    step 1. Determine the WAN side FTPS server address
    step 2. Start a new FTPS client on the WAN
    step 3. Verify that the FTPS client is not able to create a new directory in
            the specified path on the FTPS server

    NOTE: This test is only performed if the testvar permission is set to
    "ReadOnly" for the ftpuser being tested.


    References:

    IETF RFC 2228 "FTP Security Extensions"

    https://tools.ietf.org/html/rfc2228
Test Name Synopsis
Verify FTPS server supports simultaneous access from two clients ftps_wan_50 Verify FTPS server supports simultaneous access from two clients


    step 1. Determine the WAN side FTPS server address
    step 2. Start a new FTPS client on the WAN
    step 3. Start a second FTPS client on the same WAN host with the same
            FTPS user
    step 4. Verify that both FTPS clients are able to upload a file to the
            specified path on the FTPS server simultaneously
    step 5. Verify that both FTPS clients are able to download the files
            generated in step 4 from the specified directory to the local system
            simultaneously
    step 6. Verify that both FTPS clients are able to delete the files uploaded
            in step 3 simultaneously

    NOTE: This is a basic scaling test designed to verify that the FTPS server
    allows simultaneous access from two instances of the same FTPS client on the
    same WAN host.

    NOTE: This test is only performed if the testvar permission is set to
    "ReadWrite" for the ftpuser being tested.


    References:

    IETF RFC 2228 "FTP Security Extensions"

    https://tools.ietf.org/html/rfc2228
Test Name Synopsis
Verify all configured FTPS users ftps_wan_51 Verify all configured FTPS users


    step 1. Determine the WAN side FTPS server address
    step 2. Start a new FTPS client on the WAN
    step 3. Verify that the FTPS client is able to upload a file to the
            specified path on the FTPS server
    step 4. Verify that the FTPS client is able to download the file generated in
            step 3 from the specified directory to the local system
    step 5. Verify that the FTPS client is able to delete the file uploaded in
            step 3
    step 6. Repeat steps 2 through 3 for all configured ftpusers

    NOTE: This scaling test is designed to verify that all of the FTPS client
    configurations, defined as "ftpuser" testvar_groups, work as expected.

    NOTE: Up to 20 FTPS client configurations can be created.

    NOTE: If the testvar permission is set to "ReadOnly" for a particular
    FTPS client configuration, only a directory listing will be performed as part
    of this test.


    References:

    IETF RFC 2228 "FTP Security Extensions"

    https://tools.ietf.org/html/rfc2228
Test Name Synopsis
Verify the maximum number of FTPS sessions ftps_wan_52 Verify the maximum number of FTPS sessions


    step 1. Determine the WAN side FTPS server address
    step 2. Create new WAN side FTPS clients
    step 3. Start a new FTPS client using the WAN client 1
    step 4. Verify that the FTPS client is able to upload a file to the specified
            directory
    step 5. Verify that the FTPS client is able to download the file generated in
            step 5 from the specified directory to the local system
    step 6. Verify that the FTPS client is able to delete the file uploaded in
            step 5 from the FTPS server
    step 7. Repeat steps 4 through 7 for all WAN clients created in step 2

    NOTE: This scaling test is designed to verify the maximum number of FTP
    client connections. Each FTPS client connection will use the same FTPS user
    and will be created on a unique WAN host.

    NOTE: The maximum number of FTPS client connections created is specified by
    the testvar storageFtpMaxSessions, which defaults to 20.

    NOTE: If the testvar permission is set to "ReadOnly" for a particular
    FTPS user, only a directory listing will be performed.

    NOTE: This test will prefer "ReadWrite" FTPS users over "ReadOnly" users.
    However, it will still run if all users configured as "ReadOnly".


    References:

    IETF RFC 2228 "FTP Security Extensions"

    https://tools.ietf.org/html/rfc2228

smb-v6.tcl

SMB IPv6 storage tests

Test Name Synopsis
Verify IPv6 SMB server responds to a service lookup ipv6_smb_1 Verify IPv6 SMB server responds to a service lookup


    step 1. Resolve the IPv6 SMB server name using DNS or NetBIOS
    step 2. Start a new IPv6 SMB client on the LAN
    step 3. Verify that the IPv6 SMB client is able to log in to the IPv6 SMB
            server and perform a service lookup
    step 4. Verify that the IPv6 SMB server responds to the service lookup
            request
Test Name Synopsis
Verify IPv6 SMB server allows directory listing ipv6_smb_2 Verify IPv6 SMB server allows directory listing


    step 1. Resolve the IPv6 SMB server name using DNS or NetBIOS
    step 2. Start a new IPv6 SMB client on the LAN
    step 3. Verify that the IPv6 SMB client is able to log in to the IPv6 SMB
            server and perform a directory listing
    step 4. Verify that the IPv6 SMB server responds to the directory listing

    NOTE: CDRouter's IPv6 SMB client will perform a directory listing on the
    directory specified by the testvars "share" and "folder" for the applicable
    smbuser
Test Name Synopsis
Verify IPv6 SMB server allows file copy to server ipv6_smb_10 Verify IPv6 SMB server allows file copy to server


    step 1. Resolve the IPv6 SMB server name using DNS or NetBIOS
    step 2. Start a new IPv6 SMB client on the LAN
    step 3. Verify that the IPv6 SMB client is able to copy a file to the
            specified share location on the IPv6 SMB server
    step 4. Verify that the IPv6 SMB client is able to delete the file copied in
            step 3

    NOTE: This test is only performed if the testvar "permission" is set to
    "ReadWrite" for the smbuser being tested.
Test Name Synopsis
Verify IPv6 SMB server allows file copy from server ipv6_smb_11 Verify IPv6 SMB server allows file copy from server


    step 1. Resolve the IPv6 SMB server name using DNS or NetBIOS
    step 2. Start a new IPv6 SMB client on the LAN
    step 3. Verify that the IPv6 SMB client is able to copy a file to the
            specified share location on the IPv6 SMB server
    step 4. Verify that the IPv6 SMB clientis able to copy the file created
            in step 3 from the server back to the local system
    step 5. Verify that the IPv6 SMB client is able to delete the file copied in
            step 3

    NOTE: This test is only performed if the testvar "permission" is set to
    "ReadWrite" for the smbuser being tested.
Test Name Synopsis
Verify IPv6 SMB server allows creation and deletion of new folders ipv6_smb_12 Verify IPv6 SMB server allows creation and deletion of new folders


    step 1. Resolve the IPv6 SMB server name using DNS or NetBIOS
    step 2. Start a new IPv6 SMB client on the LAN
    step 3. Verify that the IPv6 SMB client is able to create a new folder
            within the specified share location on the IPv6 SMB server
    step 4. Verify that the IPv6 SMB client is able to copy a file to the new folder
            created in step 3
    step 5. Verify that the IPv6 SMB client is able to delete the file copied in
            step 4
    step 6. Verify that the IPv6 SMB client is able to delete the folder created in
            step 3

    NOTE: This test is only performed if the testvar "permission" is set to
    "ReadWrite" for the smbuser being tested.
Test Name Synopsis
Verify IPv6 SMB server allows files to be renamed ipv6_smb_13 Verify IPv6 SMB server allows files to be renamed


    step 1. Resolve the IPv6 SMB server name using DNS or NetBIOS
    step 2. Start a new IPv6 SMB client on the LAN
    step 3. Verify that the IPv6 SMB client is able to copy a file to the
            specified share location on the IPv6 SMB server
    step 4. Verify that the IPv6 SMB client is able to rename the file copied in
            step 3
    step 5. Verify that the IPv6 SMB client is able to delete the file renamed
            in step 4

    NOTE: This test is only performed if the testvar "permission" is set to
    "ReadWrite" for the smbuser being tested.
Test Name Synopsis
Verify IPv6 SMB server allows folders to be renamed ipv6_smb_14 Verify IPv6 SMB server allows folders to be renamed


    step 1. Resolve the IPv6 SMB server name using DNS or NetBIOS
    step 2. Start a new IPv6 SMB client on the LAN
    step 3. Verify that the IPv6 SMB client is able to create a new folder
            within the specified share location on the IPv6 SMB server
    step 4. Verify that the IPv6 SMB client is able to copy a file to the new folder
            created in step 3
    step 5. Rename the folder created in step 3
    step 6. Verify that the IPv6 SMB client is able to delete the file copied in
            step 4
    step 7. Verify that the IPv6 SMB client is able to delete the folder renamed in
            step 4

    NOTE: This test is only performed if the testvar "permission" is set to
    "ReadWrite" for the smbuser being tested.
Test Name Synopsis
Perform IPv6 SMB read-after-write test to verify file integrity ipv6_smb_20 Perform IPv6 SMB read-after-write test to verify file integrity


    step 1. Resolve the IPv6 SMB server name using DNS or NetBIOS
    step 2. Start a new IPv6 SMB client on the LAN
    step 3. Verify that the IPv6 SMB client is able to copy a file to the
            specified share location on the IPv6 SMB server
    step 4. Verify the IPv6 SMB client is able to copy the file generated in
            step 3 from the IPv6 SMB server back to the local system
    step 5. Perform an MD5 checksum on the original file copied to the SMB
            server in step 3 and from the IPv6 SMB server in step 4
    step 6. Verify that the MD5 checksums in step 5 are the same
    step 7. Verify that the IPv6 SMB client is able to delete the file copied in
            step 3

    NOTE: This test is only performed if the testvar "permission" is set to
    "ReadWrite" for the smbuser being tested.
Test Name Synopsis
Verify IPv6 SMB server rejects clients with invalid password ipv6_smb_30 Verify IPv6 SMB server rejects clients with invalid password


    step 1. Resolve the IPv6 SMB server name using DNS or NetBIOS
    step 2. Start a new IPv6 SMB client on the LAN
    step 3. Verify that the IPv6 SMB client is not able to log in to the IPv6
            SMB server and perform a directory listing using an invalid password

    NOTE: CDRouter's IPv6 SMB client will perform a directory listing on the
    directory specified by the testvars "share" and "folder" for the applicable
    smbuser using an invalid password
Test Name Synopsis
Verify IPv6 SMB server rejects unknown clients ipv6_smb_31 Verify IPv6 SMB server rejects unknown clients


    step 1. Resolve the IPv6 SMB server name using DNS or NetBIOS
    step 2. Start a new IPv6 SMB client on the LAN
    step 3. Verify that the IPv6 SMB client is not able to log in to the IPv6
            SMB server and perform a directory listing using an unknown username

    NOTE: CDRouter's IPv6 SMB client will perform a directory listing on the
    directory specified by the testvars "share" and "folder" using an unknown
    username
Test Name Synopsis
Verify IPv6 SMB server does not allow file copy for ReadOnly clients ipv6_smb_40 Verify IPv6 SMB server does not allow file copy for ReadOnly clients


    step 1. Resolve the IPv6 SMB server name using DNS or NetBIOS
    step 2. Start a new IPv6 SMB client on the LAN
    step 3. Verify that the IPv6 SMB client is not able to copy a file to the
            specified share location on the IPv6 SMB server
    step 4. Verify that the ReadOnly IPv6 SMB client is able to perform a
            directory listing

    NOTE: This test is only performed if the testvar "permission" is set to
    "ReadOnly" for the smbuser being tested.
Test Name Synopsis
Verify IPv6 SMB server does not allow folder creation for ReadOnly clients ipv6_smb_41 Verify IPv6 SMB server does not allow folder creation for ReadOnly clients


    step 1. Resolve the IPv6 SMB server name using DNS or NetBIOS
    step 2. Start a new IPv6 SMB client on the LAN
    step 3. Verify that the IPv6 SMB client is not able to create a new folder
            in the specified share location on the IPv6 SMB server

    NOTE: This test is only performed if the testvar "permission" is set to
    "ReadOnly" for the smbuser being tested.
Test Name Synopsis
Verify IPv6 SMB server supports simultaneous access from two clients ipv6_smb_50 Verify IPv6 SMB server supports simultaneous access from two clients


    step 1. Resolve the IPv6 SMB server name using DNS or NetBIOS
    step 2. Start a new IPv6 SMB client on the LAN
    step 3. Repeat step 2 to create a second instance of the IPv6 SMB client on
            the same LAN DHCP host
    step 4. Verify that both IPv6 SMB clients are able to copy a file to the
            specified share location simultaneously
    step 5. Verify that both IPv6 SMB clients are able to copy the files
            generated in step 4 from the specified share location simultaneously
    step 6. Verify that both IPv6 SMB clients are able to delete the files
            copied in step 3 simultaneously

    NOTE: This is a basic scaling test designed to verify that the IPv6 SMB
    server allows simultaneous access from two instances of the same IPv6 SMB
    client on the same LAN DHCP host:

    NOTE: This test is only performed if the testvar "permission" is set to
    "ReadWrite" for the smbuser being tested.
Test Name Synopsis
Verify all configured IPv6 SMB shares and users ipv6_smb_51 Verify all configured IPv6 SMB shares and users


    step 1. Resolve the IPv6 SMB server name using DNS or NetBIOS
    step 2. Start a new IPv6 SMB client on the LAN
    step 3. Verify that the IPv6 SMB client is able to copy a file to the
            specified share location
    step 4. Verify that the IPv6 SMB client is able to copy the file generated
            in step 3 from the specified share location
    step 5. Verify that the IPv6 SMB client is able to delete the file copied in
            step 3 from the IPv6 SMB server
    step 6. Repeat steps 3 through 5 for all configured smbusers

    NOTE: This scaling test is designed to verify that all of the IPv6 SMB
    client configurations, defined as "smbuser" testvar_groups, work as
    expected.

    NOTE: Up to 20 IPv6 SMB client configurations can be created. Each IPv6 SMB
    client configuration will be created and verified sequentially on the same
    LAN DHCP host.

    NOTE: If the testvar "permission" is set to "ReadOnly" for a particular
    IPv6 SMB client configuration, only a directory listing will be performed as
    part of this test.
Test Name Synopsis
Verify the maximum number of IPv6 SMB sessions ipv6_smb_52 Verify the maximum number of IPv6 SMB sessions


    step 1. Resolve the IPv6 SMB server name using DNS or NetBIOS
    step 2. Create a new DHCP client on the LAN and verify that the client
            receives an IP address from the DUT's LAN DHCP server
    step 3. Repeat step 1 until the entire DHCP pool on the DUT is exhausted or
            the maximum number of IPv6 SMB sessions, as defined by the testvar
            "storageSmbMaxSessions", is reached
    step 4. Start a new IPv6 SMB client using the LAN host 1
    step 5. Verify that the IPv6 SMB client is able to copy a file to the
            specified share location
    step 6. Verify that the IPv6 SMB client is able to copy the file generated
            in step 5 from the specified share location
    step 7. Verify that the IPv6 SMB client is able to delete the file copied in
            step 5 from the IPv6 SMB server
    step 8. Repeat steps 4 through 7 for all LAN DHCP clients created in step 3

    NOTE: This scaling test is designed to verify the maximum number of IPv6 SMB
    client connections. Each IPv6 SMB client connection will use the same IPv6
    SMB user and will be created on a unique LAN DHCP host.

    NOTE: The maximum number of IPv6 SMB client connections created is specified
    by the testvar "storageSmbMaxSessions", which defaults to 20. If the DHCP
    pool is smaller than the "storageSmbMaxSessions" value, only enough clients
    to exhaust the DHCP pool will be created.

    NOTE: If the testvar "permission" is set to "ReadOnly" for a particular
    IPv6 SMB user, only a directory listing will be performed.

    NOTE: This test will prefer "ReadWrite" IPv6 SMB users over "ReadOnly"
    users. However, it will still run if all users configured as "ReadOnly".

ftp-v6.tcl

FTP IPv6 storage tests

Test Name Synopsis
Verify IPv6 FTP server allows directory listing ipv6_ftp_2 Verify IPv6 FTP server allows directory listing


    step 1. Resolve the IPv6 FTP server name using DNS or NetBIOS
    step 2. Start a new FTP client on the LAN
    step 3. Verify that the FTP client is able to log in to the IPv6 FTP server and
            perform a directory listing
    step 4. Verify that the IPv6 FTP server responds to the directory listing

    NOTE: CDRouter's FTP client will perform a directory listing on the
    directory specified by the testvar path for the applicable ftpuser


    References:

    IETF RFC 959 "FILE TRANSFER PROTOCOL (FTP)"

    https://tools.ietf.org/html/rfc959
Test Name Synopsis
Verify IPv6 FTP server allows name list command ipv6_ftp_3 Verify IPv6 FTP server allows name list command


    step 1. Resolve the IPv6 FTP server name using DNS or NetBIOS
    step 2. Start a new FTP client on the LAN
    step 3. Verify that the FTP client is able to log in to the IPv6 FTP server and
            perform a name list command
    step 4. Verify that the IPv6 FTP server responds to the name list

    NOTE: CDRouter's FTP client will perform a directory listing on the
    directory specified by the testvar path for the applicable ftpuser


    References:

    IETF RFC 959 "FILE TRANSFER PROTOCOL (FTP)"

    https://tools.ietf.org/html/rfc959
Test Name Synopsis
Verify IPv6 FTP server allows file upload ipv6_ftp_10 Verify IPv6 FTP server allows file upload


    step 1. Resolve the IPv6 FTP server name using DNS or NetBIOS
    step 2. Start a new FTP client on the LAN
    step 3. Verify that the FTP client is able to upload a file to the
            specified directory on the IPv6 FTP server
    step 4. Verify that the FTP client is able to delete the file uploaded in
            step 3

    NOTE: This test is only performed if the testvar permission is set to
    "ReadWrite" for the ftpuser being tested.


    References:

    IETF RFC 959 "FILE TRANSFER PROTOCOL (FTP)"

    https://tools.ietf.org/html/rfc959
Test Name Synopsis
Verify IPv6 FTP server allows file download ipv6_ftp_11 Verify IPv6 FTP server allows file download


    step 1. Resolve the IPv6 FTP server name using DNS or NetBIOS
    step 2. Start a new FTP client on the LAN
    step 3. Verify that the FTP client is able to upload a file to the
            specified directory on the IPv6 FTP server
    step 4. Verify that the FTP client is able to download the file uploaded
            in step 3 back to the local system
    step 5. Verify that the FTP client is able to delete the file uploaded in
            step 3

    NOTE: This test is only performed if the testvar permission is set to
    "ReadWrite" for the ftpuser being tested.


    References:

    IETF RFC 959 "FILE TRANSFER PROTOCOL (FTP)"

    https://tools.ietf.org/html/rfc959
Test Name Synopsis
Verify IPv6 FTP server allows creation and deletion of new directories ipv6_ftp_12 Verify IPv6 FTP server allows creation and deletion of new directories


    step 1. Resolve the IPv6 FTP server name using DNS or NetBIOS
    step 2. Start a new FTP client on the LAN
    step 3. Verify that the FTP client is able to create a new directory within
            the specified share location on the IPv6 FTP server
    step 4. Verify that the FTP client is able to upload a file to the new
            directory created in step 3
    step 5. Verify that the FTP client is able to delete the file uploaded in
            step 4
    step 6. Verify that the FTP client is able to delete the directory created
            in step 3

    NOTE: This test is only performed if the testvar permission is set to
    "ReadWrite" for the ftpuser being tested.


    References:

    IETF RFC 959 "FILE TRANSFER PROTOCOL (FTP)"

    https://tools.ietf.org/html/rfc959
Test Name Synopsis
Verify IPv6 FTP server allows files to be renamed ipv6_ftp_13 Verify IPv6 FTP server allows files to be renamed


    step 1. Resolve the IPv6 FTP server name using DNS or NetBIOS
    step 2. Start a new FTP client on the LAN
    step 3. Verify that the FTP client is able to upload a file to the
            specified share location on the IPv6 FTP server
    step 4. Verify that the FTP client is able to rename the file uploaded in
            step 3
    step 5. Verify that the FTP client is able to delete the file renamed in
            step 4

    NOTE: This test is only performed if the testvar permission is set to
    "ReadWrite" for the ftpuser being tested.


    References:

    IETF RFC 959 "FILE TRANSFER PROTOCOL (FTP)"

    https://tools.ietf.org/html/rfc959
Test Name Synopsis
Verify IPv6 FTP server allows directories to be renamed ipv6_ftp_14 Verify IPv6 FTP server allows directories to be renamed


    step 1. Resolve the IPv6 FTP server name using DNS or NetBIOS
    step 2. Start a new FTP client on the LAN
    step 3. Verify that the FTP client is able to create a new folder within the
            specified share location on the IPv6 FTP server
    step 4. Verify that the FTP client is able to upload a file to the new
            directory created in step 3
    step 5. Rename the directory created in step 3
    step 6. Verify that the FTP client is able to delete the file uploaded in
            step 4
    step 7. Verify that the FTP client is able to delete the directory renamed
            in step 5

    NOTE: This test is only performed if the testvar permission is set to
    "ReadWrite" for the ftpuser being tested.


    References:

    IETF RFC 959 "FILE TRANSFER PROTOCOL (FTP)"

    https://tools.ietf.org/html/rfc959
Test Name Synopsis
Perform FTP read-after-write test to verify file integrity ipv6_ftp_20 Perform FTP read-after-write test to verify file integrity


    step 1. Resolve the IPv6 FTP server name using DNS or NetBIOS
    step 2. Start a new FTP client on the LAN
    step 3. Verify that the FTP client is able to upload a file to the
            specified directory on the IPv6 FTP server
    step 4. Verify the FTP client is able to download the file generated in
            step 3 from the IPv6 FTP server back to the local system
    step 5. Perform an MD5 checksum on the original file uploaded to the FTP
            server in step 3 and downloaded from the IPv6 FTP server in step 4
    step 6. Verify that the MD5 checksums in step 5 are the same
    step 7. Verify that the FTP client is able to delete the file uploaded in
            step 3

    NOTE: This test is only performed if the testvar permission is set to
    "ReadWrite" for the ftpuser being tested.


    References:

    IETF RFC 959 "FILE TRANSFER PROTOCOL (FTP)"

    https://tools.ietf.org/html/rfc959
Test Name Synopsis
Perform FTP read-after-write test to verify file integrity using active mode ipv6_ftp_21 Perform FTP read-after-write test to verify file integrity using active mode


    step 1. Resolve the IPv6 FTP server name using DNS or NetBIOS
    step 2. Start a new FTP client on the LAN
    step 3. Verify that the FTP client is able to upload a file to the
            specified directory on the IPv6 FTP server using an active mode
            connection
    step 4. Verify the FTP client is able to download the file generated in
            step 3 from the IPv6 FTP server back to the local system using an active
            mode connection
    step 5. Perform an MD5 checksum on the original file uploaded to the FTP
            server in step 3 and downloaded from the IPv6 FTP server in step 4
    step 6. Verify that the MD5 checksums in step 5 are the same
    step 7. Verify that the FTP client is able to delete the file uploaded in
            step 3

    NOTE: This test is only performed if the testvar permission is set to
    "ReadWrite" for the ftpuser being tested.


    References:

    IETF RFC 959 "FILE TRANSFER PROTOCOL (FTP)"

    https://tools.ietf.org/html/rfc959
Test Name Synopsis
Perform FTP read-after-write test to verify file integrity using active mode with EPRT disabled ipv6_ftp_22 Perform FTP read-after-write test to verify file integrity using active mode with EPRT disabled


    step 1. Resolve the IPv6 FTP server name using DNS or NetBIOS
    step 2. Start a new FTP client on the LAN
    step 3. Verify that the FTP client is able to upload a file to the
            specified directory on the IPv6 FTP server using an active mode
            connection with the EPRT command disabled
    step 4. Verify the FTP client is able to download the file generated in
            step 3 from the IPv6 FTP server back to the local system using an active
            mode connection with the EPRT command disabled
    step 5. Perform an MD5 checksum on the original file uploaded to the FTP
            server in step 3 and downloaded from the IPv6 FTP server in step 4
    step 6. Verify that the MD5 checksums in step 5 are the same
    step 7. Verify that the FTP client is able to delete the file uploaded in
            step 3

    NOTE: This test is only performed if the testvar permission is set to
    "ReadWrite" for the ftpuser being tested.


    References:

    IETF RFC 959 "FILE TRANSFER PROTOCOL (FTP)"

    https://tools.ietf.org/html/rfc959
Test Name Synopsis
Perform FTP read-after-write test to verify file integrity using passive mode with EPSV disabled ipv6_ftp_23 Perform FTP read-after-write test to verify file integrity using passive mode with EPSV disabled


    step 1. Resolve the IPv6 FTP server name using DNS or NetBIOS
    step 2. Start a new FTP client on the LAN
    step 3. Verify that the FTP client is able to upload a file to the
            specified directory on the IPv6 FTP server using a passive mode
            connection with the EPSV command disabled
    step 4. Verify the FTP client is able to download the file generated in
            step 3 from the IPv6 FTP server back to the local system using a passive
            mode connection with the EPSV command disabled
    step 5. Perform an MD5 checksum on the original file uploaded to the FTP
            server in step 3 and downloaded from the IPv6 FTP server in step 4
    step 6. Verify that the MD5 checksums in step 5 are the same
    step 7. Verify that the FTP client is able to delete the file uploaded in
            step 3

    NOTE: This test is only performed if the testvar permission is set to
    "ReadWrite" for the ftpuser being tested.


    References:

    IETF RFC 959 "FILE TRANSFER PROTOCOL (FTP)"

    https://tools.ietf.org/html/rfc959
Test Name Synopsis
Verify IPv6 FTP server rejects clients with invalid password ipv6_ftp_30 Verify IPv6 FTP server rejects clients with invalid password


    step 1. Resolve the IPv6 FTP server name using DNS or NetBIOS
    step 2. Start a new FTP client on the LAN
    step 3. Verify that the FTP client is not able to log in to the IPv6 FTP server
            and perform a directory listing using an invalid password

    NOTE: CDRouter's FTP client will perform a directory listing on the
    directory specified by the testvar path for the applicable ftpuser using
    an invalid password


    References:

    IETF RFC 959 "FILE TRANSFER PROTOCOL (FTP)"

    https://tools.ietf.org/html/rfc959
Test Name Synopsis
Verify IPv6 FTP server rejects unknown clients ipv6_ftp_31 Verify IPv6 FTP server rejects unknown clients


    step 1. Resolve the IPv6 FTP server name using DNS or NetBIOS
    step 2. Start a new FTP client on the LAN
    step 3. Verify that the FTP client is not able to log in to the IPv6 FTP server
            and perform a directory listing using an unknown username

    NOTE: CDRouter's FTP client will perform a directory listing on the
    path specified by the testvar path using an unknown username


    References:

    IETF RFC 959 "FILE TRANSFER PROTOCOL (FTP)"

    https://tools.ietf.org/html/rfc959
Test Name Synopsis
Verify IPv6 FTP server does not allow file upload for ReadOnly clients ipv6_ftp_40 Verify IPv6 FTP server does not allow file upload for ReadOnly clients


    step 1. Resolve the IPv6 FTP server name using DNS or NetBIOS
    step 2. Start a new FTP client on the LAN
    step 3. Verify that the FTP client is not able to upload a file to the
            specified path on the IPv6 FTP server
    step 4. Verify that the ReadOnly FTP client is able to perform a directory
            listing

    NOTE: This test is only performed if the testvar permission is set to
    "ReadOnly" for the ftpuser being tested.


    References:

    IETF RFC 959 "FILE TRANSFER PROTOCOL (FTP)"

    https://tools.ietf.org/html/rfc959
Test Name Synopsis
Verify IPv6 FTP server does not allow directory creation for ReadOnly clients ipv6_ftp_41 Verify IPv6 FTP server does not allow directory creation for ReadOnly clients


    step 1. Resolve the IPv6 FTP server name using DNS or NetBIOS
    step 2. Start a new FTP client on the LAN
    step 3. Verify that the FTP client is not able to create a new directory in
            the specified path on the IPv6 FTP server

    NOTE: This test is only performed if the testvar permission is set to
    "ReadOnly" for the ftpuser being tested.


    References:

    IETF RFC 959 "FILE TRANSFER PROTOCOL (FTP)"

    https://tools.ietf.org/html/rfc959
Test Name Synopsis
Verify IPv6 FTP server supports simultaneous access from two clients ipv6_ftp_50 Verify IPv6 FTP server supports simultaneous access from two clients


    step 1. Resolve the IPv6 FTP server name using DNS or NetBIOS
    step 2. Start a new FTP client on the LAN
    step 3. Start a second FTP client on the same LAN DHCP host with the same
            FTP user
    step 4. Verify that both FTP clients are able to upload a file to the
            specified path on the IPv6 FTP server simultaneously
    step 5. Verify that both FTP clients are able to download the files
            generated in step 4 from the specified directory to the local system
            simultaneously
    step 6. Verify that both FTP clients are able to delete the files uploaded
            in step 3 simultaneously

    NOTE: This is a basic scaling test designed to verify that the IPv6 FTP server
    allows simultaneous access from two instances of the same FTP client on the
    same LAN DHCP host.

    NOTE: This test is only performed if the testvar permission is set to
    "ReadWrite" for the ftpuser being tested.


    References:

    IETF RFC 959 "FILE TRANSFER PROTOCOL (FTP)"

    https://tools.ietf.org/html/rfc959
Test Name Synopsis
Verify all configured FTP users ipv6_ftp_51 Verify all configured FTP users


    step 1. Resolve the IPv6 FTP server name using DNS or NetBIOS
    step 2. Start a new FTP client on the LAN
    step 3. Verify that the FTP client is able to upload a file to the
            specified path on the IPv6 FTP server
    step 4. Verify that the FTP client is able to download the file generated in
            step 3 from the specified directory to the local system
    step 5. Verify that the FTP client is able to delete the file uploaded in
            step 3
    step 6. Repeat steps 2 through 3 for all configured ftpusers

    NOTE: This scaling test is designed to verify that all of the FTP client
    configurations, defined as "ftpuser" testvar_groups, work as expected.

    NOTE: Up to 20 FTP client configurations can be created. Each FTP client
    configuration will be created and verified sequentially on the same LAN DHCP
    host.

    NOTE: If the testvar permission is set to "ReadOnly" for a particular
    FTP client configuration, only a directory listing will be performed as part
    of this test.


    References:

    IETF RFC 959 "FILE TRANSFER PROTOCOL (FTP)"

    https://tools.ietf.org/html/rfc959
Test Name Synopsis
Verify the maximum number of FTP sessions ipv6_ftp_52 Verify the maximum number of FTP sessions


    step 1. Resolve the IPv6 FTP server name using DNS or NetBIOS
    step 2. Create a new DHCP client on the LAN and verify that the client
            receives an IP address from the DUT's LAN DHCP server
    step 3. Repeat step 1 until the entire DHCP pool on the DUT is exhausted or
            the maximum number of FTP sessions, as defined by the testvar
            storageFtpMaxSessions, is reached
    step 4. Start a new FTP client using the LAN host 1
    step 5. Verify that the FTP client is able to upload a file to the specified
            directory
    step 6. Verify that the FTP client is able to download the file generated in
            step 5 from the specified directory to the local system
    step 7. Verify that the FTP client is able to delete the file uploaded in
            step 5 from the IPv6 FTP server
    step 8. Repeat steps 4 through 7 for all LAN DHCP clients created in step 3

    NOTE: This scaling test is designed to verify the maximum number of FTP
    client connections. Each FTP client connection will use the same FTP user
    and will be created on a unique LAN DHCP host.

    NOTE: The maximum number of FTP client connections created is specified by
    the testvar storageFtpMaxSessions, which defaults to 20. If the DHCP pool
    is smaller than the storageFtpMaxSessions value, only enough clients to
    exhaust the DHCP pool will be created.

    NOTE: If the testvar permission is set to "ReadOnly" for a particular
    FTP user, only a directory listing will be performed.

    NOTE: This test will prefer "ReadWrite" FTP users over "ReadOnly" users.
    However, it will still run if all users configured as "ReadOnly".


    References:

    IETF RFC 959 "FILE TRANSFER PROTOCOL (FTP)"

    https://tools.ietf.org/html/rfc959

ftps-v6.tcl

FTPS IPv6 storage tests

Test Name Synopsis
Verify IPv6 FTPS server allows directory listing ipv6_ftps_2 Verify IPv6 FTPS server allows directory listing


    step 1. Resolve the IPv6 FTPS server name using DNS or NetBIOS
    step 2. Start a new FTPS client on the LAN
    step 3. Verify that the FTPS client is able to log in to the IPv6 FTPS server and
            perform a directory listing
    step 4. Verify that the IPv6 FTPS server responds to the directory listing

    NOTE: CDRouter's FTPS client will perform a directory listing on the
    directory specified by the testvar path for the applicable ftpuser


    References:

    IETF RFC 2228 "FTP Security Extensions"

    https://tools.ietf.org/html/rfc2228
Test Name Synopsis
Verify IPv6 FTPS server allows name list command ipv6_ftps_3 Verify IPv6 FTPS server allows name list command


    step 1. Resolve the IPv6 FTPS server name using DNS or NetBIOS
    step 2. Start a new FTPS client on the LAN
    step 3. Verify that the FTPS client is able to log in to the IPv6 FTPS server and
            perform a name list command
    step 4. Verify that the IPv6 FTPS server responds to the name list

    NOTE: CDRouter's FTPS client will perform a directory listing on the
    directory specified by the testvar path for the applicable ftpuser


    References:

    IETF RFC 2228 "FTP Security Extensions"

    https://tools.ietf.org/html/rfc2228
Test Name Synopsis
Verify IPv6 FTPS server allows file upload ipv6_ftps_10 Verify IPv6 FTPS server allows file upload


    step 1. Resolve the IPv6 FTPS server name using DNS or NetBIOS
    step 2. Start a new FTPS client on the LAN
    step 3. Verify that the FTPS client is able to upload a file to the
            specified directory on the IPv6 FTPS server
    step 4. Verify that the FTPS client is able to delete the file uploaded in
            step 3

    NOTE: This test is only performed if the testvar permission is set to
    "ReadWrite" for the ftpuser being tested.


    References:

    IETF RFC 2228 "FTP Security Extensions"

    https://tools.ietf.org/html/rfc2228
Test Name Synopsis
Verify IPv6 FTPS server allows file download ipv6_ftps_11 Verify IPv6 FTPS server allows file download


    step 1. Resolve the IPv6 FTPS server name using DNS or NetBIOS
    step 2. Start a new FTPS client on the LAN
    step 3. Verify that the FTPS client is able to upload a file to the
            specified directory on the IPv6 FTPS server
    step 4. Verify that the FTPS client is able to download the file uploaded
            in step 3 back to the local system
    step 5. Verify that the FTPS client is able to delete the file uploaded in
            step 3

    NOTE: This test is only performed if the testvar permission is set to
    "ReadWrite" for the ftpuser being tested.


    References:

    IETF RFC 2228 "FTP Security Extensions"

    https://tools.ietf.org/html/rfc2228
Test Name Synopsis
Verify IPv6 FTPS server allows creation and deletion of new directories ipv6_ftps_12 Verify IPv6 FTPS server allows creation and deletion of new directories


    step 1. Resolve the IPv6 FTPS server name using DNS or NetBIOS
    step 2. Start a new FTPS client on the LAN
    step 3. Verify that the FTPS client is able to create a new directory within
            the specified share location on the IPv6 FTPS server
    step 4. Verify that the FTPS client is able to upload a file to the new
            directory created in step 3
    step 5. Verify that the FTPS client is able to delete the file uploaded in
            step 4
    step 6. Verify that the FTPS client is able to delete the directory created
            in step 3

    NOTE: This test is only performed if the testvar permission is set to
    "ReadWrite" for the ftpuser being tested.


    References:

    IETF RFC 2228 "FTP Security Extensions"

    https://tools.ietf.org/html/rfc2228
Test Name Synopsis
Verify IPv6 FTPS server allows files to be renamed ipv6_ftps_13 Verify IPv6 FTPS server allows files to be renamed


    step 1. Resolve the IPv6 FTPS server name using DNS or NetBIOS
    step 2. Start a new FTPS client on the LAN
    step 3. Verify that the FTPS client is able to upload a file to the
            specified share location on the IPv6 FTPS server
    step 4. Verify that the FTPS client is able to rename the file uploaded in
            step 3
    step 5. Verify that the FTPS client is able to delete the file renamed in
            step 4

    NOTE: This test is only performed if the testvar permission is set to
    "ReadWrite" for the ftpuser being tested.


    References:

    IETF RFC 2228 "FTP Security Extensions"

    https://tools.ietf.org/html/rfc2228
Test Name Synopsis
Verify IPv6 FTPS server allows directories to be renamed ipv6_ftps_14 Verify IPv6 FTPS server allows directories to be renamed


    step 1. Resolve the IPv6 FTPS server name using DNS or NetBIOS
    step 2. Start a new FTPS client on the LAN
    step 3. Verify that the FTPS client is able to create a new folder within the
            specified share location on the IPv6 FTPS server
    step 4. Verify that the FTPS client is able to upload a file to the new
            directory created in step 3
    step 5. Rename the directory created in step 3
    step 6. Verify that the FTPS client is able to delete the file uploaded in
            step 4
    step 7. Verify that the FTPS client is able to delete the directory renamed
            in step 5

    NOTE: This test is only performed if the testvar permission is set to
    "ReadWrite" for the ftpuser being tested.


    References:

    IETF RFC 2228 "FTP Security Extensions"

    https://tools.ietf.org/html/rfc2228
Test Name Synopsis
Perform FTPS read-after-write test to verify file integrity ipv6_ftps_20 Perform FTPS read-after-write test to verify file integrity


    step 1. Resolve the IPv6 FTPS server name using DNS or NetBIOS
    step 2. Start a new FTPS client on the LAN
    step 3. Verify that the FTPS client is able to upload a file to the
            specified directory on the IPv6 FTPS server
    step 4. Verify the FTPS client is able to download the file generated in
            step 3 from the IPv6 FTPS server back to the local system
    step 5. Perform an MD5 checksum on the original file uploaded to the FTP
            server in step 3 and downloaded from the IPv6 FTPS server in step 4
    step 6. Verify that the MD5 checksums in step 5 are the same
    step 7. Verify that the FTPS client is able to delete the file uploaded in
            step 3

    NOTE: This test is only performed if the testvar permission is set to
    "ReadWrite" for the ftpuser being tested.


    References:

    IETF RFC 2228 "FTP Security Extensions"

    https://tools.ietf.org/html/rfc2228
Test Name Synopsis
Perform FTPS read-after-write test to verify file integrity using active mode ipv6_ftps_21 Perform FTPS read-after-write test to verify file integrity using active mode


    step 1. Resolve the IPv6 FTPS server name using DNS or NetBIOS
    step 2. Start a new FTPS client on the LAN
    step 3. Verify that the FTPS client is able to upload a file to the
            specified directory on the IPv6 FTPS server using an active mode
            connection
    step 4. Verify the FTPS client is able to download the file generated in
            step 3 from the IPv6 FTPS server back to the local system using an active
            mode connection
    step 5. Perform an MD5 checksum on the original file uploaded to the FTP
            server in step 3 and downloaded from the IPv6 FTPS server in step 4
    step 6. Verify that the MD5 checksums in step 5 are the same
    step 7. Verify that the FTPS client is able to delete the file uploaded in
            step 3

    NOTE: This test is only performed if the testvar permission is set to
    "ReadWrite" for the ftpuser being tested.


    References:

    IETF RFC 2228 "FTP Security Extensions"

    https://tools.ietf.org/html/rfc2228
Test Name Synopsis
Perform FTPS read-after-write test to verify file integrity using active mode with EPRT disabled ipv6_ftps_22 Perform FTPS read-after-write test to verify file integrity using active mode with EPRT disabled


    step 1. Resolve the IPv6 FTPS server name using DNS or NetBIOS
    step 2. Start a new FTPS client on the LAN
    step 3. Verify that the FTPS client is able to upload a file to the
            specified directory on the IPv6 FTPS server using an active mode
            connection with the EPRT command disabled
    step 4. Verify the FTPS client is able to download the file generated in
            step 3 from the IPv6 FTPS server back to the local system using an active
            mode connection with the EPRT command disabled
    step 5. Perform an MD5 checksum on the original file uploaded to the FTP
            server in step 3 and downloaded from the IPv6 FTPS server in step 4
    step 6. Verify that the MD5 checksums in step 5 are the same
    step 7. Verify that the FTPS client is able to delete the file uploaded in
            step 3

    NOTE: This test is only performed if the testvar permission is set to
    "ReadWrite" for the ftpuser being tested.


    References:

    IETF RFC 2228 "FTP Security Extensions"

    https://tools.ietf.org/html/rfc2228
Test Name Synopsis
Perform FTPS read-after-write test to verify file integrity using passive mode with EPSV disabled ipv6_ftps_23 Perform FTPS read-after-write test to verify file integrity using passive mode with EPSV disabled


    step 1. Resolve the IPv6 FTPS server name using DNS or NetBIOS
    step 2. Start a new FTPS client on the LAN
    step 3. Verify that the FTPS client is able to upload a file to the
            specified directory on the IPv6 FTPS server using a passive mode
            connection with the EPSV command disabled
    step 4. Verify the FTPS client is able to download the file generated in
            step 3 from the IPv6 FTPS server back to the local system using a passive
            mode connection with the EPSV command disabled
    step 5. Perform an MD5 checksum on the original file uploaded to the FTP
            server in step 3 and downloaded from the IPv6 FTPS server in step 4
    step 6. Verify that the MD5 checksums in step 5 are the same
    step 7. Verify that the FTPS client is able to delete the file uploaded in
            step 3

    NOTE: This test is only performed if the testvar permission is set to
    "ReadWrite" for the ftpuser being tested.


    References:

    IETF RFC 2228 "FTP Security Extensions"

    https://tools.ietf.org/html/rfc2228
Test Name Synopsis
Verify IPv6 FTPS server rejects clients with invalid password ipv6_ftps_30 Verify IPv6 FTPS server rejects clients with invalid password


    step 1. Resolve the IPv6 FTPS server name using DNS or NetBIOS
    step 2. Start a new FTPS client on the LAN
    step 3. Verify that the FTPS client is not able to log in to the IPv6 FTPS server
            and perform a directory listing using an invalid password

    NOTE: CDRouter's FTPS client will perform a directory listing on the
    directory specified by the testvar path for the applicable ftpuser using
    an invalid password


    References:

    IETF RFC 2228 "FTP Security Extensions"

    https://tools.ietf.org/html/rfc2228
Test Name Synopsis
Verify IPv6 FTPS server rejects unknown clients ipv6_ftps_31 Verify IPv6 FTPS server rejects unknown clients


    step 1. Resolve the IPv6 FTPS server name using DNS or NetBIOS
    step 2. Start a new FTPS client on the LAN
    step 3. Verify that the FTPS client is not able to log in to the IPv6 FTPS server
            and perform a directory listing using an unknown username

    NOTE: CDRouter's FTPS client will perform a directory listing on the
    path specified by the testvar path using an unknown username


    References:

    IETF RFC 2228 "FTP Security Extensions"

    https://tools.ietf.org/html/rfc2228
Test Name Synopsis
Verify IPv6 FTPS server does not allow file upload for ReadOnly clients ipv6_ftps_40 Verify IPv6 FTPS server does not allow file upload for ReadOnly clients


    step 1. Resolve the IPv6 FTPS server name using DNS or NetBIOS
    step 2. Start a new FTPS client on the LAN
    step 3. Verify that the FTPS client is not able to upload a file to the
            specified path on the IPv6 FTPS server
    step 4. Verify that the ReadOnly FTPS client is able to perform a directory
            listing

    NOTE: This test is only performed if the testvar permission is set to
    "ReadOnly" for the ftpuser being tested.


    References:

    IETF RFC 2228 "FTP Security Extensions"

    https://tools.ietf.org/html/rfc2228
Test Name Synopsis
Verify IPv6 FTPS server does not allow directory creation for ReadOnly clients ipv6_ftps_41 Verify IPv6 FTPS server does not allow directory creation for ReadOnly clients


    step 1. Resolve the IPv6 FTPS server name using DNS or NetBIOS
    step 2. Start a new FTPS client on the LAN
    step 3. Verify that the FTPS client is not able to create a new directory in
            the specified path on the IPv6 FTPS server

    NOTE: This test is only performed if the testvar permission is set to
    "ReadOnly" for the ftpuser being tested.


    References:

    IETF RFC 2228 "FTP Security Extensions"

    https://tools.ietf.org/html/rfc2228
Test Name Synopsis
Verify IPv6 FTPS server supports simultaneous access from two clients ipv6_ftps_50 Verify IPv6 FTPS server supports simultaneous access from two clients


    step 1. Resolve the IPv6 FTPS server name using DNS or NetBIOS
    step 2. Start a new FTPS client on the LAN
    step 3. Start a second FTPS client on the same LAN DHCP host with the same
            FTPS user
    step 4. Verify that both FTPS clients are able to upload a file to the
            specified path on the IPv6 FTPS server simultaneously
    step 5. Verify that both FTPS clients are able to download the files
            generated in step 4 from the specified directory to the local system
            simultaneously
    step 6. Verify that both FTPS clients are able to delete the files uploaded
            in step 3 simultaneously

    NOTE: This is a basic scaling test designed to verify that the IPv6 FTPS server
    allows simultaneous access from two instances of the same FTPS client on the
    same LAN DHCP host.

    NOTE: This test is only performed if the testvar permission is set to
    "ReadWrite" for the ftpuser being tested.


    References:

    IETF RFC 2228 "FTP Security Extensions"

    https://tools.ietf.org/html/rfc2228
Test Name Synopsis
Verify all configured FTPS users ipv6_ftps_51 Verify all configured FTPS users


    step 1. Resolve the IPv6 FTPS server name using DNS or NetBIOS
    step 2. Start a new FTPS client on the LAN
    step 3. Verify that the FTPS client is able to upload a file to the
            specified path on the IPv6 FTPS server
    step 4. Verify that the FTPS client is able to download the file generated in
            step 3 from the specified directory to the local system
    step 5. Verify that the FTPS client is able to delete the file uploaded in
            step 3
    step 6. Repeat steps 2 through 3 for all configured ftpusers

    NOTE: This scaling test is designed to verify that all of the FTPS client
    configurations, defined as "ftpuser" testvar_groups, work as expected.

    NOTE: Up to 20 FTPS client configurations can be created. Each FTPS client
    configuration will be created and verified sequentially on the same LAN DHCP
    host.

    NOTE: If the testvar permission is set to "ReadOnly" for a particular
    FTPS client configuration, only a directory listing will be performed as part
    of this test.


    References:

    IETF RFC 2228 "FTP Security Extensions"

    https://tools.ietf.org/html/rfc2228
Test Name Synopsis
Verify the maximum number of FTPS sessions ipv6_ftps_52 Verify the maximum number of FTPS sessions


    step 1. Resolve the IPv6 FTPS server name using DNS or NetBIOS
    step 2. Create a new DHCP client on the LAN and verify that the client
            receives an IP address from the DUT's LAN DHCP server
    step 3. Repeat step 1 until the entire DHCP pool on the DUT is exhausted or
            the maximum number of FTPS sessions, as defined by the testvar
            storageFtpMaxSessions, is reached
    step 4. Start a new FTPS client using the LAN host 1
    step 5. Verify that the FTPS client is able to upload a file to the specified
            directory
    step 6. Verify that the FTPS client is able to download the file generated in
            step 5 from the specified directory to the local system
    step 7. Verify that the FTPS client is able to delete the file uploaded in
            step 5 from the IPv6 FTPS server
    step 8. Repeat steps 4 through 7 for all LAN DHCP clients created in step 3

    NOTE: This scaling test is designed to verify the maximum number of FTP
    client connections. Each FTPS client connection will use the same FTPS user
    and will be created on a unique LAN DHCP host.

    NOTE: The maximum number of FTPS client connections created is specified by
    the testvar storageFtpMaxSessions, which defaults to 20. If the DHCP pool
    is smaller than the storageFtpMaxSessions value, only enough clients to
    exhaust the DHCP pool will be created.

    NOTE: If the testvar permission is set to "ReadOnly" for a particular
    FTPS user, only a directory listing will be performed.

    NOTE: This test will prefer "ReadWrite" FTPS users over "ReadOnly" users.
    However, it will still run if all users configured as "ReadOnly".


    References:

    IETF RFC 2228 "FTP Security Extensions"

    https://tools.ietf.org/html/rfc2228

ftp-wan-v6.tcl

WAN FTP IPv6 storage tests

Test Name Synopsis
Verify FTP server allows directory listing ipv6_ftp_wan_2 Verify FTP server allows directory listing


    step 1. Determine the WAN side FTP server address
    step 2. Start a new FTP client on the WAN
    step 3. Verify that the FTP client is able to log in to the FTP server and
            perform a directory listing
    step 4. Verify that the FTP server responds to the directory listing

    NOTE: CDRouter's FTP client will perform a directory listing on the
    directory specified by the testvar path for the applicable ftpuser


    References:

    IETF RFC 959 "FILE TRANSFER PROTOCOL (FTP)"

    https://tools.ietf.org/html/rfc959
Test Name Synopsis
Verify FTP server allows name list command ipv6_ftp_wan_3 Verify FTP server allows name list command


    step 1. Determine the WAN side FTP server address
    step 2. Start a new FTP client on the WAN
    step 3. Verify that the FTP client is able to log in to the FTP server and
            perform a name list command
    step 4. Verify that the FTP server responds to the name list

    NOTE: CDRouter's FTP client will perform a directory listing on the
    directory specified by the testvar path for the applicable ftpuser


    References:

    IETF RFC 959 "FILE TRANSFER PROTOCOL (FTP)"

    https://tools.ietf.org/html/rfc959
Test Name Synopsis
Verify FTP server allows file upload ipv6_ftp_wan_10 Verify FTP server allows file upload


    step 1. Determine the WAN side FTP server address
    step 2. Start a new FTP client on the WAN
    step 3. Verify that the FTP client is able to upload a file to the
            specified directory on the FTP server
    step 4. Verify that the FTP client is able to delete the file uploaded in
            step 3

    NOTE: This test is only performed if the testvar permission is set to
    "ReadWrite" for the ftpuser being tested.


    References:

    IETF RFC 959 "FILE TRANSFER PROTOCOL (FTP)"

    https://tools.ietf.org/html/rfc959
Test Name Synopsis
Verify FTP server allows file download ipv6_ftp_wan_11 Verify FTP server allows file download


    step 1. Determine the WAN side FTP server address
    step 2. Start a new FTP client on the WAN
    step 3. Verify that the FTP client is able to upload a file to the
            specified directory on the FTP server
    step 4. Verify that the FTP client is able to download the file uploaded
            in step 3 back to the local system
    step 5. Verify that the FTP client is able to delete the file uploaded in
            step 3

    NOTE: This test is only performed if the testvar permission is set to
    "ReadWrite" for the ftpuser being tested.


    References:

    IETF RFC 959 "FILE TRANSFER PROTOCOL (FTP)"

    https://tools.ietf.org/html/rfc959
Test Name Synopsis
Verify FTP server allows creation and deletion of new directories ipv6_ftp_wan_12 Verify FTP server allows creation and deletion of new directories


    step 1. Determine the WAN side FTP server address
    step 2. Start a new FTP client on the WAN
    step 3. Verify that the FTP client is able to create a new directory within
            the specified share location on the FTP server
    step 4. Verify that the FTP client is able to upload a file to the new
            directory created in step 3
    step 5. Verify that the FTP client is able to delete the file uploaded in
            step 4
    step 6. Verify that the FTP client is able to delete the directory created
            in step 3

    NOTE: This test is only performed if the testvar permission is set to
    "ReadWrite" for the ftpuser being tested.


    References:

    IETF RFC 959 "FILE TRANSFER PROTOCOL (FTP)"

    https://tools.ietf.org/html/rfc959
Test Name Synopsis
Verify FTP server allows files to be renamed ipv6_ftp_wan_13 Verify FTP server allows files to be renamed


    step 1. Determine the WAN side FTP server address
    step 2. Start a new FTP client on the WAN
    step 3. Verify that the FTP client is able to upload a file to the
            specified share location on the FTP server
    step 4. Verify that the FTP client is able to rename the file uploaded in
            step 3
    step 5. Verify that the FTP client is able to delete the file renamed in
            step 4

    NOTE: This test is only performed if the testvar permission is set to
    "ReadWrite" for the ftpuser being tested.


    References:

    IETF RFC 959 "FILE TRANSFER PROTOCOL (FTP)"

    https://tools.ietf.org/html/rfc959
Test Name Synopsis
Verify FTP server allows directories to be renamed ipv6_ftp_wan_14 Verify FTP server allows directories to be renamed


    step 1. Determine the WAN side FTP server address
    step 2. Start a new FTP client on the WAN
    step 3. Verify that the FTP client is able to create a new folder within the
            specified share location on the FTP server
    step 4. Verify that the FTP client is able to upload a file to the new
            directory created in step 3
    step 5. Rename the directory created in step 3
    step 6. Verify that the FTP client is able to delete the file uploaded in
            step 4
    step 7. Verify that the FTP client is able to delete the directory renamed
            in step 5

    NOTE: This test is only performed if the testvar permission is set to
    "ReadWrite" for the ftpuser being tested.


    References:

    IETF RFC 959 "FILE TRANSFER PROTOCOL (FTP)"

    https://tools.ietf.org/html/rfc959
Test Name Synopsis
Perform FTP read-after-write test to verify file integrity ipv6_ftp_wan_20 Perform FTP read-after-write test to verify file integrity


    step 1. Determine the WAN side FTP server address
    step 2. Start a new FTP client on the WAN
    step 3. Verify that the FTP client is able to upload a file to the
            specified directory on the FTP server
    step 4. Verify the FTP client is able to download the file generated in
            step 3 from the FTP server back to the local system
    step 5. Perform an MD5 checksum on the original file uploaded to the FTP
            server in step 3 and downloaded from the FTP server in step 4
    step 6. Verify that the MD5 checksums in step 5 are the same
    step 7. Verify that the FTP client is able to delete the file uploaded in
            step 3

    NOTE: This test is only performed if the testvar permission is set to
    "ReadWrite" for the ftpuser being tested.


    References:

    IETF RFC 959 "FILE TRANSFER PROTOCOL (FTP)"

    https://tools.ietf.org/html/rfc959
Test Name Synopsis
Perform FTP read-after-write test to verify file integrity using active mode ipv6_ftp_wan_21 Perform FTP read-after-write test to verify file integrity using active mode


    step 1. Determine the WAN side FTP server address
    step 2. Start a new FTP client on the WAN
    step 3. Verify that the FTP client is able to upload a file to the
            specified directory on the FTP server using an active mode
            connection
    step 4. Verify the FTP client is able to download the file generated in
            step 3 from the FTP server back to the local system using an active
            mode connection
    step 5. Perform an MD5 checksum on the original file uploaded to the FTP
            server in step 3 and downloaded from the FTP server in step 4
    step 6. Verify that the MD5 checksums in step 5 are the same
    step 7. Verify that the FTP client is able to delete the file uploaded in
            step 3

    NOTE: This test is only performed if the testvar permission is set to
    "ReadWrite" for the ftpuser being tested.


    References:

    IETF RFC 959 "FILE TRANSFER PROTOCOL (FTP)"

    https://tools.ietf.org/html/rfc959
Test Name Synopsis
Perform FTP read-after-write test to verify file integrity using active mode with EPRT disabled ipv6_ftp_wan_22 Perform FTP read-after-write test to verify file integrity using active mode with EPRT disabled


    step 1. Determine the WAN side FTP server address
    step 2. Start a new FTP client on the WAN
    step 3. Verify that the FTP client is able to upload a file to the
            specified directory on the FTP server using an active mode
            connection with the EPRT command disabled
    step 4. Verify the FTP client is able to download the file generated in
            step 3 from the FTP server back to the local system using an active
            mode connection with the EPRT command disabled
    step 5. Perform an MD5 checksum on the original file uploaded to the FTP
            server in step 3 and downloaded from the FTP server in step 4
    step 6. Verify that the MD5 checksums in step 5 are the same
    step 7. Verify that the FTP client is able to delete the file uploaded in
            step 3

    NOTE: This test is only performed if the testvar permission is set to
    "ReadWrite" for the ftpuser being tested.


    References:

    IETF RFC 959 "FILE TRANSFER PROTOCOL (FTP)"

    https://tools.ietf.org/html/rfc959
Test Name Synopsis
Perform FTP read-after-write test to verify file integrity using passive mode with EPSV disabled ipv6_ftp_wan_23 Perform FTP read-after-write test to verify file integrity using passive mode with EPSV disabled


    step 1. Determine the WAN side FTP server address
    step 2. Start a new FTP client on the WAN
    step 3. Verify that the FTP client is able to upload a file to the
            specified directory on the FTP server using a passive mode
            connection with the EPSV command disabled
    step 4. Verify the FTP client is able to download the file generated in
            step 3 from the FTP server back to the local system using a passive
            mode connection with the EPSV command disabled
    step 5. Perform an MD5 checksum on the original file uploaded to the FTP
            server in step 3 and downloaded from the FTP server in step 4
    step 6. Verify that the MD5 checksums in step 5 are the same
    step 7. Verify that the FTP client is able to delete the file uploaded in
            step 3

    NOTE: This test is only performed if the testvar permission is set to
    "ReadWrite" for the ftpuser being tested.


    References:

    IETF RFC 959 "FILE TRANSFER PROTOCOL (FTP)"

    https://tools.ietf.org/html/rfc959
Test Name Synopsis
Verify FTP server rejects clients with invalid password ipv6_ftp_wan_30 Verify FTP server rejects clients with invalid password


    step 1. Determine the WAN side FTP server address
    step 2. Start a new FTP client on the WAN
    step 3. Verify that the FTP client is not able to log in to the FTP server
            and perform a directory listing using an invalid password

    NOTE: CDRouter's FTP client will perform a directory listing on the
    directory specified by the testvar path for the applicable ftpuser using
    an invalid password


    References:

    IETF RFC 959 "FILE TRANSFER PROTOCOL (FTP)"

    https://tools.ietf.org/html/rfc959
Test Name Synopsis
Verify FTP server rejects unknown clients ipv6_ftp_wan_31 Verify FTP server rejects unknown clients


    step 1. Determine the WAN side FTP server address
    step 2. Start a new FTP client on the WAN
    step 3. Verify that the FTP client is not able to log in to the FTP server
            and perform a directory listing using an unknown username

    NOTE: CDRouter's FTP client will perform a directory listing on the
    path specified by the testvar path using an unknown username


    References:

    IETF RFC 959 "FILE TRANSFER PROTOCOL (FTP)"

    https://tools.ietf.org/html/rfc959
Test Name Synopsis
Verify FTP server does not allow file upload for ReadOnly clients ipv6_ftp_wan_40 Verify FTP server does not allow file upload for ReadOnly clients


    step 1. Determine the WAN side FTP server address
    step 2. Start a new FTP client on the WAN
    step 3. Verify that the FTP client is not able to upload a file to the
            specified path on the FTP server
    step 4. Verify that the ReadOnly FTP client is able to perform a directory
            listing

    NOTE: This test is only performed if the testvar permission is set to
    "ReadOnly" for the ftpuser being tested.


    References:

    IETF RFC 959 "FILE TRANSFER PROTOCOL (FTP)"

    https://tools.ietf.org/html/rfc959
Test Name Synopsis
Verify FTP server does not allow directory creation for ReadOnly clients ipv6_ftp_wan_41 Verify FTP server does not allow directory creation for ReadOnly clients


    step 1. Determine the WAN side FTP server address
    step 2. Start a new FTP client on the WAN
    step 3. Verify that the FTP client is not able to create a new directory in
            the specified path on the FTP server

    NOTE: This test is only performed if the testvar permission is set to
    "ReadOnly" for the ftpuser being tested.


    References:

    IETF RFC 959 "FILE TRANSFER PROTOCOL (FTP)"

    https://tools.ietf.org/html/rfc959
Test Name Synopsis
Verify FTP server supports simultaneous access from two clients ipv6_ftp_wan_50 Verify FTP server supports simultaneous access from two clients


    step 1. Determine the WAN side FTP server address
    step 2. Start a new FTP client on the WAN
    step 3. Start a second FTP client on the same WAN host with the same
            FTP user
    step 4. Verify that both FTP clients are able to upload a file to the
            specified path on the FTP server simultaneously
    step 5. Verify that both FTP clients are able to download the files
            generated in step 4 from the specified directory to the local system
            simultaneously
    step 6. Verify that both FTP clients are able to delete the files uploaded
            in step 3 simultaneously

    NOTE: This is a basic scaling test designed to verify that the FTP server
    allows simultaneous access from two instances of the same FTP client on the
    same WAN host.

    NOTE: This test is only performed if the testvar permission is set to
    "ReadWrite" for the ftpuser being tested.


    References:

    IETF RFC 959 "FILE TRANSFER PROTOCOL (FTP)"

    https://tools.ietf.org/html/rfc959
Test Name Synopsis
Verify all configured FTP users ipv6_ftp_wan_51 Verify all configured FTP users


    step 1. Determine the WAN side FTP server address
    step 2. Start a new FTP client on the WAN
    step 3. Verify that the FTP client is able to upload a file to the
            specified path on the FTP server
    step 4. Verify that the FTP client is able to download the file generated in
            step 3 from the specified directory to the local system
    step 5. Verify that the FTP client is able to delete the file uploaded in
            step 3
    step 6. Repeat steps 2 through 3 for all configured ftpusers

    NOTE: This scaling test is designed to verify that all of the FTP client
    configurations, defined as "ftpuser" testvar_groups, work as expected.

    NOTE: Up to 20 FTP client configurations can be created.

    NOTE: If the testvar permission is set to "ReadOnly" for a particular
    FTP client configuration, only a directory listing will be performed as part
    of this test.


    References:

    IETF RFC 959 "FILE TRANSFER PROTOCOL (FTP)"

    https://tools.ietf.org/html/rfc959
Test Name Synopsis
Verify the maximum number of FTP sessions ipv6_ftp_wan_52 Verify the maximum number of FTP sessions


    step 1. Determine the WAN side FTP server address
    step 2. Create new WAN side FTP clients
    step 3. Start a new FTP client using the WAN client 1
    step 4. Verify that the FTP client is able to upload a file to the specified
            directory
    step 5. Verify that the FTP client is able to download the file generated in
            step 5 from the specified directory to the local system
    step 6. Verify that the FTP client is able to delete the file uploaded in
            step 5 from the FTP server
    step 7. Repeat steps 4 through 7 for all WAN clients created in step 2

    NOTE: This scaling test is designed to verify the maximum number of FTP
    client connections. Each FTP client connection will use the same FTP user
    and will be created on a unique WAN host.

    NOTE: The maximum number of FTP client connections created is specified by
    the testvar storageFtpMaxSessions, which defaults to 20.

    NOTE: If the testvar permission is set to "ReadOnly" for a particular
    FTP user, only a directory listing will be performed.

    NOTE: This test will prefer "ReadWrite" FTP users over "ReadOnly" users.
    However, it will still run if all users configured as "ReadOnly".


    References:

    IETF RFC 959 "FILE TRANSFER PROTOCOL (FTP)"

    https://tools.ietf.org/html/rfc959

ftps-wan-v6.tcl

WAN FTPS IPv6 storage tests

Test Name Synopsis
Verify FTPS server allows directory listing ipv6_ftps_wan_2 Verify FTPS server allows directory listing


    step 1. Determine the WAN side FTPS server address
    step 2. Start a new FTPS client on the WAN
    step 3. Verify that the FTPS client is able to log in to the FTPS server and
            perform a directory listing
    step 4. Verify that the FTPS server responds to the directory listing

    NOTE: CDRouter's FTPS client will perform a directory listing on the
    directory specified by the testvar path for the applicable ftpuser


    References:

    IETF RFC 2228 "FTP Security Extensions"

    https://tools.ietf.org/html/rfc2228
Test Name Synopsis
Verify FTPS server allows name list command ipv6_ftps_wan_3 Verify FTPS server allows name list command


    step 1. Determine the WAN side FTPS server address
    step 2. Start a new FTPS client on the WAN
    step 3. Verify that the FTPS client is able to log in to the FTPS server and
            perform a name list command
    step 4. Verify that the FTPS server responds to the name list

    NOTE: CDRouter's FTPS client will perform a directory listing on the
    directory specified by the testvar path for the applicable ftpuser


    References:

    IETF RFC 2228 "FTP Security Extensions"

    https://tools.ietf.org/html/rfc2228
Test Name Synopsis
Verify FTPS server allows file upload ipv6_ftps_wan_10 Verify FTPS server allows file upload


    step 1. Determine the WAN side FTPS server address
    step 2. Start a new FTPS client on the WAN
    step 3. Verify that the FTPS client is able to upload a file to the
            specified directory on the FTPS server
    step 4. Verify that the FTPS client is able to delete the file uploaded in
            step 3

    NOTE: This test is only performed if the testvar permission is set to
    "ReadWrite" for the ftpuser being tested.


    References:

    IETF RFC 2228 "FTP Security Extensions"

    https://tools.ietf.org/html/rfc2228
Test Name Synopsis
Verify FTPS server allows file download ipv6_ftps_wan_11 Verify FTPS server allows file download


    step 1. Determine the WAN side FTPS server address
    step 2. Start a new FTPS client on the WAN
    step 3. Verify that the FTPS client is able to upload a file to the
            specified directory on the FTPS server
    step 4. Verify that the FTPS client is able to download the file uploaded
            in step 3 back to the local system
    step 5. Verify that the FTPS client is able to delete the file uploaded in
            step 3

    NOTE: This test is only performed if the testvar permission is set to
    "ReadWrite" for the ftpuser being tested.


    References:

    IETF RFC 2228 "FTP Security Extensions"

    https://tools.ietf.org/html/rfc2228
Test Name Synopsis
Verify FTPS server allows creation and deletion of new directories ipv6_ftps_wan_12 Verify FTPS server allows creation and deletion of new directories


    step 1. Determine the WAN side FTPS server address
    step 2. Start a new FTPS client on the WAN
    step 3. Verify that the FTPS client is able to create a new directory within
            the specified share location on the FTPS server
    step 4. Verify that the FTPS client is able to upload a file to the new
            directory created in step 3
    step 5. Verify that the FTPS client is able to delete the file uploaded in
            step 4
    step 6. Verify that the FTPS client is able to delete the directory created
            in step 3

    NOTE: This test is only performed if the testvar permission is set to
    "ReadWrite" for the ftpuser being tested.


    References:

    IETF RFC 2228 "FTP Security Extensions"

    https://tools.ietf.org/html/rfc2228
Test Name Synopsis
Verify FTPS server allows files to be renamed ipv6_ftps_wan_13 Verify FTPS server allows files to be renamed


    step 1. Determine the WAN side FTPS server address
    step 2. Start a new FTPS client on the WAN
    step 3. Verify that the FTPS client is able to upload a file to the
            specified share location on the FTPS server
    step 4. Verify that the FTPS client is able to rename the file uploaded in
            step 3
    step 5. Verify that the FTPS client is able to delete the file renamed in
            step 4

    NOTE: This test is only performed if the testvar permission is set to
    "ReadWrite" for the ftpuser being tested.


    References:

    IETF RFC 2228 "FTP Security Extensions"

    https://tools.ietf.org/html/rfc2228
Test Name Synopsis
Verify FTPS server allows directories to be renamed ipv6_ftps_wan_14 Verify FTPS server allows directories to be renamed


    step 1. Determine the WAN side FTPS server address
    step 2. Start a new FTPS client on the WAN
    step 3. Verify that the FTPS client is able to create a new folder within the
            specified share location on the FTPS server
    step 4. Verify that the FTPS client is able to upload a file to the new
            directory created in step 3
    step 5. Rename the directory created in step 3
    step 6. Verify that the FTPS client is able to delete the file uploaded in
            step 4
    step 7. Verify that the FTPS client is able to delete the directory renamed
            in step 5

    NOTE: This test is only performed if the testvar permission is set to
    "ReadWrite" for the ftpuser being tested.


    References:

    IETF RFC 2228 "FTP Security Extensions"

    https://tools.ietf.org/html/rfc2228
Test Name Synopsis
Perform FTPS read-after-write test to verify file integrity ipv6_ftps_wan_20 Perform FTPS read-after-write test to verify file integrity


    step 1. Determine the WAN side FTPS server address
    step 2. Start a new FTPS client on the WAN
    step 3. Verify that the FTPS client is able to upload a file to the
            specified directory on the FTPS server
    step 4. Verify the FTPS client is able to download the file generated in
            step 3 from the FTPS server back to the local system
    step 5. Perform an MD5 checksum on the original file uploaded to the FTP
            server in step 3 and downloaded from the FTPS server in step 4
    step 6. Verify that the MD5 checksums in step 5 are the same
    step 7. Verify that the FTPS client is able to delete the file uploaded in
            step 3

    NOTE: This test is only performed if the testvar permission is set to
    "ReadWrite" for the ftpuser being tested.


    References:

    IETF RFC 2228 "FTP Security Extensions"

    https://tools.ietf.org/html/rfc2228
Test Name Synopsis
Perform FTPS read-after-write test to verify file integrity using active mode ipv6_ftps_wan_21 Perform FTPS read-after-write test to verify file integrity using active mode


    step 1. Determine the WAN side FTPS server address
    step 2. Start a new FTPS client on the WAN
    step 3. Verify that the FTPS client is able to upload a file to the
            specified directory on the FTPS server using an active mode
            connection
    step 4. Verify the FTPS client is able to download the file generated in
            step 3 from the FTPS server back to the local system using an active
            mode connection
    step 5. Perform an MD5 checksum on the original file uploaded to the FTP
            server in step 3 and downloaded from the FTPS server in step 4
    step 6. Verify that the MD5 checksums in step 5 are the same
    step 7. Verify that the FTPS client is able to delete the file uploaded in
            step 3

    NOTE: This test is only performed if the testvar permission is set to
    "ReadWrite" for the ftpuser being tested.


    References:

    IETF RFC 2228 "FTP Security Extensions"

    https://tools.ietf.org/html/rfc2228
Test Name Synopsis
Perform FTPS read-after-write test to verify file integrity using active mode with EPRT disabled ipv6_ftps_wan_22 Perform FTPS read-after-write test to verify file integrity using active mode with EPRT disabled


    step 1. Determine the WAN side FTPS server address
    step 2. Start a new FTPS client on the WAN
    step 3. Verify that the FTPS client is able to upload a file to the
            specified directory on the FTPS server using an active mode
            connection with the EPRT command disabled
    step 4. Verify the FTPS client is able to download the file generated in
            step 3 from the FTPS server back to the local system using an active
            mode connection with the EPRT command disabled
    step 5. Perform an MD5 checksum on the original file uploaded to the FTP
            server in step 3 and downloaded from the FTPS server in step 4
    step 6. Verify that the MD5 checksums in step 5 are the same
    step 7. Verify that the FTPS client is able to delete the file uploaded in
            step 3

    NOTE: This test is only performed if the testvar permission is set to
    "ReadWrite" for the ftpuser being tested.


    References:

    IETF RFC 2228 "FTP Security Extensions"

    https://tools.ietf.org/html/rfc2228
Test Name Synopsis
Perform FTPS read-after-write test to verify file integrity using passive mode with EPSV disabled ipv6_ftps_wan_23 Perform FTPS read-after-write test to verify file integrity using passive mode with EPSV disabled


    step 1. Determine the WAN side FTPS server address
    step 2. Start a new FTPS client on the WAN
    step 3. Verify that the FTPS client is able to upload a file to the
            specified directory on the FTPS server using a passive mode
            connection with the EPSV command disabled
    step 4. Verify the FTPS client is able to download the file generated in
            step 3 from the FTPS server back to the local system using a passive
            mode connection with the EPSV command disabled
    step 5. Perform an MD5 checksum on the original file uploaded to the FTP
            server in step 3 and downloaded from the FTPS server in step 4
    step 6. Verify that the MD5 checksums in step 5 are the same
    step 7. Verify that the FTPS client is able to delete the file uploaded in
            step 3

    NOTE: This test is only performed if the testvar permission is set to
    "ReadWrite" for the ftpuser being tested.


    References:

    IETF RFC 2228 "FTP Security Extensions"

    https://tools.ietf.org/html/rfc2228
Test Name Synopsis
Verify FTPS server rejects clients with invalid password ipv6_ftps_wan_30 Verify FTPS server rejects clients with invalid password


    step 1. Determine the WAN side FTPS server address
    step 2. Start a new FTPS client on the WAN
    step 3. Verify that the FTPS client is not able to log in to the FTPS server
            and perform a directory listing using an invalid password

    NOTE: CDRouter's FTPS client will perform a directory listing on the
    directory specified by the testvar path for the applicable ftpuser using
    an invalid password


    References:

    IETF RFC 2228 "FTP Security Extensions"

    https://tools.ietf.org/html/rfc2228
Test Name Synopsis
Verify FTPS server rejects unknown clients ipv6_ftps_wan_31 Verify FTPS server rejects unknown clients


    step 1. Determine the WAN side FTPS server address
    step 2. Start a new FTPS client on the WAN
    step 3. Verify that the FTPS client is not able to log in to the FTPS server
            and perform a directory listing using an unknown username

    NOTE: CDRouter's FTPS client will perform a directory listing on the
    path specified by the testvar path using an unknown username


    References:

    IETF RFC 2228 "FTP Security Extensions"

    https://tools.ietf.org/html/rfc2228
Test Name Synopsis
Verify FTPS server does not allow file upload for ReadOnly clients ipv6_ftps_wan_40 Verify FTPS server does not allow file upload for ReadOnly clients


    step 1. Determine the WAN side FTPS server address
    step 2. Start a new FTPS client on the WAN
    step 3. Verify that the FTPS client is not able to upload a file to the
            specified path on the FTPS server
    step 4. Verify that the ReadOnly FTPS client is able to perform a directory
            listing

    NOTE: This test is only performed if the testvar permission is set to
    "ReadOnly" for the ftpuser being tested.


    References:

    IETF RFC 2228 "FTP Security Extensions"

    https://tools.ietf.org/html/rfc2228
Test Name Synopsis
Verify FTPS server does not allow directory creation for ReadOnly clients ipv6_ftps_wan_41 Verify FTPS server does not allow directory creation for ReadOnly clients


    step 1. Determine the WAN side FTPS server address
    step 2. Start a new FTPS client on the WAN
    step 3. Verify that the FTPS client is not able to create a new directory in
            the specified path on the FTPS server

    NOTE: This test is only performed if the testvar permission is set to
    "ReadOnly" for the ftpuser being tested.


    References:

    IETF RFC 2228 "FTP Security Extensions"

    https://tools.ietf.org/html/rfc2228
Test Name Synopsis
Verify FTPS server supports simultaneous access from two clients ipv6_ftps_wan_50 Verify FTPS server supports simultaneous access from two clients


    step 1. Determine the WAN side FTPS server address
    step 2. Start a new FTPS client on the WAN
    step 3. Start a second FTPS client on the same WAN host with the same
            FTPS user
    step 4. Verify that both FTPS clients are able to upload a file to the
            specified path on the FTPS server simultaneously
    step 5. Verify that both FTPS clients are able to download the files
            generated in step 4 from the specified directory to the local system
            simultaneously
    step 6. Verify that both FTPS clients are able to delete the files uploaded
            in step 3 simultaneously

    NOTE: This is a basic scaling test designed to verify that the FTPS server
    allows simultaneous access from two instances of the same FTPS client on the
    same WAN host.

    NOTE: This test is only performed if the testvar permission is set to
    "ReadWrite" for the ftpuser being tested.


    References:

    IETF RFC 2228 "FTP Security Extensions"

    https://tools.ietf.org/html/rfc2228
Test Name Synopsis
Verify all configured FTPS users ipv6_ftps_wan_51 Verify all configured FTPS users


    step 1. Determine the WAN side FTPS server address
    step 2. Start a new FTPS client on the WAN
    step 3. Verify that the FTPS client is able to upload a file to the
            specified path on the FTPS server
    step 4. Verify that the FTPS client is able to download the file generated in
            step 3 from the specified directory to the local system
    step 5. Verify that the FTPS client is able to delete the file uploaded in
            step 3
    step 6. Repeat steps 2 through 3 for all configured ftpusers

    NOTE: This scaling test is designed to verify that all of the FTPS client
    configurations, defined as "ftpuser" testvar_groups, work as expected.

    NOTE: Up to 20 FTPS client configurations can be created.

    NOTE: If the testvar permission is set to "ReadOnly" for a particular
    FTPS client configuration, only a directory listing will be performed as part
    of this test.


    References:

    IETF RFC 2228 "FTP Security Extensions"

    https://tools.ietf.org/html/rfc2228
Test Name Synopsis
Verify the maximum number of FTPS sessions ipv6_ftps_wan_52 Verify the maximum number of FTPS sessions


    step 1. Determine the WAN side FTPS server address
    step 2. Create new WAN side FTPS clients
    step 3. Start a new FTPS client using the WAN client 1
    step 4. Verify that the FTPS client is able to upload a file to the specified
            directory
    step 5. Verify that the FTPS client is able to download the file generated in
            step 5 from the specified directory to the local system
    step 6. Verify that the FTPS client is able to delete the file uploaded in
            step 5 from the FTPS server
    step 7. Repeat steps 4 through 7 for all WAN clients created in step 2

    NOTE: This scaling test is designed to verify the maximum number of FTP
    client connections. Each FTPS client connection will use the same FTPS user
    and will be created on a unique WAN host.

    NOTE: The maximum number of FTPS client connections created is specified by
    the testvar storageFtpMaxSessions, which defaults to 20.

    NOTE: If the testvar permission is set to "ReadOnly" for a particular
    FTPS user, only a directory listing will be performed.

    NOTE: This test will prefer "ReadWrite" FTPS users over "ReadOnly" users.
    However, it will still run if all users configured as "ReadOnly".


    References:

    IETF RFC 2228 "FTP Security Extensions"

    https://tools.ietf.org/html/rfc2228