[logback] 02/02: Import Debian changes 1:1.0.4-1+deb7u1

Markus Koschany apo at moszumanska.debian.org
Fri Apr 7 22:16:23 UTC 2017


This is an automated email from the git hooks/post-receive script.

apo pushed a commit to branch wheezy
in repository logback.

commit febe22ba76de74fbf5238b5f245dcb3fcf151d0d
Merge: 8a8dd93 b179fd3
Author: Markus Koschany <apo at debian.org>
Date:   Fri Apr 7 23:20:14 2017 +0200

    Import Debian changes 1:1.0.4-1+deb7u1
    
    logback (1:1.0.4-1+deb7u1) wheezy-security; urgency=high
    
      * Team upload.
      * Fix CVE-2017-5929:
        It was discovered that logback, a flexible logging library for Java, would
        deserialize data from untrusted sockets. This issue has been resolved by
        adding a whitelist to use only trusted classes. (Closes: #857343)
    
    logback (1:1.0.4-1) unstable; urgency=low
    
      * New upstream release.
      * d/control: Update Standards-Version to 3.9.3: no changes needed.
      * d/copyright: Upgrade to copyright-format 1.0.

 LICENSE.txt                                        |   15 +
 README.txt                                         |   22 +
 debian/changelog                                   |   18 +
 debian/control                                     |    2 +-
 debian/copyright                                   |  102 +-
 debian/patches/CVE-2017-5929.patch                 |  294 ++
 debian/patches/series                              |    1 +
 docs/.htaccess                                     |    2 +
 docs/access.html                                   |  607 +++
 docs/bridge.html                                   |   38 +
 docs/bugreport.html                                |   91 +
 docs/cla.txt                                       |  124 +
 docs/codes.html                                    |  595 +++
 docs/consolePlugin.html                            |  330 ++
 docs/css/_print.css                                |   30 +
 docs/css/common.css                                |  310 ++
 docs/css/maven-base.css                            |  151 +
 docs/css/maven-theme.css                           |  141 +
 docs/css/popup.css                                 |   67 +
 docs/css/prettify.css                              |   27 +
 docs/css/print.css                                 |    7 +
 docs/css/screen.css                                |  152 +
 docs/css/site.css                                  |    1 +
 docs/deadlock.html                                 |   79 +
 docs/demo.html                                     |  490 +++
 docs/dependencies.html                             |  216 ++
 docs/documentation.html                            |  146 +
 docs/download.html                                 |  187 +
 docs/faq.html                                      |  359 ++
 docs/images/collapsed.gif                          |  Bin 0 -> 53 bytes
 docs/images/cyclicView.png                         |  Bin 0 -> 37943 bytes
 docs/images/expanded.gif                           |  Bin 0 -> 52 bytes
 docs/images/external.png                           |  Bin 0 -> 230 bytes
 docs/images/helpEMAIL.gif                          |  Bin 0 -> 1359 bytes
 docs/images/icon_error_sml.gif                     |  Bin 0 -> 1010 bytes
 docs/images/icon_info_sml.gif                      |  Bin 0 -> 606 bytes
 docs/images/icon_success_sml.gif                   |  Bin 0 -> 990 bytes
 docs/images/icon_warning_sml.gif                   |  Bin 0 -> 576 bytes
 docs/images/lbAccessStatus.jpg                     |  Bin 0 -> 145740 bytes
 docs/images/logos/build-by-maven-black.png         |  Bin 0 -> 2294 bytes
 docs/images/logos/build-by-maven-white.png         |  Bin 0 -> 2260 bytes
 docs/images/logos/lblogo.jpg                       |  Bin 0 -> 45331 bytes
 docs/images/logos/maven-feather.png                |  Bin 0 -> 3330 bytes
 docs/images/logos/qosLogo.png                      |  Bin 0 -> 3370 bytes
 docs/images/myjob.png                              |  Bin 0 -> 2468 bytes
 docs/images/newwindow.png                          |  Bin 0 -> 220 bytes
 docs/images/plugin/buttons.gif                     |  Bin 0 -> 1318 bytes
 docs/images/plugin/createFilter.gif                |  Bin 0 -> 12785 bytes
 docs/images/plugin/filterWindow.gif                |  Bin 0 -> 11623 bytes
 docs/images/plugin/prefs.gif                       |  Bin 0 -> 8762 bytes
 docs/images/plugin/sampleLogs.gif                  |  Bin 0 -> 11397 bytes
 docs/images/plugin/stackTrace.gif                  |  Bin 0 -> 8562 bytes
 docs/images/qoslogo.gif                            |  Bin 0 -> 1633 bytes
 docs/images/turboFilterForMDC.png                  |  Bin 0 -> 26505 bytes
 docs/index.html                                    |  117 +
 docs/job.html                                      |   90 +
 docs/js/dsl.js                                     |   39 +
 docs/js/jquery.cookies.2.2.0.js                    |  450 +++
 docs/js/popup.js                                   |  102 +
 docs/js/prettify.js                                | 1478 ++++++++
 docs/license.html                                  |   81 +
 docs/logback-2011.ppt                              |  Bin 0 -> 281600 bytes
 docs/logback.ppt                                   |  Bin 0 -> 236032 bytes
 docs/mailinglist.html                              |  153 +
 docs/manual/.htaccess                              |    2 +
 docs/manual/appenders.html                         | 3894 ++++++++++++++++++++
 docs/manual/architecture.html                      |  936 +++++
 docs/manual/configuration.html                     | 1850 ++++++++++
 docs/manual/encoders.html                          |  261 ++
 docs/manual/filters.html                           | 1196 ++++++
 docs/manual/groovy.html                            |  537 +++
 docs/manual/images/chapters/appenders/appender.uml | 1179 ++++++
 docs/manual/images/chapters/appenders/appender.~ml |  865 +++++
 .../chapters/appenders/appenderClassDiagram.jpg    |  Bin 0 -> 71199 bytes
 .../images/chapters/appenders/dbAppenderLE.gif     |  Bin 0 -> 31272 bytes
 .../chapters/appenders/dbAppenderLEException.gif   |  Bin 0 -> 3861 bytes
 .../chapters/appenders/dbAppenderLEProperty.gif    |  Bin 0 -> 3820 bytes
 .../images/chapters/appenders/fileAppenderUML.png  |  Bin 0 -> 6684 bytes
 .../images/chapters/appenders/smtpAppender1.jpg    |  Bin 0 -> 226207 bytes
 .../images/chapters/appenders/smtpAppender2.jpg    |  Bin 0 -> 244223 bytes
 .../architecture/underTheHoodSequence2.gif         |  Bin 0 -> 71138 bytes
 .../architecture/underTheHoodSequence2_small.gif   |  Bin 0 -> 23063 bytes
 .../chapters/configuration/appenderSyntax.png      |  Bin 0 -> 4541 bytes
 .../images/chapters/configuration/basicSyntax.png  |  Bin 0 -> 2950 bytes
 .../chapters/configuration/lbClassicStatus.jpg     |  Bin 0 -> 176313 bytes
 .../images/chapters/filters/countingFilter.png     |  Bin 0 -> 89406 bytes
 .../manual/images/chapters/filters/filterChain.gif |  Bin 0 -> 1226 bytes
 .../chapters/jmxConfigurator/jconsole15_jetty.gif  |  Bin 0 -> 9796 bytes
 .../chapters/jmxConfigurator/jconsole15_tomcat.gif |  Bin 0 -> 9741 bytes
 .../chapters/jmxConfigurator/jmxConfigurator.gif   |  Bin 0 -> 33445 bytes
 .../images/chapters/jmxConfigurator/multiple.gif   |  Bin 0 -> 22501 bytes
 .../images/chapters/jmxConfigurator/mx4j_jetty.gif |  Bin 0 -> 26973 bytes
 .../chapters/jmxConfigurator/mx4j_tomcat.gif       |  Bin 0 -> 27657 bytes
 .../images/chapters/jmxConfigurator/statusList.gif |  Bin 0 -> 36223 bytes
 .../manual/images/chapters/layouts/htmlLayout0.gif |  Bin 0 -> 9841 bytes
 .../manual/images/chapters/layouts/htmlLayout1.png |  Bin 0 -> 21825 bytes
 .../images/chapters/layouts/htmlLayoutAccess.gif   |  Bin 0 -> 148822 bytes
 docs/manual/index.html                             |  121 +
 docs/manual/introduction.html                      |  267 ++
 docs/manual/jmxConfig.html                         |  404 ++
 docs/manual/layouts.html                           | 2247 +++++++++++
 docs/manual/loggingSeparation.html                 |  505 +++
 docs/manual/mdc.html                               |  746 ++++
 docs/manual/menu.js                                |   15 +
 docs/manual/migrationFromLog4j.html                |  215 ++
 docs/manual/onJoran.html                           |  774 ++++
 docs/manual/underTheHood.html                      |   15 +
 docs/news.html                                     | 2004 ++++++++++
 docs/project-reports.html                          |  110 +
 docs/reasonsToSwitch.html                          |  276 ++
 docs/recipes/captureHttp.html                      |  260 ++
 docs/recipes/emailPerTransaction.html              |  445 +++
 docs/recipes/images/factorEmail0.png               |  Bin 0 -> 51648 bytes
 docs/recipes/index.html                            |   43 +
 docs/repos.html                                    |   47 +
 docs/setup.html                                    |  223 ++
 docs/slf4j-slides.vsd                              |  Bin 0 -> 108032 bytes
 docs/support.html                                  |   56 +
 docs/templates/creative.js                         |   33 +
 docs/templates/footer.js                           |   25 +
 docs/templates/header.js                           |   13 +
 docs/templates/left.js                             |   26 +
 docs/templates/right.js                            |   19 +
 docs/templates/setup.js                            |    8 +
 docs/volunteer.html                                |   70 +
 logback-access/pom.xml                             |  207 ++
 .../ch/qos/logback/access/AccessConstants.java     |   32 +
 .../java/ch/qos/logback/access/PatternLayout.java  |  194 +
 .../qos/logback/access/PatternLayoutEncoder.java   |   32 +
 .../logback/access/ViewStatusMessagesServlet.java  |   51 +
 .../access/boolex/JaninoEventEvaluator.java        |   81 +
 .../java/ch/qos/logback/access/db/DBAppender.java  |  146 +
 .../java/ch/qos/logback/access/db/package.html     |   23 +
 .../java/ch/qos/logback/access/db/script/db2.sql   |   42 +
 .../java/ch/qos/logback/access/db/script/db2l.sql  |   32 +
 .../ch/qos/logback/access/db/script/hsqldb.sql     |   34 +
 .../qos/logback/access/db/script/msSQLServer.sql   |   37 +
 .../java/ch/qos/logback/access/db/script/mysql.sql |   44 +
 .../ch/qos/logback/access/db/script/oracle.sql     |   56 +
 .../ch/qos/logback/access/db/script/postgresql.sql |   39 +
 .../qos/logback/access/filter/CountingFilter.java  |   83 +
 .../qos/logback/access/filter/PeriodicStats.java   |   65 +
 .../qos/logback/access/filter/StatisticalView.java |   39 +
 .../logback/access/filter/StatisticalViewImpl.java |  116 +
 .../ch/qos/logback/access/filter/StatsByDay.java   |   33 +
 .../ch/qos/logback/access/filter/StatsByHour.java  |   33 +
 .../qos/logback/access/filter/StatsByMinute.java   |   33 +
 .../ch/qos/logback/access/filter/StatsByMonth.java |   33 +
 .../ch/qos/logback/access/filter/StatsByWeek.java  |   32 +
 .../qos/logback/access/html/DefaultCssBuilder.java |   80 +
 .../ch/qos/logback/access/html/HTMLLayout.java     |   99 +
 .../ch/qos/logback/access/html/UrlCssBuilder.java  |   43 +
 .../java/ch/qos/logback/access/html/package.html   |   13 +
 .../logback/access/jetty/JettyServerAdapter.java   |   62 +
 .../qos/logback/access/jetty/RequestLogImpl.java   |  304 ++
 .../logback/access/jetty/RequestLogRegistry.java   |   32 +
 .../java/ch/qos/logback/access/jetty/package.html  |   13 +
 .../logback/access/joran/JoranConfigurator.java    |   79 +
 .../access/joran/action/ConfigurationAction.java   |   56 +
 .../access/joran/action/EvaluatorAction.java       |   25 +
 .../java/ch/qos/logback/access/joran/package.html  |   13 +
 .../AccessEventPreSerializationTransformer.java    |   33 +
 .../ch/qos/logback/access/net/SMTPAppender.java    |   93 +
 .../qos/logback/access/net/SimpleSocketServer.java |  101 +
 .../ch/qos/logback/access/net/SocketAppender.java  |   68 +
 .../java/ch/qos/logback/access/net/SocketNode.java |   89 +
 .../ch/qos/logback/access/net/URLEvaluator.java    |   69 +
 .../main/java/ch/qos/logback/access/package.html   |   13 +
 .../logback/access/pattern/AccessConverter.java    |   67 +
 .../access/pattern/ContentLengthConverter.java     |   29 +
 .../qos/logback/access/pattern/DateConverter.java  |   64 +
 .../access/pattern/EnsureLineSeparation.java       |   38 +
 .../access/pattern/FullRequestConverter.java       |   51 +
 .../access/pattern/FullResponseConverter.java      |   91 +
 .../access/pattern/LineSeparatorConverter.java     |   25 +
 .../access/pattern/LocalIPAddressConverter.java    |   37 +
 .../logback/access/pattern/LocalPortConverter.java |   24 +
 .../ch/qos/logback/access/pattern/NAConverter.java |   30 +
 .../access/pattern/RemoteHostConverter.java        |   25 +
 .../access/pattern/RemoteIPAddressConverter.java   |   24 +
 .../access/pattern/RemoteUserConverter.java        |   31 +
 .../access/pattern/RequestAttributeConverter.java  |   41 +
 .../access/pattern/RequestContentConverter.java    |   34 +
 .../access/pattern/RequestCookieConverter.java     |   40 +
 .../access/pattern/RequestHeaderConverter.java     |   45 +
 .../access/pattern/RequestMethodConverter.java     |   24 +
 .../access/pattern/RequestParameterConverter.java  |   49 +
 .../access/pattern/RequestProtocolConverter.java   |   24 +
 .../access/pattern/RequestURIConverter.java        |   29 +
 .../access/pattern/RequestURLConverter.java        |   28 +
 .../access/pattern/ResponseContentConverter.java   |   34 +
 .../access/pattern/ResponseHeaderConverter.java    |   51 +
 .../access/pattern/ServerNameConverter.java        |   23 +
 .../access/pattern/StatusCodeConverter.java        |   24 +
 .../ch/qos/logback/access/pattern/package.html     |   13 +
 .../ch/qos/logback/access/servlet/TeeFilter.java   |  139 +
 .../access/servlet/TeeHttpServletRequest.java      |   82 +
 .../access/servlet/TeeHttpServletResponse.java     |   75 +
 .../access/servlet/TeeServletInputStream.java      |   75 +
 .../access/servlet/TeeServletOutputStream.java     |   88 +
 .../java/ch/qos/logback/access/servlet/Util.java   |   42 +
 .../access/sift/AccessEventDiscriminator.java      |  201 +
 .../qos/logback/access/sift/AppenderFactory.java   |   37 +
 .../ch/qos/logback/access/sift/SiftAction.java     |   59 +
 .../qos/logback/access/sift/SiftingAppender.java   |   48 +
 .../access/sift/SiftingJoranConfigurator.java      |   73 +
 .../ch/qos/logback/access/spi/AccessContext.java   |   87 +
 .../ch/qos/logback/access/spi/AccessEvent.java     |  492 +++
 .../ch/qos/logback/access/spi/IAccessEvent.java    |  118 +
 .../ch/qos/logback/access/spi/ServerAdapter.java   |   30 +
 .../main/java/ch/qos/logback/access/spi/Util.java  |   35 +
 .../java/ch/qos/logback/access/spi/package.html    |   13 +
 .../ch/qos/logback/access/tomcat/LogbackValve.java |  309 ++
 .../logback/access/tomcat/TomcatServerAdapter.java |   56 +
 .../java/ch/qos/logback/access/tomcat/package.html |   13 +
 .../input/integration/db/mysql-with-driver.xml     |   17 +
 .../input/integration/db/oracle10g-with-driver.xml |   17 +
 .../input/integration/db/oracle11g-with-driver.xml |   17 +
 .../integration/db/postgresql-with-driver.xml      |   16 +
 .../input/integration/db/sqlserver-with-driver.xml |   16 +
 logback-access/src/test/input/jetty/sifting.xml    |   17 +
 .../input/joran/conditional/conditionalConsole.xml |   17 +
 .../joran/conditional/conditionalConsole_ELSE.xml  |   20 +
 .../src/test/input/joran/defaultLayout.xml         |   13 +
 logback-access/src/test/input/joran/smoke.xml      |    5 +
 .../java/ch/qos/logback/access/AllAccessTest.java  |   32 +
 .../java/ch/qos/logback/access/TeztConstants.java  |   19 +
 .../access/boolex/JaninoEventEvaluatorTest.java    |   79 +
 .../ch/qos/logback/access/boolex/PackageTest.java  |   24 +
 .../access/db/DBAppenderIntegrationTest.java       |  137 +
 .../ch/qos/logback/access/db/DBAppenderTest.java   |  207 ++
 .../logback/access/db/DBAppenderTestFixture.java   |  128 +
 .../java/ch/qos/logback/access/db/PackageTest.java |   26 +
 .../access/dummy/DummyAccessEventBuilder.java      |   30 +
 .../ch/qos/logback/access/dummy/DummyRequest.java  |  319 ++
 .../ch/qos/logback/access/dummy/DummyResponse.java |  176 +
 .../logback/access/dummy/DummyServerAdapter.java   |   42 +
 .../ch/qos/logback/access/filter/PackageTest.java  |   25 +
 .../qos/logback/access/filter/StatsByDayTest.java  |   76 +
 .../qos/logback/access/jetty/JettyBasicTest.java   |  128 +
 .../qos/logback/access/jetty/JettyFixtureBase.java |  101 +
 .../JettyFixtureWithListAndConsoleAppenders.java   |   59 +
 .../ch/qos/logback/access/jetty/PackageTest.java   |   24 +
 .../qos/logback/access/joran/ConditionalTest.java  |   82 +
 .../access/joran/JoranConfiguratorTest.java        |   77 +
 .../ch/qos/logback/access/joran/PackageTest.java   |   12 +
 .../qos/logback/access/net/MockSocketServer.java   |   77 +
 .../ch/qos/logback/access/net/NOPOutputStream.java |   27 +
 .../ch/qos/logback/access/net/PackageTest.java     |   25 +
 .../logback/access/net/SerializationPerfTest.java  |  108 +
 .../qos/logback/access/net/SocketAppenderTest.java |   89 +
 .../qos/logback/access/net/URLEvaluatorTest.java   |   83 +
 .../qos/logback/access/pattern/ConverterTest.java  |  200 +
 .../ch/qos/logback/access/pattern/PackageTest.java |   25 +
 .../ch/qos/logback/access/servlet/PackageTest.java |   24 +
 .../qos/logback/access/servlet/TeeFilterTest.java  |   68 +
 .../ch/qos/logback/access/sift/PackageTest.java    |   24 +
 .../logback/access/sift/SiftingAppenderTest.java   |   95 +
 .../access/spi/AccessEventSerializationTest.java   |   76 +
 .../ch/qos/logback/access/spi/PackageTest.java     |   25 +
 .../access/testUtil/NotifyingListAppender.java     |   32 +
 logback-classic/integration.xml                    |   56 +
 logback-classic/osgi-build.xml                     |   97 +
 logback-classic/pom.xml                            |  436 +++
 logback-classic/src/IBUNDLE-META-INF/MANIFEST.MF   |   15 +
 .../classic/boolex/EvaluatorTemplate.groovy        |   39 +
 .../logback/classic/gaffer/AppenderDelegate.groovy |   32 +
 .../classic/gaffer/ComponentDelegate.groovy        |  152 +
 .../classic/gaffer/ConfigurationContributor.groovy |   31 +
 .../classic/gaffer/ConfigurationDelegate.groovy    |  175 +
 .../classic/gaffer/GafferConfigurator.groovy       |   62 +
 .../qos/logback/classic/gaffer/NestedType.groovy   |   23 +
 .../qos/logback/classic/gaffer/PropertyUtil.groovy |   72 +
 .../logback/classic/sift/GSiftingAppender.groovy   |  156 +
 .../logback/classic/sift/ZSiftingDelegate.groovy   |   39 +
 .../java/ch/qos/logback/classic/AsyncAppender.java |   58 +
 .../ch/qos/logback/classic/BasicConfigurator.java  |   62 +
 .../ch/qos/logback/classic/ClassicConstants.java   |   49 +
 .../main/java/ch/qos/logback/classic/Level.java    |  298 ++
 .../main/java/ch/qos/logback/classic/Logger.java   |  838 +++++
 .../java/ch/qos/logback/classic/LoggerContext.java |  368 ++
 .../java/ch/qos/logback/classic/PatternLayout.java |  154 +
 .../logback/classic/ViewStatusMessagesServlet.java |   42 +
 .../logback/classic/boolex/GEventEvaluator.java    |   89 +
 .../ch/qos/logback/classic/boolex/IEvaluator.java  |   26 +
 .../classic/boolex/JaninoEventEvaluator.java       |  154 +
 .../logback/classic/boolex/OnErrorEvaluator.java   |   38 +
 .../logback/classic/boolex/OnMarkerEvaluator.java  |   58 +
 .../java/ch/qos/logback/classic/db/DBAppender.java |  296 ++
 .../java/ch/qos/logback/classic/db/DBHelper.java   |   47 +
 .../java/ch/qos/logback/classic/db/SQLBuilder.java |   64 +
 .../qos/logback/classic/db/names/ColumnName.java   |   41 +
 .../logback/classic/db/names/DBNameResolver.java   |   32 +
 .../classic/db/names/DefaultDBNameResolver.java    |   34 +
 .../classic/db/names/SimpleDBNameResolver.java     |   55 +
 .../ch/qos/logback/classic/db/names/TableName.java |   26 +
 .../java/ch/qos/logback/classic/db/package.html    |   23 +
 .../java/ch/qos/logback/classic/db/script/db2.sql  |   56 +
 .../java/ch/qos/logback/classic/db/script/h2.sql   |   46 +
 .../ch/qos/logback/classic/db/script/hsqldb.sql    |   46 +
 .../ch/qos/logback/classic/db/script/mssql.sql     |   53 +
 .../ch/qos/logback/classic/db/script/mysql.sql     |   61 +
 .../ch/qos/logback/classic/db/script/oracle.sql    |   80 +
 .../qos/logback/classic/db/script/postgresql.sql   |   55 +
 .../ch/qos/logback/classic/db/script/sqllite.sql   |   61 +
 .../classic/db/script/sybaseSqlAnywhere.sql        |   48 +
 .../classic/encoder/PatternLayoutEncoder.java      |   33 +
 .../ch/qos/logback/classic/filter/LevelFilter.java |   57 +
 .../logback/classic/filter/ThresholdFilter.java    |   61 +
 .../ch/qos/logback/classic/gaffer/GafferUtil.java  |   80 +
 .../classic/helpers/MDCInsertingServletFilter.java |   92 +
 .../ch/qos/logback/classic/helpers/package.html    |   13 +
 .../logback/classic/html/DefaultCssBuilder.java    |   75 +
 .../classic/html/DefaultThrowableRenderer.java     |   68 +
 .../ch/qos/logback/classic/html/HTMLLayout.java    |  142 +
 .../ch/qos/logback/classic/html/UrlCssBuilder.java |   43 +
 .../java/ch/qos/logback/classic/html/package.html  |   13 +
 .../qos/logback/classic/jmx/JMXConfigurator.java   |  300 ++
 .../logback/classic/jmx/JMXConfiguratorMBean.java  |   39 +
 .../java/ch/qos/logback/classic/jmx/MBeanUtil.java |   86 +
 .../logback/classic/joran/JoranConfigurator.java   |   92 +
 .../classic/joran/action/ConfigurationAction.java  |   91 +
 .../classic/joran/action/ConsolePluginAction.java  |   64 +
 .../classic/joran/action/ContextNameAction.java    |   40 +
 .../classic/joran/action/EvaluatorAction.java      |   23 +
 .../classic/joran/action/InsertFromJNDIAction.java |   78 +
 .../joran/action/JMXConfiguratorAction.java        |   89 +
 .../logback/classic/joran/action/LevelAction.java  |   67 +
 .../logback/classic/joran/action/LoggerAction.java |   95 +
 .../joran/action/LoggerContextListenerAction.java  |   82 +
 .../classic/joran/action/RootLoggerAction.java     |   61 +
 .../java/ch/qos/logback/classic/joran/package.html |   13 +
 .../java/ch/qos/logback/classic/jul/JULHelper.java |   73 +
 .../logback/classic/jul/LevelChangePropagator.java |  110 +
 .../java/ch/qos/logback/classic/jul/package.html   |    9 +
 .../ch/qos/logback/classic/log4j/XMLLayout.java    |  189 +
 .../java/ch/qos/logback/classic/log4j/package.html |   13 +
 .../qos/logback/classic/net/JMSQueueAppender.java  |  211 ++
 .../ch/qos/logback/classic/net/JMSQueueSink.java   |  152 +
 .../qos/logback/classic/net/JMSTopicAppender.java  |  211 ++
 .../ch/qos/logback/classic/net/JMSTopicSink.java   |  152 +
 .../LoggingEventPreSerializationTransformer.java   |   39 +
 .../ch/qos/logback/classic/net/SMTPAppender.java   |  122 +
 .../logback/classic/net/SimpleSocketServer.java    |  171 +
 .../ch/qos/logback/classic/net/SocketAcceptor.java |   23 +
 .../ch/qos/logback/classic/net/SocketAppender.java |   76 +
 .../ch/qos/logback/classic/net/SocketNode.java     |  127 +
 .../ch/qos/logback/classic/net/SyslogAppender.java |  153 +
 .../java/ch/qos/logback/classic/net/package.html   |   12 +
 .../main/java/ch/qos/logback/classic/package.html  |   13 +
 .../qos/logback/classic/pattern/Abbreviator.java   |   24 +
 .../classic/pattern/CallerDataConverter.java       |  139 +
 .../classic/pattern/ClassNameOnlyAbbreviator.java  |   37 +
 .../classic/pattern/ClassOfCallerConverter.java    |   30 +
 .../logback/classic/pattern/ClassicConverter.java  |   27 +
 .../classic/pattern/ContextNameConverter.java      |   32 +
 .../qos/logback/classic/pattern/DateConverter.java |   65 +
 .../classic/pattern/EnsureExceptionHandling.java   |   69 +
 .../pattern/ExtendedThrowableProxyConverter.java   |   33 +
 .../classic/pattern/FileOfCallerConverter.java     |   30 +
 .../logback/classic/pattern/LevelConverter.java    |   29 +
 .../classic/pattern/LineOfCallerConverter.java     |   30 +
 .../classic/pattern/LineSeparatorConverter.java    |   25 +
 .../logback/classic/pattern/LoggerConverter.java   |   23 +
 .../qos/logback/classic/pattern/MDCConverter.java  |   78 +
 .../logback/classic/pattern/MarkerConverter.java   |   38 +
 .../logback/classic/pattern/MessageConverter.java  |   29 +
 .../classic/pattern/MethodOfCallerConverter.java   |   30 +
 .../logback/classic/pattern/NamedConverter.java    |   56 +
 .../pattern/NopThrowableInformationConverter.java  |   43 +
 .../logback/classic/pattern/PropertyConverter.java |   47 +
 .../classic/pattern/RelativeTimeConverter.java     |   35 +
 .../RootCauseFirstThrowableProxyConverter.java     |   65 +
 .../classic/pattern/SyslogStartConverter.java      |  101 +
 .../TargetLengthBasedClassNameAbbreviator.java     |  128 +
 .../logback/classic/pattern/ThreadConverter.java   |   29 +
 .../pattern/ThrowableHandlingConverter.java        |   27 +
 .../classic/pattern/ThrowableProxyConverter.java   |  177 +
 .../java/ch/qos/logback/classic/pattern/Util.java  |   50 +
 .../ch/qos/logback/classic/pattern/package.html    |   13 +
 .../classic/selector/ContextJNDISelector.java      |  202 +
 .../logback/classic/selector/ContextSelector.java  |   40 +
 .../classic/selector/DefaultContextSelector.java   |   52 +
 .../selector/servlet/ContextDetachingSCL.java      |   61 +
 .../selector/servlet/LoggerContextFilter.java      |   81 +
 .../qos/logback/classic/sift/AppenderFactory.java  |   36 +
 .../classic/sift/ContextBasedDiscriminator.java    |   88 +
 .../sift/JNDIBasedContextDiscriminator.java        |   97 +
 .../classic/sift/MDCBasedDiscriminator.java        |  109 +
 .../ch/qos/logback/classic/sift/SiftAction.java    |   57 +
 .../qos/logback/classic/sift/SiftingAppender.java  |   45 +
 .../classic/sift/SiftingJoranConfigurator.java     |   79 +
 .../ch/qos/logback/classic/spi/CallerData.java     |  104 +
 .../logback/classic/spi/ClassPackagingData.java    |   81 +
 .../ch/qos/logback/classic/spi/ILoggingEvent.java  |   86 +
 .../qos/logback/classic/spi/IThrowableProxy.java   |   23 +
 .../qos/logback/classic/spi/LoggerComparator.java  |   35 +
 .../logback/classic/spi/LoggerContextAware.java    |   33 +
 .../classic/spi/LoggerContextAwareBase.java        |   50 +
 .../logback/classic/spi/LoggerContextListener.java |   33 +
 .../qos/logback/classic/spi/LoggerContextVO.java   |   67 +
 .../qos/logback/classic/spi/LoggerRemoteView.java  |   51 +
 .../ch/qos/logback/classic/spi/LoggingEvent.java   |  339 ++
 .../ch/qos/logback/classic/spi/LoggingEventVO.java |  249 ++
 .../classic/spi/PackagingDataCalculator.java       |  245 ++
 .../ch/qos/logback/classic/spi/PlatformInfo.java   |   38 +
 .../java/ch/qos/logback/classic/spi/STEUtil.java   |   61 +
 .../classic/spi/StackTraceElementProxy.java        |   90 +
 .../ch/qos/logback/classic/spi/ThrowableProxy.java |  165 +
 .../logback/classic/spi/ThrowableProxyUtil.java    |  185 +
 .../qos/logback/classic/spi/ThrowableProxyVO.java  |  117 +
 .../qos/logback/classic/spi/TurboFilterList.java   |   82 +
 .../java/ch/qos/logback/classic/spi/package.html   |   13 +
 .../classic/turbo/DuplicateMessageFilter.java      |   91 +
 .../classic/turbo/DynamicThresholdFilter.java      |  257 ++
 .../qos/logback/classic/turbo/LRUMessageCache.java |   66 +
 .../ch/qos/logback/classic/turbo/MDCFilter.java    |   72 +
 .../logback/classic/turbo/MDCValueLevelPair.java   |   44 +
 .../ch/qos/logback/classic/turbo/MarkerFilter.java |   67 +
 .../qos/logback/classic/turbo/MatchingFilter.java  |   48 +
 .../classic/turbo/ReconfigureOnChangeFilter.java   |  240 ++
 .../ch/qos/logback/classic/turbo/TurboFilter.java  |   76 +
 .../logback/classic/util/ContextInitializer.java   |  185 +
 .../classic/util/ContextSelectorStaticBinder.java  |  107 +
 .../classic/util/CopyOnInheritThreadLocal.java     |   40 +
 .../classic/util/DefaultNestedComponentRules.java  |   46 +
 .../java/ch/qos/logback/classic/util/EnvUtil.java  |   32 +
 .../java/ch/qos/logback/classic/util/JNDIUtil.java |   43 +
 .../classic/util/LevelToSyslogSeverity.java        |   46 +
 .../logback/classic/util/LogbackMDCAdapter.java    |  203 +
 .../classic/util/StatusListenerConfigHelper.java   |   49 +
 .../java/ch/qos/logback/classic/util/package.html  |   13 +
 .../java/org/slf4j/impl/StaticLoggerBinder.java    |  114 +
 .../main/java/org/slf4j/impl/StaticMDCBinder.java  |   48 +
 .../java/org/slf4j/impl/StaticMarkerBinder.java    |   57 +
 .../src/main/java/org/slf4j/package.html           |   14 +
 logback-classic/src/test/allInOneSafeMode.sh       |   51 +
 logback-classic/src/test/checkResults.sh           |   20 +
 logback-classic/src/test/generateLogsInSafeMode.sh |   40 +
 .../src/test/generateRollingLogsInSafeMode.sh      |   40 +
 .../gaffer/ConfigurationDelegateTest.groovy        |  247 ++
 .../classic/gaffer/GafferConfiguratorTest.groovy   |  160 +
 .../logback/classic/gaffer/PropertyUtilTest.groovy |   26 +
 .../classic/sift/GSiftingAppenderTest.groovy       |  111 +
 logback-classic/src/test/input/autoConfig.xml      |   15 +
 .../src/test/input/gaffer/conversionRule.groovy    |   13 +
 .../test/input/gaffer/evaluatorWithMatcher.groovy  |   37 +
 .../src/test/input/gaffer/onTheFly.groovy          |    9 +
 .../test/input/gaffer/propertyCascading0.groovy    |   22 +
 .../test/input/gaffer/propertyCascading1.groovy    |   24 +
 .../test/input/gaffer/propertyCascading2.groovy    |   22 +
 .../test/input/gaffer/sift/noDiscriminator.groovy  |   22 +
 .../src/test/input/gaffer/sift/sample0.groovy      |   26 +
 .../src/test/input/gaffer/sift/sample1.groovy      |   30 +
 logback-classic/src/test/input/gaffer/smoke.groovy |   15 +
 logback-classic/src/test/input/gaffer/x.groovy     |   62 +
 .../test/input/integration/autoInit/logback.xml    |    8 +
 .../input/integration/db/mysql-with-driver.xml     |   18 +
 .../input/integration/db/oracle10g-with-driver.xml |   18 +
 .../input/integration/db/oracle11g-with-driver.xml |   18 +
 .../integration/db/postgresql-with-driver.xml      |   18 +
 .../input/integration/db/sqlserver-with-driver.xml |   18 +
 logback-classic/src/test/input/issue/lbcore26.xml  |   18 +
 logback-classic/src/test/input/issue/lbcore63.xml  |   34 +
 .../src/test/input/joran/additivity.xml            |    6 +
 .../src/test/input/joran/appenderRefByProperty.xml |   17 +
 .../src/test/input/joran/callerData.xml            |   29 +
 .../joran/compatibility/layoutInsteadOfEncoder.xml |   15 +
 .../joran/conditional/conditionalConsoleApp.xml    |   29 +
 .../conditional/conditionalConsoleApp_ELSE.xml     |   41 +
 .../conditional/conditionalIncludeExistingFile.xml |   14 +
 .../conditionalIncludeInexistentFile.xml           |   14 +
 .../test/input/joran/conditional/includedFile.xml  |   10 +
 .../test/input/joran/conditional/withoutJanino.xml |   18 +
 .../src/test/input/joran/contextRename.xml         |    3 +
 .../input/joran/conversionRule/htmlLayout0.xml     |   15 +
 .../input/joran/conversionRule/patternLayout0.xml  |   15 +
 .../src/test/input/joran/encoderCharset.xml        |   18 +
 .../src/test/input/joran/evaluatorFilter.xml       |   19 +
 logback-classic/src/test/input/joran/ignore.xml    |   20 +
 .../src/test/input/joran/issues/lbcore193.xml      |   16 +
 .../test/input/joran/issues/lbcore254.properties   |    1 +
 .../src/test/input/joran/issues/lbcore254.xml      |    4 +
 .../input/joran/jul/levelChangePropagator0.xml     |    9 +
 .../input/joran/jul/levelChangePropagator1.xml     |    7 +
 .../src/test/input/joran/levelFilter.xml           |   14 +
 .../src/test/input/joran/loggerLevelByProperty.xml |   14 +
 .../src/test/input/joran/onConsoleRetro.xml        |   14 +
 .../src/test/input/joran/pattern/replace0.xml      |   15 +
 .../src/test/input/joran/properties.xml            |    8 +
 .../src/test/input/joran/rolling/basic.xml         |   23 +
 .../src/test/input/joran/rolling/timeAndSize.xml   |   27 +
 .../src/test/input/joran/rootLevelByProperty.xml   |   13 +
 logback-classic/src/test/input/joran/scan1.xml     |   10 +
 .../src/test/input/joran/sift/completeCycle.xml    |   22 +
 .../test/input/joran/sift/defaultLayoutRule.xml    |   23 +
 .../src/test/input/joran/sift/hoard0.xml           |   26 +
 .../src/test/input/joran/sift/lbclassic203.xml     |   25 +
 .../src/test/input/joran/sift/multipleNesting.xml  |   24 +
 .../src/test/input/joran/sift/smoke.xml            |   22 +
 .../input/joran/sift/unsetDefaultValueProperty.xml |   21 +
 .../src/test/input/joran/sift/zeroNesting.xml      |   20 +
 logback-classic/src/test/input/joran/simple2.xml   |   17 +
 .../src/test/input/joran/simpleEvaluator.xml       |   10 +
 .../src/test/input/joran/simpleLevel.xml           |   14 +
 .../src/test/input/joran/simpleList.xml            |   14 +
 .../src/test/input/joran/smtp/customBufferSize.xml |   23 +
 .../src/test/input/joran/smtp/customEvaluator.xml  |   21 +
 .../src/test/input/joran/statusListener.xml        |   20 +
 .../src/test/input/joran/syslog_LBCLASSIC_50.xml   |   14 +
 logback-classic/src/test/input/joran/timestamp.xml |    4 +
 logback-classic/src/test/input/joran/turbo.xml     |   18 +
 logback-classic/src/test/input/joran/turbo2.xml    |   21 +
 .../src/test/input/joran/turboDynamicThreshold.xml |   29 +
 .../test/input/joran/turboDynamicThreshold2.xml    |   32 +
 logback-classic/src/test/input/joran/unique.xml    |   15 +
 logback-classic/src/test/input/osgi/simple.xml     |   19 +
 .../src/test/input/socket/clientConfig.xml         |   24 +
 .../src/test/input/socket/serverConfig.xml         |   17 +
 .../src/test/input/turbo/inclusion/inner0.xml      |    3 +
 .../test/input/turbo/inclusion/topByResource.xml   |    8 +
 .../src/test/input/turbo/inclusion/topLevel0.xml   |    9 +
 logback-classic/src/test/input/turbo/scan 1.groovy |    6 +
 logback-classic/src/test/input/turbo/scan 1.xml    |    9 +
 .../src/test/input/turbo/scan_lbclassic154.xml     |   14 +
 logback-classic/src/test/input/turbo/scan_perf.xml |   22 +
 .../ch/qos/logback/classic/AllClassicTest.java     |   42 +
 .../ch/qos/logback/classic/AsyncAppenderTest.java  |   86 +
 .../qos/logback/classic/ClassicTestConstants.java  |   30 +
 .../src/test/java/ch/qos/logback/classic/Foo.java  |   30 +
 .../test/java/ch/qos/logback/classic/HLogger.java  |  408 ++
 .../ch/qos/logback/classic/HLoggerContext.java     |  118 +
 .../logback/classic/LoggerContextDeadlockTest.java |   74 +
 .../ch/qos/logback/classic/LoggerContextTest.java  |  229 ++
 .../ch/qos/logback/classic/LoggerPerfTest.java     |  258 ++
 .../logback/classic/LoggerSerializationTest.java   |   74 +
 .../java/ch/qos/logback/classic/LoggerTest.java    |  227 ++
 .../ch/qos/logback/classic/LoggerTestHelper.java   |   35 +
 .../test/java/ch/qos/logback/classic/MDCTest.java  |   52 +
 .../java/ch/qos/logback/classic/MDCTestThread.java |   39 +
 .../qos/logback/classic/MessageFormattingTest.java |   84 +
 .../java/ch/qos/logback/classic/PackageTest.java   |   28 +
 .../ch/qos/logback/classic/PatternLayoutTest.java  |  206 ++
 .../classic/ScenarioBasedLoggerContextTest.java    |  115 +
 .../classic/TurboFilteringInLoggerTest.java        |  183 +
 .../classic/boolex/ConditionalWithoutJanino.java   |   61 +
 .../classic/boolex/GEventEvaluatorTest.java        |  172 +
 .../classic/boolex/JaninoEventEvaluatorTest.java   |  273 ++
 .../classic/boolex/OnMarkerEvaluatorTest.java      |   68 +
 .../ch/qos/logback/classic/boolex/PackageTest.java |   23 +
 .../ch/qos/logback/classic/control/CLCTest.java    |   56 +
 .../qos/logback/classic/control/ControlLogger.java |  185 +
 .../classic/control/ControlLoggerContext.java      |  110 +
 .../qos/logback/classic/control/CreateLogger.java  |   32 +
 .../qos/logback/classic/control/PackageTest.java   |   24 +
 .../ch/qos/logback/classic/control/Scenario.java   |   39 +
 .../logback/classic/control/ScenarioAction.java    |   18 +
 .../qos/logback/classic/control/ScenarioMaker.java |  103 +
 .../classic/control/ScenarioRandomUtil.java        |  135 +
 .../ch/qos/logback/classic/control/SetLevel.java   |   37 +
 .../java/ch/qos/logback/classic/corpus/Corpus.java |  118 +
 .../ch/qos/logback/classic/corpus/CorpusModel.java |  323 ++
 .../logback/classic/corpus/ExceptionBuilder.java   |   47 +
 .../qos/logback/classic/corpus/LogStatement.java   |   42 +
 .../classic/corpus/MessageArgumentTuple.java       |   30 +
 .../ch/qos/logback/classic/corpus/RandomUtil.java  |   46 +
 .../qos/logback/classic/corpus/TextFileUtil.java   |   61 +
 .../logback/classic/corpusTest/RandomUtilTest.java |   61 +
 .../classic/corpusTest/TextFileUtilTest.java       |   45 +
 .../qos/logback/classic/db/DBAppenderH2Test.java   |  215 ++
 .../classic/db/DBAppenderH2TestFixture.java        |  142 +
 .../qos/logback/classic/db/DBAppenderHSQLTest.java |  187 +
 .../classic/db/DBAppenderHSQLTestFixture.java      |  177 +
 .../classic/db/DBAppenderIntegrationTest.java      |  252 ++
 .../ch/qos/logback/classic/db/PackageTest.java     |   25 +
 .../ch/qos/logback/classic/db/SQLBuilderTest.java  |  118 +
 .../db/names/DefaultDBNameResolverTest.java        |   70 +
 .../qos/logback/classic/db/names/PackageTest.java  |   24 +
 .../classic/db/names/SimpleDBNameResolverTest.java |  141 +
 .../encoder/LayoutInsteadOfEncoderTest.java        |   62 +
 .../qos/logback/classic/encoder/PackageTest.java   |   23 +
 .../classic/encoder/PatternLayoutEncoderTest.java  |   77 +
 .../qos/logback/classic/html/HTMLLayoutTest.java   |  251 ++
 .../ch/qos/logback/classic/html/PackageTest.java   |   23 +
 .../logback/classic/html/XHTMLEntityResolver.java  |   56 +
 .../ch/qos/logback/classic/issue/LBCORE63.java     |  100 +
 .../ch/qos/logback/classic/issue/PackageTest.java  |   27 +
 .../issue/lbclassic135/LoggingRunnable.java        |   49 +
 .../issue/lbclassic135/LoggingToFileThrouhput.java |  116 +
 .../issue/lbclassic135/lbclassic139/Accessor.java  |   51 +
 .../lbclassic139/LB139_DeadlockTest.java           |   54 +
 .../lbclassic135/lbclassic139/PackageTest.java     |   23 +
 .../issue/lbclassic135/lbclassic139/Worker.java    |   76 +
 .../issue/lbclassic154/LoggingAppender.java        |   40 +
 .../lbclassic180/HtmlEscapedMessageConverter.java  |   12 +
 .../logback/classic/issue/lbclassic180/Main.java   |   28 +
 .../logback/classic/issue/lbclassic180/logback.xml |   16 +
 .../issue/lbclassic203/ConcurrentSiftingTest.java  |   64 +
 .../lbclassic203/InstanceCountingAppender.java     |   30 +
 .../classic/issue/lbclassic203/PackageTest.java    |   23 +
 .../classic/issue/lbclassic323/Barebones.java      |   32 +
 .../logback/classic/issue/lbclassic323/Simple.java |   36 +
 .../classic/issue/lbclassic323/logback_smtp.xml    |   19 +
 .../logback/classic/issue/lbclassic330/Main.java   |   28 +
 .../logback/classic/issue/lbclassic330/logback.xml |   35 +
 .../lbclassic36/DateFormatOriginal_tzest.java      |  252 ++
 .../issue/lbclassic36/DateFormatPerf_Tapp.java     |   62 +
 ...DateFormattingThreadedThroughputCalculator.java |   58 +
 .../SelectiveDateFormattingRunnable.java           |   99 +
 .../logback/classic/issue/lbcore211/Lbcore211.java |   34 +
 .../logback/classic/issue/lbcore224/Reduce.java    |  160 +
 .../classic/issue/lbcore224/WithZookeperTest._ava  |   53 +
 .../logback/classic/issue/lbcore243/Common.java    |    8 +
 .../lbcore243/PerformanceComparatorLog4j.java      |   49 +
 .../lbcore243/PerformanceComparatorLogback.java    |   61 +
 .../issue/lbcore243/log4j_with_immediateFlush.xml  |   17 +
 .../lbcore243/log4j_without_immediateFlush.xml     |   17 +
 .../lbcore243/logback_with_immediateFlush.xml      |   22 +
 .../lbcore243/logback_without_immediateFlush.xml   |   23 +
 .../qos/logback/classic/issue/lbcore26/Main.java   |   45 +
 .../qos/logback/classic/issue/lbcore_155/Main.java |   39 +
 .../logback/classic/issue/lbcore_155/OThread.java  |   54 +
 .../logback/classic/jmx/JMXConfiguratorTest.java   |  158 +
 .../ch/qos/logback/classic/jmx/PackageTest.java    |   25 +
 .../logback/classic/joran/EvaluatorJoranTest.java  |  106 +
 .../classic/joran/JoranConfiguratorTest.java       |  450 +++
 .../ch/qos/logback/classic/joran/PackageTest.java  |   24 +
 .../classic/joran/conditional/ConditionalTest.java |  157 +
 .../classic/joran/conditional/PackageTest.java     |   24 +
 .../classic/jul/LevelChangePropagatorTest.java     |   69 +
 .../ch/qos/logback/classic/jul/PackageTest.java    |   23 +
 .../ch/qos/logback/classic/multiJVM/Checker.java   |   88 +
 .../logback/classic/multiJVM/FileAppenderPerf.java |   97 +
 .../logback/classic/multiJVM/LoggingThread.java    |   48 +
 .../classic/multiJVM/SafeModeFileAppender.java     |   96 +
 .../multiJVM/SafeModeRollingFileAppender.java      |  111 +
 .../logback/classic/net/CounterBasedEvaluator.java |   75 +
 .../classic/net/DilutedSMTPAppenderTest.java       |  134 +
 .../classic/net/ExternalMockSocketServer.java      |   93 +
 .../logback/classic/net/JMSQueueAppenderTest.java  |  143 +
 .../classic/net/JMSQueueAppenderTestApp.java       |   61 +
 .../logback/classic/net/JMSTopicAppenderTest.java  |  248 ++
 .../classic/net/JMSTopicAppenderTestApp.java       |   62 +
 .../qos/logback/classic/net/NOPOutputStream.java   |   42 +
 .../ch/qos/logback/classic/net/PackageTest.java    |   25 +
 .../classic/net/SMTPAppender_GreenTest.java        |  305 ++
 .../classic/net/SMTPAppender_SubethaSMTPTest.java  |  356 ++
 .../logback/classic/net/SerializationPerfTest.java |  203 +
 .../logback/classic/net/SocketAppenderTest.java    |  286 ++
 .../java/ch/qos/logback/classic/net/SocketMin.java |  107 +
 .../logback/classic/net/SyslogAppenderTest.java    |  193 +
 .../classic/net/mock/MockObjectMessage.java        |  260 ++
 .../ch/qos/logback/classic/net/mock/MockQueue.java |   31 +
 .../classic/net/mock/MockQueueConnection.java      |   96 +
 .../net/mock/MockQueueConnectionFactory.java       |   42 +
 .../logback/classic/net/mock/MockQueueSender.java  |  134 +
 .../logback/classic/net/mock/MockQueueSession.java |  208 ++
 .../logback/classic/net/mock/MockSyslogServer.java |   71 +
 .../ch/qos/logback/classic/net/mock/MockTopic.java |   31 +
 .../classic/net/mock/MockTopicConnection.java      |   95 +
 .../net/mock/MockTopicConnectionFactory.java       |   42 +
 .../classic/net/mock/MockTopicPublisher.java       |  140 +
 .../logback/classic/net/mock/MockTopicSession.java |  198 +
 .../classic/net/testObjectBuilders/Builder.java    |   24 +
 .../LoggingEventBuilderInContext.java              |   42 +
 .../LoggingEventWithParametersBuilder.java         |   49 +
 .../net/testObjectBuilders/MinimalSerBuilder.java  |   36 +
 .../TrivialLoggingEventBuilder.java                |   36 +
 .../TrivialLoggingEventVOBuilder.java              |   31 +
 .../qos/logback/classic/pattern/ConverterTest.java |  387 ++
 .../ExtendedThrowableProxyConverterTest.java       |  106 +
 .../logback/classic/pattern/MDCConverterTest.java  |   77 +
 .../classic/pattern/MarkerConverterTest.java       |   94 +
 .../qos/logback/classic/pattern/PackageTest.java   |   28 +
 .../RootCauseFirstThrowableProxyConverterTest.java |  103 +
 .../TargetLengthBasedClassNameAbbreviatorTest.java |  149 +
 .../pattern/ThrowableProxyConverterTest.java       |   78 +
 .../qos/logback/classic/rolling/PackageTest.java   |   23 +
 .../TimeBasedRollingWithConfigFileTest.java        |  193 +
 .../logback/classic/rolling/UniqueFileTest.java    |   63 +
 .../classic/selector/ContextDetachingSCLTest.java  |   89 +
 .../classic/selector/ContextJNDISelectorTest.java  |   88 +
 .../qos/logback/classic/selector/PackageTest.java  |   23 +
 .../classic/sift/MDCBasedDiscriminatorTest.java    |   79 +
 .../ch/qos/logback/classic/sift/PackageTest.java   |   23 +
 .../logback/classic/sift/SiftingAppenderTest.java  |  160 +
 .../logback/classic/spi/BasicContextListener.java  |   60 +
 .../qos/logback/classic/spi/BogusClassLoader.java  |   52 +
 .../ch/qos/logback/classic/spi/CPDCSpecial.java    |   24 +
 .../ch/qos/logback/classic/spi/CallerDataTest.java |   48 +
 .../logback/classic/spi/ContextListenerTest.java   |   83 +
 .../logback/classic/spi/DummyThrowableProxy.java   |   65 +
 .../logback/classic/spi/LocalFirstClassLoader.java |   79 +
 .../logback/classic/spi/LoggerComparatorTest.java  |   51 +
 .../spi/LoggingEventSerializationPerfTest.java     |  141 +
 .../classic/spi/LoggingEventSerializationTest.java |  216 ++
 .../ch/qos/logback/classic/spi/LuckyCharms.java    |   28 +
 .../ch/qos/logback/classic/spi/PackageTest.java    |   26 +
 .../classic/spi/PackagingDataCalculatorTest.java   |  126 +
 .../qos/logback/classic/spi/PubLoggingEventVO.java |  239 ++
 .../logback/classic/spi/ThrowableProxyTest.java    |  181 +
 .../classic/spi/special/CPDCSpecialImpl.java       |   45 +
 .../logback/classic/testUtil/SampleConverter.java  |   28 +
 .../classic/turbo/DebugUsersTurboFilter.java       |   63 +
 .../classic/turbo/DuplicateMessageFilterTest.java  |   89 +
 .../logback/classic/turbo/LRUMessageCacheTest.java |   41 +
 .../logback/classic/turbo/MarkerFilterTest.java    |   77 +
 .../qos/logback/classic/turbo/NOPTurboFilter.java  |   31 +
 .../ch/qos/logback/classic/turbo/PackageTest.java  |   24 +
 .../classic/turbo/ReconfigureOnChangeTest.java     |  414 +++
 .../qos/logback/classic/turbo/ReconfigurePerf.java |   96 +
 .../ch/qos/logback/classic/turbo/lru/Event.java    |   33 +
 .../ch/qos/logback/classic/turbo/lru/LRUCache.java |   51 +
 .../logback/classic/turbo/lru/LRUCacheTest.java    |  122 +
 .../qos/logback/classic/turbo/lru/Simulator.java   |   89 +
 .../ch/qos/logback/classic/turbo/lru/T_Entry.java  |   45 +
 .../qos/logback/classic/turbo/lru/T_LRUCache.java  |   94 +
 .../qos/logback/classic/turbo/lru/X_LRUCache.java  |   51 +
 .../classic/util/ContextInitializerTest.java       |  123 +
 .../util/InitializationIntegrationTest.java        |   40 +
 .../classic/util/LevelToSyslogSeverityTest.java    |   53 +
 .../classic/util/LogbackMDCAdapterTest.java        |  244 ++
 .../logback/classic/util/MockInitialContext.java   |   39 +
 .../classic/util/MockInitialContextFactory.java    |   48 +
 .../ch/qos/logback/classic/util/PackageTest.java   |   25 +
 .../ch/qos/logback/classic/util/TeztHelper.java    |   57 +
 .../src/test/java/integrator/Activator.java        |   69 +
 .../src/test/java/org/dummy/DummyLBAppender.java   |   45 +
 .../src/test/java/org/dummy/Log4jInvocation.java   |   91 +
 .../test/java/org/slf4j/LoggerFactoryFriend.java   |   20 +
 .../src/test/java/org/slf4j/impl/PackageTest.java  |   26 +
 .../slf4j/impl/RecursiveInitializationTest.java    |   63 +
 .../java/org/slf4j/impl/RecursiveLBAppender.java   |   57 +
 .../org/slf4j/impl/StaticLoggerBinderFriend.java   |   29 +
 .../test/java/org/slf4j/test_osgi/BundleTest.java  |   48 +
 .../slf4j/test_osgi/CheckingBundleListener.java    |   57 +
 .../test/java/org/slf4j/test_osgi/FelixHost.java   |  119 +
 .../slf4j/test_osgi/FrameworkErrorListener.java    |   52 +
 .../src/test/resources/BOO_logback-test.xml        |   15 +
 logback-classic/src/test/resources/README.txt      |    5 +
 .../src/test/resources/TWO_DATE_logback-test.xml   |   21 +
 .../src/test/resources/asResource/inner1.xml       |    3 +
 .../src/test/resources/autoConfigAsResource.xml    |   15 +
 .../test/resources/corpus/origin_of_species.txt    | 1276 +++++++
 .../src/test/resources/dtd/xhtml-lat1.ent          |  196 +
 .../src/test/resources/dtd/xhtml-special.ent       |   80 +
 .../src/test/resources/dtd/xhtml-symbol.ent        |  237 ++
 .../src/test/resources/dtd/xhtml1-strict.dtd       |  978 +++++
 .../src/test/resources/recursiveInit.xml           |   17 +
 logback-core/pom.xml                               |  182 +
 .../main/java/ch/qos/logback/core/Appender.java    |   42 +
 .../java/ch/qos/logback/core/AppenderBase.java     |  137 +
 .../ch/qos/logback/core/AsyncAppenderBase.java     |  239 ++
 .../ch/qos/logback/core/BasicStatusManager.java    |  126 +
 .../java/ch/qos/logback/core/ConsoleAppender.java  |   75 +
 .../src/main/java/ch/qos/logback/core/Context.java |  116 +
 .../main/java/ch/qos/logback/core/ContextBase.java |  148 +
 .../java/ch/qos/logback/core/CoreConstants.java    |  145 +
 .../java/ch/qos/logback/core/FileAppender.java     |  209 ++
 .../src/main/java/ch/qos/logback/core/Layout.java  |   70 +
 .../main/java/ch/qos/logback/core/LayoutBase.java  |   82 +
 .../java/ch/qos/logback/core/LogbackException.java |   29 +
 .../ch/qos/logback/core/OutputStreamAppender.java  |  230 ++
 .../ch/qos/logback/core/PropertyDefinerBase.java   |   26 +
 .../logback/core/UnsynchronizedAppenderBase.java   |  139 +
 .../logback/core/boolex/EvaluationException.java   |   37 +
 .../ch/qos/logback/core/boolex/EventEvaluator.java |   60 +
 .../logback/core/boolex/EventEvaluatorBase.java    |   47 +
 .../core/boolex/JaninoEventEvaluatorBase.java      |   99 +
 .../java/ch/qos/logback/core/boolex/Matcher.java   |  125 +
 .../java/ch/qos/logback/core/boolex/package.html   |   17 +
 .../core/db/BindDataSourceToJNDIAction.java        |   89 +
 .../ch/qos/logback/core/db/ConnectionSource.java   |   61 +
 .../qos/logback/core/db/ConnectionSourceBase.java  |  128 +
 .../ch/qos/logback/core/db/DBAppenderBase.java     |  182 +
 .../main/java/ch/qos/logback/core/db/DBHelper.java |   45 +
 .../core/db/DataSourceConnectionSource.java        |   85 +
 .../core/db/DriverManagerConnectionSource.java     |   95 +
 .../qos/logback/core/db/JNDIConnectionSource.java  |  121 +
 .../ch/qos/logback/core/db/dialect/DBUtil.java     |  141 +
 .../ch/qos/logback/core/db/dialect/H2Dialect.java  |   28 +
 .../qos/logback/core/db/dialect/HSQLDBDialect.java |   28 +
 .../qos/logback/core/db/dialect/MsSQLDialect.java  |   30 +
 .../qos/logback/core/db/dialect/MySQLDialect.java  |   28 +
 .../qos/logback/core/db/dialect/OracleDialect.java |   29 +
 .../logback/core/db/dialect/PostgreSQLDialect.java |   29 +
 .../ch/qos/logback/core/db/dialect/SQLDialect.java |   22 +
 .../logback/core/db/dialect/SQLDialectCode.java    |   26 +
 .../qos/logback/core/db/dialect/SQLiteDialect.java |   32 +
 .../core/db/dialect/SybaseSqlAnywhereDialect.java  |   33 +
 .../ch/qos/logback/core/db/dialect/package.html    |   14 +
 .../main/java/ch/qos/logback/core/db/package.html  |   22 +
 .../ch/qos/logback/core/encoder/ByteArrayUtil.java |   69 +
 .../ch/qos/logback/core/encoder/EchoEncoder.java   |   47 +
 .../java/ch/qos/logback/core/encoder/Encoder.java  |   68 +
 .../ch/qos/logback/core/encoder/EncoderBase.java   |   43 +
 .../core/encoder/EventObjectInputStream.java       |  159 +
 .../core/encoder/LayoutWrappingEncoder.java        |  164 +
 .../core/encoder/NonClosableInputStream.java       |   38 +
 .../logback/core/encoder/ObjectStreamEncoder.java  |   96 +
 .../logback/core/filter/AbstractMatcherFilter.java |   38 +
 .../qos/logback/core/filter/EvaluatorFilter.java   |   76 +
 .../java/ch/qos/logback/core/filter/Filter.java    |   68 +
 .../java/ch/qos/logback/core/filter/package.html   |   13 +
 .../ch/qos/logback/core/helpers/CyclicBuffer.java  |  175 +
 .../ch/qos/logback/core/helpers/NOPAppender.java   |   23 +
 .../core/helpers/ThrowableToStringArray.java       |   86 +
 .../ch/qos/logback/core/helpers/Transform.java     |  110 +
 .../java/ch/qos/logback/core/helpers/package.html  |   14 +
 .../java/ch/qos/logback/core/html/CssBuilder.java  |   20 +
 .../ch/qos/logback/core/html/HTMLLayoutBase.java   |  262 ++
 .../qos/logback/core/html/IThrowableRenderer.java  |   21 +
 .../logback/core/html/NOPThrowableRenderer.java    |   25 +
 .../java/ch/qos/logback/core/html/package.html     |   13 +
 .../logback/core/joran/GenericConfigurator.java    |  167 +
 .../logback/core/joran/JoranConfiguratorBase.java  |  111 +
 .../joran/action/AbstractEventEvaluatorAction.java |  122 +
 .../ch/qos/logback/core/joran/action/Action.java   |  102 +
 .../qos/logback/core/joran/action/ActionConst.java |   41 +
 .../logback/core/joran/action/AppenderAction.java  |  108 +
 .../core/joran/action/AppenderRefAction.java       |   82 +
 .../core/joran/action/ContextPropertyAction.java   |   36 +
 .../core/joran/action/ConversionRuleAction.java    |   87 +
 .../core/joran/action/DefinePropertyAction.java    |  102 +
 .../core/joran/action/IADataForBasicProperty.java  |   35 +
 .../joran/action/IADataForComplexProperty.java     |   54 +
 .../logback/core/joran/action/ImplicitAction.java  |   47 +
 .../logback/core/joran/action/IncludeAction.java   |  240 ++
 .../qos/logback/core/joran/action/NOPAction.java   |   37 +
 .../core/joran/action/NestedBasicPropertyIA.java   |  105 +
 .../core/joran/action/NestedComplexPropertyIA.java |  192 +
 .../logback/core/joran/action/NewRuleAction.java   |   72 +
 .../qos/logback/core/joran/action/ParamAction.java |   67 +
 .../logback/core/joran/action/PropertyAction.java  |  190 +
 .../core/joran/action/StatusListenerAction.java    |   77 +
 .../logback/core/joran/action/TimestampAction.java |   79 +
 .../logback/core/joran/conditional/Condition.java  |   18 +
 .../logback/core/joran/conditional/ElseAction.java |   28 +
 .../logback/core/joran/conditional/IfAction.java   |  152 +
 .../conditional/PropertyEvalScriptBuilder.java     |   61 +
 .../conditional/PropertyWrapperForScripts.java     |   51 +
 .../logback/core/joran/conditional/ThenAction.java |   27 +
 .../joran/conditional/ThenOrElseActionBase.java    |   88 +
 .../ch/qos/logback/core/joran/event/BodyEvent.java |   50 +
 .../ch/qos/logback/core/joran/event/EndEvent.java  |   31 +
 .../logback/core/joran/event/InPlayListener.java   |   19 +
 .../ch/qos/logback/core/joran/event/SaxEvent.java  |   49 +
 .../logback/core/joran/event/SaxEventRecorder.java |  207 ++
 .../qos/logback/core/joran/event/StartEvent.java   |   45 +
 .../java/ch/qos/logback/core/joran/package.html    |   13 +
 .../logback/core/joran/spi/ActionException.java    |   36 +
 .../core/joran/spi/ConfigurationWatchList.java     |   95 +
 .../qos/logback/core/joran/spi/ConsoleTarget.java  |   91 +
 .../qos/logback/core/joran/spi/DefaultClass.java   |   25 +
 .../joran/spi/DefaultNestedComponentRegistry.java  |   53 +
 .../ch/qos/logback/core/joran/spi/EventPlayer.java |   71 +
 .../core/joran/spi/HostClassAndPropertyDouble.java |   76 +
 .../core/joran/spi/InterpretationContext.java      |  183 +
 .../ch/qos/logback/core/joran/spi/Interpreter.java |  359 ++
 .../qos/logback/core/joran/spi/JoranException.java |   27 +
 .../ch/qos/logback/core/joran/spi/NoAutoStart.java |   31 +
 .../logback/core/joran/spi/NoAutoStartUtil.java    |   34 +
 .../ch/qos/logback/core/joran/spi/Pattern.java     |  246 ++
 .../ch/qos/logback/core/joran/spi/RuleStore.java   |   39 +
 .../logback/core/joran/spi/SimpleRuleStore.java    |  194 +
 .../ch/qos/logback/core/joran/spi/XMLUtil.java     |   30 +
 .../joran/util/ConfigurationWatchListUtil.java     |  102 +
 .../logback/core/joran/util/PropertySetter.java    |  494 +++
 .../core/joran/util/StringToObjectConverter.java   |  137 +
 .../ch/qos/logback/core/layout/EchoLayout.java     |   30 +
 .../ch/qos/logback/core/net/JMSAppenderBase.java   |  177 +
 .../qos/logback/core/net/LoginAuthenticator.java   |   33 +
 .../ch/qos/logback/core/net/SMTPAppenderBase.java  |  633 ++++
 .../qos/logback/core/net/SocketAppenderBase.java   |  308 ++
 .../qos/logback/core/net/SyslogAppenderBase.java   |  247 ++
 .../ch/qos/logback/core/net/SyslogConstants.java   |   96 +
 .../qos/logback/core/net/SyslogOutputStream.java   |   90 +
 .../main/java/ch/qos/logback/core/net/package.html |   17 +
 .../src/main/java/ch/qos/logback/core/package.html |   13 +
 .../logback/core/pattern/CompositeConverter.java   |   49 +
 .../ch/qos/logback/core/pattern/Converter.java     |   55 +
 .../ch/qos/logback/core/pattern/ConverterUtil.java |   53 +
 .../qos/logback/core/pattern/DynamicConverter.java |  112 +
 .../ch/qos/logback/core/pattern/FormatInfo.java    |  146 +
 .../logback/core/pattern/FormattingConverter.java  |   72 +
 .../core/pattern/IdentityCompositeConverter.java   |   22 +
 .../qos/logback/core/pattern/LiteralConverter.java |   29 +
 .../logback/core/pattern/PatternLayoutBase.java    |  162 +
 .../core/pattern/PatternLayoutEncoderBase.java     |   68 +
 .../logback/core/pattern/PostCompileProcessor.java |   34 +
 .../core/pattern/ReplacingCompositeConverter.java  |   50 +
 .../ch/qos/logback/core/pattern/SpacePadder.java   |   64 +
 .../java/ch/qos/logback/core/pattern/package.html  |   17 +
 .../qos/logback/core/pattern/parser/Compiler.java  |  159 +
 .../logback/core/pattern/parser/CompositeNode.java |   56 +
 .../core/pattern/parser/FormattingNode.java        |   51 +
 .../ch/qos/logback/core/pattern/parser/Node.java   |   92 +
 .../core/pattern/parser/OptionTokenizer.java       |  147 +
 .../ch/qos/logback/core/pattern/parser/Parser.java |  238 ++
 .../logback/core/pattern/parser/ScanException.java |   35 +
 .../core/pattern/parser/SimpleKeywordNode.java     |   64 +
 .../ch/qos/logback/core/pattern/parser/Token.java  |  117 +
 .../logback/core/pattern/parser/TokenStream.java   |  236 ++
 .../core/pattern/util/AlmostAsIsEscapeUtil.java    |   45 +
 .../logback/core/pattern/util/AsIsEscapeUtil.java  |   35 +
 .../qos/logback/core/pattern/util/IEscapeUtil.java |   19 +
 .../core/pattern/util/RegularEscapeUtil.java       |   92 +
 .../core/pattern/util/RestrictedEscapeUtil.java    |   37 +
 .../core/property/FileExistsPropertyDefiner.java   |   31 +
 .../logback/core/read/CyclicBufferAppender.java    |   76 +
 .../ch/qos/logback/core/read/ListAppender.java     |   28 +
 .../logback/core/recovery/RecoveryCoordinator.java |   55 +
 .../core/recovery/ResilientFileOutputStream.java   |   61 +
 .../core/recovery/ResilientOutputStreamBase.java   |  168 +
 .../core/recovery/ResilientSyslogOutputStream.java |   53 +
 ...aultTimeBasedFileNamingAndTriggeringPolicy.java |   57 +
 .../core/rolling/FixedWindowRollingPolicy.java     |  175 +
 .../logback/core/rolling/RollingFileAppender.java  |  181 +
 .../ch/qos/logback/core/rolling/RollingPolicy.java |   67 +
 .../logback/core/rolling/RollingPolicyBase.java    |   95 +
 .../qos/logback/core/rolling/RolloverFailure.java  |   29 +
 .../core/rolling/SizeAndTimeBasedFNATP.java        |  133 +
 .../core/rolling/SizeBasedTriggeringPolicy.java    |  100 +
 .../TimeBasedFileNamingAndTriggeringPolicy.java    |   84 +
 ...TimeBasedFileNamingAndTriggeringPolicyBase.java |  118 +
 .../core/rolling/TimeBasedRollingPolicy.java       |  232 ++
 .../qos/logback/core/rolling/TriggeringPolicy.java |   39 +
 .../logback/core/rolling/TriggeringPolicyBase.java |   44 +
 .../core/rolling/helper/ArchiveRemover.java        |   28 +
 .../rolling/helper/AsynchronousCompressor.java     |   36 +
 .../core/rolling/helper/CompressionMode.java       |   18 +
 .../core/rolling/helper/CompressionRunnable.java   |   35 +
 .../logback/core/rolling/helper/Compressor.java    |  277 ++
 .../core/rolling/helper/DateTokenConverter.java    |   92 +
 .../core/rolling/helper/DefaultArchiveRemover.java |  138 +
 .../core/rolling/helper/FileFilterUtil.java        |  129 +
 .../core/rolling/helper/FileNamePattern.java       |  196 +
 .../core/rolling/helper/IntegerTokenConverter.java |   46 +
 .../core/rolling/helper/MonoTypedConverter.java    |   24 +
 .../core/rolling/helper/PeriodicityType.java       |   28 +
 .../logback/core/rolling/helper/RenameUtil.java    |  137 +
 .../core/rolling/helper/RollingCalendar.java       |  243 ++
 .../helper/SizeAndTimeBasedArchiveRemover.java     |   51 +
 .../rolling/helper/TimeBasedArchiveRemover.java    |   42 +
 .../core/rolling/helper/TokenConverter.java        |   56 +
 .../qos/logback/core/rolling/helper/package.html   |   11 +
 .../java/ch/qos/logback/core/rolling/package.html  |   20 +
 .../qos/logback/core/sift/AppenderFactoryBase.java |   51 +
 .../ch/qos/logback/core/sift/AppenderTracker.java  |   31 +
 .../qos/logback/core/sift/AppenderTrackerImpl.java |  239 ++
 .../logback/core/sift/DefaultDiscriminator.java    |   46 +
 .../ch/qos/logback/core/sift/Discriminator.java    |   46 +
 .../qos/logback/core/sift/SiftingAppenderBase.java |  138 +
 .../core/sift/SiftingJoranConfiguratorBase.java    |   68 +
 .../qos/logback/core/spi/AppenderAttachable.java   |   62 +
 .../logback/core/spi/AppenderAttachableImpl.java   |  141 +
 .../java/ch/qos/logback/core/spi/ContextAware.java |   43 +
 .../ch/qos/logback/core/spi/ContextAwareBase.java  |  106 +
 .../ch/qos/logback/core/spi/ContextAwareImpl.java  |  100 +
 .../qos/logback/core/spi/CyclicBufferTracker.java  |   74 +
 .../logback/core/spi/CyclicBufferTrackerImpl.java  |  229 ++
 .../logback/core/spi/DeferredProcessingAware.java  |   19 +
 .../ch/qos/logback/core/spi/FilterAttachable.java  |   47 +
 .../qos/logback/core/spi/FilterAttachableImpl.java |   63 +
 .../java/ch/qos/logback/core/spi/FilterReply.java  |   34 +
 .../java/ch/qos/logback/core/spi/LifeCycle.java    |   22 +
 .../java/ch/qos/logback/core/spi/LogbackLock.java  |   25 +
 .../core/spi/PreSerializationTransformer.java      |   28 +
 .../ch/qos/logback/core/spi/PropertyContainer.java |   19 +
 .../ch/qos/logback/core/spi/PropertyDefiner.java   |   24 +
 .../main/java/ch/qos/logback/core/spi/package.html |   15 +
 .../ch/qos/logback/core/status/ErrorStatus.java    |   28 +
 .../ch/qos/logback/core/status/InfoStatus.java     |   27 +
 .../core/status/OnConsoleStatusListener.java       |   97 +
 .../java/ch/qos/logback/core/status/Status.java    |   37 +
 .../ch/qos/logback/core/status/StatusBase.java     |  175 +
 .../ch/qos/logback/core/status/StatusChecker.java  |  137 +
 .../ch/qos/logback/core/status/StatusListener.java |   24 +
 .../logback/core/status/StatusListenerAsList.java  |   38 +
 .../ch/qos/logback/core/status/StatusManager.java  |   80 +
 .../ch/qos/logback/core/status/StatusUtil.java     |   54 +
 .../core/status/ViewStatusMessagesServletBase.java |  195 +
 .../ch/qos/logback/core/status/WarnStatus.java     |   29 +
 .../java/ch/qos/logback/core/status/package.html   |   13 +
 .../ch/qos/logback/core/util/AggregationType.java  |   36 +
 .../logback/core/util/CachingDateFormatter.java    |   58 +
 .../qos/logback/core/util/CharSequenceState.java   |   32 +
 .../core/util/CharSequenceToRegexMapper.java       |   79 +
 .../ch/qos/logback/core/util/ContentTypeUtil.java  |   47 +
 .../java/ch/qos/logback/core/util/ContextUtil.java |   60 +
 .../logback/core/util/DatePatternToRegexUtil.java  |   62 +
 .../java/ch/qos/logback/core/util/Duration.java    |  125 +
 .../core/util/DynamicClassLoadingException.java    |   23 +
 .../java/ch/qos/logback/core/util/EnvUtil.java     |   43 +
 .../java/ch/qos/logback/core/util/FileSize.java    |   84 +
 .../java/ch/qos/logback/core/util/FileUtil.java    |   90 +
 .../core/util/IncompatibleClassException.java      |   28 +
 .../ch/qos/logback/core/util/InvocationGate.java   |   48 +
 .../main/java/ch/qos/logback/core/util/Loader.java |  196 +
 .../ch/qos/logback/core/util/OptionHelper.java     |  300 ++
 .../logback/core/util/PropertySetterException.java |   37 +
 .../ch/qos/logback/core/util/StatusPrinter.java    |  198 +
 .../java/ch/qos/logback/core/util/SystemInfo.java  |   24 +
 .../java/ch/qos/logback/core/util/TimeUtil.java    |   89 +
 .../java/ch/qos/logback/core/util/package.html     |   13 +
 logback-core/src/test/input/.gitignore             |    1 +
 logback-core/src/test/input/compress1.copy         |    8 +
 logback-core/src/test/input/compress1.txt          |    8 +
 logback-core/src/test/input/compress2.copy         |   34 +
 logback-core/src/test/input/compress2.txt          |   34 +
 logback-core/src/test/input/compress3.copy         |   42 +
 logback-core/src/test/input/joran/ampEvent.xml     |    3 +
 .../src/test/input/joran/attributesEvent.xml       |    3 +
 .../src/test/input/joran/conditional/if0.xml       |   14 +
 .../src/test/input/joran/conditional/ifSystem.xml  |   12 +
 .../test/input/joran/conditional/ifWithoutElse.xml |   11 +
 .../input/joran/conditional/if_localProperty.xml   |   15 +
 .../src/test/input/joran/conditional/includedA.xml |    7 +
 .../src/test/input/joran/conditional/includedB.xml |    6 +
 .../src/test/input/joran/conditional/nestedIf.xml  |   26 +
 .../test/input/joran/conditional/nestedInclude.xml |   22 +
 .../src/test/input/joran/define/badclass.xml       |    1 +
 logback-core/src/test/input/joran/define/good.xml  |    3 +
 .../src/test/input/joran/define/noclass.xml        |    3 +
 .../src/test/input/joran/define/noname.xml         |    3 +
 logback-core/src/test/input/joran/event1.xml       |   14 +
 logback-core/src/test/input/joran/fire1.xml        |    5 +
 logback-core/src/test/input/joran/illformed.xml    |    5 +
 .../input/joran/implicitAction/nestedComplex.xml   |    9 +
 .../implicitAction/nestedComplexCollection.xml     |   17 +
 ...estedComplexCollectionWithoutClassAtrribute.xml |   17 +
 .../nestedComplexWithoutClassAtrribute.xml         |    9 +
 logback-core/src/test/input/joran/inc.xml          |    5 +
 .../src/test/input/joran/inclusion/included.xml    |    9 +
 .../input/joran/inclusion/intermediaryByFile.xml   |    8 +
 .../src/test/input/joran/inclusion/invalid.xml     |    1 +
 .../input/joran/inclusion/multiIncludeByFile.xml   |    7 +
 .../src/test/input/joran/inclusion/second.xml      |    8 +
 .../src/test/input/joran/inclusion/subByFile.xml   |    3 +
 .../src/test/input/joran/inclusion/topByFile.xml   |    6 +
 .../test/input/joran/inclusion/topByResource.xml   |    8 +
 .../src/test/input/joran/inclusion/topByUrl.xml    |    6 +
 .../test/input/joran/propertyActionTest.properties |    2 +
 .../src/test/input/joran/replay/fruit1.xml         |    9 +
 .../src/test/input/joran/replay/fruit2.xml         |   16 +
 .../src/test/input/joran/replay/fruitWithSubst.xml |   10 +
 .../src/test/input/joran/skip/badBegin1.xml        |   14 +
 .../src/test/input/joran/skip/badBegin2.xml        |   14 +
 logback-core/src/test/input/joran/skip/badEnd1.xml |   15 +
 logback-core/src/test/input/joran/skip/badEnd2.xml |   17 +
 .../src/test/input/joran/spacesAndQuotes.xml       |    6 +
 .../test/java/ch/qos/logback/core/AllCoreTest.java |   34 +
 .../ch/qos/logback/core/AsyncAppenderBaseTest.java |  175 +
 .../qos/logback/core/BasicStatusManagerTest.java   |   66 +
 .../java/ch/qos/logback/core/ContextBaseTest.java  |   71 +
 .../logback/core/FileAppenderResilienceTest.java   |  121 +
 .../core/FileAppenderResilience_AS_ROOT_Test.java  |  137 +
 .../qos/logback/core/OutputStreamAppenderTest.java |  122 +
 .../test/java/ch/qos/logback/core/PackageTest.java |   27 +
 .../core/appender/AbstractAppenderTest.java        |   68 +
 .../logback/core/appender/ConsoleAppenderTest.java |  155 +
 .../logback/core/appender/DummyAppenderTest.java   |   54 +
 .../logback/core/appender/DummyWriterAppender.java |   26 +
 .../logback/core/appender/FileAppenderTest.java    |  129 +
 .../ch/qos/logback/core/appender/PackageTest.java  |   26 +
 .../logback/core/appender/XTeeOutputStream.java    |   38 +
 .../ch/qos/logback/core/boolex/MatcherTest.java    |   77 +
 .../contention/AbstractMultiThreadedHarness.java   |   29 +
 .../core/contention/MultiThreadedHarness.java      |   49 +
 .../contention/RunnableWithCounterAndDone.java     |   39 +
 .../contention/ThreadedThroughputCalculator.java   |   48 +
 .../WaitOnExecutionMultiThreadedHarness.java       |   20 +
 .../logback/core/encoder/ByteArrayUtilTest.java    |   53 +
 .../ch/qos/logback/core/encoder/DummyEncoder.java  |  106 +
 .../ch/qos/logback/core/encoder/NopEncoder.java    |   29 +
 .../core/encoder/ObjectEncodeDecodeTest.java       |   94 +
 .../ch/qos/logback/core/encoder/PackageTest.java   |   22 +
 .../qos/logback/core/helpers/CyclicBufferTest.java |   48 +
 .../logback/core/helpers/FileFilterUtilTest.java   |   56 +
 .../ch/qos/logback/core/helpers/PackageTest.java   |   25 +
 .../core/helpers/ThrowableToStringArrayTest.java   |   93 +
 .../java/ch/qos/logback/core/issue/LBCORE97.java   |  191 +
 .../ch/qos/logback/core/issue/LockThroughput.java  |   60 +
 .../ch/qos/logback/core/issue/LockingInJava.java   |   94 +
 .../qos/logback/core/issue/NoLockThroughput.java   |   52 +
 .../ch/qos/logback/core/issue/NoLockingInJava.java |   87 +
 .../logback/core/issue/SelectiveLockRunnable.java  |  106 +
 .../core/issue/lbcore258/FileLockSimulator.java    |  102 +
 .../ch/qos/logback/core/joran/PackageTest.java     |   33 +
 .../qos/logback/core/joran/SimpleConfigurator.java |   53 +
 .../core/joran/SkippingInInterpreterTest.java      |  115 +
 .../logback/core/joran/TrivialConfigurator.java    |   43 +
 .../core/joran/TrivialConfiguratorTest.java        |  175 +
 .../joran/action/AsLowerCasePropertyDefiner.java   |   33 +
 .../joran/action/DefinePropertyActionTest.java     |  108 +
 .../logback/core/joran/action/DummyAttributes.java |   76 +
 .../core/joran/action/IncludeActionTest.java       |  215 ++
 .../qos/logback/core/joran/action/PackageTest.java |   23 +
 .../core/joran/action/PropertyActionTest.java      |  161 +
 .../core/joran/action/ext/BadBeginAction.java      |   52 +
 .../core/joran/action/ext/BadEndAction.java        |   51 +
 .../logback/core/joran/action/ext/HelloAction.java |   43 +
 .../logback/core/joran/action/ext/IncAction.java   |   56 +
 .../logback/core/joran/action/ext/StackAction.java |   44 +
 .../logback/core/joran/action/ext/TouchAction.java |   47 +
 .../IfThenElseAndIncludeCompositionTest.java       |   95 +
 .../core/joran/conditional/IfThenElseTest.java     |  145 +
 .../core/joran/conditional/PackageTest.java        |   25 +
 .../conditional/PropertyEvalScriptBuilderTest.java |  122 +
 .../logback/core/joran/event/InPlayFireTest.java   |   78 +
 .../qos/logback/core/joran/event/ListenAction.java |   49 +
 .../qos/logback/core/joran/event/PackageTest.java  |   23 +
 .../core/joran/event/SaxEventRecorderTest.java     |  110 +
 .../logback/core/joran/implicitAction/Cake.java    |   35 +
 .../logback/core/joran/implicitAction/Fruit.java   |   40 +
 .../core/joran/implicitAction/FruitContext.java    |   36 +
 .../joran/implicitAction/FruitContextAction.java   |   64 +
 .../joran/implicitAction/ImplicitActionTest.java   |  126 +
 .../core/joran/implicitAction/PackageTest.java     |   23 +
 .../ch/qos/logback/core/joran/replay/Fruit.java    |   46 +
 .../core/joran/replay/FruitConfigurationTest.java  |  114 +
 .../core/joran/replay/FruitConfigurator.java       |   62 +
 .../logback/core/joran/replay/FruitContext.java    |   36 +
 .../logback/core/joran/replay/FruitFactory.java    |   69 +
 .../core/joran/replay/FruitFactoryAction.java      |   58 +
 .../qos/logback/core/joran/replay/FruitShell.java  |   62 +
 .../core/joran/replay/FruitShellAction.java        |   87 +
 .../qos/logback/core/joran/replay/PackageTest.java |   24 +
 .../logback/core/joran/replay/WeightytFruit.java   |   29 +
 .../qos/logback/core/joran/spi/CaseCombinator.java |  101 +
 .../logback/core/joran/spi/CaseCombinatorTest.java |   53 +
 .../core/joran/spi/ConfigurationWatchListTest.java |   38 +
 .../spi/DefaultNestedComponentRegistryTest.java    |   54 +
 .../qos/logback/core/joran/spi/DoNotAutoStart.java |   34 +
 .../core/joran/spi/NoAutoStartUtilTest.java        |   36 +
 .../ch/qos/logback/core/joran/spi/PackageTest.java |   25 +
 .../ch/qos/logback/core/joran/spi/PatternTest.java |  179 +
 .../core/joran/spi/SimpleRuleStoreTest.java        |  265 ++
 .../java/ch/qos/logback/core/joran/util/House.java |  182 +
 .../qos/logback/core/joran/util/PackageTest.java   |   23 +
 .../core/joran/util/PropertySetterTest.java        |  247 ++
 .../ch/qos/logback/core/layout/DummyLayout.java    |   36 +
 .../java/ch/qos/logback/core/layout/NopLayout.java |   23 +
 .../ch/qos/logback/core/pattern/Converter123.java  |   24 +
 .../qos/logback/core/pattern/ConverterHello.java   |   24 +
 .../logback/core/pattern/ExceptionalConverter.java |   27 +
 .../ch/qos/logback/core/pattern/PackageTest.java   |   23 +
 .../qos/logback/core/pattern/SpacePadderTest.java  |  107 +
 .../parser/AbstractPatternLayoutBaseTest.java      |  106 +
 .../logback/core/pattern/parser/CompilerTest.java  |  257 ++
 .../core/pattern/parser/FormatInfoTest.java        |  120 +
 .../core/pattern/parser/OptionTokenizerTest.java   |  140 +
 .../logback/core/pattern/parser/PackageTest.java   |   28 +
 .../logback/core/pattern/parser/ParserTest.java    |  290 ++
 .../core/pattern/parser/SamplePatternLayout.java   |   42 +
 .../pattern/parser/SamplePatternLayoutTest.java    |   90 +
 .../core/pattern/parser/TokenStreamTest.java       |  420 +++
 .../ch/qos/logback/core/recovery/PackageTest.java  |   23 +
 .../core/recovery/RecoveryCoordinatorTest.java     |   59 +
 .../ch/qos/logback/core/rolling/FileOpener.java    |   33 +
 .../core/rolling/MultiThreadedRollingTest.java     |  292 ++
 .../ch/qos/logback/core/rolling/PackageTest.java   |   27 +
 .../qos/logback/core/rolling/RenameUtilTest.java   |   70 +
 .../core/rolling/RollingFileAppenderTest.java      |  196 +
 .../core/rolling/ScaffoldingForRollingTests.java   |  187 +
 .../rolling/SizeBasedTriggeringPolicyTest.java     |   58 +
 ...BasedFileNamingAndTriggeringPolicyBaseTest.java |   71 +
 .../logback/core/rolling/TimeBasedRollingDest.java |  412 +++
 .../logback/core/rolling/helper/CompressTest.java  |  140 +
 .../core/rolling/helper/FileNamePatternTest.java   |  151 +
 .../logback/core/rolling/helper/PackageTest.java   |   27 +
 .../core/rolling/helper/RollingCalendarTest.java   |   95 +
 .../qos/logback/core/sift/AppenderTrackerTest.java |   80 +
 .../java/ch/qos/logback/core/sift/PackageTest.java |   23 +
 .../sift/ScenarioBasedAppenderTrackerTest.java     |   75 +
 .../java/ch/qos/logback/core/sift/Simulator.java   |  132 +
 .../core/sift/tracker/AppenderTrackerTImpl.java    |  114 +
 .../logback/core/sift/tracker/SimulationEvent.java |   36 +
 .../ch/qos/logback/core/sift/tracker/TEntry.java   |   49 +
 .../core/spi/AppenderAttachableImplLockTest.java   |  103 +
 .../core/spi/AppenderAttachableImplTest.java       |  170 +
 .../core/spi/CyclicBufferTrackerImplTest.java      |   78 +
 .../core/spi/CyclicBufferTrackerSimulator.java     |  119 +
 .../core/spi/CyclicBufferTracker_TImpl.java        |  189 +
 .../java/ch/qos/logback/core/spi/PackageTest.java  |   25 +
 .../spi/ScenarioBasedCyclicBufferTrackerTest.java  |   56 +
 .../ch/qos/logback/core/status/StatusBaseTest.java |   93 +
 .../qos/logback/core/status/StatusCheckerTest.java |   40 +
 .../logback/core/status/TrivialStatusListener.java |   30 +
 .../core/testUtil/DelayingListAppender.java        |   34 +
 .../java/ch/qos/logback/core/testUtil/Env.java     |   80 +
 .../ch/qos/logback/core/testUtil/FileTestUtil.java |   24 +
 .../logback/core/testUtil/FileToBufferUtil.java    |   75 +
 .../ch/qos/logback/core/testUtil/NPEAppender.java  |   23 +
 .../ch/qos/logback/core/testUtil/RandomUtil.java   |   35 +
 .../logback/core/testUtil/StringListAppender.java  |   53 +
 .../java/ch/qos/logback/core/util/Compare.java     |  179 +
 .../qos/logback/core/util/ContentTypeUtilTest.java |   44 +
 .../qos/logback/core/util/CoreTestConstants.java   |   30 +
 .../logback/core/util/DatePatternToRegexTest.java  |  117 +
 .../ch/qos/logback/core/util/DurationTest.java     |  104 +
 .../ch/qos/logback/core/util/FileSizeTest.java     |   56 +
 .../ch/qos/logback/core/util/FileUtilTest.java     |   72 +
 .../ch/qos/logback/core/util/OptionHelperTest.java |  124 +
 .../java/ch/qos/logback/core/util/PackageTest.java |   30 +
 .../ch/qos/logback/core/util/ResilienceUtil.java   |   58 +
 .../qos/logback/core/util/StatusPrinterTest.java   |  120 +
 .../ch/qos/logback/core/util/TeeOutputStream.java  |   52 +
 .../ch/qos/logback/core/util/TimeUtilTest.java     |  123 +
 logback-core/src/test/loopfs.sh                    |   62 +
 .../joran/inclusion/includedAsResource.xml         |    9 +
 .../asResource/joran/propertyActionTest.properties |    2 +
 .../logback/core/rolling/RollingScaffolding.scala  |  189 +
 .../core/rolling/SizeAndTimeBasedFNATP_STest.scala |  188 +
 .../core/rolling/SizeBasedRolling_STest.scala      |  117 +
 .../TimeBasedRollingWithArchiveRemoval_STest.scala |  328 ++
 .../core/rolling/TimeBasedRolling_STest.scala      |  209 ++
 logback-core/src/test/witness/compress1.txt.gz     |  Bin 0 -> 239 bytes
 logback-core/src/test/witness/compress2.txt.gz     |  Bin 0 -> 546 bytes
 logback-core/src/test/witness/rolling/renaming.0   |    1 +
 logback-core/src/test/witness/rolling/renaming.1   |    1 +
 logback-core/src/test/witness/rolling/sbr-test2.0  |    1 +
 logback-core/src/test/witness/rolling/sbr-test2.1  |    1 +
 logback-core/src/test/witness/rolling/sbr-test2.l  |    1 +
 .../src/test/witness/rolling/sbr-test3.0.gz        |  Bin 0 -> 33 bytes
 .../src/test/witness/rolling/sbr-test3.1.gz        |  Bin 0 -> 33 bytes
 logback-core/src/test/witness/rolling/sbr-test3.l  |    1 +
 .../src/test/witness/rolling/tbr-failed_rename     |    3 +
 logback-core/src/test/witness/rolling/tbr-test1.0  |    0
 logback-core/src/test/witness/rolling/tbr-test1.1  |    2 +
 logback-core/src/test/witness/rolling/tbr-test1.2  |    1 +
 .../src/test/witness/rolling/tbr-test2.0.gz        |  Bin 0 -> 20 bytes
 .../src/test/witness/rolling/tbr-test2.1.gz        |  Bin 0 -> 34 bytes
 logback-core/src/test/witness/rolling/tbr-test2.2  |    1 +
 logback-core/src/test/witness/rolling/tbr-test3.0  |    0
 logback-core/src/test/witness/rolling/tbr-test3.1  |    2 +
 logback-core/src/test/witness/rolling/tbr-test3.2  |    2 +
 logback-core/src/test/witness/rolling/tbr-test3.3  |    2 +
 logback-core/src/test/witness/rolling/tbr-test4.0  |    0
 logback-core/src/test/witness/rolling/tbr-test4.1  |    2 +
 logback-core/src/test/witness/rolling/tbr-test4.2  |    2 +
 logback-core/src/test/witness/rolling/tbr-test4.3  |    2 +
 logback-core/src/test/witness/rolling/tbr-test4B.0 |    0
 logback-core/src/test/witness/rolling/tbr-test4B.1 |    2 +
 logback-core/src/test/witness/rolling/tbr-test4B.2 |    1 +
 logback-core/src/test/witness/rolling/tbr-test4B.3 |    1 +
 logback-core/src/test/witness/rolling/tbr-test4B.4 |    2 +
 logback-core/src/test/witness/rolling/tbr-test5.0  |    0
 logback-core/src/test/witness/rolling/tbr-test5.1  |    2 +
 logback-core/src/test/witness/rolling/tbr-test5.2  |    1 +
 .../src/test/witness/rolling/tbr-test6.0.gz        |  Bin 0 -> 20 bytes
 .../src/test/witness/rolling/tbr-test6.1.gz        |  Bin 0 -> 34 bytes
 logback-core/src/test/witness/rolling/tbr-test6.2  |    1 +
 .../src/test/witness/rolling/tbr-test7.0.gz        |  Bin 0 -> 20 bytes
 .../src/test/witness/rolling/tbr-test7.1.gz        |  Bin 0 -> 36 bytes
 logback-core/src/test/witness/rolling/tbr-test7.2  |    1 +
 .../src/test/witness/rolling/tbr-test8.0.zip       |  Bin 0 -> 156 bytes
 .../src/test/witness/rolling/tbr-test8.1.zip       |  Bin 0 -> 172 bytes
 logback-core/src/test/witness/rolling/tbr-test8.2  |    1 +
 logback-examples/pom.xml                           |  114 +
 logback-examples/setClasspath.cmd                  |   13 +
 logback-examples/setClasspath.sh                   |   16 +
 .../chapters/appenders/ConfigurationTester.java    |   60 +
 .../appenders/CountingConsoleAppender.java         |   75 +
 .../src/main/java/chapters/appenders/IO.java       |  181 +
 .../java/chapters/appenders/IOPerformance.java     |  165 +
 .../chapters/appenders/conf/access/logback-DB.xml  |   14 +
 .../appenders/conf/access/logback-SMTP.xml         |   21 +
 .../chapters/appenders/conf/logback-Console.xml    |   15 +
 .../appenders/conf/logback-HtmlToConsole.xml       |   18 +
 .../chapters/appenders/conf/logback-JMSQueue.xml   |   17 +
 .../chapters/appenders/conf/logback-JMSTopic.xml   |   17 +
 .../java/chapters/appenders/conf/logback-MDC.xml   |   13 +
 .../conf/logback-PrudentTimeBasedRolling.xml       |   19 +
 .../appenders/conf/logback-RollingFixedWindow.xml  |   22 +
 .../appenders/conf/logback-RollingSizeBased.xml    |   23 +
 .../appenders/conf/logback-RollingTimeBased.xml    |   21 +
 .../java/chapters/appenders/conf/logback-SMTP.xml  |   19 +
 .../appenders/conf/logback-SMTPWithHtml.xml        |   20 +
 .../java/chapters/appenders/conf/logback-async.xml |   16 +
 .../appenders/conf/logback-fileAppender.xml        |   17 +
 .../appenders/conf/logback-sizeAndTime.xml         |   25 +
 .../chapters/appenders/conf/logback-syslog.xml     |   13 +
 .../conf/logback-timestamp-contextBirth.xml        |   22 +
 .../chapters/appenders/conf/logback-timestamp.xml  |   20 +
 .../java/chapters/appenders/countingConsole.xml    |   19 +
 .../appenders/db/append-and-share-with-jndi.xml    |   36 +
 .../append-toMySQL-with-datasource-and-pooling.xml |   19 +
 .../db/append-toMySQL-with-datasource.xml          |   21 +
 .../db/append-toMySQL-with-driverManager.xml       |   17 +
 .../chapters/appenders/db/append-with-c3p0.xml     |   33 +
 .../appenders/db/append-with-datasource.xml        |   29 +
 .../appenders/db/append-with-drivermanager.xml     |   20 +
 .../appenders/db/append-with-pooled-datasource.xml |   32 +
 .../appenders/mail/CounterBasedEvaluator.java      |   63 +
 .../main/java/chapters/appenders/mail/EMail.java   |   67 +
 .../java/chapters/appenders/mail/Marked_EMail.java |   70 +
 .../chapters/appenders/mail/customBufferSize.xml   |   20 +
 .../main/java/chapters/appenders/mail/gmailSSL.xml |   22 +
 .../java/chapters/appenders/mail/gmailSTARTTLS.xml |   21 +
 .../main/java/chapters/appenders/mail/mail1.xml    |   17 +
 .../main/java/chapters/appenders/mail/mail2.xml    |   18 +
 .../main/java/chapters/appenders/mail/mail3.xml    |   24 +
 .../mail/mailWithMDCBasedDiscriminator.xml         |   27 +
 .../chapters/appenders/mail/mailWithMarker.xml     |   24 +
 .../mail/mailWithMarker_GEventEvaluator.xml        |   24 +
 .../appenders/mail/mailWithMarker_Janino.xml       |   25 +
 .../java/chapters/appenders/sift/SiftExample.java  |   55 +
 .../chapters/appenders/sift/access-siftingFile.xml |   22 +
 .../main/java/chapters/appenders/sift/byUserid.xml |   21 +
 .../chapters/appenders/socket/SocketClient1.java   |   80 +
 .../chapters/appenders/socket/SocketClient2.java   |   73 +
 .../java/chapters/appenders/socket/client1.xml     |   23 +
 .../java/chapters/appenders/socket/server1.xml     |   47 +
 .../java/chapters/appenders/socket/server2.xml     |   25 +
 .../java/chapters/appenders/sub/sample/Bar.java    |   34 +
 .../src/main/java/chapters/architecture/Bar.java   |   25 +
 .../chapters/architecture/MyAppWithConfigFile.java |   45 +
 .../java/chapters/architecture/SelectionRule.java  |   51 +
 .../java/chapters/architecture/sample-config-1.xml |   15 +
 .../java/chapters/architecture/sample-config-2.xml |   24 +
 .../java/chapters/architecture/sample-config-3.xml |   26 +
 .../configuration/AddStatusListenerApp.java        |   41 +
 .../src/main/java/chapters/configuration/Foo.java  |   26 +
 .../main/java/chapters/configuration/MyApp1.java   |   30 +
 .../main/java/chapters/configuration/MyApp2.java   |   36 +
 .../main/java/chapters/configuration/MyApp3.java   |   53 +
 .../java/chapters/configuration/additivityFlag.xml |   26 +
 .../chapters/configuration/containingConfig.xml    |   12 +
 .../java/chapters/configuration/contextName.xml    |   15 +
 .../main/java/chapters/configuration/duplicate.xml |   19 +
 .../java/chapters/configuration/includedConfig.xml |   13 +
 .../java/chapters/configuration/insertFromJNDI.xml |   18 +
 .../main/java/chapters/configuration/multiple.xml  |   21 +
 .../configuration/onConsoleStatusListener.xml      |   21 +
 .../java/chapters/configuration/restricted.xml     |   25 +
 .../main/java/chapters/configuration/sample0.xml   |   17 +
 .../main/java/chapters/configuration/sample1.xml   |   17 +
 .../main/java/chapters/configuration/sample2.xml   |   23 +
 .../main/java/chapters/configuration/sample3.xml   |   24 +
 .../main/java/chapters/configuration/sample4.xml   |   21 +
 .../src/main/java/chapters/configuration/scan1.xml |   17 +
 .../src/main/java/chapters/configuration/scan2.xml |   15 +
 .../configuration/variableSubstitution1.xml        |   15 +
 .../configuration/variableSubstitution2.xml        |   13 +
 .../configuration/variableSubstitution3.xml        |   15 +
 .../configuration/variableSubstitution4.xml        |   15 +
 .../chapters/configuration/variables1.properties   |    1 +
 .../chapters/configuration/variables2.properties   |    3 +
 .../main/java/chapters/filters/FilterEvents.java   |   59 +
 .../src/main/java/chapters/filters/GoMDC.java      |   48 +
 .../main/java/chapters/filters/SampleFilter.java   |   30 +
 .../java/chapters/filters/SampleTurboFilter.java   |   59 +
 .../java/chapters/filters/accessEventEvaluator.xml |   17 +
 .../chapters/filters/accessEventEvaluator2.xml     |   21 +
 .../java/chapters/filters/basicConfiguration.xml   |   12 +
 .../java/chapters/filters/basicEventEvaluator.xml  |   19 +
 .../java/chapters/filters/duplicateMessage.xml     |   16 +
 .../java/chapters/filters/evaluatorWithMatcher.xml |   25 +
 .../java/chapters/filters/levelFilterConfig.xml    |   17 +
 .../src/main/java/chapters/filters/mdcfilter.xml   |   23 +
 .../java/chapters/filters/sampleFilterConfig.xml   |   16 +
 .../chapters/filters/sampleTurboFilterConfig.xml   |   16 +
 .../chapters/filters/thresholdFilterConfig.xml     |   20 +
 .../main/java/chapters/filters/turboFilters.xml    |   25 +
 .../java/chapters/introduction/HelloWorld1.java    |   26 +
 .../java/chapters/introduction/HelloWorld2.java    |   31 +
 .../chapters/layouts/CallerEvaluatorExample.java   |   48 +
 .../layouts/ExceptionEvaluatorExample.java         |   49 +
 .../java/chapters/layouts/MySampleConverter.java   |   50 +
 .../main/java/chapters/layouts/MySampleLayout.java |   36 +
 .../java/chapters/layouts/MySampleLayout2.java     |   54 +
 .../main/java/chapters/layouts/PatternSample.java  |   46 +
 .../main/java/chapters/layouts/SampleLogging.java  |   45 +
 .../main/java/chapters/layouts/TestException.java  |   23 +
 .../main/java/chapters/layouts/TrivialMain.java    |   48 +
 .../chapters/layouts/callerEvaluatorConfig.xml     |   18 +
 .../chapters/layouts/exceptionEvaluatorConfig.xml  |   16 +
 .../java/chapters/layouts/htmlLayoutConfig1.xml    |   14 +
 .../main/java/chapters/layouts/log4jXMLLayout.xml  |   14 +
 .../chapters/layouts/mySampleConverterConfig.xml   |   15 +
 .../java/chapters/layouts/sampleLayoutConfig.xml   |   12 +
 .../java/chapters/layouts/sampleLayoutConfig2.xml  |   16 +
 .../src/main/java/chapters/mdc/NumberCruncher.java |   29 +
 .../java/chapters/mdc/NumberCruncherClient.java    |   86 +
 .../java/chapters/mdc/NumberCruncherServer.java    |  162 +
 .../src/main/java/chapters/mdc/SimpleMDC.java      |   94 +
 .../main/java/chapters/mdc/UserServletFilter.java  |   85 +
 .../src/main/java/chapters/mdc/mdc1.xml            |   16 +
 .../src/main/java/chapters/mdc/simpleMDC.xml       |   15 +
 .../chapters/migrationFromLog4j/Log4jMain.java     |   34 +
 .../chapters/migrationFromLog4j/LogbackMain.java   |   48 +
 .../migrationFromLog4j/TrivialLog4jAppender.java   |   34 +
 .../migrationFromLog4j/TrivialLog4jLayout.java     |   43 +
 .../migrationFromLog4j/TrivialLogbackAppender.java |   60 +
 .../migrationFromLog4j/TrivialLogbackLayout.java   |   33 +
 .../migrationFromLog4j/log4jTrivial.properties     |    3 +
 .../migrationFromLog4j/logback-trivial.xml         |   10 +
 .../java/chapters/onJoran/SimpleConfigurator.java  |   64 +
 .../chapters/onJoran/calculator/AddAction.java     |   69 +
 .../chapters/onJoran/calculator/Calculator1.java   |   55 +
 .../chapters/onJoran/calculator/Calculator2.java   |   64 +
 .../onJoran/calculator/ComputationAction1.java     |   61 +
 .../onJoran/calculator/ComputationAction2.java     |   86 +
 .../chapters/onJoran/calculator/LiteralAction.java |   58 +
 .../onJoran/calculator/MultiplyAction.java         |   66 +
 .../chapters/onJoran/calculator/calculator1.xml    |    3 +
 .../chapters/onJoran/calculator/calculator2.xml    |   10 +
 .../chapters/onJoran/calculator/calculator3.xml    |   15 +
 .../java/chapters/onJoran/calculator/readme.txt    |    7 +
 .../chapters/onJoran/helloWorld/HelloWorld.java    |   48 +
 .../onJoran/helloWorld/HelloWorldAction.java       |   35 +
 .../java/chapters/onJoran/helloWorld/hello.xml     |    2 +
 .../java/chapters/onJoran/helloWorld/readme.txt    |    6 +
 .../java/chapters/onJoran/implicit/NOPAction.java  |   34 +
 .../java/chapters/onJoran/implicit/PrintMe.java    |   61 +
 .../onJoran/implicit/PrintMeImplicitAction.java    |   44 +
 .../java/chapters/onJoran/implicit/implicit1.xml   |   21 +
 .../main/java/chapters/onJoran/implicit/readme.txt |    7 +
 .../onJoran/newRule/NewRuleCalculator.java         |   63 +
 .../java/chapters/onJoran/newRule/new-rule.xml     |   23 +
 .../main/java/chapters/onJoran/newRule/readme.txt  |    8 +
 logback-site/pom.xml                               |   63 +
 logback-site/src/site/pages/.htaccess              |    2 +
 logback-site/src/site/pages/access.html            |  607 +++
 logback-site/src/site/pages/bridge.html            |   38 +
 logback-site/src/site/pages/bugreport.html         |   91 +
 logback-site/src/site/pages/cla.txt                |  124 +
 logback-site/src/site/pages/codes.html             |  595 +++
 logback-site/src/site/pages/consolePlugin.html     |  330 ++
 logback-site/src/site/pages/css/_print.css         |   30 +
 logback-site/src/site/pages/css/common.css         |  310 ++
 logback-site/src/site/pages/css/popup.css          |   67 +
 logback-site/src/site/pages/css/prettify.css       |   27 +
 logback-site/src/site/pages/css/screen.css         |  152 +
 logback-site/src/site/pages/deadlock.html          |   79 +
 logback-site/src/site/pages/demo.html              |  490 +++
 logback-site/src/site/pages/dependencies.html      |  216 ++
 logback-site/src/site/pages/documentation.html     |  146 +
 logback-site/src/site/pages/download.html          |  187 +
 logback-site/src/site/pages/faq.html               |  359 ++
 logback-site/src/site/pages/images/qoslogo.gif     |  Bin 0 -> 1633 bytes
 logback-site/src/site/pages/index.html             |  117 +
 logback-site/src/site/pages/job.html               |   90 +
 logback-site/src/site/pages/js/dsl.js              |   39 +
 .../src/site/pages/js/jquery.cookies.2.2.0.js      |  450 +++
 logback-site/src/site/pages/js/popup.js            |  102 +
 logback-site/src/site/pages/js/prettify.js         | 1478 ++++++++
 logback-site/src/site/pages/license.html           |   81 +
 logback-site/src/site/pages/mailinglist.html       |  153 +
 logback-site/src/site/pages/manual/.htaccess       |    2 +
 logback-site/src/site/pages/manual/appenders.html  | 3894 ++++++++++++++++++++
 .../src/site/pages/manual/architecture.html        |  936 +++++
 .../src/site/pages/manual/configuration.html       | 1850 ++++++++++
 logback-site/src/site/pages/manual/encoders.html   |  261 ++
 logback-site/src/site/pages/manual/filters.html    | 1196 ++++++
 logback-site/src/site/pages/manual/groovy.html     |  537 +++
 logback-site/src/site/pages/manual/index.html      |  121 +
 .../src/site/pages/manual/introduction.html        |  267 ++
 logback-site/src/site/pages/manual/jmxConfig.html  |  404 ++
 logback-site/src/site/pages/manual/layouts.html    | 2247 +++++++++++
 .../src/site/pages/manual/loggingSeparation.html   |  505 +++
 logback-site/src/site/pages/manual/mdc.html        |  746 ++++
 logback-site/src/site/pages/manual/menu.js         |   15 +
 .../src/site/pages/manual/migrationFromLog4j.html  |  215 ++
 logback-site/src/site/pages/manual/onJoran.html    |  774 ++++
 .../src/site/pages/manual/underTheHood.html        |   15 +
 logback-site/src/site/pages/news.html              | 2004 ++++++++++
 logback-site/src/site/pages/reasonsToSwitch.html   |  276 ++
 .../src/site/pages/recipes/captureHttp.html        |  260 ++
 .../site/pages/recipes/emailPerTransaction.html    |  445 +++
 logback-site/src/site/pages/recipes/index.html     |   43 +
 logback-site/src/site/pages/repos.html             |   47 +
 logback-site/src/site/pages/setup.html             |  223 ++
 logback-site/src/site/pages/support.html           |   56 +
 logback-site/src/site/pages/templates/creative.js  |   33 +
 logback-site/src/site/pages/templates/footer.js    |   25 +
 logback-site/src/site/pages/templates/header.js    |   13 +
 logback-site/src/site/pages/templates/left.js      |   26 +
 logback-site/src/site/pages/templates/right.js     |   19 +
 logback-site/src/site/pages/templates/setup.js     |    8 +
 logback-site/src/site/pages/volunteer.html         |   70 +
 .../src/site/resources/images/cyclicView.png       |  Bin 0 -> 37943 bytes
 .../src/site/resources/images/helpEMAIL.gif        |  Bin 0 -> 1359 bytes
 .../src/site/resources/images/lbAccessStatus.jpg   |  Bin 0 -> 145740 bytes
 .../src/site/resources/images/logos/lblogo.jpg     |  Bin 0 -> 45331 bytes
 .../src/site/resources/images/logos/qosLogo.png    |  Bin 0 -> 3370 bytes
 logback-site/src/site/resources/images/myjob.png   |  Bin 0 -> 2468 bytes
 .../src/site/resources/images/plugin/buttons.gif   |  Bin 0 -> 1318 bytes
 .../site/resources/images/plugin/createFilter.gif  |  Bin 0 -> 12785 bytes
 .../site/resources/images/plugin/filterWindow.gif  |  Bin 0 -> 11623 bytes
 .../src/site/resources/images/plugin/prefs.gif     |  Bin 0 -> 8762 bytes
 .../site/resources/images/plugin/sampleLogs.gif    |  Bin 0 -> 11397 bytes
 .../site/resources/images/plugin/stackTrace.gif    |  Bin 0 -> 8562 bytes
 .../site/resources/images/turboFilterForMDC.png    |  Bin 0 -> 26505 bytes
 logback-site/src/site/resources/logback-2011.ppt   |  Bin 0 -> 281600 bytes
 logback-site/src/site/resources/logback.ppt        |  Bin 0 -> 236032 bytes
 .../manual/images/chapters/appenders/appender.uml  | 1179 ++++++
 .../manual/images/chapters/appenders/appender.~ml  |  865 +++++
 .../chapters/appenders/appenderClassDiagram.jpg    |  Bin 0 -> 71199 bytes
 .../images/chapters/appenders/dbAppenderLE.gif     |  Bin 0 -> 31272 bytes
 .../chapters/appenders/dbAppenderLEException.gif   |  Bin 0 -> 3861 bytes
 .../chapters/appenders/dbAppenderLEProperty.gif    |  Bin 0 -> 3820 bytes
 .../images/chapters/appenders/fileAppenderUML.png  |  Bin 0 -> 6684 bytes
 .../images/chapters/appenders/smtpAppender1.jpg    |  Bin 0 -> 226207 bytes
 .../images/chapters/appenders/smtpAppender2.jpg    |  Bin 0 -> 244223 bytes
 .../architecture/underTheHoodSequence2.gif         |  Bin 0 -> 71138 bytes
 .../architecture/underTheHoodSequence2_small.gif   |  Bin 0 -> 23063 bytes
 .../chapters/configuration/appenderSyntax.png      |  Bin 0 -> 4541 bytes
 .../images/chapters/configuration/basicSyntax.png  |  Bin 0 -> 2950 bytes
 .../chapters/configuration/lbClassicStatus.jpg     |  Bin 0 -> 176313 bytes
 .../images/chapters/filters/countingFilter.png     |  Bin 0 -> 89406 bytes
 .../manual/images/chapters/filters/filterChain.gif |  Bin 0 -> 1226 bytes
 .../chapters/jmxConfigurator/jconsole15_jetty.gif  |  Bin 0 -> 9796 bytes
 .../chapters/jmxConfigurator/jconsole15_tomcat.gif |  Bin 0 -> 9741 bytes
 .../chapters/jmxConfigurator/jmxConfigurator.gif   |  Bin 0 -> 33445 bytes
 .../images/chapters/jmxConfigurator/multiple.gif   |  Bin 0 -> 22501 bytes
 .../images/chapters/jmxConfigurator/mx4j_jetty.gif |  Bin 0 -> 26973 bytes
 .../chapters/jmxConfigurator/mx4j_tomcat.gif       |  Bin 0 -> 27657 bytes
 .../images/chapters/jmxConfigurator/statusList.gif |  Bin 0 -> 36223 bytes
 .../manual/images/chapters/layouts/htmlLayout0.gif |  Bin 0 -> 9841 bytes
 .../manual/images/chapters/layouts/htmlLayout1.png |  Bin 0 -> 21825 bytes
 .../images/chapters/layouts/htmlLayoutAccess.gif   |  Bin 0 -> 148822 bytes
 .../site/resources/recipes/images/factorEmail0.png |  Bin 0 -> 51648 bytes
 logback-site/src/site/resources/slf4j-slides.vsd   |  Bin 0 -> 108032 bytes
 pom.xml                                            |  499 +++
 src/main/assembly/dist.xml                         |  219 ++
 src/main/javadocHeaders.xml                        |   10 +
 src/main/licenseHeader.txt                         |   11 +
 1529 files changed, 144446 insertions(+), 52 deletions(-)

diff --cc debian/changelog
index a0db43c,0000000..92c8765
mode 100644,000000..100644
--- a/debian/changelog
+++ b/debian/changelog
@@@ -1,77 -1,0 +1,95 @@@
++logback (1:1.0.4-1+deb7u1) wheezy-security; urgency=high
++
++  * Team upload.
++  * Fix CVE-2017-5929:
++    It was discovered that logback, a flexible logging library for Java, would
++    deserialize data from untrusted sockets. This issue has been resolved by
++    adding a whitelist to use only trusted classes. (Closes: #857343)
++
++ -- Markus Koschany <apo at debian.org>  Fri, 07 Apr 2017 23:20:14 +0200
++
++logback (1:1.0.4-1) unstable; urgency=low
++
++  * New upstream release.
++  * d/control: Update Standards-Version to 3.9.3: no changes needed.
++  * d/copyright: Upgrade to copyright-format 1.0.
++
++ -- Damien Raude-Morvan <drazzib at debian.org>  Tue, 05 Jun 2012 00:11:13 +0200
++
 +logback (1:1.0.0-1) unstable; urgency=low
 +
 +  * New upstream release.
 +
 + -- Damien Raude-Morvan <drazzib at debian.org>  Tue, 01 Nov 2011 23:33:55 +0100
 +
 +logback (1:0.9.30-1) unstable; urgency=low
 +
 +  * New upstream release.
 +  * Wrap and sort Build-Depends and Depends.
 +  * Update Standards-Version: 3.9.2 (no changes needed).
 +  * d/copyright: Update to latest DEP-5 format.
 +
 + -- Damien Raude-Morvan <drazzib at debian.org>  Thu, 22 Sep 2011 13:59:23 +0200
 +
 +logback (1:0.9.28-1) unstable; urgency=low
 +
 +  * New upstream release.
 +  * Update Standards-Version: 3.9.1 (no changes needed).
 +  * d/control: Add Build-Depends on groovy.
 +  * d/rules: Add groovy to DEB_JARS.
 +
 + -- Damien Raude-Morvan <drazzib at debian.org>  Fri, 04 Mar 2011 23:09:14 +0100
 +
 +logback (1:0.9.18+dak1-1) unstable; urgency=low
 +
 +  * Revert to 0.9.18 release.
 +    - 0.9.20 as incompatible API changes:
 +      upstream removed methods in StaticLoggerBinder
 +      which cause FTBFS on red5 package (See: #577859).
 +
 + -- Damien Raude-Morvan <drazzib at debian.org>  Mon, 26 Apr 2010 22:03:01 +0200
 +
 +logback (0.9.20-1) unstable; urgency=low
 +
 +  * Team upload
 +  * New upstream release
 +  * Change 'maintainers' into 'Maintainers'.
 +  * Switch to source format 3.0.
 +  * Update Standards-Version: 3.8.4
 +
 + -- Torsten Werner <twerner at debian.org>  Sun, 11 Apr 2010 21:12:47 +0200
 +
 +logback (0.9.18-1) unstable; urgency=low
 +
 +  * New upstream release.
 +    - Now dual-licensed under the EPL 1.0 and LGPL 2.1
 +    - Update debian/copyright
 +  * Bump debhelper version to >= 7
 +  * Extract debian/rules get-orig-source script into debian/orig-tar.sh
 +    and debian/orig-tar.exclude
 +
 + -- Damien Raude-Morvan <drazzib at debian.org>  Thu, 03 Dec 2009 23:24:54 +0100
 +
 +logback (0.9.17-1) unstable; urgency=low
 +
 +  * New upstream release.
 +  * Set Maintainer field to Debian Java Team
 +  * Add myself as Uploaders
 +  * Build-Depends on default-jdk instead of default-jdk-builddep
 +    because we don't build a native GCJ package.
 +  * Bump Standards-Version to 3.8.3 (no changes needed)
 +  * Documentation:
 +    - Move api documentation to /usr/share/doc/liblogback-java/api/
 +    - Register Logback manual with doc-base
 +  * Maven POMs:
 +    - Add a Build-Depends-Indep dependency on maven-repo-helper
 +    - Use mh_installpoms and mh_installjar to install the POM and the jar to the
 +     Maven repository
 +
 + -- Damien Raude-Morvan <drazzib at debian.org>  Fri, 25 Sep 2009 00:19:01 +0200
 +
 +logback (0.9.15-1) unstable; urgency=low
 +
 +  * Initial release. (Closes: #506569)
 +
 + -- Damien Raude-Morvan <drazzib at drazzib.com>  Sun, 15 Mar 2009 20:43:52 +0100
diff --cc debian/control
index 09ed081,0000000..3ce1d07
mode 100644,000000..100644
--- a/debian/control
+++ b/debian/control
@@@ -1,57 -1,0 +1,57 @@@
 +Source: logback
 +Maintainer: Debian Java Maintainers <pkg-java-maintainers at lists.alioth.debian.org>
 +Uploaders: Damien Raude-Morvan <drazzib at debian.org>
- Standards-Version: 3.9.2
++Standards-Version: 3.9.3
 +Section: java
 +Priority: optional
 +Build-Depends: ant,
 +               cdbs,
 +               debhelper (>= 7),
 +               default-jdk,
 +               glassfish-javaee,
 +               groovy,
 +               janino,
 +               libslf4j-java (>= 1.6.1),
 +               maven-repo-helper
 +Homepage: http://logback.qos.ch/
 +Vcs-Svn: svn://svn.debian.org/svn/pkg-java/trunk/logback
 +Vcs-Browser: http://svn.debian.org/wsvn/pkg-java/trunk/logback
 +
 +Package: liblogback-java
 +Architecture: all
 +Depends: libslf4j-java, ${misc:Depends}
 +Suggests: glassfish-javaee, janino
 +Description: flexible logging library for Java
 + Logback is a reliable, generic, fast and flexible logging library for Java.
 + It's intended as a successor to the popular log4j project.
 + .
 + The logback-core module lays the groundwork for the other two modules.
 + .
 + The logback-classic module can be assimilated to a significantly improved
 + version of log4j. Moreover, logback-classic natively implements the SLF4J API
 + so that you can readily switch back and forth between logback and other
 + logging systems such as log4j or java.util.logging (JUL).
 + .
 + The logback-access module integrates with Servlet containers, such as Tomcat
 + and Jetty, to provide HTTP-access log functionality.
 +
 +Package: liblogback-java-doc
 +Architecture: all
 +Section: doc
 +Depends: ${misc:Depends}
 +Suggests: liblogback-java
 +Description: flexible logging library for Java - documentation
 + Logback is a reliable, generic, fast and flexible logging library for Java.
 + It's intended as a successor to the popular log4j project.
 + .
 + The logback-core module lays the groundwork for the other two modules.
 + .
 + The logback-classic module can be assimilated to a significantly improved
 + version of log4j. Moreover, logback-classic natively implements the SLF4J API
 + so that you can readily switch back and forth between logback and other
 + logging systems such as log4j or java.util.logging (JUL).
 + .
 + The logback-access module integrates with Servlet containers, such as Tomcat
 + and Jetty, to provide HTTP-access log functionality.
 + .
 + This package provides the API documentation and manual for Logback.
diff --cc debian/copyright
index 2a2c1fa,0000000..de64269
mode 100644,000000..100644
--- a/debian/copyright
+++ b/debian/copyright
@@@ -1,139 -1,0 +1,139 @@@
- Format: http://anonscm.debian.org/viewvc/dep/web/deps/dep5.mdwn?revision=174
++Format: http://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
 +Upstream-Name: Logback
 +Upstream-Contact: Logback developpers
 +Source: http://logback.qos.ch/dist/
 +
 +Files: *
 +Copyright: Copyright 2000-2009, QOS.ch
 +License: LGPL-2.1 or other
 + This program and the accompanying materials are dual-licensed under
 + either the terms of the Eclipse Public License v1.0 as published by
 + the Eclipse Foundation
 + .
 + or (per the licensee's choosing)
 + . 
 + under the terms of the GNU Lesser General Public License version 2.1
 + as published by the Free Software Foundation.
 +
 +Files: logback-classic/src/test/java/org/slf4j/test_osgi/FrameworkErrorListener.java
 + logback-classic/src/test/java/org/slf4j/test_osgi/FelixHost.java
 + logback-classic/src/test/java/integrator/Activator.java
 +Copyright: Copyright 2004-2009 QOS.ch
 +License: BSD-X11
 +
 +Files: debian/*
 +Copyright: 2008-2011 Damien Raude-Morvan <drazzib at debian.org>
 +License: LGPL-2.1 or BSD-X11
 +
- 
- License: LGPL-2.1
-     On Debian systems the full text of the GNU Lesser General Public License can be found
-     in the `/usr/share/common-licenses/LGPL-2.1' file.
- 
 +License: BSD-X11
 +    Permission is hereby granted, free of charge, to any person obtaining a copy
 +    of this software and associated documentation files (the "Software"), to deal
 +    in the Software without restriction, including without limitation the rights
 +    to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
 +    copies of the Software, and to permit persons to whom the Software is
 +    furnished to do so, subject to the following conditions:
-     .
++ .
 +    The above copyright notice and this permission notice shall be included in
 +    all copies or substantial portions of the Software.
-     .
++ .
 +    THE SOFTWARE IS PROVIDED "AS  IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
 +    IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 +    FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
 +    AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
 +    LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
 +    OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
 +    SOFTWARE.
 +
++License: LGPL-2.1
++    On Debian systems the full text of the GNU Lesser General Public License can be found
++    in the `/usr/share/common-licenses/LGPL-2.1' file.
++
 +License: other
 +    Eclipse Public License -v 1.0
-     .
++ .
 +    THE ACCOMPANYING PROGRAM IS PROVIDED UNDER THE TERMS OF THIS ECLIPSE PUBLIC LICENSE ("AGREEMENT"). ANY USE, REPRODUCTION OR DISTRIBUTION OF THE PROGRAM CONSTITUTES RECIPIENT'S ACCEPTANCE OF THIS AGREEMENT.
-     .
++ .
 +    1. DEFINITIONS
-     .
++ .
 +    "Contribution" means:
-     .
++ .
 +    a) in the case of the initial Contributor, the initial code and documentation distributed under this Agreement, and
-     .
++ .
 +    b) in the case of each subsequent Contributor:
-     .
++ .
 +    i) changes to the Program, and
-     .
++ .
 +    ii) additions to the Program;
-     .
++ .
 +    where such changes and/or additions to the Program originate from and are distributed by that particular Contributor. A Contribution 'originates' from a Contributor if it was added to the Program by such Contributor itself or anyone acting on such Contributor's behalf. Contributions do not include additions to the Program which: (i) are separate modules of software distributed in conjunction with the Program under their own license agreement, and (ii) are not derivative works of the [...]
-     .
++ .
 +    "Contributor" means any person or entity that distributes the Program.
-     .
++ .
 +    "Licensed Patents " mean patent claims licensable by a Contributor which are necessarily infringed by the use or sale of its Contribution alone or when combined with the Program.
-     .
++ .
 +    "Program" means the Contributions distributed in accordance with this Agreement.
-     .
++ .
 +    "Recipient" means anyone who receives the Program under this Agreement, including all Contributors.
-     .
++ .
 +    2. GRANT OF RIGHTS
-     .
++ .
 +    a) Subject to the terms of this Agreement, each Contributor hereby grants Recipient a non-exclusive, worldwide, royalty-free copyright license to reproduce, prepare derivative works of, publicly display, publicly perform, distribute and sublicense the Contribution of such Contributor, if any, and such derivative works, in source code and object code form.
-     .
++ .
 +    b) Subject to the terms of this Agreement, each Contributor hereby grants Recipient a non-exclusive, worldwide, royalty-free patent license under Licensed Patents to make, use, sell, offer to sell, import and otherwise transfer the Contribution of such Contributor, if any, in source code and object code form. This patent license shall apply to the combination of the Contribution and the Program if, at the time the Contribution is added by the Contributor, such addition of the Contri [...]
-     .
++ .
 +    c) Recipient understands that although each Contributor grants the licenses to its Contributions set forth herein, no assurances are provided by any Contributor that the Program does not infringe the patent or other intellectual property rights of any other entity. Each Contributor disclaims any liability to Recipient for claims brought by any other entity based on infringement of intellectual property rights or otherwise. As a condition to exercising the rights and licenses granted [...]
-     .
++ .
 +    d) Each Contributor represents that to its knowledge it has sufficient copyright rights in its Contribution, if any, to grant the copyright license set forth in this Agreement.
-     .
++ .
 +    3. REQUIREMENTS
-     .
++ .
 +    A Contributor may choose to distribute the Program in object code form under its own license agreement, provided that:
-     .
++ .
 +    a) it complies with the terms and conditions of this Agreement; and
-     .
++ .
 +    b) its license agreement:
-     .
++ .
 +    i) effectively disclaims on behalf of all Contributors all warranties and conditions, express and implied, including warranties or conditions of title and non-infringement, and implied warranties or conditions of merchantability and fitness for a particular purpose;
-     .
++ .
 +    ii) effectively excludes on behalf of all Contributors all liability for damages, including direct, indirect, special, incidental and consequential damages, such as lost profits;
-     .
++ .
 +    iii) states that any provisions which differ from this Agreement are offered by that Contributor alone and not by any other party; and
-     .
++ .
 +    iv) states that source code for the Program is available from such Contributor, and informs licensees how to obtain it in a reasonable manner on or through a medium customarily used for software exchange.
-     .
++ .
 +    When the Program is made available in source code form:
-     .
++ .
 +    a) it must be made available under this Agreement; and
-     .
++ .
 +    b) a copy of this Agreement must be included with each copy of the Program.
-     .
++ .
 +    Contributors may not remove or alter any copyright notices contained within the Program.
-     .
++ .
 +    Each Contributor must identify itself as the originator of its Contribution, if any, in a manner that reasonably allows subsequent Recipients to identify the originator of the Contribution.
-     .
++ .
 +    4. COMMERCIAL DISTRIBUTION
-     .
++ .
 +    Commercial distributors of software may accept certain responsibilities with respect to end users, business partners and the like. While this license is intended to facilitate the commercial use of the Program, the Contributor who includes the Program in a commercial product offering should do so in a manner which does not create potential liability for other Contributors. Therefore, if a Contributor includes the Program in a commercial product offering, such Contributor ("Commercia [...]
-     .
++ .
 +    For example, a Contributor might include the Program in a commercial product offering, Product X. That Contributor is then a Commercial Contributor. If that Commercial Contributor then makes performance claims, or offers warranties related to Product X, those performance claims and warranties are such Commercial Contributor's responsibility alone. Under this section, the Commercial Contributor would have to defend claims against the other Contributors related to those performance cl [...]
-     .
++ .
 +    5. NO WARRANTY
-     .
++ .
 +    EXCEPT AS EXPRESSLY SET FORTH IN THIS AGREEMENT, THE PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED INCLUDING, WITHOUT LIMITATION, ANY WARRANTIES OR CONDITIONS OF TITLE, NON-INFRINGEMENT, MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. Each Recipient is solely responsible for determining the appropriateness of using and distributing the Program and assumes all risks associated with its exercise of rights under th [...]
-     .
++ .
 +    6. DISCLAIMER OF LIABILITY
-     .
++ .
 +    EXCEPT AS EXPRESSLY SET FORTH IN THIS AGREEMENT, NEITHER RECIPIENT NOR ANY CONTRIBUTORS SHALL HAVE ANY LIABILITY FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING WITHOUT LIMITATION LOST PROFITS), HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OR DISTRIBUTION OF THE PROGRAM OR THE EXERCISE OF ANY RIGHTS GRANTED HEREUNDER, EV [...]
-     .
++ .
 +    7. GENERAL
-     .
++ .
 +    If any provision of this Agreement is invalid or unenforceable under applicable law, it shall not affect the validity or enforceability of the remainder of the terms of this Agreement, and without further action by the parties hereto, such provision shall be reformed to the minimum extent necessary to make such provision valid and enforceable.
-     .
++ .
 +    If Recipient institutes patent litigation against any entity (including a cross-claim or counterclaim in a lawsuit) alleging that the Program itself (excluding combinations of the Program with other software or hardware) infringes such Recipient's patent(s), then such Recipient's rights granted under Section 2(b) shall terminate as of the date such litigation is filed.
-     .
++ .
 +    All Recipient's rights under this Agreement shall terminate if it fails to comply with any of the material terms or conditions of this Agreement and does not cure such failure in a reasonable period of time after becoming aware of such noncompliance. If all Recipient's rights under this Agreement terminate, Recipient agrees to cease use and distribution of the Program as soon as reasonably practicable. However, Recipient's obligations under this Agreement and any licenses granted by [...]
-     .
++ .
 +    Everyone is permitted to copy and distribute copies of this Agreement, but in order to avoid inconsistency the Agreement is copyrighted and may only be modified in the following manner. The Agreement Steward reserves the right to publish new versions (including revisions) of this Agreement from time to time. No one other than the Agreement Steward has the right to modify this Agreement. The Eclipse Foundation is the initial Agreement Steward. The Eclipse Foundation may assign the re [...]
-     .
++ .
 +    This Agreement is governed by the laws of the State of New York and the intellectual property laws of the United States of America. No party to this Agreement will bring a legal action under this Agreement more than one year after the cause of action arose. Each party waives its rights to a jury trial in any resulting litigation.
++
diff --cc debian/patches/CVE-2017-5929.patch
index 0000000,0000000..f4d485a
new file mode 100644
--- /dev/null
+++ b/debian/patches/CVE-2017-5929.patch
@@@ -1,0 -1,0 +1,294 @@@
++From: Markus Koschany <apo at debian.org>
++Date: Fri, 7 Apr 2017 18:10:45 +0200
++Subject: CVE-2017-5929
++
++Bug-Debian: https://bugs.debian.org/857343
++Origin: https://github.com/qos-ch/logback/commit/f46044b805bca91efe5fd6afe52257cd02f775f8
++Origin: https://github.com/qos-ch/logback/commit/979b042cb1f0b4c1e5869ccc8912e68c39f769f9
++Origin: https://github.com/qos-ch/logback/commit/7fbea6127fa98fc48368ca5e8540eefe0e60cec5
++Origin: https://github.com/qos-ch/logback/commit/3b4f605454534b304770eeee3cb343521fcd6968
++---
++ .../access/net/HardenedAccessEventInputStream.java | 15 +++++
++ .../java/ch/qos/logback/access/net/SocketNode.java | 12 ++--
++ .../ch/qos/logback/classic/net/SocketNode.java     | 15 +++--
++ .../server/HardenedLoggingEventInputStream.java    | 56 +++++++++++++++++
++ .../core/net/HardenedObjectInputStream.java        | 71 ++++++++++++++++++++++
++ 5 files changed, 154 insertions(+), 15 deletions(-)
++ create mode 100644 logback-access/src/main/java/ch/qos/logback/access/net/HardenedAccessEventInputStream.java
++ create mode 100644 logback-classic/src/main/java/ch/qos/logback/classic/net/server/HardenedLoggingEventInputStream.java
++ create mode 100644 logback-core/src/main/java/ch/qos/logback/core/net/HardenedObjectInputStream.java
++
++diff --git a/logback-access/src/main/java/ch/qos/logback/access/net/HardenedAccessEventInputStream.java b/logback-access/src/main/java/ch/qos/logback/access/net/HardenedAccessEventInputStream.java
++new file mode 100644
++index 0000000..c0ba6b0
++--- /dev/null
+++++ b/logback-access/src/main/java/ch/qos/logback/access/net/HardenedAccessEventInputStream.java
++@@ -0,0 +1,15 @@
+++package ch.qos.logback.access.net;
+++
+++import java.io.IOException;
+++import java.io.InputStream;
+++
+++import ch.qos.logback.access.spi.AccessEvent;
+++import ch.qos.logback.core.net.HardenedObjectInputStream;
+++
+++public class HardenedAccessEventInputStream extends HardenedObjectInputStream {
+++
+++    public HardenedAccessEventInputStream(InputStream in) throws IOException {
+++        super(in, new String[] {AccessEvent.class.getName(), String[].class.getName()});
+++    }
+++
+++}
++diff --git a/logback-access/src/main/java/ch/qos/logback/access/net/SocketNode.java b/logback-access/src/main/java/ch/qos/logback/access/net/SocketNode.java
++index d4c1265..d9e0b2b 100644
++--- a/logback-access/src/main/java/ch/qos/logback/access/net/SocketNode.java
+++++ b/logback-access/src/main/java/ch/qos/logback/access/net/SocketNode.java
++@@ -15,7 +15,6 @@ package ch.qos.logback.access.net;
++ 
++ import java.io.BufferedInputStream;
++ import java.io.IOException;
++-import java.io.ObjectInputStream;
++ import java.net.Socket;
++ 
++ import ch.qos.logback.access.spi.AccessContext;
++@@ -42,16 +41,15 @@ public class SocketNode implements Runnable {
++ 
++   Socket socket;
++   AccessContext context;
++-  ObjectInputStream ois;
+++  HardenedAccessEventInputStream hardenedOIS;
++ 
++   public SocketNode(Socket socket, AccessContext context) {
++     this.socket = socket;
++     this.context = context;
++     try {
++-      ois = new ObjectInputStream(new BufferedInputStream(socket
++-          .getInputStream()));
+++            hardenedOIS = new HardenedAccessEventInputStream(new BufferedInputStream(socket.getInputStream()));
++     } catch (Exception e) {
++-      System.out.println("Could not open ObjectInputStream to " + socket + e);
+++      System.out.println("Could not open HardenedObjectInputStream to " + socket + e);
++     }
++   }
++ 
++@@ -61,7 +59,7 @@ public class SocketNode implements Runnable {
++     try {
++       while (true) {
++         // read an event from the wire
++-        event = (IAccessEvent) ois.readObject();
+++        event = (IAccessEvent) hardenedOIS.readObject();
++         //check that the event should be logged
++         if (context.getFilterChainDecision(event) == FilterReply.DENY) {
++           break;
++@@ -81,7 +79,7 @@ public class SocketNode implements Runnable {
++     }
++ 
++     try {
++-      ois.close();
+++      hardenedOIS.close();
++     } catch (Exception e) {
++       System.out.println("Could not close connection." + e);
++     }
++diff --git a/logback-classic/src/main/java/ch/qos/logback/classic/net/SocketNode.java b/logback-classic/src/main/java/ch/qos/logback/classic/net/SocketNode.java
++index 1f28df8..d439d48 100644
++--- a/logback-classic/src/main/java/ch/qos/logback/classic/net/SocketNode.java
+++++ b/logback-classic/src/main/java/ch/qos/logback/classic/net/SocketNode.java
++@@ -15,13 +15,13 @@ package ch.qos.logback.classic.net;
++ 
++ import java.io.BufferedInputStream;
++ import java.io.IOException;
++-import java.io.ObjectInputStream;
++ import java.net.Socket;
++ import java.net.SocketAddress;
++ 
++ import ch.qos.logback.classic.Logger;
++ 
++ import ch.qos.logback.classic.LoggerContext;
+++import ch.qos.logback.classic.net.server.HardenedLoggingEventInputStream;
++ import ch.qos.logback.classic.spi.ILoggingEvent;
++ 
++ // Contributors: Moses Hohman <mmhohman at rainbow.uchicago.edu>
++@@ -44,7 +44,7 @@ public class SocketNode implements Runnable {
++ 
++   Socket socket;
++   LoggerContext context;
++-  ObjectInputStream ois;
+++  HardenedLoggingEventInputStream hardenedLoggingEventInputStream;
++   SocketAddress remoteSocketAddress;
++   
++   Logger logger;
++@@ -59,8 +59,7 @@ public class SocketNode implements Runnable {
++     logger = context.getLogger(SocketNode.class);
++ 
++     try {
++-      ois = new ObjectInputStream(new BufferedInputStream(socket
++-          .getInputStream()));
+++      hardenedLoggingEventInputStream = new HardenedLoggingEventInputStream(new BufferedInputStream(socket.getInputStream()));
++     } catch (Exception e) {
++       logger.error("Could not open ObjectInputStream to " + socket, e);
++     }
++@@ -79,7 +78,7 @@ public class SocketNode implements Runnable {
++     try {
++       while (!closed) {
++         // read an event from the wire
++-        event = (ILoggingEvent) ois.readObject();
+++        event = (ILoggingEvent) hardenedLoggingEventInputStream.readObject();
++         // get a logger from the hierarchy. The name of the logger is taken to
++         // be the name contained in the event.
++         remoteLogger = context.getLogger(event.getLoggerName());
++@@ -109,13 +108,13 @@ public class SocketNode implements Runnable {
++       return;
++     }
++     closed = true;
++-    if (ois != null) {
+++    if (hardenedLoggingEventInputStream != null) {
++       try {
++-        ois.close();
+++        hardenedLoggingEventInputStream.close();
++       } catch (IOException e) {
++         logger.warn("Could not close connection.", e);
++       } finally {
++-        ois = null;
+++        hardenedLoggingEventInputStream = null;
++       }
++     }
++   }
++diff --git a/logback-classic/src/main/java/ch/qos/logback/classic/net/server/HardenedLoggingEventInputStream.java b/logback-classic/src/main/java/ch/qos/logback/classic/net/server/HardenedLoggingEventInputStream.java
++new file mode 100644
++index 0000000..522a30f
++--- /dev/null
+++++ b/logback-classic/src/main/java/ch/qos/logback/classic/net/server/HardenedLoggingEventInputStream.java
++@@ -0,0 +1,56 @@
+++package ch.qos.logback.classic.net.server;
+++
+++import java.io.IOException;
+++import java.io.InputStream;
+++import java.util.ArrayList;
+++import java.util.List;
+++
+++import org.slf4j.helpers.BasicMarker;
+++
+++import ch.qos.logback.classic.Level;
+++import ch.qos.logback.classic.Logger;
+++import ch.qos.logback.classic.spi.ClassPackagingData;
+++import ch.qos.logback.classic.spi.IThrowableProxy;
+++import ch.qos.logback.classic.spi.LoggerContextVO;
+++import ch.qos.logback.classic.spi.LoggerRemoteView;
+++import ch.qos.logback.classic.spi.LoggingEventVO;
+++import ch.qos.logback.classic.spi.StackTraceElementProxy;
+++import ch.qos.logback.classic.spi.ThrowableProxy;
+++import ch.qos.logback.classic.spi.ThrowableProxyVO;
+++import ch.qos.logback.core.net.HardenedObjectInputStream;
+++
+++public class HardenedLoggingEventInputStream extends HardenedObjectInputStream {
+++
+++    static final String ARRAY_PREFIX = "[L";
+++    
+++    static public List<String> getWhilelist() {
+++        List<String> whitelist = new ArrayList<String>();
+++        whitelist.add(LoggingEventVO.class.getName());
+++        whitelist.add(LoggerContextVO.class.getName());
+++        whitelist.add(LoggerRemoteView.class.getName());
+++        whitelist.add(ThrowableProxyVO.class.getName());
+++        whitelist.add(BasicMarker.class.getName());
+++        whitelist.add(Level.class.getName());
+++        whitelist.add(Logger.class.getName());
+++        whitelist.add(StackTraceElement.class.getName());
+++        whitelist.add(StackTraceElement[].class.getName());
+++        whitelist.add(ThrowableProxy.class.getName());
+++        whitelist.add(ThrowableProxy[].class.getName());
+++        whitelist.add(IThrowableProxy.class.getName());
+++        whitelist.add(IThrowableProxy[].class.getName());
+++        whitelist.add(StackTraceElementProxy.class.getName());
+++        whitelist.add(StackTraceElementProxy[].class.getName());
+++        whitelist.add(ClassPackagingData.class.getName());
+++
+++        return whitelist;
+++    }
+++   
+++    public HardenedLoggingEventInputStream(InputStream is) throws IOException {
+++        super(is, getWhilelist());
+++    }
+++    
+++    public HardenedLoggingEventInputStream(InputStream is, List<String> additionalAuthorizedClasses) throws IOException {
+++        this(is);
+++        super.addToWhitelist(additionalAuthorizedClasses);
+++    }
+++}
++diff --git a/logback-core/src/main/java/ch/qos/logback/core/net/HardenedObjectInputStream.java b/logback-core/src/main/java/ch/qos/logback/core/net/HardenedObjectInputStream.java
++new file mode 100644
++index 0000000..d1b7301
++--- /dev/null
+++++ b/logback-core/src/main/java/ch/qos/logback/core/net/HardenedObjectInputStream.java
++@@ -0,0 +1,71 @@
+++package ch.qos.logback.core.net;
+++
+++import java.io.IOException;
+++import java.io.InputStream;
+++import java.io.InvalidClassException;
+++import java.io.ObjectInputStream;
+++import java.io.ObjectStreamClass;
+++import java.util.ArrayList;
+++import java.util.List;
+++
+++/**
+++ * HardenedObjectInputStream restricts the set of classes that can be deserialized to a set of 
+++ * explicitly whitelisted classes. This prevents certain type of attacks from being successful.
+++ * 
+++ * <p>It is assumed that classes in the "java.lang" and  "java.util" packages are 
+++ * always authorized.</p>
+++ * 
+++ * @author Ceki Gülcü
+++ * @since 1.2.0
+++ */
+++public class HardenedObjectInputStream extends ObjectInputStream {
+++
+++    final List<String> whitelistedClassNames;
+++    final static String[] JAVA_PACKAGES = new String[] { "java.lang", "java.util" };
+++
+++    public HardenedObjectInputStream(InputStream in, String[] whilelist) throws IOException {
+++        super(in);
+++
+++        this.whitelistedClassNames = new ArrayList<String>();
+++        if (whilelist != null) {
+++            for (int i = 0; i < whilelist.length; i++) {
+++                this.whitelistedClassNames.add(whilelist[i]);
+++            }
+++        }
+++    }
+++
+++    public HardenedObjectInputStream(InputStream in, List<String> whitelist) throws IOException {
+++        super(in);
+++
+++        this.whitelistedClassNames = new ArrayList<String>();
+++        this.whitelistedClassNames.addAll(whitelist);
+++    }
+++
+++    @Override
+++    protected Class<?> resolveClass(ObjectStreamClass anObjectStreamClass) throws IOException, ClassNotFoundException {
+++        
+++        String incomingClassName = anObjectStreamClass.getName();
+++        
+++        if (!isWhitelisted(incomingClassName)) {
+++            throw new InvalidClassException("Unauthorized deserialization attempt", anObjectStreamClass.getName());
+++        }
+++
+++        return super.resolveClass(anObjectStreamClass);
+++    }
+++
+++    private boolean isWhitelisted(String incomingClassName) {
+++        for (int i = 0; i < JAVA_PACKAGES.length; i++) {
+++            if (incomingClassName.startsWith(JAVA_PACKAGES[i]))
+++                return true;
+++        }
+++        for (String whiteListed : whitelistedClassNames) {
+++            if (incomingClassName.equals(whiteListed))
+++                return true;
+++        }
+++        return false;
+++    }
+++
+++    protected void addToWhitelist(List<String> additionalAuthorizedClasses) {
+++        whitelistedClassNames.addAll(additionalAuthorizedClasses);
+++    }
+++}
diff --cc debian/patches/series
index 0000000,0000000..9aa2648
new file mode 100644
--- /dev/null
+++ b/debian/patches/series
@@@ -1,0 -1,0 +1,1 @@@
++CVE-2017-5929.patch

-- 
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-java/logback.git



More information about the pkg-java-commits mailing list