diff --git a/ynl-gen-cpp.py b/ynl-gen-cpp.py index c3d8a86..619b663 100755 --- a/ynl-gen-cpp.py +++ b/ynl-gen-cpp.py @@ -432,7 +432,7 @@ def attr_put(self, ri, var): def _attr_get(self, ri, var): return ( [ - f"{var}->{self.c_name}.assign(ynl_attr_get_str(attr), ynl_attr_data_len(attr));", + f"{var}->{self.c_name}.assign(ynl_attr_get_str(attr));", ], None, None, @@ -516,7 +516,7 @@ def _attr_policy(self, policy): return f"NLA_POLICY_BITFIELD32({mask})" def attr_put(self, ri, var): - line = f"ynl_attr_put(nlh, {self.enum_name}, &{var}->{self.c_name}, sizeof(struct nla_bitfield32))" + line = f"ynl_attr_put(nlh, {self.enum_name}, &(*{var}.{self.c_name}), sizeof(struct nla_bitfield32))" self._attr_put_line(ri, var, line) def _attr_get(self, ri, var):