- * On failure, stores NULL in in '*bufferp' and -1 in '*in_port'. */
-int
-pktbuf_retrieve(struct pktbuf *pb, uint32_t id, struct ofpbuf **bufferp,
- uint16_t *in_port)
+ * 'in_port' may be NULL if the input port is not of interest.
+ *
+ * The L3 header of a returned packet will be 32-bit aligned.
+ *
+ * On failure, stores NULL in in '*bufferp' and UINT16_MAX in '*in_port'. */
+enum ofperr
+pktbuf_retrieve(struct pktbuf *pb, uint32_t id, struct dp_packet **bufferp,
+ ofp_port_t *in_port)