[C] Lista dwukierunkowa cykliczna - szukanie

Mam problem funkcją szukającą na liście dwukierunkowej cyklicznej. Jakiejkolwiek liczby bym nie podał funkcja nie znajduje jej na liście nawet jak podana liczba została wcześniej dodana do listy. Zna ktoś rozwiązanie tego problemu? Kod poniżej:

Skompilowałem twój program i uruchomiłem, to mam na konsoli:

Właśnie chodzi o to, że jak poda się liczbę, która jest na początku listy to działa normalnie i ją znajduje, ale już z drugą, trzecią itd. nie działa poprawnie.

Porobiłeś typedef-y zaciemniające kod, stąd już się nie łapiesz w tym co robisz i piszesz kod na zasadzie dodam przypadkowo gwiazdki i ampersandy, aż kompilator da mi spokój. Wyjdź od tego kawałka który napisałem (nie ma zwalniania pamięci, jest szukanie): https://ideone.com/PA2bIy

 

Problem rozwiązany. Temat do zamknięcia.