Project

General

Profile

Bug #3120 ยป 0001-create-dummy-deferred-ctrl-command.patch

neels, 04/03/2018 01:29 PM

View differences:

src/common/bts_ctrl_commands.c
82 82
	return CTRL_CMD_REPLY;
83 83
}
84 84

  
85
CTRL_CMD_DEFINE(test_defer, "test-defer");
86
static void ctrl_test_defer_cb(void *data)
87
{
88
	struct ctrl_cmd_def *cd = data;
89
	struct ctrl_cmd *cmd = cd->cmd;
90
	static int i = 0;
91

  
92
	LOGP(DL1P, LOGL_ERROR, "Test Defer\n");
93

  
94
	if (ctrl_cmd_def_is_zombie(cd)) {
95
		LOGP(DL1P, LOGL_ERROR, "Is Zombie\n");
96
		return; 
97
	}
98

  
99
	cmd->reply = talloc_asprintf(cmd, "Test Defer %d", i++);
100

  
101
	ctrl_cmd_def_send(cd);
102

  
103
	return;
104
}
105
static int get_test_defer(struct ctrl_cmd *cmd, void *data)
106
{
107
	void *ctx = cmd->node;
108
	struct ctrl_cmd_def *cd;
109
	static struct osmo_timer_list defer_timer;
110

  
111
	/* geneate a deferred control command */
112
	cd = ctrl_cmd_def_make(ctx, cmd, NULL, 10);
113

  
114
	osmo_timer_setup(&defer_timer, ctrl_test_defer_cb, cd);
115
	osmo_timer_schedule(&defer_timer, 1, 1);
116
	return CTRL_CMD_HANDLED;
117
}
118

  
119
static int set_test_defer(struct ctrl_cmd *cmd, void *data)
120
{
121
	return CTRL_CMD_HANDLED;
122
}
123

  
124
static int verify_test_defer(struct ctrl_cmd *cmd, const char *value, void *data)
125
{
126
	return 0;
127
}
128

  
85 129
int bts_ctrl_cmds_install(struct gsm_bts *bts)
86 130
{
87 131
	int rc = 0;
88 132

  
89 133
	rc |= ctrl_cmd_install(CTRL_NODE_TRX, &cmd_therm_att);
90 134
	rc |= ctrl_cmd_install(CTRL_NODE_ROOT, &cmd_oml_alert);
135
	rc |= ctrl_cmd_install(CTRL_NODE_ROOT, &cmd_test_defer);
91 136

  
92 137
	return rc;
93 138
}
    (1-1/1)
    Add picture from clipboard (Maximum size: 48.8 MB)