Warning: session_start(): Session cannot be started after headers have already been sent in /home/tvrreohg/public_html/manga.php on line 13
3 Ö;j’&ã5@sˆddlZddlZddlZddlmZmZmZmZmZddl m Z dZ dddd d d d d gZ e ƒZdd„Zdd„ZejdƒZdd„Zdd„deddd„eeeedeeeeeeeeedd„eeeeeeeedd„ejdd„dd„ejdejdd„dd„eeeeejddejeeeddeedœ4Zdd „Zd!d"„ZGd#d$„d$eƒZd%d&„Zd'd(„Zd)d*„Zd+d,„Z ej!ej"d-�d.d/„ƒZ#ej!ej"d-�d0d1„ƒZ$dS)2éNé)ÚconfigÚ constantsÚ http_utilsÚ log_utilsÚutils)Ú ConfigParserz/etc/sysconfig/kcare/kcare.confÚUSE_CONTENT_FILE_V3ÚFORCE_JSON_SIG_V3ÚENABLE_CRASHREPORTERÚ KCORE_OUTPUTÚ KMSG_OUTPUTÚSEND_PERF_METRICSÚKERNEL_ANOMALY_REPORT_ENABLEÚFORCE_DOCTOR_FALLBACKcCs |jƒdkS)NÚ1ÚTRUEÚYESÚY)rrrr)Úupper)Úvalue©rú5/usr/libexec/kcare/python/kcarectl/config_handlers.pyÚbool_converter#srcCsdd„|jdƒDƒS)NcSs g|]}|jƒr|jƒjƒ‘qSr)ÚstripÚlower)Ú.0Úitemrrrú (szcomma_list..ú,)Úsplit)rrrrÚ comma_list'sr!z^[a-z][a-z0-9_.+\-]*$cCsRgg}}x(t|ƒD]}tj|ƒr&|n|j|ƒqW|rNtjdjdj|ƒƒƒ|S)Nz3LIBCARE_LIBS: ignoring invalid library name(s): {0}z, )r!Ú_LIBCARE_LIB_NAME_REÚmatchÚappendrÚlogwarnÚformatÚjoin)rZvalidÚinvalidÚtokenrrrÚlibcare_libs_list0s  r*cCs|jƒS)N)r)ÚvrrrÚ@sr,cCs|jƒS)N)r)r+rrrr,DscCs |jdƒS)Nú/)Úrstrip)r+rrrr,SscCs|pdS)Nr)r+rrrr,\scCs |jdƒS)Nr-)r.)r+rrrr,^scCs |jdƒS)Nr-)r.)r+rrrr,_scCs |jdƒS)Nr-)r.)r+rrrr,cscCs |jdƒS)Nr-)r.)r+rrrr,ds)4ÚAFTER_UPDATE_COMMANDÚAUTO_STICKY_PATCHSETÚ AUTO_UPDATEÚAUTO_UPDATE_DELAYÚBEFORE_UPDATE_COMMANDÚCHECK_SSL_CERTSÚDOCTOR_REPORT_MAX_SIZE_BYTESr rÚ FORCE_GIDÚ FORCE_IPV4Ú FORCE_IPV6r Ú HTTP_TIMEOUTÚHTTP_UPLOAD_TIMEOUTÚIGNORE_FEATURE_FLAGSÚIGNORE_UNKNOWN_KERNELr ÚKCORE_OUTPUT_SIZEÚ KDUMPS_DIRrÚ$KERNEL_ANOMALY_REPORT_MAX_SIZE_BYTESr ÚLIBCARE_DISABLEDÚ LIBCARE_LIBSÚ!LIBCARE_PIDLOGS_MAX_TOTAL_SIZE_MBÚLIBCARE_SOCKET_TIMEOUTÚLIB_AUTO_UPDATEÚ PATCH_LEVELÚ PATCH_METHODÚ PATCH_SERVERÚPATCH_SERVER_IPV6Ú PATCH_TYPEÚPREFIXÚPREV_PATCH_TYPEÚREGISTRATION_URLÚREGISTRATION_URL_IPV6Ú PRINT_LEVELÚ REPORT_FQDNÚSILENCE_ERRORSÚSTATUS_CHANGE_GAPÚ STICKY_PATCHÚSTICKY_PATCHSETÚ UPDATE_DELAYÚ UPDATE_POLICYÚUPDATE_SYSCTL_CONFIGÚUSERSPACE_PATCHESr ÚKERNEL_VERSION_FILEÚKCARE_UNAME_FILEÚSUCCESS_TIMEOUTrc KsÖttƒ}|jƒ}|jƒx¦|jƒD]š\}}d}|d}|d}x^tt|ƒƒD]N}||j|ƒsl||j|ƒrL|dkr|||=n|dt|ƒd||<d}PqLW|s"|j |dt|ƒdƒq"Wt j tdj |ƒƒdS)NFú=ú z = Ú TÚ) ÚopenÚCONFIGÚ readlinesÚcloseÚitemsÚrangeÚlenÚ startswithÚstrr$rÚ atomic_writer') ÚkwargsZcfÚlinesZproprÚupdatedZprop_eqZprop_spÚirrrÚ update_configws"rmc Csîi}tjdƒ}xD|D]<}|j|ƒ}|r<|jƒ\}}|sHd}n td|ƒ‚|||<qWt|ƒttƒ}|r~tddjt|ƒƒƒ‚x`|j ƒD]T\}}t|} |dksˆ| dkrªqˆy | |ƒWqˆt k rÚtd||fƒ‚YqˆXqˆWt f|ŽdS)Nz^([^=]+)=([^=]*)$z8Invalid parameter format: %s. Format should be KEY=VALUEzUnknown parameter: %sz, zBad value for %s: %s) ÚreÚcompiler#ÚgroupsÚ SystemExitÚsetÚPOSSIBLE_CONFIG_OPTIONSr'ÚsortedrcÚ Exceptionrm) ÚparamsZparams_for_updateÚpatternÚparamr#ÚkeyrZunknown_paramsÚvar_nameÚconvertrrrÚupdate_config_from_argsŒs,       r|c@s$eZdZdd„Zdd„Zdd„ZdS)Ú FakeSecHeadcCs||_d|_dS)Nz [asection] )ÚfpÚsechead)Úselfr~rrrÚ__init__ªszFakeSecHead.__init__c Cs&|jrz|jSd|_Xn |jjƒSdS)N)rr~Úreadline)r€rrrr‚®s  zFakeSecHead.readlineccs.|jr|jVd|_x|jD] }|VqWdS)N)rr~)r€ÚlinerrrÚ__iter__·s  zFakeSecHead.__iter__N)Ú__name__Ú __module__Ú __qualname__r�r‚r„rrrrr}©s r}c sÂi‰tdddœd�‰y,tttƒƒ}tjr4ˆj|ƒn ˆj|ƒWntk rTiSXd ‡‡fdd„ }x4dD],\}}t j |ƒslˆj d |ƒ}|rl|t j |<qlWx tjƒD]\}}|||d �q¦WˆS)Nr^)Ú HTTP_PROXYÚ HTTPS_PROXY)Údefaultsc sJyˆjd|ƒ}Wntk r(|}YnX|dk rF|r>||ƒ}|ˆ|<dS)NÚasection)Úgetru)ÚnameÚdefaultr{r)ÚcpÚresultrrÚread_varÌs z%get_config_settings..read_varÚhttprˆÚhttpsr‰r‹)r{)NN©r’rˆ©r“r‰)r”r•)rr}r_r`rÚPY2ÚreadfpÚ read_filerurÚget_proxy_from_envrŒÚosÚenvironrsrc)rr‘ÚschemeÚvariableÚproxyrzr{r)r�r�rÚget_config_settings¿s$     rŸcCs(tjƒtƒ}tjj|ƒtj|ƒdS)N)Ú_CONFIG_OPTIONSÚclearrŸrÚ__dict__Úupdate)ZsettingsrrrÚset_settings_from_config_fileäs r¤c Cs€i}xv|jƒD]j\}}|jƒ}|jdƒs*q|jddƒjddƒ}ytt|ƒƒ||<Wqtk rvtjj d||ƒYqXqW|S)ak Checking headers for feature flags which start with 'KC-Flag-' and reformat it to dictionary with keys in upper case and without 'KC-Flag-' prefix and dashes replaced with underscores. For unification all header keys are checked in upper case. For example: 'KC-Flag-Some-Value' -> 'SOME_VALUE' :return: dict {'SOME_VALUE': bool, ...} zKC-FLAG-r^ú-Ú_z(Invalid feature flag header value %s: %s) rcrrfÚreplaceÚboolÚintÚ ValueErrorrÚkcarelogÚerror)ÚheadersÚflagsZhdr_nameZ hdr_valueZ upper_nameÚ param_namerrrÚ convert_headers_to_feature_flagsís  r°cCst|ƒtjstƒdS)N)Úsave_feature_flags_cacherr;Úset_feature_flags_from_cache)r­rrrÚset_feature_flags_from_headerssr³)ÚloggercCs"t|ƒ}tjtjtj|ƒd�dS)N)Úcontent)r°rrhrÚFEATURE_FLAGS_CACHEÚjsonÚdumps)r­Ú feature_flagsrrrr± sr±c CsztjjtjƒsdSttjƒ�}tj|ƒ}WdQRXxB|jƒD]6\}}|t krNq<|t krXq<|t j |<t jjd||ƒqsž  %