Lines Matching refs:crypt
122 struct lib80211_crypt_data **crypt; in prism2_ioctl_siwencode() local
135 crypt = &local->crypt_info.crypt[i]; in prism2_ioctl_siwencode()
138 if (*crypt) in prism2_ioctl_siwencode()
139 lib80211_crypt_delayed_deinit(&local->crypt_info, crypt); in prism2_ioctl_siwencode()
143 if (*crypt != NULL && (*crypt)->ops != NULL && in prism2_ioctl_siwencode()
144 strcmp((*crypt)->ops->name, "WEP") != 0) { in prism2_ioctl_siwencode()
146 lib80211_crypt_delayed_deinit(&local->crypt_info, crypt); in prism2_ioctl_siwencode()
149 if (*crypt == NULL) { in prism2_ioctl_siwencode()
173 *crypt = new_crypt; in prism2_ioctl_siwencode()
181 (*crypt)->ops->set_key(keybuf, len, NULL, (*crypt)->priv); in prism2_ioctl_siwencode()
183 if (j != i && local->crypt_info.crypt[j]) { in prism2_ioctl_siwencode()
226 struct lib80211_crypt_data *crypt; in prism2_ioctl_giwencode() local
239 crypt = local->crypt_info.crypt[i]; in prism2_ioctl_giwencode()
242 if (crypt == NULL || crypt->ops == NULL) { in prism2_ioctl_giwencode()
248 if (strcmp(crypt->ops->name, "WEP") != 0) { in prism2_ioctl_giwencode()
258 len = crypt->ops->get_key(key, WEP_KEY_LEN, NULL, crypt->priv); in prism2_ioctl_giwencode()
3227 struct lib80211_crypt_data **crypt; in prism2_ioctl_siwencodeext() local
3245 crypt = &local->crypt_info.crypt[i]; in prism2_ioctl_siwencodeext()
3249 sta_ptr = ap_crypt_get_ptrs(local->ap, addr, 0, &crypt); in prism2_ioctl_siwencodeext()
3258 crypt = &local->crypt_info.crypt[i]; in prism2_ioctl_siwencodeext()
3266 if (*crypt) in prism2_ioctl_siwencodeext()
3267 lib80211_crypt_delayed_deinit(&local->crypt_info, crypt); in prism2_ioctl_siwencodeext()
3312 if (*crypt == NULL || (*crypt)->ops != ops) { in prism2_ioctl_siwencodeext()
3315 lib80211_crypt_delayed_deinit(&local->crypt_info, crypt); in prism2_ioctl_siwencodeext()
3332 *crypt = new_crypt; in prism2_ioctl_siwencodeext()
3342 && (*crypt)->ops->set_key && in prism2_ioctl_siwencodeext()
3343 (*crypt)->ops->set_key(ext->key, ext->key_len, ext->rx_seq, in prism2_ioctl_siwencodeext()
3344 (*crypt)->priv) < 0) { in prism2_ioctl_siwencodeext()
3360 if (j != i && local->crypt_info.crypt[j]) { in prism2_ioctl_siwencodeext()
3399 struct lib80211_crypt_data **crypt; in prism2_ioctl_giwencodeext() local
3418 crypt = &local->crypt_info.crypt[i]; in prism2_ioctl_giwencodeext()
3421 sta_ptr = ap_crypt_get_ptrs(local->ap, addr, 0, &crypt); in prism2_ioctl_giwencodeext()
3428 if (*crypt == NULL || (*crypt)->ops == NULL) { in prism2_ioctl_giwencodeext()
3433 if (strcmp((*crypt)->ops->name, "WEP") == 0) in prism2_ioctl_giwencodeext()
3435 else if (strcmp((*crypt)->ops->name, "TKIP") == 0) in prism2_ioctl_giwencodeext()
3437 else if (strcmp((*crypt)->ops->name, "CCMP") == 0) in prism2_ioctl_giwencodeext()
3442 if ((*crypt)->ops->get_key) { in prism2_ioctl_giwencodeext()
3444 (*crypt)->ops->get_key(ext->key, in prism2_ioctl_giwencodeext()
3447 (*crypt)->priv); in prism2_ioctl_giwencodeext()
3468 struct lib80211_crypt_data **crypt; in prism2_ioctl_set_encryption() local
3471 param->u.crypt.err = 0; in prism2_ioctl_set_encryption()
3472 param->u.crypt.alg[HOSTAP_CRYPT_ALG_NAME_LEN - 1] = '\0'; in prism2_ioctl_set_encryption()
3475 (int) ((char *) param->u.crypt.key - (char *) param) + in prism2_ioctl_set_encryption()
3476 param->u.crypt.key_len) in prism2_ioctl_set_encryption()
3480 if (param->u.crypt.idx >= WEP_KEYS) in prism2_ioctl_set_encryption()
3483 crypt = &local->crypt_info.crypt[param->u.crypt.idx]; in prism2_ioctl_set_encryption()
3485 if (param->u.crypt.idx) in prism2_ioctl_set_encryption()
3489 (param->u.crypt.flags & HOSTAP_CRYPT_FLAG_PERMANENT), in prism2_ioctl_set_encryption()
3490 &crypt); in prism2_ioctl_set_encryption()
3493 param->u.crypt.err = HOSTAP_CRYPT_ERR_UNKNOWN_ADDR; in prism2_ioctl_set_encryption()
3498 if (strcmp(param->u.crypt.alg, "none") == 0) { in prism2_ioctl_set_encryption()
3499 if (crypt) in prism2_ioctl_set_encryption()
3500 lib80211_crypt_delayed_deinit(&local->crypt_info, crypt); in prism2_ioctl_set_encryption()
3504 ops = lib80211_get_crypto_ops(param->u.crypt.alg); in prism2_ioctl_set_encryption()
3505 if (ops == NULL && strcmp(param->u.crypt.alg, "WEP") == 0) { in prism2_ioctl_set_encryption()
3507 ops = lib80211_get_crypto_ops(param->u.crypt.alg); in prism2_ioctl_set_encryption()
3508 } else if (ops == NULL && strcmp(param->u.crypt.alg, "TKIP") == 0) { in prism2_ioctl_set_encryption()
3510 ops = lib80211_get_crypto_ops(param->u.crypt.alg); in prism2_ioctl_set_encryption()
3511 } else if (ops == NULL && strcmp(param->u.crypt.alg, "CCMP") == 0) { in prism2_ioctl_set_encryption()
3513 ops = lib80211_get_crypto_ops(param->u.crypt.alg); in prism2_ioctl_set_encryption()
3517 local->dev->name, param->u.crypt.alg); in prism2_ioctl_set_encryption()
3518 param->u.crypt.err = HOSTAP_CRYPT_ERR_UNKNOWN_ALG; in prism2_ioctl_set_encryption()
3527 if (*crypt == NULL || (*crypt)->ops != ops) { in prism2_ioctl_set_encryption()
3530 lib80211_crypt_delayed_deinit(&local->crypt_info, crypt); in prism2_ioctl_set_encryption()
3539 new_crypt->priv = new_crypt->ops->init(param->u.crypt.idx); in prism2_ioctl_set_encryption()
3542 param->u.crypt.err = in prism2_ioctl_set_encryption()
3548 *crypt = new_crypt; in prism2_ioctl_set_encryption()
3551 if ((!(param->u.crypt.flags & HOSTAP_CRYPT_FLAG_SET_TX_KEY) || in prism2_ioctl_set_encryption()
3552 param->u.crypt.key_len > 0) && (*crypt)->ops->set_key && in prism2_ioctl_set_encryption()
3553 (*crypt)->ops->set_key(param->u.crypt.key, in prism2_ioctl_set_encryption()
3554 param->u.crypt.key_len, param->u.crypt.seq, in prism2_ioctl_set_encryption()
3555 (*crypt)->priv) < 0) { in prism2_ioctl_set_encryption()
3558 param->u.crypt.err = HOSTAP_CRYPT_ERR_KEY_SET_FAILED; in prism2_ioctl_set_encryption()
3563 if (param->u.crypt.flags & HOSTAP_CRYPT_FLAG_SET_TX_KEY) { in prism2_ioctl_set_encryption()
3565 local->crypt_info.tx_keyidx = param->u.crypt.idx; in prism2_ioctl_set_encryption()
3566 else if (param->u.crypt.idx) { in prism2_ioctl_set_encryption()
3569 param->u.crypt.err = in prism2_ioctl_set_encryption()
3589 param->u.crypt.err = HOSTAP_CRYPT_ERR_CARD_CONF_FAILED; in prism2_ioctl_set_encryption()
3601 struct lib80211_crypt_data **crypt; in prism2_ioctl_get_encryption() local
3605 param->u.crypt.err = 0; in prism2_ioctl_get_encryption()
3608 (int) ((char *) param->u.crypt.key - (char *) param); in prism2_ioctl_get_encryption()
3614 if (param->u.crypt.idx >= WEP_KEYS) in prism2_ioctl_get_encryption()
3615 param->u.crypt.idx = local->crypt_info.tx_keyidx; in prism2_ioctl_get_encryption()
3616 crypt = &local->crypt_info.crypt[param->u.crypt.idx]; in prism2_ioctl_get_encryption()
3618 param->u.crypt.idx = 0; in prism2_ioctl_get_encryption()
3620 &crypt); in prism2_ioctl_get_encryption()
3623 param->u.crypt.err = HOSTAP_CRYPT_ERR_UNKNOWN_ADDR; in prism2_ioctl_get_encryption()
3628 if (*crypt == NULL || (*crypt)->ops == NULL) { in prism2_ioctl_get_encryption()
3629 memcpy(param->u.crypt.alg, "none", 5); in prism2_ioctl_get_encryption()
3630 param->u.crypt.key_len = 0; in prism2_ioctl_get_encryption()
3631 param->u.crypt.idx = 0xff; in prism2_ioctl_get_encryption()
3633 strncpy(param->u.crypt.alg, (*crypt)->ops->name, in prism2_ioctl_get_encryption()
3635 param->u.crypt.key_len = 0; in prism2_ioctl_get_encryption()
3637 memset(param->u.crypt.seq, 0, 8); in prism2_ioctl_get_encryption()
3638 if ((*crypt)->ops->get_key) { in prism2_ioctl_get_encryption()
3639 param->u.crypt.key_len = in prism2_ioctl_get_encryption()
3640 (*crypt)->ops->get_key(param->u.crypt.key, in prism2_ioctl_get_encryption()
3642 param->u.crypt.seq, in prism2_ioctl_get_encryption()
3643 (*crypt)->priv); in prism2_ioctl_get_encryption()