Зачем возвращать отрицательный номер ошибки? (например, возврат -EIO)
Еще один простой пример:
if (wpa_s->mlme.ssid_len == 0)
return -EINVAL;
Почему одинарный минус? Это (обычно) сделано для функций, которые возвращают>0 в случае успеха и <(=) 0 при неудаче или есть какая-то другая причина?