Lines Matching refs:par
300 get_bignumval(uint8_t *buf, negotiation_parameter_t *par) in get_bignumval() argument
306 par->val.sval = buf; in get_bignumval()
322 par->list_num = dp - par->val.sval; in get_bignumval()
323 par->hex_bignums = true; in get_bignumval()
325 buf = base64_decode(&buf[2], par->val.sval, &par->list_num); in get_bignumval()
521 get_parameter(uint8_t *buf, negotiation_parameter_t *par) in get_parameter() argument
540 par->key = i; in get_parameter()
541 par->list_num = 1; in get_parameter()
542 par->hex_bignums = false; /* set by get_bignumval */ in get_parameter()
550 par->val.sval = buf; in get_parameter()
560 bp = get_numval(bp, &par->val.nval[0], '\0'); in get_parameter()
564 bp = get_bignumval(bp, par); in get_parameter()
568 bp = get_strval(bp, &par->val.sval); in get_parameter()
572 bp = get_ynval(bp, &par->val.nval[0]); in get_parameter()
576 bp = get_authval(bp, &par->val.nval[0]); in get_parameter()
580 bp = get_digestval(bp, &par->val.nval[0]); in get_parameter()
584 bp = get_range(bp, &par->val.nval[0], &par->val.nval[1]); in get_parameter()
633 put_bignumval(negotiation_parameter_t *par, uint8_t *buf) in put_bignumval() argument
637 if (par->hex_bignums) { in put_bignumval()
639 for (k=0; k<par->list_num; ++k) { in put_bignumval()
640 c = par->val.sval[k] >> 4; in put_bignumval()
642 c = par->val.sval[k] & 0xf; in put_bignumval()
647 return 2+2*par->list_num; in put_bignumval()
649 return base64_encode(par->val.sval, par->list_num, buf); in put_bignumval()
664 put_parameter(uint8_t *buf, unsigned len, negotiation_parameter_t *par) in put_parameter() argument
671 entries[par->key].name, par->key, entries[par->key].val)); in put_parameter()
673 if (par->key > MAX_KEY) { in put_parameter()
674 return snprintf(buf, len, "%s=NotUnderstood", par->val.sval); in put_parameter()
677 cc = snprintf(buf, len, "%s=", entries[par->key].name); in put_parameter()
681 for (i = 0; i < par->list_num; i++) { in put_parameter()
682 switch (entries[par->key].val) { in put_parameter()
685 par->val.nval[i]); in put_parameter()
689 cl = put_bignumval(par, &buf[cc]); in put_parameter()
690 i = par->list_num; in put_parameter()
694 cl = my_strcpy(&buf[cc], par->val.sval); in put_parameter()
699 (par->val.nval[i]) ? "Yes" : "No"); in put_parameter()
703 switch (par->val.nval[i]) { in put_parameter()
722 (par->val.nval[i]) ? "CRC32C" : "None"); in put_parameter()
726 if ((i + 1) >= par->list_num) { in put_parameter()
730 "%d~%d", par->val.nval[i], in put_parameter()
731 par->val.nval[i + 1]); in put_parameter()
737 cl = my_strcpy(&buf[cc], par->val.sval); in put_parameter()
742 (par->val.nval[i]) ? "Normal" : "Discovery"); in put_parameter()
749 entries[par->key].val)); in put_parameter()
758 if ((i + 1) < par->list_num) { in put_parameter()
810 parameter_size(negotiation_parameter_t *par) in parameter_size() argument
815 if (par->key > MAX_KEY) { in parameter_size()
816 return strlen(par->val.sval) + 15; in parameter_size()
819 size = strlen(entries[par->key].name) + 2; in parameter_size()
821 for (i = 0; i < par->list_num; i++) { in parameter_size()
822 switch (entries[par->key].val) { in parameter_size()
825 par->val.nval[i]); in parameter_size()
830 if (par->hex_bignums) in parameter_size()
831 size += 2 + 2*par->list_num; in parameter_size()
833 size += base64_enclen(par->list_num); in parameter_size()
834 i = par->list_num; in parameter_size()
839 size += strlen(par->val.sval); in parameter_size()
843 size += (par->val.nval[i]) ? 3 : 2; in parameter_size()
847 size += (par->val.nval[i] == ISCSI_AUTH_SRP) ? 3 : 4; in parameter_size()
851 size += (par->val.nval[i]) ? 6 : 4; in parameter_size()
855 if (i+1 < par->list_num) { in parameter_size()
857 par->val.nval[i], in parameter_size()
858 par->val.nval[i + 1]); in parameter_size()
865 size += (par->val.nval[i]) ? 6 : 9; in parameter_size()
871 entries[par->key].val)); in parameter_size()
874 if ((i + 1) < par->list_num) { in parameter_size()
967 negotiation_parameter_t *par; in set_key_n() local
974 par = &state->pars[state->num_pars]; in set_key_n()
975 par->key = key; in set_key_n()
976 par->list_num = 1; in set_key_n()
977 par->val.nval[0] = val; in set_key_n()
981 return par; in set_key_n()
997 negotiation_parameter_t *par; in set_key_s() local
1004 par = &state->pars[state->num_pars]; in set_key_s()
1005 par->key = key; in set_key_s()
1006 par->list_num = 1; in set_key_s()
1007 par->val.sval = val; in set_key_s()
1008 par->hex_bignums = iscsi_hex_bignums; in set_key_s()
1012 return par; in set_key_s()
1032 negotiation_parameter_t *par) in eval_parameter() argument
1034 uint32_t n = par->val.nval[0]; in eval_parameter()
1036 text_key_t key = par->key; in eval_parameter()
1165 set_key_s(state, key, par->val.sval); in eval_parameter()
1177 copyoutstr(par->val.sval, conn->c_login_par->TargetAlias, in eval_parameter()
1188 DEBOUT(("eval_par: Invalid parameter type %d\n", par->key)); in eval_parameter()
1240 iscsi_login_parameters_t *par = conn->c_login_par; in assemble_login_parameters() local
1263 (par->is_present.MaxRecvDataSegmentLength) in assemble_login_parameters()
1264 ? par->MaxRecvDataSegmentLength : DEFAULT_MaxRecvDataSegmentLength; in assemble_login_parameters()
1267 if (par->is_present.password) in assemble_login_parameters()
1268 copyinstr(par->password, state->password, MAX_STRING, &sz); in assemble_login_parameters()
1269 if (par->is_present.target_password) in assemble_login_parameters()
1270 copyinstr(par->target_password, state->target_password, in assemble_login_parameters()
1272 if (par->is_present.user_name) in assemble_login_parameters()
1273 copyinstr(par->user_name, state->user_name, MAX_STRING, &sz); in assemble_login_parameters()
1281 par->login_type > ISCSI_LOGINTYPE_DISCOVERY); in assemble_login_parameters()
1285 if (cpar != NULL && par->is_present.auth_info && in assemble_login_parameters()
1286 par->auth_info.auth_number > 0) { in assemble_login_parameters()
1287 if (par->auth_info.auth_number > ISCSI_AUTH_OPTIONS) { in assemble_login_parameters()
1291 cpar->list_num = par->auth_info.auth_number; in assemble_login_parameters()
1293 cpar->val.nval[i] = par->auth_info.auth_type[i]; in assemble_login_parameters()
1294 if (par->auth_info.auth_type[i]) in assemble_login_parameters()
1299 if (par->is_present.TargetName) in assemble_login_parameters()
1300 copyinstr(par->TargetName, state->temp_buf, ISCSI_STRING_LENGTH - 1, in assemble_login_parameters()
1308 par->login_type != ISCSI_LOGINTYPE_DISCOVERY) { in assemble_login_parameters()
1342 iscsi_login_parameters_t *par = conn->c_login_par; in assemble_security_parameters() local
1486 if (par->auth_info.mutual_auth) { in assemble_security_parameters()
1513 if (!par->auth_info.mutual_auth || response == NULL) { in assemble_security_parameters()
1729 negotiation_parameter_t par; in assemble_send_targets() local
1733 par.key = K_SendTargets; in assemble_send_targets()
1734 par.list_num = 1; in assemble_send_targets()
1735 par.val.sval = val; in assemble_send_targets()
1736 par.hex_bignums = false; in assemble_send_targets()
1738 len = parameter_size(&par); in assemble_send_targets()
1747 if (put_parameter(buf, len, &par) == 0) { in assemble_send_targets()