Text   |  XML   |  ReML   |   Visible Warnings:

Unreasonable Size Argument  at buffer.c:252

No properties have been set. | edit properties
Jump to warning location ↓ warning details...
Show Events | Options

read_header

(/home/sate/Testcases/c/cve/dovecot-1.2.0/src/lib-mail/istream-header-filter.c)expand/collapse
Show more  
 129  static ssize_t read_header(struct header_filter_istream *mstream)
 130  {
 131          struct message_header_line *hdr;
 132          uoff_t highwater_offset;
 133          size_t pos;
 134          ssize_t ret;
 135          bool matched;
 136          int hdr_ret;
 137   
 138          if (mstream->hdr_ctx == NULL) {
 139                  mstream->hdr_ctx =
 140                          message_parse_header_init(mstream->istream.parent,
 141                                                    NULL, 0);
 142          }
 143   
 144          /* remove skipped data from hdr_buf */
 145          buffer_copy(mstream->hdr_buf, 0,
 146[+]                     mstream->hdr_buf, mstream->istream.skip, (size_t)-1);
expand/collapse

buffer_copy

(/home/sate/Testcases/c/cve/dovecot-1.2.0/src/lib/buffer.c)expand/collapse
Show more  
 236  void buffer_copy(buffer_t *_dest, size_t dest_pos,
 237                   const buffer_t *_src, size_t src_pos, size_t copy_size)
 238  {
 239          struct real_buffer *dest = (struct real_buffer *)_dest;
 240          const struct real_buffer *src = (const struct real_buffer *)_src;
 241          size_t max_size;
 242   
 243          i_assert(src_pos <= src->used);
 244   
 245          max_size = src->used - src_pos;
 246          if (copy_size > max_size)
 247                  copy_size = max_size;
 248   
 249          buffer_check_limits(dest, dest_pos, copy_size);
 250          if (src == dest) {
 251                  memmove(dest->w_buffer + dest_pos,
 252                          src->r_buffer + src_pos, copy_size);
Show more  
Show more  




Change Warning 7153.24615 : Unreasonable Size Argument

Priority:
State:
Finding:
Owner:
Note: