The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

пример работы с UDP сокетами (raw socket example)


<< Предыдущая ИНДЕКС Поиск в статьях src Установить закладку Перейти на закладку Следующая >>
Ключевые слова: raw, socket, example,  (найти похожие документы)
Date: Thu, 14 Jun 2001 06:23:21 +0000 (UTC) From: (Valentin Nechayev) <netch@segfault.kiev.ua> Newsgroups: fido7.ru.unix.prog Subject: пример работы с UDP сокетами aT> Народ киньте пример простейший по работе с датаграммными сокетами... aT> а то я что ни пишу, прога компилируется - а при выполнении не может bind aT> вызвать.... точнее он -1 возвращает. Это не диагностика, это "у меня в подвале раздается подземный стук". Расскажи какое errno при этом возвращается и как оно называется в этой системе. Пример кидать - оно можно, но поймешь ли что из примера действительно нужно? Проверь, что 1) Переменная с адресом, которая типа sockaddr_in, предварительно залита нулями (через memset(&addr,0,sizeof addr) или похоже), 2) Поле sin_family выставлено правильно - в AF_INET. А в качестве примера хотя бы так: #include <sys/types.h> #include <sys/socket.h> #include <netinet/in.h> #include <arpa/inet.h> #include <unistd.h> #include <stdlib.h> #include <stdio.h> #include <string.h> #include <errno.h> int main() { struct sockaddr_in si; int s; s = socket( PF_INET, SOCK_DGRAM, 0 ); if( s == -1 ) { perror( "socket()" ); return 1; } memset( &si, 0, sizeof si ); si.sin_family = AF_INET; si.sin_addr.s_addr = INADDR_ANY; si.sin_port = htons( 6800 ); if( bind( s, ( struct sockaddr*) &si, sizeof si ) < 0 ) { perror( "bind()" ); return 1; } puts( "Binding OK" ); return 0; } /netch

<< Предыдущая ИНДЕКС Поиск в статьях src Установить закладку Перейти на закладку Следующая >>

 Добавить комментарий
Имя:
E-Mail:
Заголовок:
Текст:




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру