projects
/
project
/
ubus.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
ubus/lua: pass notification name to callback
[project/ubus.git]
/
cli.c
diff --git
a/cli.c
b/cli.c
index
624c089
..
19ccbb5
100644
(file)
--- a/
cli.c
+++ b/
cli.c
@@
-17,6
+17,7
@@
#include "libubus.h"
static struct blob_buf b;
#include "libubus.h"
static struct blob_buf b;
+static int listen_timeout;
static int timeout = 30;
static bool simple_output = false;
static int verbose = 0;
static int timeout = 30;
static bool simple_output = false;
static int verbose = 0;
@@
-158,7
+159,7
@@
struct cli_listen_data {
bool timed_out;
};
bool timed_out;
};
-static void listen_timeout(struct uloop_timeout *timeout)
+static void
ubus_cli_
listen_timeout(struct uloop_timeout *timeout)
{
struct cli_listen_data *data = container_of(timeout, struct cli_listen_data, timeout);
data->timed_out = true;
{
struct cli_listen_data *data = container_of(timeout, struct cli_listen_data, timeout);
data->timed_out = true;
@@
-168,10
+169,11
@@
static void listen_timeout(struct uloop_timeout *timeout)
static void do_listen(struct ubus_context *ctx, struct cli_listen_data *data)
{
memset(data, 0, sizeof(*data));
static void do_listen(struct ubus_context *ctx, struct cli_listen_data *data)
{
memset(data, 0, sizeof(*data));
- data->timeout.cb = listen_timeout;
+ data->timeout.cb =
ubus_cli_
listen_timeout;
uloop_init();
ubus_add_uloop(ctx);
uloop_init();
ubus_add_uloop(ctx);
- uloop_timeout_set(&data->timeout, timeout * 1000);
+ if (listen_timeout)
+ uloop_timeout_set(&data->timeout, listen_timeout * 1000);
uloop_run();
uloop_done();
}
uloop_run();
uloop_done();
}
@@
-585,6
+587,7
@@
int main(int argc, char **argv)
ubus_socket = optarg;
break;
case 't':
ubus_socket = optarg;
break;
case 't':
+ listen_timeout = atoi(optarg);
timeout = atoi(optarg);
break;
case 'S':
timeout = atoi(optarg);
break;
case 'S':