tor

The Tor anonymity network
git clone https://git.dasho.dev/tor.git
Log | Files | Refs | README | LICENSE

control_cmd_args_st.h (1247B)


      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-2021, 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 **/
     24 struct control_cmd_args_t {
     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   **/
     37  struct config_line_t *kwargs;
     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) */