+/*
+ * Copy between the possibly-unused permissions field in an fxp_attrs
+ * and a possibly-negative integer containing the same permissions.
+ */
+#define PUT_PERMISSIONS(attrs, perms) \
+ ((perms) >= 0 ? \
+ ((attrs).flags |= SSH_FILEXFER_ATTR_PERMISSIONS, \
+ (attrs).permissions = (perms)) : \
+ ((attrs).flags &= ~SSH_FILEXFER_ATTR_PERMISSIONS))
+#define GET_PERMISSIONS(attrs) \
+ ((attrs).flags & SSH_FILEXFER_ATTR_PERMISSIONS ? \
+ (attrs).permissions : -1)
+