suricata
util-lua-dnp3-objects.c
Go to the documentation of this file.
1 /* Copyright (C) 2015 Open Information Security Foundation
2  *
3  * You can copy, redistribute or modify this Program under the terms of
4  * the GNU General Public License version 2 as published by the Free
5  * Software Foundation.
6  *
7  * This program is distributed in the hope that it will be useful,
8  * but WITHOUT ANY WARRANTY; without even the implied warranty of
9  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
10  * GNU General Public License for more details.
11  *
12  * You should have received a copy of the GNU General Public License
13  * version 2 along with this program; if not, write to the Free Software
14  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
15  * 02110-1301, USA.
16  */
17 
18 /**
19  * DO NOT EDIT. THIS FILE IS AUTO-GENERATED.
20  *
21  * Generated by command:
22  * ./scripts/dnp3-gen/dnp3-gen.py
23  */
24 
25 #include "suricata-common.h"
26 
27 #include "app-layer-dnp3.h"
28 #include "app-layer-dnp3-objects.h"
29 
30 #ifdef HAVE_LUA
31 
32 #include <lua.h>
33 #include <lualib.h>
34 #include <lauxlib.h>
35 
36 #include "util-lua.h"
37 #include "util-lua-dnp3-objects.h"
38 
39 /**
40  * \brief Push an object point item onto the stack.
41  */
42 void DNP3PushPoint(lua_State *luastate, DNP3Object *object,
43  DNP3Point *point)
44 {
45  switch (DNP3_OBJECT_CODE(object->group, object->variation)) {
46  case DNP3_OBJECT_CODE(1, 1): {
47  DNP3ObjectG1V1 *data = point->data;
48  lua_pushliteral(luastate, "state");
49  lua_pushinteger(luastate, data->state);
50  lua_settable(luastate, -3);
51  break;
52  }
53  case DNP3_OBJECT_CODE(1, 2): {
54  DNP3ObjectG1V2 *data = point->data;
55  lua_pushliteral(luastate, "online");
56  lua_pushinteger(luastate, data->online);
57  lua_settable(luastate, -3);
58  lua_pushliteral(luastate, "restart");
59  lua_pushinteger(luastate, data->restart);
60  lua_settable(luastate, -3);
61  lua_pushliteral(luastate, "comm_lost");
62  lua_pushinteger(luastate, data->comm_lost);
63  lua_settable(luastate, -3);
64  lua_pushliteral(luastate, "remote_forced");
65  lua_pushinteger(luastate, data->remote_forced);
66  lua_settable(luastate, -3);
67  lua_pushliteral(luastate, "local_forced");
68  lua_pushinteger(luastate, data->local_forced);
69  lua_settable(luastate, -3);
70  lua_pushliteral(luastate, "chatter_filter");
71  lua_pushinteger(luastate, data->chatter_filter);
72  lua_settable(luastate, -3);
73  lua_pushliteral(luastate, "reserved");
74  lua_pushinteger(luastate, data->reserved);
75  lua_settable(luastate, -3);
76  lua_pushliteral(luastate, "state");
77  lua_pushinteger(luastate, data->state);
78  lua_settable(luastate, -3);
79  break;
80  }
81  case DNP3_OBJECT_CODE(2, 1): {
82  DNP3ObjectG2V1 *data = point->data;
83  lua_pushliteral(luastate, "state");
84  lua_pushinteger(luastate, data->state);
85  lua_settable(luastate, -3);
86  break;
87  }
88  case DNP3_OBJECT_CODE(2, 2): {
89  DNP3ObjectG2V2 *data = point->data;
90  lua_pushliteral(luastate, "online");
91  lua_pushinteger(luastate, data->online);
92  lua_settable(luastate, -3);
93  lua_pushliteral(luastate, "restart");
94  lua_pushinteger(luastate, data->restart);
95  lua_settable(luastate, -3);
96  lua_pushliteral(luastate, "comm_lost");
97  lua_pushinteger(luastate, data->comm_lost);
98  lua_settable(luastate, -3);
99  lua_pushliteral(luastate, "remote_forced");
100  lua_pushinteger(luastate, data->remote_forced);
101  lua_settable(luastate, -3);
102  lua_pushliteral(luastate, "local_forced");
103  lua_pushinteger(luastate, data->local_forced);
104  lua_settable(luastate, -3);
105  lua_pushliteral(luastate, "chatter_filter");
106  lua_pushinteger(luastate, data->chatter_filter);
107  lua_settable(luastate, -3);
108  lua_pushliteral(luastate, "reserved");
109  lua_pushinteger(luastate, data->reserved);
110  lua_settable(luastate, -3);
111  lua_pushliteral(luastate, "state");
112  lua_pushinteger(luastate, data->state);
113  lua_settable(luastate, -3);
114  lua_pushliteral(luastate, "timestamp");
115  lua_pushinteger(luastate, data->timestamp);
116  lua_settable(luastate, -3);
117  break;
118  }
119  case DNP3_OBJECT_CODE(2, 3): {
120  DNP3ObjectG2V3 *data = point->data;
121  lua_pushliteral(luastate, "online");
122  lua_pushinteger(luastate, data->online);
123  lua_settable(luastate, -3);
124  lua_pushliteral(luastate, "restart");
125  lua_pushinteger(luastate, data->restart);
126  lua_settable(luastate, -3);
127  lua_pushliteral(luastate, "comm_lost");
128  lua_pushinteger(luastate, data->comm_lost);
129  lua_settable(luastate, -3);
130  lua_pushliteral(luastate, "remote_forced");
131  lua_pushinteger(luastate, data->remote_forced);
132  lua_settable(luastate, -3);
133  lua_pushliteral(luastate, "local_forced");
134  lua_pushinteger(luastate, data->local_forced);
135  lua_settable(luastate, -3);
136  lua_pushliteral(luastate, "chatter_filter");
137  lua_pushinteger(luastate, data->chatter_filter);
138  lua_settable(luastate, -3);
139  lua_pushliteral(luastate, "reserved");
140  lua_pushinteger(luastate, data->reserved);
141  lua_settable(luastate, -3);
142  lua_pushliteral(luastate, "state");
143  lua_pushinteger(luastate, data->state);
144  lua_settable(luastate, -3);
145  lua_pushliteral(luastate, "timestamp");
146  lua_pushinteger(luastate, data->timestamp);
147  lua_settable(luastate, -3);
148  break;
149  }
150  case DNP3_OBJECT_CODE(3, 1): {
151  DNP3ObjectG3V1 *data = point->data;
152  lua_pushliteral(luastate, "state");
153  lua_pushinteger(luastate, data->state);
154  lua_settable(luastate, -3);
155  break;
156  }
157  case DNP3_OBJECT_CODE(3, 2): {
158  DNP3ObjectG3V2 *data = point->data;
159  lua_pushliteral(luastate, "online");
160  lua_pushinteger(luastate, data->online);
161  lua_settable(luastate, -3);
162  lua_pushliteral(luastate, "restart");
163  lua_pushinteger(luastate, data->restart);
164  lua_settable(luastate, -3);
165  lua_pushliteral(luastate, "comm_lost");
166  lua_pushinteger(luastate, data->comm_lost);
167  lua_settable(luastate, -3);
168  lua_pushliteral(luastate, "remote_forced");
169  lua_pushinteger(luastate, data->remote_forced);
170  lua_settable(luastate, -3);
171  lua_pushliteral(luastate, "local_forced");
172  lua_pushinteger(luastate, data->local_forced);
173  lua_settable(luastate, -3);
174  lua_pushliteral(luastate, "chatter_filter");
175  lua_pushinteger(luastate, data->chatter_filter);
176  lua_settable(luastate, -3);
177  lua_pushliteral(luastate, "state");
178  lua_pushinteger(luastate, data->state);
179  lua_settable(luastate, -3);
180  break;
181  }
182  case DNP3_OBJECT_CODE(4, 1): {
183  DNP3ObjectG4V1 *data = point->data;
184  lua_pushliteral(luastate, "online");
185  lua_pushinteger(luastate, data->online);
186  lua_settable(luastate, -3);
187  lua_pushliteral(luastate, "restart");
188  lua_pushinteger(luastate, data->restart);
189  lua_settable(luastate, -3);
190  lua_pushliteral(luastate, "comm_lost");
191  lua_pushinteger(luastate, data->comm_lost);
192  lua_settable(luastate, -3);
193  lua_pushliteral(luastate, "remote_forced");
194  lua_pushinteger(luastate, data->remote_forced);
195  lua_settable(luastate, -3);
196  lua_pushliteral(luastate, "local_forced");
197  lua_pushinteger(luastate, data->local_forced);
198  lua_settable(luastate, -3);
199  lua_pushliteral(luastate, "chatter_filter");
200  lua_pushinteger(luastate, data->chatter_filter);
201  lua_settable(luastate, -3);
202  lua_pushliteral(luastate, "state");
203  lua_pushinteger(luastate, data->state);
204  lua_settable(luastate, -3);
205  break;
206  }
207  case DNP3_OBJECT_CODE(4, 2): {
208  DNP3ObjectG4V2 *data = point->data;
209  lua_pushliteral(luastate, "online");
210  lua_pushinteger(luastate, data->online);
211  lua_settable(luastate, -3);
212  lua_pushliteral(luastate, "restart");
213  lua_pushinteger(luastate, data->restart);
214  lua_settable(luastate, -3);
215  lua_pushliteral(luastate, "comm_lost");
216  lua_pushinteger(luastate, data->comm_lost);
217  lua_settable(luastate, -3);
218  lua_pushliteral(luastate, "remote_forced");
219  lua_pushinteger(luastate, data->remote_forced);
220  lua_settable(luastate, -3);
221  lua_pushliteral(luastate, "local_forced");
222  lua_pushinteger(luastate, data->local_forced);
223  lua_settable(luastate, -3);
224  lua_pushliteral(luastate, "chatter_filter");
225  lua_pushinteger(luastate, data->chatter_filter);
226  lua_settable(luastate, -3);
227  lua_pushliteral(luastate, "state");
228  lua_pushinteger(luastate, data->state);
229  lua_settable(luastate, -3);
230  lua_pushliteral(luastate, "timestamp");
231  lua_pushinteger(luastate, data->timestamp);
232  lua_settable(luastate, -3);
233  break;
234  }
235  case DNP3_OBJECT_CODE(4, 3): {
236  DNP3ObjectG4V3 *data = point->data;
237  lua_pushliteral(luastate, "online");
238  lua_pushinteger(luastate, data->online);
239  lua_settable(luastate, -3);
240  lua_pushliteral(luastate, "restart");
241  lua_pushinteger(luastate, data->restart);
242  lua_settable(luastate, -3);
243  lua_pushliteral(luastate, "comm_lost");
244  lua_pushinteger(luastate, data->comm_lost);
245  lua_settable(luastate, -3);
246  lua_pushliteral(luastate, "remote_forced");
247  lua_pushinteger(luastate, data->remote_forced);
248  lua_settable(luastate, -3);
249  lua_pushliteral(luastate, "local_forced");
250  lua_pushinteger(luastate, data->local_forced);
251  lua_settable(luastate, -3);
252  lua_pushliteral(luastate, "chatter_filter");
253  lua_pushinteger(luastate, data->chatter_filter);
254  lua_settable(luastate, -3);
255  lua_pushliteral(luastate, "state");
256  lua_pushinteger(luastate, data->state);
257  lua_settable(luastate, -3);
258  lua_pushliteral(luastate, "relative_time_ms");
259  lua_pushinteger(luastate, data->relative_time_ms);
260  lua_settable(luastate, -3);
261  break;
262  }
263  case DNP3_OBJECT_CODE(10, 1): {
264  DNP3ObjectG10V1 *data = point->data;
265  lua_pushliteral(luastate, "state");
266  lua_pushinteger(luastate, data->state);
267  lua_settable(luastate, -3);
268  break;
269  }
270  case DNP3_OBJECT_CODE(10, 2): {
271  DNP3ObjectG10V2 *data = point->data;
272  lua_pushliteral(luastate, "online");
273  lua_pushinteger(luastate, data->online);
274  lua_settable(luastate, -3);
275  lua_pushliteral(luastate, "restart");
276  lua_pushinteger(luastate, data->restart);
277  lua_settable(luastate, -3);
278  lua_pushliteral(luastate, "comm_lost");
279  lua_pushinteger(luastate, data->comm_lost);
280  lua_settable(luastate, -3);
281  lua_pushliteral(luastate, "remote_forced");
282  lua_pushinteger(luastate, data->remote_forced);
283  lua_settable(luastate, -3);
284  lua_pushliteral(luastate, "local_forced");
285  lua_pushinteger(luastate, data->local_forced);
286  lua_settable(luastate, -3);
287  lua_pushliteral(luastate, "reserved0");
288  lua_pushinteger(luastate, data->reserved0);
289  lua_settable(luastate, -3);
290  lua_pushliteral(luastate, "reserved1");
291  lua_pushinteger(luastate, data->reserved1);
292  lua_settable(luastate, -3);
293  lua_pushliteral(luastate, "state");
294  lua_pushinteger(luastate, data->state);
295  lua_settable(luastate, -3);
296  break;
297  }
298  case DNP3_OBJECT_CODE(11, 1): {
299  DNP3ObjectG11V1 *data = point->data;
300  lua_pushliteral(luastate, "online");
301  lua_pushinteger(luastate, data->online);
302  lua_settable(luastate, -3);
303  lua_pushliteral(luastate, "restart");
304  lua_pushinteger(luastate, data->restart);
305  lua_settable(luastate, -3);
306  lua_pushliteral(luastate, "comm_lost");
307  lua_pushinteger(luastate, data->comm_lost);
308  lua_settable(luastate, -3);
309  lua_pushliteral(luastate, "remote_forced");
310  lua_pushinteger(luastate, data->remote_forced);
311  lua_settable(luastate, -3);
312  lua_pushliteral(luastate, "local_forced");
313  lua_pushinteger(luastate, data->local_forced);
314  lua_settable(luastate, -3);
315  lua_pushliteral(luastate, "reserved0");
316  lua_pushinteger(luastate, data->reserved0);
317  lua_settable(luastate, -3);
318  lua_pushliteral(luastate, "reserved1");
319  lua_pushinteger(luastate, data->reserved1);
320  lua_settable(luastate, -3);
321  lua_pushliteral(luastate, "state");
322  lua_pushinteger(luastate, data->state);
323  lua_settable(luastate, -3);
324  break;
325  }
326  case DNP3_OBJECT_CODE(11, 2): {
327  DNP3ObjectG11V2 *data = point->data;
328  lua_pushliteral(luastate, "online");
329  lua_pushinteger(luastate, data->online);
330  lua_settable(luastate, -3);
331  lua_pushliteral(luastate, "restart");
332  lua_pushinteger(luastate, data->restart);
333  lua_settable(luastate, -3);
334  lua_pushliteral(luastate, "comm_lost");
335  lua_pushinteger(luastate, data->comm_lost);
336  lua_settable(luastate, -3);
337  lua_pushliteral(luastate, "remote_forced");
338  lua_pushinteger(luastate, data->remote_forced);
339  lua_settable(luastate, -3);
340  lua_pushliteral(luastate, "local_forced");
341  lua_pushinteger(luastate, data->local_forced);
342  lua_settable(luastate, -3);
343  lua_pushliteral(luastate, "reserved0");
344  lua_pushinteger(luastate, data->reserved0);
345  lua_settable(luastate, -3);
346  lua_pushliteral(luastate, "reserved1");
347  lua_pushinteger(luastate, data->reserved1);
348  lua_settable(luastate, -3);
349  lua_pushliteral(luastate, "state");
350  lua_pushinteger(luastate, data->state);
351  lua_settable(luastate, -3);
352  lua_pushliteral(luastate, "timestamp");
353  lua_pushinteger(luastate, data->timestamp);
354  lua_settable(luastate, -3);
355  break;
356  }
357  case DNP3_OBJECT_CODE(12, 1): {
358  DNP3ObjectG12V1 *data = point->data;
359  lua_pushliteral(luastate, "op_type");
360  lua_pushinteger(luastate, data->op_type);
361  lua_settable(luastate, -3);
362  lua_pushliteral(luastate, "qu");
363  lua_pushinteger(luastate, data->qu);
364  lua_settable(luastate, -3);
365  lua_pushliteral(luastate, "cr");
366  lua_pushinteger(luastate, data->cr);
367  lua_settable(luastate, -3);
368  lua_pushliteral(luastate, "tcc");
369  lua_pushinteger(luastate, data->tcc);
370  lua_settable(luastate, -3);
371  lua_pushliteral(luastate, "count");
372  lua_pushinteger(luastate, data->count);
373  lua_settable(luastate, -3);
374  lua_pushliteral(luastate, "ontime");
375  lua_pushinteger(luastate, data->ontime);
376  lua_settable(luastate, -3);
377  lua_pushliteral(luastate, "offtime");
378  lua_pushinteger(luastate, data->offtime);
379  lua_settable(luastate, -3);
380  lua_pushliteral(luastate, "status_code");
381  lua_pushinteger(luastate, data->status_code);
382  lua_settable(luastate, -3);
383  lua_pushliteral(luastate, "reserved");
384  lua_pushinteger(luastate, data->reserved);
385  lua_settable(luastate, -3);
386  break;
387  }
388  case DNP3_OBJECT_CODE(12, 2): {
389  DNP3ObjectG12V2 *data = point->data;
390  lua_pushliteral(luastate, "op_type");
391  lua_pushinteger(luastate, data->op_type);
392  lua_settable(luastate, -3);
393  lua_pushliteral(luastate, "qu");
394  lua_pushinteger(luastate, data->qu);
395  lua_settable(luastate, -3);
396  lua_pushliteral(luastate, "cr");
397  lua_pushinteger(luastate, data->cr);
398  lua_settable(luastate, -3);
399  lua_pushliteral(luastate, "tcc");
400  lua_pushinteger(luastate, data->tcc);
401  lua_settable(luastate, -3);
402  lua_pushliteral(luastate, "count");
403  lua_pushinteger(luastate, data->count);
404  lua_settable(luastate, -3);
405  lua_pushliteral(luastate, "ontime");
406  lua_pushinteger(luastate, data->ontime);
407  lua_settable(luastate, -3);
408  lua_pushliteral(luastate, "offtime");
409  lua_pushinteger(luastate, data->offtime);
410  lua_settable(luastate, -3);
411  lua_pushliteral(luastate, "status_code");
412  lua_pushinteger(luastate, data->status_code);
413  lua_settable(luastate, -3);
414  lua_pushliteral(luastate, "reserved");
415  lua_pushinteger(luastate, data->reserved);
416  lua_settable(luastate, -3);
417  break;
418  }
419  case DNP3_OBJECT_CODE(12, 3): {
420  DNP3ObjectG12V3 *data = point->data;
421  lua_pushliteral(luastate, "point");
422  lua_pushinteger(luastate, data->point);
423  lua_settable(luastate, -3);
424  break;
425  }
426  case DNP3_OBJECT_CODE(13, 1): {
427  DNP3ObjectG13V1 *data = point->data;
428  lua_pushliteral(luastate, "status_code");
429  lua_pushinteger(luastate, data->status_code);
430  lua_settable(luastate, -3);
431  lua_pushliteral(luastate, "commanded_state");
432  lua_pushinteger(luastate, data->commanded_state);
433  lua_settable(luastate, -3);
434  break;
435  }
436  case DNP3_OBJECT_CODE(13, 2): {
437  DNP3ObjectG13V2 *data = point->data;
438  lua_pushliteral(luastate, "status_code");
439  lua_pushinteger(luastate, data->status_code);
440  lua_settable(luastate, -3);
441  lua_pushliteral(luastate, "commanded_state");
442  lua_pushinteger(luastate, data->commanded_state);
443  lua_settable(luastate, -3);
444  lua_pushliteral(luastate, "timestamp");
445  lua_pushinteger(luastate, data->timestamp);
446  lua_settable(luastate, -3);
447  break;
448  }
449  case DNP3_OBJECT_CODE(20, 1): {
450  DNP3ObjectG20V1 *data = point->data;
451  lua_pushliteral(luastate, "online");
452  lua_pushinteger(luastate, data->online);
453  lua_settable(luastate, -3);
454  lua_pushliteral(luastate, "restart");
455  lua_pushinteger(luastate, data->restart);
456  lua_settable(luastate, -3);
457  lua_pushliteral(luastate, "comm_lost");
458  lua_pushinteger(luastate, data->comm_lost);
459  lua_settable(luastate, -3);
460  lua_pushliteral(luastate, "remote_forced");
461  lua_pushinteger(luastate, data->remote_forced);
462  lua_settable(luastate, -3);
463  lua_pushliteral(luastate, "local_forced");
464  lua_pushinteger(luastate, data->local_forced);
465  lua_settable(luastate, -3);
466  lua_pushliteral(luastate, "rollover");
467  lua_pushinteger(luastate, data->rollover);
468  lua_settable(luastate, -3);
469  lua_pushliteral(luastate, "discontinuity");
470  lua_pushinteger(luastate, data->discontinuity);
471  lua_settable(luastate, -3);
472  lua_pushliteral(luastate, "reserved0");
473  lua_pushinteger(luastate, data->reserved0);
474  lua_settable(luastate, -3);
475  lua_pushliteral(luastate, "count");
476  lua_pushinteger(luastate, data->count);
477  lua_settable(luastate, -3);
478  break;
479  }
480  case DNP3_OBJECT_CODE(20, 2): {
481  DNP3ObjectG20V2 *data = point->data;
482  lua_pushliteral(luastate, "online");
483  lua_pushinteger(luastate, data->online);
484  lua_settable(luastate, -3);
485  lua_pushliteral(luastate, "restart");
486  lua_pushinteger(luastate, data->restart);
487  lua_settable(luastate, -3);
488  lua_pushliteral(luastate, "comm_lost");
489  lua_pushinteger(luastate, data->comm_lost);
490  lua_settable(luastate, -3);
491  lua_pushliteral(luastate, "remote_forced");
492  lua_pushinteger(luastate, data->remote_forced);
493  lua_settable(luastate, -3);
494  lua_pushliteral(luastate, "local_forced");
495  lua_pushinteger(luastate, data->local_forced);
496  lua_settable(luastate, -3);
497  lua_pushliteral(luastate, "rollover");
498  lua_pushinteger(luastate, data->rollover);
499  lua_settable(luastate, -3);
500  lua_pushliteral(luastate, "discontinuity");
501  lua_pushinteger(luastate, data->discontinuity);
502  lua_settable(luastate, -3);
503  lua_pushliteral(luastate, "reserved0");
504  lua_pushinteger(luastate, data->reserved0);
505  lua_settable(luastate, -3);
506  lua_pushliteral(luastate, "count");
507  lua_pushinteger(luastate, data->count);
508  lua_settable(luastate, -3);
509  break;
510  }
511  case DNP3_OBJECT_CODE(20, 3): {
512  DNP3ObjectG20V3 *data = point->data;
513  lua_pushliteral(luastate, "online");
514  lua_pushinteger(luastate, data->online);
515  lua_settable(luastate, -3);
516  lua_pushliteral(luastate, "restart");
517  lua_pushinteger(luastate, data->restart);
518  lua_settable(luastate, -3);
519  lua_pushliteral(luastate, "comm_lost");
520  lua_pushinteger(luastate, data->comm_lost);
521  lua_settable(luastate, -3);
522  lua_pushliteral(luastate, "remote_forced");
523  lua_pushinteger(luastate, data->remote_forced);
524  lua_settable(luastate, -3);
525  lua_pushliteral(luastate, "local_forced");
526  lua_pushinteger(luastate, data->local_forced);
527  lua_settable(luastate, -3);
528  lua_pushliteral(luastate, "rollover");
529  lua_pushinteger(luastate, data->rollover);
530  lua_settable(luastate, -3);
531  lua_pushliteral(luastate, "reserved0");
532  lua_pushinteger(luastate, data->reserved0);
533  lua_settable(luastate, -3);
534  lua_pushliteral(luastate, "reserved1");
535  lua_pushinteger(luastate, data->reserved1);
536  lua_settable(luastate, -3);
537  lua_pushliteral(luastate, "count");
538  lua_pushinteger(luastate, data->count);
539  lua_settable(luastate, -3);
540  break;
541  }
542  case DNP3_OBJECT_CODE(20, 4): {
543  DNP3ObjectG20V4 *data = point->data;
544  lua_pushliteral(luastate, "online");
545  lua_pushinteger(luastate, data->online);
546  lua_settable(luastate, -3);
547  lua_pushliteral(luastate, "restart");
548  lua_pushinteger(luastate, data->restart);
549  lua_settable(luastate, -3);
550  lua_pushliteral(luastate, "comm_lost");
551  lua_pushinteger(luastate, data->comm_lost);
552  lua_settable(luastate, -3);
553  lua_pushliteral(luastate, "remote_forced");
554  lua_pushinteger(luastate, data->remote_forced);
555  lua_settable(luastate, -3);
556  lua_pushliteral(luastate, "local_forced");
557  lua_pushinteger(luastate, data->local_forced);
558  lua_settable(luastate, -3);
559  lua_pushliteral(luastate, "rollover");
560  lua_pushinteger(luastate, data->rollover);
561  lua_settable(luastate, -3);
562  lua_pushliteral(luastate, "reserved0");
563  lua_pushinteger(luastate, data->reserved0);
564  lua_settable(luastate, -3);
565  lua_pushliteral(luastate, "reserved1");
566  lua_pushinteger(luastate, data->reserved1);
567  lua_settable(luastate, -3);
568  lua_pushliteral(luastate, "count");
569  lua_pushinteger(luastate, data->count);
570  lua_settable(luastate, -3);
571  break;
572  }
573  case DNP3_OBJECT_CODE(20, 5): {
574  DNP3ObjectG20V5 *data = point->data;
575  lua_pushliteral(luastate, "count");
576  lua_pushinteger(luastate, data->count);
577  lua_settable(luastate, -3);
578  break;
579  }
580  case DNP3_OBJECT_CODE(20, 6): {
581  DNP3ObjectG20V6 *data = point->data;
582  lua_pushliteral(luastate, "count");
583  lua_pushinteger(luastate, data->count);
584  lua_settable(luastate, -3);
585  break;
586  }
587  case DNP3_OBJECT_CODE(20, 7): {
588  DNP3ObjectG20V7 *data = point->data;
589  lua_pushliteral(luastate, "count");
590  lua_pushinteger(luastate, data->count);
591  lua_settable(luastate, -3);
592  break;
593  }
594  case DNP3_OBJECT_CODE(20, 8): {
595  DNP3ObjectG20V8 *data = point->data;
596  lua_pushliteral(luastate, "count");
597  lua_pushinteger(luastate, data->count);
598  lua_settable(luastate, -3);
599  break;
600  }
601  case DNP3_OBJECT_CODE(21, 1): {
602  DNP3ObjectG21V1 *data = point->data;
603  lua_pushliteral(luastate, "online");
604  lua_pushinteger(luastate, data->online);
605  lua_settable(luastate, -3);
606  lua_pushliteral(luastate, "restart");
607  lua_pushinteger(luastate, data->restart);
608  lua_settable(luastate, -3);
609  lua_pushliteral(luastate, "comm_lost");
610  lua_pushinteger(luastate, data->comm_lost);
611  lua_settable(luastate, -3);
612  lua_pushliteral(luastate, "remote_forced");
613  lua_pushinteger(luastate, data->remote_forced);
614  lua_settable(luastate, -3);
615  lua_pushliteral(luastate, "local_forced");
616  lua_pushinteger(luastate, data->local_forced);
617  lua_settable(luastate, -3);
618  lua_pushliteral(luastate, "rollover");
619  lua_pushinteger(luastate, data->rollover);
620  lua_settable(luastate, -3);
621  lua_pushliteral(luastate, "discontinuity");
622  lua_pushinteger(luastate, data->discontinuity);
623  lua_settable(luastate, -3);
624  lua_pushliteral(luastate, "reserved0");
625  lua_pushinteger(luastate, data->reserved0);
626  lua_settable(luastate, -3);
627  lua_pushliteral(luastate, "count");
628  lua_pushinteger(luastate, data->count);
629  lua_settable(luastate, -3);
630  break;
631  }
632  case DNP3_OBJECT_CODE(21, 2): {
633  DNP3ObjectG21V2 *data = point->data;
634  lua_pushliteral(luastate, "online");
635  lua_pushinteger(luastate, data->online);
636  lua_settable(luastate, -3);
637  lua_pushliteral(luastate, "restart");
638  lua_pushinteger(luastate, data->restart);
639  lua_settable(luastate, -3);
640  lua_pushliteral(luastate, "comm_lost");
641  lua_pushinteger(luastate, data->comm_lost);
642  lua_settable(luastate, -3);
643  lua_pushliteral(luastate, "remote_forced");
644  lua_pushinteger(luastate, data->remote_forced);
645  lua_settable(luastate, -3);
646  lua_pushliteral(luastate, "local_forced");
647  lua_pushinteger(luastate, data->local_forced);
648  lua_settable(luastate, -3);
649  lua_pushliteral(luastate, "rollover");
650  lua_pushinteger(luastate, data->rollover);
651  lua_settable(luastate, -3);
652  lua_pushliteral(luastate, "discontinuity");
653  lua_pushinteger(luastate, data->discontinuity);
654  lua_settable(luastate, -3);
655  lua_pushliteral(luastate, "reserved0");
656  lua_pushinteger(luastate, data->reserved0);
657  lua_settable(luastate, -3);
658  lua_pushliteral(luastate, "count");
659  lua_pushinteger(luastate, data->count);
660  lua_settable(luastate, -3);
661  break;
662  }
663  case DNP3_OBJECT_CODE(21, 3): {
664  DNP3ObjectG21V3 *data = point->data;
665  lua_pushliteral(luastate, "online");
666  lua_pushinteger(luastate, data->online);
667  lua_settable(luastate, -3);
668  lua_pushliteral(luastate, "restart");
669  lua_pushinteger(luastate, data->restart);
670  lua_settable(luastate, -3);
671  lua_pushliteral(luastate, "comm_lost");
672  lua_pushinteger(luastate, data->comm_lost);
673  lua_settable(luastate, -3);
674  lua_pushliteral(luastate, "remote_forced");
675  lua_pushinteger(luastate, data->remote_forced);
676  lua_settable(luastate, -3);
677  lua_pushliteral(luastate, "local_forced");
678  lua_pushinteger(luastate, data->local_forced);
679  lua_settable(luastate, -3);
680  lua_pushliteral(luastate, "rollover");
681  lua_pushinteger(luastate, data->rollover);
682  lua_settable(luastate, -3);
683  lua_pushliteral(luastate, "reserved0");
684  lua_pushinteger(luastate, data->reserved0);
685  lua_settable(luastate, -3);
686  lua_pushliteral(luastate, "reserved1");
687  lua_pushinteger(luastate, data->reserved1);
688  lua_settable(luastate, -3);
689  lua_pushliteral(luastate, "count");
690  lua_pushinteger(luastate, data->count);
691  lua_settable(luastate, -3);
692  break;
693  }
694  case DNP3_OBJECT_CODE(21, 4): {
695  DNP3ObjectG21V4 *data = point->data;
696  lua_pushliteral(luastate, "online");
697  lua_pushinteger(luastate, data->online);
698  lua_settable(luastate, -3);
699  lua_pushliteral(luastate, "restart");
700  lua_pushinteger(luastate, data->restart);
701  lua_settable(luastate, -3);
702  lua_pushliteral(luastate, "comm_lost");
703  lua_pushinteger(luastate, data->comm_lost);
704  lua_settable(luastate, -3);
705  lua_pushliteral(luastate, "remote_forced");
706  lua_pushinteger(luastate, data->remote_forced);
707  lua_settable(luastate, -3);
708  lua_pushliteral(luastate, "local_forced");
709  lua_pushinteger(luastate, data->local_forced);
710  lua_settable(luastate, -3);
711  lua_pushliteral(luastate, "rollover");
712  lua_pushinteger(luastate, data->rollover);
713  lua_settable(luastate, -3);
714  lua_pushliteral(luastate, "reserved0");
715  lua_pushinteger(luastate, data->reserved0);
716  lua_settable(luastate, -3);
717  lua_pushliteral(luastate, "reserved1");
718  lua_pushinteger(luastate, data->reserved1);
719  lua_settable(luastate, -3);
720  lua_pushliteral(luastate, "count");
721  lua_pushinteger(luastate, data->count);
722  lua_settable(luastate, -3);
723  break;
724  }
725  case DNP3_OBJECT_CODE(21, 5): {
726  DNP3ObjectG21V5 *data = point->data;
727  lua_pushliteral(luastate, "online");
728  lua_pushinteger(luastate, data->online);
729  lua_settable(luastate, -3);
730  lua_pushliteral(luastate, "restart");
731  lua_pushinteger(luastate, data->restart);
732  lua_settable(luastate, -3);
733  lua_pushliteral(luastate, "comm_lost");
734  lua_pushinteger(luastate, data->comm_lost);
735  lua_settable(luastate, -3);
736  lua_pushliteral(luastate, "remote_forced");
737  lua_pushinteger(luastate, data->remote_forced);
738  lua_settable(luastate, -3);
739  lua_pushliteral(luastate, "local_forced");
740  lua_pushinteger(luastate, data->local_forced);
741  lua_settable(luastate, -3);
742  lua_pushliteral(luastate, "rollover");
743  lua_pushinteger(luastate, data->rollover);
744  lua_settable(luastate, -3);
745  lua_pushliteral(luastate, "discontinuity");
746  lua_pushinteger(luastate, data->discontinuity);
747  lua_settable(luastate, -3);
748  lua_pushliteral(luastate, "reserved1");
749  lua_pushinteger(luastate, data->reserved1);
750  lua_settable(luastate, -3);
751  lua_pushliteral(luastate, "count");
752  lua_pushinteger(luastate, data->count);
753  lua_settable(luastate, -3);
754  lua_pushliteral(luastate, "timestamp");
755  lua_pushinteger(luastate, data->timestamp);
756  lua_settable(luastate, -3);
757  break;
758  }
759  case DNP3_OBJECT_CODE(21, 6): {
760  DNP3ObjectG21V6 *data = point->data;
761  lua_pushliteral(luastate, "online");
762  lua_pushinteger(luastate, data->online);
763  lua_settable(luastate, -3);
764  lua_pushliteral(luastate, "restart");
765  lua_pushinteger(luastate, data->restart);
766  lua_settable(luastate, -3);
767  lua_pushliteral(luastate, "comm_lost");
768  lua_pushinteger(luastate, data->comm_lost);
769  lua_settable(luastate, -3);
770  lua_pushliteral(luastate, "remote_forced");
771  lua_pushinteger(luastate, data->remote_forced);
772  lua_settable(luastate, -3);
773  lua_pushliteral(luastate, "local_forced");
774  lua_pushinteger(luastate, data->local_forced);
775  lua_settable(luastate, -3);
776  lua_pushliteral(luastate, "rollover");
777  lua_pushinteger(luastate, data->rollover);
778  lua_settable(luastate, -3);
779  lua_pushliteral(luastate, "discontinuity");
780  lua_pushinteger(luastate, data->discontinuity);
781  lua_settable(luastate, -3);
782  lua_pushliteral(luastate, "reserved1");
783  lua_pushinteger(luastate, data->reserved1);
784  lua_settable(luastate, -3);
785  lua_pushliteral(luastate, "count");
786  lua_pushinteger(luastate, data->count);
787  lua_settable(luastate, -3);
788  lua_pushliteral(luastate, "timestamp");
789  lua_pushinteger(luastate, data->timestamp);
790  lua_settable(luastate, -3);
791  break;
792  }
793  case DNP3_OBJECT_CODE(21, 7): {
794  DNP3ObjectG21V7 *data = point->data;
795  lua_pushliteral(luastate, "online");
796  lua_pushinteger(luastate, data->online);
797  lua_settable(luastate, -3);
798  lua_pushliteral(luastate, "restart");
799  lua_pushinteger(luastate, data->restart);
800  lua_settable(luastate, -3);
801  lua_pushliteral(luastate, "comm_lost");
802  lua_pushinteger(luastate, data->comm_lost);
803  lua_settable(luastate, -3);
804  lua_pushliteral(luastate, "remote_forced");
805  lua_pushinteger(luastate, data->remote_forced);
806  lua_settable(luastate, -3);
807  lua_pushliteral(luastate, "local_forced");
808  lua_pushinteger(luastate, data->local_forced);
809  lua_settable(luastate, -3);
810  lua_pushliteral(luastate, "rollover");
811  lua_pushinteger(luastate, data->rollover);
812  lua_settable(luastate, -3);
813  lua_pushliteral(luastate, "reserved0");
814  lua_pushinteger(luastate, data->reserved0);
815  lua_settable(luastate, -3);
816  lua_pushliteral(luastate, "reserved1");
817  lua_pushinteger(luastate, data->reserved1);
818  lua_settable(luastate, -3);
819  lua_pushliteral(luastate, "count");
820  lua_pushinteger(luastate, data->count);
821  lua_settable(luastate, -3);
822  lua_pushliteral(luastate, "timestamp");
823  lua_pushinteger(luastate, data->timestamp);
824  lua_settable(luastate, -3);
825  break;
826  }
827  case DNP3_OBJECT_CODE(21, 8): {
828  DNP3ObjectG21V8 *data = point->data;
829  lua_pushliteral(luastate, "online");
830  lua_pushinteger(luastate, data->online);
831  lua_settable(luastate, -3);
832  lua_pushliteral(luastate, "restart");
833  lua_pushinteger(luastate, data->restart);
834  lua_settable(luastate, -3);
835  lua_pushliteral(luastate, "comm_lost");
836  lua_pushinteger(luastate, data->comm_lost);
837  lua_settable(luastate, -3);
838  lua_pushliteral(luastate, "remote_forced");
839  lua_pushinteger(luastate, data->remote_forced);
840  lua_settable(luastate, -3);
841  lua_pushliteral(luastate, "local_forced");
842  lua_pushinteger(luastate, data->local_forced);
843  lua_settable(luastate, -3);
844  lua_pushliteral(luastate, "rollover");
845  lua_pushinteger(luastate, data->rollover);
846  lua_settable(luastate, -3);
847  lua_pushliteral(luastate, "reserved0");
848  lua_pushinteger(luastate, data->reserved0);
849  lua_settable(luastate, -3);
850  lua_pushliteral(luastate, "reserved1");
851  lua_pushinteger(luastate, data->reserved1);
852  lua_settable(luastate, -3);
853  lua_pushliteral(luastate, "count");
854  lua_pushinteger(luastate, data->count);
855  lua_settable(luastate, -3);
856  lua_pushliteral(luastate, "timestamp");
857  lua_pushinteger(luastate, data->timestamp);
858  lua_settable(luastate, -3);
859  break;
860  }
861  case DNP3_OBJECT_CODE(21, 9): {
862  DNP3ObjectG21V9 *data = point->data;
863  lua_pushliteral(luastate, "count");
864  lua_pushinteger(luastate, data->count);
865  lua_settable(luastate, -3);
866  break;
867  }
868  case DNP3_OBJECT_CODE(21, 10): {
869  DNP3ObjectG21V10 *data = point->data;
870  lua_pushliteral(luastate, "count");
871  lua_pushinteger(luastate, data->count);
872  lua_settable(luastate, -3);
873  break;
874  }
875  case DNP3_OBJECT_CODE(21, 11): {
876  DNP3ObjectG21V11 *data = point->data;
877  lua_pushliteral(luastate, "count");
878  lua_pushinteger(luastate, data->count);
879  lua_settable(luastate, -3);
880  break;
881  }
882  case DNP3_OBJECT_CODE(21, 12): {
883  DNP3ObjectG21V12 *data = point->data;
884  lua_pushliteral(luastate, "count");
885  lua_pushinteger(luastate, data->count);
886  lua_settable(luastate, -3);
887  break;
888  }
889  case DNP3_OBJECT_CODE(22, 1): {
890  DNP3ObjectG22V1 *data = point->data;
891  lua_pushliteral(luastate, "online");
892  lua_pushinteger(luastate, data->online);
893  lua_settable(luastate, -3);
894  lua_pushliteral(luastate, "restart");
895  lua_pushinteger(luastate, data->restart);
896  lua_settable(luastate, -3);
897  lua_pushliteral(luastate, "comm_lost");
898  lua_pushinteger(luastate, data->comm_lost);
899  lua_settable(luastate, -3);
900  lua_pushliteral(luastate, "remote_forced");
901  lua_pushinteger(luastate, data->remote_forced);
902  lua_settable(luastate, -3);
903  lua_pushliteral(luastate, "local_forced");
904  lua_pushinteger(luastate, data->local_forced);
905  lua_settable(luastate, -3);
906  lua_pushliteral(luastate, "rollover");
907  lua_pushinteger(luastate, data->rollover);
908  lua_settable(luastate, -3);
909  lua_pushliteral(luastate, "discontinuity");
910  lua_pushinteger(luastate, data->discontinuity);
911  lua_settable(luastate, -3);
912  lua_pushliteral(luastate, "reserved0");
913  lua_pushinteger(luastate, data->reserved0);
914  lua_settable(luastate, -3);
915  lua_pushliteral(luastate, "count");
916  lua_pushinteger(luastate, data->count);
917  lua_settable(luastate, -3);
918  break;
919  }
920  case DNP3_OBJECT_CODE(22, 2): {
921  DNP3ObjectG22V2 *data = point->data;
922  lua_pushliteral(luastate, "online");
923  lua_pushinteger(luastate, data->online);
924  lua_settable(luastate, -3);
925  lua_pushliteral(luastate, "restart");
926  lua_pushinteger(luastate, data->restart);
927  lua_settable(luastate, -3);
928  lua_pushliteral(luastate, "comm_lost");
929  lua_pushinteger(luastate, data->comm_lost);
930  lua_settable(luastate, -3);
931  lua_pushliteral(luastate, "remote_forced");
932  lua_pushinteger(luastate, data->remote_forced);
933  lua_settable(luastate, -3);
934  lua_pushliteral(luastate, "local_forced");
935  lua_pushinteger(luastate, data->local_forced);
936  lua_settable(luastate, -3);
937  lua_pushliteral(luastate, "rollover");
938  lua_pushinteger(luastate, data->rollover);
939  lua_settable(luastate, -3);
940  lua_pushliteral(luastate, "discontinuity");
941  lua_pushinteger(luastate, data->discontinuity);
942  lua_settable(luastate, -3);
943  lua_pushliteral(luastate, "reserved0");
944  lua_pushinteger(luastate, data->reserved0);
945  lua_settable(luastate, -3);
946  lua_pushliteral(luastate, "count");
947  lua_pushinteger(luastate, data->count);
948  lua_settable(luastate, -3);
949  break;
950  }
951  case DNP3_OBJECT_CODE(22, 3): {
952  DNP3ObjectG22V3 *data = point->data;
953  lua_pushliteral(luastate, "online");
954  lua_pushinteger(luastate, data->online);
955  lua_settable(luastate, -3);
956  lua_pushliteral(luastate, "restart");
957  lua_pushinteger(luastate, data->restart);
958  lua_settable(luastate, -3);
959  lua_pushliteral(luastate, "comm_lost");
960  lua_pushinteger(luastate, data->comm_lost);
961  lua_settable(luastate, -3);
962  lua_pushliteral(luastate, "remote_forced");
963  lua_pushinteger(luastate, data->remote_forced);
964  lua_settable(luastate, -3);
965  lua_pushliteral(luastate, "local_forced");
966  lua_pushinteger(luastate, data->local_forced);
967  lua_settable(luastate, -3);
968  lua_pushliteral(luastate, "rollover");
969  lua_pushinteger(luastate, data->rollover);
970  lua_settable(luastate, -3);
971  lua_pushliteral(luastate, "reserved0");
972  lua_pushinteger(luastate, data->reserved0);
973  lua_settable(luastate, -3);
974  lua_pushliteral(luastate, "reserved1");
975  lua_pushinteger(luastate, data->reserved1);
976  lua_settable(luastate, -3);
977  lua_pushliteral(luastate, "count");
978  lua_pushinteger(luastate, data->count);
979  lua_settable(luastate, -3);
980  break;
981  }
982  case DNP3_OBJECT_CODE(22, 4): {
983  DNP3ObjectG22V4 *data = point->data;
984  lua_pushliteral(luastate, "online");
985  lua_pushinteger(luastate, data->online);
986  lua_settable(luastate, -3);
987  lua_pushliteral(luastate, "restart");
988  lua_pushinteger(luastate, data->restart);
989  lua_settable(luastate, -3);
990  lua_pushliteral(luastate, "comm_lost");
991  lua_pushinteger(luastate, data->comm_lost);
992  lua_settable(luastate, -3);
993  lua_pushliteral(luastate, "remote_forced");
994  lua_pushinteger(luastate, data->remote_forced);
995  lua_settable(luastate, -3);
996  lua_pushliteral(luastate, "local_forced");
997  lua_pushinteger(luastate, data->local_forced);
998  lua_settable(luastate, -3);
999  lua_pushliteral(luastate, "rollover");
1000  lua_pushinteger(luastate, data->rollover);
1001  lua_settable(luastate, -3);
1002  lua_pushliteral(luastate, "reserved0");
1003  lua_pushinteger(luastate, data->reserved0);
1004  lua_settable(luastate, -3);
1005  lua_pushliteral(luastate, "reserved1");
1006  lua_pushinteger(luastate, data->reserved1);
1007  lua_settable(luastate, -3);
1008  lua_pushliteral(luastate, "count");
1009  lua_pushinteger(luastate, data->count);
1010  lua_settable(luastate, -3);
1011  break;
1012  }
1013  case DNP3_OBJECT_CODE(22, 5): {
1014  DNP3ObjectG22V5 *data = point->data;
1015  lua_pushliteral(luastate, "online");
1016  lua_pushinteger(luastate, data->online);
1017  lua_settable(luastate, -3);
1018  lua_pushliteral(luastate, "restart");
1019  lua_pushinteger(luastate, data->restart);
1020  lua_settable(luastate, -3);
1021  lua_pushliteral(luastate, "comm_lost");
1022  lua_pushinteger(luastate, data->comm_lost);
1023  lua_settable(luastate, -3);
1024  lua_pushliteral(luastate, "remote_forced");
1025  lua_pushinteger(luastate, data->remote_forced);
1026  lua_settable(luastate, -3);
1027  lua_pushliteral(luastate, "local_forced");
1028  lua_pushinteger(luastate, data->local_forced);
1029  lua_settable(luastate, -3);
1030  lua_pushliteral(luastate, "rollover");
1031  lua_pushinteger(luastate, data->rollover);
1032  lua_settable(luastate, -3);
1033  lua_pushliteral(luastate, "reserved0");
1034  lua_pushinteger(luastate, data->reserved0);
1035  lua_settable(luastate, -3);
1036  lua_pushliteral(luastate, "reserved1");
1037  lua_pushinteger(luastate, data->reserved1);
1038  lua_settable(luastate, -3);
1039  lua_pushliteral(luastate, "count");
1040  lua_pushinteger(luastate, data->count);
1041  lua_settable(luastate, -3);
1042  lua_pushliteral(luastate, "timestamp");
1043  lua_pushinteger(luastate, data->timestamp);
1044  lua_settable(luastate, -3);
1045  break;
1046  }
1047  case DNP3_OBJECT_CODE(22, 6): {
1048  DNP3ObjectG22V6 *data = point->data;
1049  lua_pushliteral(luastate, "online");
1050  lua_pushinteger(luastate, data->online);
1051  lua_settable(luastate, -3);
1052  lua_pushliteral(luastate, "restart");
1053  lua_pushinteger(luastate, data->restart);
1054  lua_settable(luastate, -3);
1055  lua_pushliteral(luastate, "comm_lost");
1056  lua_pushinteger(luastate, data->comm_lost);
1057  lua_settable(luastate, -3);
1058  lua_pushliteral(luastate, "remote_forced");
1059  lua_pushinteger(luastate, data->remote_forced);
1060  lua_settable(luastate, -3);
1061  lua_pushliteral(luastate, "local_forced");
1062  lua_pushinteger(luastate, data->local_forced);
1063  lua_settable(luastate, -3);
1064  lua_pushliteral(luastate, "rollover");
1065  lua_pushinteger(luastate, data->rollover);
1066  lua_settable(luastate, -3);
1067  lua_pushliteral(luastate, "discontinuity");
1068  lua_pushinteger(luastate, data->discontinuity);
1069  lua_settable(luastate, -3);
1070  lua_pushliteral(luastate, "reserved0");
1071  lua_pushinteger(luastate, data->reserved0);
1072  lua_settable(luastate, -3);
1073  lua_pushliteral(luastate, "count");
1074  lua_pushinteger(luastate, data->count);
1075  lua_settable(luastate, -3);
1076  lua_pushliteral(luastate, "timestamp");
1077  lua_pushinteger(luastate, data->timestamp);
1078  lua_settable(luastate, -3);
1079  break;
1080  }
1081  case DNP3_OBJECT_CODE(22, 7): {
1082  DNP3ObjectG22V7 *data = point->data;
1083  lua_pushliteral(luastate, "online");
1084  lua_pushinteger(luastate, data->online);
1085  lua_settable(luastate, -3);
1086  lua_pushliteral(luastate, "restart");
1087  lua_pushinteger(luastate, data->restart);
1088  lua_settable(luastate, -3);
1089  lua_pushliteral(luastate, "comm_lost");
1090  lua_pushinteger(luastate, data->comm_lost);
1091  lua_settable(luastate, -3);
1092  lua_pushliteral(luastate, "remote_forced");
1093  lua_pushinteger(luastate, data->remote_forced);
1094  lua_settable(luastate, -3);
1095  lua_pushliteral(luastate, "local_forced");
1096  lua_pushinteger(luastate, data->local_forced);
1097  lua_settable(luastate, -3);
1098  lua_pushliteral(luastate, "rollover");
1099  lua_pushinteger(luastate, data->rollover);
1100  lua_settable(luastate, -3);
1101  lua_pushliteral(luastate, "reserved0");
1102  lua_pushinteger(luastate, data->reserved0);
1103  lua_settable(luastate, -3);
1104  lua_pushliteral(luastate, "reserved1");
1105  lua_pushinteger(luastate, data->reserved1);
1106  lua_settable(luastate, -3);
1107  lua_pushliteral(luastate, "count");
1108  lua_pushinteger(luastate, data->count);
1109  lua_settable(luastate, -3);
1110  lua_pushliteral(luastate, "timestamp");
1111  lua_pushinteger(luastate, data->timestamp);
1112  lua_settable(luastate, -3);
1113  break;
1114  }
1115  case DNP3_OBJECT_CODE(22, 8): {
1116  DNP3ObjectG22V8 *data = point->data;
1117  lua_pushliteral(luastate, "online");
1118  lua_pushinteger(luastate, data->online);
1119  lua_settable(luastate, -3);
1120  lua_pushliteral(luastate, "restart");
1121  lua_pushinteger(luastate, data->restart);
1122  lua_settable(luastate, -3);
1123  lua_pushliteral(luastate, "comm_lost");
1124  lua_pushinteger(luastate, data->comm_lost);
1125  lua_settable(luastate, -3);
1126  lua_pushliteral(luastate, "remote_forced");
1127  lua_pushinteger(luastate, data->remote_forced);
1128  lua_settable(luastate, -3);
1129  lua_pushliteral(luastate, "local_forced");
1130  lua_pushinteger(luastate, data->local_forced);
1131  lua_settable(luastate, -3);
1132  lua_pushliteral(luastate, "rollover");
1133  lua_pushinteger(luastate, data->rollover);
1134  lua_settable(luastate, -3);
1135  lua_pushliteral(luastate, "reserved0");
1136  lua_pushinteger(luastate, data->reserved0);
1137  lua_settable(luastate, -3);
1138  lua_pushliteral(luastate, "reserved1");
1139  lua_pushinteger(luastate, data->reserved1);
1140  lua_settable(luastate, -3);
1141  lua_pushliteral(luastate, "count");
1142  lua_pushinteger(luastate, data->count);
1143  lua_settable(luastate, -3);
1144  lua_pushliteral(luastate, "timestamp");
1145  lua_pushinteger(luastate, data->timestamp);
1146  lua_settable(luastate, -3);
1147  break;
1148  }
1149  case DNP3_OBJECT_CODE(23, 1): {
1150  DNP3ObjectG23V1 *data = point->data;
1151  lua_pushliteral(luastate, "online");
1152  lua_pushinteger(luastate, data->online);
1153  lua_settable(luastate, -3);
1154  lua_pushliteral(luastate, "restart");
1155  lua_pushinteger(luastate, data->restart);
1156  lua_settable(luastate, -3);
1157  lua_pushliteral(luastate, "comm_lost");
1158  lua_pushinteger(luastate, data->comm_lost);
1159  lua_settable(luastate, -3);
1160  lua_pushliteral(luastate, "remote_forced");
1161  lua_pushinteger(luastate, data->remote_forced);
1162  lua_settable(luastate, -3);
1163  lua_pushliteral(luastate, "local_forced");
1164  lua_pushinteger(luastate, data->local_forced);
1165  lua_settable(luastate, -3);
1166  lua_pushliteral(luastate, "rollover");
1167  lua_pushinteger(luastate, data->rollover);
1168  lua_settable(luastate, -3);
1169  lua_pushliteral(luastate, "discontinuity");
1170  lua_pushinteger(luastate, data->discontinuity);
1171  lua_settable(luastate, -3);
1172  lua_pushliteral(luastate, "reserved0");
1173  lua_pushinteger(luastate, data->reserved0);
1174  lua_settable(luastate, -3);
1175  lua_pushliteral(luastate, "count");
1176  lua_pushinteger(luastate, data->count);
1177  lua_settable(luastate, -3);
1178  break;
1179  }
1180  case DNP3_OBJECT_CODE(23, 2): {
1181  DNP3ObjectG23V2 *data = point->data;
1182  lua_pushliteral(luastate, "online");
1183  lua_pushinteger(luastate, data->online);
1184  lua_settable(luastate, -3);
1185  lua_pushliteral(luastate, "restart");
1186  lua_pushinteger(luastate, data->restart);
1187  lua_settable(luastate, -3);
1188  lua_pushliteral(luastate, "comm_lost");
1189  lua_pushinteger(luastate, data->comm_lost);
1190  lua_settable(luastate, -3);
1191  lua_pushliteral(luastate, "remote_forced");
1192  lua_pushinteger(luastate, data->remote_forced);
1193  lua_settable(luastate, -3);
1194  lua_pushliteral(luastate, "local_forced");
1195  lua_pushinteger(luastate, data->local_forced);
1196  lua_settable(luastate, -3);
1197  lua_pushliteral(luastate, "rollover");
1198  lua_pushinteger(luastate, data->rollover);
1199  lua_settable(luastate, -3);
1200  lua_pushliteral(luastate, "reserved0");
1201  lua_pushinteger(luastate, data->reserved0);
1202  lua_settable(luastate, -3);
1203  lua_pushliteral(luastate, "reserved1");
1204  lua_pushinteger(luastate, data->reserved1);
1205  lua_settable(luastate, -3);
1206  lua_pushliteral(luastate, "count");
1207  lua_pushinteger(luastate, data->count);
1208  lua_settable(luastate, -3);
1209  break;
1210  }
1211  case DNP3_OBJECT_CODE(23, 3): {
1212  DNP3ObjectG23V3 *data = point->data;
1213  lua_pushliteral(luastate, "online");
1214  lua_pushinteger(luastate, data->online);
1215  lua_settable(luastate, -3);
1216  lua_pushliteral(luastate, "restart");
1217  lua_pushinteger(luastate, data->restart);
1218  lua_settable(luastate, -3);
1219  lua_pushliteral(luastate, "comm_lost");
1220  lua_pushinteger(luastate, data->comm_lost);
1221  lua_settable(luastate, -3);
1222  lua_pushliteral(luastate, "remote_forced");
1223  lua_pushinteger(luastate, data->remote_forced);
1224  lua_settable(luastate, -3);
1225  lua_pushliteral(luastate, "local_forced");
1226  lua_pushinteger(luastate, data->local_forced);
1227  lua_settable(luastate, -3);
1228  lua_pushliteral(luastate, "rollover");
1229  lua_pushinteger(luastate, data->rollover);
1230  lua_settable(luastate, -3);
1231  lua_pushliteral(luastate, "reserved0");
1232  lua_pushinteger(luastate, data->reserved0);
1233  lua_settable(luastate, -3);
1234  lua_pushliteral(luastate, "reserved1");
1235  lua_pushinteger(luastate, data->reserved1);
1236  lua_settable(luastate, -3);
1237  lua_pushliteral(luastate, "count");
1238  lua_pushinteger(luastate, data->count);
1239  lua_settable(luastate, -3);
1240  break;
1241  }
1242  case DNP3_OBJECT_CODE(23, 4): {
1243  DNP3ObjectG23V4 *data = point->data;
1244  lua_pushliteral(luastate, "online");
1245  lua_pushinteger(luastate, data->online);
1246  lua_settable(luastate, -3);
1247  lua_pushliteral(luastate, "restart");
1248  lua_pushinteger(luastate, data->restart);
1249  lua_settable(luastate, -3);
1250  lua_pushliteral(luastate, "comm_lost");
1251  lua_pushinteger(luastate, data->comm_lost);
1252  lua_settable(luastate, -3);
1253  lua_pushliteral(luastate, "remote_forced");
1254  lua_pushinteger(luastate, data->remote_forced);
1255  lua_settable(luastate, -3);
1256  lua_pushliteral(luastate, "local_forced");
1257  lua_pushinteger(luastate, data->local_forced);
1258  lua_settable(luastate, -3);
1259  lua_pushliteral(luastate, "rollover");
1260  lua_pushinteger(luastate, data->rollover);
1261  lua_settable(luastate, -3);
1262  lua_pushliteral(luastate, "reserved0");
1263  lua_pushinteger(luastate, data->reserved0);
1264  lua_settable(luastate, -3);
1265  lua_pushliteral(luastate, "reserved1");
1266  lua_pushinteger(luastate, data->reserved1);
1267  lua_settable(luastate, -3);
1268  lua_pushliteral(luastate, "count");
1269  lua_pushinteger(luastate, data->count);
1270  lua_settable(luastate, -3);
1271  break;
1272  }
1273  case DNP3_OBJECT_CODE(23, 5): {
1274  DNP3ObjectG23V5 *data = point->data;
1275  lua_pushliteral(luastate, "online");
1276  lua_pushinteger(luastate, data->online);
1277  lua_settable(luastate, -3);
1278  lua_pushliteral(luastate, "restart");
1279  lua_pushinteger(luastate, data->restart);
1280  lua_settable(luastate, -3);
1281  lua_pushliteral(luastate, "comm_lost");
1282  lua_pushinteger(luastate, data->comm_lost);
1283  lua_settable(luastate, -3);
1284  lua_pushliteral(luastate, "remote_forced");
1285  lua_pushinteger(luastate, data->remote_forced);
1286  lua_settable(luastate, -3);
1287  lua_pushliteral(luastate, "local_forced");
1288  lua_pushinteger(luastate, data->local_forced);
1289  lua_settable(luastate, -3);
1290  lua_pushliteral(luastate, "rollover");
1291  lua_pushinteger(luastate, data->rollover);
1292  lua_settable(luastate, -3);
1293  lua_pushliteral(luastate, "discontinuity");
1294  lua_pushinteger(luastate, data->discontinuity);
1295  lua_settable(luastate, -3);
1296  lua_pushliteral(luastate, "reserved0");
1297  lua_pushinteger(luastate, data->reserved0);
1298  lua_settable(luastate, -3);
1299  lua_pushliteral(luastate, "count");
1300  lua_pushinteger(luastate, data->count);
1301  lua_settable(luastate, -3);
1302  lua_pushliteral(luastate, "timestamp");
1303  lua_pushinteger(luastate, data->timestamp);
1304  lua_settable(luastate, -3);
1305  break;
1306  }
1307  case DNP3_OBJECT_CODE(23, 6): {
1308  DNP3ObjectG23V6 *data = point->data;
1309  lua_pushliteral(luastate, "online");
1310  lua_pushinteger(luastate, data->online);
1311  lua_settable(luastate, -3);
1312  lua_pushliteral(luastate, "restart");
1313  lua_pushinteger(luastate, data->restart);
1314  lua_settable(luastate, -3);
1315  lua_pushliteral(luastate, "comm_lost");
1316  lua_pushinteger(luastate, data->comm_lost);
1317  lua_settable(luastate, -3);
1318  lua_pushliteral(luastate, "remote_forced");
1319  lua_pushinteger(luastate, data->remote_forced);
1320  lua_settable(luastate, -3);
1321  lua_pushliteral(luastate, "local_forced");
1322  lua_pushinteger(luastate, data->local_forced);
1323  lua_settable(luastate, -3);
1324  lua_pushliteral(luastate, "rollover");
1325  lua_pushinteger(luastate, data->rollover);
1326  lua_settable(luastate, -3);
1327  lua_pushliteral(luastate, "discontinuity");
1328  lua_pushinteger(luastate, data->discontinuity);
1329  lua_settable(luastate, -3);
1330  lua_pushliteral(luastate, "reserved0");
1331  lua_pushinteger(luastate, data->reserved0);
1332  lua_settable(luastate, -3);
1333  lua_pushliteral(luastate, "count");
1334  lua_pushinteger(luastate, data->count);
1335  lua_settable(luastate, -3);
1336  lua_pushliteral(luastate, "timestamp");
1337  lua_pushinteger(luastate, data->timestamp);
1338  lua_settable(luastate, -3);
1339  break;
1340  }
1341  case DNP3_OBJECT_CODE(23, 7): {
1342  DNP3ObjectG23V7 *data = point->data;
1343  lua_pushliteral(luastate, "online");
1344  lua_pushinteger(luastate, data->online);
1345  lua_settable(luastate, -3);
1346  lua_pushliteral(luastate, "restart");
1347  lua_pushinteger(luastate, data->restart);
1348  lua_settable(luastate, -3);
1349  lua_pushliteral(luastate, "comm_lost");
1350  lua_pushinteger(luastate, data->comm_lost);
1351  lua_settable(luastate, -3);
1352  lua_pushliteral(luastate, "remote_forced");
1353  lua_pushinteger(luastate, data->remote_forced);
1354  lua_settable(luastate, -3);
1355  lua_pushliteral(luastate, "local_forced");
1356  lua_pushinteger(luastate, data->local_forced);
1357  lua_settable(luastate, -3);
1358  lua_pushliteral(luastate, "rollover");
1359  lua_pushinteger(luastate, data->rollover);
1360  lua_settable(luastate, -3);
1361  lua_pushliteral(luastate, "reserved0");
1362  lua_pushinteger(luastate, data->reserved0);
1363  lua_settable(luastate, -3);
1364  lua_pushliteral(luastate, "reserved1");
1365  lua_pushinteger(luastate, data->reserved1);
1366  lua_settable(luastate, -3);
1367  lua_pushliteral(luastate, "count");
1368  lua_pushinteger(luastate, data->count);
1369  lua_settable(luastate, -3);
1370  lua_pushliteral(luastate, "timestamp");
1371  lua_pushinteger(luastate, data->timestamp);
1372  lua_settable(luastate, -3);
1373  break;
1374  }
1375  case DNP3_OBJECT_CODE(23, 8): {
1376  DNP3ObjectG23V8 *data = point->data;
1377  lua_pushliteral(luastate, "online");
1378  lua_pushinteger(luastate, data->online);
1379  lua_settable(luastate, -3);
1380  lua_pushliteral(luastate, "restart");
1381  lua_pushinteger(luastate, data->restart);
1382  lua_settable(luastate, -3);
1383  lua_pushliteral(luastate, "comm_lost");
1384  lua_pushinteger(luastate, data->comm_lost);
1385  lua_settable(luastate, -3);
1386  lua_pushliteral(luastate, "remote_forced");
1387  lua_pushinteger(luastate, data->remote_forced);
1388  lua_settable(luastate, -3);
1389  lua_pushliteral(luastate, "local_forced");
1390  lua_pushinteger(luastate, data->local_forced);
1391  lua_settable(luastate, -3);
1392  lua_pushliteral(luastate, "rollover");
1393  lua_pushinteger(luastate, data->rollover);
1394  lua_settable(luastate, -3);
1395  lua_pushliteral(luastate, "reserved0");
1396  lua_pushinteger(luastate, data->reserved0);
1397  lua_settable(luastate, -3);
1398  lua_pushliteral(luastate, "reserved1");
1399  lua_pushinteger(luastate, data->reserved1);
1400  lua_settable(luastate, -3);
1401  lua_pushliteral(luastate, "count");
1402  lua_pushinteger(luastate, data->count);
1403  lua_settable(luastate, -3);
1404  lua_pushliteral(luastate, "timestamp");
1405  lua_pushinteger(luastate, data->timestamp);
1406  lua_settable(luastate, -3);
1407  break;
1408  }
1409  case DNP3_OBJECT_CODE(30, 1): {
1410  DNP3ObjectG30V1 *data = point->data;
1411  lua_pushliteral(luastate, "online");
1412  lua_pushinteger(luastate, data->online);
1413  lua_settable(luastate, -3);
1414  lua_pushliteral(luastate, "restart");
1415  lua_pushinteger(luastate, data->restart);
1416  lua_settable(luastate, -3);
1417  lua_pushliteral(luastate, "comm_lost");
1418  lua_pushinteger(luastate, data->comm_lost);
1419  lua_settable(luastate, -3);
1420  lua_pushliteral(luastate, "remote_forced");
1421  lua_pushinteger(luastate, data->remote_forced);
1422  lua_settable(luastate, -3);
1423  lua_pushliteral(luastate, "local_forced");
1424  lua_pushinteger(luastate, data->local_forced);
1425  lua_settable(luastate, -3);
1426  lua_pushliteral(luastate, "over_range");
1427  lua_pushinteger(luastate, data->over_range);
1428  lua_settable(luastate, -3);
1429  lua_pushliteral(luastate, "reference_err");
1430  lua_pushinteger(luastate, data->reference_err);
1431  lua_settable(luastate, -3);
1432  lua_pushliteral(luastate, "reserved0");
1433  lua_pushinteger(luastate, data->reserved0);
1434  lua_settable(luastate, -3);
1435  lua_pushliteral(luastate, "value");
1436  lua_pushinteger(luastate, data->value);
1437  lua_settable(luastate, -3);
1438  break;
1439  }
1440  case DNP3_OBJECT_CODE(30, 2): {
1441  DNP3ObjectG30V2 *data = point->data;
1442  lua_pushliteral(luastate, "online");
1443  lua_pushinteger(luastate, data->online);
1444  lua_settable(luastate, -3);
1445  lua_pushliteral(luastate, "restart");
1446  lua_pushinteger(luastate, data->restart);
1447  lua_settable(luastate, -3);
1448  lua_pushliteral(luastate, "comm_lost");
1449  lua_pushinteger(luastate, data->comm_lost);
1450  lua_settable(luastate, -3);
1451  lua_pushliteral(luastate, "remote_forced");
1452  lua_pushinteger(luastate, data->remote_forced);
1453  lua_settable(luastate, -3);
1454  lua_pushliteral(luastate, "local_forced");
1455  lua_pushinteger(luastate, data->local_forced);
1456  lua_settable(luastate, -3);
1457  lua_pushliteral(luastate, "over_range");
1458  lua_pushinteger(luastate, data->over_range);
1459  lua_settable(luastate, -3);
1460  lua_pushliteral(luastate, "reference_err");
1461  lua_pushinteger(luastate, data->reference_err);
1462  lua_settable(luastate, -3);
1463  lua_pushliteral(luastate, "reserved0");
1464  lua_pushinteger(luastate, data->reserved0);
1465  lua_settable(luastate, -3);
1466  lua_pushliteral(luastate, "value");
1467  lua_pushinteger(luastate, data->value);
1468  lua_settable(luastate, -3);
1469  break;
1470  }
1471  case DNP3_OBJECT_CODE(30, 3): {
1472  DNP3ObjectG30V3 *data = point->data;
1473  lua_pushliteral(luastate, "value");
1474  lua_pushinteger(luastate, data->value);
1475  lua_settable(luastate, -3);
1476  break;
1477  }
1478  case DNP3_OBJECT_CODE(30, 4): {
1479  DNP3ObjectG30V4 *data = point->data;
1480  lua_pushliteral(luastate, "value");
1481  lua_pushinteger(luastate, data->value);
1482  lua_settable(luastate, -3);
1483  break;
1484  }
1485  case DNP3_OBJECT_CODE(30, 5): {
1486  DNP3ObjectG30V5 *data = point->data;
1487  lua_pushliteral(luastate, "online");
1488  lua_pushinteger(luastate, data->online);
1489  lua_settable(luastate, -3);
1490  lua_pushliteral(luastate, "restart");
1491  lua_pushinteger(luastate, data->restart);
1492  lua_settable(luastate, -3);
1493  lua_pushliteral(luastate, "comm_lost");
1494  lua_pushinteger(luastate, data->comm_lost);
1495  lua_settable(luastate, -3);
1496  lua_pushliteral(luastate, "remote_forced");
1497  lua_pushinteger(luastate, data->remote_forced);
1498  lua_settable(luastate, -3);
1499  lua_pushliteral(luastate, "local_forced");
1500  lua_pushinteger(luastate, data->local_forced);
1501  lua_settable(luastate, -3);
1502  lua_pushliteral(luastate, "over_range");
1503  lua_pushinteger(luastate, data->over_range);
1504  lua_settable(luastate, -3);
1505  lua_pushliteral(luastate, "reference_err");
1506  lua_pushinteger(luastate, data->reference_err);
1507  lua_settable(luastate, -3);
1508  lua_pushliteral(luastate, "reserved0");
1509  lua_pushinteger(luastate, data->reserved0);
1510  lua_settable(luastate, -3);
1511  lua_pushliteral(luastate, "value");
1512  lua_pushnumber(luastate, data->value);
1513  lua_settable(luastate, -3);
1514  break;
1515  }
1516  case DNP3_OBJECT_CODE(30, 6): {
1517  DNP3ObjectG30V6 *data = point->data;
1518  lua_pushliteral(luastate, "online");
1519  lua_pushinteger(luastate, data->online);
1520  lua_settable(luastate, -3);
1521  lua_pushliteral(luastate, "restart");
1522  lua_pushinteger(luastate, data->restart);
1523  lua_settable(luastate, -3);
1524  lua_pushliteral(luastate, "comm_lost");
1525  lua_pushinteger(luastate, data->comm_lost);
1526  lua_settable(luastate, -3);
1527  lua_pushliteral(luastate, "remote_forced");
1528  lua_pushinteger(luastate, data->remote_forced);
1529  lua_settable(luastate, -3);
1530  lua_pushliteral(luastate, "local_forced");
1531  lua_pushinteger(luastate, data->local_forced);
1532  lua_settable(luastate, -3);
1533  lua_pushliteral(luastate, "over_range");
1534  lua_pushinteger(luastate, data->over_range);
1535  lua_settable(luastate, -3);
1536  lua_pushliteral(luastate, "reference_err");
1537  lua_pushinteger(luastate, data->reference_err);
1538  lua_settable(luastate, -3);
1539  lua_pushliteral(luastate, "reserved0");
1540  lua_pushinteger(luastate, data->reserved0);
1541  lua_settable(luastate, -3);
1542  lua_pushliteral(luastate, "value");
1543  lua_pushnumber(luastate, data->value);
1544  lua_settable(luastate, -3);
1545  break;
1546  }
1547  case DNP3_OBJECT_CODE(31, 1): {
1548  DNP3ObjectG31V1 *data = point->data;
1549  lua_pushliteral(luastate, "online");
1550  lua_pushinteger(luastate, data->online);
1551  lua_settable(luastate, -3);
1552  lua_pushliteral(luastate, "restart");
1553  lua_pushinteger(luastate, data->restart);
1554  lua_settable(luastate, -3);
1555  lua_pushliteral(luastate, "comm_lost");
1556  lua_pushinteger(luastate, data->comm_lost);
1557  lua_settable(luastate, -3);
1558  lua_pushliteral(luastate, "remote_forced");
1559  lua_pushinteger(luastate, data->remote_forced);
1560  lua_settable(luastate, -3);
1561  lua_pushliteral(luastate, "local_forced");
1562  lua_pushinteger(luastate, data->local_forced);
1563  lua_settable(luastate, -3);
1564  lua_pushliteral(luastate, "over_range");
1565  lua_pushinteger(luastate, data->over_range);
1566  lua_settable(luastate, -3);
1567  lua_pushliteral(luastate, "reference_err");
1568  lua_pushinteger(luastate, data->reference_err);
1569  lua_settable(luastate, -3);
1570  lua_pushliteral(luastate, "reserved0");
1571  lua_pushinteger(luastate, data->reserved0);
1572  lua_settable(luastate, -3);
1573  lua_pushliteral(luastate, "value");
1574  lua_pushinteger(luastate, data->value);
1575  lua_settable(luastate, -3);
1576  break;
1577  }
1578  case DNP3_OBJECT_CODE(31, 2): {
1579  DNP3ObjectG31V2 *data = point->data;
1580  lua_pushliteral(luastate, "online");
1581  lua_pushinteger(luastate, data->online);
1582  lua_settable(luastate, -3);
1583  lua_pushliteral(luastate, "restart");
1584  lua_pushinteger(luastate, data->restart);
1585  lua_settable(luastate, -3);
1586  lua_pushliteral(luastate, "comm_lost");
1587  lua_pushinteger(luastate, data->comm_lost);
1588  lua_settable(luastate, -3);
1589  lua_pushliteral(luastate, "remote_forced");
1590  lua_pushinteger(luastate, data->remote_forced);
1591  lua_settable(luastate, -3);
1592  lua_pushliteral(luastate, "local_forced");
1593  lua_pushinteger(luastate, data->local_forced);
1594  lua_settable(luastate, -3);
1595  lua_pushliteral(luastate, "over_range");
1596  lua_pushinteger(luastate, data->over_range);
1597  lua_settable(luastate, -3);
1598  lua_pushliteral(luastate, "reference_err");
1599  lua_pushinteger(luastate, data->reference_err);
1600  lua_settable(luastate, -3);
1601  lua_pushliteral(luastate, "reserved0");
1602  lua_pushinteger(luastate, data->reserved0);
1603  lua_settable(luastate, -3);
1604  lua_pushliteral(luastate, "value");
1605  lua_pushinteger(luastate, data->value);
1606  lua_settable(luastate, -3);
1607  break;
1608  }
1609  case DNP3_OBJECT_CODE(31, 3): {
1610  DNP3ObjectG31V3 *data = point->data;
1611  lua_pushliteral(luastate, "online");
1612  lua_pushinteger(luastate, data->online);
1613  lua_settable(luastate, -3);
1614  lua_pushliteral(luastate, "restart");
1615  lua_pushinteger(luastate, data->restart);
1616  lua_settable(luastate, -3);
1617  lua_pushliteral(luastate, "comm_lost");
1618  lua_pushinteger(luastate, data->comm_lost);
1619  lua_settable(luastate, -3);
1620  lua_pushliteral(luastate, "remote_forced");
1621  lua_pushinteger(luastate, data->remote_forced);
1622  lua_settable(luastate, -3);
1623  lua_pushliteral(luastate, "local_forced");
1624  lua_pushinteger(luastate, data->local_forced);
1625  lua_settable(luastate, -3);
1626  lua_pushliteral(luastate, "over_range");
1627  lua_pushinteger(luastate, data->over_range);
1628  lua_settable(luastate, -3);
1629  lua_pushliteral(luastate, "reference_err");
1630  lua_pushinteger(luastate, data->reference_err);
1631  lua_settable(luastate, -3);
1632  lua_pushliteral(luastate, "reserved0");
1633  lua_pushinteger(luastate, data->reserved0);
1634  lua_settable(luastate, -3);
1635  lua_pushliteral(luastate, "value");
1636  lua_pushinteger(luastate, data->value);
1637  lua_settable(luastate, -3);
1638  lua_pushliteral(luastate, "timestamp");
1639  lua_pushinteger(luastate, data->timestamp);
1640  lua_settable(luastate, -3);
1641  break;
1642  }
1643  case DNP3_OBJECT_CODE(31, 4): {
1644  DNP3ObjectG31V4 *data = point->data;
1645  lua_pushliteral(luastate, "online");
1646  lua_pushinteger(luastate, data->online);
1647  lua_settable(luastate, -3);
1648  lua_pushliteral(luastate, "restart");
1649  lua_pushinteger(luastate, data->restart);
1650  lua_settable(luastate, -3);
1651  lua_pushliteral(luastate, "comm_lost");
1652  lua_pushinteger(luastate, data->comm_lost);
1653  lua_settable(luastate, -3);
1654  lua_pushliteral(luastate, "remote_forced");
1655  lua_pushinteger(luastate, data->remote_forced);
1656  lua_settable(luastate, -3);
1657  lua_pushliteral(luastate, "local_forced");
1658  lua_pushinteger(luastate, data->local_forced);
1659  lua_settable(luastate, -3);
1660  lua_pushliteral(luastate, "over_range");
1661  lua_pushinteger(luastate, data->over_range);
1662  lua_settable(luastate, -3);
1663  lua_pushliteral(luastate, "reference_err");
1664  lua_pushinteger(luastate, data->reference_err);
1665  lua_settable(luastate, -3);
1666  lua_pushliteral(luastate, "reserved0");
1667  lua_pushinteger(luastate, data->reserved0);
1668  lua_settable(luastate, -3);
1669  lua_pushliteral(luastate, "value");
1670  lua_pushinteger(luastate, data->value);
1671  lua_settable(luastate, -3);
1672  lua_pushliteral(luastate, "timestamp");
1673  lua_pushinteger(luastate, data->timestamp);
1674  lua_settable(luastate, -3);
1675  break;
1676  }
1677  case DNP3_OBJECT_CODE(31, 5): {
1678  DNP3ObjectG31V5 *data = point->data;
1679  lua_pushliteral(luastate, "value");
1680  lua_pushinteger(luastate, data->value);
1681  lua_settable(luastate, -3);
1682  break;
1683  }
1684  case DNP3_OBJECT_CODE(31, 6): {
1685  DNP3ObjectG31V6 *data = point->data;
1686  lua_pushliteral(luastate, "value");
1687  lua_pushinteger(luastate, data->value);
1688  lua_settable(luastate, -3);
1689  break;
1690  }
1691  case DNP3_OBJECT_CODE(31, 7): {
1692  DNP3ObjectG31V7 *data = point->data;
1693  lua_pushliteral(luastate, "online");
1694  lua_pushinteger(luastate, data->online);
1695  lua_settable(luastate, -3);
1696  lua_pushliteral(luastate, "restart");
1697  lua_pushinteger(luastate, data->restart);
1698  lua_settable(luastate, -3);
1699  lua_pushliteral(luastate, "comm_lost");
1700  lua_pushinteger(luastate, data->comm_lost);
1701  lua_settable(luastate, -3);
1702  lua_pushliteral(luastate, "remote_forced");
1703  lua_pushinteger(luastate, data->remote_forced);
1704  lua_settable(luastate, -3);
1705  lua_pushliteral(luastate, "local_forced");
1706  lua_pushinteger(luastate, data->local_forced);
1707  lua_settable(luastate, -3);
1708  lua_pushliteral(luastate, "over_range");
1709  lua_pushinteger(luastate, data->over_range);
1710  lua_settable(luastate, -3);
1711  lua_pushliteral(luastate, "reference_err");
1712  lua_pushinteger(luastate, data->reference_err);
1713  lua_settable(luastate, -3);
1714  lua_pushliteral(luastate, "reserved0");
1715  lua_pushinteger(luastate, data->reserved0);
1716  lua_settable(luastate, -3);
1717  lua_pushliteral(luastate, "value");
1718  lua_pushnumber(luastate, data->value);
1719  lua_settable(luastate, -3);
1720  break;
1721  }
1722  case DNP3_OBJECT_CODE(31, 8): {
1723  DNP3ObjectG31V8 *data = point->data;
1724  lua_pushliteral(luastate, "online");
1725  lua_pushinteger(luastate, data->online);
1726  lua_settable(luastate, -3);
1727  lua_pushliteral(luastate, "restart");
1728  lua_pushinteger(luastate, data->restart);
1729  lua_settable(luastate, -3);
1730  lua_pushliteral(luastate, "comm_lost");
1731  lua_pushinteger(luastate, data->comm_lost);
1732  lua_settable(luastate, -3);
1733  lua_pushliteral(luastate, "remote_forced");
1734  lua_pushinteger(luastate, data->remote_forced);
1735  lua_settable(luastate, -3);
1736  lua_pushliteral(luastate, "local_forced");
1737  lua_pushinteger(luastate, data->local_forced);
1738  lua_settable(luastate, -3);
1739  lua_pushliteral(luastate, "over_range");
1740  lua_pushinteger(luastate, data->over_range);
1741  lua_settable(luastate, -3);
1742  lua_pushliteral(luastate, "reference_err");
1743  lua_pushinteger(luastate, data->reference_err);
1744  lua_settable(luastate, -3);
1745  lua_pushliteral(luastate, "reserved0");
1746  lua_pushinteger(luastate, data->reserved0);
1747  lua_settable(luastate, -3);
1748  lua_pushliteral(luastate, "value");
1749  lua_pushnumber(luastate, data->value);
1750  lua_settable(luastate, -3);
1751  break;
1752  }
1753  case DNP3_OBJECT_CODE(32, 1): {
1754  DNP3ObjectG32V1 *data = point->data;
1755  lua_pushliteral(luastate, "online");
1756  lua_pushinteger(luastate, data->online);
1757  lua_settable(luastate, -3);
1758  lua_pushliteral(luastate, "restart");
1759  lua_pushinteger(luastate, data->restart);
1760  lua_settable(luastate, -3);
1761  lua_pushliteral(luastate, "comm_lost");
1762  lua_pushinteger(luastate, data->comm_lost);
1763  lua_settable(luastate, -3);
1764  lua_pushliteral(luastate, "remote_forced");
1765  lua_pushinteger(luastate, data->remote_forced);
1766  lua_settable(luastate, -3);
1767  lua_pushliteral(luastate, "local_forced");
1768  lua_pushinteger(luastate, data->local_forced);
1769  lua_settable(luastate, -3);
1770  lua_pushliteral(luastate, "over_range");
1771  lua_pushinteger(luastate, data->over_range);
1772  lua_settable(luastate, -3);
1773  lua_pushliteral(luastate, "reference_err");
1774  lua_pushinteger(luastate, data->reference_err);
1775  lua_settable(luastate, -3);
1776  lua_pushliteral(luastate, "reserved0");
1777  lua_pushinteger(luastate, data->reserved0);
1778  lua_settable(luastate, -3);
1779  lua_pushliteral(luastate, "value");
1780  lua_pushinteger(luastate, data->value);
1781  lua_settable(luastate, -3);
1782  break;
1783  }
1784  case DNP3_OBJECT_CODE(32, 2): {
1785  DNP3ObjectG32V2 *data = point->data;
1786  lua_pushliteral(luastate, "online");
1787  lua_pushinteger(luastate, data->online);
1788  lua_settable(luastate, -3);
1789  lua_pushliteral(luastate, "restart");
1790  lua_pushinteger(luastate, data->restart);
1791  lua_settable(luastate, -3);
1792  lua_pushliteral(luastate, "comm_lost");
1793  lua_pushinteger(luastate, data->comm_lost);
1794  lua_settable(luastate, -3);
1795  lua_pushliteral(luastate, "remote_forced");
1796  lua_pushinteger(luastate, data->remote_forced);
1797  lua_settable(luastate, -3);
1798  lua_pushliteral(luastate, "local_forced");
1799  lua_pushinteger(luastate, data->local_forced);
1800  lua_settable(luastate, -3);
1801  lua_pushliteral(luastate, "over_range");
1802  lua_pushinteger(luastate, data->over_range);
1803  lua_settable(luastate, -3);
1804  lua_pushliteral(luastate, "reference_err");
1805  lua_pushinteger(luastate, data->reference_err);
1806  lua_settable(luastate, -3);
1807  lua_pushliteral(luastate, "reserved0");
1808  lua_pushinteger(luastate, data->reserved0);
1809  lua_settable(luastate, -3);
1810  lua_pushliteral(luastate, "value");
1811  lua_pushinteger(luastate, data->value);
1812  lua_settable(luastate, -3);
1813  break;
1814  }
1815  case DNP3_OBJECT_CODE(32, 3): {
1816  DNP3ObjectG32V3 *data = point->data;
1817  lua_pushliteral(luastate, "online");
1818  lua_pushinteger(luastate, data->online);
1819  lua_settable(luastate, -3);
1820  lua_pushliteral(luastate, "restart");
1821  lua_pushinteger(luastate, data->restart);
1822  lua_settable(luastate, -3);
1823  lua_pushliteral(luastate, "comm_lost");
1824  lua_pushinteger(luastate, data->comm_lost);
1825  lua_settable(luastate, -3);
1826  lua_pushliteral(luastate, "remote_forced");
1827  lua_pushinteger(luastate, data->remote_forced);
1828  lua_settable(luastate, -3);
1829  lua_pushliteral(luastate, "local_forced");
1830  lua_pushinteger(luastate, data->local_forced);
1831  lua_settable(luastate, -3);
1832  lua_pushliteral(luastate, "over_range");
1833  lua_pushinteger(luastate, data->over_range);
1834  lua_settable(luastate, -3);
1835  lua_pushliteral(luastate, "reference_err");
1836  lua_pushinteger(luastate, data->reference_err);
1837  lua_settable(luastate, -3);
1838  lua_pushliteral(luastate, "reserved0");
1839  lua_pushinteger(luastate, data->reserved0);
1840  lua_settable(luastate, -3);
1841  lua_pushliteral(luastate, "value");
1842  lua_pushinteger(luastate, data->value);
1843  lua_settable(luastate, -3);
1844  lua_pushliteral(luastate, "timestamp");
1845  lua_pushinteger(luastate, data->timestamp);
1846  lua_settable(luastate, -3);
1847  break;
1848  }
1849  case DNP3_OBJECT_CODE(32, 4): {
1850  DNP3ObjectG32V4 *data = point->data;
1851  lua_pushliteral(luastate, "online");
1852  lua_pushinteger(luastate, data->online);
1853  lua_settable(luastate, -3);
1854  lua_pushliteral(luastate, "restart");
1855  lua_pushinteger(luastate, data->restart);
1856  lua_settable(luastate, -3);
1857  lua_pushliteral(luastate, "comm_lost");
1858  lua_pushinteger(luastate, data->comm_lost);
1859  lua_settable(luastate, -3);
1860  lua_pushliteral(luastate, "remote_forced");
1861  lua_pushinteger(luastate, data->remote_forced);
1862  lua_settable(luastate, -3);
1863  lua_pushliteral(luastate, "local_forced");
1864  lua_pushinteger(luastate, data->local_forced);
1865  lua_settable(luastate, -3);
1866  lua_pushliteral(luastate, "over_range");
1867  lua_pushinteger(luastate, data->over_range);
1868  lua_settable(luastate, -3);
1869  lua_pushliteral(luastate, "reference_err");
1870  lua_pushinteger(luastate, data->reference_err);
1871  lua_settable(luastate, -3);
1872  lua_pushliteral(luastate, "reserved0");
1873  lua_pushinteger(luastate, data->reserved0);
1874  lua_settable(luastate, -3);
1875  lua_pushliteral(luastate, "value");
1876  lua_pushinteger(luastate, data->value);
1877  lua_settable(luastate, -3);
1878  lua_pushliteral(luastate, "timestamp");
1879  lua_pushinteger(luastate, data->timestamp);
1880  lua_settable(luastate, -3);
1881  break;
1882  }
1883  case DNP3_OBJECT_CODE(32, 5): {
1884  DNP3ObjectG32V5 *data = point->data;
1885  lua_pushliteral(luastate, "online");
1886  lua_pushinteger(luastate, data->online);
1887  lua_settable(luastate, -3);
1888  lua_pushliteral(luastate, "restart");
1889  lua_pushinteger(luastate, data->restart);
1890  lua_settable(luastate, -3);
1891  lua_pushliteral(luastate, "comm_lost");
1892  lua_pushinteger(luastate, data->comm_lost);
1893  lua_settable(luastate, -3);
1894  lua_pushliteral(luastate, "remote_forced");
1895  lua_pushinteger(luastate, data->remote_forced);
1896  lua_settable(luastate, -3);
1897  lua_pushliteral(luastate, "local_forced");
1898  lua_pushinteger(luastate, data->local_forced);
1899  lua_settable(luastate, -3);
1900  lua_pushliteral(luastate, "over_range");
1901  lua_pushinteger(luastate, data->over_range);
1902  lua_settable(luastate, -3);
1903  lua_pushliteral(luastate, "reference_err");
1904  lua_pushinteger(luastate, data->reference_err);
1905  lua_settable(luastate, -3);
1906  lua_pushliteral(luastate, "reserved0");
1907  lua_pushinteger(luastate, data->reserved0);
1908  lua_settable(luastate, -3);
1909  lua_pushliteral(luastate, "value");
1910  lua_pushnumber(luastate, data->value);
1911  lua_settable(luastate, -3);
1912  break;
1913  }
1914  case DNP3_OBJECT_CODE(32, 6): {
1915  DNP3ObjectG32V6 *data = point->data;
1916  lua_pushliteral(luastate, "online");
1917  lua_pushinteger(luastate, data->online);
1918  lua_settable(luastate, -3);
1919  lua_pushliteral(luastate, "restart");
1920  lua_pushinteger(luastate, data->restart);
1921  lua_settable(luastate, -3);
1922  lua_pushliteral(luastate, "comm_lost");
1923  lua_pushinteger(luastate, data->comm_lost);
1924  lua_settable(luastate, -3);
1925  lua_pushliteral(luastate, "remote_forced");
1926  lua_pushinteger(luastate, data->remote_forced);
1927  lua_settable(luastate, -3);
1928  lua_pushliteral(luastate, "local_forced");
1929  lua_pushinteger(luastate, data->local_forced);
1930  lua_settable(luastate, -3);
1931  lua_pushliteral(luastate, "over_range");
1932  lua_pushinteger(luastate, data->over_range);
1933  lua_settable(luastate, -3);
1934  lua_pushliteral(luastate, "reference_err");
1935  lua_pushinteger(luastate, data->reference_err);
1936  lua_settable(luastate, -3);
1937  lua_pushliteral(luastate, "reserved0");
1938  lua_pushinteger(luastate, data->reserved0);
1939  lua_settable(luastate, -3);
1940  lua_pushliteral(luastate, "value");
1941  lua_pushnumber(luastate, data->value);
1942  lua_settable(luastate, -3);
1943  break;
1944  }
1945  case DNP3_OBJECT_CODE(32, 7): {
1946  DNP3ObjectG32V7 *data = point->data;
1947  lua_pushliteral(luastate, "online");
1948  lua_pushinteger(luastate, data->online);
1949  lua_settable(luastate, -3);
1950  lua_pushliteral(luastate, "restart");
1951  lua_pushinteger(luastate, data->restart);
1952  lua_settable(luastate, -3);
1953  lua_pushliteral(luastate, "comm_lost");
1954  lua_pushinteger(luastate, data->comm_lost);
1955  lua_settable(luastate, -3);
1956  lua_pushliteral(luastate, "remote_forced");
1957  lua_pushinteger(luastate, data->remote_forced);
1958  lua_settable(luastate, -3);
1959  lua_pushliteral(luastate, "local_forced");
1960  lua_pushinteger(luastate, data->local_forced);
1961  lua_settable(luastate, -3);
1962  lua_pushliteral(luastate, "over_range");
1963  lua_pushinteger(luastate, data->over_range);
1964  lua_settable(luastate, -3);
1965  lua_pushliteral(luastate, "reference_err");
1966  lua_pushinteger(luastate, data->reference_err);
1967  lua_settable(luastate, -3);
1968  lua_pushliteral(luastate, "reserved0");
1969  lua_pushinteger(luastate, data->reserved0);
1970  lua_settable(luastate, -3);
1971  lua_pushliteral(luastate, "value");
1972  lua_pushnumber(luastate, data->value);
1973  lua_settable(luastate, -3);
1974  lua_pushliteral(luastate, "timestamp");
1975  lua_pushinteger(luastate, data->timestamp);
1976  lua_settable(luastate, -3);
1977  break;
1978  }
1979  case DNP3_OBJECT_CODE(32, 8): {
1980  DNP3ObjectG32V8 *data = point->data;
1981  lua_pushliteral(luastate, "online");
1982  lua_pushinteger(luastate, data->online);
1983  lua_settable(luastate, -3);
1984  lua_pushliteral(luastate, "restart");
1985  lua_pushinteger(luastate, data->restart);
1986  lua_settable(luastate, -3);
1987  lua_pushliteral(luastate, "comm_lost");
1988  lua_pushinteger(luastate, data->comm_lost);
1989  lua_settable(luastate, -3);
1990  lua_pushliteral(luastate, "remote_forced");
1991  lua_pushinteger(luastate, data->remote_forced);
1992  lua_settable(luastate, -3);
1993  lua_pushliteral(luastate, "local_forced");
1994  lua_pushinteger(luastate, data->local_forced);
1995  lua_settable(luastate, -3);
1996  lua_pushliteral(luastate, "over_range");
1997  lua_pushinteger(luastate, data->over_range);
1998  lua_settable(luastate, -3);
1999  lua_pushliteral(luastate, "reference_err");
2000  lua_pushinteger(luastate, data->reference_err);
2001  lua_settable(luastate, -3);
2002  lua_pushliteral(luastate, "reserved0");
2003  lua_pushinteger(luastate, data->reserved0);
2004  lua_settable(luastate, -3);
2005  lua_pushliteral(luastate, "value");
2006  lua_pushnumber(luastate, data->value);
2007  lua_settable(luastate, -3);
2008  lua_pushliteral(luastate, "timestamp");
2009  lua_pushinteger(luastate, data->timestamp);
2010  lua_settable(luastate, -3);
2011  break;
2012  }
2013  case DNP3_OBJECT_CODE(33, 1): {
2014  DNP3ObjectG33V1 *data = point->data;
2015  lua_pushliteral(luastate, "online");
2016  lua_pushinteger(luastate, data->online);
2017  lua_settable(luastate, -3);
2018  lua_pushliteral(luastate, "restart");
2019  lua_pushinteger(luastate, data->restart);
2020  lua_settable(luastate, -3);
2021  lua_pushliteral(luastate, "comm_lost");
2022  lua_pushinteger(luastate, data->comm_lost);
2023  lua_settable(luastate, -3);
2024  lua_pushliteral(luastate, "remote_forced");
2025  lua_pushinteger(luastate, data->remote_forced);
2026  lua_settable(luastate, -3);
2027  lua_pushliteral(luastate, "local_forced");
2028  lua_pushinteger(luastate, data->local_forced);
2029  lua_settable(luastate, -3);
2030  lua_pushliteral(luastate, "over_range");
2031  lua_pushinteger(luastate, data->over_range);
2032  lua_settable(luastate, -3);
2033  lua_pushliteral(luastate, "reference_err");
2034  lua_pushinteger(luastate, data->reference_err);
2035  lua_settable(luastate, -3);
2036  lua_pushliteral(luastate, "reserved0");
2037  lua_pushinteger(luastate, data->reserved0);
2038  lua_settable(luastate, -3);
2039  lua_pushliteral(luastate, "value");
2040  lua_pushinteger(luastate, data->value);
2041  lua_settable(luastate, -3);
2042  break;
2043  }
2044  case DNP3_OBJECT_CODE(33, 2): {
2045  DNP3ObjectG33V2 *data = point->data;
2046  lua_pushliteral(luastate, "online");
2047  lua_pushinteger(luastate, data->online);
2048  lua_settable(luastate, -3);
2049  lua_pushliteral(luastate, "restart");
2050  lua_pushinteger(luastate, data->restart);
2051  lua_settable(luastate, -3);
2052  lua_pushliteral(luastate, "comm_lost");
2053  lua_pushinteger(luastate, data->comm_lost);
2054  lua_settable(luastate, -3);
2055  lua_pushliteral(luastate, "remote_forced");
2056  lua_pushinteger(luastate, data->remote_forced);
2057  lua_settable(luastate, -3);
2058  lua_pushliteral(luastate, "local_forced");
2059  lua_pushinteger(luastate, data->local_forced);
2060  lua_settable(luastate, -3);
2061  lua_pushliteral(luastate, "over_range");
2062  lua_pushinteger(luastate, data->over_range);
2063  lua_settable(luastate, -3);
2064  lua_pushliteral(luastate, "reference_err");
2065  lua_pushinteger(luastate, data->reference_err);
2066  lua_settable(luastate, -3);
2067  lua_pushliteral(luastate, "reserved0");
2068  lua_pushinteger(luastate, data->reserved0);
2069  lua_settable(luastate, -3);
2070  lua_pushliteral(luastate, "value");
2071  lua_pushinteger(luastate, data->value);
2072  lua_settable(luastate, -3);
2073  break;
2074  }
2075  case DNP3_OBJECT_CODE(33, 3): {
2076  DNP3ObjectG33V3 *data = point->data;
2077  lua_pushliteral(luastate, "online");
2078  lua_pushinteger(luastate, data->online);
2079  lua_settable(luastate, -3);
2080  lua_pushliteral(luastate, "restart");
2081  lua_pushinteger(luastate, data->restart);
2082  lua_settable(luastate, -3);
2083  lua_pushliteral(luastate, "comm_lost");
2084  lua_pushinteger(luastate, data->comm_lost);
2085  lua_settable(luastate, -3);
2086  lua_pushliteral(luastate, "remote_forced");
2087  lua_pushinteger(luastate, data->remote_forced);
2088  lua_settable(luastate, -3);
2089  lua_pushliteral(luastate, "local_forced");
2090  lua_pushinteger(luastate, data->local_forced);
2091  lua_settable(luastate, -3);
2092  lua_pushliteral(luastate, "over_range");
2093  lua_pushinteger(luastate, data->over_range);
2094  lua_settable(luastate, -3);
2095  lua_pushliteral(luastate, "reference_err");
2096  lua_pushinteger(luastate, data->reference_err);
2097  lua_settable(luastate, -3);
2098  lua_pushliteral(luastate, "reserved0");
2099  lua_pushinteger(luastate, data->reserved0);
2100  lua_settable(luastate, -3);
2101  lua_pushliteral(luastate, "value");
2102  lua_pushinteger(luastate, data->value);
2103  lua_settable(luastate, -3);
2104  lua_pushliteral(luastate, "timestamp");
2105  lua_pushinteger(luastate, data->timestamp);
2106  lua_settable(luastate, -3);
2107  break;
2108  }
2109  case DNP3_OBJECT_CODE(33, 4): {
2110  DNP3ObjectG33V4 *data = point->data;
2111  lua_pushliteral(luastate, "online");
2112  lua_pushinteger(luastate, data->online);
2113  lua_settable(luastate, -3);
2114  lua_pushliteral(luastate, "restart");
2115  lua_pushinteger(luastate, data->restart);
2116  lua_settable(luastate, -3);
2117  lua_pushliteral(luastate, "comm_lost");
2118  lua_pushinteger(luastate, data->comm_lost);
2119  lua_settable(luastate, -3);
2120  lua_pushliteral(luastate, "remote_forced");
2121  lua_pushinteger(luastate, data->remote_forced);
2122  lua_settable(luastate, -3);
2123  lua_pushliteral(luastate, "local_forced");
2124  lua_pushinteger(luastate, data->local_forced);
2125  lua_settable(luastate, -3);
2126  lua_pushliteral(luastate, "over_range");
2127  lua_pushinteger(luastate, data->over_range);
2128  lua_settable(luastate, -3);
2129  lua_pushliteral(luastate, "reference_err");
2130  lua_pushinteger(luastate, data->reference_err);
2131  lua_settable(luastate, -3);
2132  lua_pushliteral(luastate, "reserved0");
2133  lua_pushinteger(luastate, data->reserved0);
2134  lua_settable(luastate, -3);
2135  lua_pushliteral(luastate, "value");
2136  lua_pushinteger(luastate, data->value);
2137  lua_settable(luastate, -3);
2138  lua_pushliteral(luastate, "timestamp");
2139  lua_pushinteger(luastate, data->timestamp);
2140  lua_settable(luastate, -3);
2141  break;
2142  }
2143  case DNP3_OBJECT_CODE(33, 5): {
2144  DNP3ObjectG33V5 *data = point->data;
2145  lua_pushliteral(luastate, "online");
2146  lua_pushinteger(luastate, data->online);
2147  lua_settable(luastate, -3);
2148  lua_pushliteral(luastate, "restart");
2149  lua_pushinteger(luastate, data->restart);
2150  lua_settable(luastate, -3);
2151  lua_pushliteral(luastate, "comm_lost");
2152  lua_pushinteger(luastate, data->comm_lost);
2153  lua_settable(luastate, -3);
2154  lua_pushliteral(luastate, "remote_forced");
2155  lua_pushinteger(luastate, data->remote_forced);
2156  lua_settable(luastate, -3);
2157  lua_pushliteral(luastate, "local_forced");
2158  lua_pushinteger(luastate, data->local_forced);
2159  lua_settable(luastate, -3);
2160  lua_pushliteral(luastate, "over_range");
2161  lua_pushinteger(luastate, data->over_range);
2162  lua_settable(luastate, -3);
2163  lua_pushliteral(luastate, "reference_err");
2164  lua_pushinteger(luastate, data->reference_err);
2165  lua_settable(luastate, -3);
2166  lua_pushliteral(luastate, "reserved0");
2167  lua_pushinteger(luastate, data->reserved0);
2168  lua_settable(luastate, -3);
2169  lua_pushliteral(luastate, "value");
2170  lua_pushnumber(luastate, data->value);
2171  lua_settable(luastate, -3);
2172  break;
2173  }
2174  case DNP3_OBJECT_CODE(33, 6): {
2175  DNP3ObjectG33V6 *data = point->data;
2176  lua_pushliteral(luastate, "online");
2177  lua_pushinteger(luastate, data->online);
2178  lua_settable(luastate, -3);
2179  lua_pushliteral(luastate, "restart");
2180  lua_pushinteger(luastate, data->restart);
2181  lua_settable(luastate, -3);
2182  lua_pushliteral(luastate, "comm_lost");
2183  lua_pushinteger(luastate, data->comm_lost);
2184  lua_settable(luastate, -3);
2185  lua_pushliteral(luastate, "remote_forced");
2186  lua_pushinteger(luastate, data->remote_forced);
2187  lua_settable(luastate, -3);
2188  lua_pushliteral(luastate, "local_forced");
2189  lua_pushinteger(luastate, data->local_forced);
2190  lua_settable(luastate, -3);
2191  lua_pushliteral(luastate, "over_range");
2192  lua_pushinteger(luastate, data->over_range);
2193  lua_settable(luastate, -3);
2194  lua_pushliteral(luastate, "reference_err");
2195  lua_pushinteger(luastate, data->reference_err);
2196  lua_settable(luastate, -3);
2197  lua_pushliteral(luastate, "reserved0");
2198  lua_pushinteger(luastate, data->reserved0);
2199  lua_settable(luastate, -3);
2200  lua_pushliteral(luastate, "value");
2201  lua_pushnumber(luastate, data->value);
2202  lua_settable(luastate, -3);
2203  break;
2204  }
2205  case DNP3_OBJECT_CODE(33, 7): {
2206  DNP3ObjectG33V7 *data = point->data;
2207  lua_pushliteral(luastate, "online");
2208  lua_pushinteger(luastate, data->online);
2209  lua_settable(luastate, -3);
2210  lua_pushliteral(luastate, "restart");
2211  lua_pushinteger(luastate, data->restart);
2212  lua_settable(luastate, -3);
2213  lua_pushliteral(luastate, "comm_lost");
2214  lua_pushinteger(luastate, data->comm_lost);
2215  lua_settable(luastate, -3);
2216  lua_pushliteral(luastate, "remote_forced");
2217  lua_pushinteger(luastate, data->remote_forced);
2218  lua_settable(luastate, -3);
2219  lua_pushliteral(luastate, "local_forced");
2220  lua_pushinteger(luastate, data->local_forced);
2221  lua_settable(luastate, -3);
2222  lua_pushliteral(luastate, "over_range");
2223  lua_pushinteger(luastate, data->over_range);
2224  lua_settable(luastate, -3);
2225  lua_pushliteral(luastate, "reference_err");
2226  lua_pushinteger(luastate, data->reference_err);
2227  lua_settable(luastate, -3);
2228  lua_pushliteral(luastate, "reserved0");
2229  lua_pushinteger(luastate, data->reserved0);
2230  lua_settable(luastate, -3);
2231  lua_pushliteral(luastate, "value");
2232  lua_pushnumber(luastate, data->value);
2233  lua_settable(luastate, -3);
2234  lua_pushliteral(luastate, "timestamp");
2235  lua_pushinteger(luastate, data->timestamp);
2236  lua_settable(luastate, -3);
2237  break;
2238  }
2239  case DNP3_OBJECT_CODE(33, 8): {
2240  DNP3ObjectG33V8 *data = point->data;
2241  lua_pushliteral(luastate, "online");
2242  lua_pushinteger(luastate, data->online);
2243  lua_settable(luastate, -3);
2244  lua_pushliteral(luastate, "restart");
2245  lua_pushinteger(luastate, data->restart);
2246  lua_settable(luastate, -3);
2247  lua_pushliteral(luastate, "comm_lost");
2248  lua_pushinteger(luastate, data->comm_lost);
2249  lua_settable(luastate, -3);
2250  lua_pushliteral(luastate, "remote_forced");
2251  lua_pushinteger(luastate, data->remote_forced);
2252  lua_settable(luastate, -3);
2253  lua_pushliteral(luastate, "local_forced");
2254  lua_pushinteger(luastate, data->local_forced);
2255  lua_settable(luastate, -3);
2256  lua_pushliteral(luastate, "over_range");
2257  lua_pushinteger(luastate, data->over_range);
2258  lua_settable(luastate, -3);
2259  lua_pushliteral(luastate, "reference_err");
2260  lua_pushinteger(luastate, data->reference_err);
2261  lua_settable(luastate, -3);
2262  lua_pushliteral(luastate, "reserved0");
2263  lua_pushinteger(luastate, data->reserved0);
2264  lua_settable(luastate, -3);
2265  lua_pushliteral(luastate, "value");
2266  lua_pushnumber(luastate, data->value);
2267  lua_settable(luastate, -3);
2268  lua_pushliteral(luastate, "timestamp");
2269  lua_pushinteger(luastate, data->timestamp);
2270  lua_settable(luastate, -3);
2271  break;
2272  }
2273  case DNP3_OBJECT_CODE(34, 1): {
2274  DNP3ObjectG34V1 *data = point->data;
2275  lua_pushliteral(luastate, "deadband_value");
2276  lua_pushinteger(luastate, data->deadband_value);
2277  lua_settable(luastate, -3);
2278  break;
2279  }
2280  case DNP3_OBJECT_CODE(34, 2): {
2281  DNP3ObjectG34V2 *data = point->data;
2282  lua_pushliteral(luastate, "deadband_value");
2283  lua_pushinteger(luastate, data->deadband_value);
2284  lua_settable(luastate, -3);
2285  break;
2286  }
2287  case DNP3_OBJECT_CODE(34, 3): {
2288  DNP3ObjectG34V3 *data = point->data;
2289  lua_pushliteral(luastate, "deadband_value");
2290  lua_pushnumber(luastate, data->deadband_value);
2291  lua_settable(luastate, -3);
2292  break;
2293  }
2294  case DNP3_OBJECT_CODE(40, 1): {
2295  DNP3ObjectG40V1 *data = point->data;
2296  lua_pushliteral(luastate, "online");
2297  lua_pushinteger(luastate, data->online);
2298  lua_settable(luastate, -3);
2299  lua_pushliteral(luastate, "restart");
2300  lua_pushinteger(luastate, data->restart);
2301  lua_settable(luastate, -3);
2302  lua_pushliteral(luastate, "comm_lost");
2303  lua_pushinteger(luastate, data->comm_lost);
2304  lua_settable(luastate, -3);
2305  lua_pushliteral(luastate, "remote_forced");
2306  lua_pushinteger(luastate, data->remote_forced);
2307  lua_settable(luastate, -3);
2308  lua_pushliteral(luastate, "local_forced");
2309  lua_pushinteger(luastate, data->local_forced);
2310  lua_settable(luastate, -3);
2311  lua_pushliteral(luastate, "over_range");
2312  lua_pushinteger(luastate, data->over_range);
2313  lua_settable(luastate, -3);
2314  lua_pushliteral(luastate, "reference_err");
2315  lua_pushinteger(luastate, data->reference_err);
2316  lua_settable(luastate, -3);
2317  lua_pushliteral(luastate, "reserved0");
2318  lua_pushinteger(luastate, data->reserved0);
2319  lua_settable(luastate, -3);
2320  lua_pushliteral(luastate, "value");
2321  lua_pushinteger(luastate, data->value);
2322  lua_settable(luastate, -3);
2323  break;
2324  }
2325  case DNP3_OBJECT_CODE(40, 2): {
2326  DNP3ObjectG40V2 *data = point->data;
2327  lua_pushliteral(luastate, "online");
2328  lua_pushinteger(luastate, data->online);
2329  lua_settable(luastate, -3);
2330  lua_pushliteral(luastate, "restart");
2331  lua_pushinteger(luastate, data->restart);
2332  lua_settable(luastate, -3);
2333  lua_pushliteral(luastate, "comm_lost");
2334  lua_pushinteger(luastate, data->comm_lost);
2335  lua_settable(luastate, -3);
2336  lua_pushliteral(luastate, "remote_forced");
2337  lua_pushinteger(luastate, data->remote_forced);
2338  lua_settable(luastate, -3);
2339  lua_pushliteral(luastate, "local_forced");
2340  lua_pushinteger(luastate, data->local_forced);
2341  lua_settable(luastate, -3);
2342  lua_pushliteral(luastate, "over_range");
2343  lua_pushinteger(luastate, data->over_range);
2344  lua_settable(luastate, -3);
2345  lua_pushliteral(luastate, "reference_err");
2346  lua_pushinteger(luastate, data->reference_err);
2347  lua_settable(luastate, -3);
2348  lua_pushliteral(luastate, "reserved0");
2349  lua_pushinteger(luastate, data->reserved0);
2350  lua_settable(luastate, -3);
2351  lua_pushliteral(luastate, "value");
2352  lua_pushinteger(luastate, data->value);
2353  lua_settable(luastate, -3);
2354  break;
2355  }
2356  case DNP3_OBJECT_CODE(40, 3): {
2357  DNP3ObjectG40V3 *data = point->data;
2358  lua_pushliteral(luastate, "online");
2359  lua_pushinteger(luastate, data->online);
2360  lua_settable(luastate, -3);
2361  lua_pushliteral(luastate, "restart");
2362  lua_pushinteger(luastate, data->restart);
2363  lua_settable(luastate, -3);
2364  lua_pushliteral(luastate, "comm_lost");
2365  lua_pushinteger(luastate, data->comm_lost);
2366  lua_settable(luastate, -3);
2367  lua_pushliteral(luastate, "remote_forced");
2368  lua_pushinteger(luastate, data->remote_forced);
2369  lua_settable(luastate, -3);
2370  lua_pushliteral(luastate, "local_forced");
2371  lua_pushinteger(luastate, data->local_forced);
2372  lua_settable(luastate, -3);
2373  lua_pushliteral(luastate, "over_range");
2374  lua_pushinteger(luastate, data->over_range);
2375  lua_settable(luastate, -3);
2376  lua_pushliteral(luastate, "reference_err");
2377  lua_pushinteger(luastate, data->reference_err);
2378  lua_settable(luastate, -3);
2379  lua_pushliteral(luastate, "reserved0");
2380  lua_pushinteger(luastate, data->reserved0);
2381  lua_settable(luastate, -3);
2382  lua_pushliteral(luastate, "value");
2383  lua_pushnumber(luastate, data->value);
2384  lua_settable(luastate, -3);
2385  break;
2386  }
2387  case DNP3_OBJECT_CODE(40, 4): {
2388  DNP3ObjectG40V4 *data = point->data;
2389  lua_pushliteral(luastate, "online");
2390  lua_pushinteger(luastate, data->online);
2391  lua_settable(luastate, -3);
2392  lua_pushliteral(luastate, "restart");
2393  lua_pushinteger(luastate, data->restart);
2394  lua_settable(luastate, -3);
2395  lua_pushliteral(luastate, "comm_lost");
2396  lua_pushinteger(luastate, data->comm_lost);
2397  lua_settable(luastate, -3);
2398  lua_pushliteral(luastate, "remote_forced");
2399  lua_pushinteger(luastate, data->remote_forced);
2400  lua_settable(luastate, -3);
2401  lua_pushliteral(luastate, "local_forced");
2402  lua_pushinteger(luastate, data->local_forced);
2403  lua_settable(luastate, -3);
2404  lua_pushliteral(luastate, "over_range");
2405  lua_pushinteger(luastate, data->over_range);
2406  lua_settable(luastate, -3);
2407  lua_pushliteral(luastate, "reference_err");
2408  lua_pushinteger(luastate, data->reference_err);
2409  lua_settable(luastate, -3);
2410  lua_pushliteral(luastate, "reserved0");
2411  lua_pushinteger(luastate, data->reserved0);
2412  lua_settable(luastate, -3);
2413  lua_pushliteral(luastate, "value");
2414  lua_pushnumber(luastate, data->value);
2415  lua_settable(luastate, -3);
2416  break;
2417  }
2418  case DNP3_OBJECT_CODE(41, 1): {
2419  DNP3ObjectG41V1 *data = point->data;
2420  lua_pushliteral(luastate, "value");
2421  lua_pushinteger(luastate, data->value);
2422  lua_settable(luastate, -3);
2423  lua_pushliteral(luastate, "control_status");
2424  lua_pushinteger(luastate, data->control_status);
2425  lua_settable(luastate, -3);
2426  break;
2427  }
2428  case DNP3_OBJECT_CODE(41, 2): {
2429  DNP3ObjectG41V2 *data = point->data;
2430  lua_pushliteral(luastate, "value");
2431  lua_pushinteger(luastate, data->value);
2432  lua_settable(luastate, -3);
2433  lua_pushliteral(luastate, "control_status");
2434  lua_pushinteger(luastate, data->control_status);
2435  lua_settable(luastate, -3);
2436  break;
2437  }
2438  case DNP3_OBJECT_CODE(41, 3): {
2439  DNP3ObjectG41V3 *data = point->data;
2440  lua_pushliteral(luastate, "value");
2441  lua_pushnumber(luastate, data->value);
2442  lua_settable(luastate, -3);
2443  lua_pushliteral(luastate, "control_status");
2444  lua_pushinteger(luastate, data->control_status);
2445  lua_settable(luastate, -3);
2446  break;
2447  }
2448  case DNP3_OBJECT_CODE(41, 4): {
2449  DNP3ObjectG41V4 *data = point->data;
2450  lua_pushliteral(luastate, "value");
2451  lua_pushnumber(luastate, data->value);
2452  lua_settable(luastate, -3);
2453  lua_pushliteral(luastate, "control_status");
2454  lua_pushinteger(luastate, data->control_status);
2455  lua_settable(luastate, -3);
2456  break;
2457  }
2458  case DNP3_OBJECT_CODE(42, 1): {
2459  DNP3ObjectG42V1 *data = point->data;
2460  lua_pushliteral(luastate, "online");
2461  lua_pushinteger(luastate, data->online);
2462  lua_settable(luastate, -3);
2463  lua_pushliteral(luastate, "restart");
2464  lua_pushinteger(luastate, data->restart);
2465  lua_settable(luastate, -3);
2466  lua_pushliteral(luastate, "comm_lost");
2467  lua_pushinteger(luastate, data->comm_lost);
2468  lua_settable(luastate, -3);
2469  lua_pushliteral(luastate, "remote_forced");
2470  lua_pushinteger(luastate, data->remote_forced);
2471  lua_settable(luastate, -3);
2472  lua_pushliteral(luastate, "local_forced");
2473  lua_pushinteger(luastate, data->local_forced);
2474  lua_settable(luastate, -3);
2475  lua_pushliteral(luastate, "over_range");
2476  lua_pushinteger(luastate, data->over_range);
2477  lua_settable(luastate, -3);
2478  lua_pushliteral(luastate, "reference_err");
2479  lua_pushinteger(luastate, data->reference_err);
2480  lua_settable(luastate, -3);
2481  lua_pushliteral(luastate, "reserved0");
2482  lua_pushinteger(luastate, data->reserved0);
2483  lua_settable(luastate, -3);
2484  lua_pushliteral(luastate, "value");
2485  lua_pushinteger(luastate, data->value);
2486  lua_settable(luastate, -3);
2487  break;
2488  }
2489  case DNP3_OBJECT_CODE(42, 2): {
2490  DNP3ObjectG42V2 *data = point->data;
2491  lua_pushliteral(luastate, "online");
2492  lua_pushinteger(luastate, data->online);
2493  lua_settable(luastate, -3);
2494  lua_pushliteral(luastate, "restart");
2495  lua_pushinteger(luastate, data->restart);
2496  lua_settable(luastate, -3);
2497  lua_pushliteral(luastate, "comm_lost");
2498  lua_pushinteger(luastate, data->comm_lost);
2499  lua_settable(luastate, -3);
2500  lua_pushliteral(luastate, "remote_forced");
2501  lua_pushinteger(luastate, data->remote_forced);
2502  lua_settable(luastate, -3);
2503  lua_pushliteral(luastate, "local_forced");
2504  lua_pushinteger(luastate, data->local_forced);
2505  lua_settable(luastate, -3);
2506  lua_pushliteral(luastate, "over_range");
2507  lua_pushinteger(luastate, data->over_range);
2508  lua_settable(luastate, -3);
2509  lua_pushliteral(luastate, "reference_err");
2510  lua_pushinteger(luastate, data->reference_err);
2511  lua_settable(luastate, -3);
2512  lua_pushliteral(luastate, "reserved0");
2513  lua_pushinteger(luastate, data->reserved0);
2514  lua_settable(luastate, -3);
2515  lua_pushliteral(luastate, "value");
2516  lua_pushinteger(luastate, data->value);
2517  lua_settable(luastate, -3);
2518  break;
2519  }
2520  case DNP3_OBJECT_CODE(42, 3): {
2521  DNP3ObjectG42V3 *data = point->data;
2522  lua_pushliteral(luastate, "online");
2523  lua_pushinteger(luastate, data->online);
2524  lua_settable(luastate, -3);
2525  lua_pushliteral(luastate, "restart");
2526  lua_pushinteger(luastate, data->restart);
2527  lua_settable(luastate, -3);
2528  lua_pushliteral(luastate, "comm_lost");
2529  lua_pushinteger(luastate, data->comm_lost);
2530  lua_settable(luastate, -3);
2531  lua_pushliteral(luastate, "remote_forced");
2532  lua_pushinteger(luastate, data->remote_forced);
2533  lua_settable(luastate, -3);
2534  lua_pushliteral(luastate, "local_forced");
2535  lua_pushinteger(luastate, data->local_forced);
2536  lua_settable(luastate, -3);
2537  lua_pushliteral(luastate, "over_range");
2538  lua_pushinteger(luastate, data->over_range);
2539  lua_settable(luastate, -3);
2540  lua_pushliteral(luastate, "reference_err");
2541  lua_pushinteger(luastate, data->reference_err);
2542  lua_settable(luastate, -3);
2543  lua_pushliteral(luastate, "reserved0");
2544  lua_pushinteger(luastate, data->reserved0);
2545  lua_settable(luastate, -3);
2546  lua_pushliteral(luastate, "value");
2547  lua_pushinteger(luastate, data->value);
2548  lua_settable(luastate, -3);
2549  lua_pushliteral(luastate, "timestamp");
2550  lua_pushinteger(luastate, data->timestamp);
2551  lua_settable(luastate, -3);
2552  break;
2553  }
2554  case DNP3_OBJECT_CODE(42, 4): {
2555  DNP3ObjectG42V4 *data = point->data;
2556  lua_pushliteral(luastate, "online");
2557  lua_pushinteger(luastate, data->online);
2558  lua_settable(luastate, -3);
2559  lua_pushliteral(luastate, "restart");
2560  lua_pushinteger(luastate, data->restart);
2561  lua_settable(luastate, -3);
2562  lua_pushliteral(luastate, "comm_lost");
2563  lua_pushinteger(luastate, data->comm_lost);
2564  lua_settable(luastate, -3);
2565  lua_pushliteral(luastate, "remote_forced");
2566  lua_pushinteger(luastate, data->remote_forced);
2567  lua_settable(luastate, -3);
2568  lua_pushliteral(luastate, "local_forced");
2569  lua_pushinteger(luastate, data->local_forced);
2570  lua_settable(luastate, -3);
2571  lua_pushliteral(luastate, "over_range");
2572  lua_pushinteger(luastate, data->over_range);
2573  lua_settable(luastate, -3);
2574  lua_pushliteral(luastate, "reference_err");
2575  lua_pushinteger(luastate, data->reference_err);
2576  lua_settable(luastate, -3);
2577  lua_pushliteral(luastate, "reserved0");
2578  lua_pushinteger(luastate, data->reserved0);
2579  lua_settable(luastate, -3);
2580  lua_pushliteral(luastate, "value");
2581  lua_pushinteger(luastate, data->value);
2582  lua_settable(luastate, -3);
2583  lua_pushliteral(luastate, "timestamp");
2584  lua_pushinteger(luastate, data->timestamp);
2585  lua_settable(luastate, -3);
2586  break;
2587  }
2588  case DNP3_OBJECT_CODE(42, 5): {
2589  DNP3ObjectG42V5 *data = point->data;
2590  lua_pushliteral(luastate, "online");
2591  lua_pushinteger(luastate, data->online);
2592  lua_settable(luastate, -3);
2593  lua_pushliteral(luastate, "restart");
2594  lua_pushinteger(luastate, data->restart);
2595  lua_settable(luastate, -3);
2596  lua_pushliteral(luastate, "comm_lost");
2597  lua_pushinteger(luastate, data->comm_lost);
2598  lua_settable(luastate, -3);
2599  lua_pushliteral(luastate, "remote_forced");
2600  lua_pushinteger(luastate, data->remote_forced);
2601  lua_settable(luastate, -3);
2602  lua_pushliteral(luastate, "local_forced");
2603  lua_pushinteger(luastate, data->local_forced);
2604  lua_settable(luastate, -3);
2605  lua_pushliteral(luastate, "over_range");
2606  lua_pushinteger(luastate, data->over_range);
2607  lua_settable(luastate, -3);
2608  lua_pushliteral(luastate, "reference_err");
2609  lua_pushinteger(luastate, data->reference_err);
2610  lua_settable(luastate, -3);
2611  lua_pushliteral(luastate, "reserved0");
2612  lua_pushinteger(luastate, data->reserved0);
2613  lua_settable(luastate, -3);
2614  lua_pushliteral(luastate, "value");
2615  lua_pushnumber(luastate, data->value);
2616  lua_settable(luastate, -3);
2617  break;
2618  }
2619  case DNP3_OBJECT_CODE(42, 6): {
2620  DNP3ObjectG42V6 *data = point->data;
2621  lua_pushliteral(luastate, "online");
2622  lua_pushinteger(luastate, data->online);
2623  lua_settable(luastate, -3);
2624  lua_pushliteral(luastate, "restart");
2625  lua_pushinteger(luastate, data->restart);
2626  lua_settable(luastate, -3);
2627  lua_pushliteral(luastate, "comm_lost");
2628  lua_pushinteger(luastate, data->comm_lost);
2629  lua_settable(luastate, -3);
2630  lua_pushliteral(luastate, "remote_forced");
2631  lua_pushinteger(luastate, data->remote_forced);
2632  lua_settable(luastate, -3);
2633  lua_pushliteral(luastate, "local_forced");
2634  lua_pushinteger(luastate, data->local_forced);
2635  lua_settable(luastate, -3);
2636  lua_pushliteral(luastate, "over_range");
2637  lua_pushinteger(luastate, data->over_range);
2638  lua_settable(luastate, -3);
2639  lua_pushliteral(luastate, "reference_err");
2640  lua_pushinteger(luastate, data->reference_err);
2641  lua_settable(luastate, -3);
2642  lua_pushliteral(luastate, "reserved0");
2643  lua_pushinteger(luastate, data->reserved0);
2644  lua_settable(luastate, -3);
2645  lua_pushliteral(luastate, "value");
2646  lua_pushnumber(luastate, data->value);
2647  lua_settable(luastate, -3);
2648  break;
2649  }
2650  case DNP3_OBJECT_CODE(42, 7): {
2651  DNP3ObjectG42V7 *data = point->data;
2652  lua_pushliteral(luastate, "online");
2653  lua_pushinteger(luastate, data->online);
2654  lua_settable(luastate, -3);
2655  lua_pushliteral(luastate, "restart");
2656  lua_pushinteger(luastate, data->restart);
2657  lua_settable(luastate, -3);
2658  lua_pushliteral(luastate, "comm_lost");
2659  lua_pushinteger(luastate, data->comm_lost);
2660  lua_settable(luastate, -3);
2661  lua_pushliteral(luastate, "remote_forced");
2662  lua_pushinteger(luastate, data->remote_forced);
2663  lua_settable(luastate, -3);
2664  lua_pushliteral(luastate, "local_forced");
2665  lua_pushinteger(luastate, data->local_forced);
2666  lua_settable(luastate, -3);
2667  lua_pushliteral(luastate, "over_range");
2668  lua_pushinteger(luastate, data->over_range);
2669  lua_settable(luastate, -3);
2670  lua_pushliteral(luastate, "reference_err");
2671  lua_pushinteger(luastate, data->reference_err);
2672  lua_settable(luastate, -3);
2673  lua_pushliteral(luastate, "reserved0");
2674  lua_pushinteger(luastate, data->reserved0);
2675  lua_settable(luastate, -3);
2676  lua_pushliteral(luastate, "value");
2677  lua_pushnumber(luastate, data->value);
2678  lua_settable(luastate, -3);
2679  lua_pushliteral(luastate, "timestamp");
2680  lua_pushinteger(luastate, data->timestamp);
2681  lua_settable(luastate, -3);
2682  break;
2683  }
2684  case DNP3_OBJECT_CODE(42, 8): {
2685  DNP3ObjectG42V8 *data = point->data;
2686  lua_pushliteral(luastate, "online");
2687  lua_pushinteger(luastate, data->online);
2688  lua_settable(luastate, -3);
2689  lua_pushliteral(luastate, "restart");
2690  lua_pushinteger(luastate, data->restart);
2691  lua_settable(luastate, -3);
2692  lua_pushliteral(luastate, "comm_lost");
2693  lua_pushinteger(luastate, data->comm_lost);
2694  lua_settable(luastate, -3);
2695  lua_pushliteral(luastate, "remote_forced");
2696  lua_pushinteger(luastate, data->remote_forced);
2697  lua_settable(luastate, -3);
2698  lua_pushliteral(luastate, "local_forced");
2699  lua_pushinteger(luastate, data->local_forced);
2700  lua_settable(luastate, -3);
2701  lua_pushliteral(luastate, "over_range");
2702  lua_pushinteger(luastate, data->over_range);
2703  lua_settable(luastate, -3);
2704  lua_pushliteral(luastate, "reference_err");
2705  lua_pushinteger(luastate, data->reference_err);
2706  lua_settable(luastate, -3);
2707  lua_pushliteral(luastate, "reserved0");
2708  lua_pushinteger(luastate, data->reserved0);
2709  lua_settable(luastate, -3);
2710  lua_pushliteral(luastate, "value");
2711  lua_pushnumber(luastate, data->value);
2712  lua_settable(luastate, -3);
2713  lua_pushliteral(luastate, "timestamp");
2714  lua_pushinteger(luastate, data->timestamp);
2715  lua_settable(luastate, -3);
2716  break;
2717  }
2718  case DNP3_OBJECT_CODE(43, 1): {
2719  DNP3ObjectG43V1 *data = point->data;
2720  lua_pushliteral(luastate, "status_code");
2721  lua_pushinteger(luastate, data->status_code);
2722  lua_settable(luastate, -3);
2723  lua_pushliteral(luastate, "reserved0");
2724  lua_pushinteger(luastate, data->reserved0);
2725  lua_settable(luastate, -3);
2726  lua_pushliteral(luastate, "commanded_value");
2727  lua_pushinteger(luastate, data->commanded_value);
2728  lua_settable(luastate, -3);
2729  break;
2730  }
2731  case DNP3_OBJECT_CODE(43, 2): {
2732  DNP3ObjectG43V2 *data = point->data;
2733  lua_pushliteral(luastate, "status_code");
2734  lua_pushinteger(luastate, data->status_code);
2735  lua_settable(luastate, -3);
2736  lua_pushliteral(luastate, "reserved0");
2737  lua_pushinteger(luastate, data->reserved0);
2738  lua_settable(luastate, -3);
2739  lua_pushliteral(luastate, "commanded_value");
2740  lua_pushinteger(luastate, data->commanded_value);
2741  lua_settable(luastate, -3);
2742  break;
2743  }
2744  case DNP3_OBJECT_CODE(43, 3): {
2745  DNP3ObjectG43V3 *data = point->data;
2746  lua_pushliteral(luastate, "status_code");
2747  lua_pushinteger(luastate, data->status_code);
2748  lua_settable(luastate, -3);
2749  lua_pushliteral(luastate, "reserved0");
2750  lua_pushinteger(luastate, data->reserved0);
2751  lua_settable(luastate, -3);
2752  lua_pushliteral(luastate, "commanded_value");
2753  lua_pushinteger(luastate, data->commanded_value);
2754  lua_settable(luastate, -3);
2755  lua_pushliteral(luastate, "timestamp");
2756  lua_pushinteger(luastate, data->timestamp);
2757  lua_settable(luastate, -3);
2758  break;
2759  }
2760  case DNP3_OBJECT_CODE(43, 4): {
2761  DNP3ObjectG43V4 *data = point->data;
2762  lua_pushliteral(luastate, "status_code");
2763  lua_pushinteger(luastate, data->status_code);
2764  lua_settable(luastate, -3);
2765  lua_pushliteral(luastate, "reserved0");
2766  lua_pushinteger(luastate, data->reserved0);
2767  lua_settable(luastate, -3);
2768  lua_pushliteral(luastate, "commanded_value");
2769  lua_pushinteger(luastate, data->commanded_value);
2770  lua_settable(luastate, -3);
2771  lua_pushliteral(luastate, "timestamp");
2772  lua_pushinteger(luastate, data->timestamp);
2773  lua_settable(luastate, -3);
2774  break;
2775  }
2776  case DNP3_OBJECT_CODE(43, 5): {
2777  DNP3ObjectG43V5 *data = point->data;
2778  lua_pushliteral(luastate, "status_code");
2779  lua_pushinteger(luastate, data->status_code);
2780  lua_settable(luastate, -3);
2781  lua_pushliteral(luastate, "reserved0");
2782  lua_pushinteger(luastate, data->reserved0);
2783  lua_settable(luastate, -3);
2784  lua_pushliteral(luastate, "commanded_value");
2785  lua_pushnumber(luastate, data->commanded_value);
2786  lua_settable(luastate, -3);
2787  break;
2788  }
2789  case DNP3_OBJECT_CODE(43, 6): {
2790  DNP3ObjectG43V6 *data = point->data;
2791  lua_pushliteral(luastate, "status_code");
2792  lua_pushinteger(luastate, data->status_code);
2793  lua_settable(luastate, -3);
2794  lua_pushliteral(luastate, "reserved0");
2795  lua_pushinteger(luastate, data->reserved0);
2796  lua_settable(luastate, -3);
2797  lua_pushliteral(luastate, "commanded_value");
2798  lua_pushnumber(luastate, data->commanded_value);
2799  lua_settable(luastate, -3);
2800  break;
2801  }
2802  case DNP3_OBJECT_CODE(43, 7): {
2803  DNP3ObjectG43V7 *data = point->data;
2804  lua_pushliteral(luastate, "status_code");
2805  lua_pushinteger(luastate, data->status_code);
2806  lua_settable(luastate, -3);
2807  lua_pushliteral(luastate, "reserved0");
2808  lua_pushinteger(luastate, data->reserved0);
2809  lua_settable(luastate, -3);
2810  lua_pushliteral(luastate, "commanded_value");
2811  lua_pushnumber(luastate, data->commanded_value);
2812  lua_settable(luastate, -3);
2813  lua_pushliteral(luastate, "timestamp");
2814  lua_pushinteger(luastate, data->timestamp);
2815  lua_settable(luastate, -3);
2816  break;
2817  }
2818  case DNP3_OBJECT_CODE(43, 8): {
2819  DNP3ObjectG43V8 *data = point->data;
2820  lua_pushliteral(luastate, "status_code");
2821  lua_pushinteger(luastate, data->status_code);
2822  lua_settable(luastate, -3);
2823  lua_pushliteral(luastate, "reserved0");
2824  lua_pushinteger(luastate, data->reserved0);
2825  lua_settable(luastate, -3);
2826  lua_pushliteral(luastate, "commanded_value");
2827  lua_pushnumber(luastate, data->commanded_value);
2828  lua_settable(luastate, -3);
2829  lua_pushliteral(luastate, "timestamp");
2830  lua_pushinteger(luastate, data->timestamp);
2831  lua_settable(luastate, -3);
2832  break;
2833  }
2834  case DNP3_OBJECT_CODE(50, 1): {
2835  DNP3ObjectG50V1 *data = point->data;
2836  lua_pushliteral(luastate, "timestamp");
2837  lua_pushinteger(luastate, data->timestamp);
2838  lua_settable(luastate, -3);
2839  break;
2840  }
2841  case DNP3_OBJECT_CODE(50, 2): {
2842  DNP3ObjectG50V2 *data = point->data;
2843  lua_pushliteral(luastate, "timestamp");
2844  lua_pushinteger(luastate, data->timestamp);
2845  lua_settable(luastate, -3);
2846  lua_pushliteral(luastate, "interval");
2847  lua_pushinteger(luastate, data->interval);
2848  lua_settable(luastate, -3);
2849  break;
2850  }
2851  case DNP3_OBJECT_CODE(50, 3): {
2852  DNP3ObjectG50V3 *data = point->data;
2853  lua_pushliteral(luastate, "timestamp");
2854  lua_pushinteger(luastate, data->timestamp);
2855  lua_settable(luastate, -3);
2856  break;
2857  }
2858  case DNP3_OBJECT_CODE(50, 4): {
2859  DNP3ObjectG50V4 *data = point->data;
2860  lua_pushliteral(luastate, "timestamp");
2861  lua_pushinteger(luastate, data->timestamp);
2862  lua_settable(luastate, -3);
2863  lua_pushliteral(luastate, "interval_count");
2864  lua_pushinteger(luastate, data->interval_count);
2865  lua_settable(luastate, -3);
2866  lua_pushliteral(luastate, "interval_units");
2867  lua_pushinteger(luastate, data->interval_units);
2868  lua_settable(luastate, -3);
2869  break;
2870  }
2871  case DNP3_OBJECT_CODE(51, 1): {
2872  DNP3ObjectG51V1 *data = point->data;
2873  lua_pushliteral(luastate, "timestamp");
2874  lua_pushinteger(luastate, data->timestamp);
2875  lua_settable(luastate, -3);
2876  break;
2877  }
2878  case DNP3_OBJECT_CODE(51, 2): {
2879  DNP3ObjectG51V2 *data = point->data;
2880  lua_pushliteral(luastate, "timestamp");
2881  lua_pushinteger(luastate, data->timestamp);
2882  lua_settable(luastate, -3);
2883  break;
2884  }
2885  case DNP3_OBJECT_CODE(52, 1): {
2886  DNP3ObjectG52V1 *data = point->data;
2887  lua_pushliteral(luastate, "delay_secs");
2888  lua_pushinteger(luastate, data->delay_secs);
2889  lua_settable(luastate, -3);
2890  break;
2891  }
2892  case DNP3_OBJECT_CODE(52, 2): {
2893  DNP3ObjectG52V2 *data = point->data;
2894  lua_pushliteral(luastate, "delay_ms");
2895  lua_pushinteger(luastate, data->delay_ms);
2896  lua_settable(luastate, -3);
2897  break;
2898  }
2899  case DNP3_OBJECT_CODE(70, 1): {
2900  DNP3ObjectG70V1 *data = point->data;
2901  lua_pushliteral(luastate, "filename_size");
2902  lua_pushinteger(luastate, data->filename_size);
2903  lua_settable(luastate, -3);
2904  lua_pushliteral(luastate, "filetype_code");
2905  lua_pushinteger(luastate, data->filetype_code);
2906  lua_settable(luastate, -3);
2907  lua_pushliteral(luastate, "attribute_code");
2908  lua_pushinteger(luastate, data->attribute_code);
2909  lua_settable(luastate, -3);
2910  lua_pushliteral(luastate, "start_record");
2911  lua_pushinteger(luastate, data->start_record);
2912  lua_settable(luastate, -3);
2913  lua_pushliteral(luastate, "end_record");
2914  lua_pushinteger(luastate, data->end_record);
2915  lua_settable(luastate, -3);
2916  lua_pushliteral(luastate, "file_size");
2917  lua_pushinteger(luastate, data->file_size);
2918  lua_settable(luastate, -3);
2919  lua_pushliteral(luastate, "created_timestamp");
2920  lua_pushinteger(luastate, data->created_timestamp);
2921  lua_settable(luastate, -3);
2922  lua_pushliteral(luastate, "permission");
2923  lua_pushinteger(luastate, data->permission);
2924  lua_settable(luastate, -3);
2925  lua_pushliteral(luastate, "file_id");
2926  lua_pushinteger(luastate, data->file_id);
2927  lua_settable(luastate, -3);
2928  lua_pushliteral(luastate, "owner_id");
2929  lua_pushinteger(luastate, data->owner_id);
2930  lua_settable(luastate, -3);
2931  lua_pushliteral(luastate, "group_id");
2932  lua_pushinteger(luastate, data->group_id);
2933  lua_settable(luastate, -3);
2934  lua_pushliteral(luastate, "file_function_code");
2935  lua_pushinteger(luastate, data->file_function_code);
2936  lua_settable(luastate, -3);
2937  lua_pushliteral(luastate, "status_code");
2938  lua_pushinteger(luastate, data->status_code);
2939  lua_settable(luastate, -3);
2940  lua_pushliteral(luastate, "filename");
2941  LuaPushStringBuffer(luastate, (uint8_t *)data->filename,
2942  strlen(data->filename));
2943  lua_settable(luastate, -3);
2944  lua_pushliteral(luastate, "data_size");
2945  lua_pushinteger(luastate, data->data_size);
2946  lua_settable(luastate, -3);
2947  lua_pushliteral(luastate, "data");
2948  LuaPushStringBuffer(luastate, (uint8_t *)data->data,
2949  strlen(data->data));
2950  lua_settable(luastate, -3);
2951  break;
2952  }
2953  case DNP3_OBJECT_CODE(70, 2): {
2954  DNP3ObjectG70V2 *data = point->data;
2955  lua_pushliteral(luastate, "username_offset");
2956  lua_pushinteger(luastate, data->username_offset);
2957  lua_settable(luastate, -3);
2958  lua_pushliteral(luastate, "username_size");
2959  lua_pushinteger(luastate, data->username_size);
2960  lua_settable(luastate, -3);
2961  lua_pushliteral(luastate, "password_offset");
2962  lua_pushinteger(luastate, data->password_offset);
2963  lua_settable(luastate, -3);
2964  lua_pushliteral(luastate, "password_size");
2965  lua_pushinteger(luastate, data->password_size);
2966  lua_settable(luastate, -3);
2967  lua_pushliteral(luastate, "authentication_key");
2968  lua_pushinteger(luastate, data->authentication_key);
2969  lua_settable(luastate, -3);
2970  lua_pushliteral(luastate, "username");
2971  LuaPushStringBuffer(luastate, (uint8_t *)data->username,
2972  strlen(data->username));
2973  lua_settable(luastate, -3);
2974  lua_pushliteral(luastate, "password");
2975  LuaPushStringBuffer(luastate, (uint8_t *)data->password,
2976  strlen(data->password));
2977  lua_settable(luastate, -3);
2978  break;
2979  }
2980  case DNP3_OBJECT_CODE(70, 3): {
2981  DNP3ObjectG70V3 *data = point->data;
2982  lua_pushliteral(luastate, "filename_offset");
2983  lua_pushinteger(luastate, data->filename_offset);
2984  lua_settable(luastate, -3);
2985  lua_pushliteral(luastate, "filename_size");
2986  lua_pushinteger(luastate, data->filename_size);
2987  lua_settable(luastate, -3);
2988  lua_pushliteral(luastate, "created");
2989  lua_pushinteger(luastate, data->created);
2990  lua_settable(luastate, -3);
2991  lua_pushliteral(luastate, "permissions");
2992  lua_pushinteger(luastate, data->permissions);
2993  lua_settable(luastate, -3);
2994  lua_pushliteral(luastate, "authentication_key");
2995  lua_pushinteger(luastate, data->authentication_key);
2996  lua_settable(luastate, -3);
2997  lua_pushliteral(luastate, "file_size");
2998  lua_pushinteger(luastate, data->file_size);
2999  lua_settable(luastate, -3);
3000  lua_pushliteral(luastate, "operational_mode");
3001  lua_pushinteger(luastate, data->operational_mode);
3002  lua_settable(luastate, -3);
3003  lua_pushliteral(luastate, "maximum_block_size");
3004  lua_pushinteger(luastate, data->maximum_block_size);
3005  lua_settable(luastate, -3);
3006  lua_pushliteral(luastate, "request_id");
3007  lua_pushinteger(luastate, data->request_id);
3008  lua_settable(luastate, -3);
3009  lua_pushliteral(luastate, "filename");
3010  LuaPushStringBuffer(luastate, (uint8_t *)data->filename,
3011  strlen(data->filename));
3012  lua_settable(luastate, -3);
3013  break;
3014  }
3015  case DNP3_OBJECT_CODE(70, 4): {
3016  DNP3ObjectG70V4 *data = point->data;
3017  lua_pushliteral(luastate, "file_handle");
3018  lua_pushinteger(luastate, data->file_handle);
3019  lua_settable(luastate, -3);
3020  lua_pushliteral(luastate, "file_size");
3021  lua_pushinteger(luastate, data->file_size);
3022  lua_settable(luastate, -3);
3023  lua_pushliteral(luastate, "maximum_block_size");
3024  lua_pushinteger(luastate, data->maximum_block_size);
3025  lua_settable(luastate, -3);
3026  lua_pushliteral(luastate, "request_id");
3027  lua_pushinteger(luastate, data->request_id);
3028  lua_settable(luastate, -3);
3029  lua_pushliteral(luastate, "status_code");
3030  lua_pushinteger(luastate, data->status_code);
3031  lua_settable(luastate, -3);
3032  lua_pushliteral(luastate, "optional_text");
3033  LuaPushStringBuffer(luastate, (uint8_t *)data->optional_text,
3034  strlen(data->optional_text));
3035  lua_settable(luastate, -3);
3036  break;
3037  }
3038  case DNP3_OBJECT_CODE(70, 5): {
3039  DNP3ObjectG70V5 *data = point->data;
3040  lua_pushliteral(luastate, "file_handle");
3041  lua_pushinteger(luastate, data->file_handle);
3042  lua_settable(luastate, -3);
3043  lua_pushliteral(luastate, "block_number");
3044  lua_pushinteger(luastate, data->block_number);
3045  lua_settable(luastate, -3);
3046  lua_pushliteral(luastate, "file_data");
3047  LuaPushStringBuffer(luastate, (uint8_t *)data->file_data,
3048  strlen(data->file_data));
3049  lua_settable(luastate, -3);
3050  break;
3051  }
3052  case DNP3_OBJECT_CODE(70, 6): {
3053  DNP3ObjectG70V6 *data = point->data;
3054  lua_pushliteral(luastate, "file_handle");
3055  lua_pushinteger(luastate, data->file_handle);
3056  lua_settable(luastate, -3);
3057  lua_pushliteral(luastate, "block_number");
3058  lua_pushinteger(luastate, data->block_number);
3059  lua_settable(luastate, -3);
3060  lua_pushliteral(luastate, "status_code");
3061  lua_pushinteger(luastate, data->status_code);
3062  lua_settable(luastate, -3);
3063  lua_pushliteral(luastate, "optional_text");
3064  LuaPushStringBuffer(luastate, (uint8_t *)data->optional_text,
3065  strlen(data->optional_text));
3066  lua_settable(luastate, -3);
3067  break;
3068  }
3069  case DNP3_OBJECT_CODE(70, 7): {
3070  DNP3ObjectG70V7 *data = point->data;
3071  lua_pushliteral(luastate, "filename_offset");
3072  lua_pushinteger(luastate, data->filename_offset);
3073  lua_settable(luastate, -3);
3074  lua_pushliteral(luastate, "filename_size");
3075  lua_pushinteger(luastate, data->filename_size);
3076  lua_settable(luastate, -3);
3077  lua_pushliteral(luastate, "file_type");
3078  lua_pushinteger(luastate, data->file_type);
3079  lua_settable(luastate, -3);
3080  lua_pushliteral(luastate, "file_size");
3081  lua_pushinteger(luastate, data->file_size);
3082  lua_settable(luastate, -3);
3083  lua_pushliteral(luastate, "created_timestamp");
3084  lua_pushinteger(luastate, data->created_timestamp);
3085  lua_settable(luastate, -3);
3086  lua_pushliteral(luastate, "permissions");
3087  lua_pushinteger(luastate, data->permissions);
3088  lua_settable(luastate, -3);
3089  lua_pushliteral(luastate, "request_id");
3090  lua_pushinteger(luastate, data->request_id);
3091  lua_settable(luastate, -3);
3092  lua_pushliteral(luastate, "filename");
3093  LuaPushStringBuffer(luastate, (uint8_t *)data->filename,
3094  strlen(data->filename));
3095  lua_settable(luastate, -3);
3096  break;
3097  }
3098  case DNP3_OBJECT_CODE(70, 8): {
3099  DNP3ObjectG70V8 *data = point->data;
3100  lua_pushliteral(luastate, "file_specification");
3101  LuaPushStringBuffer(luastate, (uint8_t *)data->file_specification,
3102  strlen(data->file_specification));
3103  lua_settable(luastate, -3);
3104  break;
3105  }
3106  case DNP3_OBJECT_CODE(80, 1): {
3107  DNP3ObjectG80V1 *data = point->data;
3108  lua_pushliteral(luastate, "state");
3109  lua_pushinteger(luastate, data->state);
3110  lua_settable(luastate, -3);
3111  break;
3112  }
3113  case DNP3_OBJECT_CODE(81, 1): {
3114  DNP3ObjectG81V1 *data = point->data;
3115  lua_pushliteral(luastate, "fill_percentage");
3116  lua_pushinteger(luastate, data->fill_percentage);
3117  lua_settable(luastate, -3);
3118  lua_pushliteral(luastate, "overflow_state");
3119  lua_pushinteger(luastate, data->overflow_state);
3120  lua_settable(luastate, -3);
3121  lua_pushliteral(luastate, "group");
3122  lua_pushinteger(luastate, data->group);
3123  lua_settable(luastate, -3);
3124  lua_pushliteral(luastate, "variation");
3125  lua_pushinteger(luastate, data->variation);
3126  lua_settable(luastate, -3);
3127  break;
3128  }
3129  case DNP3_OBJECT_CODE(83, 1): {
3130  DNP3ObjectG83V1 *data = point->data;
3131  lua_pushliteral(luastate, "vendor_code");
3132  LuaPushStringBuffer(luastate, (uint8_t *)data->vendor_code,
3133  strlen(data->vendor_code));
3134  lua_settable(luastate, -3);
3135  lua_pushliteral(luastate, "object_id");
3136  lua_pushinteger(luastate, data->object_id);
3137  lua_settable(luastate, -3);
3138  lua_pushliteral(luastate, "length");
3139  lua_pushinteger(luastate, data->length);
3140  lua_settable(luastate, -3);
3141  lua_pushliteral(luastate, "data_objects");
3142  lua_pushlstring(luastate, (const char *)data->data_objects,
3143  data->length);
3144  lua_settable(luastate, -3);
3145  break;
3146  }
3147  case DNP3_OBJECT_CODE(86, 2): {
3148  DNP3ObjectG86V2 *data = point->data;
3149  lua_pushliteral(luastate, "rd");
3150  lua_pushinteger(luastate, data->rd);
3151  lua_settable(luastate, -3);
3152  lua_pushliteral(luastate, "wr");
3153  lua_pushinteger(luastate, data->wr);
3154  lua_settable(luastate, -3);
3155  lua_pushliteral(luastate, "st");
3156  lua_pushinteger(luastate, data->st);
3157  lua_settable(luastate, -3);
3158  lua_pushliteral(luastate, "ev");
3159  lua_pushinteger(luastate, data->ev);
3160  lua_settable(luastate, -3);
3161  lua_pushliteral(luastate, "df");
3162  lua_pushinteger(luastate, data->df);
3163  lua_settable(luastate, -3);
3164  lua_pushliteral(luastate, "padding0");
3165  lua_pushinteger(luastate, data->padding0);
3166  lua_settable(luastate, -3);
3167  lua_pushliteral(luastate, "padding1");
3168  lua_pushinteger(luastate, data->padding1);
3169  lua_settable(luastate, -3);
3170  lua_pushliteral(luastate, "padding2");
3171  lua_pushinteger(luastate, data->padding2);
3172  lua_settable(luastate, -3);
3173  break;
3174  }
3175  case DNP3_OBJECT_CODE(102, 1): {
3176  DNP3ObjectG102V1 *data = point->data;
3177  lua_pushliteral(luastate, "value");
3178  lua_pushinteger(luastate, data->value);
3179  lua_settable(luastate, -3);
3180  break;
3181  }
3182  case DNP3_OBJECT_CODE(120, 1): {
3183  DNP3ObjectG120V1 *data = point->data;
3184  lua_pushliteral(luastate, "csq");
3185  lua_pushinteger(luastate, data->csq);
3186  lua_settable(luastate, -3);
3187  lua_pushliteral(luastate, "usr");
3188  lua_pushinteger(luastate, data->usr);
3189  lua_settable(luastate, -3);
3190  lua_pushliteral(luastate, "mal");
3191  lua_pushinteger(luastate, data->mal);
3192  lua_settable(luastate, -3);
3193  lua_pushliteral(luastate, "reason");
3194  lua_pushinteger(luastate, data->reason);
3195  lua_settable(luastate, -3);
3196  lua_pushliteral(luastate, "challenge_data");
3197  lua_pushlstring(luastate, (const char *)data->challenge_data,
3198  data->challenge_data_len);
3199  lua_settable(luastate, -3);
3200  break;
3201  }
3202  case DNP3_OBJECT_CODE(120, 2): {
3203  DNP3ObjectG120V2 *data = point->data;
3204  lua_pushliteral(luastate, "csq");
3205  lua_pushinteger(luastate, data->csq);
3206  lua_settable(luastate, -3);
3207  lua_pushliteral(luastate, "usr");
3208  lua_pushinteger(luastate, data->usr);
3209  lua_settable(luastate, -3);
3210  lua_pushliteral(luastate, "mac_value");
3211  lua_pushlstring(luastate, (const char *)data->mac_value,
3212  data->mac_value_len);
3213  lua_settable(luastate, -3);
3214  break;
3215  }
3216  case DNP3_OBJECT_CODE(120, 3): {
3217  DNP3ObjectG120V3 *data = point->data;
3218  lua_pushliteral(luastate, "csq");
3219  lua_pushinteger(luastate, data->csq);
3220  lua_settable(luastate, -3);
3221  lua_pushliteral(luastate, "user_number");
3222  lua_pushinteger(luastate, data->user_number);
3223  lua_settable(luastate, -3);
3224  break;
3225  }
3226  case DNP3_OBJECT_CODE(120, 4): {
3227  DNP3ObjectG120V4 *data = point->data;
3228  lua_pushliteral(luastate, "user_number");
3229  lua_pushinteger(luastate, data->user_number);
3230  lua_settable(luastate, -3);
3231  break;
3232  }
3233  case DNP3_OBJECT_CODE(120, 5): {
3234  DNP3ObjectG120V5 *data = point->data;
3235  lua_pushliteral(luastate, "ksq");
3236  lua_pushinteger(luastate, data->ksq);
3237  lua_settable(luastate, -3);
3238  lua_pushliteral(luastate, "user_number");
3239  lua_pushinteger(luastate, data->user_number);
3240  lua_settable(luastate, -3);
3241  lua_pushliteral(luastate, "key_wrap_alg");
3242  lua_pushinteger(luastate, data->key_wrap_alg);
3243  lua_settable(luastate, -3);
3244  lua_pushliteral(luastate, "key_status");
3245  lua_pushinteger(luastate, data->key_status);
3246  lua_settable(luastate, -3);
3247  lua_pushliteral(luastate, "mal");
3248  lua_pushinteger(luastate, data->mal);
3249  lua_settable(luastate, -3);
3250  lua_pushliteral(luastate, "challenge_data_len");
3251  lua_pushinteger(luastate, data->challenge_data_len);
3252  lua_settable(luastate, -3);
3253  lua_pushliteral(luastate, "challenge_data");
3254  lua_pushlstring(luastate, (const char *)data->challenge_data,
3255  data->challenge_data_len);
3256  lua_settable(luastate, -3);
3257  lua_pushliteral(luastate, "mac_value");
3258  lua_pushlstring(luastate, (const char *)data->mac_value,
3259  data->mac_value_len);
3260  lua_settable(luastate, -3);
3261  break;
3262  }
3263  case DNP3_OBJECT_CODE(120, 6): {
3264  DNP3ObjectG120V6 *data = point->data;
3265  lua_pushliteral(luastate, "ksq");
3266  lua_pushinteger(luastate, data->ksq);
3267  lua_settable(luastate, -3);
3268  lua_pushliteral(luastate, "usr");
3269  lua_pushinteger(luastate, data->usr);
3270  lua_settable(luastate, -3);
3271  lua_pushliteral(luastate, "wrapped_key_data");
3272  lua_pushlstring(luastate, (const char *)data->wrapped_key_data,
3273  data->wrapped_key_data_len);
3274  lua_settable(luastate, -3);
3275  break;
3276  }
3277  case DNP3_OBJECT_CODE(120, 7): {
3278  DNP3ObjectG120V7 *data = point->data;
3279  lua_pushliteral(luastate, "sequence_number");
3280  lua_pushinteger(luastate, data->sequence_number);
3281  lua_settable(luastate, -3);
3282  lua_pushliteral(luastate, "usr");
3283  lua_pushinteger(luastate, data->usr);
3284  lua_settable(luastate, -3);
3285  lua_pushliteral(luastate, "association_id");
3286  lua_pushinteger(luastate, data->association_id);
3287  lua_settable(luastate, -3);
3288  lua_pushliteral(luastate, "error_code");
3289  lua_pushinteger(luastate, data->error_code);
3290  lua_settable(luastate, -3);
3291  lua_pushliteral(luastate, "time_of_error");
3292  lua_pushinteger(luastate, data->time_of_error);
3293  lua_settable(luastate, -3);
3294  lua_pushliteral(luastate, "error_text");
3295  LuaPushStringBuffer(luastate, (uint8_t *)data->error_text,
3296  strlen(data->error_text));
3297  lua_settable(luastate, -3);
3298  break;
3299  }
3300  case DNP3_OBJECT_CODE(120, 8): {
3301  DNP3ObjectG120V8 *data = point->data;
3302  lua_pushliteral(luastate, "key_change_method");
3303  lua_pushinteger(luastate, data->key_change_method);
3304  lua_settable(luastate, -3);
3305  lua_pushliteral(luastate, "certificate_type");
3306  lua_pushinteger(luastate, data->certificate_type);
3307  lua_settable(luastate, -3);
3308  lua_pushliteral(luastate, "certificate");
3309  lua_pushlstring(luastate, (const char *)data->certificate,
3310  data->certificate_len);
3311  lua_settable(luastate, -3);
3312  break;
3313  }
3314  case DNP3_OBJECT_CODE(120, 9): {
3315  DNP3ObjectG120V9 *data = point->data;
3316  lua_pushliteral(luastate, "mac_value");
3317  lua_pushlstring(luastate, (const char *)data->mac_value,
3318  data->mac_value_len);
3319  lua_settable(luastate, -3);
3320  break;
3321  }
3322  case DNP3_OBJECT_CODE(120, 10): {
3323  DNP3ObjectG120V10 *data = point->data;
3324  lua_pushliteral(luastate, "key_change_method");
3325  lua_pushinteger(luastate, data->key_change_method);
3326  lua_settable(luastate, -3);
3327  lua_pushliteral(luastate, "operation");
3328  lua_pushinteger(luastate, data->operation);
3329  lua_settable(luastate, -3);
3330  lua_pushliteral(luastate, "scs");
3331  lua_pushinteger(luastate, data->scs);
3332  lua_settable(luastate, -3);
3333  lua_pushliteral(luastate, "user_role");
3334  lua_pushinteger(luastate, data->user_role);
3335  lua_settable(luastate, -3);
3336  lua_pushliteral(luastate, "user_role_expiry_interval");
3337  lua_pushinteger(luastate, data->user_role_expiry_interval);
3338  lua_settable(luastate, -3);
3339  lua_pushliteral(luastate, "username_len");
3340  lua_pushinteger(luastate, data->username_len);
3341  lua_settable(luastate, -3);
3342  lua_pushliteral(luastate, "user_public_key_len");
3343  lua_pushinteger(luastate, data->user_public_key_len);
3344  lua_settable(luastate, -3);
3345  lua_pushliteral(luastate, "certification_data_len");
3346  lua_pushinteger(luastate, data->certification_data_len);
3347  lua_settable(luastate, -3);
3348  lua_pushliteral(luastate, "username");
3349  LuaPushStringBuffer(luastate, (uint8_t *)data->username,
3350  strlen(data->username));
3351  lua_settable(luastate, -3);
3352  lua_pushliteral(luastate, "user_public_key");
3353  lua_pushlstring(luastate, (const char *)data->user_public_key,
3354  data->user_public_key_len);
3355  lua_settable(luastate, -3);
3356  lua_pushliteral(luastate, "certification_data");
3357  lua_pushlstring(luastate, (const char *)data->certification_data,
3358  data->certification_data_len);
3359  lua_settable(luastate, -3);
3360  break;
3361  }
3362  case DNP3_OBJECT_CODE(120, 11): {
3363  DNP3ObjectG120V11 *data = point->data;
3364  lua_pushliteral(luastate, "key_change_method");
3365  lua_pushinteger(luastate, data->key_change_method);
3366  lua_settable(luastate, -3);
3367  lua_pushliteral(luastate, "username_len");
3368  lua_pushinteger(luastate, data->username_len);
3369  lua_settable(luastate, -3);
3370  lua_pushliteral(luastate, "master_challenge_data_len");
3371  lua_pushinteger(luastate, data->master_challenge_data_len);
3372  lua_settable(luastate, -3);
3373  lua_pushliteral(luastate, "username");
3374  LuaPushStringBuffer(luastate, (uint8_t *)data->username,
3375  strlen(data->username));
3376  lua_settable(luastate, -3);
3377  lua_pushliteral(luastate, "master_challenge_data");
3378  lua_pushlstring(luastate, (const char *)data->master_challenge_data,
3380  lua_settable(luastate, -3);
3381  break;
3382  }
3383  case DNP3_OBJECT_CODE(120, 12): {
3384  DNP3ObjectG120V12 *data = point->data;
3385  lua_pushliteral(luastate, "ksq");
3386  lua_pushinteger(luastate, data->ksq);
3387  lua_settable(luastate, -3);
3388  lua_pushliteral(luastate, "user_number");
3389  lua_pushinteger(luastate, data->user_number);
3390  lua_settable(luastate, -3);
3391  lua_pushliteral(luastate, "challenge_data_len");
3392  lua_pushinteger(luastate, data->challenge_data_len);
3393  lua_settable(luastate, -3);
3394  lua_pushliteral(luastate, "challenge_data");
3395  lua_pushlstring(luastate, (const char *)data->challenge_data,
3396  data->challenge_data_len);
3397  lua_settable(luastate, -3);
3398  break;
3399  }
3400  case DNP3_OBJECT_CODE(120, 13): {
3401  DNP3ObjectG120V13 *data = point->data;
3402  lua_pushliteral(luastate, "ksq");
3403  lua_pushinteger(luastate, data->ksq);
3404  lua_settable(luastate, -3);
3405  lua_pushliteral(luastate, "user_number");
3406  lua_pushinteger(luastate, data->user_number);
3407  lua_settable(luastate, -3);
3408  lua_pushliteral(luastate, "encrypted_update_key_len");
3409  lua_pushinteger(luastate, data->encrypted_update_key_len);
3410  lua_settable(luastate, -3);
3411  lua_pushliteral(luastate, "encrypted_update_key_data");
3412  lua_pushlstring(luastate, (const char *)data->encrypted_update_key_data,
3413  data->encrypted_update_key_len);
3414  lua_settable(luastate, -3);
3415  break;
3416  }
3417  case DNP3_OBJECT_CODE(120, 14): {
3418  DNP3ObjectG120V14 *data = point->data;
3419  lua_pushliteral(luastate, "digital_signature");
3420  lua_pushlstring(luastate, (const char *)data->digital_signature,
3421  data->digital_signature_len);
3422  lua_settable(luastate, -3);
3423  break;
3424  }
3425  case DNP3_OBJECT_CODE(120, 15): {
3426  DNP3ObjectG120V15 *data = point->data;
3427  lua_pushliteral(luastate, "mac");
3428  lua_pushlstring(luastate, (const char *)data->mac,
3429  data->mac_len);
3430  lua_settable(luastate, -3);
3431  break;
3432  }
3433  case DNP3_OBJECT_CODE(121, 1): {
3434  DNP3ObjectG121V1 *data = point->data;
3435  lua_pushliteral(luastate, "online");
3436  lua_pushinteger(luastate, data->online);
3437  lua_settable(luastate, -3);
3438  lua_pushliteral(luastate, "restart");
3439  lua_pushinteger(luastate, data->restart);
3440  lua_settable(luastate, -3);
3441  lua_pushliteral(luastate, "comm_lost");
3442  lua_pushinteger(luastate, data->comm_lost);
3443  lua_settable(luastate, -3);
3444  lua_pushliteral(luastate, "remote_forced");
3445  lua_pushinteger(luastate, data->remote_forced);
3446  lua_settable(luastate, -3);
3447  lua_pushliteral(luastate, "local_forced");
3448  lua_pushinteger(luastate, data->local_forced);
3449  lua_settable(luastate, -3);
3450  lua_pushliteral(luastate, "reserved0");
3451  lua_pushinteger(luastate, data->reserved0);
3452  lua_settable(luastate, -3);
3453  lua_pushliteral(luastate, "discontinuity");
3454  lua_pushinteger(luastate, data->discontinuity);
3455  lua_settable(luastate, -3);
3456  lua_pushliteral(luastate, "reserved1");
3457  lua_pushinteger(luastate, data->reserved1);
3458  lua_settable(luastate, -3);
3459  lua_pushliteral(luastate, "association_id");
3460  lua_pushinteger(luastate, data->association_id);
3461  lua_settable(luastate, -3);
3462  lua_pushliteral(luastate, "count_value");
3463  lua_pushinteger(luastate, data->count_value);
3464  lua_settable(luastate, -3);
3465  break;
3466  }
3467  case DNP3_OBJECT_CODE(122, 1): {
3468  DNP3ObjectG122V1 *data = point->data;
3469  lua_pushliteral(luastate, "online");
3470  lua_pushinteger(luastate, data->online);
3471  lua_settable(luastate, -3);
3472  lua_pushliteral(luastate, "restart");
3473  lua_pushinteger(luastate, data->restart);
3474  lua_settable(luastate, -3);
3475  lua_pushliteral(luastate, "comm_lost");
3476  lua_pushinteger(luastate, data->comm_lost);
3477  lua_settable(luastate, -3);
3478  lua_pushliteral(luastate, "remote_forced");
3479  lua_pushinteger(luastate, data->remote_forced);
3480  lua_settable(luastate, -3);
3481  lua_pushliteral(luastate, "local_forced");
3482  lua_pushinteger(luastate, data->local_forced);
3483  lua_settable(luastate, -3);
3484  lua_pushliteral(luastate, "reserved0");
3485  lua_pushinteger(luastate, data->reserved0);
3486  lua_settable(luastate, -3);
3487  lua_pushliteral(luastate, "discontinuity");
3488  lua_pushinteger(luastate, data->discontinuity);
3489  lua_settable(luastate, -3);
3490  lua_pushliteral(luastate, "reserved1");
3491  lua_pushinteger(luastate, data->reserved1);
3492  lua_settable(luastate, -3);
3493  lua_pushliteral(luastate, "association_id");
3494  lua_pushinteger(luastate, data->association_id);
3495  lua_settable(luastate, -3);
3496  lua_pushliteral(luastate, "count_value");
3497  lua_pushinteger(luastate, data->count_value);
3498  lua_settable(luastate, -3);
3499  break;
3500  }
3501  case DNP3_OBJECT_CODE(122, 2): {
3502  DNP3ObjectG122V2 *data = point->data;
3503  lua_pushliteral(luastate, "online");
3504  lua_pushinteger(luastate, data->online);
3505  lua_settable(luastate, -3);
3506  lua_pushliteral(luastate, "restart");
3507  lua_pushinteger(luastate, data->restart);
3508  lua_settable(luastate, -3);
3509  lua_pushliteral(luastate, "comm_lost");
3510  lua_pushinteger(luastate, data->comm_lost);
3511  lua_settable(luastate, -3);
3512  lua_pushliteral(luastate, "remote_forced");
3513  lua_pushinteger(luastate, data->remote_forced);
3514  lua_settable(luastate, -3);
3515  lua_pushliteral(luastate, "local_forced");
3516  lua_pushinteger(luastate, data->local_forced);
3517  lua_settable(luastate, -3);
3518  lua_pushliteral(luastate, "reserved0");
3519  lua_pushinteger(luastate, data->reserved0);
3520  lua_settable(luastate, -3);
3521  lua_pushliteral(luastate, "discontinuity");
3522  lua_pushinteger(luastate, data->discontinuity);
3523  lua_settable(luastate, -3);
3524  lua_pushliteral(luastate, "reserved1");
3525  lua_pushinteger(luastate, data->reserved1);
3526  lua_settable(luastate, -3);
3527  lua_pushliteral(luastate, "association_id");
3528  lua_pushinteger(luastate, data->association_id);
3529  lua_settable(luastate, -3);
3530  lua_pushliteral(luastate, "count_value");
3531  lua_pushinteger(luastate, data->count_value);
3532  lua_settable(luastate, -3);
3533  lua_pushliteral(luastate, "timestamp");
3534  lua_pushinteger(luastate, data->timestamp);
3535  lua_settable(luastate, -3);
3536  break;
3537  }
3538  default:
3539  break;
3540  }
3541 }
3542 
3543 #endif /* HAVE_LUA */
#define DNP3_OBJECT_CODE(group, variation)
Struct to hold the list of decoded objects.
DNP3 object point.
uint8_t variation
void DNP3PushPoint(lua_State *luastate, DNP3Object *object, DNP3Point *item)