2 * libmikrotik - src/mikrotik.h
3 * Copyright (C) 2009 Florian octo Forster
5 * This program is free software; you can redistribute it and/or modify it
6 * under the terms of the GNU General Public License as published by the
7 * Free Software Foundation; only version 2 of the License is applicable.
9 * This program is distributed in the hope that it will be useful, but
10 * WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12 * General Public License for more details.
14 * You should have received a copy of the GNU General Public License along
15 * with this program; if not, write to the Free Software Foundation, Inc.,
16 * 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
19 * Florian octo Forster <octo at verplant.org>
22 #define ROUTEROS_API_PORT "8728"
24 struct ros_connection_s;
25 typedef struct ros_connection_s ros_connection_t;
28 typedef struct ros_reply_s ros_reply_t;
30 typedef int (*ros_reply_handler_t) (ros_connection_t *c, const ros_reply_t *r,
36 ros_connection_t *ros_connect (const char *node, const char *service,
37 const char *username, const char *password);
38 int ros_disconnect (ros_connection_t *con);
43 int ros_query (ros_connection_t *c,
45 size_t args_num, const char * const *args,
46 ros_reply_handler_t handler, void *user_data);
51 const ros_reply_t *ros_reply_next (const ros_reply_t *r);
52 int ros_reply_num (const ros_reply_t *r);
54 const char *ros_reply_status (const ros_reply_t *r);
56 /* Receiving reply parameters */
57 const char *ros_reply_param_key_by_index (const ros_reply_t *r,
59 const char *ros_reply_param_val_by_index (const ros_reply_t *r,
61 const char *ros_reply_param_val_by_key (const ros_reply_t *r, const char *key);
63 /* vim: set ts=2 sw=2 noet fdm=marker : */