Как можно получить список прослушиваемых портов и имена соответствующих приложений

0

На Mac, работающем под управлением ОС X Yosemite с использованием C, C++ или Objective-C и их соответствующих ОС, были включены фреймворки, как я могу программно находить прослушиваемые порты и имена приложений, выполняющих прослушивание. Мои исследования привели меня к <sys/proc.h> и <sys/proc_info.h>. Тем не менее, я не мог видеть правильный способ сделать это там (я мог пропустить что-то).

Спасибо за вашу помощь!

  • 3
    Ну, и lsof и netstat делают такие вещи, и их исходный код доступен: lsof netstat
  • 0
    Я просмотрел исходный код и не смог найти соответствующий код, если вы знаете конкретную функцию, которая делает это, это будет с благодарностью. Кроме того, lsof предоставляет информацию, которую я ищу на Mac , однако netstat не предоставляет (для всех тех, кто находит эту страницу).
Теги:
macos
cocoa

1 ответ

1

Вместо копирования кода netstat я рекомендую вызывать netstat из вашего кода C/C++/Objective C.

См. Как выполнить встроенную команду Shell с помощью функции C? для деталей.

Alos, man netstat, чтобы выяснить, какие параметры вы хотите ограничить своими результатами.

  • 1
    Похоже, netstat не предоставляет информацию, которую я ищу на Mac, а только lsof. Пожалуйста, поправьте меня, если я ошибаюсь, но это то, что я нашел.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню