summaryrefslogtreecommitdiff
path: root/xattrs.c
diff options
context:
space:
mode:
authorWayne Davison <wayned@samba.org>2008-04-15 08:27:38 -0700
committerWayne Davison <wayned@samba.org>2008-04-15 08:27:38 -0700
commit774d1c367bbde80c2d9ce8875048860c8c0b5272 (patch)
tree1c7c24b66ab3a9501f3ceb43fde066101ac1bf9d /xattrs.c
parent1b8e0e876bcf5c9c07d30bc560f6e2e9f8ade437 (diff)
downloadrsync-774d1c367bbde80c2d9ce8875048860c8c0b5272.tar.gz
Use overflow_exit() for overflows, not out_of_memory().
Diffstat (limited to 'xattrs.c')
-rw-r--r--xattrs.c14
1 files changed, 7 insertions, 7 deletions
diff --git a/xattrs.c b/xattrs.c
index 2441e116..552a63b3 100644
--- a/xattrs.c
+++ b/xattrs.c
@@ -178,8 +178,9 @@ static char *get_xattr_data(const char *fname, const char *name, size_t *len_ptr
if (!datum_len && !extra_len)
extra_len = 1; /* request non-zero amount of memory */
- if (datum_len + extra_len < datum_len /* checks for overflow */
- || !(ptr = new_array(char, datum_len + extra_len)))
+ if (datum_len + extra_len < datum_len)
+ overflow_exit("get_xattr_data");
+ if (!(ptr = new_array(char, datum_len + extra_len)))
out_of_memory("get_xattr_data");
if (datum_len) {
@@ -557,7 +558,7 @@ int recv_xattr_request(struct file_struct *file, int f_in)
rxa->datum_len = read_varint(f_in);
if (rxa->name_len + rxa->datum_len < rxa->name_len)
- out_of_memory("recv_xattr_request"); /* overflow */
+ overflow_exit("recv_xattr_request");
rxa->datum = new_array(char, rxa->datum_len + rxa->name_len);
if (!rxa->datum)
out_of_memory("recv_xattr_request");
@@ -609,10 +610,9 @@ void receive_xattr(struct file_struct *file, int f)
size_t datum_len = read_varint(f);
size_t dget_len = datum_len > MAX_FULL_DATUM ? 1 + MAX_DIGEST_LEN : datum_len;
size_t extra_len = MIGHT_NEED_RPRE ? RPRE_LEN : 0;
- if (dget_len + extra_len < dget_len)
- out_of_memory("receive_xattr"); /* overflow */
- if (dget_len + extra_len + name_len < dget_len)
- out_of_memory("receive_xattr"); /* overflow */
+ if ((dget_len + extra_len < dget_len)
+ || (dget_len + extra_len + name_len < dget_len))
+ overflow_exit("receive_xattr");
ptr = new_array(char, dget_len + extra_len + name_len);
if (!ptr)
out_of_memory("receive_xattr");