You're only free'ing the head and the conductor, not every element of the list. Imagine that you append a certain number of elements to your list:

A->B->C->D->...->Z

head will point to A and conductor will point to another (random) element. If you free them, there will still be N-2 elements left to free if you have N elements in your list.
You need to iterate over all the elements and free them one by one. Don't forget to save the conductor->next in a seperate pointer before freeing or else you lost the link to the next element:

Code:
node *tmp;
while (conductor->next != NULL)
{
tmp = conductor->next;
free(conductor);
conductor = tmp;
}
and please use NULL for pointers, it's easier to read than 0.