Сразу оговорюсь, у меня embedded, со своим урезанным линуксом. Допустим в системе есть интерфейсы eth0 и wlan0, они то становятся доступными, то нет. Если в основной программе мы открываем сокет (AF_INET), то на каком из интерфейсов он будет назначен?
Понятно, что можно явно указать IP, но что будет в случае, если мы не указываем IP?
hints.ai_family = AF_UNSPEC;
hints.ai_socktype = SOCK_STREAM;
hints.ai_flags = AI_PASSIVE
int res = getaddrinfo (NULL, port_num, &hints, &servinfo);
И второй вопрос: как определить программно, что: 1) какой либо из интерфейсов стал доступен 2) там доступен интернет (можно конечно пингануть, но может есть менее костыльный способ?)
Спасибо.