diff options
| author | Robby Zambito <contact@robbyzambito.me> | 2025-04-02 18:38:31 -0400 | 
|---|---|---|
| committer | Robby Zambito <contact@robbyzambito.me> | 2025-04-06 13:08:09 -0400 | 
| commit | 0eda295e0c571e3aa330f1430def7a4a0119380f (patch) | |
| tree | 8db89cf24d98d0a7c23b0b6410e7755056972049 /src | |
| parent | 3e265aeadbe2b3d10734612882927e0b08391f2b (diff) | |
it works!
Diffstat (limited to 'src')
| -rw-r--r-- | src/main.zig | 14 | 
1 files changed, 12 insertions, 2 deletions
diff --git a/src/main.zig b/src/main.zig index e86fc03..f0c1731 100644 --- a/src/main.zig +++ b/src/main.zig @@ -16,7 +16,7 @@ const SaprusHeaderFrame = struct {      const Self = @This();      fn toBytes(s: Self, allocator: Allocator) ![]u8 { -        const buf = try allocator.alloc(u8, 32 + s.payload.len); +        const buf = try allocator.alloc(u8, 4 + s.payload.len);          std.mem.writeInt(u16, buf[0..2], @intFromEnum(s.msg_type), .big);          std.mem.writeInt(u16, buf[2..4], @intCast(s.payload.len), .big);          std.mem.copyForwards(u8, buf[4..], s.payload); @@ -34,6 +34,7 @@ const SaprusRelayMessage = struct {          const buf = try allocator.alloc(u8, 4 + s.payload.len);          std.mem.copyForwards(u8, buf[0..4], &s.dest);          std.mem.copyForwards(u8, buf[4..], s.payload); +        std.debug.print("in tobytes {x}\n", .{buf});          return buf;      }  }; @@ -47,9 +48,15 @@ pub fn main() !void {      var allocator = if (dba) |*d| d.allocator() else std.heap.smp_allocator; +    const str_msg = "Hello darkness my old friend"; +    var payload_bytes: [str_msg.len + 1]u8 = @splat(0); +    // const payload_bytes = try allocator.alloc(u8, str_msg.len); +    // defer allocator.free(payload_bytes); +    // std.mem.copyForwards(u8, payload_bytes[0..], str_msg); +    std.mem.copyBackwards(u8, payload_bytes[0..], str_msg);      const relay: SaprusRelayMessage = .{          .dest = [_]u8{ 255, 255, 255, 255 }, -        .payload = @ptrCast(@constCast("Hello darkness my old friend")), +        .payload = payload_bytes[0..str_msg.len],      };      const relay_bytes = try relay.toBytes(allocator);      defer allocator.free(relay_bytes); @@ -81,6 +88,9 @@ pub fn main() !void {      try sock.bind(bind_addr); +    // std.debug.print("relay: {x}\n", .{relay_bytes}); +    std.debug.print("message bytes: {x}\n", .{msg_bytes}); +      // @breakpoint();      _ = try sock.sendTo(dest_addr, msg_bytes);  | 
