Using the neon library wrote the code:
ne_uri uri; ne_uri_parse("http://192.168.1.160:80", &uri); ne_inet_addr* inet_addr = ne_iaddr_parse(uri.host, ne_iaddr_ipv4); ne_sock_init(); ne_socket* socket = ne_sock_create(); if(ne_sock_connect(socket, inet_addr, uri.port)){ fprintf(stdout, "Socket failed: %s\n", ne_sock_error(socket)); ne_iaddr_free(inet_addr); ne_uri_free(&uri); ne_sock_exit(); exit(1); } ne_session* session = ne_session_create(uri.scheme, uri.host, uri.port); res = ne_mkcol(session, "/index"); ... I launched a test server on a local network at http://192.160.1.160:80. When I start the program, I get:
Start Socket failed: Too many open files I can not understand why I can not connect.
sysctl -a | grep maxfile kern.maxfiles: 191353 kern.maxfilesperproc: 172215 ulimit -a cpu time (seconds, -t) unlimited file size (512-blocks, -f) unlimited data seg size (kbytes, -d) 33554432 stack size (kbytes, -s) 524288 core file size (512-blocks, -c) unlimited max memory size (kbytes, -m) unlimited locked memory (kbytes, -l) 64 max user processes (-u) 10227 open files (-n) 172215 virtual mem size (kbytes, -v) unlimited swap limit (kbytes, -w) unlimited socket buffer size (bytes, -b) unlimited pseudo-terminals (-p) unlimited kqueues (-k) unlimited umtx shared locks (-o) unlimited
errnoat the beginning and check the results of calls to allne_...- avpchar ch[256]; printf("%s\n", ne_iaddr_print(inet_addr, ch, sizeof(ch)));char ch[256]; printf("%s\n", ne_iaddr_print(inet_addr, ch, sizeof(ch)));launched./test > treceived a file containing more than 17 thousand such lines192.168.1.160- Alexander Troinin