auth: Implement special handling of <select> dropdowns on XML POST
auth: Implement special handling of <select> dropdowns on XML POST

Experimentation with the Cisco AnyConnect client showed that the
following changes need to be made for compatibility:

1) If the "value" attribute is missing from the <option> node, use the
XML node content instead.  i.e. this should post as
"<dropdown>vpn</dropdown>":

    <select name="dropdown">
      <option>vpn</option>
    </select>

And this should post as "<dropdown>optname</dropdown>":

    <select name="dropdown">
      <option value="optname">vpn</option>
    </select>

2) If the name of the <select> node happens to be "group_list", put the
response in a special <group-select> node right under the <config-auth>
node, instead of putting it under the <auth> node.  (These strings are
hardcoded into the Cisco client.)

Reported-by: Fabian Jäger <9342395cd46e8868230410af32f4e8e4e36573a1@chungwasoft.com>
Signed-off-by: Kevin Cernekee <3105dbb3dd63fbb4f6371cfb04adc6726f76c56b@gmail.com>
Signed-off-by: David Woodhouse <b460d66aaf00c296a3db1c1d9eeafc081d5f7d70@intel.com>

liiir1985/openconnect,don-johnny/openconnect,chadcatlett/openconnect,lins05/openconnect,brandt/openconnect,matlockx/openconnect,brandt/openconnect,chadcatlett/openconnect,nmav/openconnect-mine,mtmiller/openconnect,neshema/openconnect,liiir1985/openconnect,atyndall/openconnect,liiir1985/openconnect,lins05/openconnect,atyndall/openconnect,mtmiller/openconnect,liiir1985/openconnect,matlockx/openconnect,mveplus/openconnect-client,neshema/openconnect,don-johnny/openconnect,chadcatlett/openconnect,lins05/openconnect,mveplus/openconnect-client,cernekee/openconnect,lins05/openconnect,don-johnny/openconnect,mveplus/openconnect-client,don-johnny/openconnect,neshema/openconnect,mtmiller/openconnect,mtmiller/openconnect,chadcatlett/openconnect,atyndall/openconnect,cernekee/openconnect,neshema/openconnect,atyndall/openconnect,mveplus/openconnect-client,brandt/openconnect,brandt/openconnect,matlockx/openconnect,cernekee/openconnect,nmav/openconnect-mine,matlockx/openconnect,cernekee/openconnect,nmav/openconnect-mine,nmav/openconnect-mine