o
    j(
                     @   sX   d dl Z d dlZd dlmZ d dlmZ G dd de jZG dd deZdd	d
Z	dS )    N)version)IdentityFilterc                   @   s    e Zd ZdZdd Zdd ZdS )ImpacketFormatterF
  Prefixing logged messages through the custom attribute 'bullet'.
  c                 C      t j| dd  d S )Nz"%(bullet)s %(identity)s%(message)slogging	Formatter__init__self r   /root/aizidognhua/tmp/workspace/projects/ec89d86c-575f-41c9-af57-ac45cbdbf775/venv/lib/python3.10/site-packages/impacket/examples/logger.pyr
   !      zImpacketFormatter.__init__c                 C   s`   |j tjkr
d|_n|j tjkrd|_n|j tjkrd|_nd|_t|ds)d|_tj	| |S )Nz[*]z[+]z[!]z[-]identity )
levelnor   INFObulletDEBUGWARNINGhasattrr   r	   format)r   recordr   r   r   r   $   s   zImpacketFormatter.formatN)__name__
__module____qualname____doc__r
   r   r   r   r   r   r      s    r   c                   @   s"   e Zd ZdZdd ZdddZdS )ImpacketFormatterTimeStampr   c                 C   r   )Nz3[%(asctime)-15s] %(bullet)s %(identity)s%(message)sr   r   r   r   r   r
   6   r   z#ImpacketFormatterTimeStamp.__init__Nc                 C   s   t j| |ddS )Nz%Y-%m-%d %H:%M:%S)datefmt)r   
formatTime)r   r   r   r   r   r   r    9   s   z%ImpacketFormatterTimeStamp.formatTime)N)r   r   r   r   r
   r    r   r   r   r   r   2   s    r   Fc                 C   s   t tj}| r|t  n|t  |t  t 	 
| |du r7t 	 t j t t  d S t 	 t j t 	dt j d S )NTzimpacket.smbserver)r   StreamHandlersysstdoutsetFormatterr   r   	addFilterr   	getLogger
addHandlersetLevelr   debugr   getInstallationPathr   ERROR)tsr)   handlerr   r   r   init<   s   r.   )FF)
r   r"   impacketr   /impacket.examples.ntlmrelayx.utils.identity_logr   r	   r   r   r.   r   r   r   r   <module>   s   	
