Browse Source

FST: Use EINVAL more consistently as a negative return value

There was a mix of EINVAL and -EINVAL returns through the FST
implementation. Make this more consistent by always returning -EINVAL in
error cases.

Signed-off-by: Jouni Malinen <j@w1.fi>
Jouni Malinen 9 years ago
parent
commit
73664e0985
2 changed files with 22 additions and 25 deletions
  1. 7 10
      src/fst/fst_ctrl_iface.c
  2. 15 15
      src/fst/fst_session.c

+ 7 - 10
src/fst/fst_ctrl_iface.c

@@ -842,13 +842,13 @@ int fst_read_next_text_param(const char *params, char *buf, size_t buflen,
 	char *cur_dest;
 
 	if (buflen <= 1)
-		return EINVAL;
+		return -EINVAL;
 
 	*endp = (char *) params;
 	while (isspace(**endp))
 		(*endp)++;
 	if (!**endp)
-		return EINVAL;
+		return -EINVAL;
 
 	max_chars_to_copy = buflen - 1;
 	/* We need 1 byte for the terminating zero */
@@ -895,7 +895,7 @@ int fst_parse_attach_command(const char *cmd, char *ifname, size_t ifname_size,
 	if (fst_read_next_text_param(cmd, ifname, ifname_size, &endp) ||
 	    fst_read_next_text_param(endp, cfg->group_id, sizeof(cfg->group_id),
 				     &endp))
-		return EINVAL;
+		return -EINVAL;
 
 	cfg->llt = FST_DEFAULT_LLT_CFG_VALUE;
 	cfg->priority = 0;
@@ -928,20 +928,17 @@ int fst_parse_detach_command(const char *cmd, char *ifname, size_t ifname_size)
 {
 	char *endp;
 
-	if (fst_read_next_text_param(cmd, ifname, ifname_size, &endp))
-		return EINVAL;
-
-	return 0;
+	return fst_read_next_text_param(cmd, ifname, ifname_size, &endp);
 }
 
 
-/* fst iface_detach */
 int fst_iface_detach(const char *ifname)
 {
 	struct fst_group *g;
-	struct fst_iface *f;
 
 	foreach_fst_group(g) {
+		struct fst_iface *f;
+
 		f = fst_group_get_iface_by_name(g, ifname);
 		if (f) {
 			fst_detach(f);
@@ -949,5 +946,5 @@ int fst_iface_detach(const char *ifname)
 		}
 	}
 
-	return EINVAL;
+	return -EINVAL;
 }

+ 15 - 15
src/fst/fst_session.c

@@ -1323,25 +1323,25 @@ static int get_group_fill_session(struct fst_group **g, struct fst_session *s)
 	*g = dl_list_first(&fst_global_groups_list,
 			   struct fst_group, global_groups_lentry);
 	if (!*g)
-		return EINVAL;
+		return -EINVAL;
 
 	s->data.new_iface = dl_list_first(&(*g)->ifaces, struct fst_iface,
 					  group_lentry);
 	if (!s->data.new_iface)
-		return EINVAL;
+		return -EINVAL;
 
 	s->data.old_iface = dl_list_entry(s->data.new_iface->group_lentry.next,
 					  struct fst_iface, group_lentry);
 	if (!s->data.old_iface)
-		return EINVAL;
+		return -EINVAL;
 
 	old_addr = fst_iface_get_peer_first(s->data.old_iface, &ctx, TRUE);
 	if (!old_addr)
-		return EINVAL;
+		return -EINVAL;
 
 	new_addr = fst_iface_get_peer_first(s->data.new_iface, &ctx, TRUE);
 	if (!new_addr)
-		return EINVAL;
+		return -EINVAL;
 
 	os_memcpy(s->data.old_peer_addr, old_addr, ETH_ALEN);
 	os_memcpy(s->data.new_peer_addr, new_addr, ETH_ALEN);
@@ -1366,10 +1366,10 @@ int fst_test_req_send_fst_request(const char *params)
 
 	fsts_id = fst_read_next_int_param(params, &is_valid, &endp);
 	if (!is_valid)
-		return EINVAL;
+		return -EINVAL;
 
 	if (get_group_fill_session(&g, &s))
-		return EINVAL;
+		return -EINVAL;
 
 	req.action = FST_ACTION_SETUP_REQUEST;
 	req.dialog_token = g->dialog_token;
@@ -1417,10 +1417,10 @@ int fst_test_req_send_fst_response(const char *params)
 
 	fsts_id = fst_read_next_int_param(params, &is_valid, &endp);
 	if (!is_valid)
-		return EINVAL;
+		return -EINVAL;
 
 	if (get_group_fill_session(&g, &s))
-		return EINVAL;
+		return -EINVAL;
 
 	status_code = WLAN_STATUS_SUCCESS;
 	if (!fst_read_next_text_param(endp, response, sizeof(response),
@@ -1483,10 +1483,10 @@ int fst_test_req_send_ack_request(const char *params)
 
 	fsts_id = fst_read_next_int_param(params, &is_valid, &endp);
 	if (!is_valid)
-		return EINVAL;
+		return -EINVAL;
 
 	if (get_group_fill_session(&g, &s))
-		return EINVAL;
+		return -EINVAL;
 
 	os_memset(&req, 0, sizeof(req));
 	req.action = FST_ACTION_ACK_REQUEST;
@@ -1508,10 +1508,10 @@ int fst_test_req_send_ack_response(const char *params)
 
 	fsts_id = fst_read_next_int_param(params, &is_valid, &endp);
 	if (!is_valid)
-		return EINVAL;
+		return -EINVAL;
 
 	if (get_group_fill_session(&g, &s))
-		return EINVAL;
+		return -EINVAL;
 
 	os_memset(&res, 0, sizeof(res));
 	res.action = FST_ACTION_ACK_RESPONSE;
@@ -1533,10 +1533,10 @@ int fst_test_req_send_tear_down(const char *params)
 
 	fsts_id = fst_read_next_int_param(params, &is_valid, &endp);
 	if (!is_valid)
-		return EINVAL;
+		return -EINVAL;
 
 	if (get_group_fill_session(&g, &s))
-		return EINVAL;
+		return -EINVAL;
 
 	os_memset(&td, 0, sizeof(td));
 	td.action = FST_ACTION_TEAR_DOWN;