+/* Creates and returns a new ofpbuf whose data are copied from 'buffer'. The
+ * returned ofpbuf will additionally have 'headroom' bytes of headroom. */
+struct ofpbuf *
+ofpbuf_clone_with_headroom(const struct ofpbuf *buffer, size_t headroom)
+{
+ struct ofpbuf *b = ofpbuf_new_with_headroom(buffer->size, headroom);
+ ofpbuf_put(b, buffer->data, buffer->size);
+ return b;
+}
+