1 Commits

Author SHA1 Message Date
53a84b10bf Need to flush io in release mode 2025-04-19 22:29:50 -04:00
2 changed files with 8 additions and 2 deletions

View File

@@ -48,9 +48,11 @@ pub fn main() !void {
return clap.help(std.io.getStdErr().writer(), clap.Help, &params, .{});
}
std.debug.print("main\n", .{});
if (res.args.relay) |r| {
try Saprus.sendRelay(if (r.len > 0) r else "Hello darkness my old friend", gpa);
// std.debug.print("Sent: {s}\n", .{r});
std.debug.print("Sent: {s}\n", .{r});
return;
} else if (res.args.connect) |c| {
const conn_res: ?SaprusMessage = Saprus.connect(if (c.len > 0) c else "Hello darkness my old friend", gpa) catch |err| switch (err) {

View File

@@ -42,7 +42,7 @@ fn broadcastSaprusMessage(msg: SaprusMessage, udp_port: u16, allocator: Allocato
pub fn sendRelay(payload: []const u8, allocator: Allocator) !void {
const msg = SaprusMessage{
.relay = .{
.header = .{ .dest = .{ 70, 70, 70, 70 } },
.header = .{ .dest = .{ 255, 255, 255, 255 } },
.payload = payload,
},
};
@@ -85,9 +85,11 @@ pub fn connect(payload: []const u8, allocator: Allocator) !?SaprusMessage {
var initial_conn_res: ?SaprusMessage = null;
errdefer if (initial_conn_res) |c| c.deinit(allocator);
std.debug.print("creating socket\n", .{});
var sock = try network.Socket.create(.ipv4, .udp);
defer sock.close();
std.debug.print("creating endpoint\n", .{});
// Bind to 255.255.255.255:8888
const bind_addr = network.EndPoint{
.address = network.Address{ .ipv4 = network.Address.IPv4.broadcast },
@@ -96,8 +98,10 @@ pub fn connect(payload: []const u8, allocator: Allocator) !?SaprusMessage {
// timeout 1s
try sock.setReadTimeout(1 * std.time.us_per_s);
std.debug.print("binding to socket\n", .{});
try sock.bind(bind_addr);
std.debug.print("sending initial connection payload\n", .{});
const msg = try sendInitialConnection(payload, initial_port, allocator);
var response_buf: [4096]u8 = undefined;