)]}'
{"/PATCHSET_LEVEL":[{"author":{"_account_id":1000003,"name":"plaisthos","display_name":"Arne Schwabe","email":"arne-openvpn@rfc2549.org","username":"plaisthos"},"change_message_id":"3ea911e9897ae686cf3e4fa539fcf4e74ee900d8","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":2,"id":"ef33ad8a_ac422a1a","updated":"2024-09-17 15:07:16.000000000","message":"Github Actions build: https://github.com/schwabe/openvpn/actions/runs/10905768563","commit_id":"e4e83dc4c74509800389d79fc364d8ad77945612"},{"author":{"_account_id":1000003,"name":"plaisthos","display_name":"Arne Schwabe","email":"arne-openvpn@rfc2549.org","username":"plaisthos"},"change_message_id":"72645979e426a501a7348c1143bc7cd1664816d2","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":4,"id":"89adfe70_e277aada","updated":"2024-09-17 15:50:18.000000000","message":"Patch 4 is the same patch 2 since I accidentally pushed the wrong branch to gerrit.\n\nGHA build for Patch 4 is https://github.com/schwabe/openvpn/actions/runs/10906577340\n\nI had to have a different commitish since gerrit would otherwise not allow the old version to be pushed again.","commit_id":"2fa0eb1f25a18a78c1ebab4cc7b59421bfd631be"},{"author":{"_account_id":1000008,"name":"stipa","display_name":"Lev Stipakov","email":"lstipakov@gmail.com","username":"stipa"},"change_message_id":"00db06e8c2db206a562cfdb88cafbd677acfb3da","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":5,"id":"ea9b251a_746ae779","updated":"2024-12-26 11:01:39.000000000","message":"C:\\Users\\lev\\Projects\\openvpn-build\\src\\openvpn\\tests\\unit_tests\\openvpn\\test_buffer.c(408,11): error : \u0027snprintf\u0027 will always be truncated; specified size is 10, but format string expands to at least 16 [-Werror,-Wformat-truncation] [C:\\Users\\lev\\Projects\\openvpn-build\\src\\openvpn\\out\\build\\win-amd64-clang-debug\\test_buffer.vcxproj]\n\nc:\\Program Files\\Microsoft Visual Studio\\2022\\Community\\VC\\Tools\\Llvm\\bin\u003eclang-cl.exe --version\nclang version 18.1.8\nTarget: i686-pc-windows-msvc\nThread model: posix\nInstalledDir: c:\\Program Files\\Microsoft Visual Studio\\2022\\Community\\VC\\Tools\\Llvm\\bin","commit_id":"c3ec837319e80503fa35e361390c29b2d2a68be0"},{"author":{"_account_id":1000002,"name":"cron2","display_name":"Gert Doering","email":"gert@greenie.muc.de","username":"cron2"},"change_message_id":"aec0d30a10a8962253152036d8195d0cdf1d6259","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":5,"id":"6e33f609_889e6104","updated":"2024-12-26 11:45:35.000000000","message":"Well, that code block is testing correctness of `snprintf()`, which it can only do by intentionally overflowing and checking the results.  We try to tell that to the compiler, but it seems clang 18.1 needs more help\n\n```\n    /* Instead of trying to trick the compiler here, disable the warnings\n     * for this unit test. We know that the results will be truncated\n     * and we want to test that */\n#if defined(__GNUC__)\n/* some clang version do not understand -Wformat-truncation, so ignore the\n * warning to avoid warnings/errors (-Werror) about unknown pragma/option */\n#if defined(__clang__)\n#pragma clang diagnostic push\n#pragma clang diagnostic ignored \"-Wunknown-warning-option\"\n#endif\n#pragma GCC diagnostic push\n#pragma GCC diagnostic ignored \"-Wformat-truncation\"\n#endif\n```","commit_id":"c3ec837319e80503fa35e361390c29b2d2a68be0"},{"author":{"_account_id":1000003,"name":"plaisthos","display_name":"Arne Schwabe","email":"arne-openvpn@rfc2549.org","username":"plaisthos"},"change_message_id":"feaf8b5fcff261a8af7e91a1db6463b85ae136bc","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":5,"id":"862d8208_ee3000ea","in_reply_to":"2deed619_7bf008c0","updated":"2024-12-27 01:21:40.000000000","message":"Yes but that also adds the option twice for clang, which doesn\u0027t hurt. I changed the first line to be __GUNUC__ || __clang__ instead.","commit_id":"c3ec837319e80503fa35e361390c29b2d2a68be0"},{"author":{"_account_id":1000008,"name":"stipa","display_name":"Lev Stipakov","email":"lstipakov@gmail.com","username":"stipa"},"change_message_id":"a86348a207245115c16a714e597ee6ae59648be1","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":5,"id":"2deed619_7bf008c0","in_reply_to":"6e33f609_889e6104","updated":"2024-12-26 15:21:35.000000000","message":"This works:\n\n#if defined(__clang__)\n#pragma clang diagnostic push\n#pragma clang diagnostic ignored \"-Wunknown-warning-option\"\n#pragma clang diagnostic ignored \"-Wformat-truncation\"\n#endif\n#if defined(__GNUC__)\n#pragma GCC diagnostic push\n#pragma GCC diagnostic ignored \"-Wformat-truncation\"\n#endif","commit_id":"c3ec837319e80503fa35e361390c29b2d2a68be0"},{"author":{"_account_id":1000008,"name":"stipa","display_name":"Lev Stipakov","email":"lstipakov@gmail.com","username":"stipa"},"change_message_id":"37dc04709e776e3dd4bcaf13e3389554245d2ccb","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":6,"id":"a1015a32_effa9c16","updated":"2024-12-27 11:14:16.000000000","message":"Stared at the code and built with MSVC and clang-cl and cl.","commit_id":"6dff5805472ae6412edb698ecdf29e0702375a4a"}],"CMakePresets.json":[{"author":{"_account_id":1000001,"name":"flichtenheld","display_name":"Frank Lichtenheld","email":"frank@lichtenheld.com","username":"flichtenheld","status":"OpenVPN Inc."},"change_message_id":"8aa42b022f93011e16650b0b90d571de3df77467","unresolved":true,"context_lines":[{"line_number":142,"context_line":"            \"inherits\": [ \"base\", \"base-windows\", \"clangtoolset\", \"x64\", \"release\" ]"},{"line_number":143,"context_line":"        },"},{"line_number":144,"context_line":"        {"},{"line_number":145,"context_line":"            \"name\": \"win-arm64-release\","},{"line_number":146,"context_line":"            \"inherits\": [ \"base\", \"base-windows\", \"arm64\", \"release\" ]"},{"line_number":147,"context_line":"        },"},{"line_number":148,"context_line":"        {"}],"source_content_type":"application/json","patch_set":4,"id":"5870527b_92367fa6","line":145,"range":{"start_line":145,"start_character":25,"end_line":145,"end_character":30},"updated":"2024-09-18 10:40:43.000000000","message":"Why no support for ARM64?","commit_id":"2fa0eb1f25a18a78c1ebab4cc7b59421bfd631be"},{"author":{"_account_id":1000003,"name":"plaisthos","display_name":"Arne Schwabe","email":"arne-openvpn@rfc2549.org","username":"plaisthos"},"change_message_id":"d1f194e05caa0b4f8f1b643e0a0d084fbe286899","unresolved":true,"context_lines":[{"line_number":142,"context_line":"            \"inherits\": [ \"base\", \"base-windows\", \"clangtoolset\", \"x64\", \"release\" ]"},{"line_number":143,"context_line":"        },"},{"line_number":144,"context_line":"        {"},{"line_number":145,"context_line":"            \"name\": \"win-arm64-release\","},{"line_number":146,"context_line":"            \"inherits\": [ \"base\", \"base-windows\", \"arm64\", \"release\" ]"},{"line_number":147,"context_line":"        },"},{"line_number":148,"context_line":"        {"}],"source_content_type":"application/json","patch_set":4,"id":"b0c7528e_5a22270e","line":145,"range":{"start_line":145,"start_character":25,"end_line":145,"end_character":30},"in_reply_to":"5870527b_92367fa6","updated":"2024-09-18 11:32:35.000000000","message":"iirc when I did try for OpenVPN3, arm64 support was not included with clang toolset in msvc, will check again. But it seems that it is not supported:\n\nerror: in triplet arm64-windows-ovpn: Unable to find a valid toolchain for requested target architecture arm64.\nThe selected Visual Studio instance is at: C:\\Program Files\\Microsoft Visual Studio\\2022\\Community\nThe available toolchain combinations are: x86, amd64, x86_amd64, amd64_x86","commit_id":"2fa0eb1f25a18a78c1ebab4cc7b59421bfd631be"},{"author":{"_account_id":1000003,"name":"plaisthos","display_name":"Arne Schwabe","email":"arne-openvpn@rfc2549.org","username":"plaisthos"},"change_message_id":"a3b4566498e2de442f6c0eeb741d4329bcf23b1a","unresolved":false,"context_lines":[{"line_number":142,"context_line":"            \"inherits\": [ \"base\", \"base-windows\", \"clangtoolset\", \"x64\", \"release\" ]"},{"line_number":143,"context_line":"        },"},{"line_number":144,"context_line":"        {"},{"line_number":145,"context_line":"            \"name\": \"win-arm64-release\","},{"line_number":146,"context_line":"            \"inherits\": [ \"base\", \"base-windows\", \"arm64\", \"release\" ]"},{"line_number":147,"context_line":"        },"},{"line_number":148,"context_line":"        {"}],"source_content_type":"application/json","patch_set":4,"id":"c13de973_ed7c5179","line":145,"range":{"start_line":145,"start_character":25,"end_line":145,"end_character":30},"in_reply_to":"b0c7528e_5a22270e","updated":"2024-09-18 11:37:28.000000000","message":"Done","commit_id":"2fa0eb1f25a18a78c1ebab4cc7b59421bfd631be"}],"src/openvpnmsica/openvpnmsica.h":[{"author":{"_account_id":1000001,"name":"flichtenheld","display_name":"Frank Lichtenheld","email":"frank@lichtenheld.com","username":"flichtenheld","status":"OpenVPN Inc."},"change_message_id":"8aa42b022f93011e16650b0b90d571de3df77467","unresolved":true,"context_lines":[{"line_number":66,"context_line":"extern \"C\" {"},{"line_number":67,"context_line":"#endif"},{"line_number":68,"context_line":""},{"line_number":69,"context_line":"/* Ensure that clang-cl, which does not understand the #pragma comment(linker, ...)"},{"line_number":70,"context_line":" * is handled the same way as mingw */"},{"line_number":71,"context_line":"#if defined(__GNUC__) || defined(__clang__)"},{"line_number":72,"context_line":"#define DLLEXP_DECL __declspec(dllexport)"}],"source_content_type":"text/x-csrc","patch_set":4,"id":"ca83f549_dbf9a388","line":69,"updated":"2024-09-18 10:40:43.000000000","message":"That comment seems more suited to the changes to openvpnmsica.c? Maybe instead of \"#pragma comment\" just write \"cl-specific pragmas\"?","commit_id":"2fa0eb1f25a18a78c1ebab4cc7b59421bfd631be"},{"author":{"_account_id":1000003,"name":"plaisthos","display_name":"Arne Schwabe","email":"arne-openvpn@rfc2549.org","username":"plaisthos"},"change_message_id":"d1f194e05caa0b4f8f1b643e0a0d084fbe286899","unresolved":true,"context_lines":[{"line_number":66,"context_line":"extern \"C\" {"},{"line_number":67,"context_line":"#endif"},{"line_number":68,"context_line":""},{"line_number":69,"context_line":"/* Ensure that clang-cl, which does not understand the #pragma comment(linker, ...)"},{"line_number":70,"context_line":" * is handled the same way as mingw */"},{"line_number":71,"context_line":"#if defined(__GNUC__) || defined(__clang__)"},{"line_number":72,"context_line":"#define DLLEXP_DECL __declspec(dllexport)"}],"source_content_type":"text/x-csrc","patch_set":4,"id":"f8f306e1_5157f7ed","line":69,"in_reply_to":"ca83f549_dbf9a388","updated":"2024-09-18 11:32:35.000000000","message":"yeah will reword that.","commit_id":"2fa0eb1f25a18a78c1ebab4cc7b59421bfd631be"},{"author":{"_account_id":1000003,"name":"plaisthos","display_name":"Arne Schwabe","email":"arne-openvpn@rfc2549.org","username":"plaisthos"},"change_message_id":"a3b4566498e2de442f6c0eeb741d4329bcf23b1a","unresolved":false,"context_lines":[{"line_number":66,"context_line":"extern \"C\" {"},{"line_number":67,"context_line":"#endif"},{"line_number":68,"context_line":""},{"line_number":69,"context_line":"/* Ensure that clang-cl, which does not understand the #pragma comment(linker, ...)"},{"line_number":70,"context_line":" * is handled the same way as mingw */"},{"line_number":71,"context_line":"#if defined(__GNUC__) || defined(__clang__)"},{"line_number":72,"context_line":"#define DLLEXP_DECL __declspec(dllexport)"}],"source_content_type":"text/x-csrc","patch_set":4,"id":"8fcf0cca_12d5645b","line":69,"in_reply_to":"f8f306e1_5157f7ed","updated":"2024-09-18 11:37:28.000000000","message":"Done","commit_id":"2fa0eb1f25a18a78c1ebab4cc7b59421bfd631be"}]}
