;ò
¢)?Bc           @   sæ   d  Z  d k Z d k Z d k Z d k l Z d k Z d k l Z d Z	 d k
 l Z d k
 l Z d k l Z d k l Z e i d	 e i  Z y e e f Wn e j
 o d
 Z d Z n Xd e f d     YZ d   Z d S(   s   NNTP queue runner.N(   s   StringIO(   s   getaddressess   , (   s   mm_cfg(   s   Utils(   s   Runner(   s   syslogs&  
    <mailman.                                     # match the prefix
    \d+.                                          # serial number
    \d+.                                          # time in seconds since epoch
    \d+.                                          # pid
    (?P<listname>[^@]+)                           # list's internal_name()
    @                                             # localpart@dom.ain
    (?P<hostname>[^>]+)                           # list's host_name
    >                                             # trailer
    i   i    s
   NewsRunnerc           B   s   t  Z e i Z d   Z RS(   Nc   	   	   C   sP  | i   | i d  o t | | |  n yð t | i    } t	 } z» yS t i | i  \ } } t i | | d t d t i d t i } | i |  Wna t i j
 o" } t d d | i   |  n2 t i j
 o" } t d d | i   |  n XWd  | o | i   n XWn& t j
 o } |  i |  t Sn Xt  Sd  S(   Ns   preppeds
   readermodes   users   passwords   errors)   (NNTPDirect) NNTP error for list "%s": %ss+   (NNTPDirect) socket error for list "%s": %s(!   s   mlists   Loads   msgdatas   gets   prepare_messages   msgs   StringIOs	   as_strings   fps   Nones   conns   Utilss	   nntpsplits	   nntp_hosts	   nntp_ports   nntplibs   NNTPs   Trues   mm_cfgs   NNTP_USERNAMEs   NNTP_PASSWORDs   posts
   error_temps   es   syslogs   internal_names   sockets   errors   quits	   Exceptions   selfs   _logs   False(	   s   selfs   mlists   msgs   msgdatas   fps   es   conns	   nntp_ports	   nntp_host(    (    s(   /var/mailman/Mailman/Queue/NewsRunner.pys   _dispose;   s:    
	 	(   s   __name__s
   __module__s   mm_cfgs   NEWSQUEUE_DIRs   QDIRs   _dispose(    (    (    s(   /var/mailman/Mailman/Queue/NewsRunner.pys
   NewsRunner8   s   	c         C   s  |  i d d f j o | d =|  i   | d <n | i d  }	 |  i o
 |	 t j	 o | d =|	 | d <n | d } | t j	 ox g  i
 } | i d  D] } | | i    q ~ } |  i | j o. | i
 |  i  | d =t i |  | d	 <q	n |  i | d	 <| d
 } t } | oc t i |  } | oI | i d d  \ } }
 | |  i   j o |
 |  i j o
 t } qqn | o | d
 =t i  |   | d <n | d t j o2 t! t" t# i$ i% |    } t' |  | d <n x t( i) D] } | | =qõWxw t( i+ D]l \ } } | i- | g   } t! |  d j  o qn | | =| d | | <x | d D] } | | | <qhWqWt | d <d  S(   Ni   i   s   approveds   Approveds   origsubjs   subjects
   newsgroupss   ,s
   Newsgroupss
   message-ids   listnames   hostnames
   Message-IDs   Linesi    s   prepped(0   s   mlists   news_moderations   msgs   GetListEmails   msgdatas   gets   origsubjs   news_prefix_subject_toos   Nones   ngheaders   appends   _[1]s   splits   ss   strips   ngroupss   linked_newsgroups
   COMMASPACEs   joins   msgids   Trues	   hackmsgids   mcres   searchs   mos   groups   lnames   hnames   internal_names	   host_names   Falses   Utilss   unique_message_ids   lens   lists   emails	   Iteratorss   body_line_iterators   counts   strs   mm_cfgs   NNTP_REMOVE_HEADERSs   headers   NNTP_REWRITE_DUPLICATE_HEADERSs   rewrites   get_alls   valuess   v(   s   mlists   msgs   msgdatas   rewrites	   hackmsgids   ngheaders   headers   msgids   lnames   origsubjs   hnames   counts   ngroupss   mos   _[1]s   ss   valuess   v(    (    s(   /var/mailman/Mailman/Queue/NewsRunner.pys   prepare_message`   sV    
6

#
 
  (   s   __doc__s   res   sockets   nntplibs	   cStringIOs   StringIOs   emails   email.Utilss   getaddressess
   COMMASPACEs   Mailmans   mm_cfgs   Utilss   Mailman.Queue.Runners   Runners   Mailman.Logging.Syslogs   syslogs   compiles   VERBOSEs   mcres   Trues   Falses	   NameErrors
   NewsRunners   prepare_message(   s   getaddressess   sockets   StringIOs   Runners   nntplibs   syslogs   res   mm_cfgs   Utilss
   NewsRunners   Falses   mcres   Trues   emails   prepare_messages
   COMMASPACE(    (    s(   /var/mailman/Mailman/Queue/NewsRunner.pys   ?   s&   				(