diff options
-rw-r--r-- | src/install/integrity.zig | 29 | ||||
-rw-r--r-- | src/install/lockfile.zig | 6 |
2 files changed, 20 insertions, 15 deletions
diff --git a/src/install/integrity.zig b/src/install/integrity.zig index 1a52b5b1a..3d3ab41c4 100644 --- a/src/install/integrity.zig +++ b/src/install/integrity.zig @@ -1,5 +1,6 @@ const std = @import("std"); const strings = @import("../string_immutable.zig"); +const Crypto = @import("../sha.zig").Hashers; pub const Integrity = extern struct { tag: Tag = Tag.unknown, @@ -174,24 +175,28 @@ pub const Integrity = extern struct { switch (tag) { .sha1 => { - var ptr = digest[0..std.crypto.hash.Sha1.digest_length]; - std.crypto.hash.Sha1.hash(bytes, ptr, .{}); - return strings.eqlLong(ptr, sum[0..ptr.len], true); + const len = std.crypto.hash.Sha1.digest_length; + var ptr: *[len]u8 = digest[0..len]; + Crypto.SHA1.hash(bytes, ptr); + return strings.eqlLong(ptr, sum[0..len], true); }, .sha512 => { - var ptr = digest[0..std.crypto.hash.sha2.Sha512.digest_length]; - std.crypto.hash.sha2.Sha512.hash(bytes, ptr, .{}); - return strings.eqlLong(ptr, sum[0..ptr.len], true); + const len = std.crypto.hash.sha2.Sha512.digest_length; + var ptr: *[len]u8 = digest[0..len]; + Crypto.SHA512.hash(bytes, ptr); + return strings.eqlLong(ptr, sum[0..len], true); }, .sha256 => { - var ptr = digest[0..std.crypto.hash.sha2.Sha256.digest_length]; - std.crypto.hash.sha2.Sha256.hash(bytes, ptr, .{}); - return strings.eqlLong(ptr, sum[0..ptr.len], true); + const len = std.crypto.hash.sha2.Sha256.digest_length; + var ptr: *[len]u8 = digest[0..len]; + Crypto.SHA256.hash(bytes, ptr); + return strings.eqlLong(ptr, sum[0..len], true); }, .sha384 => { - var ptr = digest[0..std.crypto.hash.sha2.Sha384.digest_length]; - std.crypto.hash.sha2.Sha384.hash(bytes, ptr, .{}); - return strings.eqlLong(ptr, sum[0..ptr.len], true); + const len = std.crypto.hash.sha2.Sha384.digest_length; + var ptr: *[len]u8 = digest[0..len]; + Crypto.SHA384.hash(bytes, ptr); + return strings.eqlLong(ptr, sum[0..len], true); }, else => return false, } diff --git a/src/install/lockfile.zig b/src/install/lockfile.zig index e3b1b2345..27269c690 100644 --- a/src/install/lockfile.zig +++ b/src/install/lockfile.zig @@ -78,7 +78,7 @@ const invalid_package_id = @import("./install.zig").invalid_package_id; const JSAst = @import("../js_ast.zig"); const Origin = @import("./install.zig").Origin; const PackageIDMultiple = @import("./install.zig").PackageIDMultiple; - +const Crypto = @import("../sha.zig").Hashers; pub const MetaHash = [std.crypto.hash.sha2.Sha512256.digest_length]u8; const zero_hash = std.mem.zeroes(MetaHash); @@ -452,7 +452,7 @@ pub const Tree = struct { } }; -/// This conditonally clones the lockfile with root packages marked as non-resolved that do not satisfy `Features`. The package may still end up installed even if it was e.g. in "devDependencies" and its a production install. In that case, it would be installed because another dependency or transient dependency needed it +/// This conditonally clones the lockfile with root packages marked as non-resolved that do not satisfy `Features`. The package may still end up installed even if it was e.g. in "devDependencies" and its a production install. In that case, it would be installed because another dependency or transient dependency needed it /// /// Warning: This potentially modifies the existing lockfile in-place. That is safe to do because at this stage, the lockfile has already been saved to disk. Our in-memory representation is all that's left. pub fn maybeCloneFilteringRootPackages( @@ -3013,7 +3013,7 @@ pub fn generateMetaHash(this: *Lockfile, print_name_version_string: bool) !MetaH } var digest = zero_hash; - std.crypto.hash.sha2.Sha512256.hash(alphabetized_name_version_string, &digest, .{}); + Crypto.SHA512_256.hash(alphabetized_name_version_string, &digest); return digest; } |