A multipurpose method
The method works in three ways, dependent on argument value and current state
1. HELO/EHLO was not sent - returns null and set up $this->error
2. HELO was sent
$name = 'HELO': returns server name
$name = 'EHLO': returns boolean false
$name = any string: returns null and set up $this->error
3. EHLO was sent
$name = 'HELO'|'EHLO': returns server name
$name = any string: if extension $name exists, returns boolean True
or its options. Otherwise returns boolean False
In other words, one can use this method to detect 3 conditions:
- null returned: handshake was not or we don't know about ext (refer to $this->error)
- false returned: the requested feature exactly not exists
- positive value returned: the requested feature exists