Hi,

Trying to get openvpn working on opensolaris version (SunOS opensolaris 5.11
snv_128a i86pc i386 i86pc Solaris).

I'm using tuntap drivers from here
http://www.whiteboard.ne.jp/~admin2/tuntap/

OpenVPN will start, connect and even pull down a list of routes that are
pushed by the VPN server. But i can't pass any traffic via the VPN.

The errors i get returned by OpenVPN are error 34 result too large. Looking
into it this error is returned when writing to the tun device, using the
putmsg syscall.

Error 34 is actually ERANGE error, but i can't figure out why it's been
generated everything looks ok to me.

According to the man page of putmsg ERANGE is used as follows:


 ERANGE          The size of the data  part  of  the  message
                     does  not fall within the range specified by
                     the maximum and minimum packet sizes of  the

SunOS 5.11           Last change: 1 Nov 2003                    3

System Calls                                            putmsg(2)

                     topmost  stream  module.  This value is also
                     returned if the control part of the  message
                     is  larger  than the maximum configured size
                     of the control part of a message, or if  the
                     data  part  of  a message is larger than the
                     maximum configured size of the data part  of
                     a message.

Just to confirm iv'e also compiled the example programs that come with
tuntap drivers that just open a tun device and send data, which seems to
work without error.
So it's looking like the problem does lie with openvpn but i may well be
wrong.

Here is some debug output from OpenVPN for good measure, the write_tun: line
was an extra printf added by myself. I don't mind getting my hands dirty and
trying to fix this but im a bit stumped as to why the ERANGE error is
returned, any help is greatly appreciated.

Cheers
Steven Williamson.


Sun Dec 13 12:29:48 2009 us=638048 I/O WAIT status=0x0008
Sun Dec 13 12:29:48 2009 us=638097 TUN WRITE [17]
Sun Dec 13 12:29:48 2009 us=638132 write_tun: sbuf.len:17 sbuf.buf:80f9f9c
Sun Dec 13 12:29:48 2009 us=638216 write to TUN/TAP : Result too large
(code=34)
Sun Dec 13 12:29:48 2009 us=638372 PO_CTL rwflags=0x0001 ev=3 arg=0x080d4d1c
Sun Dec 13 12:29:48 2009 us=638416 PO_CTL rwflags=0x0001 ev=6 arg=0x080d4c84
Sun Dec 13 12:29:48 2009 us=638469 I/O WAIT TR|Tw|SR|Sw [1/130202]
Sun Dec 13 12:29:49 2009 us=768606 I/O WAIT status=0x0020
Sun Dec 13 12:29:49 2009 us=768748 ACK reliable_can_send active=0 current=0
: [27]
Sun Dec 13 12:29:49 2009 us=768822 ACK reliable_send_timeout 604800 [27]
Sun Dec 13 12:29:49 2009 us=768867 PO_CTL rwflags=0x0001 ev=3 arg=0x080d4d1c
Sun Dec 13 12:29:49 2009 us=768897 PO_CTL rwflags=0x0001 ev=6 arg=0x080d4c84
Sun Dec 13 12:29:49 2009 us=768931 I/O WAIT TR|Tw|SR|Sw [1/130202]
Sun Dec 13 12:29:50 2009 us=900592 I/O WAIT status=0x0020
Sun Dec 13 12:29:50 2009 us=900785 TLS: tls_pre_encrypt: key_id=0
Sun Dec 13 12:29:50 2009 us=900885 SENT PING
Sun Dec 13 12:29:50 2009 us=900916 TIMER: coarse timer wakeup 10 seconds
Sun Dec 13 12:29:50 2009 us=900966 PO_CTL rwflags=0x0003 ev=3 arg=0x080d4d1c
Sun Dec 13 12:29:50 2009 us=901015 PO_CTL rwflags=0x0000 ev=6 arg=0x080d4c84
Sun Dec 13 12:29:50 2009 us=901061 I/O WAIT Tr|Tw|SR|SW [10/130202]
Sun Dec 13 12:29:50 2009 us=901143 PO_WAIT[0,0] fd=3 rev=0x00000004
rwflags=0x0002 arg=0x080d4d1c
Sun Dec 13 12:29:50 2009 us=901214 I/O WAIT status=0x0002
Sun Dec 13 12:29:50 2009 us=901270 UDPv4 WRITE [53] to 82.82.82.82:1194:
P_DATA_V1 kid=0 DATA len=52
Sun Dec 13 12:29:50 2009 us=901371 PO_CTL rwflags=0x0001 ev=3 arg=0x080d4d1c
Sun Dec 13 12:29:50 2009 us=901435 PO_CTL rwflags=0x0001 ev=6 arg=0x080d4c84
Sun Dec 13 12:29:50 2009 us=901623 I/O WAIT TR|Tw|SR|Sw [10/130202]
Sun Dec 13 12:29:59 2009 us=77201 PO_WAIT[0,0] fd=3 rev=0x00000001
rwflags=0x0001 arg=0x080d4d1c
Sun Dec 13 12:29:59 2009 us=77403 I/O WAIT status=0x0001
Sun Dec 13 12:29:59 2009 us=77487 UDPv4 READ [53] from 82.82.82.82:1194:
P_DATA_V1 kid=0 DATA len=52
Sun Dec 13 12:29:59 2009 us=77529 TLS: tls_pre_decrypt, key_id=0, IP=
82.82.82.82:1194
Sun Dec 13 12:29:59 2009 us=77613 RANDOM USEC=206362
Sun Dec 13 12:29:59 2009 us=77665 PO_CTL rwflags=0x0000 ev=3 arg=0x080d4d1c
Sun Dec 13 12:29:59 2009 us=77701 PO_CTL rwflags=0x0003 ev=6 arg=0x080d4c84
Sun Dec 13 12:29:59 2009 us=77743 I/O WAIT TR|TW|Sr|Sw [1/206362]
Sun Dec 13 12:29:59 2009 us=77836 PO_WAIT[1,0] fd=6 rev=0x00000004
rwflags=0x0002 arg=0x080d4c84
Sun Dec 13 12:29:59 2009 us=77886 I/O WAIT status=0x0008
Sun Dec 13 12:29:59 2009 us=77920 TUN WRITE [17]
Sun Dec 13 12:29:59 2009 us=77953 write_tun: sbuf.len:17 sbuf.buf:80f9f9c
Sun Dec 13 12:29:59 2009 us=78018 write to TUN/TAP : Result too large
(code=34)
Sun Dec 13 12:29:59 2009 us=78053 PO_CTL rwflags=0x0001 ev=3 arg=0x080d4d1c
Sun Dec 13 12:29:59 2009 us=78087 PO_CTL rwflags=0x0001 ev=6 arg=0x080d4c84
Sun Dec 13 12:29:59 2009 us=78126 I/O WAIT TR|Tw|SR|Sw [1/206362]
Sun Dec 13 12:30:00 2009 us=285898 I/O WAIT status=0x0020

Reply via email to