Lines Matching +full:frame +full:- +full:buffer
2 * dnstap/dnstap_fstrm.h - Frame Streams protocol for dnstap
40 * Definitions for the Frame Streams data transport protocol for
47 /* Frame Streams data transfer protocol encode for DNSTAP messages.
54 * The Frame Streams can be unidirectional or bi-directional.
55 * bi-directional streams use control frame types READY, ACCEPT and FINISH.
56 * uni-directional streams use control frame types START and STOP.
57 * unknown control frame types should be ignored by the receiver, they
58 * do not change the data frame encoding.
60 * bi-directional control frames implement a simple handshake protocol
63 * The uni-directional control frames have one start and one stop frame,
64 * before and after the data. The start frame can have a content type.
69 * signals the presence of a control frame.
71 * a control frame consists of 0 value in 4byte bigendian, this is really
72 * the data frame length, with 0 the escape sequence that indicates one
73 * control frame follows.
74 * Then, 4byte bigendian, length of the control frame message.
75 * Then, the control frame payload (of that length). with in it:
79 * 4byte bigendian, the control-field-type, currently only content-type.
84 * control frame max frame length 512 (excludes the 0-escape and control
85 * frame length bytes).
93 * client waits for FINISH frame.
97 /** max length of Frame Streams content type field string */
99 /** control frame value to denote the control frame ACCEPT */
101 /** control frame value to denote the control frame START */
103 /** control frame value to denote the control frame STOP */
105 /** control frame value to denote the control frame READY */
107 /** control frame value to denote the control frame FINISH */
112 /** the content type for DNSTAP frame streams */
116 * This creates an FSTRM control frame of type START.
119 * "protobuf:dnstap.Dnstap", for a dnstap frame stream.
120 * @param len: if a buffer is returned this is the length of that buffer.
121 * @return NULL on malloc failure. Returns a malloced buffer with the
122 * protocol message. The buffer starts with the 4 bytes of 0 that indicate
123 * a control frame. The buffer should be sent without preceding it with
125 * buffer, because the lengths are included in the buffer. This is so that
126 * the zero control indicator can be included before the control frame length.
131 * This creates an FSTRM control frame of type READY.
134 * "protobuf:dnstap.Dnstap", for a dnstap frame stream.
135 * @param len: if a buffer is returned this is the length of that buffer.
136 * @return NULL on malloc failure. Returns a malloced buffer with the
137 * protocol message. The buffer starts with the 4 bytes of 0 that indicate
138 * a control frame. The buffer should be sent without preceding it with
140 * buffer, because the lengths are included in the buffer. This is so that
141 * the zero control indicator can be included before the control frame length.
146 * This creates an FSTRM control frame of type STOP.
147 * @param len: if a buffer is returned this is the length of that buffer.
148 * @return NULL on malloc failure. Returns a malloced buffer with the
149 * protocol message. The buffer starts with the 4 bytes of 0 that indicate
150 * a control frame. The buffer should be sent without preceding it with
152 * buffer, because the lengths are included in the buffer. This is so that
153 * the zero control indicator can be included before the control frame length.
158 * This creates an FSTRM control frame of type ACCEPT.
161 * @param len: if a buffer is returned this is the length of that buffer.
162 * @return NULL on malloc failure. Returns a malloced buffer with the
163 * protocol message. The buffer starts with the 4 bytes of 0 that indicate
164 * a control frame. The buffer should be sent without preceding it with
166 * buffer, because the lengths are included in the buffer. This is so that
167 * the zero control indicator can be included before the control frame length.
172 * This creates an FSTRM control frame of type FINISH.
173 * @param len: if a buffer is returned this is the length of that buffer.
174 * @return NULL on malloc failure. Returns a malloced buffer with the
175 * protocol message. The buffer starts with the 4 bytes of 0 that indicate
176 * a control frame. The buffer should be sent without preceding it with
178 * buffer, because the lengths are included in the buffer. This is so that
179 * the zero control indicator can be included before the control frame length.
185 * Like 'start content-type(protobuf:dnstap.Dnstap)' or 'stop'.