Your IP : 216.73.216.213
��Y� � @ su d Z d d l m Z d d l m Z m Z d d � Z d d � Z d d � Z d
d
d
d d � Z d
d � Z
d S)z�
This module implements WSGI related helpers adapted from ``werkzeug.wsgi``
:copyright: (c) 2010 by the Werkzeug Team, see AUTHORS for more details.
:license: BSD, see LICENSE for more details.
� )�absolute_import)� iteritems�urllib_quotec c s� x� t | � D]� \ } } t | � } | j d � rj | d
k rj | d d � j d d � j � | f Vq
| d k r
| j d d � j � | f Vq
Wd S)z+
Returns only proper HTTP headers.
ZHTTP_�HTTP_CONTENT_TYPE�HTTP_CONTENT_LENGTH� N�_�-�CONTENT_TYPE�CONTENT_LENGTH)r r )r
r )r �str�
startswith�replace�title)�environ�key�value� r �A/opt/alt/python35/lib/python3.5/site-packages/raven/utils/wsgi.py�get_headers
s *r c c s0 x) d D]! } | | k r | | | f Vq Wd S)z8
Returns our whitelisted environment variables.
�REMOTE_ADDR�SERVER_NAME�SERVER_PORTN)r r r r )r r r r r �get_environ s
r c C s� | j d � } d | k r( | d } nQ d | k rA | d } n8 | d } | t | d � f d k ry | d
| d 7} | j d � r� | d k r� | d d � } n+ | j d � r� | d k r� | d d � } | S)z�Return the real host for the given WSGI environment. This takes care
of the `X-Forwarded-Host` header.
:param environ: the WSGI environment to get the host of.
zwsgi.url_schemeZHTTP_X_FORWARDED_HOSTZ HTTP_HOSTr r �https�443�http�80�:z:80N� z:443� �r r �r r )r! r"