)]}'
{"doc/man-sections/vpn-network-options.rst":[{"author":{"_account_id":1000001,"name":"flichtenheld","display_name":"Frank Lichtenheld","email":"frank@lichtenheld.com","username":"flichtenheld","status":"OpenVPN Inc."},"change_message_id":"d865f449af39dc7eb9e73ab54575ffda7d0f150e","unresolved":true,"context_lines":[{"line_number":304,"context_line":"  Specify the link layer address, more commonly known as the MAC address."},{"line_number":305,"context_line":"  Only applied to TAP devices."},{"line_number":306,"context_line":""},{"line_number":307,"context_line":"--l3mdev name"},{"line_number":308,"context_line":"   Specify the L3 master device (such as VRF) to which the tunnel "},{"line_number":309,"context_line":"   interface will be bound. The specified device must already exist."},{"line_number":310,"context_line":""}],"source_content_type":"text/x-rst","patch_set":1,"id":"63e84a08_0cf3cef8","line":307,"updated":"2026-06-08 13:53:51.000000000","message":"this needs an explanation on how it is different to --bind-dev which seems to claim to offer the same feature but implemented differently?","commit_id":"c0912e077fe19033a61d0fab245fccbe7c75f07f"},{"author":{"_account_id":1000034,"name":"its_Giaan","display_name":"Gianmarco De Gregori","email":"gianmarco@mandelbit.com","username":"its_Giaan"},"change_message_id":"8a0e8f625b03cadccc1c67bd86bc7f5e31f146a0","unresolved":false,"context_lines":[{"line_number":304,"context_line":"  Specify the link layer address, more commonly known as the MAC address."},{"line_number":305,"context_line":"  Only applied to TAP devices."},{"line_number":306,"context_line":""},{"line_number":307,"context_line":"--l3mdev name"},{"line_number":308,"context_line":"   Specify the L3 master device (such as VRF) to which the tunnel "},{"line_number":309,"context_line":"   interface will be bound. The specified device must already exist."},{"line_number":310,"context_line":""}],"source_content_type":"text/x-rst","patch_set":1,"id":"2140ddc6_b93cfce6","line":307,"in_reply_to":"63e84a08_0cf3cef8","updated":"2026-06-10 11:35:39.000000000","message":"Done","commit_id":"c0912e077fe19033a61d0fab245fccbe7c75f07f"},{"author":{"_account_id":1000001,"name":"flichtenheld","display_name":"Frank Lichtenheld","email":"frank@lichtenheld.com","username":"flichtenheld","status":"OpenVPN Inc."},"change_message_id":"1fdc2ea20f0ea2fa7553a70c838da2747587abba","unresolved":true,"context_lines":[{"line_number":305,"context_line":"  Only applied to TAP devices."},{"line_number":306,"context_line":""},{"line_number":307,"context_line":"--l3mdev name"},{"line_number":308,"context_line":"   Specify the L3 master device (such as VRF) to which the tunnel "},{"line_number":309,"context_line":"   interface will be bound. The specified device must already exist."},{"line_number":310,"context_line":""},{"line_number":311,"context_line":"  (Supported on Linux only, on other platforms this is a no-op)."}],"source_content_type":"text/x-rst","patch_set":1,"id":"ed5c2fad_21f38c6c","line":308,"updated":"2026-06-08 13:38:55.000000000","message":"trailing whitespace","commit_id":"c0912e077fe19033a61d0fab245fccbe7c75f07f"},{"author":{"_account_id":1000034,"name":"its_Giaan","display_name":"Gianmarco De Gregori","email":"gianmarco@mandelbit.com","username":"its_Giaan"},"change_message_id":"8a0e8f625b03cadccc1c67bd86bc7f5e31f146a0","unresolved":false,"context_lines":[{"line_number":305,"context_line":"  Only applied to TAP devices."},{"line_number":306,"context_line":""},{"line_number":307,"context_line":"--l3mdev name"},{"line_number":308,"context_line":"   Specify the L3 master device (such as VRF) to which the tunnel "},{"line_number":309,"context_line":"   interface will be bound. The specified device must already exist."},{"line_number":310,"context_line":""},{"line_number":311,"context_line":"  (Supported on Linux only, on other platforms this is a no-op)."}],"source_content_type":"text/x-rst","patch_set":1,"id":"5a39a19c_13dc55b7","line":308,"in_reply_to":"ed5c2fad_21f38c6c","updated":"2026-06-10 11:35:39.000000000","message":"Done","commit_id":"c0912e077fe19033a61d0fab245fccbe7c75f07f"}],"src/openvpn/networking_sitnl.c":[{"author":{"_account_id":1000001,"name":"flichtenheld","display_name":"Frank Lichtenheld","email":"frank@lichtenheld.com","username":"flichtenheld","status":"OpenVPN Inc."},"change_message_id":"1fdc2ea20f0ea2fa7553a70c838da2747587abba","unresolved":true,"context_lines":[{"line_number":1060,"context_line":"net_iface_l3mdev_bind(openvpn_net_ctx_t *ctx, const char *iface)"},{"line_number":1061,"context_line":"{"},{"line_number":1062,"context_line":"    struct sitnl_link_req req;"},{"line_number":1063,"context_line":"    int ifindex, l3mdev_index, ret \u003d -1;"},{"line_number":1064,"context_line":""},{"line_number":1065,"context_line":"    CLEAR(req);"},{"line_number":1066,"context_line":""}],"source_content_type":"text/x-csrc","patch_set":1,"id":"ff1dde5f_2179873d","line":1063,"updated":"2026-06-08 13:38:55.000000000","message":"there is no reason to initialize values to -1 if you do overwrite this immediately. This makes cppcheck unhappy.","commit_id":"c0912e077fe19033a61d0fab245fccbe7c75f07f"},{"author":{"_account_id":1000034,"name":"its_Giaan","display_name":"Gianmarco De Gregori","email":"gianmarco@mandelbit.com","username":"its_Giaan"},"change_message_id":"8a0e8f625b03cadccc1c67bd86bc7f5e31f146a0","unresolved":false,"context_lines":[{"line_number":1060,"context_line":"net_iface_l3mdev_bind(openvpn_net_ctx_t *ctx, const char *iface)"},{"line_number":1061,"context_line":"{"},{"line_number":1062,"context_line":"    struct sitnl_link_req req;"},{"line_number":1063,"context_line":"    int ifindex, l3mdev_index, ret \u003d -1;"},{"line_number":1064,"context_line":""},{"line_number":1065,"context_line":"    CLEAR(req);"},{"line_number":1066,"context_line":""}],"source_content_type":"text/x-csrc","patch_set":1,"id":"6f90f26b_12ca8a84","line":1063,"in_reply_to":"ff1dde5f_2179873d","updated":"2026-06-10 11:35:39.000000000","message":"Done","commit_id":"c0912e077fe19033a61d0fab245fccbe7c75f07f"},{"author":{"_account_id":1000001,"name":"flichtenheld","display_name":"Frank Lichtenheld","email":"frank@lichtenheld.com","username":"flichtenheld","status":"OpenVPN Inc."},"change_message_id":"1fdc2ea20f0ea2fa7553a70c838da2747587abba","unresolved":true,"context_lines":[{"line_number":1064,"context_line":""},{"line_number":1065,"context_line":"    CLEAR(req);"},{"line_number":1066,"context_line":""},{"line_number":1067,"context_line":"    ifindex \u003d if_nametoindex(iface);"},{"line_number":1068,"context_line":"    l3mdev_index \u003d if_nametoindex(ctx-\u003el3mdev);"},{"line_number":1069,"context_line":""},{"line_number":1070,"context_line":"    if (ifindex \u003d\u003d 0)"}],"source_content_type":"text/x-csrc","patch_set":1,"id":"2ebe5771_fa394ec7","line":1067,"updated":"2026-06-08 13:38:55.000000000","message":"just initialize the variable here.","commit_id":"c0912e077fe19033a61d0fab245fccbe7c75f07f"},{"author":{"_account_id":1000034,"name":"its_Giaan","display_name":"Gianmarco De Gregori","email":"gianmarco@mandelbit.com","username":"its_Giaan"},"change_message_id":"8a0e8f625b03cadccc1c67bd86bc7f5e31f146a0","unresolved":false,"context_lines":[{"line_number":1064,"context_line":""},{"line_number":1065,"context_line":"    CLEAR(req);"},{"line_number":1066,"context_line":""},{"line_number":1067,"context_line":"    ifindex \u003d if_nametoindex(iface);"},{"line_number":1068,"context_line":"    l3mdev_index \u003d if_nametoindex(ctx-\u003el3mdev);"},{"line_number":1069,"context_line":""},{"line_number":1070,"context_line":"    if (ifindex \u003d\u003d 0)"}],"source_content_type":"text/x-csrc","patch_set":1,"id":"754466b4_0c633fc3","line":1067,"in_reply_to":"2ebe5771_fa394ec7","updated":"2026-06-10 11:35:39.000000000","message":"Done","commit_id":"c0912e077fe19033a61d0fab245fccbe7c75f07f"}],"src/openvpn/options.c":[{"author":{"_account_id":1000001,"name":"flichtenheld","display_name":"Frank Lichtenheld","email":"frank@lichtenheld.com","username":"flichtenheld","status":"OpenVPN Inc."},"change_message_id":"1fdc2ea20f0ea2fa7553a70c838da2747587abba","unresolved":true,"context_lines":[{"line_number":6496,"context_line":"        VERIFY_PERMISSION(OPT_P_GENERAL);"},{"line_number":6497,"context_line":"        options-\u003enetns \u003d p[1];"},{"line_number":6498,"context_line":"    }"},{"line_number":6499,"context_line":"    else if (streq(p[0], \"l3mdev\") \u0026\u0026 p[1] \u0026\u0026 !p[2])"},{"line_number":6500,"context_line":"    {"},{"line_number":6501,"context_line":"#ifndef ENABLE_SITNL"},{"line_number":6502,"context_line":"        msg(M_WARN, \"NOTE: --l3mdev is supported only on Linux when compiled with SITNL\");"}],"source_content_type":"text/x-csrc","patch_set":1,"id":"70f6ad5e_5e72ec63","line":6499,"updated":"2026-06-08 13:38:55.000000000","message":"Addition to usage string seems to be missing","commit_id":"c0912e077fe19033a61d0fab245fccbe7c75f07f"},{"author":{"_account_id":1000034,"name":"its_Giaan","display_name":"Gianmarco De Gregori","email":"gianmarco@mandelbit.com","username":"its_Giaan"},"change_message_id":"8a0e8f625b03cadccc1c67bd86bc7f5e31f146a0","unresolved":false,"context_lines":[{"line_number":6496,"context_line":"        VERIFY_PERMISSION(OPT_P_GENERAL);"},{"line_number":6497,"context_line":"        options-\u003enetns \u003d p[1];"},{"line_number":6498,"context_line":"    }"},{"line_number":6499,"context_line":"    else if (streq(p[0], \"l3mdev\") \u0026\u0026 p[1] \u0026\u0026 !p[2])"},{"line_number":6500,"context_line":"    {"},{"line_number":6501,"context_line":"#ifndef ENABLE_SITNL"},{"line_number":6502,"context_line":"        msg(M_WARN, \"NOTE: --l3mdev is supported only on Linux when compiled with SITNL\");"}],"source_content_type":"text/x-csrc","patch_set":1,"id":"07015eeb_a463f171","line":6499,"in_reply_to":"70f6ad5e_5e72ec63","updated":"2026-06-10 11:35:39.000000000","message":"Done","commit_id":"c0912e077fe19033a61d0fab245fccbe7c75f07f"}]}
