)]}'
{"/PATCHSET_LEVEL":[{"author":{"_account_id":1000001,"name":"flichtenheld","display_name":"Frank Lichtenheld","email":"frank@lichtenheld.com","username":"flichtenheld","status":"OpenVPN Inc."},"change_message_id":"7b05a8c9197fd25ffe4c9bfa92f16d96896fa301","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"79214565_bcfa30e0","updated":"2025-01-20 12:36:50.000000000","message":"Documentation review","commit_id":"c940fae90cf283fa7222d7c0f85174c11f0e6d52"},{"author":{"_account_id":1000003,"name":"plaisthos","display_name":"Arne Schwabe","email":"arne-openvpn@rfc2549.org","username":"plaisthos"},"change_message_id":"0efd76c884a3696c0fc49d3086875358e89cf551","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":5,"id":"e9891529_6c7ec851","updated":"2025-02-10 15:46:38.000000000","message":"This has been also tested by the Access Server QA to work as expected for the use case of Access Server.\n\nAS use case is that a user comes without username and does SAML web auth and then is given a auth-token-user and auth-token via auth-gen-token and will authenticate with that on the next reconnect/renegotiate. \n\nThere has also been some testing by community users and that seem to be also positive with the latest version of the patch: https://github.com/OpenVPN/openvpn/issues/299","commit_id":"d4a75e401e15bcfe26bd5215cd0aefb08ab12b2e"},{"author":{"_account_id":1000007,"name":"ordex","display_name":"Antonio Quartulli","email":"antonio@mandelbit.com","username":"ordex"},"change_message_id":"1edc66494670117a92fe1cc54f08784fdec47d3b","unresolved":true,"context_lines":[],"source_content_type":"","patch_set":5,"id":"4155e62e_d406fdc5","updated":"2025-02-17 08:57:43.000000000","message":"is this a server option? or a client options being pushed by the server?\nIs this intended to be used only when connecting to the second server (after roaming)?","commit_id":"d4a75e401e15bcfe26bd5215cd0aefb08ab12b2e"},{"author":{"_account_id":1000003,"name":"plaisthos","display_name":"Arne Schwabe","email":"arne-openvpn@rfc2549.org","username":"plaisthos"},"change_message_id":"daea45ceb4a3f9d039bd443d99cce5441315a383","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":5,"id":"c88ebdf9_7b6e0261","in_reply_to":"4155e62e_d406fdc5","updated":"2025-02-25 15:05:23.000000000","message":"I extended the man page","commit_id":"d4a75e401e15bcfe26bd5215cd0aefb08ab12b2e"},{"author":{"_account_id":1000002,"name":"cron2","display_name":"Gert Doering","email":"gert@greenie.muc.de","username":"cron2"},"change_message_id":"8d4c9ca0b24f473f427c0da64873e37be8913695","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":8,"id":"8db3419d_2ffc6a6b","updated":"2025-03-08 11:32:46.000000000","message":"one minor nit (manpage), one major nit (*boom*).","commit_id":"56324fb75fdee740fce868d0c7f3a4792159ff8f"},{"author":{"_account_id":1000002,"name":"cron2","display_name":"Gert Doering","email":"gert@greenie.muc.de","username":"cron2"},"change_message_id":"f8d411683da89d76b4a1db33292383a68d4a95eb","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":9,"id":"fd67b6cc_0fa4ac1b","updated":"2025-03-11 15:58:39.000000000","message":"Looks good.  Haven\u0027t tested in detail, but the code paths tested should continue to work fine, and the crash I saw is now appropriately handled.","commit_id":"e64fa477ab6d1ef1035458e5e47aa7e1720d7080"}],"Changes.rst":[{"author":{"_account_id":1000001,"name":"flichtenheld","display_name":"Frank Lichtenheld","email":"frank@lichtenheld.com","username":"flichtenheld","status":"OpenVPN Inc."},"change_message_id":"7b05a8c9197fd25ffe4c9bfa92f16d96896fa301","unresolved":true,"context_lines":[{"line_number":38,"context_line":""},{"line_number":39,"context_line":"Allow overriding username with ``--override-username``"},{"line_number":40,"context_line":"    This is intended to allow using auth-gen-token in scenarios where the"},{"line_number":41,"context_line":"    client use certificates and multi-factor authentication."},{"line_number":42,"context_line":""},{"line_number":43,"context_line":"Deprecated features"},{"line_number":44,"context_line":"-------------------"}],"source_content_type":"text/x-rst","patch_set":1,"id":"ccc7ee92_27cbfac3","line":41,"updated":"2025-01-20 12:36:50.000000000","message":"\"clients\"","commit_id":"c940fae90cf283fa7222d7c0f85174c11f0e6d52"},{"author":{"_account_id":1000003,"name":"plaisthos","display_name":"Arne Schwabe","email":"arne-openvpn@rfc2549.org","username":"plaisthos"},"change_message_id":"148d42b1459eb90c2b746bc99c4414ec5a2e92c5","unresolved":false,"context_lines":[{"line_number":38,"context_line":""},{"line_number":39,"context_line":"Allow overriding username with ``--override-username``"},{"line_number":40,"context_line":"    This is intended to allow using auth-gen-token in scenarios where the"},{"line_number":41,"context_line":"    client use certificates and multi-factor authentication."},{"line_number":42,"context_line":""},{"line_number":43,"context_line":"Deprecated features"},{"line_number":44,"context_line":"-------------------"}],"source_content_type":"text/x-rst","patch_set":1,"id":"02e764b7_6304b3bf","line":41,"in_reply_to":"ccc7ee92_27cbfac3","updated":"2025-01-20 15:29:00.000000000","message":"Acknowledged","commit_id":"c940fae90cf283fa7222d7c0f85174c11f0e6d52"},{"author":{"_account_id":1000001,"name":"flichtenheld","display_name":"Frank Lichtenheld","email":"frank@lichtenheld.com","username":"flichtenheld","status":"OpenVPN Inc."},"change_message_id":"9c2bbab790dc49c74e6869919a937c4c17d081d8","unresolved":false,"context_lines":[{"line_number":38,"context_line":""},{"line_number":39,"context_line":"Allow overriding username with ``--override-username``"},{"line_number":40,"context_line":"    This is intended to allow using auth-gen-token in scenarios where the"},{"line_number":41,"context_line":"    client use certificates and multi-factor authentication."},{"line_number":42,"context_line":""},{"line_number":43,"context_line":"Deprecated features"},{"line_number":44,"context_line":"-------------------"}],"source_content_type":"text/x-rst","patch_set":1,"id":"21228070_1f46d719","line":41,"in_reply_to":"ccc7ee92_27cbfac3","updated":"2025-01-20 15:24:43.000000000","message":"Done","commit_id":"c940fae90cf283fa7222d7c0f85174c11f0e6d52"}],"doc/man-sections/server-options.rst":[{"author":{"_account_id":1000001,"name":"flichtenheld","display_name":"Frank Lichtenheld","email":"frank@lichtenheld.com","username":"flichtenheld","status":"OpenVPN Inc."},"change_message_id":"7b05a8c9197fd25ffe4c9bfa92f16d96896fa301","unresolved":true,"context_lines":[{"line_number":670,"context_line":"  AND the ``--auth-user-pass-verify`` script will need to succeed in order"},{"line_number":671,"context_line":"  for a client to be authenticated and accepted onto the VPN."},{"line_number":672,"context_line":""},{"line_number":673,"context_line":"--override-username"},{"line_number":674,"context_line":"  Sets the username of a connection the specified username.  This username"},{"line_number":675,"context_line":"  will also be used by the by ``--auth-gen-token``. However, the overridden"},{"line_number":676,"context_line":"  username comes only into effect *after* the ``--client-connect``,"}],"source_content_type":"text/x-rst","patch_set":1,"id":"2cd1859d_57eca9b5","line":673,"updated":"2025-01-20 12:36:50.000000000","message":"At the wrong place in the document alphabetically","commit_id":"c940fae90cf283fa7222d7c0f85174c11f0e6d52"},{"author":{"_account_id":1000003,"name":"plaisthos","display_name":"Arne Schwabe","email":"arne-openvpn@rfc2549.org","username":"plaisthos"},"change_message_id":"148d42b1459eb90c2b746bc99c4414ec5a2e92c5","unresolved":false,"context_lines":[{"line_number":670,"context_line":"  AND the ``--auth-user-pass-verify`` script will need to succeed in order"},{"line_number":671,"context_line":"  for a client to be authenticated and accepted onto the VPN."},{"line_number":672,"context_line":""},{"line_number":673,"context_line":"--override-username"},{"line_number":674,"context_line":"  Sets the username of a connection the specified username.  This username"},{"line_number":675,"context_line":"  will also be used by the by ``--auth-gen-token``. However, the overridden"},{"line_number":676,"context_line":"  username comes only into effect *after* the ``--client-connect``,"}],"source_content_type":"text/x-rst","patch_set":1,"id":"334a1a85_26710d09","line":673,"in_reply_to":"2cd1859d_57eca9b5","updated":"2025-01-20 15:29:00.000000000","message":"Acknowledged","commit_id":"c940fae90cf283fa7222d7c0f85174c11f0e6d52"},{"author":{"_account_id":1000001,"name":"flichtenheld","display_name":"Frank Lichtenheld","email":"frank@lichtenheld.com","username":"flichtenheld","status":"OpenVPN Inc."},"change_message_id":"9c2bbab790dc49c74e6869919a937c4c17d081d8","unresolved":false,"context_lines":[{"line_number":670,"context_line":"  AND the ``--auth-user-pass-verify`` script will need to succeed in order"},{"line_number":671,"context_line":"  for a client to be authenticated and accepted onto the VPN."},{"line_number":672,"context_line":""},{"line_number":673,"context_line":"--override-username"},{"line_number":674,"context_line":"  Sets the username of a connection the specified username.  This username"},{"line_number":675,"context_line":"  will also be used by the by ``--auth-gen-token``. However, the overridden"},{"line_number":676,"context_line":"  username comes only into effect *after* the ``--client-connect``,"}],"source_content_type":"text/x-rst","patch_set":1,"id":"06e9abaf_d78465ff","line":673,"in_reply_to":"2cd1859d_57eca9b5","updated":"2025-01-20 15:24:43.000000000","message":"Done","commit_id":"c940fae90cf283fa7222d7c0f85174c11f0e6d52"},{"author":{"_account_id":1000001,"name":"flichtenheld","display_name":"Frank Lichtenheld","email":"frank@lichtenheld.com","username":"flichtenheld","status":"OpenVPN Inc."},"change_message_id":"7b05a8c9197fd25ffe4c9bfa92f16d96896fa301","unresolved":true,"context_lines":[{"line_number":671,"context_line":"  for a client to be authenticated and accepted onto the VPN."},{"line_number":672,"context_line":""},{"line_number":673,"context_line":"--override-username"},{"line_number":674,"context_line":"  Sets the username of a connection the specified username.  This username"},{"line_number":675,"context_line":"  will also be used by the by ``--auth-gen-token``. However, the overridden"},{"line_number":676,"context_line":"  username comes only into effect *after* the ``--client-connect``,"},{"line_number":677,"context_line":"  ``--client-config-dir`` and the ``--auth-user-pass-verify`` script have"}],"source_content_type":"text/x-rst","patch_set":1,"id":"b9a8d3a6_1619c847","line":674,"updated":"2025-01-20 12:36:50.000000000","message":"\"to the\"","commit_id":"c940fae90cf283fa7222d7c0f85174c11f0e6d52"},{"author":{"_account_id":1000003,"name":"plaisthos","display_name":"Arne Schwabe","email":"arne-openvpn@rfc2549.org","username":"plaisthos"},"change_message_id":"148d42b1459eb90c2b746bc99c4414ec5a2e92c5","unresolved":false,"context_lines":[{"line_number":671,"context_line":"  for a client to be authenticated and accepted onto the VPN."},{"line_number":672,"context_line":""},{"line_number":673,"context_line":"--override-username"},{"line_number":674,"context_line":"  Sets the username of a connection the specified username.  This username"},{"line_number":675,"context_line":"  will also be used by the by ``--auth-gen-token``. However, the overridden"},{"line_number":676,"context_line":"  username comes only into effect *after* the ``--client-connect``,"},{"line_number":677,"context_line":"  ``--client-config-dir`` and the ``--auth-user-pass-verify`` script have"}],"source_content_type":"text/x-rst","patch_set":1,"id":"89fc0d0a_8affe908","line":674,"in_reply_to":"b9a8d3a6_1619c847","updated":"2025-01-20 15:29:00.000000000","message":"Acknowledged","commit_id":"c940fae90cf283fa7222d7c0f85174c11f0e6d52"},{"author":{"_account_id":1000001,"name":"flichtenheld","display_name":"Frank Lichtenheld","email":"frank@lichtenheld.com","username":"flichtenheld","status":"OpenVPN Inc."},"change_message_id":"9c2bbab790dc49c74e6869919a937c4c17d081d8","unresolved":false,"context_lines":[{"line_number":671,"context_line":"  for a client to be authenticated and accepted onto the VPN."},{"line_number":672,"context_line":""},{"line_number":673,"context_line":"--override-username"},{"line_number":674,"context_line":"  Sets the username of a connection the specified username.  This username"},{"line_number":675,"context_line":"  will also be used by the by ``--auth-gen-token``. However, the overridden"},{"line_number":676,"context_line":"  username comes only into effect *after* the ``--client-connect``,"},{"line_number":677,"context_line":"  ``--client-config-dir`` and the ``--auth-user-pass-verify`` script have"}],"source_content_type":"text/x-rst","patch_set":1,"id":"7c534346_cab10b4d","line":674,"in_reply_to":"b9a8d3a6_1619c847","updated":"2025-01-20 15:24:43.000000000","message":"Done","commit_id":"c940fae90cf283fa7222d7c0f85174c11f0e6d52"},{"author":{"_account_id":1000001,"name":"flichtenheld","display_name":"Frank Lichtenheld","email":"frank@lichtenheld.com","username":"flichtenheld","status":"OpenVPN Inc."},"change_message_id":"7b05a8c9197fd25ffe4c9bfa92f16d96896fa301","unresolved":true,"context_lines":[{"line_number":672,"context_line":""},{"line_number":673,"context_line":"--override-username"},{"line_number":674,"context_line":"  Sets the username of a connection the specified username.  This username"},{"line_number":675,"context_line":"  will also be used by the by ``--auth-gen-token``. However, the overridden"},{"line_number":676,"context_line":"  username comes only into effect *after* the ``--client-connect``,"},{"line_number":677,"context_line":"  ``--client-config-dir`` and the ``--auth-user-pass-verify`` script have"},{"line_number":678,"context_line":"  been run."}],"source_content_type":"text/x-rst","patch_set":1,"id":"e61d54e2_2420a045","line":675,"updated":"2025-01-20 12:36:50.000000000","message":"Superfluous words \"by the\"?","commit_id":"c940fae90cf283fa7222d7c0f85174c11f0e6d52"},{"author":{"_account_id":1000003,"name":"plaisthos","display_name":"Arne Schwabe","email":"arne-openvpn@rfc2549.org","username":"plaisthos"},"change_message_id":"148d42b1459eb90c2b746bc99c4414ec5a2e92c5","unresolved":false,"context_lines":[{"line_number":672,"context_line":""},{"line_number":673,"context_line":"--override-username"},{"line_number":674,"context_line":"  Sets the username of a connection the specified username.  This username"},{"line_number":675,"context_line":"  will also be used by the by ``--auth-gen-token``. However, the overridden"},{"line_number":676,"context_line":"  username comes only into effect *after* the ``--client-connect``,"},{"line_number":677,"context_line":"  ``--client-config-dir`` and the ``--auth-user-pass-verify`` script have"},{"line_number":678,"context_line":"  been run."}],"source_content_type":"text/x-rst","patch_set":1,"id":"4ce38eba_2c5c594a","line":675,"in_reply_to":"e61d54e2_2420a045","updated":"2025-01-20 15:29:00.000000000","message":"Acknowledged","commit_id":"c940fae90cf283fa7222d7c0f85174c11f0e6d52"},{"author":{"_account_id":1000001,"name":"flichtenheld","display_name":"Frank Lichtenheld","email":"frank@lichtenheld.com","username":"flichtenheld","status":"OpenVPN Inc."},"change_message_id":"9c2bbab790dc49c74e6869919a937c4c17d081d8","unresolved":false,"context_lines":[{"line_number":672,"context_line":""},{"line_number":673,"context_line":"--override-username"},{"line_number":674,"context_line":"  Sets the username of a connection the specified username.  This username"},{"line_number":675,"context_line":"  will also be used by the by ``--auth-gen-token``. However, the overridden"},{"line_number":676,"context_line":"  username comes only into effect *after* the ``--client-connect``,"},{"line_number":677,"context_line":"  ``--client-config-dir`` and the ``--auth-user-pass-verify`` script have"},{"line_number":678,"context_line":"  been run."}],"source_content_type":"text/x-rst","patch_set":1,"id":"a75a4873_d2d04eb7","line":675,"in_reply_to":"e61d54e2_2420a045","updated":"2025-01-20 15:24:43.000000000","message":"Done","commit_id":"c940fae90cf283fa7222d7c0f85174c11f0e6d52"},{"author":{"_account_id":1000001,"name":"flichtenheld","display_name":"Frank Lichtenheld","email":"frank@lichtenheld.com","username":"flichtenheld","status":"OpenVPN Inc."},"change_message_id":"7b05a8c9197fd25ffe4c9bfa92f16d96896fa301","unresolved":true,"context_lines":[{"line_number":674,"context_line":"  Sets the username of a connection the specified username.  This username"},{"line_number":675,"context_line":"  will also be used by the by ``--auth-gen-token``. However, the overridden"},{"line_number":676,"context_line":"  username comes only into effect *after* the ``--client-connect``,"},{"line_number":677,"context_line":"  ``--client-config-dir`` and the ``--auth-user-pass-verify`` script have"},{"line_number":678,"context_line":"  been run."},{"line_number":679,"context_line":""},{"line_number":680,"context_line":"  Also ``username-as-common-name`` will use the client provided username"}],"source_content_type":"text/x-rst","patch_set":1,"id":"4c901590_e34fb4e7","line":677,"updated":"2025-01-20 12:36:50.000000000","message":"This is confusing. Maybe: \"after --client-config-dir has been read and the --client-connect and --auth-user-pass-verify scripts have been run.\"","commit_id":"c940fae90cf283fa7222d7c0f85174c11f0e6d52"},{"author":{"_account_id":1000003,"name":"plaisthos","display_name":"Arne Schwabe","email":"arne-openvpn@rfc2549.org","username":"plaisthos"},"change_message_id":"148d42b1459eb90c2b746bc99c4414ec5a2e92c5","unresolved":false,"context_lines":[{"line_number":674,"context_line":"  Sets the username of a connection the specified username.  This username"},{"line_number":675,"context_line":"  will also be used by the by ``--auth-gen-token``. However, the overridden"},{"line_number":676,"context_line":"  username comes only into effect *after* the ``--client-connect``,"},{"line_number":677,"context_line":"  ``--client-config-dir`` and the ``--auth-user-pass-verify`` script have"},{"line_number":678,"context_line":"  been run."},{"line_number":679,"context_line":""},{"line_number":680,"context_line":"  Also ``username-as-common-name`` will use the client provided username"}],"source_content_type":"text/x-rst","patch_set":1,"id":"1118b7e1_d4a82479","line":677,"in_reply_to":"4c901590_e34fb4e7","updated":"2025-01-20 15:29:00.000000000","message":"Acknowledged","commit_id":"c940fae90cf283fa7222d7c0f85174c11f0e6d52"},{"author":{"_account_id":1000001,"name":"flichtenheld","display_name":"Frank Lichtenheld","email":"frank@lichtenheld.com","username":"flichtenheld","status":"OpenVPN Inc."},"change_message_id":"9c2bbab790dc49c74e6869919a937c4c17d081d8","unresolved":false,"context_lines":[{"line_number":674,"context_line":"  Sets the username of a connection the specified username.  This username"},{"line_number":675,"context_line":"  will also be used by the by ``--auth-gen-token``. However, the overridden"},{"line_number":676,"context_line":"  username comes only into effect *after* the ``--client-connect``,"},{"line_number":677,"context_line":"  ``--client-config-dir`` and the ``--auth-user-pass-verify`` script have"},{"line_number":678,"context_line":"  been run."},{"line_number":679,"context_line":""},{"line_number":680,"context_line":"  Also ``username-as-common-name`` will use the client provided username"}],"source_content_type":"text/x-rst","patch_set":1,"id":"4ad0be1f_637c94bf","line":677,"in_reply_to":"4c901590_e34fb4e7","updated":"2025-01-20 15:24:43.000000000","message":"Done","commit_id":"c940fae90cf283fa7222d7c0f85174c11f0e6d52"},{"author":{"_account_id":1000001,"name":"flichtenheld","display_name":"Frank Lichtenheld","email":"frank@lichtenheld.com","username":"flichtenheld","status":"OpenVPN Inc."},"change_message_id":"7b05a8c9197fd25ffe4c9bfa92f16d96896fa301","unresolved":true,"context_lines":[{"line_number":677,"context_line":"  ``--client-config-dir`` and the ``--auth-user-pass-verify`` script have"},{"line_number":678,"context_line":"  been run."},{"line_number":679,"context_line":""},{"line_number":680,"context_line":"  Also ``username-as-common-name`` will use the client provided username"},{"line_number":681,"context_line":"  as common-name. It is recommended to avoid the use of the"},{"line_number":682,"context_line":"  ``--override-username`` option if  the option ``username-as-common-name``"},{"line_number":683,"context_line":"  is being used."}],"source_content_type":"text/x-rst","patch_set":1,"id":"a2d45f6f_d858b939","line":680,"updated":"2025-01-20 12:36:50.000000000","message":"--username-as-common-name for consistency","commit_id":"c940fae90cf283fa7222d7c0f85174c11f0e6d52"},{"author":{"_account_id":1000003,"name":"plaisthos","display_name":"Arne Schwabe","email":"arne-openvpn@rfc2549.org","username":"plaisthos"},"change_message_id":"148d42b1459eb90c2b746bc99c4414ec5a2e92c5","unresolved":false,"context_lines":[{"line_number":677,"context_line":"  ``--client-config-dir`` and the ``--auth-user-pass-verify`` script have"},{"line_number":678,"context_line":"  been run."},{"line_number":679,"context_line":""},{"line_number":680,"context_line":"  Also ``username-as-common-name`` will use the client provided username"},{"line_number":681,"context_line":"  as common-name. It is recommended to avoid the use of the"},{"line_number":682,"context_line":"  ``--override-username`` option if  the option ``username-as-common-name``"},{"line_number":683,"context_line":"  is being used."}],"source_content_type":"text/x-rst","patch_set":1,"id":"61c5f531_68d4138a","line":680,"in_reply_to":"a2d45f6f_d858b939","updated":"2025-01-20 15:29:00.000000000","message":"Acknowledged","commit_id":"c940fae90cf283fa7222d7c0f85174c11f0e6d52"},{"author":{"_account_id":1000001,"name":"flichtenheld","display_name":"Frank Lichtenheld","email":"frank@lichtenheld.com","username":"flichtenheld","status":"OpenVPN Inc."},"change_message_id":"9c2bbab790dc49c74e6869919a937c4c17d081d8","unresolved":false,"context_lines":[{"line_number":677,"context_line":"  ``--client-config-dir`` and the ``--auth-user-pass-verify`` script have"},{"line_number":678,"context_line":"  been run."},{"line_number":679,"context_line":""},{"line_number":680,"context_line":"  Also ``username-as-common-name`` will use the client provided username"},{"line_number":681,"context_line":"  as common-name. It is recommended to avoid the use of the"},{"line_number":682,"context_line":"  ``--override-username`` option if  the option ``username-as-common-name``"},{"line_number":683,"context_line":"  is being used."}],"source_content_type":"text/x-rst","patch_set":1,"id":"c9dae5be_bda55455","line":680,"in_reply_to":"a2d45f6f_d858b939","updated":"2025-01-20 15:24:43.000000000","message":"Done","commit_id":"c940fae90cf283fa7222d7c0f85174c11f0e6d52"},{"author":{"_account_id":1000001,"name":"flichtenheld","display_name":"Frank Lichtenheld","email":"frank@lichtenheld.com","username":"flichtenheld","status":"OpenVPN Inc."},"change_message_id":"7b05a8c9197fd25ffe4c9bfa92f16d96896fa301","unresolved":true,"context_lines":[{"line_number":679,"context_line":""},{"line_number":680,"context_line":"  Also ``username-as-common-name`` will use the client provided username"},{"line_number":681,"context_line":"  as common-name. It is recommended to avoid the use of the"},{"line_number":682,"context_line":"  ``--override-username`` option if  the option ``username-as-common-name``"},{"line_number":683,"context_line":"  is being used."},{"line_number":684,"context_line":""},{"line_number":685,"context_line":"  The changed username will be picked up by the status output and also by"}],"source_content_type":"text/x-rst","patch_set":1,"id":"9a5ed281_33dadded","line":682,"updated":"2025-01-20 12:36:50.000000000","message":"superfluous space","commit_id":"c940fae90cf283fa7222d7c0f85174c11f0e6d52"},{"author":{"_account_id":1000003,"name":"plaisthos","display_name":"Arne Schwabe","email":"arne-openvpn@rfc2549.org","username":"plaisthos"},"change_message_id":"148d42b1459eb90c2b746bc99c4414ec5a2e92c5","unresolved":false,"context_lines":[{"line_number":679,"context_line":""},{"line_number":680,"context_line":"  Also ``username-as-common-name`` will use the client provided username"},{"line_number":681,"context_line":"  as common-name. It is recommended to avoid the use of the"},{"line_number":682,"context_line":"  ``--override-username`` option if  the option ``username-as-common-name``"},{"line_number":683,"context_line":"  is being used."},{"line_number":684,"context_line":""},{"line_number":685,"context_line":"  The changed username will be picked up by the status output and also by"}],"source_content_type":"text/x-rst","patch_set":1,"id":"eccbce07_e521f35e","line":682,"in_reply_to":"9a5ed281_33dadded","updated":"2025-01-20 15:29:00.000000000","message":"Acknowledged","commit_id":"c940fae90cf283fa7222d7c0f85174c11f0e6d52"},{"author":{"_account_id":1000001,"name":"flichtenheld","display_name":"Frank Lichtenheld","email":"frank@lichtenheld.com","username":"flichtenheld","status":"OpenVPN Inc."},"change_message_id":"9c2bbab790dc49c74e6869919a937c4c17d081d8","unresolved":false,"context_lines":[{"line_number":679,"context_line":""},{"line_number":680,"context_line":"  Also ``username-as-common-name`` will use the client provided username"},{"line_number":681,"context_line":"  as common-name. It is recommended to avoid the use of the"},{"line_number":682,"context_line":"  ``--override-username`` option if  the option ``username-as-common-name``"},{"line_number":683,"context_line":"  is being used."},{"line_number":684,"context_line":""},{"line_number":685,"context_line":"  The changed username will be picked up by the status output and also by"}],"source_content_type":"text/x-rst","patch_set":1,"id":"0affce0e_affb761d","line":682,"in_reply_to":"9a5ed281_33dadded","updated":"2025-01-20 15:24:43.000000000","message":"Done","commit_id":"c940fae90cf283fa7222d7c0f85174c11f0e6d52"},{"author":{"_account_id":1000001,"name":"flichtenheld","display_name":"Frank Lichtenheld","email":"frank@lichtenheld.com","username":"flichtenheld","status":"OpenVPN Inc."},"change_message_id":"7b05a8c9197fd25ffe4c9bfa92f16d96896fa301","unresolved":true,"context_lines":[{"line_number":683,"context_line":"  is being used."},{"line_number":684,"context_line":""},{"line_number":685,"context_line":"  The changed username will be picked up by the status output and also by"},{"line_number":686,"context_line":"  the the ``--auth-gen-token`` option. It will also be pushed to the client"},{"line_number":687,"context_line":"  using ``--auth-token-user``."},{"line_number":688,"context_line":""},{"line_number":689,"context_line":"  Special care has to be taken that the initial username of the client is"}],"source_content_type":"text/x-rst","patch_set":1,"id":"38f9af62_3921cd00","line":686,"updated":"2025-01-20 12:36:50.000000000","message":"duplicated \"the\"","commit_id":"c940fae90cf283fa7222d7c0f85174c11f0e6d52"},{"author":{"_account_id":1000003,"name":"plaisthos","display_name":"Arne Schwabe","email":"arne-openvpn@rfc2549.org","username":"plaisthos"},"change_message_id":"148d42b1459eb90c2b746bc99c4414ec5a2e92c5","unresolved":false,"context_lines":[{"line_number":683,"context_line":"  is being used."},{"line_number":684,"context_line":""},{"line_number":685,"context_line":"  The changed username will be picked up by the status output and also by"},{"line_number":686,"context_line":"  the the ``--auth-gen-token`` option. It will also be pushed to the client"},{"line_number":687,"context_line":"  using ``--auth-token-user``."},{"line_number":688,"context_line":""},{"line_number":689,"context_line":"  Special care has to be taken that the initial username of the client is"}],"source_content_type":"text/x-rst","patch_set":1,"id":"4fcc7d05_ea20ea4c","line":686,"in_reply_to":"38f9af62_3921cd00","updated":"2025-01-20 15:29:00.000000000","message":"Acknowledged","commit_id":"c940fae90cf283fa7222d7c0f85174c11f0e6d52"},{"author":{"_account_id":1000001,"name":"flichtenheld","display_name":"Frank Lichtenheld","email":"frank@lichtenheld.com","username":"flichtenheld","status":"OpenVPN Inc."},"change_message_id":"9c2bbab790dc49c74e6869919a937c4c17d081d8","unresolved":false,"context_lines":[{"line_number":683,"context_line":"  is being used."},{"line_number":684,"context_line":""},{"line_number":685,"context_line":"  The changed username will be picked up by the status output and also by"},{"line_number":686,"context_line":"  the the ``--auth-gen-token`` option. It will also be pushed to the client"},{"line_number":687,"context_line":"  using ``--auth-token-user``."},{"line_number":688,"context_line":""},{"line_number":689,"context_line":"  Special care has to be taken that the initial username of the client is"}],"source_content_type":"text/x-rst","patch_set":1,"id":"ccb79877_4bb98f83","line":686,"in_reply_to":"38f9af62_3921cd00","updated":"2025-01-20 15:24:43.000000000","message":"Done","commit_id":"c940fae90cf283fa7222d7c0f85174c11f0e6d52"},{"author":{"_account_id":1000001,"name":"flichtenheld","display_name":"Frank Lichtenheld","email":"frank@lichtenheld.com","username":"flichtenheld","status":"OpenVPN Inc."},"change_message_id":"7b05a8c9197fd25ffe4c9bfa92f16d96896fa301","unresolved":true,"context_lines":[{"line_number":684,"context_line":""},{"line_number":685,"context_line":"  The changed username will be picked up by the status output and also by"},{"line_number":686,"context_line":"  the the ``--auth-gen-token`` option. It will also be pushed to the client"},{"line_number":687,"context_line":"  using ``--auth-token-user``."},{"line_number":688,"context_line":""},{"line_number":689,"context_line":"  Special care has to be taken that the initial username of the client is"},{"line_number":690,"context_line":"  correctly handled with these options to avoid authentication/authorisation"}],"source_content_type":"text/x-rst","patch_set":1,"id":"3b589338_48d21540","line":687,"updated":"2025-01-20 12:36:50.000000000","message":"We should add a cross-reference to documentation for --auth-token-user","commit_id":"c940fae90cf283fa7222d7c0f85174c11f0e6d52"},{"author":{"_account_id":1000003,"name":"plaisthos","display_name":"Arne Schwabe","email":"arne-openvpn@rfc2549.org","username":"plaisthos"},"change_message_id":"148d42b1459eb90c2b746bc99c4414ec5a2e92c5","unresolved":false,"context_lines":[{"line_number":684,"context_line":""},{"line_number":685,"context_line":"  The changed username will be picked up by the status output and also by"},{"line_number":686,"context_line":"  the the ``--auth-gen-token`` option. It will also be pushed to the client"},{"line_number":687,"context_line":"  using ``--auth-token-user``."},{"line_number":688,"context_line":""},{"line_number":689,"context_line":"  Special care has to be taken that the initial username of the client is"},{"line_number":690,"context_line":"  correctly handled with these options to avoid authentication/authorisation"}],"source_content_type":"text/x-rst","patch_set":1,"id":"f664c9a3_27d05978","line":687,"in_reply_to":"3b589338_48d21540","updated":"2025-01-20 15:29:00.000000000","message":"Acknowledged","commit_id":"c940fae90cf283fa7222d7c0f85174c11f0e6d52"},{"author":{"_account_id":1000001,"name":"flichtenheld","display_name":"Frank Lichtenheld","email":"frank@lichtenheld.com","username":"flichtenheld","status":"OpenVPN Inc."},"change_message_id":"9c2bbab790dc49c74e6869919a937c4c17d081d8","unresolved":false,"context_lines":[{"line_number":684,"context_line":""},{"line_number":685,"context_line":"  The changed username will be picked up by the status output and also by"},{"line_number":686,"context_line":"  the the ``--auth-gen-token`` option. It will also be pushed to the client"},{"line_number":687,"context_line":"  using ``--auth-token-user``."},{"line_number":688,"context_line":""},{"line_number":689,"context_line":"  Special care has to be taken that the initial username of the client is"},{"line_number":690,"context_line":"  correctly handled with these options to avoid authentication/authorisation"}],"source_content_type":"text/x-rst","patch_set":1,"id":"67d2ea38_226d164b","line":687,"in_reply_to":"3b589338_48d21540","updated":"2025-01-20 15:24:43.000000000","message":"Done","commit_id":"c940fae90cf283fa7222d7c0f85174c11f0e6d52"},{"author":{"_account_id":1000001,"name":"flichtenheld","display_name":"Frank Lichtenheld","email":"frank@lichtenheld.com","username":"flichtenheld","status":"OpenVPN Inc."},"change_message_id":"9c2bbab790dc49c74e6869919a937c4c17d081d8","unresolved":true,"context_lines":[{"line_number":424,"context_line":""},{"line_number":425,"context_line":"  Also ``username-as-common-name`` will use the client provided username"},{"line_number":426,"context_line":"  as common-name. It is recommended to avoid the use of the"},{"line_number":427,"context_line":"  ``--override-username`` option if  the option ``--username-as-common-name``"},{"line_number":428,"context_line":"  is being used."},{"line_number":429,"context_line":""},{"line_number":430,"context_line":"  The changed username will be picked up by the status output and also by"}],"source_content_type":"text/x-rst","patch_set":2,"id":"d9a3829a_99fd02a5","line":427,"updated":"2025-01-20 15:24:43.000000000","message":"Still superfluous space after \"if\"","commit_id":"01ee20f0b75ae8a33356da0502872a0fd0b11d7e"},{"author":{"_account_id":1000003,"name":"plaisthos","display_name":"Arne Schwabe","email":"arne-openvpn@rfc2549.org","username":"plaisthos"},"change_message_id":"231a8c129edf2f3b6fb2c8fbc4188929fa02a7c0","unresolved":false,"context_lines":[{"line_number":424,"context_line":""},{"line_number":425,"context_line":"  Also ``username-as-common-name`` will use the client provided username"},{"line_number":426,"context_line":"  as common-name. It is recommended to avoid the use of the"},{"line_number":427,"context_line":"  ``--override-username`` option if  the option ``--username-as-common-name``"},{"line_number":428,"context_line":"  is being used."},{"line_number":429,"context_line":""},{"line_number":430,"context_line":"  The changed username will be picked up by the status output and also by"}],"source_content_type":"text/x-rst","patch_set":2,"id":"6069d166_b7d1de60","line":427,"in_reply_to":"d9a3829a_99fd02a5","updated":"2025-01-21 09:49:19.000000000","message":"Done","commit_id":"01ee20f0b75ae8a33356da0502872a0fd0b11d7e"},{"author":{"_account_id":1000006,"name":"d12fk","display_name":"Heiko Hund","email":"heiko@openvpn.net","username":"d12fk"},"change_message_id":"a3971fcc7a765da85f2b0eca3ac8fce721d9d27f","unresolved":true,"context_lines":[{"line_number":91,"context_line":""},{"line_number":92,"context_line":"  **Note:** the username for ``--auth-gen-token`` can be overridden by"},{"line_number":93,"context_line":"  ``--override-user``. In this case the client will be pushed also the"},{"line_number":94,"context_line":"  ``--auth-token-user`` option and and an auth token that is valid for"},{"line_number":95,"context_line":"  that username instead of the original username that the client"},{"line_number":96,"context_line":"  authenticated with."},{"line_number":97,"context_line":""}],"source_content_type":"text/x-rst","patch_set":7,"id":"9a7933da_4ff68b99","line":94,"updated":"2025-02-25 16:33:24.000000000","message":"double \"and\"","commit_id":"73af531e97e813c9a273cd916a2039ba3274b7f2"},{"author":{"_account_id":1000003,"name":"plaisthos","display_name":"Arne Schwabe","email":"arne-openvpn@rfc2549.org","username":"plaisthos"},"change_message_id":"d35a88164460d588f77f9e0e1d8cf0bab95f5b5b","unresolved":false,"context_lines":[{"line_number":91,"context_line":""},{"line_number":92,"context_line":"  **Note:** the username for ``--auth-gen-token`` can be overridden by"},{"line_number":93,"context_line":"  ``--override-user``. In this case the client will be pushed also the"},{"line_number":94,"context_line":"  ``--auth-token-user`` option and and an auth token that is valid for"},{"line_number":95,"context_line":"  that username instead of the original username that the client"},{"line_number":96,"context_line":"  authenticated with."},{"line_number":97,"context_line":""}],"source_content_type":"text/x-rst","patch_set":7,"id":"a01ba57e_d3d6b064","line":94,"in_reply_to":"9a7933da_4ff68b99","updated":"2025-02-26 14:07:33.000000000","message":"Done","commit_id":"73af531e97e813c9a273cd916a2039ba3274b7f2"},{"author":{"_account_id":1000006,"name":"d12fk","display_name":"Heiko Hund","email":"heiko@openvpn.net","username":"d12fk"},"change_message_id":"a3971fcc7a765da85f2b0eca3ac8fce721d9d27f","unresolved":true,"context_lines":[{"line_number":434,"context_line":"  the ``--auth-gen-token`` option. It will also be pushed to the client"},{"line_number":435,"context_line":"  using ``--auth-token-user``."},{"line_number":436,"context_line":""},{"line_number":437,"context_line":"  Special care has to be taken both the initial username of the client and the"},{"line_number":438,"context_line":"  overridden username are  correctly handled when using ``--override-username``"},{"line_number":439,"context_line":"  and the related options to avoid authentication/authorisation"},{"line_number":440,"context_line":"  bypasses."}],"source_content_type":"text/x-rst","patch_set":7,"id":"b02a4f12_acc29d26","line":437,"updated":"2025-02-25 16:33:24.000000000","message":"taken \u003cthat\u003e both","commit_id":"73af531e97e813c9a273cd916a2039ba3274b7f2"},{"author":{"_account_id":1000003,"name":"plaisthos","display_name":"Arne Schwabe","email":"arne-openvpn@rfc2549.org","username":"plaisthos"},"change_message_id":"d35a88164460d588f77f9e0e1d8cf0bab95f5b5b","unresolved":false,"context_lines":[{"line_number":434,"context_line":"  the ``--auth-gen-token`` option. It will also be pushed to the client"},{"line_number":435,"context_line":"  using ``--auth-token-user``."},{"line_number":436,"context_line":""},{"line_number":437,"context_line":"  Special care has to be taken both the initial username of the client and the"},{"line_number":438,"context_line":"  overridden username are  correctly handled when using ``--override-username``"},{"line_number":439,"context_line":"  and the related options to avoid authentication/authorisation"},{"line_number":440,"context_line":"  bypasses."}],"source_content_type":"text/x-rst","patch_set":7,"id":"d7567ae0_15cd7486","line":437,"in_reply_to":"b02a4f12_acc29d26","updated":"2025-02-26 14:07:33.000000000","message":"Done","commit_id":"73af531e97e813c9a273cd916a2039ba3274b7f2"},{"author":{"_account_id":1000006,"name":"d12fk","display_name":"Heiko Hund","email":"heiko@openvpn.net","username":"d12fk"},"change_message_id":"a3971fcc7a765da85f2b0eca3ac8fce721d9d27f","unresolved":true,"context_lines":[{"line_number":435,"context_line":"  using ``--auth-token-user``."},{"line_number":436,"context_line":""},{"line_number":437,"context_line":"  Special care has to be taken both the initial username of the client and the"},{"line_number":438,"context_line":"  overridden username are  correctly handled when using ``--override-username``"},{"line_number":439,"context_line":"  and the related options to avoid authentication/authorisation"},{"line_number":440,"context_line":"  bypasses."},{"line_number":441,"context_line":""}],"source_content_type":"text/x-rst","patch_set":7,"id":"65376b74_f7e706db","line":438,"updated":"2025-02-25 16:33:24.000000000","message":"handled correctly","commit_id":"73af531e97e813c9a273cd916a2039ba3274b7f2"},{"author":{"_account_id":1000003,"name":"plaisthos","display_name":"Arne Schwabe","email":"arne-openvpn@rfc2549.org","username":"plaisthos"},"change_message_id":"d35a88164460d588f77f9e0e1d8cf0bab95f5b5b","unresolved":false,"context_lines":[{"line_number":435,"context_line":"  using ``--auth-token-user``."},{"line_number":436,"context_line":""},{"line_number":437,"context_line":"  Special care has to be taken both the initial username of the client and the"},{"line_number":438,"context_line":"  overridden username are  correctly handled when using ``--override-username``"},{"line_number":439,"context_line":"  and the related options to avoid authentication/authorisation"},{"line_number":440,"context_line":"  bypasses."},{"line_number":441,"context_line":""}],"source_content_type":"text/x-rst","patch_set":7,"id":"a01e2405_22e07c31","line":438,"in_reply_to":"65376b74_f7e706db","updated":"2025-02-26 14:07:33.000000000","message":"Done","commit_id":"73af531e97e813c9a273cd916a2039ba3274b7f2"},{"author":{"_account_id":1000002,"name":"cron2","display_name":"Gert Doering","email":"gert@greenie.muc.de","username":"cron2"},"change_message_id":"8d4c9ca0b24f473f427c0da64873e37be8913695","unresolved":true,"context_lines":[{"line_number":418,"context_line":""},{"line_number":419,"context_line":"  This option requires that ``--disable-occ`` NOT be used."},{"line_number":420,"context_line":""},{"line_number":421,"context_line":"--override-username"},{"line_number":422,"context_line":"  Sets the username of a connection to the specified username.  This username"},{"line_number":423,"context_line":"  will also be used by ``--auth-gen-token``. However, the overridden"},{"line_number":424,"context_line":"  username comes only into effect *after* the ``--client-config-dir`` has been"}],"source_content_type":"text/x-rst","patch_set":8,"id":"69b22c75_363de9cc","line":421,"updated":"2025-03-08 11:32:46.000000000","message":"this is missing the \"username\" argument","commit_id":"56324fb75fdee740fce868d0c7f3a4792159ff8f"},{"author":{"_account_id":1000003,"name":"plaisthos","display_name":"Arne Schwabe","email":"arne-openvpn@rfc2549.org","username":"plaisthos"},"change_message_id":"337b207d40b4c7f065e9eba417b186131e6f0002","unresolved":false,"context_lines":[{"line_number":418,"context_line":""},{"line_number":419,"context_line":"  This option requires that ``--disable-occ`` NOT be used."},{"line_number":420,"context_line":""},{"line_number":421,"context_line":"--override-username"},{"line_number":422,"context_line":"  Sets the username of a connection to the specified username.  This username"},{"line_number":423,"context_line":"  will also be used by ``--auth-gen-token``. However, the overridden"},{"line_number":424,"context_line":"  username comes only into effect *after* the ``--client-config-dir`` has been"}],"source_content_type":"text/x-rst","patch_set":8,"id":"b2dd7ffe_4a981081","line":421,"in_reply_to":"69b22c75_363de9cc","updated":"2025-03-11 11:08:37.000000000","message":"Done","commit_id":"56324fb75fdee740fce868d0c7f3a4792159ff8f"},{"author":{"_account_id":1000002,"name":"cron2","display_name":"Gert Doering","email":"gert@greenie.muc.de","username":"cron2"},"change_message_id":"8d4c9ca0b24f473f427c0da64873e37be8913695","unresolved":true,"context_lines":[{"line_number":425,"context_line":"  read and the ``--auth-user-pass-verify`` and ``--client-connect`` scripts"},{"line_number":426,"context_line":"  have been run."},{"line_number":427,"context_line":""},{"line_number":428,"context_line":"  Also ``username-as-common-name`` will use the client provided username"},{"line_number":429,"context_line":"  as common-name. It is recommended to avoid the use of the"},{"line_number":430,"context_line":"  ``--override-username`` option if the option ``--username-as-common-name``"},{"line_number":431,"context_line":"  is being used."}],"source_content_type":"text/x-rst","patch_set":8,"id":"e1365250_cc8b4a6a","line":428,"updated":"2025-03-08 11:32:46.000000000","message":"`--` missing before `username-as-common-name`, while all other opions referenced have it","commit_id":"56324fb75fdee740fce868d0c7f3a4792159ff8f"},{"author":{"_account_id":1000003,"name":"plaisthos","display_name":"Arne Schwabe","email":"arne-openvpn@rfc2549.org","username":"plaisthos"},"change_message_id":"337b207d40b4c7f065e9eba417b186131e6f0002","unresolved":false,"context_lines":[{"line_number":425,"context_line":"  read and the ``--auth-user-pass-verify`` and ``--client-connect`` scripts"},{"line_number":426,"context_line":"  have been run."},{"line_number":427,"context_line":""},{"line_number":428,"context_line":"  Also ``username-as-common-name`` will use the client provided username"},{"line_number":429,"context_line":"  as common-name. It is recommended to avoid the use of the"},{"line_number":430,"context_line":"  ``--override-username`` option if the option ``--username-as-common-name``"},{"line_number":431,"context_line":"  is being used."}],"source_content_type":"text/x-rst","patch_set":8,"id":"364aca32_63ffd58b","line":428,"in_reply_to":"e1365250_cc8b4a6a","updated":"2025-03-11 11:08:37.000000000","message":"Done","commit_id":"56324fb75fdee740fce868d0c7f3a4792159ff8f"}],"src/openvpn/auth_token.c":[{"author":{"_account_id":1000008,"name":"stipa","display_name":"Lev Stipakov","email":"lstipakov@gmail.com","username":"stipa"},"change_message_id":"2546d7b7036d372cdbf5a54486cee57f8bca8b67","unresolved":true,"context_lines":[{"line_number":330,"context_line":"    timestamp_initial \u003d ntohll(timestamp_initial);"},{"line_number":331,"context_line":""},{"line_number":332,"context_line":"    hmac_ctx_t *ctx \u003d multi-\u003eopt.auth_token_key.hmac;"},{"line_number":333,"context_line":""},{"line_number":334,"context_line":"    if (check_hmac_token(ctx, b64decoded, up-\u003eusername))"},{"line_number":335,"context_line":"    {"},{"line_number":336,"context_line":"        ret |\u003d AUTH_TOKEN_HMAC_OK;"}],"source_content_type":"text/x-csrc","patch_set":5,"id":"c4886750_bee36761","line":333,"updated":"2025-02-13 12:59:30.000000000","message":"spurious newline","commit_id":"d4a75e401e15bcfe26bd5215cd0aefb08ab12b2e"},{"author":{"_account_id":1000003,"name":"plaisthos","display_name":"Arne Schwabe","email":"arne-openvpn@rfc2549.org","username":"plaisthos"},"change_message_id":"2fa758334f58014ef493c3c2f441250734209ad3","unresolved":false,"context_lines":[{"line_number":330,"context_line":"    timestamp_initial \u003d ntohll(timestamp_initial);"},{"line_number":331,"context_line":""},{"line_number":332,"context_line":"    hmac_ctx_t *ctx \u003d multi-\u003eopt.auth_token_key.hmac;"},{"line_number":333,"context_line":""},{"line_number":334,"context_line":"    if (check_hmac_token(ctx, b64decoded, up-\u003eusername))"},{"line_number":335,"context_line":"    {"},{"line_number":336,"context_line":"        ret |\u003d AUTH_TOKEN_HMAC_OK;"}],"source_content_type":"text/x-csrc","patch_set":5,"id":"00564507_9759870a","line":333,"in_reply_to":"c4886750_bee36761","updated":"2025-02-17 12:04:13.000000000","message":"Done","commit_id":"d4a75e401e15bcfe26bd5215cd0aefb08ab12b2e"}],"src/openvpn/multi.c":[{"author":{"_account_id":1000001,"name":"flichtenheld","display_name":"Frank Lichtenheld","email":"frank@lichtenheld.com","username":"flichtenheld","status":"OpenVPN Inc."},"change_message_id":"7b05a8c9197fd25ffe4c9bfa92f16d96896fa301","unresolved":true,"context_lines":[{"line_number":2667,"context_line":""},{"line_number":2668,"context_line":"/**"},{"line_number":2669,"context_line":" *"},{"line_number":2670,"context_line":" * @param mi"},{"line_number":2671,"context_line":" */"},{"line_number":2672,"context_line":"static void"},{"line_number":2673,"context_line":"override_locked_username(struct multi_instance *mi)"}],"source_content_type":"text/x-csrc","patch_set":1,"id":"4e08bcdb_c5d535f5","line":2670,"updated":"2025-01-20 12:36:50.000000000","message":"Either document it or remove stub-comment.","commit_id":"c940fae90cf283fa7222d7c0f85174c11f0e6d52"},{"author":{"_account_id":1000003,"name":"plaisthos","display_name":"Arne Schwabe","email":"arne-openvpn@rfc2549.org","username":"plaisthos"},"change_message_id":"148d42b1459eb90c2b746bc99c4414ec5a2e92c5","unresolved":false,"context_lines":[{"line_number":2667,"context_line":""},{"line_number":2668,"context_line":"/**"},{"line_number":2669,"context_line":" *"},{"line_number":2670,"context_line":" * @param mi"},{"line_number":2671,"context_line":" */"},{"line_number":2672,"context_line":"static void"},{"line_number":2673,"context_line":"override_locked_username(struct multi_instance *mi)"}],"source_content_type":"text/x-csrc","patch_set":1,"id":"cb7d16f1_b397a081","line":2670,"in_reply_to":"4e08bcdb_c5d535f5","updated":"2025-01-20 15:29:00.000000000","message":"Acknowledged","commit_id":"c940fae90cf283fa7222d7c0f85174c11f0e6d52"},{"author":{"_account_id":1000001,"name":"flichtenheld","display_name":"Frank Lichtenheld","email":"frank@lichtenheld.com","username":"flichtenheld","status":"OpenVPN Inc."},"change_message_id":"9c2bbab790dc49c74e6869919a937c4c17d081d8","unresolved":false,"context_lines":[{"line_number":2667,"context_line":""},{"line_number":2668,"context_line":"/**"},{"line_number":2669,"context_line":" *"},{"line_number":2670,"context_line":" * @param mi"},{"line_number":2671,"context_line":" */"},{"line_number":2672,"context_line":"static void"},{"line_number":2673,"context_line":"override_locked_username(struct multi_instance *mi)"}],"source_content_type":"text/x-csrc","patch_set":1,"id":"cd8915c7_899bfa2a","line":2670,"in_reply_to":"4e08bcdb_c5d535f5","updated":"2025-01-20 15:24:43.000000000","message":"Done","commit_id":"c940fae90cf283fa7222d7c0f85174c11f0e6d52"},{"author":{"_account_id":1000006,"name":"d12fk","display_name":"Heiko Hund","email":"heiko@openvpn.net","username":"d12fk"},"change_message_id":"a3971fcc7a765da85f2b0eca3ac8fce721d9d27f","unresolved":true,"context_lines":[{"line_number":2689,"context_line":"    struct tls_session *session \u003d \u0026multi-\u003esession[TM_ACTIVE];"},{"line_number":2690,"context_line":""},{"line_number":2691,"context_line":"    if (!multi-\u003elocked_original_username"},{"line_number":2692,"context_line":"        \u0026\u0026 strcmp(multi-\u003elocked_username, options-\u003eoverride_username) !\u003d 0)"},{"line_number":2693,"context_line":"    {"},{"line_number":2694,"context_line":"        multi-\u003elocked_original_username \u003d multi-\u003elocked_username;"},{"line_number":2695,"context_line":"        multi-\u003elocked_username \u003d strdup(options-\u003eoverride_username);"}],"source_content_type":"text/x-csrc","patch_set":7,"id":"c4a8aefa_ab36060b","line":2692,"updated":"2025-02-25 16:33:24.000000000","message":"Consider using streq() instead of strcmp() in the patchset for better readability.","commit_id":"73af531e97e813c9a273cd916a2039ba3274b7f2"},{"author":{"_account_id":1000003,"name":"plaisthos","display_name":"Arne Schwabe","email":"arne-openvpn@rfc2549.org","username":"plaisthos"},"change_message_id":"e62ff3106e098394540f4bd03c7b7c374d3ca69f","unresolved":false,"context_lines":[{"line_number":2689,"context_line":"    struct tls_session *session \u003d \u0026multi-\u003esession[TM_ACTIVE];"},{"line_number":2690,"context_line":""},{"line_number":2691,"context_line":"    if (!multi-\u003elocked_original_username"},{"line_number":2692,"context_line":"        \u0026\u0026 strcmp(multi-\u003elocked_username, options-\u003eoverride_username) !\u003d 0)"},{"line_number":2693,"context_line":"    {"},{"line_number":2694,"context_line":"        multi-\u003elocked_original_username \u003d multi-\u003elocked_username;"},{"line_number":2695,"context_line":"        multi-\u003elocked_username \u003d strdup(options-\u003eoverride_username);"}],"source_content_type":"text/x-csrc","patch_set":7,"id":"bcb4455b_17349c60","line":2692,"in_reply_to":"c4a8aefa_ab36060b","updated":"2025-02-26 14:07:51.000000000","message":"we decided that both are oaky","commit_id":"73af531e97e813c9a273cd916a2039ba3274b7f2"},{"author":{"_account_id":1000002,"name":"cron2","display_name":"Gert Doering","email":"gert@greenie.muc.de","username":"cron2"},"change_message_id":"8d4c9ca0b24f473f427c0da64873e37be8913695","unresolved":true,"context_lines":[{"line_number":2689,"context_line":"    struct tls_session *session \u003d \u0026multi-\u003esession[TM_ACTIVE];"},{"line_number":2690,"context_line":""},{"line_number":2691,"context_line":"    if (!multi-\u003elocked_original_username"},{"line_number":2692,"context_line":"        \u0026\u0026 strcmp(multi-\u003elocked_username, options-\u003eoverride_username) !\u003d 0)"},{"line_number":2693,"context_line":"    {"},{"line_number":2694,"context_line":"        multi-\u003elocked_original_username \u003d multi-\u003elocked_username;"},{"line_number":2695,"context_line":"        multi-\u003elocked_username \u003d strdup(options-\u003eoverride_username);"}],"source_content_type":"text/x-csrc","patch_set":8,"id":"d4cf5d2c_a9aa9911","line":2692,"updated":"2025-03-08 11:32:46.000000000","message":"I managed to SIGSEGV this on client connect...\n\n```\n#0  0x00007ffff7913ceb in ?? () from /lib64/libc.so.6\n#1  0x0000555555594699 in override_locked_username (mi\u003dmi@entry\u003d0x555555709dc0)\n    at multi.c:2698\n#2  0x00005555555983d2 in multi_connection_established (m\u003d0x7fffffffc490, \n...\n(gdb) print multi-\u003elocked_original_username\n$1 \u003d 0x0\n(gdb) print multi-\u003elocked_username\n$2 \u003d 0x0\n(gdb) print options-\u003eoverride_username\n$3 \u003d 0x55555570f658 \"MyUsernameFromCCD\"\n```\n\nthe config is set up for testing - it has `auth-gen-token` in the main config, and `override-username mumble` in the client\u0027s CCD/.  It does not have `auth-user-pass-verify` or `auth-user-pass-*` in the config.\n\n(The original config had `auth-user-pass-optional` + an `auth-user-pass-verify script`, but for the test I did not want the script, and openvpn disallowed having \"just auth-user-pass[-optional] without a verify method\"... so I removed the other one too)","commit_id":"56324fb75fdee740fce868d0c7f3a4792159ff8f"},{"author":{"_account_id":1000003,"name":"plaisthos","display_name":"Arne Schwabe","email":"arne-openvpn@rfc2549.org","username":"plaisthos"},"change_message_id":"337b207d40b4c7f065e9eba417b186131e6f0002","unresolved":false,"context_lines":[{"line_number":2689,"context_line":"    struct tls_session *session \u003d \u0026multi-\u003esession[TM_ACTIVE];"},{"line_number":2690,"context_line":""},{"line_number":2691,"context_line":"    if (!multi-\u003elocked_original_username"},{"line_number":2692,"context_line":"        \u0026\u0026 strcmp(multi-\u003elocked_username, options-\u003eoverride_username) !\u003d 0)"},{"line_number":2693,"context_line":"    {"},{"line_number":2694,"context_line":"        multi-\u003elocked_original_username \u003d multi-\u003elocked_username;"},{"line_number":2695,"context_line":"        multi-\u003elocked_username \u003d strdup(options-\u003eoverride_username);"}],"source_content_type":"text/x-csrc","patch_set":8,"id":"716437e6_f582f74f","line":2692,"in_reply_to":"d4cf5d2c_a9aa9911","updated":"2025-03-11 11:08:37.000000000","message":"Done","commit_id":"56324fb75fdee740fce868d0c7f3a4792159ff8f"}],"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":"7b05a8c9197fd25ffe4c9bfa92f16d96896fa301","unresolved":true,"context_lines":[{"line_number":7847,"context_line":"        VERIFY_PERMISSION(OPT_P_INSTANCE);"},{"line_number":7848,"context_line":"        options-\u003edisable \u003d true;"},{"line_number":7849,"context_line":"    }"},{"line_number":7850,"context_line":"    else if (streq(p[0], \"override-username\") \u0026\u0026 p[1] \u0026\u0026 !p[2])"},{"line_number":7851,"context_line":"    {"},{"line_number":7852,"context_line":"        VERIFY_PERMISSION(OPT_P_INSTANCE);"},{"line_number":7853,"context_line":"        if (strlen(p[1]) \u003e TLS_USERNAME_LEN)"}],"source_content_type":"text/x-csrc","patch_set":1,"id":"b78b8ba7_6bcff71d","line":7850,"updated":"2025-01-20 12:36:50.000000000","message":"New option should be added to usage information.","commit_id":"c940fae90cf283fa7222d7c0f85174c11f0e6d52"},{"author":{"_account_id":1000001,"name":"flichtenheld","display_name":"Frank Lichtenheld","email":"frank@lichtenheld.com","username":"flichtenheld","status":"OpenVPN Inc."},"change_message_id":"9c2bbab790dc49c74e6869919a937c4c17d081d8","unresolved":false,"context_lines":[{"line_number":7847,"context_line":"        VERIFY_PERMISSION(OPT_P_INSTANCE);"},{"line_number":7848,"context_line":"        options-\u003edisable \u003d true;"},{"line_number":7849,"context_line":"    }"},{"line_number":7850,"context_line":"    else if (streq(p[0], \"override-username\") \u0026\u0026 p[1] \u0026\u0026 !p[2])"},{"line_number":7851,"context_line":"    {"},{"line_number":7852,"context_line":"        VERIFY_PERMISSION(OPT_P_INSTANCE);"},{"line_number":7853,"context_line":"        if (strlen(p[1]) \u003e TLS_USERNAME_LEN)"}],"source_content_type":"text/x-csrc","patch_set":1,"id":"e20f62db_76f7ebd8","line":7850,"in_reply_to":"b78b8ba7_6bcff71d","updated":"2025-01-20 15:24:43.000000000","message":"Done","commit_id":"c940fae90cf283fa7222d7c0f85174c11f0e6d52"},{"author":{"_account_id":1000003,"name":"plaisthos","display_name":"Arne Schwabe","email":"arne-openvpn@rfc2549.org","username":"plaisthos"},"change_message_id":"148d42b1459eb90c2b746bc99c4414ec5a2e92c5","unresolved":false,"context_lines":[{"line_number":7847,"context_line":"        VERIFY_PERMISSION(OPT_P_INSTANCE);"},{"line_number":7848,"context_line":"        options-\u003edisable \u003d true;"},{"line_number":7849,"context_line":"    }"},{"line_number":7850,"context_line":"    else if (streq(p[0], \"override-username\") \u0026\u0026 p[1] \u0026\u0026 !p[2])"},{"line_number":7851,"context_line":"    {"},{"line_number":7852,"context_line":"        VERIFY_PERMISSION(OPT_P_INSTANCE);"},{"line_number":7853,"context_line":"        if (strlen(p[1]) \u003e TLS_USERNAME_LEN)"}],"source_content_type":"text/x-csrc","patch_set":1,"id":"a5d879a8_b2f803e4","line":7850,"in_reply_to":"b78b8ba7_6bcff71d","updated":"2025-01-20 15:29:00.000000000","message":"I am not sure about it. This is an option that is only allow in per client specific files but since --disable is documented there, so I will do it for consistency.","commit_id":"c940fae90cf283fa7222d7c0f85174c11f0e6d52"},{"author":{"_account_id":1000001,"name":"flichtenheld","display_name":"Frank Lichtenheld","email":"frank@lichtenheld.com","username":"flichtenheld","status":"OpenVPN Inc."},"change_message_id":"7b05a8c9197fd25ffe4c9bfa92f16d96896fa301","unresolved":true,"context_lines":[{"line_number":7856,"context_line":"                \"characters\", TLS_USERNAME_LEN);"},{"line_number":7857,"context_line":""},{"line_number":7858,"context_line":"            /* disable the connection since ignoring the request to"},{"line_number":7859,"context_line":"             * set another username might serious problems */"},{"line_number":7860,"context_line":"            options-\u003edisable \u003d true;"},{"line_number":7861,"context_line":"        }"},{"line_number":7862,"context_line":"        else"}],"source_content_type":"text/x-csrc","patch_set":1,"id":"5d357a53_801e96ab","line":7859,"updated":"2025-01-20 12:36:50.000000000","message":"missing word \"cause\"?","commit_id":"c940fae90cf283fa7222d7c0f85174c11f0e6d52"},{"author":{"_account_id":1000003,"name":"plaisthos","display_name":"Arne Schwabe","email":"arne-openvpn@rfc2549.org","username":"plaisthos"},"change_message_id":"148d42b1459eb90c2b746bc99c4414ec5a2e92c5","unresolved":false,"context_lines":[{"line_number":7856,"context_line":"                \"characters\", TLS_USERNAME_LEN);"},{"line_number":7857,"context_line":""},{"line_number":7858,"context_line":"            /* disable the connection since ignoring the request to"},{"line_number":7859,"context_line":"             * set another username might serious problems */"},{"line_number":7860,"context_line":"            options-\u003edisable \u003d true;"},{"line_number":7861,"context_line":"        }"},{"line_number":7862,"context_line":"        else"}],"source_content_type":"text/x-csrc","patch_set":1,"id":"8bcfd0ed_260b2f18","line":7859,"in_reply_to":"5d357a53_801e96ab","updated":"2025-01-20 15:29:00.000000000","message":"Acknowledged","commit_id":"c940fae90cf283fa7222d7c0f85174c11f0e6d52"},{"author":{"_account_id":1000001,"name":"flichtenheld","display_name":"Frank Lichtenheld","email":"frank@lichtenheld.com","username":"flichtenheld","status":"OpenVPN Inc."},"change_message_id":"9c2bbab790dc49c74e6869919a937c4c17d081d8","unresolved":false,"context_lines":[{"line_number":7856,"context_line":"                \"characters\", TLS_USERNAME_LEN);"},{"line_number":7857,"context_line":""},{"line_number":7858,"context_line":"            /* disable the connection since ignoring the request to"},{"line_number":7859,"context_line":"             * set another username might serious problems */"},{"line_number":7860,"context_line":"            options-\u003edisable \u003d true;"},{"line_number":7861,"context_line":"        }"},{"line_number":7862,"context_line":"        else"}],"source_content_type":"text/x-csrc","patch_set":1,"id":"2240b114_582b0419","line":7859,"in_reply_to":"5d357a53_801e96ab","updated":"2025-01-20 15:24:43.000000000","message":"Done","commit_id":"c940fae90cf283fa7222d7c0f85174c11f0e6d52"}],"src/openvpn/push.c":[{"author":{"_account_id":1000008,"name":"stipa","display_name":"Lev Stipakov","email":"lstipakov@gmail.com","username":"stipa"},"change_message_id":"2546d7b7036d372cdbf5a54486cee57f8bca8b67","unresolved":true,"context_lines":[{"line_number":598,"context_line":"        push_option_fmt(gc, push_list, M_USAGE, \"auth-token %s\","},{"line_number":599,"context_line":"                        tls_multi-\u003eauth_token);"},{"line_number":600,"context_line":""},{"line_number":601,"context_line":"        char *base64user;"},{"line_number":602,"context_line":"        int ret \u003d openvpn_base64_encode(tls_multi-\u003elocked_username,"},{"line_number":603,"context_line":"                                        (int)strlen(tls_multi-\u003elocked_username),"},{"line_number":604,"context_line":"                                        \u0026base64user);"}],"source_content_type":"text/x-csrc","patch_set":5,"id":"f66bd7a3_2a799056","line":601,"updated":"2025-02-13 12:59:30.000000000","message":"shouldn\u0027t we initialize it to NULL?","commit_id":"d4a75e401e15bcfe26bd5215cd0aefb08ab12b2e"},{"author":{"_account_id":1000008,"name":"stipa","display_name":"Lev Stipakov","email":"lstipakov@gmail.com","username":"stipa"},"change_message_id":"64a1a3174ecefd95fbb78e6f2bb1418b84583c5c","unresolved":true,"context_lines":[{"line_number":598,"context_line":"        push_option_fmt(gc, push_list, M_USAGE, \"auth-token %s\","},{"line_number":599,"context_line":"                        tls_multi-\u003eauth_token);"},{"line_number":600,"context_line":""},{"line_number":601,"context_line":"        char *base64user;"},{"line_number":602,"context_line":"        int ret \u003d openvpn_base64_encode(tls_multi-\u003elocked_username,"},{"line_number":603,"context_line":"                                        (int)strlen(tls_multi-\u003elocked_username),"},{"line_number":604,"context_line":"                                        \u0026base64user);"}],"source_content_type":"text/x-csrc","patch_set":5,"id":"5ff4fc75_402ab5ef","line":601,"in_reply_to":"2902ac35_5cb0e350","updated":"2025-02-17 12:09:11.000000000","message":"JFTR: I mean base64user variable. In other places when we call openvpn_base64_encode() we initialize the output variable with NULL.","commit_id":"d4a75e401e15bcfe26bd5215cd0aefb08ab12b2e"},{"author":{"_account_id":1000003,"name":"plaisthos","display_name":"Arne Schwabe","email":"arne-openvpn@rfc2549.org","username":"plaisthos"},"change_message_id":"e382540bb172f1cdca5b6852655d81920d479075","unresolved":false,"context_lines":[{"line_number":598,"context_line":"        push_option_fmt(gc, push_list, M_USAGE, \"auth-token %s\","},{"line_number":599,"context_line":"                        tls_multi-\u003eauth_token);"},{"line_number":600,"context_line":""},{"line_number":601,"context_line":"        char *base64user;"},{"line_number":602,"context_line":"        int ret \u003d openvpn_base64_encode(tls_multi-\u003elocked_username,"},{"line_number":603,"context_line":"                                        (int)strlen(tls_multi-\u003elocked_username),"},{"line_number":604,"context_line":"                                        \u0026base64user);"}],"source_content_type":"text/x-csrc","patch_set":5,"id":"44a65d3a_0065411c","line":601,"in_reply_to":"5ff4fc75_402ab5ef","updated":"2025-02-25 15:04:51.000000000","message":"Done","commit_id":"d4a75e401e15bcfe26bd5215cd0aefb08ab12b2e"},{"author":{"_account_id":1000003,"name":"plaisthos","display_name":"Arne Schwabe","email":"arne-openvpn@rfc2549.org","username":"plaisthos"},"change_message_id":"2fa758334f58014ef493c3c2f441250734209ad3","unresolved":true,"context_lines":[{"line_number":598,"context_line":"        push_option_fmt(gc, push_list, M_USAGE, \"auth-token %s\","},{"line_number":599,"context_line":"                        tls_multi-\u003eauth_token);"},{"line_number":600,"context_line":""},{"line_number":601,"context_line":"        char *base64user;"},{"line_number":602,"context_line":"        int ret \u003d openvpn_base64_encode(tls_multi-\u003elocked_username,"},{"line_number":603,"context_line":"                                        (int)strlen(tls_multi-\u003elocked_username),"},{"line_number":604,"context_line":"                                        \u0026base64user);"}],"source_content_type":"text/x-csrc","patch_set":5,"id":"2902ac35_5cb0e350","line":601,"in_reply_to":"f66bd7a3_2a799056","updated":"2025-02-17 12:04:13.000000000","message":"We initialise the struct and zero it. This is a common pattern in OpenVPN that we assume members to be either NULL or correctly set.","commit_id":"d4a75e401e15bcfe26bd5215cd0aefb08ab12b2e"}],"src/openvpn/ssl_common.h":[{"author":{"_account_id":1000001,"name":"flichtenheld","display_name":"Frank Lichtenheld","email":"frank@lichtenheld.com","username":"flichtenheld","status":"OpenVPN Inc."},"change_message_id":"7b05a8c9197fd25ffe4c9bfa92f16d96896fa301","unresolved":true,"context_lines":[{"line_number":627,"context_line":"    char *locked_cn;"},{"line_number":628,"context_line":""},{"line_number":629,"context_line":"    /** The locked username is the username that the client used for initial"},{"line_number":630,"context_line":"     * authentication */"},{"line_number":631,"context_line":"    char *locked_username;"},{"line_number":632,"context_line":""},{"line_number":633,"context_line":"    /** The username that client initial used before being overrriden by"}],"source_content_type":"text/x-csrc","patch_set":1,"id":"77deffca_cb68f2dd","line":630,"updated":"2025-01-20 12:36:50.000000000","message":"\"unless overridden by override-user\"","commit_id":"c940fae90cf283fa7222d7c0f85174c11f0e6d52"},{"author":{"_account_id":1000003,"name":"plaisthos","display_name":"Arne Schwabe","email":"arne-openvpn@rfc2549.org","username":"plaisthos"},"change_message_id":"148d42b1459eb90c2b746bc99c4414ec5a2e92c5","unresolved":false,"context_lines":[{"line_number":627,"context_line":"    char *locked_cn;"},{"line_number":628,"context_line":""},{"line_number":629,"context_line":"    /** The locked username is the username that the client used for initial"},{"line_number":630,"context_line":"     * authentication */"},{"line_number":631,"context_line":"    char *locked_username;"},{"line_number":632,"context_line":""},{"line_number":633,"context_line":"    /** The username that client initial used before being overrriden by"}],"source_content_type":"text/x-csrc","patch_set":1,"id":"8970872f_44928eba","line":630,"in_reply_to":"77deffca_cb68f2dd","updated":"2025-01-20 15:29:00.000000000","message":"Acknowledged","commit_id":"c940fae90cf283fa7222d7c0f85174c11f0e6d52"},{"author":{"_account_id":1000001,"name":"flichtenheld","display_name":"Frank Lichtenheld","email":"frank@lichtenheld.com","username":"flichtenheld","status":"OpenVPN Inc."},"change_message_id":"9c2bbab790dc49c74e6869919a937c4c17d081d8","unresolved":false,"context_lines":[{"line_number":627,"context_line":"    char *locked_cn;"},{"line_number":628,"context_line":""},{"line_number":629,"context_line":"    /** The locked username is the username that the client used for initial"},{"line_number":630,"context_line":"     * authentication */"},{"line_number":631,"context_line":"    char *locked_username;"},{"line_number":632,"context_line":""},{"line_number":633,"context_line":"    /** The username that client initial used before being overrriden by"}],"source_content_type":"text/x-csrc","patch_set":1,"id":"c09f832b_cfa6e127","line":630,"in_reply_to":"77deffca_cb68f2dd","updated":"2025-01-20 15:24:43.000000000","message":"Done","commit_id":"c940fae90cf283fa7222d7c0f85174c11f0e6d52"},{"author":{"_account_id":1000001,"name":"flichtenheld","display_name":"Frank Lichtenheld","email":"frank@lichtenheld.com","username":"flichtenheld","status":"OpenVPN Inc."},"change_message_id":"7b05a8c9197fd25ffe4c9bfa92f16d96896fa301","unresolved":true,"context_lines":[{"line_number":630,"context_line":"     * authentication */"},{"line_number":631,"context_line":"    char *locked_username;"},{"line_number":632,"context_line":""},{"line_number":633,"context_line":"    /** The username that client initial used before being overrriden by"},{"line_number":634,"context_line":"     * by override-user */"},{"line_number":635,"context_line":"    char *locked_original_username;"},{"line_number":636,"context_line":""}],"source_content_type":"text/x-csrc","patch_set":1,"id":"8fe0507f_ef4f018d","line":633,"updated":"2025-01-20 12:36:50.000000000","message":"\"initially\"","commit_id":"c940fae90cf283fa7222d7c0f85174c11f0e6d52"},{"author":{"_account_id":1000003,"name":"plaisthos","display_name":"Arne Schwabe","email":"arne-openvpn@rfc2549.org","username":"plaisthos"},"change_message_id":"148d42b1459eb90c2b746bc99c4414ec5a2e92c5","unresolved":false,"context_lines":[{"line_number":630,"context_line":"     * authentication */"},{"line_number":631,"context_line":"    char *locked_username;"},{"line_number":632,"context_line":""},{"line_number":633,"context_line":"    /** The username that client initial used before being overrriden by"},{"line_number":634,"context_line":"     * by override-user */"},{"line_number":635,"context_line":"    char *locked_original_username;"},{"line_number":636,"context_line":""}],"source_content_type":"text/x-csrc","patch_set":1,"id":"d732026a_e80583da","line":633,"in_reply_to":"8fe0507f_ef4f018d","updated":"2025-01-20 15:29:00.000000000","message":"Acknowledged","commit_id":"c940fae90cf283fa7222d7c0f85174c11f0e6d52"},{"author":{"_account_id":1000001,"name":"flichtenheld","display_name":"Frank Lichtenheld","email":"frank@lichtenheld.com","username":"flichtenheld","status":"OpenVPN Inc."},"change_message_id":"9c2bbab790dc49c74e6869919a937c4c17d081d8","unresolved":false,"context_lines":[{"line_number":630,"context_line":"     * authentication */"},{"line_number":631,"context_line":"    char *locked_username;"},{"line_number":632,"context_line":""},{"line_number":633,"context_line":"    /** The username that client initial used before being overrriden by"},{"line_number":634,"context_line":"     * by override-user */"},{"line_number":635,"context_line":"    char *locked_original_username;"},{"line_number":636,"context_line":""}],"source_content_type":"text/x-csrc","patch_set":1,"id":"f35c8085_0b38db04","line":633,"in_reply_to":"8fe0507f_ef4f018d","updated":"2025-01-20 15:24:43.000000000","message":"Done","commit_id":"c940fae90cf283fa7222d7c0f85174c11f0e6d52"},{"author":{"_account_id":1000001,"name":"flichtenheld","display_name":"Frank Lichtenheld","email":"frank@lichtenheld.com","username":"flichtenheld","status":"OpenVPN Inc."},"change_message_id":"7b05a8c9197fd25ffe4c9bfa92f16d96896fa301","unresolved":true,"context_lines":[{"line_number":631,"context_line":"    char *locked_username;"},{"line_number":632,"context_line":""},{"line_number":633,"context_line":"    /** The username that client initial used before being overrriden by"},{"line_number":634,"context_line":"     * by override-user */"},{"line_number":635,"context_line":"    char *locked_original_username;"},{"line_number":636,"context_line":""},{"line_number":637,"context_line":"    struct cert_hash_set *locked_cert_hash_set;"}],"source_content_type":"text/x-csrc","patch_set":1,"id":"47888316_35ac5086","line":634,"updated":"2025-01-20 12:36:50.000000000","message":"duplicated \"by\"","commit_id":"c940fae90cf283fa7222d7c0f85174c11f0e6d52"},{"author":{"_account_id":1000003,"name":"plaisthos","display_name":"Arne Schwabe","email":"arne-openvpn@rfc2549.org","username":"plaisthos"},"change_message_id":"148d42b1459eb90c2b746bc99c4414ec5a2e92c5","unresolved":false,"context_lines":[{"line_number":631,"context_line":"    char *locked_username;"},{"line_number":632,"context_line":""},{"line_number":633,"context_line":"    /** The username that client initial used before being overrriden by"},{"line_number":634,"context_line":"     * by override-user */"},{"line_number":635,"context_line":"    char *locked_original_username;"},{"line_number":636,"context_line":""},{"line_number":637,"context_line":"    struct cert_hash_set *locked_cert_hash_set;"}],"source_content_type":"text/x-csrc","patch_set":1,"id":"40f0c46d_fedba44c","line":634,"in_reply_to":"47888316_35ac5086","updated":"2025-01-20 15:29:00.000000000","message":"Acknowledged","commit_id":"c940fae90cf283fa7222d7c0f85174c11f0e6d52"},{"author":{"_account_id":1000001,"name":"flichtenheld","display_name":"Frank Lichtenheld","email":"frank@lichtenheld.com","username":"flichtenheld","status":"OpenVPN Inc."},"change_message_id":"9c2bbab790dc49c74e6869919a937c4c17d081d8","unresolved":false,"context_lines":[{"line_number":631,"context_line":"    char *locked_username;"},{"line_number":632,"context_line":""},{"line_number":633,"context_line":"    /** The username that client initial used before being overrriden by"},{"line_number":634,"context_line":"     * by override-user */"},{"line_number":635,"context_line":"    char *locked_original_username;"},{"line_number":636,"context_line":""},{"line_number":637,"context_line":"    struct cert_hash_set *locked_cert_hash_set;"}],"source_content_type":"text/x-csrc","patch_set":1,"id":"56ae7bc5_5d6fe748","line":634,"in_reply_to":"47888316_35ac5086","updated":"2025-01-20 15:24:43.000000000","message":"Done","commit_id":"c940fae90cf283fa7222d7c0f85174c11f0e6d52"}]}
