diff --git a/groundStation/src/cli/cli_nodes.c b/groundStation/src/cli/cli_nodes.c
index 555e2e71ddc47d7ce05f8addb74f51e50e7bd30d..5dc2d18a10a0f4d4d4f9faf7f50694a87f909874 100644
--- a/groundStation/src/cli/cli_nodes.c
+++ b/groundStation/src/cli/cli_nodes.c
@@ -73,6 +73,7 @@ int cli_getnodes(struct backend_conn * conn, int argc, char ** argv) {
 
 int cli_addnode(struct backend_conn * conn, int argc, char ** argv) {
 	struct frontend_node_data node_data;
+
 	int needHelp = 0;
 	
 	if ((needHelp = help_check(argc, argv))) {
@@ -87,8 +88,12 @@ int cli_addnode(struct backend_conn * conn, int argc, char ** argv) {
 		return 1;
 	}
 	
+	if ((node_data.name = (char *)malloc((*node_data.name) * strlen(argv[2]))) == NULL) {
+		return 1;
+	}
+
 	node_data.type = atoi(argv[1]);
-	strncpy(node_data.name, argv[2], 512/* this value matches the max space of name */ );
+	strncpy(node_data.name, argv[2], strlen(argv[2]));
 
 	if (frontend_addnode(conn, &node_data)) {
 		return 1;