Lines Matching refs:ctx

52 	ndmp_door_ctx_t *ctx = malloc(sizeof (ndmp_door_ctx_t));  in ndmp_door_decode_start()  local
53 if (ctx) { in ndmp_door_decode_start()
54 ctx->start_ptr = ctx->ptr = ptr; in ndmp_door_decode_start()
55 ctx->end_ptr = ptr + size; in ndmp_door_decode_start()
56 ctx->status = 0; in ndmp_door_decode_start()
58 return (ctx); in ndmp_door_decode_start()
62 ndmp_door_decode_finish(ndmp_door_ctx_t *ctx) in ndmp_door_decode_finish() argument
64 int status = ctx->status; in ndmp_door_decode_finish()
65 if ((status == 0) && (ctx->ptr != ctx->end_ptr)) { in ndmp_door_decode_finish()
68 free(ctx); in ndmp_door_decode_finish()
75 ndmp_door_ctx_t *ctx = malloc(sizeof (ndmp_door_ctx_t)); in ndmp_door_encode_start() local
76 if (ctx) { in ndmp_door_encode_start()
77 ctx->start_ptr = ctx->ptr = ptr; in ndmp_door_encode_start()
78 ctx->end_ptr = ptr + size; in ndmp_door_encode_start()
79 ctx->status = 0; in ndmp_door_encode_start()
81 return (ctx); in ndmp_door_encode_start()
85 ndmp_door_encode_finish(ndmp_door_ctx_t *ctx, unsigned int *used) in ndmp_door_encode_finish() argument
87 int status = ctx->status; in ndmp_door_encode_finish()
89 if (ctx->ptr < ctx->end_ptr) { in ndmp_door_encode_finish()
91 *used = ctx->ptr - ctx->start_ptr; in ndmp_door_encode_finish()
96 free(ctx); in ndmp_door_encode_finish()
101 ndmp_door_get_int32(ndmp_door_ctx_t *ctx) in ndmp_door_get_int32() argument
104 if (ctx->status == 0) { in ndmp_door_get_int32()
105 if (ctx->ptr + sizeof (int32_t) <= ctx->end_ptr) { in ndmp_door_get_int32()
106 (void) memcpy(&num, ctx->ptr, sizeof (int32_t)); in ndmp_door_get_int32()
107 ctx->ptr += sizeof (int32_t); in ndmp_door_get_int32()
109 ctx->status = ENOSPC; in ndmp_door_get_int32()
116 ndmp_door_get_uint32(ndmp_door_ctx_t *ctx) in ndmp_door_get_uint32() argument
118 return ((uint32_t)ndmp_door_get_int32(ctx)); in ndmp_door_get_uint32()
122 ndmp_door_get_string(ndmp_door_ctx_t *ctx) in ndmp_door_get_string() argument
125 int len = ndmp_door_get_int32(ctx); in ndmp_door_get_string()
127 if (ctx->status == 0) { in ndmp_door_get_string()
131 if (ctx->ptr + len <= ctx->end_ptr) { in ndmp_door_get_string()
137 (void) memcpy(buf, ctx->ptr, len); in ndmp_door_get_string()
138 ctx->ptr += len; in ndmp_door_get_string()
142 ctx->status = errno; in ndmp_door_get_string()
145 ctx->status = ENOSPC; in ndmp_door_get_string()
152 ndmp_door_put_int32(ndmp_door_ctx_t *ctx, int32_t num) in ndmp_door_put_int32() argument
154 if (ctx->status == 0) { in ndmp_door_put_int32()
155 if (ctx->ptr + sizeof (int32_t) <= ctx->end_ptr) { in ndmp_door_put_int32()
156 (void) memcpy(ctx->ptr, &num, sizeof (int32_t)); in ndmp_door_put_int32()
157 ctx->ptr += sizeof (int32_t); in ndmp_door_put_int32()
159 ctx->status = ENOSPC; in ndmp_door_put_int32()
165 ndmp_door_put_uint32(ndmp_door_ctx_t *ctx, uint32_t num) in ndmp_door_put_uint32() argument
167 ndmp_door_put_int32(ctx, (int32_t)num); in ndmp_door_put_uint32()
171 ndmp_door_put_string(ndmp_door_ctx_t *ctx, char *buf) in ndmp_door_put_string() argument
180 if (ctx->status == 0) { in ndmp_door_put_string()
181 ndmp_door_put_int32(ctx, len); in ndmp_door_put_string()
185 if (ctx->ptr + len <= ctx->end_ptr) { in ndmp_door_put_string()
186 (void) memcpy(ctx->ptr, buf, len); in ndmp_door_put_string()
187 ctx->ptr += len; in ndmp_door_put_string()
189 ctx->status = ENOSPC; in ndmp_door_put_string()
201 ndmp_door_get_int64(ndmp_door_ctx_t *ctx) in ndmp_door_get_int64() argument
204 if (ctx->status == 0) { in ndmp_door_get_int64()
205 if (ctx->ptr + sizeof (int64_t) <= ctx->end_ptr) { in ndmp_door_get_int64()
206 (void) memcpy(&num, ctx->ptr, sizeof (int64_t)); in ndmp_door_get_int64()
207 ctx->ptr += sizeof (int64_t); in ndmp_door_get_int64()
209 ctx->status = ENOSPC; in ndmp_door_get_int64()
216 ndmp_door_get_uint64(ndmp_door_ctx_t *ctx) in ndmp_door_get_uint64() argument
218 return ((uint64_t)ndmp_door_get_int64(ctx)); in ndmp_door_get_uint64()
223 ndmp_door_put_int64(ndmp_door_ctx_t *ctx, int64_t num) in ndmp_door_put_int64() argument
225 if (ctx->status == 0) { in ndmp_door_put_int64()
226 if (ctx->ptr + sizeof (int64_t) <= ctx->end_ptr) { in ndmp_door_put_int64()
227 (void) memcpy(ctx->ptr, &num, sizeof (int64_t)); in ndmp_door_put_int64()
228 ctx->ptr += sizeof (int64_t); in ndmp_door_put_int64()
230 ctx->status = ENOSPC; in ndmp_door_put_int64()
236 ndmp_door_put_uint64(ndmp_door_ctx_t *ctx, uint64_t num) in ndmp_door_put_uint64() argument
238 ndmp_door_put_int64(ctx, (int64_t)num); in ndmp_door_put_uint64()
242 ndmp_door_put_short(ndmp_door_ctx_t *ctx, short num) in ndmp_door_put_short() argument
244 if (ctx->status == 0) { in ndmp_door_put_short()
245 if (ctx->ptr + sizeof (short) <= ctx->end_ptr) { in ndmp_door_put_short()
246 (void) memcpy(ctx->ptr, &num, sizeof (short)); in ndmp_door_put_short()
247 ctx->ptr += sizeof (short); in ndmp_door_put_short()
249 ctx->status = ENOSPC; in ndmp_door_put_short()
255 ndmp_door_get_short(ndmp_door_ctx_t *ctx) in ndmp_door_get_short() argument
258 if (ctx->status == 0) { in ndmp_door_get_short()
259 if (ctx->ptr + sizeof (short) <= ctx->end_ptr) { in ndmp_door_get_short()
260 (void) memcpy(&num, ctx->ptr, sizeof (short)); in ndmp_door_get_short()
261 ctx->ptr += sizeof (short); in ndmp_door_get_short()
263 ctx->status = ENOSPC; in ndmp_door_get_short()
270 ndmp_door_put_ushort(ndmp_door_ctx_t *ctx, unsigned short num) in ndmp_door_put_ushort() argument
272 ndmp_door_put_short(ctx, (short)num); in ndmp_door_put_ushort()
276 ndmp_door_get_ushort(ndmp_door_ctx_t *ctx) in ndmp_door_get_ushort() argument
278 return ((unsigned short)ndmp_door_get_short(ctx)); in ndmp_door_get_ushort()
282 ndmp_door_put_buf(ndmp_door_ctx_t *ctx, unsigned char *start, int len) in ndmp_door_put_buf() argument
284 ndmp_door_put_int32(ctx, len); in ndmp_door_put_buf()
285 if (ctx->status == 0) { in ndmp_door_put_buf()
286 if (ctx->ptr + len <= ctx->end_ptr) { in ndmp_door_put_buf()
287 (void) memcpy(ctx->ptr, start, len); in ndmp_door_put_buf()
288 ctx->ptr += len; in ndmp_door_put_buf()
290 ctx->status = ENOSPC; in ndmp_door_put_buf()
296 ndmp_door_get_buf(ndmp_door_ctx_t *ctx, unsigned char *buf, int bufsize) in ndmp_door_get_buf() argument
303 len = ndmp_door_get_int32(ctx); in ndmp_door_get_buf()
304 if (ctx->status == 0) { in ndmp_door_get_buf()
306 ctx->status = ENOSPC; in ndmp_door_get_buf()
310 if (ctx->ptr + len <= ctx->end_ptr) { in ndmp_door_get_buf()
311 (void) memcpy(buf, ctx->ptr, len); in ndmp_door_get_buf()
312 ctx->ptr += len; in ndmp_door_get_buf()
314 ctx->status = ENOSPC; in ndmp_door_get_buf()