Thread dual stack modell (12 answers)
Opened by enzo at 2011-07-16 16:24

enzo
 2011-07-18 19:00
#150518 #150518
User since
2011-07-16
7 Artikel
BenutzerIn

user image
wobei es auch noch an anderen dingen zu scheitern schient:

Code: (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
#!/usr/bin/env perl

use strict;
use warnings;
use Socket qw(:all);
use IO::Socket;
use IO::Socket::INET;

my $sock;
my $tcpnodelay;

print "\nUsing built-in method\n";

my $proto = getprotobyname ('tcp');
socket ($sock, PF_INET, SOCK_STREAM, $proto) or die "Socket: $! ($^E)";
$tcpnodelay = getsockopt ($sock, IPPROTO_TCP, TCP_NODELAY);
$tcpnodelay = unpack 'I', $tcpnodelay;
print "Before: tcpnodelay=$tcpnodelay\n";
setsockopt $sock, IPPROTO_TCP, TCP_NODELAY, 1 or die "setsockopt: $! ($^E)";
$tcpnodelay = getsockopt ($sock, IPPROTO_TCP, TCP_NODELAY);
$tcpnodelay = unpack 'I', $tcpnodelay;
print "After: tcpnodelay=$tcpnodelay\n";

print "\nUsing OO method\n";

$sock = IO::Socket::INET->new(Type => SOCK_STREAM, Proto =>'tcp') or
die "new IO::Socket::INET: $! ($^E)";
$tcpnodelay = $sock->sockopt(TCP_NODELAY);
print "Before: tcpnodelay=$tcpnodelay\n";
$sock->sockopt(TCP_NODELAY, 1) or die "\$sock->sockopt NODELAY, 1: $! ($^E)";
$tcpnodelay = $sock->sockopt(TCP_NODELAY);
print "After: tcpnodelay=$tcpnodelay\n";
print "\n\n";

__END__


gibt mir mit einem unprivilegiertem user folgende ausgabe:

Code: (dl )
1
2
3
4
5
6
7
Using built-in method
Before: tcpnodelay=0
After: tcpnodelay=1

Using OO method
Before: tcpnodelay=0
$sock->sockopt NODELAY, 1: Keine Berechtigung (Keine Berechtigung) at ./Server3.pl line 30.


mit sudo aufruf aber:

Code: (dl )
1
2
3
4
5
6
7
8
9
[sudo] password for enzo: 

Using built-in method
Before: tcpnodelay=0
After: tcpnodelay=1

Using OO method
Before: tcpnodelay=0
After: tcpnodelay=-1


scheint also schon an den berechtigungen zu scheitern.

@Dubu: trotzdem danke!

ich werde jetzt nochmal die neueren perl versionen ausprobieren, wenn sich dort das gleiche bild zeigt dann breche ich das unternehmen ab und werde damit leben ( können/müssen ).

auch danke an die anderen helfer!

View full thread dual stack modell