here is my code
Code:
struct list
{
	NodeType* listData;
	int length;
};

 UnsortedType* CreateList(void)
{
	UnsortedType *list = (UnsortedType *) malloc(sizeof(UnsortedType));
	list->listData = NULL;
	list->length = 0;
	return list;
 }


void InsertItem(UnsortedType *list, int key, char* name)
{
	NodeType* current; /* traveling pointer */

	current = (NodeType*) malloc(sizeof(NodeType));
	current->key = key;
	strcpy(current->name, name);
	current->next = list->listData;
	list->listData = current;
	ist->length++;
}

i am wondering how i can permanently reverse the orders of the items in the list.
void reverse(NODE* list)