Write Pseudo code to perform sorted insertion in a Linked List?

PSUEDO CODE:-

void insertion_sort(struct Node** head, struct Node* newNode)

if (*head == NULL || (*head)->data >= newNode->data)
{
            newNode->next = *head;
            *head = newNode;
            return;
}
struct Node* current = *head;
while (current->next != NULL && current->next->data < newNode->data)
current = current->next;
newNode->next = current->next;
current->next = newNode;
}