If John was "gifted" the firearm from an immediate relative, and John lives in Virginia, then it doesn't matter. If John lived in another state then I can't answer the question.
(Oh unless John lived in NY or NJ in which case he should just shoot himself and get it over with).