xref: /linux/net/9p/protocol.h (revision c532de5a67a70f8533d495f8f2aaa9a0491c3ad0)
1 /* SPDX-License-Identifier: GPL-2.0-only */
2 /*
3  * 9P Protocol Support Code
4  *
5  *  Copyright (C) 2008 by Eric Van Hensbergen <ericvh@gmail.com>
6  *
7  *  Base on code from Anthony Liguori <aliguori@us.ibm.com>
8  *  Copyright (C) 2008 by IBM, Corp.
9  */
10 
11 size_t p9_msg_buf_size(struct p9_client *c, enum p9_msg_t type,
12 			const char *fmt, va_list ap);
13 int p9pdu_vwritef(struct p9_fcall *pdu, int proto_version, const char *fmt,
14 		  va_list ap);
15 int p9pdu_readf(struct p9_fcall *pdu, int proto_version, const char *fmt, ...);
16 int p9pdu_prepare(struct p9_fcall *pdu, int16_t tag, int8_t type);
17 int p9pdu_finalize(struct p9_client *clnt, struct p9_fcall *pdu);
18 void p9pdu_reset(struct p9_fcall *pdu);
19 size_t pdu_read(struct p9_fcall *pdu, void *data, size_t size);
20