I don't think that's enough. The linker should be able to resolve the symbol this way, but the compiler shouldn't. Then you'd have to declare it extern. But the right thing to do is to create a .h file that holds the public declaration of the .c file, and include it. This is a best practice generally speaking, and it's whas is done in wireshark as well. Have a look at packet-dns.c/h that do what you think. Moreover, there is already a file packet-ieee80211.h: that should be the place.
Cheers,
Dario.