- char x;
- size_t slen = strlen(str);
-
- if (key_offset + sizeof(*k) + slen >= KEY_BUF_SIZE - 2)
- key_flush ();
- x = (cmd == 'a') ? 1 : 0;
- memcpy (key_buf + key_offset, str, slen+1);
- key_offset += slen+1;
- memcpy (key_buf + key_offset, &x, 1);
- key_offset++;
- memcpy (key_buf + key_offset, k, sizeof(*k));
- key_offset += sizeof(*k);