1
1
Fork 0
mirror of https://github.com/NixOS/nix.git synced 2025-11-15 23:12:44 +01:00
nix/src/libutil
Sergei Zimmerman 47f427a172
Remove validation of URLs passed to FileTransferRequest verbatim
CURL is not very strict about validation of URLs passed to it. We
should reflect this in our handling of URLs that we get from the user
in <nix/fetchurl.nix> or builtins.fetchurl. ValidURL was an attempt to
rectify this, but it turned out to be too strict. The only good way to
resolve this is to pass (in some cases) the user-provided string verbatim
to CURL. Other usages in libfetchers still benefit from using structured
ParsedURL and validation though.

nix store prefetch-file --name foo 'https://cdn.skypack.dev/big.js@^5.2.2'
error: 'https://cdn.skypack.dev/big.js@^5.2.2' is not a valid URL: leftover
2025-10-13 22:23:26 +03:00
..
freebsd meson: Get rid of multiline array formatting hack 2025-08-07 02:57:02 +03:00
include/nix/util Remove validation of URLs passed to FileTransferRequest verbatim 2025-10-13 22:23:26 +03:00
linux replace more std::unordered_* types by faster boost hash maps 2025-09-10 23:04:44 +02:00
pch libutil: Speed up builds by using precompiled headers 2025-07-20 22:01:51 +03:00
signature libutil: Fix i686-linux build on clangStdenv 2025-08-12 22:48:15 +03:00
unix Merge pull request #13929 from NixOS/remove-unused 2025-09-07 13:30:09 +02:00
widecharwidth Apply clang-format universally. 2025-07-18 12:47:27 -04:00
windows libutil, libexpr: #10542 abstract over getrusage for getting cpuTime stat and implement windows version 2025-08-24 18:45:33 -07:00
.version Build nix-util with Meson 2024-06-12 18:31:02 -04:00
archive.cc libutil: Throw if str("contents") not found 2025-10-07 01:04:49 +03:00
args.cc Args::Flag: Add required attribute 2025-09-26 16:01:59 +02:00
base-n.cc Clean up Base* code 2025-08-06 11:51:44 -04:00
base-nix-32.cc Clean up Base* code 2025-08-06 11:51:44 -04:00
canon-path.cc Apply clang-format universally. 2025-07-18 12:47:27 -04:00
compression.cc Merge pull request #13684 from the-sun-will-rise-tomorrow/identity-compression 2025-08-05 14:07:01 +02:00
compute-levels.cc Apply clang-format universally. 2025-07-18 12:47:27 -04:00
config-global.cc libutil: Make AbstractConfig::getSettings const 2025-08-11 20:44:23 +03:00
configuration.cc libutil: Make AbstractConfig::getSettings const 2025-08-11 20:44:23 +03:00
current-process.cc Apply clang-format universally. 2025-07-18 12:47:27 -04:00
english.cc Apply clang-format universally. 2025-07-18 12:47:27 -04:00
environment-variables.cc Apply clang-format universally. 2025-07-18 12:47:27 -04:00
error.cc libutil: Use std::source_location for unreachable 2025-08-29 00:21:07 +03:00
executable-path.cc Drop fs alias in favour of std::filesystem 2025-05-01 14:24:34 +02:00
exit.cc Apply clang-format universally. 2025-07-18 12:47:27 -04:00
experimental-features.cc Add external builders 2025-10-03 14:34:13 +02:00
file-content-address.cc libutil: Make HashResult a proper struct 2025-08-08 02:06:14 +03:00
file-descriptor.cc Apply clang-format universally. 2025-07-18 12:47:27 -04:00
file-system.cc Apply clang-format universally. 2025-07-18 12:47:27 -04:00
fs-sink.cc Apply clang-format universally. 2025-07-18 12:47:27 -04:00
git.cc libutil: Make HashResult a proper struct 2025-08-08 02:06:14 +03:00
hash.cc libutil: Fix missing return warning 2025-09-13 09:19:07 +03:00
hilite.cc Apply clang-format universally. 2025-07-18 12:47:27 -04:00
json-utils.cc Apply clang-format universally. 2025-07-18 12:47:27 -04:00
logging.cc treewide: Remove toView() because it leads to segfaults when compiled with newer nixpkgs 2025-10-05 02:30:21 +03:00
memory-source-accessor.cc libutil: Create empty directory at the root for makeEmptySourceAccessor 2025-09-29 23:16:28 +03:00
meson.build meson: Move asan-options to common 2025-10-11 16:08:35 +03:00
meson.options meson: Apply formatting universally 2025-08-07 02:58:29 +03:00
mounted-source-accessor.cc Add SourceAccessor::getFingerprint() 2025-09-25 11:20:00 -04:00
nix-meson-build-support rename: build-utils-meson -> nix-meson-build-support 2024-12-09 16:54:42 +01:00
package.nix flake: Apply nixfmt 1.0.0 2025-08-18 20:29:45 +03:00
pos-table.cc Apply clang-format universally. 2025-07-18 12:47:27 -04:00
position.cc Apply clang-format universally. 2025-07-18 12:47:27 -04:00
posix-source-accessor.cc document thread-unsafe mutation in PosixSourceAccessor 2025-09-26 23:31:56 +02:00
serialise.cc Apply clang-format universally. 2025-07-18 12:47:27 -04:00
source-accessor.cc libutil: Make HashResult a proper struct 2025-08-08 02:06:14 +03:00
source-path.cc Apply clang-format universally. 2025-07-18 12:47:27 -04:00
strings.cc treewide: Remove toView() because it leads to segfaults when compiled with newer nixpkgs 2025-10-05 02:30:21 +03:00
subdir-source-accessor.cc Apply clang-format universally. 2025-07-18 12:47:27 -04:00
suggestions.cc Apply clang-format universally. 2025-07-18 12:47:27 -04:00
tarfile.cc Apply clang-format universally. 2025-07-18 12:47:27 -04:00
tee-logger.cc Apply clang-format universally. 2025-07-18 12:47:27 -04:00
terminal.cc Don't build getPtsName() on Windows 2025-10-06 13:26:36 +02:00
thread-pool.cc Apply clang-format universally. 2025-07-18 12:47:27 -04:00
union-source-accessor.cc Add SourceAccessor::getFingerprint() 2025-09-25 11:20:00 -04:00
unix-domain-socket.cc Apply clang-format universally. 2025-07-18 12:47:27 -04:00
url.cc Remove validation of URLs passed to FileTransferRequest verbatim 2025-10-13 22:23:26 +03:00
users.cc Apply clang-format universally. 2025-07-18 12:47:27 -04:00
util.cc Clean up Base* code 2025-08-06 11:51:44 -04:00
xml-writer.cc Apply clang-format universally. 2025-07-18 12:47:27 -04:00