# Copyright (c) 2010 The Chromium OS Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.

{ "name":"CheckStaticKey_WEP40",
  "steps":[             # Channel [1,6,11]
    [ "create",         { "type":"hostap" } ],
    [ "config",         { "channel":"2412", "mode":"11g",
#                          "authmode":"open", "wepmode":"on",
                          "wepmode":"on",
                          # 10 digits : 0123456789
                          "wep_key0":  "0123456789",
                          "wep_key1":  "89abcdef01",
                          "wep_key2":  "9876543210",
                          "wep_key3":  "fedcba9876" 
                        }
    ],

    # key index 0, 40-bit WEP
    [ "config",         { "deftxkey":"0" } ],
    [ "connect",        { "security":"wep", "psk":"0:0123456789" } ],
    [ "client_ping",    { "count":"10" } ],
    [ "disconnect" ],
    [ "deconfig" ],

    # key index 1, 40-bit WEP
    [ "config",         { "deftxkey":"1" } ],
    [ "connect",        { "security":"wep", "psk":"1:89abcdef01" } ],
    [ "client_ping",    { "count":"10" } ],
    [ "disconnect" ],
    [ "deconfig" ],

    # key index 2, 40-bit WEP
    [ "config",         { "deftxkey":"2" } ],
    [ "connect",        { "security":"wep", "psk":"2:9876543210" } ],
    [ "client_ping",    { "count":"10" } ],
    [ "disconnect" ],
    [ "deconfig" ],

    # key index 3, 40-bit WEP
    [ "config",         { "deftxkey":"3" } ],
    [ "connect",        { "security":"wep", "psk":"3:fedcba9876" } ],
    [ "client_ping",    { "count":"10" } ],
    [ "disconnect" ],

    [ "destroy" ],
  ],
}
