def quote_header_value(value, extra_chars='', allow_token=True):
 value = str(value)
 if allow_token:
  token_chars = (_token_chars | set(extra_chars))
  if set(value).issubset(token_chars):
   return value
 return ('"%s"' % value.replace('\\', '\\\\').replace('"', '\\"'))

def quote_header_value ( value , extra_chars = '' , allow_token = True ) : value = str ( value ) if allow_token : token_chars = ( _token_chars | set ( extra_chars ) ) if set ( value ) . issubset ( token_chars ) : return value return ( '"%s"' % value . replace ( '\\' , '\\\\' ) . replace ( '"' , '\\"' ) )
quote a header value if necessary .