add support for extra protocol settings, take 2