ofpbuf_init(&buf, 16);
end = ofpbuf_put_hex(&buf, &s[n], NULL);
if (end[0] == ')' && end[1] == ')') {
- odp_put_userspace_action(pid, buf.data, buf.size, actions);
+ odp_put_userspace_action(pid, ofpbuf_data(&buf), ofpbuf_size(&buf), actions);
ofpbuf_uninit(&buf);
return (end + 2) - s;
}
return 0;
}
- old_size = actions->size;
+ old_size = ofpbuf_size(actions);
for (;;) {
int retval;
retval = parse_odp_action(s, port_names, actions);
if (retval < 0 || !strchr(delimiters, s[retval])) {
- actions->size = old_size;
+ ofpbuf_set_size(actions, old_size);
return -retval;
}
s += retval;
nl_msg_end_nested(ofp, nested_mask);
}
- return ofp->base;
+ return ofpbuf_base(ofp);
}
/* Appends to 'ds' a string representation of the 'key_len' bytes of
odp_flow_from_string(const char *s, const struct simap *port_names,
struct ofpbuf *key, struct ofpbuf *mask)
{
- const size_t old_size = key->size;
+ const size_t old_size = ofpbuf_size(key);
for (;;) {
int retval;
retval = parse_odp_key_mask_attr(s, port_names, key, mask);
if (retval < 0) {
- key->size = old_size;
+ ofpbuf_set_size(key, old_size);
return -retval;
}
s += retval;
offset = nl_msg_start_nested(odp_actions, OVS_ACTION_ATTR_USERSPACE);
nl_msg_put_u32(odp_actions, OVS_USERSPACE_ATTR_PID, pid);
if (userdata) {
- userdata_ofs = odp_actions->size + NLA_HDRLEN;
+ userdata_ofs = ofpbuf_size(odp_actions) + NLA_HDRLEN;
/* The OVS kernel module before OVS 1.11 and the upstream Linux kernel
* module before Linux 3.10 required the userdata to be exactly 8 bytes