CTRL: remove boilerplate

Use CTRL_CMD_DEFINE_RO(), CTRL_CMD_DEFINE_WO() and
CTRL_CMD_DEFINE_WO_NOVRF() where appropriate to get rid of boilerplate
code.

Change-Id: I5bcea0b4f4b8f535bef2b423f2013b8b4a218b5b
diff --git a/openbsc/src/osmo-bsc_nat/bsc_nat_ctrl.c b/openbsc/src/osmo-bsc_nat/bsc_nat_ctrl.c
index ec4243e..057a583 100644
--- a/openbsc/src/osmo-bsc_nat/bsc_nat_ctrl.c
+++ b/openbsc/src/osmo-bsc_nat/bsc_nat_ctrl.c
@@ -446,11 +446,7 @@
 	return 0;
 }
 
-CTRL_CMD_DEFINE(net_save_cmd, "net 0 save-configuration");
-static int verify_net_save_cmd(struct ctrl_cmd *cmd, const char *v, void *d)
-{
-	return 0;
-}
+CTRL_CMD_DEFINE_WO_NOVRF(net_save_cmd, "net 0 save-configuration");
 
 static int set_net_save_cmd(struct ctrl_cmd *cmd, void *data)
 {
@@ -464,12 +460,6 @@
 	return CTRL_CMD_REPLY;
 }
 
-static int get_net_save_cmd(struct ctrl_cmd *cmd, void *data)
-{
-	cmd->reply = "Write only attribute";
-	return CTRL_CMD_ERROR;
-}
-
 struct ctrl_handle *bsc_nat_controlif_setup(struct bsc_nat *nat,
 					    const char *bind_addr, int port)
 {