BLOBCHAR = %x01-5a / %x5c / %x5e-7f
; any CHAR except '[' and ']' */
- orig_data = buffer_get_data(buf, NULL);
+ orig_data = buf->data;
orig_data += *start_pos;
data = orig_data;
{
const char *data, *orig_data;
- orig_data = buffer_get_data(buf, NULL);
+ orig_data = buf->data;
orig_data += *start_pos;
data = orig_data;
if (*data == '[' && remove_blob(&data) && *data != '\0') {
static bool remove_subj_fwd_hdr(buffer_t *buf, size_t *start_pos,
bool *is_reply_or_forward_r)
{
- const char *data;
- size_t size;
+ const char *data = buf->data;
+ size_t size = buf->used;
/* subj-fwd = subj-fwd-hdr subject subj-fwd-trl
subj-fwd-hdr = "[fwd:"
subj-fwd-trl = "]" */
- data = buffer_get_data(buf, &size);
if (strncmp(data + *start_pos, "[FWD:", 5) != 0)
return FALSE;
file = view->cur;
- data = buffer_get_data(file->buffer, &file_size);
- file_size += file->buffer_offset;
+ data = file->buffer->data;
+ file_size = file->buffer->used + file->buffer_offset;
if (view->cur_offset + sizeof(*hdr) > file_size) {
mail_transaction_log_file_set_corrupted(file,
if (mstream->crlf)
buffer_append_c(mstream->hdr_buf, '\r');
buffer_append_c(mstream->hdr_buf, '\n');
- mstream->istream.buffer =
- buffer_get_data(mstream->hdr_buf,
- &mstream->istream.pos);
+ mstream->istream.buffer = mstream->hdr_buf->data;
+ mstream->istream.pos = mstream->hdr_buf->used;
return mstream->hdr_buf->used - pos;
}
return ret;
buffer_append(ctx->value_buf,
line->value, line->value_len);
}
- line->full_value = buffer_get_data(ctx->value_buf,
- &line->full_value_len);
+ line->full_value = ctx->value_buf->data;
+ line->full_value_len = ctx->value_buf->used;
} else {
/* we didn't want full_value, and this is a continued line. */
line->full_value = NULL;
{
struct mail *_mail = &mail->mail.mail;
const struct index_mail_line *lines;
- const unsigned char *header, *data;
+ const unsigned char *header;
const uint8_t *match;
buffer_t *buf;
- size_t data_size;
unsigned int i, j, count, match_idx, match_count;
bool noncontiguous;
lines = array_get(&mail->header_lines, &count);
match = array_get(&mail->header_match, &match_count);
- header = buffer_get_data(mail->header_data, NULL);
+ header = mail->header_data->data;
buf = buffer_create_dynamic(pool_datastack_create(), 256);
/* go through all the header lines we found */
lines[j-1].end_pos - lines[i].start_pos);
}
- data = buffer_get_data(buf, &data_size);
index_mail_cache_add_idx(mail, lines[i].field_idx,
- data, data_size);
+ buf->data, buf->used);
}
for (; match_idx < match_count; match_idx++) {
static size_t get_header_size(buffer_t *buffer, size_t pos)
{
- const unsigned char *data;
- size_t i, size;
+ const unsigned char *data = buffer->data;
+ size_t i, size = buffer->used;
- data = buffer_get_data(buffer, &size);
i_assert(pos <= size);
for (i = pos; i < size; i++) {
first_line_idx = *line_idx - 1;
p_array_init(&header_values, mail->mail.data_pool, 4);
- header = buffer_get_data(mail->header_data, NULL);
+ header = mail->header_data->data;
lines = array_get(&mail->header_lines, &lines_count);
for (i = first_line_idx; i < lines_count; i++) {
return NULL;
buffer_append(headers, &null, sizeof(const char *));
- return buffer_get_data(headers, NULL);
+ return headers->data;
}
static bool
const void *array_lsearch_i(const struct array *array, const void *key,
int (*cmp)(const void *, const void *))
{
- const void * const data = buffer_get_data(array->buffer, NULL);
+ const void * const data = array->buffer->data;
const unsigned int s = array->element_size;
unsigned int idx;
const char *str_c(string_t *str)
{
str_add_nul(str);
- return buffer_get_data(str, NULL);
+ return str->data;
}
const unsigned char *str_data(const string_t *str)
{
- return buffer_get_data(str, NULL);
+ return str->data;
}
char *str_c_modifiable(string_t *str)
void str_append_str(string_t *dest, const string_t *src)
{
- const char *cstr;
- size_t len;
-
- cstr = buffer_get_data(src, &len);
- buffer_append(dest, cstr, len);
+ buffer_append(dest, src->data, src->used);
}
void str_printfa(string_t *str, const char *fmt, ...)