v1.7.0 release

This commit is contained in:
seajee
2025-09-06 01:30:42 +02:00
parent 42d126f01a
commit a9462d0880
6 changed files with 372 additions and 135 deletions

View File

@@ -13,7 +13,7 @@ int main(void)
SockAddr addr = sock_addr("0.0.0.0", 6969);
if (!sock_bind(server, addr)) { err = "bind"; goto defer; }
if (!sock_listen(server, 16)) { err = "listen"; goto defer; }
if (!sock_listen(server)) { err = "listen"; goto defer; }
Sock *client = sock_accept(server);
if (client == NULL) { err = "accept"; goto defer; }

View File

@@ -12,7 +12,7 @@ int main(void)
SockAddr addr = sock_addr("::", 6969);
if (!sock_bind(server, addr)) { err = true; goto close; }
if (!sock_listen(server, 16)) { err = true; goto close; }
if (!sock_listen(server)) { err = true; goto close; }
Sock *client = sock_accept(server);
if (client == NULL) { err = true; goto close; }

View File

@@ -5,12 +5,16 @@
int main(void)
{
SockAddr addr = sock_addr("example.com", 80);
if (addr.type == SOCK_ADDR_INVALID) {
fprintf(stderr, "ERROR: Could not resolve address %s\n", addr.str);
const char *domain_name = "example.com";
SockAddrList addr_list = sock_dns(domain_name, 80, SOCK_IPV4, SOCK_TCP);
if (addr_list.count == 0) {
fprintf(stderr, "ERROR: Could not resolve address %s\n", domain_name);
return 1;
}
SockAddr addr = addr_list.items[0];
sock_addr_list_free(&addr_list);
printf("%s:%d\n", addr.str, addr.port);
Sock *s = sock_create(addr.type, SOCK_TCP);
@@ -30,7 +34,8 @@ int main(void)
const char *req =
"GET / HTTP/1.1\r\n"
"Host: example.com\r\n"
"Connection: close\r\n\r\n";
"Connection: close\r\n"
"\r\n";
sock_send(s, req, strlen(req));

26
examples/06-dig.c Normal file
View File

@@ -0,0 +1,26 @@
#define SOCK_IMPLEMENTATION
#include "sock.h"
int main(int argc, char **argv)
{
const char *program_name = argv[0];
if (argc <= 1) {
fprintf(stderr, "USAGE: %s <address>\n", program_name);
fprintf(stderr, "ERROR: No address was provided\n");
return 1;
}
const char *arg_address = argv[1];
SockAddrList addrs = sock_dns(arg_address, 0, 0, SOCK_TCP);
for (size_t i = 0; i < addrs.count; ++i) {
SockAddr it = addrs.items[i];
printf("%s\n", it.str);
}
sock_addr_list_free(&addrs);
return 0;
}

View File

@@ -138,7 +138,7 @@ int main(void)
printf("INFO: Bind socket\n");
if (!sock_listen(server, 10)) {
if (!sock_listen(server)) {
fprintf(stderr, "ERROR: Could not listen on socket\n");
sock_close(server);
return EXIT_FAILURE;