Check for non-default volume name template.

The iscsi delete methods in iscsi.py had hard-coded volume names
'volume-%s'.

If a user configured volume_name_template to
something other than default the result is failure to remove
the iscsi_target.

volume create worked appropriately and created the correct name
in the DB, so the persistence files were the only thing affected
or named incorrectly.

Fixes bug: 1101071

Change-Id: Id5575874b2cebd9b3509d739cb92abf06c503c4e
(cherry picked from commit f02c575b4b28b69cade6c1c06dd772c62754fc9c)
Fix error for extra specs update with empty body.

Fixes: bug #1090320
Change-Id: Ia2792d477f7670ecb2eb0c9c10dcbf1cf5b2389e
(cherry picked from commit fee9b2ad61bb69d356e1280f0556afd808c5f128)
Add a safe_minidom_parse_string function.

Adds a new utils.safe_minidom_parse_string function and
updates external API facing Cinder modules to use it.
This ensures we have safe defaults on our incoming API XML parsing.

Internally safe_minidom_parse_string uses a ProtectedExpatParser
class to disable DTDs and entities from being parsed when using
minidom.

Fixes LP Bug #1100282 for Folsom.

Change-Id: Ie8ae7a6e12fbf51de406d10ca21072140374abf5
Merge "Add a safe_minidom_parse_string function." into stable/folsom
Merge "Check for non-default volume name template." into stable/folsom
Merge "Fix error for extra specs update with empty body." into stable/folsom
Fix syntax error.