the return value of sctp_connectx do not match any error

Michael Tüxen Michael.Tuexen at lurchi.franken.de
Sun Dec 4 09:11:53 UTC 2011


On Dec 4, 2011, at 3:42 AM, jyl_2006 wrote:

> Sorry.The return value is -1, that means sctp_getladdrs() and
> sctp_getpaddrs() encounter an error. And the errno is set to ENOMEM.
Can you provide a test program showing this?

I changed your client and this works on a FreeBSD head system. Does it fail on your?

Best regards
Michael

#include <sys/errno.h>
#include <stdio.h>
#include <string.h>

#include <netinet/in.h>
#include <netinet/sctp.h>
#include <sys/types.h>
#include <sys/socket.h>
#define PORT 63000

int main()
{
        int _sctp_socket, ret;
        sctp_assoc_t _sctp_associd;
        struct sockaddr *show_ip_address = NULL;

        _sctp_socket = socket( AF_INET , SOCK_SEQPACKET , IPPROTO_SCTP );

        struct sockaddr_in server_ipaddress;
        server_ipaddress . sin_family = AF_INET;
        server_ipaddress . sin_port = htons(PORT);
        server_ipaddress . sin_len = sizeof(struct sockaddr_in);
        server_ipaddress . sin_addr.s_addr = inet_addr("127.0.0.1");

        ret = sctp_connectx(_sctp_socket , (struct sockaddr*) &server_ipaddress , 1, &_sctp_associd);
       if( ret < 0)
       {
                printf("sctp_connectx error");
       }
        ret = sctp_getladdrs(_sctp_socket, _sctp_associd, &show_ip_address);
        printf("sctp_getladdrs() returned %d.\n", ret);
        if (ret > 0)
        {
                sctp_freeladdrs(show_ip_address);
        }

}


> 
> --
> View this message in context: http://freebsd.1045724.n5.nabble.com/the-return-value-of-sctp-connectx-do-not-match-any-error-tp5041952p5045598.html
> Sent from the freebsd-net mailing list archive at Nabble.com.
> _______________________________________________
> freebsd-net at freebsd.org mailing list
> http://lists.freebsd.org/mailman/listinfo/freebsd-net
> To unsubscribe, send any mail to "freebsd-net-unsubscribe at freebsd.org"
> 



More information about the freebsd-net mailing list