Toon posts:

[SOCKETS/LINUX] Permission denied by UDP broadcast connect

Pagina: 1
Acties:

Verwijderd

Topicstarter
Ik ben bezig met een c++ programma onder linux welke afhankelijk van het argument in staat moet zijn om zowel een broadcast te doen als een gewone verbinding. Broadcasting moet middels UDP mogelijk zijn en een gewone verbinding zowel via UDP als TCP.

Het programma heeft voor UDP (in pseudo taal) de volgende initialisatie routines:

code:
1
2
3
4
i = connect(tty->fd,&tty->farAddr.sa,sizeof tty->farAddr.ia);
...
setsockopt(tty->fd,SOL_SOCKET,SO_BROADCAST, (void *)&i, sizeof i)
...

Daarna volgen de send en recv acties.

Ik ben onder linux (Fedora core 5) als root ingelogd maar ik krijg tijdens de connect de volgende foutmelding:

"Can't connect to 10.255.255.255:503 udp*: Permission denied"

Kan iemand mij zeggen waardoor dit komt?

  • igmar
  • Registratie: April 2000
  • Laatst online: 31-01 23:50

igmar

ISO20022

Verwijderd schreef op vrijdag 07 juli 2006 @ 08:02:
Ik ben bezig met een c++ programma onder linux welke afhankelijk van het argument in staat moet zijn om zowel een broadcast te doen als een gewone verbinding. Broadcasting moet middels UDP mogelijk zijn en een gewone verbinding zowel via UDP als TCP.

Het programma heeft voor UDP (in pseudo taal) de volgende initialisatie routines:

code:
1
2
3
4
i = connect(tty->fd,&tty->farAddr.sa,sizeof tty->farAddr.ia);
...
setsockopt(tty->fd,SOL_SOCKET,SO_BROADCAST, (void *)&i, sizeof i)
...

Daarna volgen de send en recv acties.

Ik ben onder linux (Fedora core 5) als root ingelogd maar ik krijg tijdens de connect de volgende foutmelding:

"Can't connect to 10.255.255.255:503 udp*: Permission denied"

Kan iemand mij zeggen waardoor dit komt?
Precies zoals in de manual staat : Je doet een connect() zonder BROADCAST flag te zetten. Die flag moet je dus zetten voordat je de connect doet. MAW :

code:
1
2
3
sd = socket();
setsockopt(....., SO_BROADCAST, ....);
connect();


De code is op zich goed, alleen staan dingen in foute volgorde :)

  • farlane
  • Registratie: Maart 2000
  • Laatst online: 15-02 11:20
Sinds wanneer kun je connecten met UDP?

Somniferous whisperings of scarlet fields. Sleep calling me and in my dreams i wander. My reality is abandoned (I traverse afar). Not a care if I never everwake.


  • igmar
  • Registratie: April 2000
  • Laatst online: 31-01 23:50

igmar

ISO20022

farlane schreef op maandag 10 juli 2006 @ 08:45:
Sinds wanneer kun je connecten met UDP?
Dat heeft altijd al gekund. De betekenis bij UDP is echter anders als bij TCP.