Lines Matching defs:buf
31 buffer_t *buf = t_buffer_create(128);
34 buffer_append_c(buf, DSYNC_STATE_MAJOR_VERSION);
35 buffer_append_c(buf, DSYNC_STATE_MINOR_VERSION);
36 buffer_append_c(buf, '\0');
37 buffer_append_c(buf, '\0');
41 buffer_append(buf, state->mailbox_guid,
43 put_uint32(buf, state->last_uidvalidity);
44 put_uint32(buf, state->last_common_uid);
45 put_uint32(buf, state->last_common_modseq & 0xffffffffU);
46 put_uint32(buf, state->last_common_modseq >> 32);
47 put_uint32(buf, state->last_common_pvt_modseq & 0xffffffffU);
48 put_uint32(buf, state->last_common_pvt_modseq >> 32);
49 put_uint32(buf, state->last_messages_count); /* v1 */
50 if (buf->used % 3 == 0) {
51 crc = crc32_data_more(crc, buf->data, buf->used);
52 base64_encode(buf->data, buf->used, output);
53 buffer_set_used_size(buf, 0);
58 crc = crc32_data_more(crc, buf->data, buf->used);
59 put_uint32(buf, crc);
60 base64_encode(buf->data, buf->used, output);
63 static int dsync_mailbox_states_retry_import_v0(const buffer_t *buf)
65 const unsigned char *data = buf->data;
69 if ((buf->used-4) % V0_MAILBOX_SIZE != 0 ||
70 le32_to_cpu_unaligned(data + buf->used-4) != crc32_data(data, buf->used-4))
81 buffer_t *buf;
87 buf = t_buffer_create(strlen(input));
88 if (base64_decode(input, strlen(input), &pos, buf) < 0) {
93 data = buf->data;
95 if (buf->used == 4 && le32_to_cpu_unaligned(data) == 0) {
99 if (buf->used < 8) {
104 if ((buf->used-8) % MAILBOX_SIZE != 0) {
106 return dsync_mailbox_states_retry_import_v0(buf);
109 if (le32_to_cpu_unaligned(data + buf->used-4) != crc32_data(data, buf->used-4)) {
111 return dsync_mailbox_states_retry_import_v0(buf);
114 count = (buf->used-8) / MAILBOX_SIZE;