LINUX.ORG.RU

Socket programming


0

0

дайте пожалуйста кусочек кода с подключением сокета при известном ИП адресе и порте и передачей/приемом данных через сей сокет кому не жалко. Лучше с комментариями, если такие найдутся (-: Заранее спасибо. ЗЫ: в программировании хоть как лмбо связанном с инетом ноль полный практически, поэтому прошу не пинать сильно.


Простой примерки не нашлось, а писать ща времени нет :(
Так что скажу вкраце какие функции дергать надо

Сначала создаешь сокет socket(AF_INET,SOCK_STREAM,PROTO_TCP), для TCP
Потом заполняешь структуру sockaddr_in пишешь туда локальный адрес/порт.
IP можно оставить 0 (возьмет первый попавшийся с твоей машины)

Для клиентского номер порта ставишь 0, тоже выберет превый свободный
Далее приклеиваешь эту структуру к сокету ф-я bind()

Теперь для серверного сокета вызываешь listen(), потом accept()
accept() после того, как к сокету подконнектились вернет новый
дискриптор через него и работаешь (recv, send)

А для клиенского заполняешь еще одну sockaddr_in. Прописываешь туда адрес удаленного
хоста.
Потом делаешь connect() и вперед

Все прототипы определены в sys/socket.h разберешься ничего сложного там нет

FireWind
()
Ответ на: комментарий от babai

спасибо, конечно, но там я был уже. слишком уж сжато уж там написано, и похоже не совсем верно. поподробнее про bind расскажите кто-нить, если можно. сейчас bind у меня стабильно -1 возвращает. в ман не посылать - я как раз туда...

Caesar
() автор топика

Давай адрес, кину исходники Мой адрес:kirill@bios.iuf.net

anonymous
()

Так, спасибо всем, с сокетами вроде разобрался. Теперь подскажите где найти что-либо по программированию IRC-клиентов.

Caesar
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.