From: Andrey Smirnov <andrew.smirnov@gmail.com>
To: barebox@lists.infradead.org
Cc: Andrey Smirnov <andrew.smirnov@gmail.com>
Subject: [PATCH 6/6] crypto: digest: Change the signature of digest_file_window()
Date: Sat, 12 Jan 2019 00:24:56 -0800 [thread overview]
Message-ID: <20190112082456.7441-7-andrew.smirnov@gmail.com> (raw)
In-Reply-To: <20190112082456.7441-1-andrew.smirnov@gmail.com>
On 32-bit systems "ulong" will limit digest_file_window()'s maximum
size to 4 GiB. Convert "start" and "size" to "loff_t" in order to be
able to handle maximum file size supported by the rest of the system.
Signed-off-by: Andrey Smirnov <andrew.smirnov@gmail.com>
---
crypto/digest.c | 6 +++---
include/digest.h | 2 +-
2 files changed, 4 insertions(+), 4 deletions(-)
diff --git a/crypto/digest.c b/crypto/digest.c
index 7b34742c52..9b7b73019a 100644
--- a/crypto/digest.c
+++ b/crypto/digest.c
@@ -221,7 +221,7 @@ static int digest_update_interruptible(struct digest *d, const void *data,
}
static int digest_update_from_fd(struct digest *d, int fd,
- ulong start, ulong size)
+ loff_t start, loff_t size)
{
unsigned char *buf = xmalloc(PAGE_SIZE);
int ret = 0;
@@ -257,7 +257,7 @@ out_free:
static int digest_update_from_memory(struct digest *d,
const unsigned char *buf,
- ulong size)
+ loff_t size)
{
while (size) {
unsigned long now = min_t(typeof(size), PAGE_SIZE, size);
@@ -277,7 +277,7 @@ static int digest_update_from_memory(struct digest *d,
int digest_file_window(struct digest *d, const char *filename,
unsigned char *hash,
const unsigned char *sig,
- ulong start, ulong size)
+ loff_t start, loff_t size)
{
int fd, ret;
unsigned char *buf;
diff --git a/include/digest.h b/include/digest.h
index a1cdbb2d7a..a87e29bd28 100644
--- a/include/digest.h
+++ b/include/digest.h
@@ -100,7 +100,7 @@ void digest_free(struct digest *d);
int digest_file_window(struct digest *d, const char *filename,
unsigned char *hash,
const unsigned char *sig,
- ulong start, ulong size);
+ loff_t start, loff_t size);
int digest_file(struct digest *d, const char *filename,
unsigned char *hash,
const unsigned char *sig);
--
2.20.1
_______________________________________________
barebox mailing list
barebox@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/barebox
next prev parent reply other threads:[~2019-01-12 8:25 UTC|newest]
Thread overview: 11+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-01-12 8:24 [PATCH 0/6] Support for digesting large files (> 4 GiB) Andrey Smirnov
2019-01-12 8:24 ` [PATCH 1/6] treewide: Introduce MAP_FAILED and replace ad-hoc constants with it Andrey Smirnov
2019-01-12 8:24 ` [PATCH 2/6] crypto: digest: Remove unused variable Andrey Smirnov
2019-01-12 8:24 ` [PATCH 3/6] crypto: digest: Replace 4096 with PAGE_SIZE Andrey Smirnov
2019-01-12 8:24 ` [PATCH 4/6] crypto: digest: Split memory vs. file code into separate functions Andrey Smirnov
2019-01-12 11:18 ` Sam Ravnborg
2019-01-12 20:34 ` Andrey Smirnov
2019-01-12 8:24 ` [PATCH 5/6] commands: digest: Use MAX_LFS_FILESIZE instead of ~0 Andrey Smirnov
2019-01-12 8:24 ` Andrey Smirnov [this message]
2019-01-12 11:19 ` [PATCH 0/6] Support for digesting large files (> 4 GiB) Sam Ravnborg
2019-01-16 7:34 ` Sascha Hauer
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20190112082456.7441-7-andrew.smirnov@gmail.com \
--to=andrew.smirnov@gmail.com \
--cc=barebox@lists.infradead.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox