Lines Matching refs:a
53 attrib_clear(Attrib *a) in attrib_clear() argument
55 a->flags = 0; in attrib_clear()
56 a->size = 0; in attrib_clear()
57 a->uid = 0; in attrib_clear()
58 a->gid = 0; in attrib_clear()
59 a->perm = 0; in attrib_clear()
60 a->atime = 0; in attrib_clear()
61 a->mtime = 0; in attrib_clear()
66 stat_to_attrib(const struct stat *st, Attrib *a) in stat_to_attrib() argument
68 attrib_clear(a); in stat_to_attrib()
69 a->flags = 0; in stat_to_attrib()
70 a->flags |= SSH2_FILEXFER_ATTR_SIZE; in stat_to_attrib()
71 a->size = st->st_size; in stat_to_attrib()
72 a->flags |= SSH2_FILEXFER_ATTR_UIDGID; in stat_to_attrib()
73 a->uid = st->st_uid; in stat_to_attrib()
74 a->gid = st->st_gid; in stat_to_attrib()
75 a->flags |= SSH2_FILEXFER_ATTR_PERMISSIONS; in stat_to_attrib()
76 a->perm = st->st_mode; in stat_to_attrib()
77 a->flags |= SSH2_FILEXFER_ATTR_ACMODTIME; in stat_to_attrib()
78 a->atime = st->st_atime; in stat_to_attrib()
79 a->mtime = st->st_mtime; in stat_to_attrib()
84 attrib_to_stat(const Attrib *a, struct stat *st) in attrib_to_stat() argument
88 if (a->flags & SSH2_FILEXFER_ATTR_SIZE) in attrib_to_stat()
89 st->st_size = a->size; in attrib_to_stat()
90 if (a->flags & SSH2_FILEXFER_ATTR_UIDGID) { in attrib_to_stat()
91 st->st_uid = a->uid; in attrib_to_stat()
92 st->st_gid = a->gid; in attrib_to_stat()
94 if (a->flags & SSH2_FILEXFER_ATTR_PERMISSIONS) in attrib_to_stat()
95 st->st_mode = a->perm; in attrib_to_stat()
96 if (a->flags & SSH2_FILEXFER_ATTR_ACMODTIME) { in attrib_to_stat()
97 st->st_atime = a->atime; in attrib_to_stat()
98 st->st_mtime = a->mtime; in attrib_to_stat()
106 static Attrib a; in decode_attrib() local
108 attrib_clear(&a); in decode_attrib()
109 a.flags = buffer_get_int(b); in decode_attrib()
110 if (a.flags & SSH2_FILEXFER_ATTR_SIZE) in decode_attrib()
111 a.size = buffer_get_int64(b); in decode_attrib()
112 if (a.flags & SSH2_FILEXFER_ATTR_UIDGID) { in decode_attrib()
113 a.uid = buffer_get_int(b); in decode_attrib()
114 a.gid = buffer_get_int(b); in decode_attrib()
116 if (a.flags & SSH2_FILEXFER_ATTR_PERMISSIONS) in decode_attrib()
117 a.perm = buffer_get_int(b); in decode_attrib()
118 if (a.flags & SSH2_FILEXFER_ATTR_ACMODTIME) { in decode_attrib()
119 a.atime = buffer_get_int(b); in decode_attrib()
120 a.mtime = buffer_get_int(b); in decode_attrib()
123 if (a.flags & SSH2_FILEXFER_ATTR_EXTENDED) { in decode_attrib()
136 return &a; in decode_attrib()
141 encode_attrib(Buffer *b, const Attrib *a) in encode_attrib() argument
143 buffer_put_int(b, a->flags); in encode_attrib()
144 if (a->flags & SSH2_FILEXFER_ATTR_SIZE) in encode_attrib()
145 buffer_put_int64(b, a->size); in encode_attrib()
146 if (a->flags & SSH2_FILEXFER_ATTR_UIDGID) { in encode_attrib()
147 buffer_put_int(b, a->uid); in encode_attrib()
148 buffer_put_int(b, a->gid); in encode_attrib()
150 if (a->flags & SSH2_FILEXFER_ATTR_PERMISSIONS) in encode_attrib()
151 buffer_put_int(b, a->perm); in encode_attrib()
152 if (a->flags & SSH2_FILEXFER_ATTR_ACMODTIME) { in encode_attrib()
153 buffer_put_int(b, a->atime); in encode_attrib()
154 buffer_put_int(b, a->mtime); in encode_attrib()