Tor  0.4.3.1-alpha-dev
control_cmd_args_st.h
Go to the documentation of this file.
1 /* Copyright (c) 2001 Matej Pfajfar.
2  * Copyright (c) 2001-2004, Roger Dingledine.
3  * Copyright (c) 2004-2006, Roger Dingledine, Nick Mathewson.
4  * Copyright (c) 2007-2020, The Tor Project, Inc. */
5 /* See LICENSE for licensing information */
6 
7 /**
8  * \file control_cmd_args_st.h
9  * \brief Definition for control_cmd_args_t
10  **/
11 
12 #ifndef TOR_CONTROL_CMD_ST_H
13 #define TOR_CONTROL_CMD_ST_H
14 
15 struct smartlist_t;
16 struct config_line_t;
17 
18 /**
19  * Parsed arguments for a control command.
20  *
21  * WORK IN PROGRESS: This structure is going to get more complex as this
22  * branch goes on.
23  **/
25  /**
26  * The command itself, as provided by the controller. Not owned by this
27  * structure.
28  **/
29  const char *command;
30  /**
31  * Positional arguments to the command.
32  **/
33  struct smartlist_t *args;
34  /**
35  * Keyword arguments to the command.
36  **/
38  /**
39  * Number of bytes in <b>cmddata</b>; 0 if <b>cmddata</b> is not set.
40  **/
41  size_t cmddata_len;
42  /**
43  * A multiline object passed with this command.
44  **/
45  char *cmddata;
46  /**
47  * If set, a nul-terminated string containing the raw unparsed arguments.
48  **/
49  const char *raw_body;
50 };
51 
52 #endif /* !defined(TOR_CONTROL_CMD_ST_H) */
struct config_line_t * kwargs
struct smartlist_t * args