{"author":"Viktor Szakats","author_email":"commit@vsz.me","author_time":1757856858,"commit_time":1759187436,"committer":"Viktor Szakats","committer_email":"commit@vsz.me","hash":"20142f5d06f7120ba94cbcc25c998e8d81aec85b","message":"build: avoid overriding system symbols for fopen functions\n\nBy introducing wrappers for them in the curlx namespace:\n`curlx_fopen()`, `curlx_fdopen()`, `curlx_fclose()`.\n\nThe undefine/redefine/`(function)()` methods broke on systems\nimplementing these functions as macros. E.g. AIX 32-bit's `fopen()`.\n\nAlso:\n- rename `lib/fopen.*` to `lib/curl_fopen.*` (for `Curl_fopen()`)\n  to make room for the newly added `curlx/fopen.h`.\n- curlx: move file-related functions from `multibyte.c` to `fopen.c`.\n- tests/server: stop using the curl-specific `fopen()` implementation\n  on Windows. Unicode isn't used by runtests, and it isn't critical to\n  run tests on longs path. It can be re-enabled if this becomes\n  necessary, or if the wrapper receives a feature that's critical for\n  test servers.\n\nReported-by: Andrew Kirillov\nBug: https://github.com/curl/curl/issues/18510#issuecomment-3274393640\n\nFollow-up to bf7375ecc50e857760b0d0a668c436e208a400bd #18503\nFollow-up to 9863599d69b79d290928a89bf9160f4e4e023d4e #18502\nFollow-up to 3bb5e58c105d7be450b667858d1b8e7ae3ded555 #17827\n\nCloses #18634\n","parents":["10bac43b873fe45869e15b36aac1c1e5bc89b6e0"],"tree_hash":"93b970446e2d058f59c42720913cd21a17e36ac6"}