+ if (writer->private_key2) {
+ DEBUG(writer->ctx, "Creating signature with second private key\n");
+
+ writer->signature2_length = sizeof(writer->signature2);
+
+ r = loc_writer_create_signature(writer, &header, f,
+ writer->private_key2, writer->signature2, &writer->signature2_length);
+ if (r)
+ return r;
+ }
+
+ // Copy the signatures into the header
+ if (writer->signature1_length) {
+ memcpy(header.signature1, writer->signature1, writer->signature1_length);
+ header.signature1_length = htobe32(writer->signature1_length);
+ }
+
+ if (writer->signature2_length) {
+ memcpy(header.signature2, writer->signature2, writer->signature2_length);
+ header.signature2_length = htobe32(writer->signature2_length);
+ }
+