Completed RFC 2812 section 3.1 implementations