Use helper function for writing cipher suite names
Signed-hostap: Jouni Malinen <j@w1.fi>
This commit is contained in:
parent
031453265f
commit
0282a8c46a
5 changed files with 75 additions and 157 deletions
|
@ -1291,3 +1291,55 @@ int wpa_parse_cipher(const char *value)
|
|||
|
||||
return val;
|
||||
}
|
||||
|
||||
|
||||
int wpa_write_ciphers(char *start, char *end, int ciphers, const char *delim)
|
||||
{
|
||||
char *pos = start;
|
||||
int ret;
|
||||
|
||||
if (ciphers & WPA_CIPHER_CCMP) {
|
||||
ret = os_snprintf(pos, end - pos, "%sCCMP",
|
||||
pos == start ? "" : delim);
|
||||
if (ret < 0 || ret >= end - pos)
|
||||
return -1;
|
||||
pos += ret;
|
||||
}
|
||||
if (ciphers & WPA_CIPHER_GCMP) {
|
||||
ret = os_snprintf(pos, end - pos, "%sGCMP",
|
||||
pos == start ? "" : delim);
|
||||
if (ret < 0 || ret >= end - pos)
|
||||
return -1;
|
||||
pos += ret;
|
||||
}
|
||||
if (ciphers & WPA_CIPHER_TKIP) {
|
||||
ret = os_snprintf(pos, end - pos, "%sTKIP",
|
||||
pos == start ? "" : delim);
|
||||
if (ret < 0 || ret >= end - pos)
|
||||
return -1;
|
||||
pos += ret;
|
||||
}
|
||||
if (ciphers & WPA_CIPHER_WEP104) {
|
||||
ret = os_snprintf(pos, end - pos, "%sWEP104",
|
||||
pos == start ? "" : delim);
|
||||
if (ret < 0 || ret >= end - pos)
|
||||
return -1;
|
||||
pos += ret;
|
||||
}
|
||||
if (ciphers & WPA_CIPHER_WEP40) {
|
||||
ret = os_snprintf(pos, end - pos, "%sWEP40",
|
||||
pos == start ? "" : delim);
|
||||
if (ret < 0 || ret >= end - pos)
|
||||
return -1;
|
||||
pos += ret;
|
||||
}
|
||||
if (ciphers & WPA_CIPHER_NONE) {
|
||||
ret = os_snprintf(pos, end - pos, "%sNONE",
|
||||
pos == start ? "" : delim);
|
||||
if (ret < 0 || ret >= end - pos)
|
||||
return -1;
|
||||
pos += ret;
|
||||
}
|
||||
|
||||
return pos - start;
|
||||
}
|
||||
|
|
|
@ -399,5 +399,6 @@ int wpa_cipher_put_suites(u8 *pos, int ciphers);
|
|||
int wpa_pick_pairwise_cipher(int ciphers, int none_allowed);
|
||||
int wpa_pick_group_cipher(int ciphers);
|
||||
int wpa_parse_cipher(const char *value);
|
||||
int wpa_write_ciphers(char *start, char *end, int ciphers, const char *delim);
|
||||
|
||||
#endif /* WPA_COMMON_H */
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue