aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/vendor
diff options
context:
space:
mode:
Diffstat (limited to 'vendor')
-rw-r--r--vendor/.htaccess4
-rw-r--r--vendor/composer/ClassLoader.php8
-rw-r--r--vendor/composer/autoload_files.php1
-rw-r--r--vendor/composer/autoload_real.php3
-rw-r--r--vendor/composer/autoload_static.php1
-rw-r--r--vendor/composer/installed.json449
-rw-r--r--vendor/geshi/geshi/.gitignore6
-rw-r--r--vendor/geshi/geshi/CHANGELOG20
-rw-r--r--vendor/geshi/geshi/README.md2
-rw-r--r--vendor/geshi/geshi/THANKS3
-rw-r--r--vendor/geshi/geshi/build.xml4
-rw-r--r--vendor/geshi/geshi/composer.json2
-rw-r--r--vendor/geshi/geshi/src/geshi.php45
-rw-r--r--vendor/geshi/geshi/src/geshi/4cs.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/6502acme.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/6502kickass.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/6502tasm.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/68000devpac.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/abap.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/actionscript.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/actionscript3.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/ada.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/aimms.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/algol68.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/apache.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/applescript.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/apt_sources.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/arm.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/asm.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/asp.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/asymptote.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/autoconf.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/autohotkey.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/autoit.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/avisynth.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/awk.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/bascomavr.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/bash.php25
-rw-r--r--vendor/geshi/geshi/src/geshi/basic4gl.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/batch.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/bf.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/biblatex.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/bibtex.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/blitzbasic.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/bnf.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/boo.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/c.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/c_loadrunner.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/c_mac.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/c_winapi.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/caddcl.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/cadlisp.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/ceylon.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/cfdg.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/cfm.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/chaiscript.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/chapel.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/cil.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/clojure.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/cmake.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/cobol.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/coffeescript.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/cpp-qt.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/cpp-winapi.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/cpp.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/csharp.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/css.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/cuesheet.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/d.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/dart.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/dcl.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/dcpu16.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/dcs.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/delphi.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/diff.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/div.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/dos.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/dot.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/e.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/ecmascript.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/eiffel.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/email.php60
-rw-r--r--vendor/geshi/geshi/src/geshi/epc.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/erlang.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/euphoria.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/ezt.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/f1.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/falcon.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/fo.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/fortran.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/freebasic.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/freeswitch.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/fsharp.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/gambas.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/gdb.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/genero.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/genie.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/gettext.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/glsl.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/gml.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/gnuplot.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/go.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/groovy.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/gwbasic.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/haskell.php16
-rw-r--r--vendor/geshi/geshi/src/geshi/haxe.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/hicest.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/hq9plus.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/html4strict.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/html5.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/icon.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/idl.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/ini.php4
-rw-r--r--vendor/geshi/geshi/src/geshi/inno.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/intercal.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/io.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/ispfpanel.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/j.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/java.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/java5.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/javascript.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/jcl.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/jquery.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/julia.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/kixtart.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/klonec.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/klonecpp.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/kotlin.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/latex.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/lb.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/ldif.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/lisp.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/llvm.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/locobasic.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/logtalk.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/lolcode.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/lotusformulas.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/lotusscript.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/lscript.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/lsl2.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/lua.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/m68k.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/magiksf.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/make.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/mapbasic.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/mathematica.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/matlab.php45
-rw-r--r--vendor/geshi/geshi/src/geshi/mercury.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/metapost.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/mirc.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/mk-61.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/mmix.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/modula2.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/modula3.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/mpasm.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/mxml.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/mysql.php20
-rw-r--r--vendor/geshi/geshi/src/geshi/nagios.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/netrexx.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/newlisp.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/nginx.php9
-rw-r--r--vendor/geshi/geshi/src/geshi/nimrod.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/nsis.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/oberon2.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/objc.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/objeck.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/ocaml-brief.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/ocaml.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/octave.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/oobas.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/oorexx.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/oracle11.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/oracle8.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/oxygene.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/oz.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/parasail.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/parigp.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/pascal.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/pcre.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/per.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/perl.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/perl6.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/pf.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/phix.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/php-brief.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/php.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/pic16.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/pike.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/pixelbender.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/pli.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/plsql.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/postgresql.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/postscript.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/povray.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/powerbuilder.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/powershell.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/proftpd.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/progress.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/prolog.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/properties.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/providex.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/purebasic.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/pycon.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/pys60.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/python.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/q.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/qbasic.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/qml.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/racket.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/rails.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/rbs.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/rebol.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/reg.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/rexx.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/robots.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/roff.php510
-rw-r--r--vendor/geshi/geshi/src/geshi/rpmspec.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/rsplus.php4
-rw-r--r--vendor/geshi/geshi/src/geshi/ruby.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/rust.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/sas.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/sass.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/scala.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/scheme.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/scilab.php4
-rw-r--r--vendor/geshi/geshi/src/geshi/scl.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/sdlbasic.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/smalltalk.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/smarty.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/spark.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/sparql.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/sql.php6
-rw-r--r--vendor/geshi/geshi/src/geshi/sshconfig.php165
-rw-r--r--vendor/geshi/geshi/src/geshi/standardml.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/stonescript.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/swift.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/systemverilog.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/tcl.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/tclegg.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/teraterm.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/texgraph.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/text.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/thinbasic.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/tsql.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/twig.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/typoscript.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/unicon.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/upc.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/urbi.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/uscript.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/vala.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/vb.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/vbnet.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/vbscript.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/vedit.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/verilog.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/vhdl.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/vim.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/visualfoxpro.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/visualprolog.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/whitespace.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/whois.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/winbatch.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/wolfram.php967
-rw-r--r--vendor/geshi/geshi/src/geshi/xbasic.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/xml.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/xojo.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/xorg_conf.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/xpp.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/yaml.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/z80.php2
-rw-r--r--vendor/geshi/geshi/src/geshi/zxbasic.php2
-rw-r--r--vendor/marcusschwarz/lesserphp/HISTORY.md7
-rw-r--r--vendor/marcusschwarz/lesserphp/README.md4
-rw-r--r--vendor/marcusschwarz/lesserphp/lessc.inc.php14
-rw-r--r--vendor/openpsa/universalfeedcreator/composer.json5
-rw-r--r--vendor/openpsa/universalfeedcreator/lib/Creator/AtomCreator03.php1
-rw-r--r--vendor/openpsa/universalfeedcreator/lib/Creator/AtomCreator10.php15
-rw-r--r--vendor/openpsa/universalfeedcreator/lib/Creator/FeedCreator.php1
-rw-r--r--vendor/openpsa/universalfeedcreator/lib/Creator/GPXCreator.php1
-rw-r--r--vendor/openpsa/universalfeedcreator/lib/Creator/HTMLCreator.php1
-rw-r--r--vendor/openpsa/universalfeedcreator/lib/Creator/JSCreator.php1
-rw-r--r--vendor/openpsa/universalfeedcreator/lib/Creator/KMLCreator.php1
-rw-r--r--vendor/openpsa/universalfeedcreator/lib/Creator/MBOXCreator.php1
-rw-r--r--vendor/openpsa/universalfeedcreator/lib/Creator/OPMLCreator.php1
-rw-r--r--vendor/openpsa/universalfeedcreator/lib/Creator/PHPCreator.php1
-rw-r--r--vendor/openpsa/universalfeedcreator/lib/Creator/PIECreator01.php1
-rw-r--r--vendor/openpsa/universalfeedcreator/lib/Creator/RSSCreator091.php1
-rw-r--r--vendor/openpsa/universalfeedcreator/lib/Creator/RSSCreator10.php1
-rw-r--r--vendor/openpsa/universalfeedcreator/lib/Creator/RSSCreator20.php1
-rw-r--r--vendor/openpsa/universalfeedcreator/lib/Element/FeedDate.php8
-rw-r--r--vendor/openpsa/universalfeedcreator/lib/Element/FeedHtmlField.php1
-rw-r--r--vendor/openpsa/universalfeedcreator/lib/Element/FeedImage.php1
-rw-r--r--vendor/openpsa/universalfeedcreator/lib/Element/FeedItem.php1
-rw-r--r--vendor/openpsa/universalfeedcreator/lib/Element/HtmlDescribable.php2
-rw-r--r--vendor/openpsa/universalfeedcreator/lib/UniversalFeedCreator.php11
-rw-r--r--vendor/openpsa/universalfeedcreator/lib/constants.php10
-rw-r--r--vendor/paragonie/random_compat/composer.json1
-rw-r--r--vendor/paragonie/random_compat/lib/byte_safe_strings.php34
-rw-r--r--vendor/paragonie/random_compat/lib/cast_to_int.php16
-rw-r--r--vendor/paragonie/random_compat/lib/error_polyfill.php14
-rw-r--r--vendor/paragonie/random_compat/lib/random.php26
-rw-r--r--vendor/paragonie/random_compat/lib/random_bytes_com_dotnet.php23
-rw-r--r--vendor/paragonie/random_compat/lib/random_bytes_dev_urandom.php79
-rw-r--r--vendor/paragonie/random_compat/lib/random_bytes_libsodium.php17
-rw-r--r--vendor/paragonie/random_compat/lib/random_bytes_libsodium_legacy.php13
-rw-r--r--vendor/paragonie/random_compat/lib/random_bytes_mcrypt.php20
-rw-r--r--vendor/paragonie/random_compat/lib/random_int.php16
-rw-r--r--vendor/paragonie/random_compat/psalm-autoload.php9
-rw-r--r--vendor/paragonie/random_compat/psalm.xml18
-rw-r--r--vendor/phpseclib/phpseclib/BACKERS.md8
-rw-r--r--vendor/phpseclib/phpseclib/LICENSE5
-rw-r--r--vendor/phpseclib/phpseclib/README.md20
-rw-r--r--vendor/phpseclib/phpseclib/appveyor.yml27
-rw-r--r--vendor/phpseclib/phpseclib/phpseclib/Crypt/Base.php18
-rw-r--r--vendor/phpseclib/phpseclib/phpseclib/Crypt/Hash.php121
-rw-r--r--vendor/phpseclib/phpseclib/phpseclib/Crypt/RSA.php180
-rw-r--r--vendor/phpseclib/phpseclib/phpseclib/Crypt/Random.php5
-rw-r--r--vendor/phpseclib/phpseclib/phpseclib/File/ASN1.php175
-rw-r--r--vendor/phpseclib/phpseclib/phpseclib/File/X509.php64
-rw-r--r--vendor/phpseclib/phpseclib/phpseclib/Math/BigInteger.php30
-rw-r--r--vendor/phpseclib/phpseclib/phpseclib/Net/SCP.php5
-rw-r--r--vendor/phpseclib/phpseclib/phpseclib/Net/SFTP.php123
-rw-r--r--vendor/phpseclib/phpseclib/phpseclib/Net/SSH1.php3
-rw-r--r--vendor/phpseclib/phpseclib/phpseclib/Net/SSH2.php904
-rw-r--r--vendor/phpseclib/phpseclib/phpseclib/System/SSH/Agent.php79
-rw-r--r--vendor/phpseclib/phpseclib/phpseclib/System/SSH/Agent/Identity.php93
-rw-r--r--vendor/simplepie/simplepie/CHANGELOG.md134
-rw-r--r--vendor/simplepie/simplepie/LICENSE.txt2
-rw-r--r--vendor/simplepie/simplepie/README.markdown8
-rw-r--r--vendor/simplepie/simplepie/autoloader.php6
-rw-r--r--vendor/simplepie/simplepie/composer.json23
-rw-r--r--vendor/simplepie/simplepie/idn/idna_convert.class.php36
-rwxr-xr-xvendor/simplepie/simplepie/library/SimplePie.php192
-rw-r--r--vendor/simplepie/simplepie/library/SimplePie/Author.php25
-rw-r--r--vendor/simplepie/simplepie/library/SimplePie/Cache.php6
-rw-r--r--vendor/simplepie/simplepie/library/SimplePie/Cache/Base.php6
-rw-r--r--vendor/simplepie/simplepie/library/SimplePie/Cache/DB.php6
-rw-r--r--vendor/simplepie/simplepie/library/SimplePie/Cache/File.php8
-rw-r--r--vendor/simplepie/simplepie/library/SimplePie/Cache/Memcache.php6
-rwxr-xr-xvendor/simplepie/simplepie/library/SimplePie/Cache/Memcached.php6
-rw-r--r--vendor/simplepie/simplepie/library/SimplePie/Cache/MySQL.php34
-rw-r--r--vendor/simplepie/simplepie/library/SimplePie/Cache/Redis.php6
-rw-r--r--vendor/simplepie/simplepie/library/SimplePie/Caption.php37
-rw-r--r--vendor/simplepie/simplepie/library/SimplePie/Category.php6
-rw-r--r--vendor/simplepie/simplepie/library/SimplePie/Content/Type/Sniffer.php43
-rw-r--r--vendor/simplepie/simplepie/library/SimplePie/Copyright.php19
-rw-r--r--vendor/simplepie/simplepie/library/SimplePie/Core.php6
-rw-r--r--vendor/simplepie/simplepie/library/SimplePie/Credit.php25
-rw-r--r--vendor/simplepie/simplepie/library/SimplePie/Decode/HTML/Entities.php19
-rw-r--r--vendor/simplepie/simplepie/library/SimplePie/Enclosure.php229
-rw-r--r--vendor/simplepie/simplepie/library/SimplePie/Exception.php6
-rw-r--r--vendor/simplepie/simplepie/library/SimplePie/File.php10
-rw-r--r--vendor/simplepie/simplepie/library/SimplePie/HTTP/Parser.php22
-rw-r--r--vendor/simplepie/simplepie/library/SimplePie/IRI.php161
-rw-r--r--vendor/simplepie/simplepie/library/SimplePie/Item.php147
-rw-r--r--vendor/simplepie/simplepie/library/SimplePie/Locator.php37
-rw-r--r--vendor/simplepie/simplepie/library/SimplePie/Misc.php61
-rw-r--r--vendor/simplepie/simplepie/library/SimplePie/Net/IPv6.php26
-rw-r--r--vendor/simplepie/simplepie/library/SimplePie/Parse/Date.php100
-rw-r--r--vendor/simplepie/simplepie/library/SimplePie/Parser.php118
-rw-r--r--vendor/simplepie/simplepie/library/SimplePie/Rating.php18
-rwxr-xr-xvendor/simplepie/simplepie/library/SimplePie/Registry.php6
-rw-r--r--vendor/simplepie/simplepie/library/SimplePie/Restriction.php24
-rw-r--r--vendor/simplepie/simplepie/library/SimplePie/Sanitize.php17
-rw-r--r--vendor/simplepie/simplepie/library/SimplePie/Source.php103
-rw-r--r--vendor/simplepie/simplepie/library/SimplePie/XML/Declaration/Parser.php18
-rw-r--r--vendor/simplepie/simplepie/library/SimplePie/gzdecode.php18
-rw-r--r--vendor/splitbrain/php-archive/src/Archive.php29
-rw-r--r--vendor/splitbrain/php-archive/src/ArchiveCorruptedException.php10
-rw-r--r--vendor/splitbrain/php-archive/src/ArchiveIOException.php10
-rw-r--r--vendor/splitbrain/php-archive/src/ArchiveIllegalCompressionException.php10
-rw-r--r--vendor/splitbrain/php-archive/src/FileInfo.php4
-rw-r--r--vendor/splitbrain/php-archive/src/FileInfoException.php10
-rw-r--r--vendor/splitbrain/php-archive/src/Tar.php53
-rw-r--r--vendor/splitbrain/php-archive/src/Zip.php22
-rw-r--r--vendor/splitbrain/php-cli/README.md4
-rw-r--r--vendor/splitbrain/php-cli/src/CLI.php70
-rw-r--r--vendor/splitbrain/php-cli/src/Exception.php2
-rw-r--r--vendor/splitbrain/php-cli/src/Options.php8
-rw-r--r--vendor/splitbrain/php-cli/src/TableFormatter.php38
381 files changed, 5024 insertions, 2139 deletions
diff --git a/vendor/.htaccess b/vendor/.htaccess
index 5f279f180..76253143a 100644
--- a/vendor/.htaccess
+++ b/vendor/.htaccess
@@ -1,7 +1,7 @@
-<IfModule mod_authz_host>
+<IfModule mod_authz_core.c>
Require all denied
</IfModule>
-<IfModule !mod_authz_host>
+<IfModule !mod_authz_core.c>
Order allow,deny
Deny from all
</IfModule>
diff --git a/vendor/composer/ClassLoader.php b/vendor/composer/ClassLoader.php
index 2c72175e7..fce8549f0 100644
--- a/vendor/composer/ClassLoader.php
+++ b/vendor/composer/ClassLoader.php
@@ -279,7 +279,7 @@ class ClassLoader
*/
public function setApcuPrefix($apcuPrefix)
{
- $this->apcuPrefix = function_exists('apcu_fetch') && ini_get('apc.enabled') ? $apcuPrefix : null;
+ $this->apcuPrefix = function_exists('apcu_fetch') && filter_var(ini_get('apc.enabled'), FILTER_VALIDATE_BOOLEAN) ? $apcuPrefix : null;
}
/**
@@ -377,11 +377,11 @@ class ClassLoader
$subPath = $class;
while (false !== $lastPos = strrpos($subPath, '\\')) {
$subPath = substr($subPath, 0, $lastPos);
- $search = $subPath.'\\';
+ $search = $subPath . '\\';
if (isset($this->prefixDirsPsr4[$search])) {
+ $pathEnd = DIRECTORY_SEPARATOR . substr($logicalPathPsr4, $lastPos + 1);
foreach ($this->prefixDirsPsr4[$search] as $dir) {
- $length = $this->prefixLengthsPsr4[$first][$search];
- if (file_exists($file = $dir . DIRECTORY_SEPARATOR . substr($logicalPathPsr4, $length))) {
+ if (file_exists($file = $dir . $pathEnd)) {
return $file;
}
}
diff --git a/vendor/composer/autoload_files.php b/vendor/composer/autoload_files.php
index 55787b617..403be68f0 100644
--- a/vendor/composer/autoload_files.php
+++ b/vendor/composer/autoload_files.php
@@ -6,6 +6,7 @@ $vendorDir = dirname(dirname(__FILE__));
$baseDir = dirname($vendorDir);
return array(
+ 'fdc0e9724ddc47859c8bf0c1ea0a623a' => $vendorDir . '/openpsa/universalfeedcreator/lib/constants.php',
'5255c38a0faeba867671b61dfda6d864' => $vendorDir . '/paragonie/random_compat/lib/random.php',
'decc78cc4436b1292c6c0d151b19445c' => $vendorDir . '/phpseclib/phpseclib/phpseclib/bootstrap.php',
);
diff --git a/vendor/composer/autoload_real.php b/vendor/composer/autoload_real.php
index 2daff3431..99e063b99 100644
--- a/vendor/composer/autoload_real.php
+++ b/vendor/composer/autoload_real.php
@@ -13,6 +13,9 @@ class ComposerAutoloaderInita19a915ee98347a0c787119619d2ff9b
}
}
+ /**
+ * @return \Composer\Autoload\ClassLoader
+ */
public static function getLoader()
{
if (null !== self::$loader) {
diff --git a/vendor/composer/autoload_static.php b/vendor/composer/autoload_static.php
index 3f7b01e01..db89c9eb9 100644
--- a/vendor/composer/autoload_static.php
+++ b/vendor/composer/autoload_static.php
@@ -7,6 +7,7 @@ namespace Composer\Autoload;
class ComposerStaticInita19a915ee98347a0c787119619d2ff9b
{
public static $files = array (
+ 'fdc0e9724ddc47859c8bf0c1ea0a623a' => __DIR__ . '/..' . '/openpsa/universalfeedcreator/lib/constants.php',
'5255c38a0faeba867671b61dfda6d864' => __DIR__ . '/..' . '/paragonie/random_compat/lib/random.php',
'decc78cc4436b1292c6c0d151b19445c' => __DIR__ . '/..' . '/phpseclib/phpseclib/phpseclib/bootstrap.php',
);
diff --git a/vendor/composer/installed.json b/vendor/composer/installed.json
index 23ae5c1e0..204f40be2 100644
--- a/vendor/composer/installed.json
+++ b/vendor/composer/installed.json
@@ -1,158 +1,108 @@
[
{
- "name": "geshi/geshi",
- "version": "v1.0.9.0",
- "version_normalized": "1.0.9.0",
+ "name": "aziraphale/email-address-validator",
+ "version": "2.0.1",
+ "version_normalized": "2.0.1.0",
"source": {
"type": "git",
- "url": "https://github.com/GeSHi/geshi-1.0.git",
- "reference": "5a7b461338d322d941986a656d4d1651452e73dd"
+ "url": "https://github.com/aziraphale/email-address-validator.git",
+ "reference": "fa25bc22c1c0b6491657c91473fae3e40719a650"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/GeSHi/geshi-1.0/zipball/5a7b461338d322d941986a656d4d1651452e73dd",
- "reference": "5a7b461338d322d941986a656d4d1651452e73dd",
+ "url": "https://api.github.com/repos/aziraphale/email-address-validator/zipball/fa25bc22c1c0b6491657c91473fae3e40719a650",
+ "reference": "fa25bc22c1c0b6491657c91473fae3e40719a650",
"shasum": ""
},
"require-dev": {
"phpunit/phpunit": "^5.7"
},
- "time": "2017-05-05T05:51:25+00:00",
+ "time": "2017-05-22T14:05:57+00:00",
"type": "library",
"installation-source": "dist",
"autoload": {
- "classmap": [
- "src/geshi/",
- "src/geshi.php"
- ]
+ "psr-0": {
+ "EmailAddressValidator": ""
+ }
},
"notification-url": "https://packagist.org/downloads/",
"license": [
- "GPL-2.0+"
+ "MIT"
],
"authors": [
{
- "name": "Benny Baumann",
- "email": "BenBE@geshi.org",
- "homepage": "http://blog.benny-baumann.de/",
- "role": "Developer"
+ "name": "Dave Child",
+ "email": "dave@addedbytes.com"
+ },
+ {
+ "name": "Andrew Gillard",
+ "email": "andrew@lorddeath.net"
}
],
- "description": "Generic Syntax Highlighter",
- "homepage": "http://qbnz.com/highlighter/"
+ "description": "Fork of AddedBytes' PHP EmailAddressValidator script, now with Composer support!",
+ "homepage": "https://github.com/aziraphale/email-address-validator"
},
{
- "name": "openpsa/universalfeedcreator",
- "version": "v1.8.3",
- "version_normalized": "1.8.3.0",
+ "name": "geshi/geshi",
+ "version": "v1.0.9.1",
+ "version_normalized": "1.0.9.1",
"source": {
"type": "git",
- "url": "https://github.com/flack/UniversalFeedCreator.git",
- "reference": "6261e130446d8f787bbfd229a602fb11e6816a4e"
+ "url": "https://github.com/GeSHi/geshi-1.0.git",
+ "reference": "fd22ab78481bf90337862b590e6f7517863926b8"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/flack/UniversalFeedCreator/zipball/6261e130446d8f787bbfd229a602fb11e6816a4e",
- "reference": "6261e130446d8f787bbfd229a602fb11e6816a4e",
+ "url": "https://api.github.com/repos/GeSHi/geshi-1.0/zipball/fd22ab78481bf90337862b590e6f7517863926b8",
+ "reference": "fd22ab78481bf90337862b590e6f7517863926b8",
"shasum": ""
},
- "require": {
- "php": ">=5.0"
- },
"require-dev": {
- "phpunit/phpunit": "*"
+ "phpunit/phpunit": "^5.7 || ^6.5 || ^7.5 || ^8.2"
},
- "time": "2017-05-18T08:28:48+00:00",
+ "time": "2019-10-20T20:54:46+00:00",
"type": "library",
"installation-source": "dist",
"autoload": {
"classmap": [
- "lib"
+ "src/geshi/",
+ "src/geshi.php"
]
},
"notification-url": "https://packagist.org/downloads/",
"license": [
- "LGPL"
- ],
- "authors": [
- {
- "name": "Andreas Flack",
- "email": "flack@contentcontrol-berlin.de",
- "homepage": "http://www.contentcontrol-berlin.de/"
- }
- ],
- "description": "RSS and Atom feed generator by Kai Blankenhorn",
- "keywords": [
- "atom",
- "georss",
- "gpx",
- "opml",
- "pie",
- "rss"
- ]
- },
- {
- "name": "aziraphale/email-address-validator",
- "version": "2.0.1",
- "version_normalized": "2.0.1.0",
- "source": {
- "type": "git",
- "url": "https://github.com/aziraphale/email-address-validator.git",
- "reference": "fa25bc22c1c0b6491657c91473fae3e40719a650"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/aziraphale/email-address-validator/zipball/fa25bc22c1c0b6491657c91473fae3e40719a650",
- "reference": "fa25bc22c1c0b6491657c91473fae3e40719a650",
- "shasum": ""
- },
- "require-dev": {
- "phpunit/phpunit": "^5.7"
- },
- "time": "2017-05-22T14:05:57+00:00",
- "type": "library",
- "installation-source": "dist",
- "autoload": {
- "psr-0": {
- "EmailAddressValidator": ""
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
+ "GPL-2.0+"
],
"authors": [
{
- "name": "Dave Child",
- "email": "dave@addedbytes.com"
- },
- {
- "name": "Andrew Gillard",
- "email": "andrew@lorddeath.net"
+ "name": "Benny Baumann",
+ "email": "BenBE@geshi.org",
+ "homepage": "http://blog.benny-baumann.de/",
+ "role": "Developer"
}
],
- "description": "Fork of AddedBytes' PHP EmailAddressValidator script, now with Composer support!",
- "homepage": "https://github.com/aziraphale/email-address-validator"
+ "description": "Generic Syntax Highlighter",
+ "homepage": "http://qbnz.com/highlighter/"
},
{
"name": "marcusschwarz/lesserphp",
- "version": "v0.5.1",
- "version_normalized": "0.5.1.0",
+ "version": "v0.5.4",
+ "version_normalized": "0.5.4.0",
"source": {
"type": "git",
"url": "https://github.com/MarcusSchwarz/lesserphp.git",
- "reference": "e9e3d53980c0e486b07c75e12f2bae5e10bdee44"
+ "reference": "3a0f5ae0d63cbb661b5f4afd2f96875e73b3ad7e"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/MarcusSchwarz/lesserphp/zipball/e9e3d53980c0e486b07c75e12f2bae5e10bdee44",
- "reference": "e9e3d53980c0e486b07c75e12f2bae5e10bdee44",
+ "url": "https://api.github.com/repos/MarcusSchwarz/lesserphp/zipball/3a0f5ae0d63cbb661b5f4afd2f96875e73b3ad7e",
+ "reference": "3a0f5ae0d63cbb661b5f4afd2f96875e73b3ad7e",
"shasum": ""
},
"require-dev": {
"phpunit/phpunit": "~4.3"
},
- "time": "2016-09-30T11:13:18+00:00",
+ "time": "2020-01-19T19:18:49+00:00",
"bin": [
"plessc"
],
@@ -189,148 +139,89 @@
"homepage": "http://leafo.net/lessphp/"
},
{
- "name": "paragonie/random_compat",
- "version": "v2.0.12",
- "version_normalized": "2.0.12.0",
+ "name": "openpsa/universalfeedcreator",
+ "version": "v1.8.3.2",
+ "version_normalized": "1.8.3.2",
"source": {
"type": "git",
- "url": "https://github.com/paragonie/random_compat.git",
- "reference": "258c89a6b97de7dfaf5b8c7607d0478e236b04fb"
+ "url": "https://github.com/flack/UniversalFeedCreator.git",
+ "reference": "906745196469b13ceefa6523ef04851a78ad10f4"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/paragonie/random_compat/zipball/258c89a6b97de7dfaf5b8c7607d0478e236b04fb",
- "reference": "258c89a6b97de7dfaf5b8c7607d0478e236b04fb",
+ "url": "https://api.github.com/repos/flack/UniversalFeedCreator/zipball/906745196469b13ceefa6523ef04851a78ad10f4",
+ "reference": "906745196469b13ceefa6523ef04851a78ad10f4",
"shasum": ""
},
"require": {
- "php": ">=5.2.0"
+ "php": ">=5.0"
},
"require-dev": {
- "phpunit/phpunit": "4.*|5.*"
- },
- "suggest": {
- "ext-libsodium": "Provides a modern crypto API that can be used to generate random bytes."
+ "phpunit/phpunit": "*"
},
- "time": "2018-04-04T21:24:14+00:00",
+ "time": "2019-09-01T17:49:46+00:00",
"type": "library",
"installation-source": "dist",
"autoload": {
+ "classmap": [
+ "lib"
+ ],
"files": [
- "lib/random.php"
+ "lib/constants.php"
]
},
"notification-url": "https://packagist.org/downloads/",
"license": [
- "MIT"
+ "LGPL-2.1-or-later"
],
"authors": [
{
- "name": "Paragon Initiative Enterprises",
- "email": "security@paragonie.com",
- "homepage": "https://paragonie.com"
- }
- ],
- "description": "PHP 5.x polyfill for random_bytes() and random_int() from PHP 7",
- "keywords": [
- "csprng",
- "pseudorandom",
- "random"
- ]
- },
- {
- "name": "simplepie/simplepie",
- "version": "1.5.1",
- "version_normalized": "1.5.1.0",
- "source": {
- "type": "git",
- "url": "https://github.com/simplepie/simplepie.git",
- "reference": "db9fff27b6d49eed3d4047cd3211ec8dba2f5d6e"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/simplepie/simplepie/zipball/db9fff27b6d49eed3d4047cd3211ec8dba2f5d6e",
- "reference": "db9fff27b6d49eed3d4047cd3211ec8dba2f5d6e",
- "shasum": ""
- },
- "require": {
- "php": ">=5.3.0"
- },
- "require-dev": {
- "phpunit/phpunit": "~4 || ~5"
- },
- "suggest": {
- "mf2/mf2": "Microformat module that allows for parsing HTML for microformats"
- },
- "time": "2017-11-12T02:03:34+00:00",
- "type": "library",
- "installation-source": "dist",
- "autoload": {
- "psr-0": {
- "SimplePie": "library"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Ryan Parman",
- "homepage": "http://ryanparman.com/",
- "role": "Creator, alumnus developer"
- },
- {
- "name": "Geoffrey Sneddon",
- "homepage": "http://gsnedders.com/",
- "role": "Alumnus developer"
- },
- {
- "name": "Ryan McCue",
- "email": "me@ryanmccue.info",
- "homepage": "http://ryanmccue.info/",
- "role": "Developer"
+ "name": "Andreas Flack",
+ "email": "flack@contentcontrol-berlin.de",
+ "homepage": "http://www.contentcontrol-berlin.de/"
}
],
- "description": "A simple Atom/RSS parsing library for PHP",
- "homepage": "http://simplepie.org/",
+ "description": "RSS and Atom feed generator by Kai Blankenhorn",
"keywords": [
"atom",
- "feeds",
+ "georss",
+ "gpx",
+ "opml",
+ "pie",
"rss"
]
},
{
- "name": "splitbrain/php-cli",
- "version": "1.1.2",
- "version_normalized": "1.1.2.0",
+ "name": "paragonie/random_compat",
+ "version": "v2.0.18",
+ "version_normalized": "2.0.18.0",
"source": {
"type": "git",
- "url": "https://github.com/splitbrain/php-cli.git",
- "reference": "1d6f0bf9eccbfd79d1f4d185ef27573601185c23"
+ "url": "https://github.com/paragonie/random_compat.git",
+ "reference": "0a58ef6e3146256cc3dc7cc393927bcc7d1b72db"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/splitbrain/php-cli/zipball/1d6f0bf9eccbfd79d1f4d185ef27573601185c23",
- "reference": "1d6f0bf9eccbfd79d1f4d185ef27573601185c23",
+ "url": "https://api.github.com/repos/paragonie/random_compat/zipball/0a58ef6e3146256cc3dc7cc393927bcc7d1b72db",
+ "reference": "0a58ef6e3146256cc3dc7cc393927bcc7d1b72db",
"shasum": ""
},
"require": {
- "php": ">=5.3.0"
+ "php": ">=5.2.0"
},
"require-dev": {
- "phpunit/phpunit": "4.5.*"
+ "phpunit/phpunit": "4.*|5.*"
},
"suggest": {
- "psr/log": "Allows you to make the CLI available as PSR-3 logger"
+ "ext-libsodium": "Provides a modern crypto API that can be used to generate random bytes."
},
- "time": "2018-02-02T08:46:12+00:00",
+ "time": "2019-01-03T20:59:08+00:00",
"type": "library",
"installation-source": "dist",
"autoload": {
- "psr-4": {
- "splitbrain\\phpcli\\": "src"
- }
+ "files": [
+ "lib/random.php"
+ ]
},
"notification-url": "https://packagist.org/downloads/",
"license": [
@@ -338,34 +229,32 @@
],
"authors": [
{
- "name": "Andreas Gohr",
- "email": "andi@splitbrain.org"
+ "name": "Paragon Initiative Enterprises",
+ "email": "security@paragonie.com",
+ "homepage": "https://paragonie.com"
}
],
- "description": "Easy command line scripts for PHP with opt parsing and color output. No dependencies",
+ "description": "PHP 5.x polyfill for random_bytes() and random_int() from PHP 7",
"keywords": [
- "argparse",
- "cli",
- "command line",
- "console",
- "getopt",
- "optparse",
- "terminal"
+ "csprng",
+ "polyfill",
+ "pseudorandom",
+ "random"
]
},
{
"name": "phpseclib/phpseclib",
- "version": "2.0.11",
- "version_normalized": "2.0.11.0",
+ "version": "2.0.27",
+ "version_normalized": "2.0.27.0",
"source": {
"type": "git",
"url": "https://github.com/phpseclib/phpseclib.git",
- "reference": "7053f06f91b3de78e143d430e55a8f7889efc08b"
+ "reference": "34620af4df7d1988d8f0d7e91f6c8a3bf931d8dc"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/phpseclib/phpseclib/zipball/7053f06f91b3de78e143d430e55a8f7889efc08b",
- "reference": "7053f06f91b3de78e143d430e55a8f7889efc08b",
+ "url": "https://api.github.com/repos/phpseclib/phpseclib/zipball/34620af4df7d1988d8f0d7e91f6c8a3bf931d8dc",
+ "reference": "34620af4df7d1988d8f0d7e91f6c8a3bf931d8dc",
"shasum": ""
},
"require": {
@@ -383,7 +272,7 @@
"ext-mcrypt": "Install the Mcrypt extension in order to speed up a few other cryptographic operations.",
"ext-openssl": "Install the OpenSSL extension in order to speed up a wide variety of cryptographic operations."
},
- "time": "2018-04-15T16:55:05+00:00",
+ "time": "2020-04-04T23:17:33+00:00",
"type": "library",
"installation-source": "dist",
"autoload": {
@@ -445,21 +334,104 @@
"twofish",
"x.509",
"x509"
+ ],
+ "funding": [
+ {
+ "url": "https://github.com/terrafrost",
+ "type": "github"
+ },
+ {
+ "url": "https://www.patreon.com/phpseclib",
+ "type": "patreon"
+ },
+ {
+ "url": "https://tidelift.com/funding/github/packagist/phpseclib/phpseclib",
+ "type": "tidelift"
+ }
+ ]
+ },
+ {
+ "name": "simplepie/simplepie",
+ "version": "1.5.5",
+ "version_normalized": "1.5.5.0",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/simplepie/simplepie.git",
+ "reference": "ae49e2201b6da9c808e5dac437aca356a11831b4"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/simplepie/simplepie/zipball/ae49e2201b6da9c808e5dac437aca356a11831b4",
+ "reference": "ae49e2201b6da9c808e5dac437aca356a11831b4",
+ "shasum": ""
+ },
+ "require": {
+ "ext-pcre": "*",
+ "ext-xml": "*",
+ "ext-xmlreader": "*",
+ "php": ">=5.6.0"
+ },
+ "require-dev": {
+ "phpunit/phpunit": "~5.4.3 || ~6.5"
+ },
+ "suggest": {
+ "ext-curl": "",
+ "ext-iconv": "",
+ "ext-intl": "",
+ "ext-mbstring": "",
+ "mf2/mf2": "Microformat module that allows for parsing HTML for microformats"
+ },
+ "time": "2020-05-01T12:23:14+00:00",
+ "type": "library",
+ "installation-source": "dist",
+ "autoload": {
+ "psr-0": {
+ "SimplePie": "library"
+ }
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "BSD-3-Clause"
+ ],
+ "authors": [
+ {
+ "name": "Ryan Parman",
+ "homepage": "http://ryanparman.com/",
+ "role": "Creator, alumnus developer"
+ },
+ {
+ "name": "Sam Sneddon",
+ "homepage": "https://gsnedders.com/",
+ "role": "Alumnus developer"
+ },
+ {
+ "name": "Ryan McCue",
+ "email": "me@ryanmccue.info",
+ "homepage": "http://ryanmccue.info/",
+ "role": "Developer"
+ }
+ ],
+ "description": "A simple Atom/RSS parsing library for PHP",
+ "homepage": "http://simplepie.org/",
+ "keywords": [
+ "atom",
+ "feeds",
+ "rss"
]
},
{
"name": "splitbrain/php-archive",
- "version": "1.0.10",
- "version_normalized": "1.0.10.0",
+ "version": "1.1.1",
+ "version_normalized": "1.1.1.0",
"source": {
"type": "git",
"url": "https://github.com/splitbrain/php-archive.git",
- "reference": "a46f3aaeb9f123fdb7db4e192b0600feebf7f773"
+ "reference": "10d89013572ba1f4d4ad7fcb74860242f4c3860b"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/splitbrain/php-archive/zipball/a46f3aaeb9f123fdb7db4e192b0600feebf7f773",
- "reference": "a46f3aaeb9f123fdb7db4e192b0600feebf7f773",
+ "url": "https://api.github.com/repos/splitbrain/php-archive/zipball/10d89013572ba1f4d4ad7fcb74860242f4c3860b",
+ "reference": "10d89013572ba1f4d4ad7fcb74860242f4c3860b",
"shasum": ""
},
"require": {
@@ -475,7 +447,7 @@
"ext-iconv": "Used for proper filename encode handling",
"ext-mbstring": "Can be used alternatively for handling filename encoding"
},
- "time": "2018-05-01T08:03:56+00:00",
+ "time": "2018-09-09T12:13:53+00:00",
"type": "library",
"installation-source": "dist",
"autoload": {
@@ -502,5 +474,58 @@
"unzip",
"zip"
]
+ },
+ {
+ "name": "splitbrain/php-cli",
+ "version": "1.1.6",
+ "version_normalized": "1.1.6.0",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/splitbrain/php-cli.git",
+ "reference": "b7be3726872547253dd0bd61098fa9f634c33555"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/splitbrain/php-cli/zipball/b7be3726872547253dd0bd61098fa9f634c33555",
+ "reference": "b7be3726872547253dd0bd61098fa9f634c33555",
+ "shasum": ""
+ },
+ "require": {
+ "php": ">=5.3.0"
+ },
+ "require-dev": {
+ "phpunit/phpunit": "4.5.*"
+ },
+ "suggest": {
+ "psr/log": "Allows you to make the CLI available as PSR-3 logger"
+ },
+ "time": "2019-10-16T07:31:14+00:00",
+ "type": "library",
+ "installation-source": "dist",
+ "autoload": {
+ "psr-4": {
+ "splitbrain\\phpcli\\": "src"
+ }
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "MIT"
+ ],
+ "authors": [
+ {
+ "name": "Andreas Gohr",
+ "email": "andi@splitbrain.org"
+ }
+ ],
+ "description": "Easy command line scripts for PHP with opt parsing and color output. No dependencies",
+ "keywords": [
+ "argparse",
+ "cli",
+ "command line",
+ "console",
+ "getopt",
+ "optparse",
+ "terminal"
+ ]
}
]
diff --git a/vendor/geshi/geshi/.gitignore b/vendor/geshi/geshi/.gitignore
index 44e52f21a..75fda85d5 100644
--- a/vendor/geshi/geshi/.gitignore
+++ b/vendor/geshi/geshi/.gitignore
@@ -1,3 +1,5 @@
-dist
-build.properties
+/build.properties
+/composer.lock
+/dist/
+/vendor/
diff --git a/vendor/geshi/geshi/CHANGELOG b/vendor/geshi/geshi/CHANGELOG
index 514e1a895..93fa76cdf 100644
--- a/vendor/geshi/geshi/CHANGELOG
+++ b/vendor/geshi/geshi/CHANGELOG
@@ -12,6 +12,26 @@ modified by me for consistency/bug fixing.
Please send any bug reports to BenBE@omorphia.de, or use the bug report tracker
at sourceforge (http://sourceforge.net/tracker/?group_id=114997&atid=670231)
+Version 1.0.9.1
+ - Added language files
+ * OpenSSH config (Kevin Ernst)
+ * roff (Artur Iwicki)
+ * Wolfram (Mysterious Light)
+ - Some minor tweaks for RFC822 email support (BenBE)
+ - Introduce strip_language function (phy25)
+ - Recognize additional file extensions (RealityRipple)
+ - Code style update by avoiding create_function (cweiske)
+ - Backported CLI tool from GeSHi 1.1 branch (cweiske)
+ - Improvements to language files
+ * bash: Update list of keywords (apjanke)
+ * Haskell: Updated doc links and types from Prelude (Jeremy Singer)
+ * INI files: support single quotes (peterdd)
+ * Matlab: Add keywords and functions from recent Matlab releases (apjanke)
+ * MySQL: Some missing keywords (Abu3safeer)
+ * MySQL: Updated documentation links (splitbrain)
+ * R/S+: Fix broken linking of keywords (BenBE)
+ * SciLab: Fix broken linking of keywords (BenBE)
+ * SQL: Some missing keywords (peterdd)
Version 1.0.9.0
- Add public/protected method & property visibility.
THIS MAY BREAK YOUR CODE
diff --git a/vendor/geshi/geshi/README.md b/vendor/geshi/geshi/README.md
index 6f6756804..6c49bc17a 100644
--- a/vendor/geshi/geshi/README.md
+++ b/vendor/geshi/geshi/README.md
@@ -1,6 +1,6 @@
GeSHi - Generic Syntax Highlighter
==================================
-### Version 1.0.9.0
+### Version 1.0.9.1
Author: [Benny Baumann](http://blog.benny-baumann.de/), [Nigel McNie](http://nigel.mcnie.name/)
Email: <BenBE@geshi.org>, <nigel@geshi.org>
diff --git a/vendor/geshi/geshi/THANKS b/vendor/geshi/geshi/THANKS
index c52d7fd3b..1ed6e885d 100644
--- a/vendor/geshi/geshi/THANKS
+++ b/vendor/geshi/geshi/THANKS
@@ -187,6 +187,7 @@ PEOPE WHO MADE LANGUAGE FILES
- Octave Carnë Draug, Juan Pablo Carbajal
- OpenBSD Packet Filter David Berard
- OpenOffice.org BASIC Roberto Rossi
+- OpenSSH config Kevin Ernst
- Oracle 8 Guy Wicks
- Oracle 11i Simon Redhead
- Oxygene (Delphi Prism) Carlo Kok
@@ -227,6 +228,7 @@ PEOPE WHO MADE LANGUAGE FILES
- Reg SmokingRope
- Rexx Jon Wolfers
- Robots Christian Lescuyer
+- roff Artur Iwicki
- RPM Specification File Paul Grinberg
- Ruby Amit Gupta, Moises Deniz
- Rust Dave Hodder
@@ -272,6 +274,7 @@ PEOPE WHO MADE LANGUAGE FILES
- Whois \ RPSL format Benny Baumann
- Winbatch Craig Storey
- Windows Batch FraidZZ
+- Wolfram Mysterious Light
- X++ Simon Butcher
- XBasic José Gabriel Moya Yangüela
- Xojo Garry Pettet
diff --git a/vendor/geshi/geshi/build.xml b/vendor/geshi/geshi/build.xml
index d9bae0f33..198db1354 100644
--- a/vendor/geshi/geshi/build.xml
+++ b/vendor/geshi/geshi/build.xml
@@ -8,7 +8,7 @@
-->
<property file="build.properties" />
- <property name="version" value="1.0.9.0" />
+ <property name="version" value="1.0.9.1" />
<property name="stability" value="stable" />
<property name="zipfile" value="${phing.project.name}-${version}.zip" />
<property name="gzfile" value="${phing.project.name}-${version}.tar.gz" />
@@ -19,7 +19,7 @@
<property name="sffilepath" value="g/ge/geshi/" />
<property name="releasenotes" value="
-Version 1.0.9.0
+Version 1.0.9.1
" />
diff --git a/vendor/geshi/geshi/composer.json b/vendor/geshi/geshi/composer.json
index 95f844aed..1dd3f7eb5 100644
--- a/vendor/geshi/geshi/composer.json
+++ b/vendor/geshi/geshi/composer.json
@@ -20,6 +20,6 @@
"classmap": ["src/geshi/", "src/geshi.php"]
},
"require-dev": {
- "phpunit/phpunit": "^5.7"
+ "phpunit/phpunit": "^5.7 || ^6.5 || ^7.5 || ^8.2"
}
}
diff --git a/vendor/geshi/geshi/src/geshi.php b/vendor/geshi/geshi/src/geshi.php
index c353299b3..cf5e16329 100644
--- a/vendor/geshi/geshi/src/geshi.php
+++ b/vendor/geshi/geshi/src/geshi.php
@@ -40,7 +40,7 @@
//
/** The version of this GeSHi file */
-define('GESHI_VERSION', '1.0.9.0');
+define('GESHI_VERSION', '1.0.9.1');
// Define the root directory for the GeSHi code tree
if (!defined('GESHI_ROOT')) {
@@ -628,6 +628,19 @@ class GeSHi {
}
/**
+ * Clean up the language name to prevent malicious code injection
+ *
+ * @param string $language The name of the language to strip
+ * @since 1.0.9.1
+ */
+ public function strip_language_name($language) {
+ $language = preg_replace('#[^a-zA-Z0-9\-_]#', '', $language);
+ $language = strtolower($language);
+
+ return $language;
+ }
+
+ /**
* Sets the language for this object
*
* @note since 1.0.8 this function won't reset language-settings by default anymore!
@@ -646,9 +659,7 @@ class GeSHi {
}
//Clean up the language name to prevent malicious code injection
- $language = preg_replace('#[^a-zA-Z0-9\-_]#', '', $language);
-
- $language = strtolower($language);
+ $language = $this->strip_language_name($language);
//Retreive the full filename
$file_name = $this->language_path . $language . '.php';
@@ -1472,7 +1483,7 @@ class GeSHi {
'haskell' => array('hs'),
'haxe' => array('hx'),
'html4strict' => array('html', 'htm'),
- 'ini' => array('ini', 'desktop'),
+ 'ini' => array('ini', 'desktop', 'vbp'),
'java' => array('java'),
'javascript' => array('js'),
'klonec' => array('kl1'),
@@ -1506,11 +1517,11 @@ class GeSHi {
'smarty' => array(),
'tcl' => array('tcl'),
'text' => array('txt'),
- 'vb' => array('bas'),
- 'vbnet' => array(),
+ 'vb' => array('bas', 'ctl', 'frm'),
+ 'vbnet' => array('vb', 'sln'),
'visualfoxpro' => array(),
'whitespace' => array('ws'),
- 'xml' => array('xml', 'svg', 'xrc'),
+ 'xml' => array('xml', 'svg', 'xrc', 'vbproj', 'csproj', 'userprefs', 'resx', 'stetic', 'settings', 'manifest', 'myapp'),
'z80' => array('z80', 'asm', 'inc')
);
}
@@ -1959,6 +1970,11 @@ class GeSHi {
* @since 1.0.8
*/
protected function build_parse_cache() {
+ // check whether language_data is available
+ if (empty($this->language_data)) {
+ return false;
+ }
+
// cache symbol regexp
//As this is a costy operation, we avoid doing it for multiple groups ...
//Instead we perform it for all symbols at once.
@@ -2140,7 +2156,7 @@ class GeSHi {
*
* @since 1.0.0
*/
- public function parse_code () {
+ public function parse_code() {
// Start the timer
$start_time = microtime();
@@ -2148,6 +2164,11 @@ class GeSHi {
$code = str_replace("\r\n", "\n", $this->source);
$code = str_replace("\r", "\n", $code);
+ // check whether language_data is available
+ if (empty($this->language_data)) {
+ $this->error = GESHI_ERROR_NO_SUCH_LANG;
+ }
+
// Firstly, if there is an error, we won't highlight
if ($this->error) {
//Escape the source for output
@@ -4024,7 +4045,7 @@ class GeSHi {
$parsed_code .= str_repeat('</span>', $close);
$close = 0;
}
- if ($i + 1 < $n) {
+ elseif ($i + 1 < $n) {
$parsed_code .= "\n";
}
unset($code[$i]);
@@ -4695,7 +4716,9 @@ class GeSHi {
// TODO: a|bb|c => [ac]|bb
static $callback_2;
if (!isset($callback_2)) {
- $callback_2 = create_function('$matches', 'return "[" . str_replace("|", "", $matches[1]) . "]";');
+ $callback_2 = function($matches) {
+ return "[" . str_replace("|", "", $matches[1]) . "]";
+ };
}
$list = preg_replace_callback('#\(\?\:((?:.\|)+.)\)#', $callback_2, $list);
}
diff --git a/vendor/geshi/geshi/src/geshi/4cs.php b/vendor/geshi/geshi/src/geshi/4cs.php
index cae453f66..228d523e5 100644
--- a/vendor/geshi/geshi/src/geshi/4cs.php
+++ b/vendor/geshi/geshi/src/geshi/4cs.php
@@ -4,7 +4,7 @@
* ------
* Author: Jason Curl (jason.curl@continental-corporation.com)
* Copyright: (c) 2009 Jason Curl
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2009/09/05
*
* 4CS language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/6502acme.php b/vendor/geshi/geshi/src/geshi/6502acme.php
index a11a108fc..5d40da987 100644
--- a/vendor/geshi/geshi/src/geshi/6502acme.php
+++ b/vendor/geshi/geshi/src/geshi/6502acme.php
@@ -4,7 +4,7 @@
* -------
* Author: Warren Willmey
* Copyright: (c) 2010 Warren Willmey.
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2010/05/26
*
* MOS 6502 (more specifically 6510) ACME Cross Assembler 0.93 by Marco Baye language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/6502kickass.php b/vendor/geshi/geshi/src/geshi/6502kickass.php
index 9da8f2407..1ddbc597e 100644
--- a/vendor/geshi/geshi/src/geshi/6502kickass.php
+++ b/vendor/geshi/geshi/src/geshi/6502kickass.php
@@ -4,7 +4,7 @@
* -------
* Author: Warren Willmey
* Copyright: (c) 2010 Warren Willmey.
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2010/06/07
*
* MOS 6502 (6510) Kick Assembler 3.13 language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/6502tasm.php b/vendor/geshi/geshi/src/geshi/6502tasm.php
index 4ce348f42..539db014f 100644
--- a/vendor/geshi/geshi/src/geshi/6502tasm.php
+++ b/vendor/geshi/geshi/src/geshi/6502tasm.php
@@ -4,7 +4,7 @@
* -------
* Author: Warren Willmey
* Copyright: (c) 2010 Warren Willmey.
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2010/06/02
*
* MOS 6502 (6510) TASM/64TASS (64TASS being the super set of TASM) language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/68000devpac.php b/vendor/geshi/geshi/src/geshi/68000devpac.php
index 96a9d0820..db5c85b25 100644
--- a/vendor/geshi/geshi/src/geshi/68000devpac.php
+++ b/vendor/geshi/geshi/src/geshi/68000devpac.php
@@ -4,7 +4,7 @@
* -------
* Author: Warren Willmey
* Copyright: (c) 2010 Warren Willmey.
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2010/06/09
*
* Motorola 68000 - HiSoft Devpac ST 2 Assembler language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/abap.php b/vendor/geshi/geshi/src/geshi/abap.php
index d9df3ea88..99536f022 100644
--- a/vendor/geshi/geshi/src/geshi/abap.php
+++ b/vendor/geshi/geshi/src/geshi/abap.php
@@ -7,7 +7,7 @@
* - Sandra Rossi (sandra.rossi@gmail.com)
* - Jacob Laursen (jlu@kmd.dk)
* Copyright: (c) 2007 Andres Picazo
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2004/06/04
*
* ABAP language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/actionscript.php b/vendor/geshi/geshi/src/geshi/actionscript.php
index bbafbdfc9..d350a18a7 100644
--- a/vendor/geshi/geshi/src/geshi/actionscript.php
+++ b/vendor/geshi/geshi/src/geshi/actionscript.php
@@ -4,7 +4,7 @@
* ----------------
* Author: Steffen Krause (Steffen.krause@muse.de)
* Copyright: (c) 2004 Steffen Krause, Nigel McNie (http://qbnz.com/highlighter)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2004/06/20
*
* Actionscript language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/actionscript3.php b/vendor/geshi/geshi/src/geshi/actionscript3.php
index 20dcf5d56..351b6b0b3 100644
--- a/vendor/geshi/geshi/src/geshi/actionscript3.php
+++ b/vendor/geshi/geshi/src/geshi/actionscript3.php
@@ -4,7 +4,7 @@
* ----------------
* Author: Jordi Boggiano (j.boggiano@seld.be)
* Copyright: (c) 2007 Jordi Boggiano (http://www.seld.be/), Benny Baumann (http://qbnz.com/highlighter)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2007/11/26
*
* ActionScript3 language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/ada.php b/vendor/geshi/geshi/src/geshi/ada.php
index bad8595be..0eb0b7c6d 100644
--- a/vendor/geshi/geshi/src/geshi/ada.php
+++ b/vendor/geshi/geshi/src/geshi/ada.php
@@ -4,7 +4,7 @@
* -------
* Author: Tux (tux@inmail.cz)
* Copyright: (c) 2004 Tux (http://tux.a4.cz/), Nigel McNie (http://qbnz.com/highlighter)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2004/07/29
*
* Ada language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/aimms.php b/vendor/geshi/geshi/src/geshi/aimms.php
index ea49b8e63..6c653917c 100644
--- a/vendor/geshi/geshi/src/geshi/aimms.php
+++ b/vendor/geshi/geshi/src/geshi/aimms.php
@@ -4,7 +4,7 @@
* --------
* Author: Guido Diepen (guido.diepen@aimms.com)
* Copyright: (c) 2011 Guido Diepen (http://www.aimms.com)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2011/05/05
*
* AIMMS language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/algol68.php b/vendor/geshi/geshi/src/geshi/algol68.php
index f1555c61a..956d35c1b 100644
--- a/vendor/geshi/geshi/src/geshi/algol68.php
+++ b/vendor/geshi/geshi/src/geshi/algol68.php
@@ -4,7 +4,7 @@
* --------
* Author: Neville Dempsey (NevilleD.sourceforge@sgr-a.net)
* Copyright: (c) 2010 Neville Dempsey (https://sourceforge.net/projects/algol68/files/)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2010/04/24
*
* ALGOL 68 language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/apache.php b/vendor/geshi/geshi/src/geshi/apache.php
index da1f5dd22..8db1b9a33 100644
--- a/vendor/geshi/geshi/src/geshi/apache.php
+++ b/vendor/geshi/geshi/src/geshi/apache.php
@@ -4,7 +4,7 @@
* ----------
* Author: Tux (tux@inmail.cz)
* Copyright: (c) 2004 Tux (http://tux.a4.cz/), Nigel McNie (http://qbnz.com/highlighter)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2004/29/07
*
* Apache language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/applescript.php b/vendor/geshi/geshi/src/geshi/applescript.php
index e71eb327d..c46912fc1 100644
--- a/vendor/geshi/geshi/src/geshi/applescript.php
+++ b/vendor/geshi/geshi/src/geshi/applescript.php
@@ -4,7 +4,7 @@
* --------
* Author: Stephan Klimek (http://www.initware.org)
* Copyright: Stephan Klimek (http://www.initware.org)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2005/07/20
*
* AppleScript language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/apt_sources.php b/vendor/geshi/geshi/src/geshi/apt_sources.php
index 49c51b06e..6e9790927 100644
--- a/vendor/geshi/geshi/src/geshi/apt_sources.php
+++ b/vendor/geshi/geshi/src/geshi/apt_sources.php
@@ -4,7 +4,7 @@
* ----------
* Author: Milian Wolff (mail@milianw.de)
* Copyright: (c) 2008 Milian Wolff (http://milianw.de)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2008/06/17
*
* Apt sources.list language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/arm.php b/vendor/geshi/geshi/src/geshi/arm.php
index 86b71e1b1..8ac526403 100644
--- a/vendor/geshi/geshi/src/geshi/arm.php
+++ b/vendor/geshi/geshi/src/geshi/arm.php
@@ -4,7 +4,7 @@
* -------
* Author: Marat Dukhan (mdukhan3.at.gatech.dot.edu)
* Copyright: (c) Marat Dukhan (mdukhan3.at.gatech.dot.edu)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2011/10/06
*
* ARM Assembler language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/asm.php b/vendor/geshi/geshi/src/geshi/asm.php
index 606f2f487..44a70ca05 100644
--- a/vendor/geshi/geshi/src/geshi/asm.php
+++ b/vendor/geshi/geshi/src/geshi/asm.php
@@ -8,7 +8,7 @@
* 2009-2011 Benny Baumann (http://qbnz.com/highlighter),
* 2011 Dennis Yurichev (dennis@conus.info),
* 2011 Marat Dukhan (mdukhan3.at.gatech.dot.edu)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2004/07/27
*
* x86 Assembler language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/asp.php b/vendor/geshi/geshi/src/geshi/asp.php
index 6ba8f98c2..db9daae95 100644
--- a/vendor/geshi/geshi/src/geshi/asp.php
+++ b/vendor/geshi/geshi/src/geshi/asp.php
@@ -4,7 +4,7 @@
* --------
* Author: Amit Gupta (http://blog.igeek.info/)
* Copyright: (c) 2004 Amit Gupta (http://blog.igeek.info/), Nigel McNie (http://qbnz.com/highlighter)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2004/08/13
*
* ASP language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/asymptote.php b/vendor/geshi/geshi/src/geshi/asymptote.php
index a75a6299e..a701ae957 100644
--- a/vendor/geshi/geshi/src/geshi/asymptote.php
+++ b/vendor/geshi/geshi/src/geshi/asymptote.php
@@ -4,7 +4,7 @@
* -------------
* Author: Manuel Yguel (manuel.yguel.robotics@gmail.com)
* Copyright: (c) 2012 Manuel Yguel (http://manuelyguel.eu)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2012/05/24
*
* asymptote language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/autoconf.php b/vendor/geshi/geshi/src/geshi/autoconf.php
index 9c1cf125b..f7090fed6 100644
--- a/vendor/geshi/geshi/src/geshi/autoconf.php
+++ b/vendor/geshi/geshi/src/geshi/autoconf.php
@@ -4,7 +4,7 @@
* -----
* Author: Mihai Vasilian (grayasm@gmail.com)
* Copyright: (c) 2010 Mihai Vasilian
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2010/01/25
*
* autoconf language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/autohotkey.php b/vendor/geshi/geshi/src/geshi/autohotkey.php
index 4a47d7302..03a03ab64 100644
--- a/vendor/geshi/geshi/src/geshi/autohotkey.php
+++ b/vendor/geshi/geshi/src/geshi/autohotkey.php
@@ -4,7 +4,7 @@
* --------
* Author: Naveen Garg (naveen.garg@gmail.com)
* Copyright: (c) 2009 Naveen Garg and GeSHi
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2009/06/11
*
* Autohotkey language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/autoit.php b/vendor/geshi/geshi/src/geshi/autoit.php
index 5742afef5..2286aaec9 100644
--- a/vendor/geshi/geshi/src/geshi/autoit.php
+++ b/vendor/geshi/geshi/src/geshi/autoit.php
@@ -4,7 +4,7 @@
* --------
* Author: big_daddy, guinness & Tlem
* Copyright: (c) 2006-2015
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2006/01/26
*
* AutoIt: v3.3.14.2
diff --git a/vendor/geshi/geshi/src/geshi/avisynth.php b/vendor/geshi/geshi/src/geshi/avisynth.php
index cbd8a1207..ea9fc9a78 100644
--- a/vendor/geshi/geshi/src/geshi/avisynth.php
+++ b/vendor/geshi/geshi/src/geshi/avisynth.php
@@ -4,7 +4,7 @@
* --------
* Author: Ryan Jones (sciguyryan@gmail.com)
* Copyright: (c) 2008 Ryan Jones
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2008/10/08
*
* AviSynth language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/awk.php b/vendor/geshi/geshi/src/geshi/awk.php
index e94e64f32..f116b81a9 100644
--- a/vendor/geshi/geshi/src/geshi/awk.php
+++ b/vendor/geshi/geshi/src/geshi/awk.php
@@ -4,7 +4,7 @@
* -------
* Author: George Pollard (porges@porg.es)
* Copyright: (c) 2009 George Pollard
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2009/01/28
*
* Awk language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/bascomavr.php b/vendor/geshi/geshi/src/geshi/bascomavr.php
index 96ec60908..90d8506bb 100644
--- a/vendor/geshi/geshi/src/geshi/bascomavr.php
+++ b/vendor/geshi/geshi/src/geshi/bascomavr.php
@@ -4,7 +4,7 @@
* ---------------------------------
* Author: aquaticus.info
* Copyright: (c) 2008 aquaticus.info
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2008/01/09
*
* BASCOM AVR language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/bash.php b/vendor/geshi/geshi/src/geshi/bash.php
index d9752155d..939b23aaa 100644
--- a/vendor/geshi/geshi/src/geshi/bash.php
+++ b/vendor/geshi/geshi/src/geshi/bash.php
@@ -4,7 +4,7 @@
* --------
* Author: Andreas Gohr (andi@splitbrain.org)
* Copyright: (c) 2004 Andreas Gohr, Nigel McNie (http://qbnz.com/highlighter)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2004/08/20
*
* BASH language file for GeSHi.
@@ -88,10 +88,12 @@ $language_data = array (
5 => "/`[^`]*`/"
),
'KEYWORDS' => array(
+ // Control flow keywords and super-important builtins
1 => array(
'case', 'do', 'done', 'elif', 'else', 'esac', 'fi', 'for', 'function',
- 'if', 'in', 'select', 'set', 'then', 'until', 'while', 'time'
+ 'if', 'in', 'select', 'set', 'then', 'time', 'until', 'while'
),
+ // Common Unix commands
2 => array(
'aclocal', 'aconnect', 'apachectl', 'apache2ctl', 'aplay', 'apm',
'apmsleep', 'apropos', 'apt-cache', 'apt-cdrom', 'apt-config',
@@ -265,7 +267,7 @@ $language_data = array (
'jar', 'java', 'javac', 'join',
- 'kbd_mode','kbdrate', 'kdialog', 'kfile', 'kill', 'killall',
+ 'kbd_mode','kbdrate', 'kdialog', 'kfile', 'killall',
'lame', 'last', 'lastb', 'ld', 'ld86', 'ldd', 'less', 'lex', 'link',
'ln', 'loadkeys', 'loadunimap', 'locate', 'lockfile', 'login',
@@ -286,7 +288,7 @@ $language_data = array (
'ps2pdf', 'ps2ps', 'psbook', 'psmerge', 'psnup', 'psresize',
'psselect', 'pstops',
- 'rbash', 'rcs', 'rcs2log', 'read', 'readlink', 'red', 'resizecons',
+ 'rbash', 'rcs', 'rcs2log', 'readlink', 'red', 'resizecons',
'rev', 'rm', 'rmdir', 'rsh', 'run-parts',
'sash', 'scp', 'screen', 'sed', 'seq', 'sendmail', 'setfont',
@@ -365,15 +367,16 @@ $language_data = array (
'zgrep', 'zip', 'zipgrep', 'zipinfo', 'zless', 'zmore', 'znew',
'zsh', 'zsoelim'
),
+ // Builtin commands
3 => array(
- 'alias', 'bg', 'bind', 'break', 'builtin', 'cd', 'command',
- 'compgen', 'complete', 'continue', 'declare', 'dirs', 'disown',
+ 'alias', 'bg', 'bind', 'break', 'builtin', 'caller', 'cd', 'command',
+ 'compgen', 'complete', 'compopt', 'continue', 'coproc', 'declare', 'dirs', 'disown',
'echo', 'enable', 'eval', 'exec', 'exit', 'export', 'fc',
- 'fg', 'getopts', 'hash', 'help', 'history', 'jobs', 'let',
- 'local', 'logout', 'popd', 'printf', 'pushd', 'pwd', 'readonly',
- 'return', 'shift', 'shopt', 'source', 'suspend', 'test', 'times',
- 'trap', 'type', 'typeset', 'ulimit', 'umask', 'unalias', 'unset',
- 'wait'
+ 'fg', 'getopts', 'hash', 'help', 'history', 'jobs', 'kill', 'let',
+ 'local', 'logout', 'mapfile', 'popd', 'printf', 'pushd', 'pwd', 'read',
+ 'readarray', 'readonly', 'return', 'shift', 'shopt', 'source',
+ 'suspend', 'test', 'times', 'trap', 'type', 'typeset', 'ulimit',
+ 'umask', 'unalias', 'unset', 'wait'
)
),
'SYMBOLS' => array(
diff --git a/vendor/geshi/geshi/src/geshi/basic4gl.php b/vendor/geshi/geshi/src/geshi/basic4gl.php
index 499428f8b..ab4b6ef38 100644
--- a/vendor/geshi/geshi/src/geshi/basic4gl.php
+++ b/vendor/geshi/geshi/src/geshi/basic4gl.php
@@ -4,7 +4,7 @@
* ---------------------------------
* Author: Matthew Webb (bmatthew1@blueyonder.co.uk)
* Copyright: (c) 2004 Matthew Webb (http://matthew-4gl.wikispaces.com)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2007/09/15
*
* Basic4GL language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/batch.php b/vendor/geshi/geshi/src/geshi/batch.php
index 03a972e8d..4f048b627 100644
--- a/vendor/geshi/geshi/src/geshi/batch.php
+++ b/vendor/geshi/geshi/src/geshi/batch.php
@@ -4,7 +4,7 @@
* ------------
* Author: FraidZZ ( fraidzz [@] bk.ru )
* Copyright: (c) 2015 FraidZZ ( http://vk.com/fraidzz , http://www.cyberforum.ru/members/340557.html )
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2015/03/28
*
* Windows batch file language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/bf.php b/vendor/geshi/geshi/src/geshi/bf.php
index 06fddfec4..4206d2f6e 100644
--- a/vendor/geshi/geshi/src/geshi/bf.php
+++ b/vendor/geshi/geshi/src/geshi/bf.php
@@ -4,7 +4,7 @@
* ----------
* Author: Benny Baumann (BenBE@geshi.org)
* Copyright: (c) 2008 Benny Baumann (http://qbnz.com/highlighter/)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2009/10/31
*
* Brainfuck language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/biblatex.php b/vendor/geshi/geshi/src/geshi/biblatex.php
index 8500cb61f..873c4ad72 100644
--- a/vendor/geshi/geshi/src/geshi/biblatex.php
+++ b/vendor/geshi/geshi/src/geshi/biblatex.php
@@ -5,7 +5,7 @@
* Author: Maïeul Rouquette from
* Quinn Taylor (quinntaylor@mac.com)
* Copyright: (c) 2009 Quinn Taylor (quinntaylor@mac.com), Nigel McNie (http://qbnz.com/highlighter)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2009/04/29
*
* BibLaTeX language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/bibtex.php b/vendor/geshi/geshi/src/geshi/bibtex.php
index 169011eeb..684f938ee 100644
--- a/vendor/geshi/geshi/src/geshi/bibtex.php
+++ b/vendor/geshi/geshi/src/geshi/bibtex.php
@@ -4,7 +4,7 @@
* -----
* Author: Quinn Taylor (quinntaylor@mac.com)
* Copyright: (c) 2009 Quinn Taylor (quinntaylor@mac.com), Nigel McNie (http://qbnz.com/highlighter)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2009/04/29
*
* BibTeX language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/blitzbasic.php b/vendor/geshi/geshi/src/geshi/blitzbasic.php
index 6311e8ad6..092aaa7df 100644
--- a/vendor/geshi/geshi/src/geshi/blitzbasic.php
+++ b/vendor/geshi/geshi/src/geshi/blitzbasic.php
@@ -4,7 +4,7 @@
* --------------
* Author: P�draig O`Connel (info@moonsword.info)
* Copyright: (c) 2005 P�draig O`Connel (http://moonsword.info)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 16.10.2005
*
* BlitzBasic language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/bnf.php b/vendor/geshi/geshi/src/geshi/bnf.php
index fafd94fa7..1d7b0535c 100644
--- a/vendor/geshi/geshi/src/geshi/bnf.php
+++ b/vendor/geshi/geshi/src/geshi/bnf.php
@@ -4,7 +4,7 @@
* --------
* Author: Rowan Rodrik van der Molen (rowan@bigsmoke.us)
* Copyright: (c) 2006 Rowan Rodrik van der Molen (http://www.bigsmoke.us/)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2006/09/28
*
* BNF (Backus-Naur form) language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/boo.php b/vendor/geshi/geshi/src/geshi/boo.php
index 19c8378f9..0a35d5d53 100644
--- a/vendor/geshi/geshi/src/geshi/boo.php
+++ b/vendor/geshi/geshi/src/geshi/boo.php
@@ -4,7 +4,7 @@
* --------
* Author: Marcus Griep (neoeinstein+GeSHi@gmail.com)
* Copyright: (c) 2007 Marcus Griep (http://www.xpdm.us)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2007/09/10
*
* Boo language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/c.php b/vendor/geshi/geshi/src/geshi/c.php
index 75e1c2717..1d217ea72 100644
--- a/vendor/geshi/geshi/src/geshi/c.php
+++ b/vendor/geshi/geshi/src/geshi/c.php
@@ -7,7 +7,7 @@
* - Jack Lloyd (lloyd@randombit.net)
* - Michael Mol (mikemol@gmail.com)
* Copyright: (c) 2004 Nigel McNie (http://qbnz.com/highlighter/)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2004/06/04
*
* C language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/c_loadrunner.php b/vendor/geshi/geshi/src/geshi/c_loadrunner.php
index c1559bc72..2d5cc7308 100644
--- a/vendor/geshi/geshi/src/geshi/c_loadrunner.php
+++ b/vendor/geshi/geshi/src/geshi/c_loadrunner.php
@@ -4,7 +4,7 @@
* ---------------------------------
* Author: Stuart Moncrieff (stuart at myloadtest dot com)
* Copyright: (c) 2010 Stuart Moncrieff (http://www.myloadtest.com/loadrunner-syntax-highlighter/)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2010-07-25
*
* C (for LoadRunner) language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/c_mac.php b/vendor/geshi/geshi/src/geshi/c_mac.php
index dc0318417..5a364d919 100644
--- a/vendor/geshi/geshi/src/geshi/c_mac.php
+++ b/vendor/geshi/geshi/src/geshi/c_mac.php
@@ -4,7 +4,7 @@
* ---------
* Author: M. Uli Kusterer (witness.of.teachtext@gmx.net)
* Copyright: (c) 2004 M. Uli Kusterer, Nigel McNie (http://qbnz.com/highlighter/)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2004/06/04
*
* C for Macs language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/c_winapi.php b/vendor/geshi/geshi/src/geshi/c_winapi.php
index 37db047a5..52ea4911b 100644
--- a/vendor/geshi/geshi/src/geshi/c_winapi.php
+++ b/vendor/geshi/geshi/src/geshi/c_winapi.php
@@ -7,7 +7,7 @@
* - Jack Lloyd (lloyd@randombit.net)
* - Michael Mol (mikemol@gmail.com)
* Copyright: (c) 2012 Benny Baumann (http://qbnz.com/highlighter/)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2012/08/12
*
* C (WinAPI) language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/caddcl.php b/vendor/geshi/geshi/src/geshi/caddcl.php
index 6a205f972..72d1cd9d7 100644
--- a/vendor/geshi/geshi/src/geshi/caddcl.php
+++ b/vendor/geshi/geshi/src/geshi/caddcl.php
@@ -4,7 +4,7 @@
* ----------
* Author: Roberto Rossi (rsoftware@altervista.org)
* Copyright: (c) 2004 Roberto Rossi (http://rsoftware.altervista.org), Nigel McNie (http://qbnz.com/highlighter)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2004/08/30
*
* CAD DCL (Dialog Control Language) language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/cadlisp.php b/vendor/geshi/geshi/src/geshi/cadlisp.php
index 97ac8edc7..1123af1d7 100644
--- a/vendor/geshi/geshi/src/geshi/cadlisp.php
+++ b/vendor/geshi/geshi/src/geshi/cadlisp.php
@@ -4,7 +4,7 @@
* -----------
* Author: Roberto Rossi (rsoftware@altervista.org)
* Copyright: (c) 2004 Roberto Rossi (http://rsoftware.altervista.org), Nigel McNie (http://qbnz.com/blog)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2004/08/30
*
* AutoCAD/IntelliCAD Lisp language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/ceylon.php b/vendor/geshi/geshi/src/geshi/ceylon.php
index 1c806d377..52b74c12f 100644
--- a/vendor/geshi/geshi/src/geshi/ceylon.php
+++ b/vendor/geshi/geshi/src/geshi/ceylon.php
@@ -4,7 +4,7 @@
* ----------
* Author: Lucas Werkmeister (mail@lucaswerkmeister.de)
* Copyright: (c) 2015 Lucas Werkmeister (http://lucaswerkmeister.de)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2015-01-08
*
* Ceylon language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/cfdg.php b/vendor/geshi/geshi/src/geshi/cfdg.php
index 7ad658df5..2cf72f4f7 100644
--- a/vendor/geshi/geshi/src/geshi/cfdg.php
+++ b/vendor/geshi/geshi/src/geshi/cfdg.php
@@ -4,7 +4,7 @@
* --------
* Author: John Horigan <john@glyphic.com>
* Copyright: (c) 2006 John Horigan http://www.ozonehouse.com/john/
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2006/03/11
*
* CFDG language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/cfm.php b/vendor/geshi/geshi/src/geshi/cfm.php
index 7f98c33bf..516c66606 100644
--- a/vendor/geshi/geshi/src/geshi/cfm.php
+++ b/vendor/geshi/geshi/src/geshi/cfm.php
@@ -4,7 +4,7 @@
* -------
* Author: Diego
* Copyright: (c) 2006 Diego
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2006/02/25
*
* ColdFusion language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/chaiscript.php b/vendor/geshi/geshi/src/geshi/chaiscript.php
index 13570c900..e8167820f 100644
--- a/vendor/geshi/geshi/src/geshi/chaiscript.php
+++ b/vendor/geshi/geshi/src/geshi/chaiscript.php
@@ -6,7 +6,7 @@
* Copyright: (c) 2010 Jason Turner (lefticus@gmail.com),
* (c) 2009 Jonathan Turner,
* (c) 2004 Ben Keen (ben.keen@gmail.com), Benny Baumann (http://qbnz.com/highlighter)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2009/07/03
*
* ChaiScript language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/chapel.php b/vendor/geshi/geshi/src/geshi/chapel.php
index d0436348c..4f31f886b 100644
--- a/vendor/geshi/geshi/src/geshi/chapel.php
+++ b/vendor/geshi/geshi/src/geshi/chapel.php
@@ -4,7 +4,7 @@
* -----
* Author: Richard Molitor (richard.molitor@student.kit.edu)
* Copyright: (c) 2013 Richard Molitor
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2013/06/22
*
* Chapel language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/cil.php b/vendor/geshi/geshi/src/geshi/cil.php
index 82a2052fd..152fcc2d9 100644
--- a/vendor/geshi/geshi/src/geshi/cil.php
+++ b/vendor/geshi/geshi/src/geshi/cil.php
@@ -4,7 +4,7 @@
* --------
* Author: Marcus Griep (neoeinstein+GeSHi@gmail.com)
* Copyright: (c) 2007 Marcus Griep (http://www.xpdm.us)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2007/10/24
*
* CIL (Common Intermediate Language) language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/clojure.php b/vendor/geshi/geshi/src/geshi/clojure.php
index 0a5d1dd4c..55cbc42d5 100644
--- a/vendor/geshi/geshi/src/geshi/clojure.php
+++ b/vendor/geshi/geshi/src/geshi/clojure.php
@@ -4,7 +4,7 @@
* --------
* Author: Jess Johnson (jess@grok-code.com)
* Copyright: (c) 2009 Jess Johnson (http://grok-code.com)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2009/09/20
*
* Clojure language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/cmake.php b/vendor/geshi/geshi/src/geshi/cmake.php
index cebf147a2..13e67ffdd 100644
--- a/vendor/geshi/geshi/src/geshi/cmake.php
+++ b/vendor/geshi/geshi/src/geshi/cmake.php
@@ -4,7 +4,7 @@
* -------
* Author: Daniel Nelson (danieln@eng.utah.edu)
* Copyright: (c) 2009 Daniel Nelson
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2009/04/06
*
* CMake language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/cobol.php b/vendor/geshi/geshi/src/geshi/cobol.php
index 990551a55..ac466f22d 100644
--- a/vendor/geshi/geshi/src/geshi/cobol.php
+++ b/vendor/geshi/geshi/src/geshi/cobol.php
@@ -4,7 +4,7 @@
* ----------
* Author: BenBE (BenBE@omorphia.org)
* Copyright: (c) 2007-2008 BenBE (http://www.omorphia.de/)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2007/07/02
*
* COBOL language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/coffeescript.php b/vendor/geshi/geshi/src/geshi/coffeescript.php
index 9656668df..4b5feb28c 100644
--- a/vendor/geshi/geshi/src/geshi/coffeescript.php
+++ b/vendor/geshi/geshi/src/geshi/coffeescript.php
@@ -4,7 +4,7 @@
* ----------
* Author: Trevor Burnham (trevorburnham@gmail.com)
* Copyright: (c) 2010 Trevor Burnham (http://iterative.ly)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2010/06/08
*
* CoffeeScript language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/cpp-qt.php b/vendor/geshi/geshi/src/geshi/cpp-qt.php
index 40b7e5aa1..3d9e55df2 100644
--- a/vendor/geshi/geshi/src/geshi/cpp-qt.php
+++ b/vendor/geshi/geshi/src/geshi/cpp-qt.php
@@ -4,7 +4,7 @@
* -------
* Author: Iulian M
* Copyright: (c) 2006 Iulian M
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2004/09/27
*
* C++ (with Qt extensions) language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/cpp-winapi.php b/vendor/geshi/geshi/src/geshi/cpp-winapi.php
index b8bc6ccde..662e4c4e6 100644
--- a/vendor/geshi/geshi/src/geshi/cpp-winapi.php
+++ b/vendor/geshi/geshi/src/geshi/cpp-winapi.php
@@ -8,7 +8,7 @@
* - Jack Lloyd (lloyd@randombit.net)
* - Benny Baumann (BenBE@geshi.org)
* Copyright: (c) 2004 Dennis Bayer, Nigel McNie, 2012 Benny Baumann (http://qbnz.com/highlighter)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2004/09/27
*
* C++ language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/cpp.php b/vendor/geshi/geshi/src/geshi/cpp.php
index 1439dfe09..348c7cf02 100644
--- a/vendor/geshi/geshi/src/geshi/cpp.php
+++ b/vendor/geshi/geshi/src/geshi/cpp.php
@@ -7,7 +7,7 @@
* - M. Uli Kusterer (witness.of.teachtext@gmx.net)
* - Jack Lloyd (lloyd@randombit.net)
* Copyright: (c) 2004 Dennis Bayer, Nigel McNie (http://qbnz.com/highlighter)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2004/09/27
*
* C++ language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/csharp.php b/vendor/geshi/geshi/src/geshi/csharp.php
index a5a0f1120..da72167c2 100644
--- a/vendor/geshi/geshi/src/geshi/csharp.php
+++ b/vendor/geshi/geshi/src/geshi/csharp.php
@@ -5,7 +5,7 @@
* Author: Alan Juden (alan@judenware.org)
* Revised by: Michael Mol (mikemol@gmail.com)
* Copyright: (c) 2004 Alan Juden, Nigel McNie (http://qbnz.com/highlighter/)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2004/06/04
*
* C# language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/css.php b/vendor/geshi/geshi/src/geshi/css.php
index 5d15fad4f..15450ed8b 100644
--- a/vendor/geshi/geshi/src/geshi/css.php
+++ b/vendor/geshi/geshi/src/geshi/css.php
@@ -4,7 +4,7 @@
* -------
* Author: Nigel McNie (nigel@geshi.org), Zéfling (zefling@ikilote.net)
* Copyright: (c) 2004 Nigel McNie (http://qbnz.com/highlighter/)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2004/06/18
*
* CSS language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/cuesheet.php b/vendor/geshi/geshi/src/geshi/cuesheet.php
index 97d631c40..c9724f57d 100644
--- a/vendor/geshi/geshi/src/geshi/cuesheet.php
+++ b/vendor/geshi/geshi/src/geshi/cuesheet.php
@@ -4,7 +4,7 @@
* ----------
* Author: Benny Baumann (benbe@geshi.org)
* Copyright: (c) 2009 Benny Baumann (http://qbnz.com/highlighter/)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2009/12/21
*
* Cuesheet language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/d.php b/vendor/geshi/geshi/src/geshi/d.php
index 5e3713a80..2f0e3525c 100644
--- a/vendor/geshi/geshi/src/geshi/d.php
+++ b/vendor/geshi/geshi/src/geshi/d.php
@@ -6,7 +6,7 @@
* Contributors:
* - Jimmy Cao
* Copyright: (c) 2005 Thomas Kuehne (http://thomas.kuehne.cn/)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2005/04/22
*
* D language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/dart.php b/vendor/geshi/geshi/src/geshi/dart.php
index 83c00c918..4d1d824e1 100644
--- a/vendor/geshi/geshi/src/geshi/dart.php
+++ b/vendor/geshi/geshi/src/geshi/dart.php
@@ -4,7 +4,7 @@
* --------
* Author: Edward Hart (edward.dan.hart@gmail.com)
* Copyright: (c) 2013 Edward Hart
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2013/10/25
*
* Dart language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/dcl.php b/vendor/geshi/geshi/src/geshi/dcl.php
index a1489c739..660774489 100644
--- a/vendor/geshi/geshi/src/geshi/dcl.php
+++ b/vendor/geshi/geshi/src/geshi/dcl.php
@@ -4,7 +4,7 @@
* --------
* Author: Petr Hendl (petr@hendl.cz)
* Copyright: (c) 2011 Petr Hendl http://hendl.cz/geshi/
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2011/02/17
*
* DCL language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/dcpu16.php b/vendor/geshi/geshi/src/geshi/dcpu16.php
index 8c61bff8c..b5dbb2f58 100644
--- a/vendor/geshi/geshi/src/geshi/dcpu16.php
+++ b/vendor/geshi/geshi/src/geshi/dcpu16.php
@@ -4,7 +4,7 @@
* -------
* Author: Benny Baumann (BenBE@omorphia.de)
* Copyright: (c) 2007-2014 Benny Baumann (http://geshi.org/)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2012/04/12
*
* DCPU/16 Assembly language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/dcs.php b/vendor/geshi/geshi/src/geshi/dcs.php
index 58bf5a0fb..72b0c37a6 100644
--- a/vendor/geshi/geshi/src/geshi/dcs.php
+++ b/vendor/geshi/geshi/src/geshi/dcs.php
@@ -4,7 +4,7 @@
* ---------------------------------
* Author: Stelio Passaris (GeSHi@stelio.net)
* Copyright: (c) 2009 Stelio Passaris (http://stelio.net/stiki/GeSHi)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2009/01/20
*
* DCS language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/delphi.php b/vendor/geshi/geshi/src/geshi/delphi.php
index fadb4ad71..3533f6233 100644
--- a/vendor/geshi/geshi/src/geshi/delphi.php
+++ b/vendor/geshi/geshi/src/geshi/delphi.php
@@ -4,7 +4,7 @@
* ----------
* Author: J�rja Norbert (jnorbi@vipmail.hu), Benny Baumann (BenBE@omorphia.de)
* Copyright: (c) 2004 J�rja Norbert, Benny Baumann (BenBE@omorphia.de), Nigel McNie (http://qbnz.com/highlighter)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2004/07/26
*
* Delphi (Object Pascal) language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/diff.php b/vendor/geshi/geshi/src/geshi/diff.php
index ee01e0c1f..b630be2e6 100644
--- a/vendor/geshi/geshi/src/geshi/diff.php
+++ b/vendor/geshi/geshi/src/geshi/diff.php
@@ -4,7 +4,7 @@
* --------
* Author: Conny Brunnkvist (conny@fuchsia.se), W. Tasin (tasin@fhm.edu)
* Copyright: (c) 2004 Fuchsia Open Source Solutions (http://www.fuchsia.se/)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2004/12/29
*
* Diff-output language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/div.php b/vendor/geshi/geshi/src/geshi/div.php
index 6ae99f149..674072446 100644
--- a/vendor/geshi/geshi/src/geshi/div.php
+++ b/vendor/geshi/geshi/src/geshi/div.php
@@ -4,7 +4,7 @@
* ---------------------------------
* Author: Gabriel Lorenzo (ermakina@gmail.com)
* Copyright: (c) 2005 Gabriel Lorenzo (http://ermakina.gazpachito.net)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2005/06/19
*
* DIV language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/dos.php b/vendor/geshi/geshi/src/geshi/dos.php
index 744cb8276..1a4ebb7f4 100644
--- a/vendor/geshi/geshi/src/geshi/dos.php
+++ b/vendor/geshi/geshi/src/geshi/dos.php
@@ -4,7 +4,7 @@
* -------
* Author: Alessandro Staltari (staltari@geocities.com)
* Copyright: (c) 2005 Alessandro Staltari (http://www.geocities.com/SiliconValley/Vista/8155/)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2005/07/05
*
* DOS language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/dot.php b/vendor/geshi/geshi/src/geshi/dot.php
index 77de029e1..a4e8267ff 100644
--- a/vendor/geshi/geshi/src/geshi/dot.php
+++ b/vendor/geshi/geshi/src/geshi/dot.php
@@ -4,7 +4,7 @@
* ---------------------------------
* Author: Adrien Friggeri (adrien@friggeri.net)
* Copyright: (c) 2007 Adrien Friggeri (http://www.friggeri.net)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2007/05/30
*
* dot language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/e.php b/vendor/geshi/geshi/src/geshi/e.php
index 5f321e6fd..6a04779d0 100644
--- a/vendor/geshi/geshi/src/geshi/e.php
+++ b/vendor/geshi/geshi/src/geshi/e.php
@@ -4,7 +4,7 @@
* --------
* Author: Kevin Reid (kpreid@switchb.org)
* Copyright: (c) 2010 Kevin Reid (http://switchb.org/kpreid/)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2010/04/16
*
* E language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/ecmascript.php b/vendor/geshi/geshi/src/geshi/ecmascript.php
index 8d4ab15a5..05069ff85 100644
--- a/vendor/geshi/geshi/src/geshi/ecmascript.php
+++ b/vendor/geshi/geshi/src/geshi/ecmascript.php
@@ -4,7 +4,7 @@
* --------------
* Author: Michel Mariani (http://www.tonton-pixel.com/site/)
* Copyright: (c) 2010 Michel Mariani (http://www.tonton-pixel.com/site/)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2010/01/08
*
* ECMAScript language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/eiffel.php b/vendor/geshi/geshi/src/geshi/eiffel.php
index 14a2cc033..50cdf6f8c 100644
--- a/vendor/geshi/geshi/src/geshi/eiffel.php
+++ b/vendor/geshi/geshi/src/geshi/eiffel.php
@@ -4,7 +4,7 @@
* ----------
* Author: Zoran Simic (zsimic@axarosenberg.com)
* Copyright: (c) 2005 Zoran Simic
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2005/06/30
*
* Eiffel language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/email.php b/vendor/geshi/geshi/src/geshi/email.php
index c77d0fac3..c9bdf26f9 100644
--- a/vendor/geshi/geshi/src/geshi/email.php
+++ b/vendor/geshi/geshi/src/geshi/email.php
@@ -4,7 +4,7 @@
* ---------------
* Author: Benny Baumann (BenBE@geshi.org)
* Copyright: (c) 2008 Benny Baumann (http://qbnz.com/highlighter/)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2008/10/19
*
* Email (mbox \ eml \ RFC format) language file for GeSHi.
@@ -51,14 +51,55 @@ $language_data = array (
'HTTP', 'SMTP', 'ASMTP', 'ESMTP'
),
2 => array(
- 'Authentication-Results','Comment','Content-Description','Content-Type',
- 'Content-Disposition','Content-Transfer-Encoding','Delivered-To',
- 'Dkim-Signature','Domainkey-Signature','In-Reply-To','Message-Id',
- 'MIME-Version','OpenPGP','Received','Received-SPF','References',
- 'Reply-To', 'Resend-From','Resend-To','Return-Path','User-Agent'
+ 'Original-Recipient','Accept-Language','Alternate-Recipient',
+ 'Archived-At','Authentication-Results','Auto-Submitted',
+ 'Autoforwarded','Autosubmitted','Base','Comments',
+ 'Content-Alternative','Content-Base','Content-Description',
+ 'Content-Disposition','Content-Duration','Content-features',
+ 'Content-ID','Content-Identifier','Content-Language',
+ 'Content-Location','Content-MD5','Content-Return',
+ 'Content-Transfer-Encoding','Content-Type','Conversion',
+ 'Conversion-With-Loss','Deferred-Delivery','Delivery-Date',
+ 'Discarded-X400-IPMS-Extensions','Discarded-X400-MTS-Extensions',
+ 'Disclose-Recipients','Disposition-Notification-Options',
+ 'Disposition-Notification-To','DKIM-Signature',
+ 'DL-Expansion-History','Downgraded-Bcc','Downgraded-Cc',
+ 'Downgraded-Disposition-Notification-To',
+ 'Downgraded-Final-Recipient','Downgraded-From',
+ 'Downgraded-In-Reply-To','Downgraded-Mail-From',
+ 'Downgraded-Message-Id','Downgraded-Original-Recipient',
+ 'Downgraded-Rcpt-To','Downgraded-References',
+ 'Downgraded-Reply-To','Downgraded-Resent-Bcc',
+ 'Downgraded-Resent-Cc','Downgraded-Resent-From',
+ 'Downgraded-Resent-Reply-To','Downgraded-Resent-Sender',
+ 'Downgraded-Resent-To','Downgraded-Return-Path',
+ 'Downgraded-Sender','Downgraded-To','Encoding','Encrypted','Expires',
+ 'Expiry-Date','Generate-Delivery-Report','Importance','In-Reply-To',
+ 'Incomplete-Copy','Keywords','Language','Latest-Delivery-Time',
+ 'List-Archive','List-Help','List-ID','List-Owner','List-Post',
+ 'List-Subscribe','List-Unsubscribe','List-Unsubscribe-Post',
+ 'Message-Context','Message-ID','Message-Type','MIME-Version',
+ 'MMHS-Acp127-Message-Identifier','MMHS-Codress-Message-Indicator',
+ 'MMHS-Copy-Precedence','MMHS-Exempted-Address',
+ 'MMHS-Extended-Authorisation-Info','MMHS-Handling-Instructions',
+ 'MMHS-Message-Instructions','MMHS-Message-Type',
+ 'MMHS-Originator-PLAD','MMHS-Originator-Reference',
+ 'MMHS-Other-Recipients-Indicator-CC',
+ 'MMHS-Other-Recipients-Indicator-To','MMHS-Primary-Precedence',
+ 'MMHS-Subject-Indicator-Codes','MT-Priority','Obsoletes',
+ 'Organization','Original-Encoded-Information-Types','Original-From',
+ 'Original-Message-ID','Original-Subject','Originator-Return-Address',
+ 'PICS-Label','Prevent-NonDelivery-Report','Priority','Received',
+ 'Received-SPF','References','Reply-By','Reply-To',
+ 'Require-Recipient-Valid-Since','Resent-Bcc','Resent-Cc',
+ 'Resent-Date','Resent-From','Resent-Message-ID','Resent-Reply-To',
+ 'Resent-Sender','Resent-To','Return-Path','Sensitivity',
+ 'Solicitation','Supersedes','VBR-Info','X400-Content-Identifier',
+ 'X400-Content-Return','X400-Content-Type','X400-MTS-Identifier',
+ 'X400-Originator','X400-Received','X400-Recipients','X400-Trace'
),
3 => array(
- 'Date','From','Sender','Subject','To','CC'
+ 'Bcc','CC','Date','From','Sender','Subject','To'
),
4 => array(
'by', 'for', 'from', 'id', 'with'
@@ -102,6 +143,7 @@ $language_data = array (
),
'SCRIPT' => array(
0 => 'color: #000040;',
+ 1 => 'color: #002040;',
),
'REGEXPS' => array(
1 => 'color: #000000; font-weight: bold;',
@@ -190,10 +232,12 @@ $language_data = array (
),
'STRICT_MODE_APPLIES' => GESHI_ALWAYS,
'SCRIPT_DELIMITERS' => array(
- 0 => "/(?P<start>^)[A-Za-z][a-zA-Z0-9\-]*\s*:\s*(?:.|(?=\n\s)\n)*(?P<end>$)/m"
+ 0 => "/(?P<start>^)[A-Za-z][a-zA-Z0-9\-]*\s*:\s*(?:.|(?=\n\s)\n)*(?P<end>$)/m",
+ 1 => "/(?P<start>^)--[a-zA-Z0-9_=\-]+[a-zA-Z0-9_](?:--)?(?P<end>$)/m"
),
'HIGHLIGHT_STRICT_BLOCK' => array(
0 => true,
+ 1 => false
),
'TAB_WIDTH' => 4,
'PARSER_CONTROL' => array(
diff --git a/vendor/geshi/geshi/src/geshi/epc.php b/vendor/geshi/geshi/src/geshi/epc.php
index b3ea4ae21..7882d00ae 100644
--- a/vendor/geshi/geshi/src/geshi/epc.php
+++ b/vendor/geshi/geshi/src/geshi/epc.php
@@ -4,7 +4,7 @@
* --------
* Author: Thorsten Muehlfelder (muehlfelder@enertex.de)
* Copyright: (c) 2010 Enertex Bayern GmbH
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2010/08/26
*
* Enerscript language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/erlang.php b/vendor/geshi/geshi/src/geshi/erlang.php
index a15383283..8053d8719 100644
--- a/vendor/geshi/geshi/src/geshi/erlang.php
+++ b/vendor/geshi/geshi/src/geshi/erlang.php
@@ -7,7 +7,7 @@
* - Uwe Dauernheim (uwe@dauernheim.net)
* - Dan Forest-Barbier (dan@twisted.in)
* Copyright: (c) 2008 Uwe Dauernheim (http://www.kreisquadratur.de/)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2008-09-27
*
* Erlang language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/euphoria.php b/vendor/geshi/geshi/src/geshi/euphoria.php
index 5888d0f51..35c99ecb9 100644
--- a/vendor/geshi/geshi/src/geshi/euphoria.php
+++ b/vendor/geshi/geshi/src/geshi/euphoria.php
@@ -4,7 +4,7 @@
* ---------------------------------
* Author: Nicholas Koceja (nerketur@hotmail.com)
* Copyright: (c) 2010 Nicholas Koceja
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 11/24/2010
*
* Euphoria language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/ezt.php b/vendor/geshi/geshi/src/geshi/ezt.php
index 505241239..a02ebc41d 100644
--- a/vendor/geshi/geshi/src/geshi/ezt.php
+++ b/vendor/geshi/geshi/src/geshi/ezt.php
@@ -4,7 +4,7 @@
* -----------
* Author: Ramesh Vishveshwar (ramesh.vishveshwar@gmail.com)
* Copyright: (c) 2012 Ramesh Vishveshwar (http://thecodeisclear.in)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2012/09/01
*
* Easytrieve language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/f1.php b/vendor/geshi/geshi/src/geshi/f1.php
index 1203e1bed..c6f93cc8c 100644
--- a/vendor/geshi/geshi/src/geshi/f1.php
+++ b/vendor/geshi/geshi/src/geshi/f1.php
@@ -4,7 +4,7 @@
* -------
* Author: Juro Bystricky (juro@f1compiler.com)
* Copyright: K2 Software Corp.
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2010/07/06
*
* Formula One language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/falcon.php b/vendor/geshi/geshi/src/geshi/falcon.php
index ad5f3a69d..6160cba34 100644
--- a/vendor/geshi/geshi/src/geshi/falcon.php
+++ b/vendor/geshi/geshi/src/geshi/falcon.php
@@ -4,7 +4,7 @@
* ---------------------------------
* Author: billykater (billykater+geshi@gmail.com)
* Copyright: (c) 2010 billykater (http://falconpl.org/)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2010/06/07
*
* Falcon language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/fo.php b/vendor/geshi/geshi/src/geshi/fo.php
index 8628bb10b..c9dca6c2f 100644
--- a/vendor/geshi/geshi/src/geshi/fo.php
+++ b/vendor/geshi/geshi/src/geshi/fo.php
@@ -4,7 +4,7 @@
* --------
* Author: Tan-Vinh Nguyen (tvnguyen@web.de)
* Copyright: (c) 2009 Tan-Vinh Nguyen
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2009/03/23
*
* fo language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/fortran.php b/vendor/geshi/geshi/src/geshi/fortran.php
index e463cb9af..6e41e9d06 100644
--- a/vendor/geshi/geshi/src/geshi/fortran.php
+++ b/vendor/geshi/geshi/src/geshi/fortran.php
@@ -4,7 +4,7 @@
* -----------
* Author: Cedric Arrabie (cedric.arrabie@univ-pau.fr)
* Copyright: (C) 2006 Cetric Arrabie
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2006/04/22
*
* Fortran language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/freebasic.php b/vendor/geshi/geshi/src/geshi/freebasic.php
index cc6bd7b77..952d8f1f5 100644
--- a/vendor/geshi/geshi/src/geshi/freebasic.php
+++ b/vendor/geshi/geshi/src/geshi/freebasic.php
@@ -4,7 +4,7 @@
* -------------
* Author: Roberto Rossi
* Copyright: (c) 2005 Roberto Rossi (http://rsoftware.altervista.org)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2005/08/19
*
* FreeBasic (http://www.freebasic.net/) language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/freeswitch.php b/vendor/geshi/geshi/src/geshi/freeswitch.php
index 14f2b93a7..a4729a4ca 100644
--- a/vendor/geshi/geshi/src/geshi/freeswitch.php
+++ b/vendor/geshi/geshi/src/geshi/freeswitch.php
@@ -4,7 +4,7 @@
* --------
* Author: James Rose (james.gs@stubbornroses.com)
* Copyright: (c) 2006 Christian Lescuyer http://xtian.goelette.info
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2011/11/18
*
* FreeSWITCH language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/fsharp.php b/vendor/geshi/geshi/src/geshi/fsharp.php
index 5fc987841..c88c4c217 100644
--- a/vendor/geshi/geshi/src/geshi/fsharp.php
+++ b/vendor/geshi/geshi/src/geshi/fsharp.php
@@ -4,7 +4,7 @@
* ----------
* Author: julien ortin (jo_spam-divers@yahoo.fr)
* Copyright: (c) 2009 julien ortin
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2009/09/20
*
* F# language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/gambas.php b/vendor/geshi/geshi/src/geshi/gambas.php
index 8510b86a9..9993a6cd4 100644
--- a/vendor/geshi/geshi/src/geshi/gambas.php
+++ b/vendor/geshi/geshi/src/geshi/gambas.php
@@ -5,7 +5,7 @@
* Author: Jesus Guardon (jguardon@telefonica.net)
* Copyright: (c) 2009 Jesus Guardon (http://gambas-es.org),
* Benny Baumann (http://qbnz.com/highlighter)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2004/08/20
*
* GAMBAS language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/gdb.php b/vendor/geshi/geshi/src/geshi/gdb.php
index d05a9ca9d..250e2777b 100644
--- a/vendor/geshi/geshi/src/geshi/gdb.php
+++ b/vendor/geshi/geshi/src/geshi/gdb.php
@@ -4,7 +4,7 @@
* --------
* Author: Milian Wolff (mail@milianw.de)
* Copyright: (c) 2009 Milian Wolff
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2009/06/24
*
* GDB language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/genero.php b/vendor/geshi/geshi/src/geshi/genero.php
index 4d3cc3638..afdf9d9b6 100644
--- a/vendor/geshi/geshi/src/geshi/genero.php
+++ b/vendor/geshi/geshi/src/geshi/genero.php
@@ -4,7 +4,7 @@
* ----------
* Author: Lars Gersmann (lars.gersmann@gmail.com)
* Copyright: (c) 2007 Lars Gersmann, Nigel McNie (http://qbnz.com/highlighter/)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2007/07/01
*
* Genero (FOURJ's Genero 4GL) language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/genie.php b/vendor/geshi/geshi/src/geshi/genie.php
index dabc38913..05b356581 100644
--- a/vendor/geshi/geshi/src/geshi/genie.php
+++ b/vendor/geshi/geshi/src/geshi/genie.php
@@ -4,7 +4,7 @@
* ----------
* Author: Nicolas Joseph (nicolas.joseph@valaide.org)
* Copyright: (c) 2009 Nicolas Joseph
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2009/04/29
*
* Genie language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/gettext.php b/vendor/geshi/geshi/src/geshi/gettext.php
index 871f5ae67..4161cb8fb 100644
--- a/vendor/geshi/geshi/src/geshi/gettext.php
+++ b/vendor/geshi/geshi/src/geshi/gettext.php
@@ -4,7 +4,7 @@
* --------
* Author: Milian Wolff (mail@milianw.de)
* Copyright: (c) 2008 Milian Wolff
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2008/05/25
*
* GNU Gettext .po/.pot language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/glsl.php b/vendor/geshi/geshi/src/geshi/glsl.php
index d67adb2b5..eab78e9a7 100644
--- a/vendor/geshi/geshi/src/geshi/glsl.php
+++ b/vendor/geshi/geshi/src/geshi/glsl.php
@@ -4,7 +4,7 @@
* -----
* Author: Benny Baumann (BenBE@omorphia.de)
* Copyright: (c) 2008 Benny Baumann (BenBE@omorphia.de)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2008/03/20
*
* glSlang language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/gml.php b/vendor/geshi/geshi/src/geshi/gml.php
index 2cb0cd2e6..30b900ebf 100644
--- a/vendor/geshi/geshi/src/geshi/gml.php
+++ b/vendor/geshi/geshi/src/geshi/gml.php
@@ -4,7 +4,7 @@
* -------
* Author: José Jorge Enríquez <jenriquez@users.sourceforge.net>, Timon Knigge <timonknigge@live.nl>
* Copyright: (c) 2005 José Jorge Enríquez Rodríguez (http://www.zonamakers.com), (c) 2013 Timon Knigge (http://www.bluemoonproductions.nl)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2005/06/21
*
* GML language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/gnuplot.php b/vendor/geshi/geshi/src/geshi/gnuplot.php
index 55e1055d9..3af5f9350 100644
--- a/vendor/geshi/geshi/src/geshi/gnuplot.php
+++ b/vendor/geshi/geshi/src/geshi/gnuplot.php
@@ -4,7 +4,7 @@
* ----------
* Author: Milian Wolff (mail@milianw.de)
* Copyright: (c) 2008 Milian Wolff (http://milianw.de)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2008/07/07
*
* Gnuplot script language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/go.php b/vendor/geshi/geshi/src/geshi/go.php
index 5c9212beb..83d3cabc8 100644
--- a/vendor/geshi/geshi/src/geshi/go.php
+++ b/vendor/geshi/geshi/src/geshi/go.php
@@ -4,7 +4,7 @@
* --------
* Author: Markus Jarderot (mizardx at gmail dot com)
* Copyright: (c) 2010 Markus Jarderot
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2010/05/20
*
* Go language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/groovy.php b/vendor/geshi/geshi/src/geshi/groovy.php
index 9f201bbdf..f8a228e28 100644
--- a/vendor/geshi/geshi/src/geshi/groovy.php
+++ b/vendor/geshi/geshi/src/geshi/groovy.php
@@ -4,7 +4,7 @@
* ----------
* Author: Ivan F. Villanueva B. (geshi_groovy@artificialidea.com)
* Copyright: (c) 2006 Ivan F. Villanueva B.(http://www.artificialidea.com)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2006/04/29
*
* Groovy language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/gwbasic.php b/vendor/geshi/geshi/src/geshi/gwbasic.php
index 9bf2c1592..0fd7a2991 100644
--- a/vendor/geshi/geshi/src/geshi/gwbasic.php
+++ b/vendor/geshi/geshi/src/geshi/gwbasic.php
@@ -4,7 +4,7 @@
* ----------
* Author: José Gabriel Moya Yangüela (josemoya@gmail.com)
* Copyright: (c) 2010 José Gabriel Moya Yangüela (http://doc.apagada.com)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2010/01/30
*
* GwBasic language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/haskell.php b/vendor/geshi/geshi/src/geshi/haskell.php
index 7b7c904a3..1a2244741 100644
--- a/vendor/geshi/geshi/src/geshi/haskell.php
+++ b/vendor/geshi/geshi/src/geshi/haskell.php
@@ -6,7 +6,7 @@
* Based on haskell.php by Jason Dagit (dagit@codersbase.com), which was
* based on ocaml.php by Flaie (fireflaie@gmail.com).
* Copyright: (c) 2005 Flaie, Nigel McNie (http://qbnz.com/highlighter)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2014/05/12
*
* Haskell language file for GeSHi.
@@ -105,7 +105,7 @@ $language_data = array (
4 => array (
'Bool', 'Maybe', 'Either', 'Ordering',
'Char', 'String',
- 'Int', 'Integer', 'Float', 'Double', 'Rational',
+ 'Int', 'Integer', 'Float', 'Double', 'Rational', 'Word',
'ShowS', 'ReadS',
'IO', 'IOError', 'IOException'
),
@@ -114,7 +114,9 @@ $language_data = array (
'Ord', 'Eq', 'Enum', 'Bounded',
'Num', 'Real', 'Integral', 'Fractional',
'Floating', 'RealFrac', 'RealFloat',
- 'Monad', 'Functor',
+ 'Semigroup', 'Monoid',
+ 'Monad', 'Applicative', 'Functor',
+ 'Foldable', 'Traversable',
'Show', 'Read'
)
),
@@ -172,13 +174,13 @@ $language_data = array (
/* some of keywords are Prelude functions */
1 => '',
/* link to the wanted library */
- 2 => 'http://haskell.org/ghc/docs/latest/html/libraries/base/{FNAME}.html',
+ 2 => 'http://hackage.haskell.org/package/base/docs/{FNAME}.html',
/* link to Prelude functions */
- 3 => 'http://haskell.org/ghc/docs/latest/html/libraries/base/Prelude.html#v:{FNAME}',
+ 3 => 'http://hackage.haskell.org/package/base/docs/Prelude.html#v:{FNAME}',
/* link to Prelude types */
- 4 => 'http://haskell.org/ghc/docs/latest/html/libraries/base/Prelude.html#t:{FNAME}',
+ 4 => 'http://hackage.haskell.org/package/base/docs/Prelude.html#t:{FNAME}',
/* link to Prelude exceptions */
- 5 => 'http://haskell.org/ghc/docs/latest/html/libraries/base/Prelude.html#t:{FNAME}'
+ 5 => 'http://hackage.haskell.org/package/base/docs/Prelude.html#t:{FNAME}'
),
'OOLANG' => false,
'OBJECT_SPLITTERS' => array(
diff --git a/vendor/geshi/geshi/src/geshi/haxe.php b/vendor/geshi/geshi/src/geshi/haxe.php
index c9376bdff..f63674db0 100644
--- a/vendor/geshi/geshi/src/geshi/haxe.php
+++ b/vendor/geshi/geshi/src/geshi/haxe.php
@@ -6,7 +6,7 @@
* John Liao (colorhook@gmail.com)
* Copyright: (c) 2012 onthewings (http://www.onthewings.net/)
* 2010 colorhook (http://colorhook.com/)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2010/10/05
*
* Haxe language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/hicest.php b/vendor/geshi/geshi/src/geshi/hicest.php
index b8639bbe2..f92f6d62f 100644
--- a/vendor/geshi/geshi/src/geshi/hicest.php
+++ b/vendor/geshi/geshi/src/geshi/hicest.php
@@ -4,7 +4,7 @@
* --------
* Author: Georg Petrich (spt@hicest.com)
* Copyright: (c) 2010 Georg Petrich (http://www.HicEst.com)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2010/03/15
*
* HicEst language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/hq9plus.php b/vendor/geshi/geshi/src/geshi/hq9plus.php
index 843f2d671..29878ed03 100644
--- a/vendor/geshi/geshi/src/geshi/hq9plus.php
+++ b/vendor/geshi/geshi/src/geshi/hq9plus.php
@@ -4,7 +4,7 @@
* ----------
* Author: Benny Baumann (BenBE@geshi.org)
* Copyright: (c) 2008 Benny Baumann (http://qbnz.com/highlighter/)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2009/10/31
*
* HQ9+ language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/html4strict.php b/vendor/geshi/geshi/src/geshi/html4strict.php
index 42ff9c707..56c40a19f 100644
--- a/vendor/geshi/geshi/src/geshi/html4strict.php
+++ b/vendor/geshi/geshi/src/geshi/html4strict.php
@@ -4,7 +4,7 @@
* ---------------
* Author: Nigel McNie (nigel@geshi.org)
* Copyright: (c) 2004 Nigel McNie (http://qbnz.com/highlighter/)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2004/07/10
*
* HTML 4.01 strict language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/html5.php b/vendor/geshi/geshi/src/geshi/html5.php
index 25d33cb44..f6316f778 100644
--- a/vendor/geshi/geshi/src/geshi/html5.php
+++ b/vendor/geshi/geshi/src/geshi/html5.php
@@ -4,7 +4,7 @@
* ---------------
* Author: Nigel McNie (nigel@geshi.org)
* Copyright: (c) 2004 Nigel McNie (http://qbnz.com/highlighter/)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2004/07/10
*
* HTML 5 language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/icon.php b/vendor/geshi/geshi/src/geshi/icon.php
index 10226902b..feb3d840f 100644
--- a/vendor/geshi/geshi/src/geshi/icon.php
+++ b/vendor/geshi/geshi/src/geshi/icon.php
@@ -4,7 +4,7 @@
* --------
* Author: Matt Oates (mattoates@gmail.com)
* Copyright: (c) 2010 Matt Oates (http://mattoates.co.uk)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2010/04/24
*
* Icon language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/idl.php b/vendor/geshi/geshi/src/geshi/idl.php
index f960f8b31..e7596cee2 100644
--- a/vendor/geshi/geshi/src/geshi/idl.php
+++ b/vendor/geshi/geshi/src/geshi/idl.php
@@ -4,7 +4,7 @@
* -------
* Author: Cedric Bosdonnat (cedricbosdo@openoffice.org)
* Copyright: (c) 2006 Cedric Bosdonnat
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2006/08/20
*
* Unoidl language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/ini.php b/vendor/geshi/geshi/src/geshi/ini.php
index fe0422498..bf25d4b6b 100644
--- a/vendor/geshi/geshi/src/geshi/ini.php
+++ b/vendor/geshi/geshi/src/geshi/ini.php
@@ -4,7 +4,7 @@
* --------
* Author: deguix (cevo_deguix@yahoo.com.br)
* Copyright: (c) 2005 deguix
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2005/03/27
*
* INI language file for GeSHi.
@@ -48,7 +48,7 @@ $language_data = array (
'COMMENT_MULTI' => array(),
'COMMENT_REGEXP' => array(0 => '/^\s*;.*?$/m'),
'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
- 'QUOTEMARKS' => array('"'),
+ 'QUOTEMARKS' => array('"', "'"),
'ESCAPE_CHAR' => '',
'KEYWORDS' => array(
),
diff --git a/vendor/geshi/geshi/src/geshi/inno.php b/vendor/geshi/geshi/src/geshi/inno.php
index 542719c50..32202af54 100644
--- a/vendor/geshi/geshi/src/geshi/inno.php
+++ b/vendor/geshi/geshi/src/geshi/inno.php
@@ -4,7 +4,7 @@
* ----------
* Author: Thomas Klingler (hotline@theratech.de) based on delphi.php from J�rja Norbert (jnorbi@vipmail.hu)
* Copyright: (c) 2004 J�rja Norbert, Nigel McNie (http://qbnz.com/highlighter)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2005/07/29
*
* Inno Script language inkl. Delphi (Object Pascal) language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/intercal.php b/vendor/geshi/geshi/src/geshi/intercal.php
index 669050aae..5702d91ef 100644
--- a/vendor/geshi/geshi/src/geshi/intercal.php
+++ b/vendor/geshi/geshi/src/geshi/intercal.php
@@ -4,7 +4,7 @@
* ----------
* Author: Benny Baumann (BenBE@geshi.org)
* Copyright: (c) 2008 Benny Baumann (http://qbnz.com/highlighter/)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2009/10/31
*
* INTERCAL language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/io.php b/vendor/geshi/geshi/src/geshi/io.php
index 5c8b93fda..ce1c0e948 100644
--- a/vendor/geshi/geshi/src/geshi/io.php
+++ b/vendor/geshi/geshi/src/geshi/io.php
@@ -4,7 +4,7 @@
* -------
* Author: Nigel McNie (nigel@geshi.org)
* Copyright: (c) 2006 Nigel McNie (http://qbnz.com/highlighter/)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2006/09/23
*
* Io language file for GeSHi. Thanks to Johnathan Wright for the suggestion and help
diff --git a/vendor/geshi/geshi/src/geshi/ispfpanel.php b/vendor/geshi/geshi/src/geshi/ispfpanel.php
index 8e60eed98..37e04b67e 100644
--- a/vendor/geshi/geshi/src/geshi/ispfpanel.php
+++ b/vendor/geshi/geshi/src/geshi/ispfpanel.php
@@ -4,7 +4,7 @@
* -------------
* Author: Ramesh Vishveshwar (ramesh.vishveshwar@gmail.com)
* Copyright: (c) 2012 Ramesh Vishveshwar (http://thecodeisclear.in)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2012/09/18
*
* ISPF Panel Definition (MVS) language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/j.php b/vendor/geshi/geshi/src/geshi/j.php
index 499c489b7..c39e54f2d 100644
--- a/vendor/geshi/geshi/src/geshi/j.php
+++ b/vendor/geshi/geshi/src/geshi/j.php
@@ -4,7 +4,7 @@
* --------
* Author: Ric Sherlock (tikkanz@gmail.com)
* Copyright: (c) 2009 Ric Sherlock
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2009/11/10
*
* J language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/java.php b/vendor/geshi/geshi/src/geshi/java.php
index 59733b51c..71c2d713b 100644
--- a/vendor/geshi/geshi/src/geshi/java.php
+++ b/vendor/geshi/geshi/src/geshi/java.php
@@ -4,7 +4,7 @@
* --------
* Author: Nigel McNie (nigel@geshi.org)
* Copyright: (c) 2004 Nigel McNie (http://qbnz.com/highlighter/)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2004/07/10
*
* Java language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/java5.php b/vendor/geshi/geshi/src/geshi/java5.php
index f9dbf3106..fbd0e30a5 100644
--- a/vendor/geshi/geshi/src/geshi/java5.php
+++ b/vendor/geshi/geshi/src/geshi/java5.php
@@ -4,7 +4,7 @@
* --------
* Author: Nigel McNie (nigel@geshi.org)
* Copyright: (c) 2004 Nigel McNie (http://qbnz.com/highlighter/)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2004/07/10
*
* Java language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/javascript.php b/vendor/geshi/geshi/src/geshi/javascript.php
index bc13dc4e8..70fca9c79 100644
--- a/vendor/geshi/geshi/src/geshi/javascript.php
+++ b/vendor/geshi/geshi/src/geshi/javascript.php
@@ -4,7 +4,7 @@
* --------------
* Author: Ben Keen (ben.keen@gmail.com)
* Copyright: (c) 2004 Ben Keen (ben.keen@gmail.com), Nigel McNie (http://qbnz.com/highlighter)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2004/06/20
*
* JavaScript language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/jcl.php b/vendor/geshi/geshi/src/geshi/jcl.php
index 07e3b5084..9bc0c6c9c 100644
--- a/vendor/geshi/geshi/src/geshi/jcl.php
+++ b/vendor/geshi/geshi/src/geshi/jcl.php
@@ -4,7 +4,7 @@
* -----------
* Author: Ramesh Vishveshwar (ramesh.vishveshwar@gmail.com)
* Copyright: (c) 2012 Ramesh Vishveshwar (http://thecodeisclear.in)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2011/09/16
*
* JCL (MVS), DFSORT, IDCAMS language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/jquery.php b/vendor/geshi/geshi/src/geshi/jquery.php
index 0ffd83fb8..f8b9c118b 100644
--- a/vendor/geshi/geshi/src/geshi/jquery.php
+++ b/vendor/geshi/geshi/src/geshi/jquery.php
@@ -4,7 +4,7 @@
* --------------
* Author: Rob Loach (http://www.robloach.net)
* Copyright: (c) 2009 Rob Loach (http://www.robloach.net)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2009/07/20
*
* jQuery 1.3 language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/julia.php b/vendor/geshi/geshi/src/geshi/julia.php
index 93459c561..70848e62b 100644
--- a/vendor/geshi/geshi/src/geshi/julia.php
+++ b/vendor/geshi/geshi/src/geshi/julia.php
@@ -7,7 +7,7 @@
* - Magnus Lie Hetland
* - Curtis Vogt
* Copyright: (c) 2013 John Lynch
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2013/11/06
*
* Julia language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/kixtart.php b/vendor/geshi/geshi/src/geshi/kixtart.php
index 7f66e74f4..0d67f64c5 100644
--- a/vendor/geshi/geshi/src/geshi/kixtart.php
+++ b/vendor/geshi/geshi/src/geshi/kixtart.php
@@ -4,7 +4,7 @@
* --------
* Author: Riley McArdle (riley@glyff.net)
* Copyright: (c) 2007 Riley McArdle (http://www.glyff.net/)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2007/08/31
*
* PHP language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/klonec.php b/vendor/geshi/geshi/src/geshi/klonec.php
index 58f2d7b43..faecffe71 100644
--- a/vendor/geshi/geshi/src/geshi/klonec.php
+++ b/vendor/geshi/geshi/src/geshi/klonec.php
@@ -4,7 +4,7 @@
* --------
* Author: AUGER Mickael
* Copyright: Synchronic
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2008/04/16
*
* KLone with C language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/klonecpp.php b/vendor/geshi/geshi/src/geshi/klonecpp.php
index 4b71cba3d..7f5949d9f 100644
--- a/vendor/geshi/geshi/src/geshi/klonecpp.php
+++ b/vendor/geshi/geshi/src/geshi/klonecpp.php
@@ -4,7 +4,7 @@
* --------
* Author: AUGER Mickael
* Copyright: Synchronic
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2008/04/16
*
* KLone with C++ language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/kotlin.php b/vendor/geshi/geshi/src/geshi/kotlin.php
index cb20ad8ac..d83e76cf9 100644
--- a/vendor/geshi/geshi/src/geshi/kotlin.php
+++ b/vendor/geshi/geshi/src/geshi/kotlin.php
@@ -4,7 +4,7 @@
* --------
* Author: Ole Sandum (oksandum@gmail.com)
* Copyright: (c) 2017 Ole Sandum
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2004/07/10
*
* Kotlin language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/latex.php b/vendor/geshi/geshi/src/geshi/latex.php
index d03dde924..79f1f9dec 100644
--- a/vendor/geshi/geshi/src/geshi/latex.php
+++ b/vendor/geshi/geshi/src/geshi/latex.php
@@ -4,7 +4,7 @@
* -----
* Author: efi, Matthias Pospiech (matthias@pospiech.eu)
* Copyright: (c) 2006 efi, Matthias Pospiech (matthias@pospiech.eu), Nigel McNie (http://qbnz.com/highlighter)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2006/09/23
*
* LaTeX language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/lb.php b/vendor/geshi/geshi/src/geshi/lb.php
index 6882ea86d..b1193c0ae 100644
--- a/vendor/geshi/geshi/src/geshi/lb.php
+++ b/vendor/geshi/geshi/src/geshi/lb.php
@@ -4,7 +4,7 @@
* --------
* Author: Chris Iverson (cj.no.one@gmail.com)
* Copyright: (c) 2010 Chris Iverson
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2010/07/18
*
* Liberty BASIC language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/ldif.php b/vendor/geshi/geshi/src/geshi/ldif.php
index 86be996c7..b77b8ee2e 100644
--- a/vendor/geshi/geshi/src/geshi/ldif.php
+++ b/vendor/geshi/geshi/src/geshi/ldif.php
@@ -4,7 +4,7 @@
* --------
* Author: Bruno Harbulot (Bruno.Harbulot@manchester.ac.uk)
* Copyright: (c) 2005 deguix, (c) 2010 Bruno Harbulot
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2010/03/01
*
* LDIF language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/lisp.php b/vendor/geshi/geshi/src/geshi/lisp.php
index 9b3dbf832..5029ca225 100644
--- a/vendor/geshi/geshi/src/geshi/lisp.php
+++ b/vendor/geshi/geshi/src/geshi/lisp.php
@@ -4,7 +4,7 @@
* --------
* Author: Roberto Rossi (rsoftware@altervista.org)
* Copyright: (c) 2004 Roberto Rossi (http://rsoftware.altervista.org), Nigel McNie (http://qbnz.com/highlighter)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2004/08/30
*
* Generic Lisp language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/llvm.php b/vendor/geshi/geshi/src/geshi/llvm.php
index ca375bb1f..0c19c7d92 100644
--- a/vendor/geshi/geshi/src/geshi/llvm.php
+++ b/vendor/geshi/geshi/src/geshi/llvm.php
@@ -4,7 +4,7 @@
* --------
* Author: Benny Baumann (BenBE@geshi.org), Azriel Fasten (azriel.fasten@gmail.com)
* Copyright: (c) 2010 Benny Baumann (http://qbnz.com/highlighter/), Azriel Fasten (azriel.fasten@gmail.com)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2010/10/14
*
* LLVM language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/locobasic.php b/vendor/geshi/geshi/src/geshi/locobasic.php
index 596cb1207..709de5d0e 100644
--- a/vendor/geshi/geshi/src/geshi/locobasic.php
+++ b/vendor/geshi/geshi/src/geshi/locobasic.php
@@ -4,7 +4,7 @@
* -------------
* Author: Nacho Cabanes
* Copyright: (c) 2009 Nacho Cabanes (http://www.nachocabanes.com)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2009/03/22
*
* Locomotive Basic (Amstrad CPC series) language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/logtalk.php b/vendor/geshi/geshi/src/geshi/logtalk.php
index a3ed129a3..a4af76cc5 100644
--- a/vendor/geshi/geshi/src/geshi/logtalk.php
+++ b/vendor/geshi/geshi/src/geshi/logtalk.php
@@ -5,7 +5,7 @@
*
* Author: Paulo Moura (pmoura@logtalk.org)
* Copyright: (c) 2009-2011 Paulo Moura (http://logtalk.org/)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2009/10/24
*
* Logtalk language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/lolcode.php b/vendor/geshi/geshi/src/geshi/lolcode.php
index 39cae2014..f473c0dcf 100644
--- a/vendor/geshi/geshi/src/geshi/lolcode.php
+++ b/vendor/geshi/geshi/src/geshi/lolcode.php
@@ -4,7 +4,7 @@
* ----------
* Author: Benny Baumann (BenBE@geshi.org)
* Copyright: (c) 2008 Benny Baumann (http://qbnz.com/highlighter/)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2009/10/31
*
* LOLcode language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/lotusformulas.php b/vendor/geshi/geshi/src/geshi/lotusformulas.php
index 4f1c67819..57d34f3d5 100644
--- a/vendor/geshi/geshi/src/geshi/lotusformulas.php
+++ b/vendor/geshi/geshi/src/geshi/lotusformulas.php
@@ -4,7 +4,7 @@
* ------------------------
* Author: Richard Civil (info@richardcivil.net)
* Copyright: (c) 2008 Richard Civil (info@richardcivil.net), Nigel McNie (http://qbnz.com/highlighter)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2008/04/12
*
* @Formula/@Command language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/lotusscript.php b/vendor/geshi/geshi/src/geshi/lotusscript.php
index 069e603a6..8e41f3675 100644
--- a/vendor/geshi/geshi/src/geshi/lotusscript.php
+++ b/vendor/geshi/geshi/src/geshi/lotusscript.php
@@ -4,7 +4,7 @@
* ------------------------
* Author: Richard Civil (info@richardcivil.net)
* Copyright: (c) 2008 Richard Civil (info@richardcivil.net), Nigel McNie (http://qbnz.com/highlighter)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2008/04/12
*
* LotusScript language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/lscript.php b/vendor/geshi/geshi/src/geshi/lscript.php
index 432d54aab..a73e786b7 100644
--- a/vendor/geshi/geshi/src/geshi/lscript.php
+++ b/vendor/geshi/geshi/src/geshi/lscript.php
@@ -4,7 +4,7 @@
* ---------
* Author: Arendedwinter (admin@arendedwinter.com)
* Copyright: (c) 2008 Beau McGuigan (http://www.arendedwinter.com)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 15/11/2008
*
* Lightwave Script language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/lsl2.php b/vendor/geshi/geshi/src/geshi/lsl2.php
index 608b5e124..94f475457 100644
--- a/vendor/geshi/geshi/src/geshi/lsl2.php
+++ b/vendor/geshi/geshi/src/geshi/lsl2.php
@@ -4,7 +4,7 @@
* --------
* Author: William Fry (william.fry@nyu.edu)
* Copyright: (c) 2009 William Fry
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2009/02/04
*
* Linden Scripting Language (LSL2) language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/lua.php b/vendor/geshi/geshi/src/geshi/lua.php
index 313bbb535..2b8ebc409 100644
--- a/vendor/geshi/geshi/src/geshi/lua.php
+++ b/vendor/geshi/geshi/src/geshi/lua.php
@@ -4,7 +4,7 @@
* -------
* Author: Roberto Rossi (rsoftware@altervista.org)
* Copyright: (c) 2004 Roberto Rossi (http://rsoftware.altervista.org), Nigel McNie (http://qbnz.com/highlighter)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2004/07/10
*
* LUA language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/m68k.php b/vendor/geshi/geshi/src/geshi/m68k.php
index e2040a648..2d995c56f 100644
--- a/vendor/geshi/geshi/src/geshi/m68k.php
+++ b/vendor/geshi/geshi/src/geshi/m68k.php
@@ -4,7 +4,7 @@
* --------
* Author: Benny Baumann (BenBE@omorphia.de)
* Copyright: (c) 2007 Benny Baumann (http://www.omorphia.de/), Nigel McNie (http://qbnz.com/highlighter)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2007/02/06
*
* Motorola 68000 Assembler language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/magiksf.php b/vendor/geshi/geshi/src/geshi/magiksf.php
index 154cd26d3..44f069d8f 100644
--- a/vendor/geshi/geshi/src/geshi/magiksf.php
+++ b/vendor/geshi/geshi/src/geshi/magiksf.php
@@ -4,7 +4,7 @@
* --------
* Author: Sjoerd van Leent (svanleent@gmail.com)
* Copyright: (c) 2010 Sjoerd van Leent
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2010/02/15
*
* MagikSF language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/make.php b/vendor/geshi/geshi/src/geshi/make.php
index fa3193e7e..6ea601f21 100644
--- a/vendor/geshi/geshi/src/geshi/make.php
+++ b/vendor/geshi/geshi/src/geshi/make.php
@@ -4,7 +4,7 @@
* --------
* Author: Neil Bird <phoenix@fnxweb.com>
* Copyright: (c) 2008 Neil Bird
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2008/08/26
*
* make language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/mapbasic.php b/vendor/geshi/geshi/src/geshi/mapbasic.php
index d85e5741b..383bb51d2 100644
--- a/vendor/geshi/geshi/src/geshi/mapbasic.php
+++ b/vendor/geshi/geshi/src/geshi/mapbasic.php
@@ -4,7 +4,7 @@
* ------
* Author: Tomasz Berus (t.berus@gisodkuchni.pl)
* Copyright: (c) 2009 Tomasz Berus (http://sourceforge.net/projects/mbsyntax/)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2008/11/25
*
* MapBasic language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/mathematica.php b/vendor/geshi/geshi/src/geshi/mathematica.php
index 77d8653a0..238ccdef9 100644
--- a/vendor/geshi/geshi/src/geshi/mathematica.php
+++ b/vendor/geshi/geshi/src/geshi/mathematica.php
@@ -4,7 +4,7 @@
* --------
* Author: Connor Glosser (glosser1@gmail.com)
* Copyright: (c) 2014 Connor Glosser (http://www.msu.edu/~glosser1)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2014/08/11
*
* Mathematica language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/matlab.php b/vendor/geshi/geshi/src/geshi/matlab.php
index f6e8ee5f2..84c0209c6 100644
--- a/vendor/geshi/geshi/src/geshi/matlab.php
+++ b/vendor/geshi/geshi/src/geshi/matlab.php
@@ -4,7 +4,7 @@
* -----------
* Author: Florian Knorn (floz@gmx.de)
* Copyright: (c) 2004 Florian Knorn (http://www.florian-knorn.com)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2005/02/09
*
* Matlab M-file language file for GeSHi.
@@ -53,7 +53,7 @@ $language_data = array (
'ESCAPE_CHAR' => '',
'KEYWORDS' => array(
1 => array(
- 'break', 'case', 'catch', 'continue', 'elseif', 'else', 'end', 'for',
+ 'break', 'case', 'catch', 'classdef', 'continue', 'elseif', 'else', 'end', 'for',
'function', 'global', 'if', 'otherwise', 'persistent', 'return',
'switch', 'try', 'while'
),
@@ -61,12 +61,12 @@ $language_data = array (
'all','any','exist','is','logical','mislocked',
'abs','acos','acosh','acot','acoth','acsc','acsch','airy','angle',
- 'ans','area','asec','asech','asin','asinh','atan','atan2','atanh',
+ 'ans','area','arrayfun','asec','asech','asin','asinh','atan','atan2','atanh',
'auread','autumn','auwrite','axes','axis','balance','bar','bar3',
'bar3h','barh','besselh','besseli','besselj','besselk','Bessely',
'beta','betainc','betaln','bicg','bicgstab','bin2dec','bitand',
'bitcmp','bitget','bitmax','bitor','bitset','bitshift','bitxor',
- 'blkdiag','bone','box','brighten','builtin','bwcontr','calendar',
+ 'blkdiag','bone','bounds','box','brighten','builtin','bwcontr','calendar',
'camdolly','camlight','camlookat','camorbit','campan','campos',
'camproj','camroll','camtarget','camup','camva','camzoom','capture',
'cart2pol','cart2sph','cat','caxis','cdf2rdf','ceil','cell',
@@ -78,12 +78,12 @@ $language_data = array (
'contour','contourc','contourf','contourslice','contrast','conv',
'conv2','convhull','cool','copper','copyobj','corrcoef','cos',
'cosh','cot','coth','cov','cplxpair','cputime','cross','csc','csch',
- 'cumprod','cumsum','cumtrapz','cylinder','daspect','date','datenum',
- 'datestr','datetick','datevec','dbclear','dbcont','dbdown',
+ 'cumprod','cumsum','cumtrapz','cylinder','daspect','dataset','datastore','date','datenum',
+ 'datestr','datetick','datetime','datevec','dbclear','dbcont','dbdown',
'dblquad','dbmex','dbquit','dbstack','dbstatus','dbstep','dbstop',
'dbtype','dbup','deblank','dec2bin','dec2hex','deconv','del2',
- 'delaunay','det','diag','dialog','diff','diffuse','dlmread',
- 'dlmwrite','dmperm','double','dragrect','drawnow','dsearch','eig',
+ 'delaunay','det','diag','dialog','diff','diffuse','discretize','dlmread',
+ 'dlmwrite','dmperm','double','dragrect','drawnow','dsearch','duration','eig',
'eigs','ellipj','ellipke','eomday','eps','erf','erfc','erfcx',
'erfiny','error','errorbar','errordlg','etime','eval','evalc',
'evalin','exp','expint','expm','eye','ezcontour','ezcontourf',
@@ -96,19 +96,20 @@ $language_data = array (
'fseek','ftell','full','funm','fwrite','fzero','gallery','gamma',
'gammainc','gammaln','gca','gcbo','gcd','gcf','gco','get',
'getfield','ginput','gmres','gradient','gray','graymon','grid',
- 'griddata','gsvd','gtext','hadamard','hankel','hdf','helpdlg',
+ 'griddata','gsvd','gtext','hadamard','hankel','hdf','head','helpdlg',
'hess','hex2dec','hex2num','hidden','hilb','hist','hold','hot',
'hsv','hsv2rgb','i','ifft','ifft2','ifftn','ifftshift','imag',
'image','imfinfo','imread','imwrite','ind2sub','Inf','inferiorto',
'inline','inpolygon','input','inputdlg','inputname','int16',
- 'int2str','int32','int8','interp1','interp2','interp3','interpft',
- 'interpn','intersect','inv','invhilb','ipermute','isa','ishandle',
- 'ismember','isocaps','isonormals','isosurface','j','jet','keyboard',
+ 'int2str','int32','int8','int64','interp1','interp2','interp3','interpft',
+ 'interpn','intersect','inv','invhilb','ipermute','isa','iscell',
+ 'iscellstr','isfile','isfolder','ishandle','isinf',
+ 'ismember','isnan','isocaps','isonormals','isosurface','issorted','j','jet','keyboard',
'lcm','legend','legendre','light','lighting','lightingangle',
'lin2mu','line','lines','linspace','listdlg','loadobj','log',
'log10','log2','loglog','logm','logspace','lower','lscov','lu',
'luinc','magic','mat2str','material','max','mean','median','menu',
- 'menuedit','mesh','meshc','meshgrid','min','mod','msgbox','mu2lin',
+ 'menuedit','mesh','meshc','meshgrid','min','missing','mod','msgbox','mu2lin',
'NaN','nargchk','nargin','nargout','nchoosek','ndgrid','ndims',
'newplot','nextpow2','nnls','nnz','nonzeros','norm','normest','now',
'null','num2cell','num2str','nzmax','ode113,','ode15s,','ode23s,',
@@ -120,7 +121,7 @@ $language_data = array (
'polyvalm','pow2','primes','print','printdlg','printopt','prism',
'prod','propedit','qmr','qr','qrdelete','qrinsert','qrupdate',
'quad','questdlg','quiver','quiver3','qz','rand','randn','randperm',
- 'rank','rat','rats','rbbox','rcond','real','realmax','realmin',
+ 'rank','rat','rats','rbbox','rcond','readtable','real','realmax','realmin',
'rectangle','reducepatch','reducevolume','refresh','rem','repmat',
'reset','reshape','residue','rgb2hsv','rgbplot','ribbon','rmfield',
'roots','rose','rot90','rotate','rotate3d','round','rref',
@@ -133,27 +134,27 @@ $language_data = array (
'spline','spones','spparms','sprand','sprandn','sprandsym','spring',
'sprintf','sqrt','sqrtm','squeeze','sscanf','stairs','std','stem',
'stem3','str2double','str2num','strcat','strcmp','strcmpi',
- 'stream2','stream3','streamline','strings','strjust','strmatch',
- 'strncmp','strrep','strtok','struct','struct2cell','strvcat',
+ 'stream2','stream3','streamline','string','strings','strjust','strmatch',
+ 'strncmp','strrep','strtok','struct','structfun','struct2cell','strvcat',
'sub2ind','subplot','subspace','subvolume','sum','summer',
'superiorto','surf','surf2patch','surface','surfc','surfl',
- 'surfnorm','svd','svds','symmmd','symrcm','symvar','tan','tanh',
- 'texlabel','text Create','textread','textwrap','tic','title','toc',
+ 'surfnorm','svd','svds','symmmd','symrcm','symvar','tail','tall','tan','tanh',
+ 'texlabel','text Create','textread','textwrap','tic','timeseries','timer','timetable','title','toc',
'toeplitz','trace','trapz','tril','trimesh','trisurf','triu',
'tsearch','uicontext Create','uicontextmenu','uicontrol',
- 'uigetfile','uimenu','uint32','uint8','uiputfile','uiresume',
+ 'uigetfile','uimenu','uint32','uint8','uint64','uiputfile','uiresume',
'uisetcolor','uisetfont','uiwait Used','union','unique','unwrap',
'upper','var','varargin','varargout','vectorize','view','viewmtx',
'voronoi','waitbar','waitforbuttonpress','warndlg','warning',
'waterfall','wavread','wavwrite','weekday','whitebg','wilkinson',
- 'winter','wk1read','wk1write','xlabel','xlim','ylabel','ylim',
+ 'winter','wk1read','wk1write','writetable','xlabel','xlim','ylabel','ylim',
'zeros','zlabel','zlim','zoom',
//'[Keywords 6]',
'addpath','cd','clear','copyfile','delete','diary','dir','disp',
'doc','docopt','echo','edit','fileparts','format','fullfile','help',
'helpdesk','helpwin','home','inmem','lasterr','lastwarn','length',
'load','lookfor','ls','matlabrc','matlabroot','mkdir','mlock',
- 'more','munlock','open','openvar','pack','partialpath','path',
+ 'more','munlock','numel','open','openvar','pack','partialpath','path',
'pathtool','profile','profreport','pwd','quit','rmpath','save',
'saveas','size','tempdir','tempname','type','ver','version','web',
'what','whatsnew','which','who','whos','workspace'
@@ -206,7 +207,7 @@ $language_data = array (
),
'URLS' => array(
1 => '',
- 2 => 'http://www.mathworks.com/access/helpdesk/help/techdoc/ref/{FNAMEL}.html'
+ 2 => 'https://www.mathworks.com/help/matlab/ref/{FNAMEL}.html'
),
'OOLANG' => true,
'OBJECT_SPLITTERS' => array(
diff --git a/vendor/geshi/geshi/src/geshi/mercury.php b/vendor/geshi/geshi/src/geshi/mercury.php
index 9f77e4b6e..df8c9bbea 100644
--- a/vendor/geshi/geshi/src/geshi/mercury.php
+++ b/vendor/geshi/geshi/src/geshi/mercury.php
@@ -4,7 +4,7 @@
* --------
* Author: Sebastian Godelet (sebastian.godelet+github@gmail.com)
* Copyright: (c) 2014
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2014/10/30
*
* Mercury language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/metapost.php b/vendor/geshi/geshi/src/geshi/metapost.php
index f5944cbc8..83882d8e6 100644
--- a/vendor/geshi/geshi/src/geshi/metapost.php
+++ b/vendor/geshi/geshi/src/geshi/metapost.php
@@ -4,7 +4,7 @@
* -----------
* Author: Maxime Chupin (notezik@gmail.com)
* Copyright: (c) 2011 Maxime Chupin
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2011/08/02
*
* Metapost language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/mirc.php b/vendor/geshi/geshi/src/geshi/mirc.php
index 4aea845e8..a58b45fb7 100644
--- a/vendor/geshi/geshi/src/geshi/mirc.php
+++ b/vendor/geshi/geshi/src/geshi/mirc.php
@@ -4,7 +4,7 @@
* -----
* Author: Alberto 'Birckin' de Areba (Birckin@hotmail.com)
* Copyright: (c) 2006 Alberto de Areba
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2006/05/29
*
* mIRC Scripting language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/mk-61.php b/vendor/geshi/geshi/src/geshi/mk-61.php
index 653a3363d..669799ce9 100644
--- a/vendor/geshi/geshi/src/geshi/mk-61.php
+++ b/vendor/geshi/geshi/src/geshi/mk-61.php
@@ -4,7 +4,7 @@
*
* Author: Russkiy
* Copyright: (c) 2014 Russkiy
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2014-03-11
*
*********************************************************************
diff --git a/vendor/geshi/geshi/src/geshi/mmix.php b/vendor/geshi/geshi/src/geshi/mmix.php
index 5c8178c04..21fc061d7 100644
--- a/vendor/geshi/geshi/src/geshi/mmix.php
+++ b/vendor/geshi/geshi/src/geshi/mmix.php
@@ -4,7 +4,7 @@
* -------
* Author: Benny Baumann (BenBE@geshi.org)
* Copyright: (c) 2009 Benny Baumann (http://qbnz.com/highlighter/)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2009/10/16
*
* MMIX Assembler language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/modula2.php b/vendor/geshi/geshi/src/geshi/modula2.php
index 2a20973b6..850b9e645 100644
--- a/vendor/geshi/geshi/src/geshi/modula2.php
+++ b/vendor/geshi/geshi/src/geshi/modula2.php
@@ -4,7 +4,7 @@
* -----------
* Author: Benjamin Kowarsch (benjamin@modula2.net)
* Copyright: (c) 2009 Benjamin Kowarsch (benjamin@modula2.net)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2009/11/05
*
* Modula-2 language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/modula3.php b/vendor/geshi/geshi/src/geshi/modula3.php
index b3c223cad..1ba83f687 100644
--- a/vendor/geshi/geshi/src/geshi/modula3.php
+++ b/vendor/geshi/geshi/src/geshi/modula3.php
@@ -4,7 +4,7 @@
* ----------
* Author: mbishop (mbishop@esoteriq.org)
* Copyright: (c) 2009 mbishop (mbishop@esoteriq.org)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2009/01/21
*
* Modula-3 language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/mpasm.php b/vendor/geshi/geshi/src/geshi/mpasm.php
index e6cf70e6c..42c85a1cc 100644
--- a/vendor/geshi/geshi/src/geshi/mpasm.php
+++ b/vendor/geshi/geshi/src/geshi/mpasm.php
@@ -4,7 +4,7 @@
* ---------
* Author: Bakalex (bakalex@gmail.com)
* Copyright: (c) 2004 Bakalex, Nigel McNie (http://qbnz.com/highlighter)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2004/12/6
*
* Microchip Assembler language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/mxml.php b/vendor/geshi/geshi/src/geshi/mxml.php
index 4bac67252..afc076936 100644
--- a/vendor/geshi/geshi/src/geshi/mxml.php
+++ b/vendor/geshi/geshi/src/geshi/mxml.php
@@ -4,7 +4,7 @@
* -------
* Author: David Spurr
* Copyright: (c) 2007 David Spurr (http://www.defusion.org.uk/)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2007/10/04
*
* MXML language file for GeSHi. Based on the XML file by Nigel McNie
diff --git a/vendor/geshi/geshi/src/geshi/mysql.php b/vendor/geshi/geshi/src/geshi/mysql.php
index e62a122d2..afe86841c 100644
--- a/vendor/geshi/geshi/src/geshi/mysql.php
+++ b/vendor/geshi/geshi/src/geshi/mysql.php
@@ -4,7 +4,7 @@
* ---------
* Author: Marjolein Katsma (marjolein.is.back@gmail.com)
* Copyright: (c) 2008 Marjolein Katsma (http://blog.marjoleinkatsma.com/)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2008-12-12
*
* MySQL language file for GeSHi.
@@ -390,15 +390,15 @@ $language_data = array (
)
),
'URLS' => array(
- 1 => 'http://search.oracle.com/search/search?group=MySQL&amp;q={FNAME}',
- 2 => 'http://search.oracle.com/search/search?group=MySQL&amp;q={FNAME}',
- 3 => 'http://search.oracle.com/search/search?group=MySQL&amp;q={FNAME}',
- 4 => 'http://search.oracle.com/search/search?group=MySQL&amp;q={FNAME}',
- 5 => 'http://search.oracle.com/search/search?group=MySQL&amp;q={FNAME}',
- 6 => 'http://search.oracle.com/search/search?group=MySQL&amp;q={FNAME}',
- 7 => 'http://search.oracle.com/search/search?group=MySQL&amp;q={FNAME}',
- 8 => 'http://search.oracle.com/search/search?group=MySQL&amp;q={FNAME}',
- 9 => 'http://search.oracle.com/search/search?group=MySQL&amp;q={FNAME}',
+ 1 => 'https://www.oracle.com/search/results?cat=mysql&amp;Ntk=SI-ALL5&amp;Ntt={FNAME}',
+ 2 => 'https://www.oracle.com/search/results?cat=mysql&amp;Ntk=SI-ALL5&amp;Ntt={FNAME}',
+ 3 => 'https://www.oracle.com/search/results?cat=mysql&amp;Ntk=SI-ALL5&amp;Ntt={FNAME}',
+ 4 => 'https://www.oracle.com/search/results?cat=mysql&amp;Ntk=SI-ALL5&amp;Ntt={FNAME}',
+ 5 => 'https://www.oracle.com/search/results?cat=mysql&amp;Ntk=SI-ALL5&amp;Ntt={FNAME}',
+ 6 => 'https://www.oracle.com/search/results?cat=mysql&amp;Ntk=SI-ALL5&amp;Ntt={FNAME}',
+ 7 => 'https://www.oracle.com/search/results?cat=mysql&amp;Ntk=SI-ALL5&amp;Ntt={FNAME}',
+ 8 => 'https://www.oracle.com/search/results?cat=mysql&amp;Ntk=SI-ALL5&amp;Ntt={FNAME}',
+ 9 => 'https://www.oracle.com/search/results?cat=mysql&amp;Ntk=SI-ALL5&amp;Ntt={FNAME}',
10 => 'http://dev.mysql.com/doc/refman/%35%2E%31/en/non-typed-operators.html',
11 => 'http://dev.mysql.com/doc/refman/%35%2E%31/en/non-typed-operators.html',
diff --git a/vendor/geshi/geshi/src/geshi/nagios.php b/vendor/geshi/geshi/src/geshi/nagios.php
index ac6d63a90..2358598ab 100644
--- a/vendor/geshi/geshi/src/geshi/nagios.php
+++ b/vendor/geshi/geshi/src/geshi/nagios.php
@@ -4,7 +4,7 @@
* --------
* Author: Albéric de Pertat <alberic@depertat.net>
* Copyright: (c) 2012 Albéric de Pertat (https://github.com/adepertat/geshi-nagios)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2012/01/19
*
* Nagios language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/netrexx.php b/vendor/geshi/geshi/src/geshi/netrexx.php
index 38e09fafb..a6d444b72 100644
--- a/vendor/geshi/geshi/src/geshi/netrexx.php
+++ b/vendor/geshi/geshi/src/geshi/netrexx.php
@@ -6,7 +6,7 @@
* Contributors:
* - Walter Pachl (pachl@chello.at)
* Copyright: (c) 2008 Jon Wolfers, (c) 2012 Walter Pachl
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2008/01/07
*
* NetRexx language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/newlisp.php b/vendor/geshi/geshi/src/geshi/newlisp.php
index b5a943152..2daa72bb6 100644
--- a/vendor/geshi/geshi/src/geshi/newlisp.php
+++ b/vendor/geshi/geshi/src/geshi/newlisp.php
@@ -4,7 +4,7 @@
* ----------
* Author: cormullion (cormullion@mac.com) Sept 2009
* Copyright: (c) 2009 Cormullion (http://unbalanced-parentheses.nfshost.com/)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2009/09/30
*
* newLISP language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/nginx.php b/vendor/geshi/geshi/src/geshi/nginx.php
index 47ced0ab2..ab2a9fb48 100644
--- a/vendor/geshi/geshi/src/geshi/nginx.php
+++ b/vendor/geshi/geshi/src/geshi/nginx.php
@@ -7,7 +7,7 @@
* Contributors:
* - Deoren Moor (http://www.whyaskwhy.org/blog/)
* - Thomas Joiner
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2010/08/24
*
* nginx language file for GeSHi.
@@ -864,5 +864,10 @@ $language_data = array (
),
'STRICT_MODE_APPLIES' => GESHI_NEVER,
'SCRIPT_DELIMITERS' => array(),
- 'HIGHLIGHT_STRICT_BLOCK' => array()
+ 'HIGHLIGHT_STRICT_BLOCK' => array(),
+ 'PARSER_CONTROL' => array(
+ 'ENABLE_FLAGS' => array(
+ 'NUMBERS' => GESHI_NEVER
+ )
+ )
);
diff --git a/vendor/geshi/geshi/src/geshi/nimrod.php b/vendor/geshi/geshi/src/geshi/nimrod.php
index a85edfbbc..1be79705e 100644
--- a/vendor/geshi/geshi/src/geshi/nimrod.php
+++ b/vendor/geshi/geshi/src/geshi/nimrod.php
@@ -4,7 +4,7 @@
* ----------
* Author: Dennis Felsing (dennis@felsin9.de)
* Copyright: (c) 2014 Dennis Felsing
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2014/07/15
*
* Nimrod language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/nsis.php b/vendor/geshi/geshi/src/geshi/nsis.php
index 61da046bb..3fb54a094 100644
--- a/vendor/geshi/geshi/src/geshi/nsis.php
+++ b/vendor/geshi/geshi/src/geshi/nsis.php
@@ -4,7 +4,7 @@
* --------
* Author: deguix (cevo_deguix@yahoo.com.br), Tux (http://tux.a4.cz/), Jan T. Sott (http://github.com/idleberg)
* Copyright: (c) 2005 deguix, 2004 Tux (http://tux.a4.cz/), Nigel McNie (http://qbnz.com/highlighter)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2005/12/03
*
* Nullsoft Scriptable Install System language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/oberon2.php b/vendor/geshi/geshi/src/geshi/oberon2.php
index 8540cadf4..38a191594 100644
--- a/vendor/geshi/geshi/src/geshi/oberon2.php
+++ b/vendor/geshi/geshi/src/geshi/oberon2.php
@@ -4,7 +4,7 @@
* ----------
* Author: mbishop (mbishop@esoteriq.org)
* Copyright: (c) 2009 mbishop (mbishop@esoteriq.org)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2009/02/10
*
* Oberon-2 language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/objc.php b/vendor/geshi/geshi/src/geshi/objc.php
index 3fdf49ae1..0f6ee1d75 100644
--- a/vendor/geshi/geshi/src/geshi/objc.php
+++ b/vendor/geshi/geshi/src/geshi/objc.php
@@ -5,7 +5,7 @@
* Author: M. Uli Kusterer (witness.of.teachtext@gmx.net)
* Contributors: Quinn Taylor (quinntaylor@mac.com)
* Copyright: (c) 2008 Quinn Taylor, 2004 M. Uli Kusterer, Nigel McNie (http://qbnz.com/highlighter/)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2004/06/04
*
* Objective-C language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/objeck.php b/vendor/geshi/geshi/src/geshi/objeck.php
index 6fab2d07c..465db8911 100644
--- a/vendor/geshi/geshi/src/geshi/objeck.php
+++ b/vendor/geshi/geshi/src/geshi/objeck.php
@@ -4,7 +4,7 @@
* --------
* Author: Randy Hollines (objeck@gmail.com)
* Copyright: (c) 2010 Randy Hollines (http://code.google.com/p/objeck-lang/)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2010/07/01
*
* Objeck Programming Language language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/ocaml-brief.php b/vendor/geshi/geshi/src/geshi/ocaml-brief.php
index f63c9e794..1d7563e70 100644
--- a/vendor/geshi/geshi/src/geshi/ocaml-brief.php
+++ b/vendor/geshi/geshi/src/geshi/ocaml-brief.php
@@ -4,7 +4,7 @@
* ----------
* Author: Flaie (fireflaie@gmail.com)
* Copyright: (c) 2005 Flaie, Nigel McNie (http://qbnz.com/highlighter)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2005/08/27
*
* OCaml (Objective Caml) language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/ocaml.php b/vendor/geshi/geshi/src/geshi/ocaml.php
index 4e14082fd..e9e57ef66 100644
--- a/vendor/geshi/geshi/src/geshi/ocaml.php
+++ b/vendor/geshi/geshi/src/geshi/ocaml.php
@@ -4,7 +4,7 @@
* ----------
* Author: Flaie (fireflaie@gmail.com)
* Copyright: (c) 2005 Flaie, Nigel McNie (http://qbnz.com/highlighter)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2005/08/27
*
* OCaml (Objective Caml) language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/octave.php b/vendor/geshi/geshi/src/geshi/octave.php
index a77e5da77..999ab261f 100644
--- a/vendor/geshi/geshi/src/geshi/octave.php
+++ b/vendor/geshi/geshi/src/geshi/octave.php
@@ -6,7 +6,7 @@
* Juan Pablo Carbajal (carbajal@ifi.uzh.ch)
* Copyright: (c) 2012 Carnë Draug
* (c) 2012 Juan Pablo Carbajal
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2012/05/22
*
* GNU/Octave M-file language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/oobas.php b/vendor/geshi/geshi/src/geshi/oobas.php
index e6f5efd68..b022ebf69 100644
--- a/vendor/geshi/geshi/src/geshi/oobas.php
+++ b/vendor/geshi/geshi/src/geshi/oobas.php
@@ -4,7 +4,7 @@
* ---------
* Author: Roberto Rossi (rsoftware@altervista.org)
* Copyright: (c) 2004 Roberto Rossi (http://rsoftware.altervista.org), Nigel McNie (http://qbnz.com/highlighter)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2004/08/30
*
* OpenOffice.org Basic language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/oorexx.php b/vendor/geshi/geshi/src/geshi/oorexx.php
index 5fde8008b..db629b53a 100644
--- a/vendor/geshi/geshi/src/geshi/oorexx.php
+++ b/vendor/geshi/geshi/src/geshi/oorexx.php
@@ -6,7 +6,7 @@
* Contributors:
* - Walter Pachl (pachl@chello.at)
* Copyright: (c) 2008 Jon Wolfers, (c) 2012 Walter Pachl
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2008/01/07
*
* ooRexx language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/oracle11.php b/vendor/geshi/geshi/src/geshi/oracle11.php
index 36b208279..0e2cf4a28 100644
--- a/vendor/geshi/geshi/src/geshi/oracle11.php
+++ b/vendor/geshi/geshi/src/geshi/oracle11.php
@@ -6,7 +6,7 @@
* Contributions:
* - Updated for 11i by Simon Redhead
* Copyright: (c) 2004 Nigel McNie (http://qbnz.com/highlighter)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2004/06/04
*
* Oracle 11i language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/oracle8.php b/vendor/geshi/geshi/src/geshi/oracle8.php
index f13209029..f723e65bb 100644
--- a/vendor/geshi/geshi/src/geshi/oracle8.php
+++ b/vendor/geshi/geshi/src/geshi/oracle8.php
@@ -4,7 +4,7 @@
* -----------
* Author: Guy Wicks (Guy.Wicks@rbs.co.uk)
* Copyright: (c) 2004 Nigel McNie (http://qbnz.com/highlighter)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2004/06/04
*
* Oracle 8 language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/oxygene.php b/vendor/geshi/geshi/src/geshi/oxygene.php
index 662bba2b1..ac7e88c47 100644
--- a/vendor/geshi/geshi/src/geshi/oxygene.php
+++ b/vendor/geshi/geshi/src/geshi/oxygene.php
@@ -4,7 +4,7 @@
* ----------
* Author: Carlo Kok (ck@remobjects.com), J�rja Norbert (jnorbi@vipmail.hu), Benny Baumann (BenBE@omorphia.de)
* Copyright: (c) 2004 J�rja Norbert, Benny Baumann (BenBE@omorphia.de), Nigel McNie (http://qbnz.com/highlighter)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2010/01/11
*
* Delphi Prism (Oxygene) language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/oz.php b/vendor/geshi/geshi/src/geshi/oz.php
index 3b965663f..943eb8dd2 100644
--- a/vendor/geshi/geshi/src/geshi/oz.php
+++ b/vendor/geshi/geshi/src/geshi/oz.php
@@ -4,7 +4,7 @@
* --------
* Author: Wolfgang Meyer (Wolfgang.Meyer@gmx.net)
* Copyright: (c) 2010 Wolfgang Meyer
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2010/01/03
*
* Oz language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/parasail.php b/vendor/geshi/geshi/src/geshi/parasail.php
index a72d8457d..7a136b9ee 100644
--- a/vendor/geshi/geshi/src/geshi/parasail.php
+++ b/vendor/geshi/geshi/src/geshi/parasail.php
@@ -4,7 +4,7 @@
* -------
* Author: T. Taft (taft@adacore.com)
* Copyright: (c) 2012 AdaCore (http://adacore.com/)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2012/08/02
*
* ParaSail language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/parigp.php b/vendor/geshi/geshi/src/geshi/parigp.php
index 9c6a143cb..fe99c10fd 100644
--- a/vendor/geshi/geshi/src/geshi/parigp.php
+++ b/vendor/geshi/geshi/src/geshi/parigp.php
@@ -4,7 +4,7 @@
* --------
* Author: Charles R Greathouse IV (charles@crg4.com)
* Copyright: 2011-2013 Charles R Greathouse IV (http://math.crg4.com/)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2011/05/11
*
* PARI/GP language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/pascal.php b/vendor/geshi/geshi/src/geshi/pascal.php
index 0d95af503..ee89223cc 100644
--- a/vendor/geshi/geshi/src/geshi/pascal.php
+++ b/vendor/geshi/geshi/src/geshi/pascal.php
@@ -4,7 +4,7 @@
* ----------
* Author: Tux (tux@inamil.cz)
* Copyright: (c) 2004 Tux (http://tux.a4.cz/), Nigel McNie (http://qbnz.com/highlighter)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2004/07/26
*
* Pascal language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/pcre.php b/vendor/geshi/geshi/src/geshi/pcre.php
index 243121bcd..fd48c3962 100644
--- a/vendor/geshi/geshi/src/geshi/pcre.php
+++ b/vendor/geshi/geshi/src/geshi/pcre.php
@@ -4,7 +4,7 @@
* --------
* Author: Benny Baumann (BenBE@geshi.org)
* Copyright: (c) 2010 Benny Baumann (http://qbnz.com/highlighter/)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2010/05/22
*
* PCRE language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/per.php b/vendor/geshi/geshi/src/geshi/per.php
index 8337823aa..096223580 100644
--- a/vendor/geshi/geshi/src/geshi/per.php
+++ b/vendor/geshi/geshi/src/geshi/per.php
@@ -4,7 +4,7 @@
* --------
* Author: Lars Gersmann (lars.gersmann@gmail.com)
* Copyright: (c) 2007 Lars Gersmann
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2007/06/03
*
* Per (forms) (FOURJ's Genero 4GL) language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/perl.php b/vendor/geshi/geshi/src/geshi/perl.php
index 0a05708d7..e60c4c460 100644
--- a/vendor/geshi/geshi/src/geshi/perl.php
+++ b/vendor/geshi/geshi/src/geshi/perl.php
@@ -4,7 +4,7 @@
* --------
* Author: Andreas Gohr (andi@splitbrain.org), Ben Keen (ben.keen@gmail.com)
* Copyright: (c) 2004 Andreas Gohr, Ben Keen (http://www.benjaminkeen.org/), Nigel McNie (http://qbnz.com/highlighter/)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2004/08/20
*
* Perl language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/perl6.php b/vendor/geshi/geshi/src/geshi/perl6.php
index f063a6b2c..ce2fafb3d 100644
--- a/vendor/geshi/geshi/src/geshi/perl6.php
+++ b/vendor/geshi/geshi/src/geshi/perl6.php
@@ -4,7 +4,7 @@
* ---------
* Author: Kodi Arfer (kodiarfer {at} warpmail {period} net); forked from perl.php 1.0.8 by Andreas Gohr (andi@splitbrain.org), Ben Keen (ben.keen@gmail.com)
* Copyright: (c) 2009 Kodi Arfer, (c) 2004 Andreas Gohr, Ben Keen (http://www.benjaminkeen.org/), Nigel McNie (http://qbnz.com/highlighter/)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2009/11/07
*
* Perl 6 language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/pf.php b/vendor/geshi/geshi/src/geshi/pf.php
index 2f80e23f2..440ecb34f 100644
--- a/vendor/geshi/geshi/src/geshi/pf.php
+++ b/vendor/geshi/geshi/src/geshi/pf.php
@@ -4,7 +4,7 @@
* --------
* Author: David Berard (david@nfrance.com)
* Copyright: (c) 2010 Benny Baumann (http://qbnz.com/highlighter/)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2009/10/16
* Based on bash.php
*
diff --git a/vendor/geshi/geshi/src/geshi/phix.php b/vendor/geshi/geshi/src/geshi/phix.php
index a4f4e4e0b..66096a255 100644
--- a/vendor/geshi/geshi/src/geshi/phix.php
+++ b/vendor/geshi/geshi/src/geshi/phix.php
@@ -4,7 +4,7 @@
* ---------------------------------
* Author: Pete Lomax
* Copyright: (c) 2010 Nicholas Koceja
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 16/08/2015
*
* Phix language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/php-brief.php b/vendor/geshi/geshi/src/geshi/php-brief.php
index 922c9d930..f7fb4158b 100644
--- a/vendor/geshi/geshi/src/geshi/php-brief.php
+++ b/vendor/geshi/geshi/src/geshi/php-brief.php
@@ -4,7 +4,7 @@
* -------------
* Author: Nigel McNie (nigel@geshi.org)
* Copyright: (c) 2004 Nigel McNie (http://qbnz.com/highlighter/)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2004/06/02
*
* PHP (brief version) language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/php.php b/vendor/geshi/geshi/src/geshi/php.php
index 6b2484091..dc9561a78 100644
--- a/vendor/geshi/geshi/src/geshi/php.php
+++ b/vendor/geshi/geshi/src/geshi/php.php
@@ -4,7 +4,7 @@
* --------
* Author: Nigel McNie (nigel@geshi.org)
* Copyright: (c) 2004 Nigel McNie (http://qbnz.com/highlighter/)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2004/06/20
*
* PHP language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/pic16.php b/vendor/geshi/geshi/src/geshi/pic16.php
index bd742ad5a..da5e263d5 100644
--- a/vendor/geshi/geshi/src/geshi/pic16.php
+++ b/vendor/geshi/geshi/src/geshi/pic16.php
@@ -4,7 +4,7 @@
* -------
* Author: Phil Mattison (mattison@ohmikron.com)
* Copyright: (c) 2008 Ohmikron Corp. (http://www.ohmikron.com/)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2008/07/30
*
* PIC16 Assembler language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/pike.php b/vendor/geshi/geshi/src/geshi/pike.php
index 12dabf20b..b07a05e34 100644
--- a/vendor/geshi/geshi/src/geshi/pike.php
+++ b/vendor/geshi/geshi/src/geshi/pike.php
@@ -4,7 +4,7 @@
* --------
* Author: Rick E. (codeblock@eighthbit.net)
* Copyright: (c) 2009 Rick E.
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2009/12/10
*
* Pike language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/pixelbender.php b/vendor/geshi/geshi/src/geshi/pixelbender.php
index d7bcc0802..bb9c2a4bd 100644
--- a/vendor/geshi/geshi/src/geshi/pixelbender.php
+++ b/vendor/geshi/geshi/src/geshi/pixelbender.php
@@ -4,7 +4,7 @@
* ----------------
* Author: Richard Olsson (r@richardolsson.se)
* Copyright: (c) 2008 Richard Olsson (richardolsson.se)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2008/11/16
*
* Pixel Bender 1.0 language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/pli.php b/vendor/geshi/geshi/src/geshi/pli.php
index 6f12c1fdc..ac52a4c17 100644
--- a/vendor/geshi/geshi/src/geshi/pli.php
+++ b/vendor/geshi/geshi/src/geshi/pli.php
@@ -4,7 +4,7 @@
* --------
* Author: Robert AH Prins (robert@prino.org)
* Copyright: (c) 2011 Robert AH Prins (http://hitchwiki.org/en/User:Prino)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2011/02/09
*
* PL/I language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/plsql.php b/vendor/geshi/geshi/src/geshi/plsql.php
index c2ad85153..70dfb13c5 100644
--- a/vendor/geshi/geshi/src/geshi/plsql.php
+++ b/vendor/geshi/geshi/src/geshi/plsql.php
@@ -4,7 +4,7 @@
* -------
* Author: Victor Engmark <victor.engmark@gmail.com>
* Copyright: (c) 2006 Victor Engmark (http://l0b0.net/)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2006/10/26
*
* Oracle 9.2 PL/SQL language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/postgresql.php b/vendor/geshi/geshi/src/geshi/postgresql.php
index 2816c6c95..5a666c80d 100644
--- a/vendor/geshi/geshi/src/geshi/postgresql.php
+++ b/vendor/geshi/geshi/src/geshi/postgresql.php
@@ -5,7 +5,7 @@
* Author: Christophe Chauvet (christophe_at_kryskool_dot_org)
* Contributors: Leif Biberg Kristensen <leif_at_solumslekt_dot_org> 2010-05-03
* Copyright: (c) 2007 Christophe Chauvet (http://kryskool.org/), Nigel McNie (http://qbnz.com/highlighter)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2007/07/20
*
* PostgreSQL language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/postscript.php b/vendor/geshi/geshi/src/geshi/postscript.php
index 00ee93c8c..d29b8a7c8 100644
--- a/vendor/geshi/geshi/src/geshi/postscript.php
+++ b/vendor/geshi/geshi/src/geshi/postscript.php
@@ -4,7 +4,7 @@
* -----
* Author: Benny Baumann (BenBE@geshi.org)
* Copyright: (c) 2014 Benny Baumann (http://qbnz.com/highlighter/)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2014/08/10
*
* PostScript language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/povray.php b/vendor/geshi/geshi/src/geshi/povray.php
index eb75d41c5..e71efd742 100644
--- a/vendor/geshi/geshi/src/geshi/povray.php
+++ b/vendor/geshi/geshi/src/geshi/povray.php
@@ -4,7 +4,7 @@
* --------
* Author: Carl Fürstenberg (azatoth@gmail.com)
* Copyright: © 2007 Carl Fürstenberg
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2008/07/11
*
* Povray language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/powerbuilder.php b/vendor/geshi/geshi/src/geshi/powerbuilder.php
index b93e7dd90..5e0cbc798 100644
--- a/vendor/geshi/geshi/src/geshi/powerbuilder.php
+++ b/vendor/geshi/geshi/src/geshi/powerbuilder.php
@@ -4,7 +4,7 @@
* ------
* Author: Doug Porter (powerbuilder.geshi@gmail.com)
* Copyright: (c) 2009 Doug Porter
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2009/07/13
*
* PowerBuilder (PowerScript) language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/powershell.php b/vendor/geshi/geshi/src/geshi/powershell.php
index 423045918..5b3330661 100644
--- a/vendor/geshi/geshi/src/geshi/powershell.php
+++ b/vendor/geshi/geshi/src/geshi/powershell.php
@@ -4,7 +4,7 @@
* ---------------------------------
* Author: Frode Aarebrot (frode@aarebrot.net)
* Copyright: (c) 2008 Frode Aarebrot (http://www.aarebrot.net)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2008/06/20
*
* PowerShell language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/proftpd.php b/vendor/geshi/geshi/src/geshi/proftpd.php
index 99ae9664d..63d392497 100644
--- a/vendor/geshi/geshi/src/geshi/proftpd.php
+++ b/vendor/geshi/geshi/src/geshi/proftpd.php
@@ -4,7 +4,7 @@
* ----------
* Author: Benny Baumann (BenBE@geshi.org)
* Copyright: (c) 2010 Benny Baumann (http://qbnz.com/highlighter)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2011/01/25
*
* ProFTPd language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/progress.php b/vendor/geshi/geshi/src/geshi/progress.php
index 154147286..2160a3cce 100644
--- a/vendor/geshi/geshi/src/geshi/progress.php
+++ b/vendor/geshi/geshi/src/geshi/progress.php
@@ -4,7 +4,7 @@
* --------
* Author: Marco Aurelio de Pasqual (marcop@hdi.com.br)
* Copyright: (c) 2008 Marco Aurelio de Pasqual, Benny Baumann (http://qbnz.com/highlighter)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2008/07/11
*
* Progress language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/prolog.php b/vendor/geshi/geshi/src/geshi/prolog.php
index f3c8e8f19..26d7448d8 100644
--- a/vendor/geshi/geshi/src/geshi/prolog.php
+++ b/vendor/geshi/geshi/src/geshi/prolog.php
@@ -4,7 +4,7 @@
* --------
* Author: Benny Baumann (BenBE@geshi.org)
* Copyright: (c) 2008 Benny Baumann (http://qbnz.com/highlighter/)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2008/10/02
*
* Prolog language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/properties.php b/vendor/geshi/geshi/src/geshi/properties.php
index 3cbde9d3a..89c6d625d 100644
--- a/vendor/geshi/geshi/src/geshi/properties.php
+++ b/vendor/geshi/geshi/src/geshi/properties.php
@@ -4,7 +4,7 @@
* --------
* Author: Edy Hinzen
* Copyright: (c) 2009 Edy Hinzen
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2009/04/03
*
* Property language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/providex.php b/vendor/geshi/geshi/src/geshi/providex.php
index 2d09be432..1a17865e2 100644
--- a/vendor/geshi/geshi/src/geshi/providex.php
+++ b/vendor/geshi/geshi/src/geshi/providex.php
@@ -4,7 +4,7 @@
* ----------
* Author: Jeff Wilder (jeff@coastallogix.com)
* Copyright: (c) 2008 Coastal Logix (http://www.coastallogix.com)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2008/10/18
*
* ProvideX language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/purebasic.php b/vendor/geshi/geshi/src/geshi/purebasic.php
index e40890b2c..8b9b65e34 100644
--- a/vendor/geshi/geshi/src/geshi/purebasic.php
+++ b/vendor/geshi/geshi/src/geshi/purebasic.php
@@ -4,7 +4,7 @@
* -------
* Author: GuShH
* Copyright: (c) 2009 Gustavo Julio Fiorenza
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 13/06/2009
*
* PureBasic language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/pycon.php b/vendor/geshi/geshi/src/geshi/pycon.php
index 31531a7fd..4e372ac72 100644
--- a/vendor/geshi/geshi/src/geshi/pycon.php
+++ b/vendor/geshi/geshi/src/geshi/pycon.php
@@ -4,7 +4,7 @@
* ----------
* Author: Roberto Rossi (rsoftware@altervista.org)
* Copyright: (c) 2004 Roberto Rossi (http://rsoftware.altervista.org), Nigel McNie (http://qbnz.com/highlighter)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2004/08/30
*
* Python language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/pys60.php b/vendor/geshi/geshi/src/geshi/pys60.php
index caedc2ff7..54a1f5955 100644
--- a/vendor/geshi/geshi/src/geshi/pys60.php
+++ b/vendor/geshi/geshi/src/geshi/pys60.php
@@ -4,7 +4,7 @@
* ----------
* Author: Sohan Basak (ronnie.basak96 @gmail.com)
* Copyright: (c) 2012 Sohan Basak (http://tothepower.tk), Roberto Rossi (http://rsoftware.altervista.org), Nigel McNie (http://qbnz.com/highlighter)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2012/05/03
*
* Python for S60 language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/python.php b/vendor/geshi/geshi/src/geshi/python.php
index 3df07ea4f..a34ed749c 100644
--- a/vendor/geshi/geshi/src/geshi/python.php
+++ b/vendor/geshi/geshi/src/geshi/python.php
@@ -4,7 +4,7 @@
* ----------
* Author: Roberto Rossi (rsoftware@altervista.org)
* Copyright: (c) 2004 Roberto Rossi (http://rsoftware.altervista.org), Nigel McNie (http://qbnz.com/highlighter)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2004/08/30
*
* Python language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/q.php b/vendor/geshi/geshi/src/geshi/q.php
index 926ddbf07..a6b005dd5 100644
--- a/vendor/geshi/geshi/src/geshi/q.php
+++ b/vendor/geshi/geshi/src/geshi/q.php
@@ -4,7 +4,7 @@
* -----
* Author: Ian Roddis (ian.roddis@proteanmind.net)
* Copyright: (c) 2008 Ian Roddis (http://proteanmind.net)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2009/01/21
*
* q/kdb+ language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/qbasic.php b/vendor/geshi/geshi/src/geshi/qbasic.php
index 0a09b4d4f..9f3be88d2 100644
--- a/vendor/geshi/geshi/src/geshi/qbasic.php
+++ b/vendor/geshi/geshi/src/geshi/qbasic.php
@@ -4,7 +4,7 @@
* ----------
* Author: Nigel McNie (nigel@geshi.org)
* Copyright: (c) 2004 Nigel McNie (http://qbnz.com/highlighter/)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2004/06/20
*
* QBasic/QuickBASIC language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/qml.php b/vendor/geshi/geshi/src/geshi/qml.php
index 3aa345766..fe89e4596 100644
--- a/vendor/geshi/geshi/src/geshi/qml.php
+++ b/vendor/geshi/geshi/src/geshi/qml.php
@@ -4,7 +4,7 @@
* --------------
* Author: J-P Nurmi <jpnurmi@gmail.com>
* Copyright: (c) 2012-2014 J-P Nurmi <jpnurmi@gmail.com>
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2012/08/19
*
* QML language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/racket.php b/vendor/geshi/geshi/src/geshi/racket.php
index 2b25b9bba..c26ea604d 100644
--- a/vendor/geshi/geshi/src/geshi/racket.php
+++ b/vendor/geshi/geshi/src/geshi/racket.php
@@ -4,7 +4,7 @@
* ----------
* Author: Tim Brown (tim@timb.net)
* Copyright: (c) 2013 Tim Brown ((https://github.com/tim-brown/geshi-racket))
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2013-03-01
*
* Racket language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/rails.php b/vendor/geshi/geshi/src/geshi/rails.php
index f5683b85d..9ca7046e3 100644
--- a/vendor/geshi/geshi/src/geshi/rails.php
+++ b/vendor/geshi/geshi/src/geshi/rails.php
@@ -4,7 +4,7 @@
* ---------
* Author: Moises Deniz
* Copyright: (c) 2005 Moises Deniz
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2007/03/21
*
* Ruby (with Ruby on Rails Framework) language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/rbs.php b/vendor/geshi/geshi/src/geshi/rbs.php
index 76610d1e4..6e9e77526 100644
--- a/vendor/geshi/geshi/src/geshi/rbs.php
+++ b/vendor/geshi/geshi/src/geshi/rbs.php
@@ -4,7 +4,7 @@
* ------
* Author: Deng Wen Gang (deng@priity.com)
* Copyright: (c) 2013 Deng Wen Gang
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2013/01/15
*
* RBScript language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/rebol.php b/vendor/geshi/geshi/src/geshi/rebol.php
index d11447ab5..16c4ceaf4 100644
--- a/vendor/geshi/geshi/src/geshi/rebol.php
+++ b/vendor/geshi/geshi/src/geshi/rebol.php
@@ -4,7 +4,7 @@
* --------
* Author: Lecanu Guillaume (Guillaume@LyA.fr)
* Copyright: (c) 2004-2005 Lecanu Guillaume (Guillaume@LyA.fr)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2004/12/22
*
* Rebol language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/reg.php b/vendor/geshi/geshi/src/geshi/reg.php
index e73c961f9..c96667426 100644
--- a/vendor/geshi/geshi/src/geshi/reg.php
+++ b/vendor/geshi/geshi/src/geshi/reg.php
@@ -4,7 +4,7 @@
* -------
* Author: Sean Hanna (smokingrope@gmail.com)
* Copyright: (c) 2006 Sean Hanna
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 03/15/2006
*
* Microsoft Registry Editor language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/rexx.php b/vendor/geshi/geshi/src/geshi/rexx.php
index 9e0a73e7c..6a4f1a88f 100644
--- a/vendor/geshi/geshi/src/geshi/rexx.php
+++ b/vendor/geshi/geshi/src/geshi/rexx.php
@@ -6,7 +6,7 @@
* Contributors:
* - Walter Pachl (pachl@chello.at)
* Copyright: (c) 2008 Jon Wolfers, (c) 2012 Walter Pachl
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2008/01/07
*
* Rexx language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/robots.php b/vendor/geshi/geshi/src/geshi/robots.php
index 91fd87e9c..92863c3a8 100644
--- a/vendor/geshi/geshi/src/geshi/robots.php
+++ b/vendor/geshi/geshi/src/geshi/robots.php
@@ -4,7 +4,7 @@
* --------
* Author: Christian Lescuyer (cl@goelette.net)
* Copyright: (c) 2006 Christian Lescuyer http://xtian.goelette.info
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2006/02/17
*
* robots.txt language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/roff.php b/vendor/geshi/geshi/src/geshi/roff.php
new file mode 100644
index 000000000..6f8769054
--- /dev/null
+++ b/vendor/geshi/geshi/src/geshi/roff.php
@@ -0,0 +1,510 @@
+<?php
+/*************************************************************************************
+ * roff.php
+ * ---------------------------------
+ * Author: Artur Iwicki (iwicki DOT artur AT svgames DOT pl)
+ * Copyright: (c) 2017 Artur Iwicki
+ * Release Version: 1.0.9.1
+ * Date Started: 2017-11-17
+ *
+ * roff (Unix man page) language file for GeSHi.
+ *
+ * CHANGES
+ * -------
+ * 2018-12-06 (1.0.1)
+ * - Fix reqex for line-start requests (must start with [.'], not [\.'])
+ * - Add some missing whitespace escapes
+ * 2017-11-20 (1.0.0)
+ * - First Release
+ *
+ *************************************************************************************
+ *
+ * This file is part of GeSHi.
+ *
+ * GeSHi is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * GeSHi is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with GeSHi; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ *
+ ************************************************************************************/
+
+$language_data = array (
+ 'LANG_NAME' => 'roff',
+ 'COMMENT_SINGLE' => array(
+ 1 => '\\"',
+ 2 => '\\#',
+ ),
+ 'COMMENT_MULTI' => array(),
+ 'COMMENT_REGEXP' => array(
+ 1 => '/^\\.\\\\"[[:print:]]*/m'
+ ),
+ 'QUOTEMARKS' => array(),
+ 'ESCAPE_CHAR' => '',
+ 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
+ 'CASE_SENSITIVE' => array(
+ GESHI_COMMENTS => false,
+ ),
+ 'KEYWORDS' => array(
+ ),
+ 'SYMBOLS' => array(
+ 0 => array(
+ '\\[-D]', '\\(-D',
+ '\\[Sd]', '\\(Sd',
+ '\\[TP]', '\\(TP',
+ '\\[Tp]', '\\(Tp',
+ '\\[ss]', '\\(ss',
+ '\\[ff]', '\\(ff',
+ '\\[fi]', '\\(fi',
+ '\\[fl]', '\\(fl',
+ '\\[Fi]', '\\(Fi',
+ '\\[Fl]', '\\(Fl',
+ '\\[/L]', '\\(/L',
+ '\\[/l]', '\\(/l',
+ '\\[/O]', '\\(/O',
+ '\\[/o]', '\\(/o',
+ '\\[AE]', '\\(AE',
+ '\\[ae]', '\\(ae',
+ '\\[OE]', '\\(OE',
+ '\\[oe]', '\\(oe',
+ '\\[IJ]', '\\(IJ',
+ '\\[ij]', '\\(ij',
+ '\\[.i]', '\\(.i',
+ '\\[.j]', '\\(.j',
+ '\\[\'A]', '\\(\'A',
+ '\\[\'C]', '\\(\'C',
+ '\\[\'E]', '\\(\'E',
+ '\\[\'I]', '\\(\'I',
+ '\\[\'O]', '\\(\'O',
+ '\\[\'U]', '\\(\'U',
+ '\\[\'Y]', '\\(\'Y',
+ '\\[\'a]', '\\(\'a',
+ '\\[\'c]', '\\(\'c',
+ '\\[\'e]', '\\(\'e',
+ '\\[\'i]', '\\(\'i',
+ '\\[\'o]', '\\(\'o',
+ '\\[\'u]', '\\(\'u',
+ '\\[\'y]', '\\(\'y',
+ '\\[:A]', '\\(:A',
+ '\\[:E]', '\\(:E',
+ '\\[:I]', '\\(:I',
+ '\\[:O]', '\\(:O',
+ '\\[:U]', '\\(:U',
+ '\\[:Y]', '\\(:Y',
+ '\\[:a]', '\\(:a',
+ '\\[:e]', '\\(:e',
+ '\\[:i]', '\\(:i',
+ '\\[:o]', '\\(:o',
+ '\\[:u]', '\\(:u',
+ '\\[:y]', '\\(:y',
+ '\\[^A]', '\\(^A',
+ '\\[^E]', '\\(^E',
+ '\\[^I]', '\\(^I',
+ '\\[^O]', '\\(^O',
+ '\\[^U]', '\\(^U',
+ '\\[^a]', '\\(^a',
+ '\\[^e]', '\\(^e',
+ '\\[^i]', '\\(^i',
+ '\\[^o]', '\\(^o',
+ '\\[^u]', '\\(^u',
+ '\\[`A]', '\\(`A',
+ '\\[`E]', '\\(`E',
+ '\\[`I]', '\\(`I',
+ '\\[`O]', '\\(`O',
+ '\\[`U]', '\\(`U',
+ '\\[`a]', '\\(`a',
+ '\\[`e]', '\\(`e',
+ '\\[`i]', '\\(`i',
+ '\\[`o]', '\\(`o',
+ '\\[`u]', '\\(`u',
+ '\\[~A]', '\\(~A',
+ '\\[~N]', '\\(~N',
+ '\\[~O]', '\\(~O',
+ '\\[~a]', '\\(~a',
+ '\\[~n]', '\\(~n',
+ '\\[~o]', '\\(~o',
+ '\\[vS]', '\\(vS',
+ '\\[vs]', '\\(vs',
+ '\\[vZ]', '\\(vZ',
+ '\\[vz]', '\\(vz',
+ '\\[,C]', '\\(,C',
+ '\\[,c]', '\\(,c',
+ '\\[oA]', '\\(oA',
+ '\\[oa]', '\\(oa',
+ '\\[a"]', '\\(a"',
+ '\\[a-]', '\\(a-',
+ '\\[a.]', '\\(a.',
+ '\\[a^]', '\\(a^',
+ '\\[aa]', '\\(aa',
+ '\\[ga]', '\\(ga',
+ '\\[ab]', '\\(ab',
+ '\\[ac]', '\\(ac',
+ '\\[ad]', '\\(ad',
+ '\\[ah]', '\\(ah',
+ '\\[ao]', '\\(ao',
+ '\\[a~]', '\\(a~',
+ '\\[ho]', '\\(ho',
+ '\\[ha]', '\\(ha',
+ '\\[ti]', '\\(ti',
+ '\\[Bq]', '\\(Bq',
+ '\\[bq]', '\\(bq',
+ '\\[lq]', '\\(lq',
+ '\\[rq]', '\\(rq',
+ '\\[oq]', '\\(oq',
+ '\\[cq]', '\\(cq',
+ '\\[aq]', '\\(aq',
+ '\\[dq]', '\\(dq',
+ '\\[Fo]', '\\(Fo',
+ '\\[Fc]', '\\(Fc',
+ '\\[fo]', '\\(fo',
+ '\\[fc]', '\\(fc',
+ '\\[r!]', '\\(r!',
+ '\\[r?]', '\\(r?',
+ '\\[em]', '\\(em',
+ '\\[en]', '\\(en',
+ '\\[hy]', '\\(hy',
+ '\\[lB]', '\\(lB',
+ '\\[rB]', '\\(rB',
+ '\\[lC]', '\\(lC',
+ '\\[rC]', '\\(rC',
+ '\\[la]', '\\(la',
+ '\\[ra]', '\\(ra',
+ '\\[bv]', '\\(bv',
+ '\\[braceex]',
+ '\\[bracketlefttp]',
+ '\\[bracketleftbt]',
+ '\\[bracketleftex]',
+ '\\[bracketrighttp]',
+ '\\[bracketrightbt]',
+ '\\[bracketrightex]',
+ '\\[lt]', '\\(lt',
+ '\\[bracelefttp]',
+ '\\[lk]', '\\(lk',
+ '\\[braceleftmid]',
+ '\\[lb]', '\\(lb',
+ '\\[braceleftbt]',
+ '\\[braceleftex]',
+ '\\[rt]', '\\(rt',
+ '\\[bracerighttp]',
+ '\\[rk]', '\\(rk',
+ '\\[bracerightmid]',
+ '\\[rb]', '\\(rb',
+ '\\[bracerightbt]',
+ '\\[bracerightex]',
+ '\\[parenlefttp]',
+ '\\[parenleftbt]',
+ '\\[parenleftex]',
+ '\\[parenrighttp]',
+ '\\[parenrightbt]',
+ '\\[parenrightex]',
+ '\\[&lt;-]', '\\(&lt;-',
+ '\\[-&gt;]', '\\(-&gt;',
+ '\\[&lt;&gt;]', '\\(&lt;&gt;',
+ '\\[da]', '\\(da',
+ '\\[ua]', '\\(ua',
+ '\\[va]', '\\(va',
+ '\\[lA]', '\\(lA',
+ '\\[rA]', '\\(rA',
+ '\\[hA]', '\\(hA',
+ '\\[dA]', '\\(dA',
+ '\\[uA]', '\\(uA',
+ '\\[vA]', '\\(vA',
+ '\\[an]', '\\(an',
+ '\\[ba]', '\\(ba',
+ '\\[br]', '\\(br',
+ '\\[ul]', '\\(ul',
+ '\\[rn]', '\\(rn',
+ '\\[ru]', '\\(ru',
+ '\\[bb]', '\\(bb',
+ '\\[sl]', '\\(sl',
+ '\\[rs]', '\\(rs',
+ '\\[ci]', '\\(ci',
+ '\\[bu]', '\\(bu',
+ '\\[dd]', '\\(dd',
+ '\\[dg]', '\\(dg',
+ '\\[lz]', '\\(lz',
+ '\\[sq]', '\\(sq',
+ '\\[ps]', '\\(ps',
+ '\\[sc]', '\\(sc',
+ '\\[lh]', '\\(lh',
+ '\\[rh]', '\\(rh',
+ '\\[at]', '\\(at',
+ '\\[sh]', '\\(sh',
+ '\\[CR]', '\\(CR',
+ '\\[OK]', '\\(OK',
+ '\\[co]', '\\(co',
+ '\\[rg]', '\\(rg',
+ '\\[tm]', '\\(tm',
+ '\\[bs]', '\\(bs',
+ '\\[Do]', '\\(Do',
+ '\\[ct]', '\\(ct',
+ '\\[eu]', '\\(eu',
+ '\\[Eu]', '\\(Eu',
+ '\\[Ye]', '\\(Ye',
+ '\\[Po]', '\\(Po',
+ '\\[Cs]', '\\(Cs',
+ '\\[Fn]', '\\(Fn',
+ '\\[de]', '\\(de',
+ '\\[%0]', '\\(%0',
+ '\\[fm]', '\\(fm',
+ '\\[sd]', '\\(sd',
+ '\\[mc]', '\\(mc',
+ '\\[Of]', '\\(Of',
+ '\\[Om]', '\\(Om',
+ '\\[AN]', '\\(AN',
+ '\\[OR]', '\\(OR',
+ '\\[no]', '\\(no',
+ '\\[tno]',
+ '\\[te]', '\\(te',
+ '\\[fa]', '\\(fa',
+ '\\[st]', '\\(st',
+ '\\[3d]', '\\(3d',
+ '\\[tf]', '\\(tf',
+ '\\[or]', '\\(or',
+ '\\[12]', '\\(12',
+ '\\[14]', '\\(14',
+ '\\[34]', '\\(34',
+ '\\[18]', '\\(18',
+ '\\[38]', '\\(38',
+ '\\[58]', '\\(58',
+ '\\[78]', '\\(78',
+ '\\[S1]', '\\(S1',
+ '\\[S2]', '\\(S2',
+ '\\[S3]', '\\(S3',
+ '\\[pl]', '\\(pl',
+ '\\[mi]', '\\(mi',
+ '\\[-+]', '\\(-+',
+ '\\[+-]', '\\(+-',
+ '\\[t+-]',
+ '\\[pc]', '\\(pc',
+ '\\[md]', '\\(md',
+ '\\[mu]', '\\(mu',
+ '\\[tmu]',
+ '\\[c*]', '\\(c*',
+ '\\[c+]', '\\(c+',
+ '\\[di]', '\\(di',
+ '\\[tdi]',
+ '\\[f/]', '\\(f/',
+ '\\[**]', '\\(**',
+ '\\[&lt;=]', '\\(&lt;=',
+ '\\[&gt;=]', '\\(&gt;=',
+ '\\[&lt;&lt;]', '\\(&lt;&lt;',
+ '\\[&gt;&gt;]', '\\(&gt;&gt;',
+ '\\[eq]', '\\(eq',
+ '\\[!=]', '\\(!=',
+ '\\[==]', '\\(==',
+ '\\[ne]', '\\(ne',
+ '\\[=~]', '\\(=~',
+ '\\[|=]', '\\(|=',
+ '\\[ap]', '\\(ap',
+ '\\[~~]', '\\(~~',
+ '\\[~=]', '\\(~=',
+ '\\[pt]', '\\(pt',
+ '\\[es]', '\\(es',
+ '\\[mo]', '\\(mo',
+ '\\[nm]', '\\(nm',
+ '\\[sb]', '\\(sb',
+ '\\[nb]', '\\(nb',
+ '\\[sp]', '\\(sp',
+ '\\[nc]', '\\(nc',
+ '\\[ib]', '\\(ib',
+ '\\[ip]', '\\(ip',
+ '\\[ca]', '\\(ca',
+ '\\[cu]', '\\(cu',
+ '\\[/_]', '\\(/_',
+ '\\[pp]', '\\(pp',
+ '\\[is]', '\\(is',
+ '\\[integral]',
+ '\\[sum]',
+ '\\[product]',
+ '\\[coproduct]',
+ '\\[gr]', '\\(gr',
+ '\\[sr]', '\\(sr',
+ '\\[sqrt]',
+ '\\[radicalex]',
+ '\\[sqrtex]',
+ '\\[lc]', '\\(lc',
+ '\\[rc]', '\\(rc',
+ '\\[lf]', '\\(lf',
+ '\\[rf]', '\\(rf',
+ '\\[if]', '\\(if',
+ '\\[Ah]', '\\(Ah',
+ '\\[Im]', '\\(Im',
+ '\\[Re]', '\\(Re',
+ '\\[wp]', '\\(wp',
+ '\\[pd]', '\\(pd',
+ '\\[-h]', '\\(-h',
+ '\\[hbar]',
+ '\\[*A]', '\\(*A',
+ '\\[*B]', '\\(*B',
+ '\\[*G]', '\\(*G',
+ '\\[*D]', '\\(*D',
+ '\\[*E]', '\\(*E',
+ '\\[*Z]', '\\(*Z',
+ '\\[*Y]', '\\(*Y',
+ '\\[*H]', '\\(*H',
+ '\\[*I]', '\\(*I',
+ '\\[*K]', '\\(*K',
+ '\\[*L]', '\\(*L',
+ '\\[*M]', '\\(*M',
+ '\\[*N]', '\\(*N',
+ '\\[*C]', '\\(*C',
+ '\\[*O]', '\\(*O',
+ '\\[*P]', '\\(*P',
+ '\\[*R]', '\\(*R',
+ '\\[*S]', '\\(*S',
+ '\\[*T]', '\\(*T',
+ '\\[*U]', '\\(*U',
+ '\\[*F]', '\\(*F',
+ '\\[*X]', '\\(*X',
+ '\\[*Q]', '\\(*Q',
+ '\\[*W]', '\\(*W',
+ '\\[*a]', '\\(*a',
+ '\\[*b]', '\\(*b',
+ '\\[*g]', '\\(*g',
+ '\\[*d]', '\\(*d',
+ '\\[*e]', '\\(*e',
+ '\\[*z]', '\\(*z',
+ '\\[*y]', '\\(*y',
+ '\\[*h]', '\\(*h',
+ '\\[*i]', '\\(*i',
+ '\\[*k]', '\\(*k',
+ '\\[*l]', '\\(*l',
+ '\\[*m]', '\\(*m',
+ '\\[*n]', '\\(*n',
+ '\\[*c]', '\\(*c',
+ '\\[*o]', '\\(*o',
+ '\\[*p]', '\\(*p',
+ '\\[*r]', '\\(*r',
+ '\\[ts]', '\\(ts',
+ '\\[*s]', '\\(*s',
+ '\\[*t]', '\\(*t',
+ '\\[*u]', '\\(*u',
+ '\\[*f]', '\\(*f',
+ '\\[*x]', '\\(*x',
+ '\\[*q]', '\\(*q',
+ '\\[*w]', '\\(*w',
+ '\\[+h]', '\\(+h',
+ '\\[+f]', '\\(+f',
+ '\\[+p]', '\\(+p',
+ '\\[+e]', '\\(+e',
+ '\\[CL]', '\\(CL',
+ '\\[SP]', '\\(SP',
+ '\\[HE]', '\\(HE',
+ '\\[DI]', '\\(DI',
+ ),
+ 1 => array(
+ // Special characters
+ '\\\\', '\\´', '\\`', '\\-',
+ '\\_', '\\.', '\\%', '\\!',
+ '\\0', '\\|', '\\^', '\\&',
+ '\\)', '\\/', '\\,', '\\~',
+ '\\:', '\\{', '\\}', '\\a',
+ '\\c', '\\d', '\\e', '\\E',
+ '\\p', '\\r', '\\t', '\\u',
+
+ // Whitespace escapes
+ '\\ ', '\\h', "\\\n",
+
+ // Text modifiers
+ '\\fB', '\\fI', '\\fR', '\\fP',
+ '\\f0', '\\f1', '\\f2', '\\f3', '\\f4', '\\f5', '\\f6', '\\f7', '\\f8', '\\f9',
+ ),
+ ),
+ 'STYLES' => array(
+ 'KEYWORDS' => array(
+ ),
+ 'COMMENTS' => array(
+ 1 => 'color: #ffff55;',
+ 2 => 'color: #ffff55;',
+ ),
+ 'ESCAPE_CHAR' => array(
+ ),
+ 'BRACKETS' => array(
+ ),
+ 'STRINGS' => array(
+ ),
+ 'NUMBERS' => array(
+ ),
+ 'METHODS' => array(
+ ),
+ 'SYMBOLS' => array(
+ 0 => 'color: #00aaaa',
+ 1 => 'color: #aa00aa',
+ ),
+ 'REGEXPS' => array(
+ 0 => 'color: #ffff55;',
+ 1 => 'font-weight: bold;',
+ 2 => 'font-style: italic;',
+ 3 => 'font-weight: bold;',
+ 4 => 'font-style: italic;',
+ 5 => 'color: #55aaff;',
+ ),
+ 'SCRIPT' => array(
+ )
+ ),
+ 'REGEXPS' => array(
+ 0 => array(
+ // Unicode characters
+ GESHI_SEARCH => '\\\\\\[u([[:xdigit:]]{4,5})\\]',
+ GESHI_REPLACE => '\\\\[\\1]',
+ GESHI_MODIFIERS => '',
+ GESHI_BEFORE => '',
+ GESHI_AFTER => '',
+ ),
+ 1 => array(
+ // Bold text - formatted using .B or 'B
+ GESHI_SEARCH => "^([\\.']{1}B[[:blank:]]*\\n{0,1})([[:print:]]+)",
+ GESHI_REPLACE => '\\2',
+ GESHI_MODIFIERS => 'm',
+ GESHI_BEFORE => '\\1',
+ GESHI_AFTER => '',
+ ),
+ 2 => array(
+ // Italic text - formatted using .I or 'I
+ GESHI_SEARCH => "^([\\.']{1}I[[:blank:]]*\\n{0,1})([[:print:]]+)",
+ GESHI_REPLACE => '\\2',
+ GESHI_MODIFIERS => 'm',
+ GESHI_BEFORE => '\\1',
+ GESHI_AFTER => '',
+ ),
+ 3 => array(
+ // Bold text - formatted inline
+ GESHI_SEARCH => '(\\\\fB)([[:print:]]+?)(\\\\fR)',
+ GESHI_REPLACE => '\\2',
+ GESHI_MODIFIERS => '',
+ GESHI_BEFORE => '\\1',
+ GESHI_AFTER => '\\3',
+ ),
+ 4 => array (
+ // Italic text - formatted inline
+ GESHI_SEARCH => '(\\\\fI)([[:print:]]+?)(\\\\fR)',
+ GESHI_REPLACE => '\\2',
+ GESHI_MODIFIERS => '',
+ GESHI_BEFORE => '\\1',
+ GESHI_AFTER => '\\3',
+ ),
+ 5 => array(
+ // Line start macros (.TP, .SH, et cetera)
+ GESHI_SEARCH => "^([.']{1}[a-zA-Z]+)",
+ GESHI_REPLACE => '\\1',
+ GESHI_MODIFIERS => 'm',
+ GESHI_BEFORE => '',
+ GESHI_AFTER => '',
+ ),
+ ),
+ 'URLS' => array(),
+ 'OOLANG' => false,
+ 'OBJECT_SPLITTERS' => array(),
+ 'HIGHLIGHT_STRICT_BLOCK' => array(),
+ 'STRICT_MODE_APPLIES' => GESHI_NEVER,
+ 'SCRIPT_DELIMITERS' => array(),
+);
diff --git a/vendor/geshi/geshi/src/geshi/rpmspec.php b/vendor/geshi/geshi/src/geshi/rpmspec.php
index 55d722d85..49c41069f 100644
--- a/vendor/geshi/geshi/src/geshi/rpmspec.php
+++ b/vendor/geshi/geshi/src/geshi/rpmspec.php
@@ -4,7 +4,7 @@
* ---------------------------------
* Author: Paul Grinberg (gri6507 TA unity-linux TOD org)
* Copyright: (c) 2010 Paul Grinberg
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2010/04/27
*
* RPM Spec language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/rsplus.php b/vendor/geshi/geshi/src/geshi/rsplus.php
index 6c8771dd4..4dad7db53 100644
--- a/vendor/geshi/geshi/src/geshi/rsplus.php
+++ b/vendor/geshi/geshi/src/geshi/rsplus.php
@@ -7,7 +7,7 @@
* - Benilton Carvalho (beniltoncarvalho@gmail.com)
* - Fernando Henrique Ferraz Pereira da Rosa (mentus@gmail.com)
* Copyright: (c) 2009 Ron Fredericks (http://www.LectureMaker.com)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2009/03/28
*
* R language file for GeSHi.
@@ -374,7 +374,7 @@ $language_data = array (
'getS3method', 'getTxtProgressBar', 'glob2rx', 'head', 'head.matrix', 'help', 'help.request', 'help.search',
'help.start', 'history', 'index.search', 'install.packages', 'installed.packages', 'is.relistable',
'limitedLabels', 'loadhistory', 'localeToCharset', 'ls.str', 'lsf.str', 'make.packages.html', 'make.socket',
- 'makeRweaveLatexCodeRunner', 'memory.limit', 'memory.size', 'menu', 'methods', 'mirror2html', 'modifyList',
+ 'makeRweaveLatexCodeRunner', 'memory.limit', 'memory.size', 'menu', 'mirror2html', 'modifyList',
'new.packages', 'normalizePath', 'nsl', 'object.size', 'old.packages', 'package.contents', 'package.skeleton',
'packageDescription', 'packageStatus', 'page', 'person', 'personList', 'pico', 'prompt', 'promptData',
'promptPackage', 'rc.getOption', 'rc.options', 'rc.settings', 'rc.status', 'read.csv', 'read.csv2', 'read.delim',
diff --git a/vendor/geshi/geshi/src/geshi/ruby.php b/vendor/geshi/geshi/src/geshi/ruby.php
index b47953d8e..0b8aa333c 100644
--- a/vendor/geshi/geshi/src/geshi/ruby.php
+++ b/vendor/geshi/geshi/src/geshi/ruby.php
@@ -4,7 +4,7 @@
* --------
* Author: Moises Deniz
* Copyright: (c) 2007 Moises Deniz
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2007/03/21
*
* Ruby language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/rust.php b/vendor/geshi/geshi/src/geshi/rust.php
index 46d46c817..3fb5c363f 100644
--- a/vendor/geshi/geshi/src/geshi/rust.php
+++ b/vendor/geshi/geshi/src/geshi/rust.php
@@ -4,7 +4,7 @@
* --------
* Author: Edward Hart (edward.dan.hart@gmail.com)
* Copyright: (c) 2013 Edward Hart
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2013/10/20
*
* Rust language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/sas.php b/vendor/geshi/geshi/src/geshi/sas.php
index 31446d715..3d370be08 100644
--- a/vendor/geshi/geshi/src/geshi/sas.php
+++ b/vendor/geshi/geshi/src/geshi/sas.php
@@ -4,7 +4,7 @@
* -------
* Author: Galen Johnson (solitaryr@gmail.com)
* Copyright: (c) 2004 Nigel McNie (http://qbnz.com/highlighter/)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2005/12/27
*
* SAS language file for GeSHi. Based on the sas vim file.
diff --git a/vendor/geshi/geshi/src/geshi/sass.php b/vendor/geshi/geshi/src/geshi/sass.php
index a4408a991..725435aae 100644
--- a/vendor/geshi/geshi/src/geshi/sass.php
+++ b/vendor/geshi/geshi/src/geshi/sass.php
@@ -4,7 +4,7 @@
* -------
* Author: Javier Eguiluz (javier.eguiluz@gmail.com)
* Copyright: (c) 2014 Javier Eguiluz (javier.eguiluz@gmail.com)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2014/05/10
*
* SASS language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/scala.php b/vendor/geshi/geshi/src/geshi/scala.php
index d288eb0c2..d9b0bac10 100644
--- a/vendor/geshi/geshi/src/geshi/scala.php
+++ b/vendor/geshi/geshi/src/geshi/scala.php
@@ -4,7 +4,7 @@
* ----------
* Author: Franco Lombardo (franco@francolombardo.net)
* Copyright: (c) 2008 Franco Lombardo, Benny Baumann
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2008/02/08
*
* Scala language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/scheme.php b/vendor/geshi/geshi/src/geshi/scheme.php
index 3230d5f58..e5a289af0 100644
--- a/vendor/geshi/geshi/src/geshi/scheme.php
+++ b/vendor/geshi/geshi/src/geshi/scheme.php
@@ -4,7 +4,7 @@
* ----------
* Author: Jon Raphaelson (jonraphaelson@gmail.com)
* Copyright: (c) 2005 Jon Raphaelson, Nigel McNie (http://qbnz.com/highlighter)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2004/08/30
*
* Scheme language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/scilab.php b/vendor/geshi/geshi/src/geshi/scilab.php
index 6b3552032..dbe8a39a6 100644
--- a/vendor/geshi/geshi/src/geshi/scilab.php
+++ b/vendor/geshi/geshi/src/geshi/scilab.php
@@ -4,7 +4,7 @@
* --------
* Author: Christophe David (geshi@christophedavid.org)
* Copyright: (c) 2008 Christophe David (geshi@christophedavid.org)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2008/08/04
*
* SciLab language file for GeSHi.
@@ -182,7 +182,7 @@ $language_data = array (
'rubberbox', 'salesman', 'sample', 'samplef', 'samwr', 'save', 'save_format', 'save_graph', 'savehistory',
'savematfile', 'savewave', 'sca', 'scaling', 'scanf', 'scanf_conversion', 'scf', 'schur', 'sci_files',
'sci2exp', 'sci2for', 'sci2map', 'sciargs', 'SciComplex', 'SciComplexArray', 'SciDouble', 'SciDoubleArray',
- 'scilab', 'Scilab', 'ScilabEval', 'scilink', 'scipad', 'SciString', 'SciStringArray', 'sd2sci', 'sda', 'sdf',
+ 'ScilabEval', 'scilink', 'scipad', 'SciString', 'SciStringArray', 'sd2sci', 'sda', 'sdf',
'secto3d', 'segs_properties', 'semi', 'semicolon', 'semidef', 'sensi', 'set', 'set_posfig_dim',
'setbpt', 'setdiff', 'setenv', 'seteventhandler', 'setfield', 'sethomedirectory', 'setlanguage', 'setmenu',
'sfact', 'Sfgrayplot', 'Sgrayplot', 'sgrid', 'shortest_path', 'show_arcs', 'show_graph', 'show_nodes',
diff --git a/vendor/geshi/geshi/src/geshi/scl.php b/vendor/geshi/geshi/src/geshi/scl.php
index 761a0ac1e..17bad11b3 100644
--- a/vendor/geshi/geshi/src/geshi/scl.php
+++ b/vendor/geshi/geshi/src/geshi/scl.php
@@ -4,7 +4,7 @@
* ---------------------------------
* Author: Leonhard Hösch (leonhard.hoesch@siemens.com)
* Copyright: (c) 2008 by Leonhard Hösch (siemens.de)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2012/09/25
*
* SCL language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/sdlbasic.php b/vendor/geshi/geshi/src/geshi/sdlbasic.php
index 170c665e8..b5fc9fa9f 100644
--- a/vendor/geshi/geshi/src/geshi/sdlbasic.php
+++ b/vendor/geshi/geshi/src/geshi/sdlbasic.php
@@ -4,7 +4,7 @@
* ------------
* Author: Roberto Rossi
* Copyright: (c) 2005 Roberto Rossi (http://rsoftware.altervista.org)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2005/08/19
*
* sdlBasic (http://sdlbasic.sf.net) language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/smalltalk.php b/vendor/geshi/geshi/src/geshi/smalltalk.php
index d57e54302..faa07986f 100644
--- a/vendor/geshi/geshi/src/geshi/smalltalk.php
+++ b/vendor/geshi/geshi/src/geshi/smalltalk.php
@@ -4,7 +4,7 @@
* --------
* Author: Bananeweizen (Bananeweizen@gmx.de)
* Copyright: (c) 2005 Bananeweizen (www.bananeweizen.de)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2005/03/27
*
* Smalltalk language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/smarty.php b/vendor/geshi/geshi/src/geshi/smarty.php
index cb8833f89..62b37f2af 100644
--- a/vendor/geshi/geshi/src/geshi/smarty.php
+++ b/vendor/geshi/geshi/src/geshi/smarty.php
@@ -4,7 +4,7 @@
* ----------
* Author: Alan Juden (alan@judenware.org)
* Copyright: (c) 2004 Alan Juden, Nigel McNie (http://qbnz.com/highlighter/)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2004/07/10
*
* Smarty template language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/spark.php b/vendor/geshi/geshi/src/geshi/spark.php
index 30213ec2e..0d722e7a3 100644
--- a/vendor/geshi/geshi/src/geshi/spark.php
+++ b/vendor/geshi/geshi/src/geshi/spark.php
@@ -4,7 +4,7 @@
* -------
* Author: Phil Thornley (tux@inmail.cz)
* Copyright: (c) 2004 Phil Thornley (http://www.sparksure.com)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2010/08/22
*
* SPARK language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/sparql.php b/vendor/geshi/geshi/src/geshi/sparql.php
index 68aaa5fd6..d5847f2bf 100644
--- a/vendor/geshi/geshi/src/geshi/sparql.php
+++ b/vendor/geshi/geshi/src/geshi/sparql.php
@@ -4,7 +4,7 @@
* -------
* Author: Karima Rafes (karima.rafes@bordercloud.com)
* Copyright: (c) 2011 Bourdercloud.com
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2011/11/05
*
* SPARQL language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/sql.php b/vendor/geshi/geshi/src/geshi/sql.php
index b38672933..73e2109f4 100644
--- a/vendor/geshi/geshi/src/geshi/sql.php
+++ b/vendor/geshi/geshi/src/geshi/sql.php
@@ -6,7 +6,7 @@
* Contributors:
* - Jürgen Thomas (Juergen.Thomas@vs-polis.de)
* Copyright: (c) 2004 Nigel McNie (http://qbnz.com/highlighter)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2004/06/04
*
* SQL language file for GeSHi.
@@ -69,7 +69,7 @@ $language_data = array (
'CONNECT', 'CONSTRAINT', 'CONVERT', 'COUNT', 'CREATE', 'CROSS', 'CURRENT',
'CURRENT_DATE', 'CURRENT_TIME', 'CURRENT_TIMESTAMP', 'CURRENT_USER',
'DATA', 'DATABASE', 'DATABASES', 'DATE', 'DAY', 'DEC', 'DECIMAL', 'DECLARE',
- 'DEFAULT', 'DELAYED', 'DELETE', 'DESC', 'DESCRIBE', 'DISTINCT', 'DOUBLE',
+ 'DEFAULT', 'DEFERRABLE', 'DEFERRED', 'DELAYED', 'DELETE', 'DESC', 'DESCRIBE', 'DISTINCT', 'DOUBLE',
'DOMAIN', 'DROP',
'ELSE', 'ELSEIF', 'ENCLOSED', 'END', 'ESCAPED', 'EXCEPT', 'EXEC', 'EXECUTE', 'EXISTS',
'EXP', 'EXPLAIN', 'EXTRACT',
@@ -77,7 +77,7 @@ $language_data = array (
'FOREIGN', 'FROM', 'FULL', 'FUNCTION',
'GET', 'GROUP', 'GROUPING', 'GO', 'GOTO', 'GRANT', 'GRANTED',
'HAVING', 'HOUR',
- 'IDENTIFIED', 'IDENTITY', 'IF', 'IGNORE', 'IN', 'INCREMENT', 'INDEX', 'INFILE', 'INNER',
+ 'IDENTIFIED', 'IDENTITY', 'IF', 'IGNORE', 'IMMEDIATE', 'IN', 'INCREMENT', 'INDEX', 'INFILE', 'INITIALLY', 'INNER',
'INOUT', 'INPUT', 'INSERT', 'INT', 'INTEGER', 'INTERSECT', 'INTERSECTION', 'INTERVAL',
'INTO', 'IS',
'JOIN',
diff --git a/vendor/geshi/geshi/src/geshi/sshconfig.php b/vendor/geshi/geshi/src/geshi/sshconfig.php
new file mode 100644
index 000000000..d38cc4628
--- /dev/null
+++ b/vendor/geshi/geshi/src/geshi/sshconfig.php
@@ -0,0 +1,165 @@
+<?php
+/*************************************************************************************
+ * sshconfig.php
+ * --------
+ * Author: Kevin Ernst (kevin.ernst -at- cchmc.org)
+ * Copyright: (c) 2017 Kevin Ernst
+ * Release Version: 1.0.9.1
+ * Date Started: 2017/12/01
+ *
+ * OpenSSH config file (~/.ssh/config) language file for GeSHi.
+ *
+ * CHANGES
+ * -------
+ * 2017/12/02 (1.0.0)
+ * - First release; couldn't figure out how to separately highlight negated
+ * hostnames/wildcards, but it's good enough for a basic ~/.ssh/config
+ *
+ *************************************************************************************
+ *
+ * This file is part of GeSHi.
+ *
+ * GeSHi is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * GeSHi is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with GeSHi; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ *
+ ************************************************************************************/
+
+$language_data = array (
+ 'LANG_NAME' => 'sshconfig',
+ 'COMMENT_SINGLE' => array(),
+ 'COMMENT_MULTI' => array(),
+ 'COMMENT_REGEXP' => array(0 => '/^\s*#.*?$/m'),
+ 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
+ 'QUOTEMARKS' => array('"'),
+ 'ESCAPE_CHAR' => '',
+ 'KEYWORDS' => array(
+ 0 => array(
+ 'Host',
+ ),
+ 1 => array(
+ "Hostname", "Match", "AddKeysToAgent", "AddressFamily", "BatchMode",
+ "BindAddress", "CanonicalDomains", "CanonicalizeFallbackLocal",
+ "CanonicalizeHostname", "CanonicalizeMaxDots",
+ "CanonicalizePermittedCNAMEs", "CertificateFile",
+ "ChallengeResponseAuthentication", "CheckHostIP", "Ciphers",
+ "ClearAllForwardings", "Compression", "ConnectionAttempts",
+ "ConnectTimeout", "ControlMaster", "ControlPath", "ControlPersist",
+ "DynamicForward", "EnableSSHKeysign", "EscapeChar",
+ "ExitOnForwardFailure", "FingerprintHash", "ForwardAgent",
+ "ForwardX11", "ForwardX11Timeout", "ForwardX11Trusted",
+ "GatewayPorts", "GlobalKnownHostsFile", "GSSAPIAuthentication",
+ "GSSAPIDelegateCredentials", "HashKnownHosts",
+ "HostbasedAuthentication", "HostbasedKeyTypes", "HostKeyAlgorithms",
+ "HostKeyAlias", "HostName", "IdentitiesOnly", "IdentityAgent",
+ "IdentityFile", "IgnoreUnknown", "Include", "IPQoS",
+ "KbdInteractiveAuthentication", "KbdInteractiveDevices",
+ "KexAlgorithms", "LocalCommand", "LocalForward", "LogLevel", "MACs",
+ "NoHostAuthenticationForLocalhost", "NumberOfPasswordPrompts",
+ "PasswordAuthentication", "PermitLocalCommand", "PKCS11Provider",
+ "Port", "PreferredAuthentications", "ProxyCommand", "ProxyJump",
+ "ProxyUseFdpass", "PubkeyAcceptedKeyTypes", "PubkeyAuthentication",
+ "RekeyLimit", "RemoteCommand", "RemoteForward", "RequestTTY",
+ "RevokedHostKeys", "SendEnv", "ServerAliveCountMax",
+ "ServerAliveInterval", "StreamLocalBindMask",
+ "StreamLocalBindUnlink", "StrictHostKeyChecking", "SyslogFacility",
+ "TCPKeepAlive", "Tunnel", "TunnelDevice", "UpdateHostKeys",
+ "UsePrivilegedPort", "User", "UserKnownHostsFile",
+ "VerifyHostKeyDNS", "VisualHostKey", "XAuthLocation",
+ ),
+ ),
+ 'SYMBOLS' => array(
+ 0 => array(
+ '%h', '%p',
+ ),
+ // these get clobbered by regexes anyway
+ //1 => array( '!'),
+ //2 => array( '*')
+ ),
+ 'CASE_SENSITIVE' => array(
+ GESHI_COMMENTS => false,
+ 0 => true,
+ 1 => true,
+ ),
+ 'STYLES' => array(
+ 'KEYWORDS' => array(
+ 0 => 'color: green; font-weight: bold',
+ 1 => 'color: blue',
+ ),
+ 'COMMENTS' => array(
+ 0 => 'color: #666666; font-style: italic;'
+ ),
+ 'ESCAPE_CHAR' => array(
+ 0 => ''
+ ),
+ 'BRACKETS' => array(
+ 0 => ''
+ ),
+ 'STRINGS' => array(
+ 0 => 'color: #933;'
+ ),
+ 'NUMBERS' => array(
+ 0 => ''
+ ),
+ 'METHODS' => array(
+ 0 => ''
+ ),
+ 'SYMBOLS' => array(
+ 0 => 'color: lightseagreen; font-weight: bold',
+ // these two get clobbered by regexes below anyway
+ 1 => 'color: red; font-weight: bold',
+ 1 => 'color: darkmagenta; font-weight: bold',
+ ),
+ 'REGEXPS' => array(
+ 0 => 'color: darkmagenta;',
+ //1 => 'color: red; font-weight: bold',
+ 2 => 'color: magenta; font-weight: bold',
+ ),
+ 'SCRIPT' => array(
+ 0 => ''
+ )
+ ),
+ 'URLS' => array(
+ 0=> 'https://man.openbsd.org/ssh_config#{FNAME}',
+ 1=> 'https://man.openbsd.org/ssh_config#{FNAME}',
+ ),
+ 'OOLANG' => false,
+ 'OBJECT_SPLITTERS' => array(
+ ),
+ 'REGEXPS' => array(
+ // Hostnames
+ 0 => array(
+ GESHI_SEARCH => '(Host(name)?.*?)(?<=\s)(.*)',
+ GESHI_REPLACE => '\\3',
+ GESHI_MODIFIERS => '',
+ GESHI_BEFORE => '\\1',
+ GESHI_AFTER => ''
+ ),
+ // Negated hostanmes (doesn't work)
+ //1 => array(
+ // GESHI_SEARCH => '([([{,<+*-\/=\s!]|&lt;)(?!(?:PIPE|SEMI|DOT|NUM|REG3XP\d*)\W)(![a-zA-Z*]\w*)(?!\w)',
+ // GESHI_SEARCH => '(?<=!)(.*?)',
+ // GESH_REPLACE => '\\2',
+ // GESHI_MODIFIERS => '',
+ // GESHI_BEFORE => '\\1',
+ // GESHI_AFTER => ''
+ // ),
+ // Wildcards
+ 2 => '\*'
+ ),
+ 'STRICT_MODE_APPLIES' => GESHI_NEVER,
+ 'SCRIPT_DELIMITERS' => array(
+ ),
+ 'HIGHLIGHT_STRICT_BLOCK' => array(
+ )
+);
diff --git a/vendor/geshi/geshi/src/geshi/standardml.php b/vendor/geshi/geshi/src/geshi/standardml.php
index 9979ac5e4..c48494c58 100644
--- a/vendor/geshi/geshi/src/geshi/standardml.php
+++ b/vendor/geshi/geshi/src/geshi/standardml.php
@@ -4,7 +4,7 @@
* ----------
* Author: eldesh (nephits@gmail.com)
* Copyright: (c) 2014 eldesh (http://d.hatena.ne.jp/eldesh/)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2014/02/04
*
* SML (StandardML'97) language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/stonescript.php b/vendor/geshi/geshi/src/geshi/stonescript.php
index 6ea1971d8..cdf89919d 100644
--- a/vendor/geshi/geshi/src/geshi/stonescript.php
+++ b/vendor/geshi/geshi/src/geshi/stonescript.php
@@ -4,7 +4,7 @@
* --------
* Author: Archimmersion ( based on ruby.php by Moises Deniz )
* Copyright: (c) 2011 Archimmersion ( http://www.archimmersion.com )
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2011/03/30
*
* StoneScript language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/swift.php b/vendor/geshi/geshi/src/geshi/swift.php
index 4069035f5..93091bbe4 100644
--- a/vendor/geshi/geshi/src/geshi/swift.php
+++ b/vendor/geshi/geshi/src/geshi/swift.php
@@ -4,7 +4,7 @@
* ----------
* Author: Ken Woo (ikenwoo@gmail.com)
* Copyright: (c) 2015 Ken Woo
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2015/05/20
*
* Swift language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/systemverilog.php b/vendor/geshi/geshi/src/geshi/systemverilog.php
index 24ed3439b..6d3124b36 100644
--- a/vendor/geshi/geshi/src/geshi/systemverilog.php
+++ b/vendor/geshi/geshi/src/geshi/systemverilog.php
@@ -4,7 +4,7 @@
* -------
* Author: Sean O'Boyle
* Copyright: (C) 2008 IntelligentDV
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2008/06/25
*
* SystemVerilog IEEE 1800-2009(draft8) language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/tcl.php b/vendor/geshi/geshi/src/geshi/tcl.php
index 73b854eb5..ddaf13499 100644
--- a/vendor/geshi/geshi/src/geshi/tcl.php
+++ b/vendor/geshi/geshi/src/geshi/tcl.php
@@ -4,7 +4,7 @@
* ---------------------------------
* Author: Reid van Melle (rvanmelle@gmail.com)
* Copyright: (c) 2004 Reid van Melle (sorry@nowhere)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2006/05/05
*
* TCL/iTCL language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/tclegg.php b/vendor/geshi/geshi/src/geshi/tclegg.php
index cc787e8c5..725e1e213 100644
--- a/vendor/geshi/geshi/src/geshi/tclegg.php
+++ b/vendor/geshi/geshi/src/geshi/tclegg.php
@@ -4,7 +4,7 @@
* ---------------------------------
* Author: Reid van Melle (rvanmelle@gmail.com)
* Copyright: (c) 2004 Reid van Melle (sorry@nowhere)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2006/05/05
*
* TCL/iTCL language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/teraterm.php b/vendor/geshi/geshi/src/geshi/teraterm.php
index 7c360029d..9f04b7bcd 100644
--- a/vendor/geshi/geshi/src/geshi/teraterm.php
+++ b/vendor/geshi/geshi/src/geshi/teraterm.php
@@ -4,7 +4,7 @@
* --------
* Author: Boris Maisuradze (boris at logmett.com)
* Copyright: (c) 2008 Boris Maisuradze (http://logmett.com)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2008/09/26
*
* Tera Term Macro language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/texgraph.php b/vendor/geshi/geshi/src/geshi/texgraph.php
index ed579555b..1f82d4280 100644
--- a/vendor/geshi/geshi/src/geshi/texgraph.php
+++ b/vendor/geshi/geshi/src/geshi/texgraph.php
@@ -4,7 +4,7 @@
* -----------
* Author: Patrick Fradin (patrick.fradin@gmail.com)
* Copyright: (c) 2011 Patrick Fradin
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2011-09-18
*
* TeXgraph language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/text.php b/vendor/geshi/geshi/src/geshi/text.php
index 5b97cff39..217e9c073 100644
--- a/vendor/geshi/geshi/src/geshi/text.php
+++ b/vendor/geshi/geshi/src/geshi/text.php
@@ -4,7 +4,7 @@
* --------
* Author: Sean Hanna (smokingrope@gmail.com)
* Copyright: (c) 2006 Sean Hanna
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 04/23/2006
*
* Standard Text File (No Syntax Highlighting).
diff --git a/vendor/geshi/geshi/src/geshi/thinbasic.php b/vendor/geshi/geshi/src/geshi/thinbasic.php
index d4c91e246..a8b413e37 100644
--- a/vendor/geshi/geshi/src/geshi/thinbasic.php
+++ b/vendor/geshi/geshi/src/geshi/thinbasic.php
@@ -4,7 +4,7 @@
* ------
* Author: Eros Olmi (eros.olmi@thinbasic.com)
* Copyright: (c) 2006 Eros Olmi (http://www.thinbasic.com), Nigel McNie (http://qbnz.com/highlighter)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2006/05/12
*
* thinBasic language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/tsql.php b/vendor/geshi/geshi/src/geshi/tsql.php
index e333c9712..a20ac91b7 100644
--- a/vendor/geshi/geshi/src/geshi/tsql.php
+++ b/vendor/geshi/geshi/src/geshi/tsql.php
@@ -4,7 +4,7 @@
* --------
* Author: Duncan Lock (dunc@dflock.co.uk)
* Copyright: (c) 2006 Duncan Lock (http://dflock.co.uk/), Nigel McNie (http://qbnz.com/highlighter)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2005/11/22
*
* T-SQL language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/twig.php b/vendor/geshi/geshi/src/geshi/twig.php
index 2936e0f1e..62b193d1e 100644
--- a/vendor/geshi/geshi/src/geshi/twig.php
+++ b/vendor/geshi/geshi/src/geshi/twig.php
@@ -4,7 +4,7 @@
* ----------
* Author: Keyvan Akbary (keyvan@kiwwito.com)
* Copyright: (c) 2011 Keyvan Akbary (http://www.kiwwito.com/)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2011/12/05
*
* Twig template language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/typoscript.php b/vendor/geshi/geshi/src/geshi/typoscript.php
index c52ba91ea..4fa2fd9a4 100644
--- a/vendor/geshi/geshi/src/geshi/typoscript.php
+++ b/vendor/geshi/geshi/src/geshi/typoscript.php
@@ -4,7 +4,7 @@
* --------
* Author: Jan-Philipp Halle (typo3@jphalle.de)
* Copyright: (c) 2005 Jan-Philipp Halle (http://www.jphalle.de/)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2005/07/29
*
* TypoScript language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/unicon.php b/vendor/geshi/geshi/src/geshi/unicon.php
index bd56f5089..736c29d48 100644
--- a/vendor/geshi/geshi/src/geshi/unicon.php
+++ b/vendor/geshi/geshi/src/geshi/unicon.php
@@ -4,7 +4,7 @@
* --------
* Author: Matt Oates (mattoates@gmail.com)
* Copyright: (c) 2010 Matt Oates (http://mattoates.co.uk)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2010/04/20
*
* Unicon the Unified Extended Dialect of Icon language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/upc.php b/vendor/geshi/geshi/src/geshi/upc.php
index 0b8b4859b..228940d08 100644
--- a/vendor/geshi/geshi/src/geshi/upc.php
+++ b/vendor/geshi/geshi/src/geshi/upc.php
@@ -8,7 +8,7 @@
* - Jack Lloyd (lloyd@randombit.net)
* - Michael Mol (mikemol@gmail.com)
* Copyright: (c) 2004 Nigel McNie (http://qbnz.com/highlighter/)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2004/06/04
*
* UPC language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/urbi.php b/vendor/geshi/geshi/src/geshi/urbi.php
index f87e6c17a..236a33177 100644
--- a/vendor/geshi/geshi/src/geshi/urbi.php
+++ b/vendor/geshi/geshi/src/geshi/urbi.php
@@ -4,7 +4,7 @@
* -------
* Author: Alexandre Morgand (morgand.alexandre@gmail.com)
* Copyright: (c) 2011 Morgand (http://gostai.com)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2011/09/10
*
* Urbi language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/uscript.php b/vendor/geshi/geshi/src/geshi/uscript.php
index 216eaff71..eb385dbd2 100644
--- a/vendor/geshi/geshi/src/geshi/uscript.php
+++ b/vendor/geshi/geshi/src/geshi/uscript.php
@@ -4,7 +4,7 @@
* ---------------------------------
* Author: pospi (pospi@spadgos.com)
* Copyright: (c) 2007 pospi (http://pospi.spadgos.com)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2007/05/21
*
* UnrealScript language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/vala.php b/vendor/geshi/geshi/src/geshi/vala.php
index fd8ce68f2..d69354d81 100644
--- a/vendor/geshi/geshi/src/geshi/vala.php
+++ b/vendor/geshi/geshi/src/geshi/vala.php
@@ -4,7 +4,7 @@
* ----------
* Author: Nicolas Joseph (nicolas.joseph@valaide.org)
* Copyright: (c) 2009 Nicolas Joseph
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2009/04/29
*
* Vala language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/vb.php b/vendor/geshi/geshi/src/geshi/vb.php
index 2d2a7b669..3a4405315 100644
--- a/vendor/geshi/geshi/src/geshi/vb.php
+++ b/vendor/geshi/geshi/src/geshi/vb.php
@@ -5,7 +5,7 @@
* Author: Roberto Rossi (rsoftware@altervista.org)
* Copyright: (c) 2004 Roberto Rossi (http://rsoftware.altervista.org),
* Nigel McNie (http://qbnz.com/highlighter)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2004/08/30
*
* Visual Basic language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/vbnet.php b/vendor/geshi/geshi/src/geshi/vbnet.php
index 058b9c460..3932c5208 100644
--- a/vendor/geshi/geshi/src/geshi/vbnet.php
+++ b/vendor/geshi/geshi/src/geshi/vbnet.php
@@ -4,7 +4,7 @@
* ---------
* Author: Alan Juden (alan@judenware.org)
* Copyright: (c) 2004 Alan Juden, Nigel McNie (http://qbnz.com/highlighter)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2004/06/04
*
* VB.NET language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/vbscript.php b/vendor/geshi/geshi/src/geshi/vbscript.php
index 4f7366469..66796ec80 100644
--- a/vendor/geshi/geshi/src/geshi/vbscript.php
+++ b/vendor/geshi/geshi/src/geshi/vbscript.php
@@ -6,7 +6,7 @@
* Copyright: (c) 2004 Roberto Rossi (http://rsoftware.altervista.org),
* Nigel McNie (http://qbnz.com/highlighter),
* Rory Prendergast (http://www.tanium.com)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2012/08/20
*
* VBScript language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/vedit.php b/vendor/geshi/geshi/src/geshi/vedit.php
index fa79420fb..4a6e1c6dd 100644
--- a/vendor/geshi/geshi/src/geshi/vedit.php
+++ b/vendor/geshi/geshi/src/geshi/vedit.php
@@ -4,7 +4,7 @@
* --------
* Author: Pauli Lindgren (pauli0212@yahoo.com)
* Copyright: (c) 2009 Pauli Lindgren (http://koti.mbnet.fi/pkl/)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2009/12/16
*
* Vedit macro language language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/verilog.php b/vendor/geshi/geshi/src/geshi/verilog.php
index 863230400..afcd91e46 100644
--- a/vendor/geshi/geshi/src/geshi/verilog.php
+++ b/vendor/geshi/geshi/src/geshi/verilog.php
@@ -4,7 +4,7 @@
* -----------
* Author: Günter Dannoritzer <dannoritzer@web.de>
* Copyright: (C) 2008 Günter Dannoritzer
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2008/05/28
*
* Verilog language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/vhdl.php b/vendor/geshi/geshi/src/geshi/vhdl.php
index edb0fd611..9ff11ec43 100644
--- a/vendor/geshi/geshi/src/geshi/vhdl.php
+++ b/vendor/geshi/geshi/src/geshi/vhdl.php
@@ -6,7 +6,7 @@
* Contributors:
* - Kevin Thibedeau (kevinpt@yahoo.com)
* Copyright: (c) 2005 Alexander Krause
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2005/06/15
*
* VHDL (VHSICADL, very high speed integrated circuit HDL) language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/vim.php b/vendor/geshi/geshi/src/geshi/vim.php
index 39ec83137..6f959a095 100644
--- a/vendor/geshi/geshi/src/geshi/vim.php
+++ b/vendor/geshi/geshi/src/geshi/vim.php
@@ -6,7 +6,7 @@
* Contributors:
* - Laurent Peuch (psycojoker@gmail.com)
* Copyright: (c) 2008 Swaroop C H (http://www.swaroopch.com)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2008/10/19
*
* Vim scripting language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/visualfoxpro.php b/vendor/geshi/geshi/src/geshi/visualfoxpro.php
index 9e43eaddf..cda3d5abe 100644
--- a/vendor/geshi/geshi/src/geshi/visualfoxpro.php
+++ b/vendor/geshi/geshi/src/geshi/visualfoxpro.php
@@ -4,7 +4,7 @@
* ----------------
* Author: Roberto Armellin (r.armellin@tin.it)
* Copyright: (c) 2004 Roberto Armellin, Nigel McNie (http://qbnz.com/highlighter/)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2004/09/17
*
* Visual FoxPro language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/visualprolog.php b/vendor/geshi/geshi/src/geshi/visualprolog.php
index 72ddb4510..edb186c37 100644
--- a/vendor/geshi/geshi/src/geshi/visualprolog.php
+++ b/vendor/geshi/geshi/src/geshi/visualprolog.php
@@ -4,7 +4,7 @@
* ----------
* Author: Thomas Linder Puls (puls@pdc.dk)
* Copyright: (c) 2008 Thomas Linder Puls (puls@pdc.dk)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2008/11/20
*
* Visual Prolog language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/whitespace.php b/vendor/geshi/geshi/src/geshi/whitespace.php
index 47ca8fd91..c11f69fd6 100644
--- a/vendor/geshi/geshi/src/geshi/whitespace.php
+++ b/vendor/geshi/geshi/src/geshi/whitespace.php
@@ -4,7 +4,7 @@
* ----------
* Author: Benny Baumann (BenBE@geshi.org)
* Copyright: (c) 2008 Benny Baumann (http://qbnz.com/highlighter/)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2009/10/31
*
* Whitespace language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/whois.php b/vendor/geshi/geshi/src/geshi/whois.php
index 5ca47e173..e429d2531 100644
--- a/vendor/geshi/geshi/src/geshi/whois.php
+++ b/vendor/geshi/geshi/src/geshi/whois.php
@@ -4,7 +4,7 @@
* --------
* Author: Benny Baumann (BenBE@geshi.org)
* Copyright: (c) 2008 Benny Baumann (http://qbnz.com/highlighter/)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2008/09/14
*
* Whois response (RPSL format) language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/winbatch.php b/vendor/geshi/geshi/src/geshi/winbatch.php
index aa1ce5268..618fb6e26 100644
--- a/vendor/geshi/geshi/src/geshi/winbatch.php
+++ b/vendor/geshi/geshi/src/geshi/winbatch.php
@@ -4,7 +4,7 @@
* ------------
* Author: Craig Storey (storey.craig@gmail.com)
* Copyright: (c) 2004 Craig Storey (craig.xcottawa.ca)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2006/05/19
*
* WinBatch language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/wolfram.php b/vendor/geshi/geshi/src/geshi/wolfram.php
new file mode 100644
index 000000000..9ea9e3cee
--- /dev/null
+++ b/vendor/geshi/geshi/src/geshi/wolfram.php
@@ -0,0 +1,967 @@
+<?php
+/******************************************************************************
+ * wolfram.php
+ * ----------
+ * Author: Mysterious Light (youngmysteriouslight@gmail.com)
+ * Copyright: (c) 2018 Mysterious Light (youngmysteriouslight@gmail.com)
+ * Release Version: 1.0.9.1
+ * Date Started: 2018/01/12
+ *
+ * Wolfram language file for GeSHi.
+ *
+ ******************************************************************************
+ *
+ * This file is part of GeSHi.
+ *
+ * GeSHi is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * GeSHi is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with GeSHi; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ *
+ *****************************************************************************/
+
+$language_data = array (
+ 'LANG_NAME' => 'Wolfram',
+ 'COMMENT_SINGLE' => array(),
+ 'COMMENT_MULTI' => array('(*' => '*)'),
+ 'COMMENT_REGEXP' => array(
+ 2 => '/\\(\\*.*\\*\\)/',
+ 3 => '/\\\\\\[\\w+]/'
+ ),
+ 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
+ 'QUOTEMARKS' => array('"'),
+ 'ESCAPE_CHAR' => '\\',
+ 'KEYWORDS' => array(
+ /* main wolfram keywords */
+ 1 => array(
+ 'AbelianGroup', '$Aborted', 'AbortKernels', 'Abort', 'Abs', 'All',
+ 'AbortProtect', 'AbsoluteCurrentValue', 'AbsoluteDashing', 'AddTo',
+ 'AbsoluteFileName', 'AbsoluteOptions', 'AbsolutePointSize', 'And',
+ 'AbsoluteThickness', 'AbsoluteTime', 'AbsoluteTiming', 'Accuracy',
+ 'AccountingForm', 'Accumulate', 'AccuracyGoal', 'ActionMenu', 'C',
+ 'Active', 'ActiveStyle', 'AcyclicGraphQ', 'AddOnHelpPath', 'Alias',
+ 'AdjacencyGraph', 'AdjacencyMatrix', 'AdjustmentBox', 'AiryAi',
+ 'AffineTransform', 'AiryAiPrime', 'AiryAiZero', 'AiryBi', 'AngerJ',
+ 'AiryBiPrime', 'AiryBiZero', 'AlgebraicIntegerQ', 'AlgebraicRules',
+ 'AlgebraicNumberDenominator', 'AlgebraicNumber', 'Algebraics', 'D',
+ 'AlgebraicNumberNorm', 'AlgebraicNumberPolynomial', 'Alignment',
+ 'AlgebraicNumberTrace', 'AlgebraicUnitQ', 'AlignmentPoint', 'Arg',
+ 'AllowGroupClose', 'AllowInlineCells', 'AllowReverseGroupClose',
+ 'AllowScriptLevelChange', 'AlphaChannel', 'AlternatingGroup', 'Do',
+ 'AlternativeHypothesis', 'Alternatives', 'AmbientLight', 'Animate',
+ 'AnchoredSearch', 'AndersonDarlingTest', 'AngleBracket', 'Annuity',
+ 'AnimationCycleOffset', 'AnimationCycleRepetitions', 'Animator',
+ 'AnimationDirection', 'AnimationDisplayTime', 'AnimationRate', 'E',
+ 'AnimationRepetitions', 'AnimationRunning', 'Annotation', 'Apart',
+ 'AnnuityDue', 'Antialiasing', 'ApartSquareFree', 'Appearance', 'I',
+ 'AppearanceElements', 'AppellF1', 'Append', 'AppendTo', 'Apply',
+ 'ArcCosh', 'ArcCos', 'ArcCoth', 'ArcCot', 'ArcCsch', 'ArcCsc', 'N',
+ 'ArcSech', 'ArcSec', 'ArcSinDistribution', 'ArcSinh', 'ArcSin',
+ 'ArcTanh', 'ArcTan', 'ArgMax', 'ArgMin', 'ArithmeticGeometricMean',
+ 'ArrayComponents', 'ArrayDepth', 'ArrayFlatten', 'Array', 'ArrayQ',
+ 'ArrayPad', 'ArrayPlot', 'ArrayRules', 'Arrowheads', 'Arrow', 'Dt',
+ 'AspectRatioFixed', 'AspectRatio', '$AssertFunction', 'Assert',
+ 'Assuming', '$Assumptions', 'Assumptions', 'AstronomicalData', 'O',
+ 'Asynchronous', 'AtomQ', 'Attributes', 'AutoAction', 'AutoDelete',
+ 'AugmentedSymmetricPolynomial', 'AutoGeneratedPackage', 'AxesEdge',
+ 'AutoIndent', 'AutoItalicWords', 'AutoloadPath', 'Automatic', 'If',
+ 'AutoMultiplicationSymbol', 'AutoOpenNotebooks', 'AutoScroll',
+ 'AutoOpenPalettes', 'AutorunSequencing', 'AutoSpacing', 'Axes',
+ 'AxesLabel', 'AxesOrigin', 'AxesStyle', 'Axis', 'Background', 'Im',
+ 'BabyMonsterGroupB', 'Back', 'Backslash', 'Backward', 'Band', 'In',
+ 'BarabasiAlbertGraphDistribution', 'BarChart3D', 'BarChart', 'Cap',
+ 'BarnesG', 'BarOrigin', 'BarSpacing', '$BaseDirectory', 'BaseForm',
+ 'Baseline', 'BaselinePosition', 'BaseStyle', '$BatchInput', 'Beep',
+ '$BatchOutput', 'BatesDistribution', 'BattleLemarieWavelet', 'CDF',
+ 'Because', 'BeckmannDistribution', 'BeginDialogPacket', 'Begin',
+ 'BeginPackage', 'BellB', 'BellY', 'BenfordDistribution', 'BesselI',
+ 'BeniniDistribution', 'BenktanderGibratDistribution', 'BernoulliB',
+ 'BenktanderWeibullDistribution', 'BernoulliDistribution', 'Beta',
+ 'BernoulliGraphDistribution', 'BernsteinBasis', 'BesselJ', 'BitOr',
+ 'BesselJZero', 'BesselK', 'BesselY', 'BesselYZero', 'BezierCurve',
+ 'BetaBinomialDistribution', 'BetaDistribution', 'BetaRegularized',
+ 'BetaNegativeBinomialDistribution', 'BetaPrimeDistribution', 'Cos',
+ 'BetweennessCentrality', 'BezierFunction', 'BilateralFilter', 'On',
+ 'Binarize', 'BinaryFormat', 'BinaryImageQ', 'BinaryReadList', 'Or',
+ 'BinaryRead', 'BinaryWrite', 'BinCounts', 'BinLists', 'Binomial',
+ 'BinomialDistribution', 'BinormalDistribution', 'BipartiteGraphQ',
+ 'BiorthogonalSplineWavelet', 'BirnbaumSaundersDistribution', 'Cot',
+ 'BitAnd', 'BitClear', 'BitGet', 'BitLength', 'BitNot', 'BitSet',
+ 'BitShiftLeft', 'BitShiftRight', 'BitXor', 'Black', 'Blank', 'Csc',
+ 'BlankNullSequence', 'BlankSequence', 'Blend', 'Block', 'Blue',
+ 'BlockRandom', 'Blur', 'BodePlot', 'Bold', 'Bookmarks', 'Booleans',
+ 'BooleanConvert', 'BooleanCountingFunction', 'BooleanFunction',
+ 'BooleanGraph', 'BooleanMaxterms', 'BooleanMinimize', 'Boole',
+ 'BooleanMinterms', 'BooleanTable', 'BooleanVariables', 'Bottom',
+ 'BorderDimensions', 'BorelTannerDistribution', 'BoundaryStyle',
+ 'BottomHatTransform', 'BoxBaselineShift', 'BoxData', 'Boxed', 'Pi',
+ 'BoxFormFormatTypes', 'BoxFrame', 'BoxMargins', 'BoxMatrix', 'Cup',
+ 'BoxRatios', 'BoxStyle', 'BoxWhiskerChart', 'BracketingBar', 'Del',
+ 'BrayCurtisDistance', 'BreadthFirstScan', 'Break', 'Brown', 'Byte',
+ 'BrownForsytheTest', 'BSplineBasis', 'BSplineCurve', 'BubbleChart',
+ 'BSplineFunction', 'BSplineSurface', 'BubbleChart3D', 'ButtonBar',
+ 'BubbleScale', 'BubbleSizes', 'ButterflyGraph', 'ButtonBox', 'Det',
+ 'ButtonBoxOptions', 'ButtonData', 'ButtonEvaluator', 'ButtonFrame',
+ 'ButtonExpandable', 'ButtonFunction', 'ButtonMargins', 'Button',
+ 'ButtonMinHeight', 'ButtonNotebook', 'ButtonNote', 'ButtonSource',
+ 'ButtonStyle', 'ByteCount', '$ByteOrdering', 'ByteOrdering', 'Dot',
+ 'CallPacket', 'CanberraDistance', 'CancelButton', '$Canceled',
+ 'Cancel', 'CandlestickChart', 'CapForm', 'CapitalDifferentialD',
+ 'CarmichaelLambda', 'Cases', 'Cashflow', 'Casoratian', 'Catalan',
+ 'CatalanNumber', 'Catch', 'CauchyDistribution', 'CayleyGraph',
+ 'CDFWavelet', 'Ceiling', 'CellArray', 'CellAutoOverwrite', 'Cell',
+ 'CellBaseline', 'CellBracketOptions', 'CellChangeTimes', 'Center',
+ 'CellContext', 'CellDingbat', 'CellDynamicExpression', 'CellFrame',
+ 'CellEditDuplicate', 'CellEpilog', 'CellEvaluationDuplicate', 'Re',
+ 'CellEvaluationFunction', 'CellEventActions', 'CellFrameColor',
+ 'CellFrameLabelMargins', 'CellFrameLabels', 'CellFrameMargins',
+ 'CellGroupData', 'CellGrouping', 'CellGroupingRules', 'CellGroup',
+ 'CellHorizontalScrolling', 'CellLabelAutoDelete', 'CellLabel',
+ 'CellLabelMargins', 'CellLabelPositioning', 'CellMargins', 'CForm',
+ 'CellOpen', 'CellPrint', 'CellProlog', 'CellSize', 'CellTags',
+ 'CellularAutomaton', 'CensoredDistribution', 'Censoring', 'Check',
+ 'CenterDot', 'CentralMomentGeneratingFunction', 'CentralMoment',
+ 'ChampernowneNumber', 'ChanVeseBinarize', '$CharacterEncoding',
+ 'CharacterEncoding', '$CharacterEncodings', 'Character', 'Chop',
+ 'CharacterEncodingsPath', 'CharacteristicFunction', 'Characters',
+ 'CharacteristicPolynomial', 'CharacterRange', 'ChartBaseStyle',
+ 'ChartElementFunction', 'ChartElements', 'ChartLabels', 'Checkbox',
+ 'ChartLayout', 'ChartLegends', 'ChartStyle', 'ChebyshevDistance',
+ 'ChebyshevT', 'ChebyshevU', 'CheckAbort', 'CheckboxBar', 'Circle',
+ 'ChemicalData', 'ChessboardDistance', 'ChiDistribution', 'Clear',
+ 'ChineseRemainder', 'ChiSquareDistribution', 'ChoiceButtons', 'Tr',
+ 'ChoiceDialog', 'CholeskyDecomposition', 'CircleDot', 'CirclePlus',
+ 'CircleMinus', 'CircleTimes', 'CirculantGraph', 'CityData', 'Clip',
+ 'ClearAll', 'ClearAttributes', 'ClearSystemCache', 'ClebschGordan',
+ 'ClickPane', 'ClipFill', 'ClippingStyle', 'Clock', 'CloseKernels',
+ 'Close', 'ClosenessCentrality', 'ClosingAutoSave', 'Closing',
+ 'ClusteringComponents', 'CMYKColor', 'CoefficientArrays', 'Colon',
+ 'CoefficientList', 'Coefficient', 'CoefficientRules', 'Collect',
+ 'CoifletWavelet', 'ColorCombine', 'ColorConvert', 'ColorData',
+ 'ColorDataFunction', 'ColorFunction', 'ColorFunctionScaling',
+ 'Colorize', 'ColorNegate', 'ColorOutput', 'ColorQuantize', 'Cone',
+ 'ColorRules', 'ColorSelectorSettings', 'ColorSeparate', 'Column',
+ 'ColorSetter', 'ColorSlider', 'ColorSpace', 'ColumnAlignments',
+ 'ColumnForm', 'ColumnLines', 'ColumnsEqual', 'ColumnSpacings',
+ 'ColumnWidths', '$CommandLine', 'CommonDefaultFormatTypes', 'Cosh',
+ 'CommonestFilter', 'Commonest', 'CompilationOptions', 'Compiled',
+ '$CompilationTarget', 'CompilationTarget', 'CompiledFunction',
+ 'Compile', 'Complement', 'CompleteGraph', 'CompleteGraphQ', 'Coth',
+ 'CompleteKaryTree', 'Complexes', 'ComplexExpand', 'Complex', 'End',
+ 'ComplexInfinity', 'ComplexityFunction', 'ComponentMeasurements',
+ 'ComposeList', 'Compose', 'ComposeSeries', 'Composition', 'Count',
+ 'CompoundExpression', 'Compress', 'ConditionalExpression', 'Cross',
+ 'Conditioned', 'Condition', 'ConfidenceLevel', 'ConfigurationPath',
+ '$ConfiguredKernels', 'Congruent', 'Conjugate', 'Conjunction',
+ 'ConjugateTranspose', 'ConnectedComponents', 'ConnectedGraphQ',
+ 'ConoverTest', 'ConstantArray', 'Constant', 'Constants', 'Context',
+ 'ConstrainedMax', 'ConstrainedMin', 'ContentPadding', '$Context',
+ 'ContentSelectable', 'ContentSize', '$ContextPath', 'Contexts',
+ 'ContextToFileName', 'ContinuedFractionK', 'ContinuedFraction',
+ 'Continue', 'ContinuousAction', 'ContinuousTimeModelQ', 'Contours',
+ 'ContinuousWaveletData', 'ContinuousWaveletTransform', 'Control',
+ 'ContourDetect', 'ContourGraphics', 'ContourLabels', 'ContourPlot',
+ 'ContourLevels', 'ContourLines', 'ContourPlot3D', 'ContourShading',
+ 'ContourSpacing', 'ContourStyle', 'ContraharmonicMean', 'Convolve',
+ 'ControlActive', '$ControlActiveSetting', 'ControllabilityGramian',
+ 'ControllabilityMatrix', 'ControllableDecomposition', 'CoprimeQ',
+ 'ControllableModelQ', 'ControllerInformation', 'ControllerLinking',
+ 'ControllerManipulate', 'ControllerMethod', 'ControllerPath',
+ 'ControllerState', 'ControlPlacement', 'ControlsRendering', 'Csch',
+ 'ControlType', 'Convergents', 'ConversionOptions', 'Coproduct',
+ 'ConversionRules', 'ConwayGroupCo1', 'ConwayGroupCo2', 'Copyable',
+ 'ConwayGroupCo3', 'CoordinatesToolOptions', 'CopulaDistribution',
+ 'CopyDirectory', 'CopyFile', 'CopyToClipboard', 'CornerFilter',
+ 'CornerNeighbors', 'CorrelationDistance', 'Correlation', 'Cubics',
+ 'CoshIntegral', 'CosineDistance', 'CosIntegral', 'CounterFunction',
+ 'CounterAssignments', 'CounterIncrements', 'CountRoots', 'Cuboid',
+ 'CounterStyleMenuListing', 'CountryData', 'Covariance', 'Cumulant',
+ 'CovarianceEstimatorFunction', 'CramerVonMisesTest', 'CrossMatrix',
+ 'CreateArchive', 'CreateDialog', 'CreateDirectory', 'CreateWindow',
+ 'CreateDocument', 'CreateIntermediateDirectories', 'CreatePalette',
+ 'CreateScheduledTask', '$CreationDate', 'CriticalSection', 'Cyan',
+ 'CrossingDetect', 'CumulantGeneratingFunction', 'CupCap', 'Cycles',
+ 'CurrentImage', '$CurrentLink', 'CurrentValue', 'CurveClosed',
+ 'CurvatureFlowFilter', 'CycleGraph', 'CyclicGroup', 'Cyclotomic',
+ 'Cylinder', 'CylindricalDecomposition', 'DagumDistribution', 'Erf',
+ 'DamerauLevenshteinDistance', 'Darker', 'Dashed', 'Dashing', 'Exp',
+ 'DataDistribution', 'DataRange', 'DataReversed', 'DateDifference',
+ 'DateFunction', 'DateListLogPlot', 'DateList', 'DateListPlot',
+ 'Date', 'DatePattern', 'DatePlus', '$DateStringFormat', 'DawsonF',
+ 'DateString', 'DateTicksFormat', 'DaubechiesWavelet', 'Debug',
+ 'DavisDistribution', 'DeBruijnGraph', 'DeclarePackage', 'Default',
+ 'Decompose', 'Decrement', 'DedekindEta', 'DefaultAxesStyle', 'Fit',
+ 'DefaultBaseStyle', 'DefaultBoxStyle', 'DefaultButton', 'Defer',
+ 'DefaultColor', 'DefaultDuplicateCellStyle', 'DefaultDuration',
+ 'DefaultElement', 'DefaultFaceGridsStyle', 'DefaultFieldHintStyle',
+ '$DefaultFont', 'DefaultFont', 'DefaultFontProperties', 'Degree',
+ 'DefaultFormatType', 'DefaultFrameStyle', 'DefaultFrameTicksStyle',
+ 'DefaultGridLinesStyle', '$DefaultImagingDevice', 'DefaultOptions',
+ 'DefaultInlineFormatType', 'DefaultLabelStyle', 'DefaultMenuStyle',
+ 'DefaultNaturalLanguage', 'DefaultNewCellStyle', 'DefaultNotebook',
+ 'DefaultNewInlineCellStyle', 'DefaultStyleDefinitions', 'Delete',
+ 'DefaultTicksStyle', 'Definition', 'DegreeCentrality', 'Deletable',
+ 'DegreeGraphDistribution', 'Deinitialization', 'DeleteCases',
+ 'DeleteBorderComponents', 'DeleteContents', 'DeleteDirectory',
+ 'DeleteDuplicates', 'DeleteFile', 'DeleteSmallComponents', 'Depth',
+ 'DeletionWarning', 'DelimiterFlashTime', 'DelimiterMatching',
+ 'Delimiter', 'Denominator', 'DensityGraphics', 'DensityHistogram',
+ 'DensityPlot', 'DependentVariables', 'Deployed', 'Deploy', 'Disk',
+ 'DepthFirstScan', 'DerivativeFilter', 'Derivative', 'DesignMatrix',
+ 'DGaussianWavelet', 'DiacriticalPositioning', 'DiagonalMatrix',
+ 'Diagonal', 'DialogInput', 'Dialog', 'DialogNotebook', 'Diamond',
+ 'DialogProlog', 'DialogReturn', 'DialogSymbols', 'DiamondMatrix',
+ 'DiceDissimilarity', 'DictionaryLookup', 'DifferenceDelta', 'Drop',
+ 'DifferenceRoot', 'DifferenceRootReduce', 'Differences', 'DigitQ',
+ 'DifferentialD', 'DifferentialRoot', 'DifferentialRootReduce',
+ 'DigitBlock', 'DigitCharacter', 'DigitCount', 'DihedralGroup',
+ 'Dilation', 'Dimensions', 'DiracComb', 'DiracDelta', 'Direction',
+ 'DirectedEdge', 'DirectedEdges', 'DirectedGraph', 'DirectedGraphQ',
+ 'DirectedInfinity', 'Directive', 'DirectoryName', 'Directory',
+ 'DirectoryQ', 'DirectoryStack', 'DirichletCharacter', 'DirichletL',
+ 'DirichletConvolve', 'DirichletDistribution', 'DirichletTransform',
+ 'DiscreteConvolve', 'DiscreteDelta', 'DiscreteIndicator', 'Divide',
+ 'DiscreteLQEstimatorGains', 'DiscreteLQRegulatorGains', 'Dispatch',
+ 'DiscreteLyapunovSolve', 'DiscretePlot3D', 'DiscretePlot', 'Dump',
+ 'DiscreteRatio', 'DiscreteRiccatiSolve', 'DiscreteShift', 'Dotted',
+ 'DiscreteTimeModelQ', 'DiscreteUniformDistribution', 'Disjunction',
+ 'DiscreteWaveletData', 'DiscreteWaveletPacketTransform', 'Display',
+ 'DiscreteWaveletTransform', 'Discriminant', 'DiskMatrix', 'DSolve',
+ 'DispersionEstimatorFunction', 'DisplayAllSteps', 'DisplayForm',
+ 'DisplayEndPacket', '$DisplayFunction', 'DisplayFunction', '$Echo',
+ '$Display', 'DisplayPacket', 'DisplayString', 'DistanceFunction',
+ 'DistanceTransform', '$DistributedContexts', 'DistributedContexts',
+ 'DistributeDefinitions', 'Distributed', 'Distribute', 'Dithering',
+ 'DistributionChart', 'DistributionFitTest', 'DivideBy', 'Dividers',
+ 'DistributionParameterAssumptions', 'DistributionParameterQ',
+ 'Divisible', 'DivisorSigma', 'Divisors', 'DivisorSum', 'DMSList',
+ 'DMSString', 'DockedCells', 'DocumentNotebook', 'DotDashed', 'For',
+ 'DotEqual', 'DoubleBracketingBar', 'DoubleDownArrow', 'DownArrow',
+ 'DoubleLeftArrow', 'DoubleLeftRightArrow', 'DoubleLongLeftArrow',
+ 'DoubleLongLeftRightArrow', 'DoubleLongRightArrow', 'DownArrowBar',
+ 'DoubleRightArrow', 'DoubleUpArrow', 'DoubleUpDownArrow', 'EdgeQ',
+ 'DoubleVerticalBar', 'DownArrowUpArrow', 'DownLeftRightVector',
+ 'DownLeftTeeVector', 'DownLeftVectorBar', 'DownLeftVector', 'Erfc',
+ 'DownRightTeeVector', 'DownRightVectorBar', 'DownRightVector',
+ 'DownTeeArrow', 'DownValues', 'DragAndDrop', 'DSolveConstants',
+ 'DualSystemsModel', 'DumpSave', '$DynamicEvaluation', 'Dynamic',
+ 'DynamicEvaluationTimeout', 'DynamicModule', 'DynamicModuleValues',
+ 'DynamicSetting', 'DynamicWrapper', 'EdgeAdd', 'EdgeCount', 'Erfi',
+ 'EdgeCoverQ', 'EdgeDelete', 'EdgeDetect', 'EdgeForm', 'EdgeIndex',
+ 'EdgeLabeling', 'EdgeLabels', 'EdgeLabelStyle', 'EdgeList', 'Exit',
+ 'EdgeRenderingFunction', 'EdgeRules', 'EdgeShapeFunction', 'Equal',
+ 'EdgeStyle', 'EdgeWeight', 'Editable', 'EditCellTagsSettings',
+ 'EditDistance', 'EffectiveInterest', 'Eigensystem', 'Eigenvalues',
+ 'EigenvectorCentrality', 'Eigenvectors', 'ElementData', 'Element',
+ 'Eliminate', 'EllipticE', 'EllipticExp', 'EllipticExpPrime', 'GCD',
+ 'EllipticF', 'EllipticK', 'EllipticLog', 'EllipticNomeQ', 'Encode',
+ 'EllipticPi', 'EllipticTheta', 'EllipticThetaPrime', 'EmitSound',
+ 'EmpiricalDistribution', 'EmptyGraphQ', 'Enabled', 'EndOfFile',
+ 'EndDialogPacket', 'EndOfLine', 'EndOfString', 'EndPackage', 'Get',
+ 'EngineeringForm', 'EnterExpressionPacket', 'EnterTextPacket',
+ 'EntropyFilter', 'Entropy', 'Environment', '$Epilog', 'Epilog',
+ 'EqualTilde', 'Equilibrium', 'Equivalent', 'ErlangDistribution',
+ 'Erosion', 'ErrorBox', 'ErrorBoxOptions', 'EstimatedDistribution',
+ 'EstimatorGains', 'EstimatorRegulator', 'EuclideanDistance', 'Hue',
+ 'EulerE', 'EulerGamma', 'EulerianGraphQ', 'EulerPhi', 'Evaluate',
+ 'Evaluatable', 'EvaluatePacket', 'EvaluationCompletionAction',
+ 'EvaluationElements', 'EvaluationMonitor', 'EvaluationNotebook',
+ 'EvaluationObject', 'EvaluatorNames', 'Evaluator', 'EvenQ', 'Find',
+ 'EventHandler', 'EventLabels', 'ExactNumberQ', 'ExampleData',
+ 'Except', 'ExcludedForms', 'ExcludePods', 'Exclusions', 'Exists',
+ 'ExclusionsStyle', 'ExpandAll', 'ExpandDenominator', 'Expand',
+ 'ExpandFileName', 'ExpandNumerator', 'Expectation', 'ExpIntegralE',
+ 'ExpectedValue', 'ExpGammaDistribution', 'ExpIntegralEi', 'Export',
+ 'ExponentFunction', 'ExponentialDistribution', 'ExponentialFamily',
+ 'ExponentialGeneratingFunction', 'ExponentialMovingAverage', 'LCM',
+ 'ExponentialPowerDistribution', 'Exponent', 'ExponentPosition',
+ 'ExponentStep', 'ExportAutoReplacements', '$ExportFormats', 'Flat',
+ 'ExportString', 'ExpressionCell', 'Expression', 'ExpToTrig', 'Log',
+ 'ExtendedGCD', 'Extension', 'ExtentElementFunction', 'ExtentSize',
+ 'ExtentMarkers', 'ExternalDataCharacterEncoding', 'ExtractArchive',
+ 'Extract', 'ExtremeValueDistribution', 'FaceForm', 'FaceGrids',
+ 'FaceGridsStyle', 'FactorComplete', 'Factorial2', 'Factorial',
+ 'FactorialMomentGeneratingFunction', 'FactorialMoment', 'Factor',
+ 'FactorialPower', 'FactorInteger', 'FactorList', 'FactorTermsList',
+ 'FactorSquareFreeList', 'FactorSquareFree', 'FactorTerms', 'False',
+ '$Failed', 'FeedbackType', 'Fibonacci', 'FieldHint', 'FieldMasked',
+ 'FieldHintStyle', 'FieldSize', 'FileBaseName', 'FileByteCount',
+ 'FileDate', 'FileExistsQ', 'FileExtension', 'FileFormat', 'First',
+ 'FileHash', 'FileNameDepth', 'FileNameDialogSettings', 'FileNames',
+ 'FileNameDrop', 'FileNameJoin', 'FileNameSetter', 'FileNameSplit',
+ 'FileNameTake', 'FilePrint', 'FileType', 'FilledCurve', 'Filling',
+ 'FillingStyle', 'FillingTransform', 'FilterRules', 'FinancialBond',
+ 'FinancialData', 'FinancialDerivative', 'FinancialIndicator',
+ 'FindArgMax', 'FindArgMin', 'FindClique', 'FindClusters', 'Floor',
+ 'FindCurvePath', 'FindDistributionParameters', 'FindDivisions',
+ 'FindEdgeCover', 'FindEulerianCycle', 'FindFile', 'FindFit', 'Map',
+ 'FindGeneratingFunction', 'FindGeoLocation', 'FindInstance', 'Max',
+ 'FindGeometricTransform', 'FindGraphIsomorphism', 'FindLibrary',
+ 'FindHamiltonianCycle', 'FindIndependentEdgeSet', 'FindList',
+ 'FindIndependentVertexSet', 'FindIntegerNullVector', 'FindMaximum',
+ 'FindLinearRecurrence', 'FindMaxValue', 'FindMinimum', 'FindRoot',
+ 'FindMinValue', 'FindPermutation', 'FindSequenceFunction', 'Fold',
+ 'FindSettings', 'FindShortestPath', 'FindShortestTour', 'Flatten',
+ 'FindThreshold', 'FindVertexCover', 'FinishDynamic', 'FittedModel',
+ 'FiniteAbelianGroupCount', 'FiniteGroupCount', 'FiniteGroupData',
+ 'FischerGroupFi22', 'FischerGroupFi23', 'FischerGroupFi24Prime',
+ 'FisherHypergeometricDistribution', 'FisherRatioTest', 'FlattenAt',
+ 'FisherZDistribution', 'FixedPointList', 'FixedPoint', 'FlipView',
+ 'FoldList', 'FontColor', 'FontFamily', 'FontForm', 'FontSize',
+ 'FontProperties', 'FontSlant', 'FontSubstitutions', 'FontTracking',
+ 'FontVariations', 'FontWeight', 'ForAll', 'Format', '$FormatType',
+ 'FormatTypeAutoConvert', 'FormatType', 'FormBox', 'FormBoxOptions',
+ 'FortranForm', 'ForwardBackward', 'Forward', 'FourierCoefficient',
+ 'FourierCosCoefficient', 'FourierCosSeries', 'FourierCosTransform',
+ 'FourierDCT', 'FourierDST', 'Fourier', 'FourierParameters', 'Full',
+ 'FourierSequenceTransform', 'FourierSeries', 'FourierSinSeries',
+ 'FourierSinCoefficient', 'FourierSinTransform', 'FourierTransform',
+ 'FourierTrigSeries', 'FractionalPart', 'FractionBox', 'FrameBox',
+ 'FractionBoxOptions', 'FractionLine', 'FrameBoxOptions', 'Framed',
+ 'FrameLabel', 'FrameMargins', 'Frame', 'FrameStyle', 'FrameTicks',
+ 'FrameTicksStyle', 'FRatioDistribution', 'FrechetDistribution',
+ 'FreeQ', 'FresnelC', 'FresnelS', 'FrobeniusNumber', 'FromASCII',
+ 'FrobeniusSolve', 'FromCharacterCode', 'FromCoefficientRules',
+ 'FromContinuedFraction', 'FromDate', 'FromDigits', 'FromDMS',
+ 'FrontEndDynamicExpression', 'FrontEndEventActions', '$FrontEnd',
+ 'FrontEndExecute', '$FrontEndSession', 'FrontEndStackSize', 'Glow',
+ 'FrontEndTokenExecute', 'FrontEndToken', 'Front', 'FullDefinition',
+ 'FullForm', 'FullGraphics', 'FullOptions', 'FullSimplify', 'Gamma',
+ 'FunctionExpand', 'FunctionInterpolation', 'Function', 'GatherBy',
+ 'FunctionSpace', 'GaborWavelet', 'GainMargins', 'GainPhaseMargins',
+ 'GammaDistribution', 'GammaRegularized', 'GapPenalty', 'Gather',
+ 'GaussianFilter', 'GaussianIntegers', 'GaussianMatrix', 'General',
+ 'GegenbauerC', 'GeneralizedLinearModelFit', 'GenerateConditions',
+ 'GeneratedCell', 'GeneratedParameters', 'GeneratingFunction',
+ 'GenericCylindricalDecomposition', 'GenomeData', 'GenomeLookup',
+ 'GeodesicDilation', 'GeodesicErosion', 'GeoDestination', 'Goto',
+ 'GeodesyData', 'GeoDirection', 'GeoDistance', 'GeoGridPosition',
+ '$GeoLocation', 'GeometricDistribution', 'GeometricMeanFilter',
+ 'GeometricMean', 'GeometricTransformation', 'GeoPositionENU',
+ 'GeoPosition', 'GeoPositionXYZ', 'GeoProjectionData', 'Glaisher',
+ 'GoldenRatio', 'GompertzMakehamDistribution', 'GradientFilter',
+ 'Gradient', 'GraphCenter', 'GraphComplement', 'GraphData', 'Graph',
+ 'GraphDiameter', 'GraphDifference', 'GraphDisjointUnion', 'GraphQ',
+ 'GraphDistanceMatrix', 'GraphDistance', 'GraphHighlight', 'Gray',
+ 'GraphHighlightStyle', 'Graphics3D', 'GraphicsArray', 'Graphics',
+ 'GraphicsColumn', 'GraphicsComplex', 'GraphicsGrid', 'GraphicsRow',
+ 'GraphicsGroup', 'GraphicsSpacing', 'GraphIntersection', 'Greater',
+ 'GraphLayout', 'GraphPeriphery', 'GraphPlot3D', 'GraphPlot', 'Min',
+ 'GraphPower', 'GraphRadius', 'GraphStyle', 'GraphUnion', 'Green',
+ 'GrayLevel', 'GreaterEqualLess', 'GreaterEqual', 'GreaterGreater',
+ 'GreaterFullEqual', 'GreaterLess', 'GreaterSlantEqual', 'GridBox',
+ 'GreaterTilde', 'GridBaseline', 'GridCreationSettings', 'Grid',
+ 'GridDefaultElement', 'GridFrameMargins', 'GridFrame', 'GridGraph',
+ 'GridLines', 'GridLinesStyle', 'GroebnerBasis', 'GroupActionBase',
+ 'GroupCentralizer', 'GroupElementPosition', 'GroupElementQ', 'Mod',
+ 'GroupElements', 'GroupGenerators', 'GroupMultiplicationTable',
+ 'GroupOrbits', 'GroupOrder', 'GroupPageBreakWithin', 'HaarWavelet',
+ 'GroupSetwiseStabilizer', 'GroupStabilizerChain', 'Gudermannian',
+ 'GroupStabilizer', 'GumbelDistribution', 'HalfNormalDistribution',
+ 'HamiltonianGraphQ', 'HammingDistance', 'HankelH1', 'HankelH2',
+ 'HankelMatrix', 'HaradaNortonGroupHN', 'HararyGraph', 'Hash',
+ 'HarmonicMeanFilter', 'HarmonicMean', 'HarmonicNumber', 'Head',
+ 'Haversine', 'HazardFunction', 'Heads', 'HeavisideLambda', 'Hold',
+ 'HeavisidePi', 'HeavisideTheta', 'HeldGroupHe', 'HeldPart', 'Item',
+ 'HelpBrowserSettings', 'HermiteDecomposition', 'HermiteH', 'Image',
+ 'HermitianMatrixQ', 'HessenbergDecomposition', 'HiddenSurface',
+ 'HexadecimalCharacter', 'HighlightGraph', 'HigmanSimsGroupHS',
+ 'HilbertMatrix', 'Histogram3D', 'HistogramDistribution', 'HoldAll',
+ 'HistogramList', 'Histogram', '$HistoryLength', 'HitMissTransform',
+ 'HITSCentrality', 'HoldAllComplete', 'HoldComplete', 'HoldFirst',
+ 'HoldForm', 'HoldPattern', 'HoldRest', '$HomeDirectory', 'ImageQ',
+ 'HomeDirectory', 'HornerForm', 'HotellingTSquareDistribution',
+ 'HoytDistribution', 'HTMLSave', 'HumpDownHump', 'HumpEqual', 'Nor',
+ 'HurwitzLerchPhi', 'HurwitzZeta', 'HyperbolicDistribution', 'Join',
+ 'HypercubeGraph', 'Hyperfactorial', 'Hypergeometric0F1', 'Implies',
+ 'Hypergeometric0F1Regularized', 'Hypergeometric1F1', 'Hyperlink',
+ 'Hypergeometric1F1Regularized', 'Hypergeometric2F1', 'Hyphenation',
+ 'Hypergeometric2F1Regularized', 'HypergeometricDistribution',
+ 'HypergeometricPFQ', 'HypergeometricPFQRegularized', 'Identity',
+ 'HypergeometricU', 'HypothesisTestData', 'IdentityMatrix', 'Infix',
+ 'IgnoreCase', '$IgnoreEOF', 'ImageAdd', 'ImageAdjust', 'ImageClip',
+ 'ImageAlign', 'ImageApply', 'ImageAspectRatio', 'ImageAssemble',
+ 'ImageCapture', 'ImageChannels', 'ImageColorSpace', 'ImageCompose',
+ 'ImageConvolve', 'ImageCooccurrence', 'ImageCorrelate', 'ImagePad',
+ 'ImageCorrespondingPoints', 'ImageCrop', 'ImageData', 'ImageLines',
+ 'ImageDeconvolve', 'ImageDifference', 'ImageDimensions', 'Import',
+ 'ImageEffect', 'ImageFilter', 'ImageForestingComponents', 'Inner',
+ 'ImageForwardTransformation', 'ImageHistogram', 'ImageKeypoints',
+ 'ImageLevels', 'ImageMargins', 'ImageMultiply', 'ImagePadding',
+ 'ImagePartition', 'ImagePerspectiveTransformation', 'ImageReflect',
+ 'ImageRegion', 'ImageResize', 'ImageResolution', 'ImageRotated',
+ 'ImageRotate', 'ImageScaled', 'ImageSizeAction', 'ImageSize',
+ 'ImageSizeMultipliers', 'ImageSubtract', 'ImageTake', 'ImageTrim',
+ 'ImageTransformation', 'ImageType', 'ImageValue', '$ImportFormats',
+ '$ImagingDevices', 'ImportAutoReplacements', 'ImportString', 'Not',
+ 'IncidenceGraph', 'IncidenceMatrix', 'IncludeConstantBasis', 'Off',
+ 'IncludeFileExtension', 'IncludePods', 'Increment', 'IndexGraph',
+ 'IndependentEdgeSetQ', 'IndependentVertexSetQ', 'Indeterminate',
+ 'InexactNumberQ', 'Infinity', 'Information', 'Inherited', '$Input',
+ '$InitialDirectory', 'InitializationCellEvaluation', 'Inpaint',
+ 'InitializationCell', 'InitializationCellWarning', 'InputAliases',
+ 'InitializationGroup', 'Initialization', 'InputAssumptions', 'Out',
+ 'InputAutoReplacements', 'InputField', '$InputFileName', 'Input',
+ 'InputForm', 'InputNamePacket', 'InputNotebook', 'InputPacket',
+ 'InputStream', 'InputString', 'InputStringPacket', 'Insert', 'PDF',
+ 'InsertResults', 'Inset', '$Inspector', '$InstallationDate', 'Put',
+ '$InstallationDirectory', 'Install', 'InstallService', 'InString',
+ 'IntegerDigits', 'IntegerExponent', 'IntegerLength', 'Integer',
+ 'IntegerPartitions', 'IntegerPart', 'IntegerQ', 'Integers', 'Last',
+ 'IntegerString', 'Integrate', 'InteractiveTradingChart', 'Inverse',
+ 'Interleaving', 'InternallyBalancedDecomposition', 'Interpolation',
+ 'InterpolatingFunction', 'InterpolatingPolynomial', 'Interrupt',
+ 'InterpolationOrder', 'InterpolationPoints', 'InterpretationBox',
+ 'InterpretationBoxOptions', 'Interpretation', 'InterquartileRange',
+ 'Intersection', 'IntervalIntersection', 'IntervalMemberQ', 'Label',
+ 'Interval', 'IntervalUnion', 'InverseBetaRegularized', 'Invisible',
+ 'InverseCDF', 'InverseChiSquareDistribution', 'InverseErfc', 'Raw',
+ 'InverseContinuousWaveletTransform', 'InverseDistanceTransform',
+ 'InverseEllipticNomeQ', 'InverseErf', 'InverseFourierCosTransform',
+ 'InverseFourier', 'InverseFourierSequenceTransform', 'IsotopeData',
+ 'InverseFourierSinTransform', 'InverseFourierTransform', 'Italic',
+ 'InverseFunction', 'InverseFunctions', 'InverseGammaDistribution',
+ 'InverseGammaRegularized', 'InverseGaussianDistribution', 'Joined',
+ 'InverseGudermannian', 'InverseHaversine', 'InverseJacobiCD',
+ 'InverseJacobiCN', 'InverseJacobiCS', 'InverseJacobiDC', 'JacobiP',
+ 'InverseJacobiDN', 'InverseJacobiDS', 'InverseJacobiNC', 'Kernels',
+ 'InverseJacobiND', 'InverseJacobiNS', 'InverseJacobiSC', 'Labeled',
+ 'InverseJacobiSD', 'InverseJacobiSN', 'InverseLaplaceTransform',
+ 'InversePermutation', 'InverseRadon', 'InverseSeries', 'ItemSize',
+ 'InverseSurvivalFunction', 'InverseWaveletTransform', 'ItemStyle',
+ 'InverseWeierstrassP', 'InverseZTransform', 'IsolatingInterval',
+ 'IrreduciblePolynomialQ', 'IsomorphicGraphQ', 'ItemAspectRatio',
+ '$IterationLimit', 'JaccardDissimilarity', 'JacobiAmplitude',
+ 'JacobiCD', 'JacobiCN', 'JacobiCS', 'JacobiDC', 'JacobiDN', 'Left',
+ 'JacobiDS', 'JacobiNC', 'JacobiND', 'JacobiNS', 'JacobiSC', 'Less',
+ 'JacobiSD', 'JacobiSN', 'JacobiSymbol', 'JacobiZeta', 'JoinForm',
+ 'JankoGroupJ1', 'JankoGroupJ2', 'JankoGroupJ3', 'JankoGroupJ4',
+ 'JarqueBeraALMTest', 'JohnsonDistribution', 'JoinedCurve', 'Large',
+ 'JordanDecomposition', 'JordanModelDecomposition', 'KagiChart',
+ 'KalmanEstimator', 'KarhunenLoeveDecomposition', 'KaryTree', 'Red',
+ 'KatzCentrality', 'KCoreComponents', 'KDistribution', 'KelvinBei',
+ 'KelvinBer', 'KelvinKei', 'KelvinKer', '$KernelCount', '$KernelID',
+ 'KernelMixtureDistribution', 'KernelObject', 'Khinchin', 'Larger',
+ 'KirchhoffGraph', 'KirchhoffMatrix', 'KleinInvariantJ', 'KnotData',
+ 'KnightTourGraph', 'KolmogorovSmirnovTest', 'KroneckerDelta',
+ 'KroneckerProduct', 'KroneckerSymbol', 'KuiperTest', 'Kurtosis',
+ 'KumaraswamyDistribution', 'KuwaharaFilter', 'LabelingFunction',
+ 'LabelStyle', 'LaguerreL', 'LandauDistribution', '$Language',
+ 'LanguageCategory', 'Language', 'LaplaceDistribution', 'Latitude',
+ 'LaplaceTransform', 'LaplacianFilter', 'LaplacianGaussianFilter',
+ 'LatitudeLongitude', 'LatticeData', 'LatticeReduce', 'LeafCount',
+ 'LaunchKernels', 'LayeredGraphPlot', 'LayerSizeFunction', 'Length',
+ 'LeastSquares', 'LeftArrowBar', 'LeftArrow', 'LeftArrowRightArrow',
+ 'LeftDownTeeVector', 'LeftDownVectorBar', 'LeftDownVector', 'Line',
+ 'LeftRightArrow', 'LeftRightVector', 'LeftTeeArrow', 'LeftVector',
+ 'LeftTeeVector', 'LeftTriangleBar', 'LeftTriangleEqual', 'LetterQ',
+ 'LeftTriangle', 'LeftUpDownVector', 'LeftUpTeeVector', 'Legended',
+ 'LeftUpVectorBar', 'LeftUpVector', 'LeftVectorBar', 'LegendreP',
+ 'LegendAppearance', 'LegendreQ', 'LegendreType', 'LengthWhile',
+ 'LerchPhi', 'LessEqualGreater', 'LessEqual', 'LessFullEqual',
+ 'LessGreater', 'LessLess', 'LessSlantEqual', 'LessTilde', 'Level',
+ 'LetterCharacter', 'LeveneTest', 'LeviCivitaTensor', 'LibraryLoad',
+ 'LevyDistribution', 'LibraryFunctionError', 'LibraryFunctionLoad',
+ 'LibraryFunctionInformation', 'LibraryFunction', '$LibraryPath',
+ 'LibraryFunctionUnload', 'LibraryUnload', '$LicenseExpirationDate',
+ '$LicenseID', '$LicenseServer', 'LiftingFilterData', 'LightBlue',
+ 'LiftingWaveletTransform', 'LightBrown', 'LightCyan', 'Lighter',
+ 'LightGray', 'LightGreen', 'LightingAngle', 'Lighting', 'LightRed',
+ 'LightMagenta', 'LightOrange', 'LightPink', 'LightPurple', 'Limit',
+ 'LightSources', 'LightYellow', 'Likelihood', 'LimitsPositioning',
+ 'LimitsPositioningTokens', 'LindleyDistribution', 'LinearModelFit',
+ 'LinearFractionalTransform', 'LinearOffsetFunction', 'LinearSolve',
+ 'LinearProgramming', 'LinearRecurrence', 'LinearSolveFunction',
+ 'LinebreakAdjustments', 'LineBreakChart', 'LineBreakWithin', 'Row',
+ 'LineGraph', 'LineIndentMaxFraction', 'LineIndent', '$Line', 'Run',
+ 'LineIntegralConvolutionPlot', 'LineIntegralConvolutionScale',
+ 'LineSpacing', 'LinkClose', 'LinkConnect', 'LinkCreate', '$Linked',
+ 'LinkFunction', 'LinkInterrupt', 'LinkLaunch', 'LinkObject', 'Sec',
+ 'LinkOpen', 'LinkPatterns', 'LinkProtocol', 'LinkRead', 'Links',
+ 'LinkReadyQ', 'LinkWrite', 'LiouvilleLambda', 'Listable', 'List',
+ 'ListAnimate', 'ListContourPlot3D', 'ListContourPlot', 'ListPlay',
+ 'ListConvolve', 'ListCorrelate', 'ListCurvePathPlot', 'ListPlot3D',
+ 'ListDeconvolve', 'ListDensityPlot', 'ListInterpolation', 'Locked',
+ 'ListLineIntegralConvolutionPlot', 'ListLinePlot', 'ListLogPlot',
+ 'ListLogLinearPlot', 'ListLogLogPlot', 'ListPlot', 'ListPolarPlot',
+ 'ListPointPlot3D', 'ListStreamDensityPlot', 'ListStreamPlot',
+ 'ListSurfacePlot3D', 'ListVectorDensityPlot', 'ListVectorPlot3D',
+ 'ListVectorPlot', 'Literal', 'LocalizeVariables', 'LocationTest',
+ 'LocationEquivalenceTest', 'LocatorAutoCreate', 'Locator', 'Log10',
+ 'LocatorPane', 'LocatorRegion', 'Log2', 'LogBarnesG', 'LogGamma',
+ 'LogGammaDistribution', 'LogicalExpand', 'LogIntegral', 'LogPlot',
+ 'LogisticDistribution', 'LogitModelFit', 'LogLikelihood', 'LucasL',
+ 'LogLinearPlot', 'LogLogisticDistribution', 'LogLogPlot', 'Manual',
+ 'LogNormalDistribution', 'LogSeriesDistribution', 'LongestMatch',
+ 'LongestCommonSequence', 'LongestCommonSubsequence', 'Longest',
+ 'Longitude', 'LongLeftArrow', 'LongLeftRightArrow', 'LowerCaseQ',
+ 'LongRightArrow', 'LoopFreeGraphQ', 'LowerLeftArrow', '$MachineID',
+ 'LowerRightArrow', 'LowerTriangularize', 'LQEstimatorGains', 'Set',
+ 'LQGRegulator', 'LQOutputRegulatorGains', 'LQRegulatorGains',
+ 'LUBackSubstitution', 'LUDecomposition', 'LyapunovSolve', 'MapAll',
+ 'LyonsGroupLy', '$MachineAddresses', '$MachineDomain', 'Magenta',
+ '$MachineDomains', '$MachineEpsilon', '$MachineName', 'Magnify',
+ 'MachineNumberQ', '$MachinePrecision', 'MachinePrecision', 'MapAt',
+ '$MachineType', 'Magnification', 'Majority', 'MakeBoxes', 'MatchQ',
+ 'MakeExpression', 'MangoldtLambda', 'ManhattanDistance', 'MarcumQ',
+ 'Manipulate', 'Manipulator', 'MannWhitneyTest', 'MantissaExponent',
+ 'MapIndexed', 'MapThread', 'MardiaCombinedTest', 'Masking', 'Mean',
+ 'MardiaKurtosisTest', 'MardiaSkewnessTest', 'MarginalDistribution',
+ 'MatchingDissimilarity', 'MatchLocalNames', 'MathieuC', 'MathieuS',
+ 'MathieuCharacteristicA', 'MathieuCharacteristicB', 'MathMLForm',
+ 'MathieuCharacteristicExponent', 'MathieuCPrime', 'MathieuSPrime',
+ 'MathieuGroupM11', 'MathieuGroupM12', 'MathieuGroupM22', 'MatrixQ',
+ 'MathieuGroupM23', 'MathieuGroupM24', 'MatrixExp', 'MatrixForm',
+ 'MatrixPlot', 'MatrixPower', 'MatrixRank', 'MaxDetect', 'Maximize',
+ 'MaxExtraBandwidths', 'MaxExtraConditions', '$MaxExtraPrecision',
+ 'MaxFilter', 'MaxIterations', '$MaxMachineNumber', 'MaxMemoryUsed',
+ 'MaxMixtureKernels', '$MaxNumber', '$MaxPiecewiseCases', '$$Media',
+ 'MaxPlotPoints', '$MaxPrecision', 'MaxRecursion', '$MaxRootDegree',
+ 'MaxStableDistribution', 'MaxStepFraction', 'MaxStepSize', 'Mesh',
+ 'MaxSteps', 'MaxValue', 'MaxwellDistribution', 'MeanDeviation',
+ 'McLaughlinGroupMcL', 'MeanFilter', 'MeanShiftFilter', 'MeanShift',
+ 'MedianDeviation', 'MedianFilter', 'Median', 'Medium', 'MeijerG',
+ 'MemberQ', 'MemoryConstrained', 'MemoryInUse', 'MenuCommandKey',
+ 'MenuPacket', 'MenuSortingValue', 'MenuStyle', 'MenuView', 'Minus',
+ 'MeshFunctions', 'MeshRange', 'MeshShading', 'MeshStyle', 'Method',
+ 'MessageDialog', '$MessageGroups', '$MessageList', 'MessageList',
+ 'MessageName', 'Message', 'MessagePacket', '$MessagePrePrint',
+ '$Messages', 'Messages', 'MexicanHatWavelet', 'MeyerWavelet',
+ 'MinDetect', 'MinFilter', 'MinimalPolynomial', 'Minimize', 'Modal',
+ 'MinimalStateSpaceModel', '$MinMachineNumber', '$MinNumber', 'Sin',
+ 'Minors', '$MinPrecision', 'MinStableDistribution', 'MinusPlus',
+ 'MinValue', 'Missing', 'MixtureDistribution', 'ModularLambda',
+ 'Module', '$ModuleNumber', 'Modulus', 'MoebiusMu', 'MomentConvert',
+ 'MomentEvaluate', 'MomentGeneratingFunction', 'Moment', 'Monitor',
+ 'MonomialList', 'MonsterGroupM', 'MorletWavelet', 'Most', 'NameQ',
+ 'MorphologicalBinarize', 'MorphologicalBranchPoints', 'Mouseover',
+ 'MorphologicalComponents', 'MorphologicalEulerNumber', 'Names',
+ 'MorphologicalGraph', 'MorphologicalPerimeter', 'MouseAnnotation',
+ 'MorphologicalTransform', 'MouseAppearance', 'MousePosition',
+ 'MovingAverage', 'MovingMedian', 'MoyalDistribution', 'Nand',
+ 'MultiedgeStyle', 'MultilaunchWarning', 'MultilineFunction', 'Sow',
+ 'MultinomialDistribution', 'Multinomial', 'MultiplicativeOrder',
+ 'MultinormalDistribution', 'MultivariatePoissonDistribution',
+ 'MultivariateHypergeometricDistribution', 'NakagamiDistribution',
+ 'MultivariateTDistribution', 'NArgMax', 'NArgMin', 'NCache', 'Sum',
+ 'NDSolve', 'NearestFunction', 'Nearest', 'Needs', 'Negative',
+ 'NeedlemanWunschSimilarity', 'NegativeBinomialDistribution', 'Tan',
+ 'NegativeMultinomialDistribution', 'NeighborhoodGraph', 'NestList',
+ 'NestedGreaterGreater', 'NestedLessLess', 'Nest', 'NestWhileList',
+ 'NestWhile', 'NevilleThetaC', 'NevilleThetaD', 'NevilleThetaN',
+ 'NevilleThetaS', '$NewMessage', '$NewSymbol', 'NExpectation',
+ 'NextPrime', 'NHoldAll', 'NHoldFirst', 'NHoldRest', 'NicholsPlot',
+ 'NicholsGridLines', 'NIntegrate', 'NMaximize', 'NMaxValue', 'None',
+ 'NMinimize', 'NMinValue', 'NominalVariables', 'NonConstants',
+ 'NoncentralBetaDistribution', 'NoncentralChiSquareDistribution',
+ 'NoncentralFRatioDistribution', 'NoncentralStudentTDistribution',
+ 'NonCommutativeMultiply', 'NonlinearModelFit', 'NonNegative',
+ 'NonPositive', 'NorlundB', 'NormalDistribution', 'Normalize',
+ 'NormalizedSquaredEuclideanDistance', 'Normal', 'NormalsFunction',
+ 'NormFunction', 'Norm', 'NotCongruent', 'NotCupCap', 'NotebookGet',
+ 'NotDoubleVerticalBar', 'NotebookApply', 'NotebookAutoSave', 'Top',
+ 'NotebookBrowseDirectory', 'NotebookClose', 'NotebookCreate',
+ 'NotebookConvertSettings', 'NotebookDelete', 'NotebookDirectory',
+ 'NotebookDynamicExpression', 'NotebookEvaluate', 'NotebookFind',
+ 'NotebookEventActions', 'NotebookFileName', 'NotebookInformation',
+ 'NotebookLocate', 'Notebook', 'NotebookObject', 'NotebookOpen',
+ 'NotebookPath', 'NotebookPrint', 'NotebookPut', 'NotebookRead',
+ 'NotebookSave', 'NotebookSelection', 'NotebooksMenu', '$Notebooks',
+ 'Notebooks', 'NotebookWrite', 'NotElement', 'NotEqualTilde', 'Vee',
+ 'NotExists', 'NotGreaterEqual', 'NotGreaterFullEqual', 'NotLess',
+ 'NotGreaterGreater', 'NotGreaterLess', 'NotGreater', 'NotLessLess',
+ 'NotGreaterSlantEqual', 'NotGreaterTilde', 'NotHumpDownHump',
+ 'NotHumpEqual', 'NotLeftTriangleBar', 'NotLeftTriangleEqual',
+ 'NotLeftTriangle', 'NotLessEqual', 'NotLessFullEqual', 'NotSubset',
+ 'NotLessGreater', 'NotLessSlantEqual', 'NotLessTilde', 'NotTilde',
+ 'NotNestedGreaterGreater', 'NotNestedLessLess', 'NotPrecedesEqual',
+ 'NotPrecedes', 'NotPrecedesSlantEqual', 'NotPrecedesTilde', 'NSum',
+ 'NotReverseElement', 'NotRightTriangleBar', 'NotRightTriangle',
+ 'NotRightTriangleEqual', 'NotSquareSubsetEqual', 'NotSquareSubset',
+ 'NotSquareSupersetEqual', 'NotSquareSuperset', 'NotSubsetEqual',
+ 'NotSucceedsEqual', 'NotSucceeds', 'NotSucceedsSlantEqual', 'Null',
+ 'NotSucceedsTilde', 'NotSupersetEqual', 'NotSuperset', 'NProduct',
+ 'NotTildeEqual', 'NotTildeFullEqual', 'NotTildeTilde', 'NRoots',
+ 'NotVerticalBar', 'NProbability', 'NSolve', 'NullRecords', 'OddQ',
+ 'NullSpace', 'NullWords', 'NumberFieldClassNumber', 'NumberFormat',
+ 'NumberFieldDiscriminant', 'NumberFieldFundamentalUnits', 'Number',
+ 'NumberFieldIntegralBasis', 'NumberFieldNormRepresentatives',
+ 'NumberFieldRegulator', 'NumberFieldRootsOfUnity', 'NumberForm',
+ 'NumberFieldSignature', '$NumberMarks', 'NumberMarks', 'NumberQ',
+ 'NumberMultiplier', 'NumberPadding', 'NumberPoint', 'NumberSigns',
+ 'NumberSeparator', 'NumberString', 'Numerator', 'NumericFunction',
+ 'NumericQ', 'NyquistGridLines', 'NyquistPlot', 'ObservableModelQ',
+ 'ObservabilityGramian', 'ObservabilityMatrix', 'Offset', 'Opacity',
+ 'ObservableDecomposition', 'ONanGroupON', 'OneIdentity', 'Opener',
+ 'OpenAppend', 'OpenerView', 'Opening', 'OpenRead', 'OpenTemporary',
+ 'OpenWrite', 'Operate', '$OperatingSystem', 'OperatingSystem',
+ 'Optional', 'OptionInspectorSettings', 'Options', 'OptionsPattern',
+ 'OptionValue', 'Orange', 'OrderDistribution', 'OrderedQ', 'Order',
+ 'Ordering', 'Orderless', 'Orthogonalize', 'Outer', 'OutputForm',
+ 'OutputAutoOverwrite', 'OutputControllabilityMatrix', '$Output',
+ 'OutputControllableModelQ', 'OutputNamePacket', 'OutputResponse',
+ '$OutputSizeLimit', 'OutputSizeLimit', 'OutputStream', 'OverBar',
+ 'OverDot', 'Overflow', 'OverHat', 'Overlaps', 'Overlay', 'OwenT',
+ 'OverscriptBox', 'OverscriptBoxOptions', 'Overscript', 'OverTilde',
+ 'OverVector', 'OwnValues', '$Packages', 'PackingMethod', 'Padding',
+ 'PaddedForm', 'PadeApproximant', 'PadLeft', 'PadRight', 'Paneled',
+ 'PageBreakAbove', 'PageBreakBelow', 'PageBreakWithin', 'PageWidth',
+ 'PageFooterLines', 'PageFooters', 'PageHeaderLines', 'PageHeaders',
+ 'PageRankCentrality', 'PairedBarChart', 'PairedHistogram', 'Panel',
+ 'PairedTTest', 'PairedZTest', 'PaletteNotebook', 'PalettePath',
+ 'Pane', 'PaneSelector', 'ParabolicCylinderD', 'ParagraphIndent',
+ 'ParagraphSpacing', 'ParallelArray', 'ParallelCombine', 'Part',
+ 'ParallelDo', 'ParallelEvaluate', 'Parallelization', 'Parallelize',
+ 'ParallelMap', 'ParallelNeeds', 'ParallelProduct', 'ParallelSum',
+ 'ParallelSubmit', 'ParallelTable', 'ParallelTry', 'ParametricPlot',
+ 'ParameterEstimator', 'ParameterMixtureDistribution', 'Partition',
+ 'ParametricPlot3D', 'ParentDirectory', '$ParentLink', 'Paste',
+ '$ParentProcessID', 'ParetoDistribution', 'ParticleData', '$Path',
+ 'PartitionsP', 'PartitionsQ', 'PascalDistribution', 'PassEventsUp',
+ 'PassEventsDown', 'PasteBoxFormInlineCells', 'PasteButton', 'Path',
+ 'PathGraph', 'PathGraphQ', '$PathnameSeparator', 'Pattern', 'Pick',
+ 'PatternSequence', 'PatternTest', 'PauliMatrix', 'PaulWavelet',
+ 'Pause', 'PearsonChiSquareTest', 'PearsonDistribution', 'Permute',
+ '$PerformanceGoal', 'PerformanceGoal', 'PermutationCycles', 'Pink',
+ 'PermutationCyclesQ', 'PermutationGroup', 'PermutationLength',
+ 'PermutationList', 'PermutationListQ', 'PermutationMax', 'Placed',
+ 'PermutationMin', 'PermutationOrder', 'PermutationPower', 'Plain',
+ 'PermutationProduct', 'PermutationReplace', 'Permutations', 'Play',
+ 'PermutationSupport', 'PeronaMalikFilter', 'PERTDistribution',
+ 'PetersenGraph', 'PhaseMargins', 'PiecewiseExpand', 'Piecewise',
+ 'PieChart3D', 'PieChart', 'PixelConstrained', 'PixelValue', 'Plot',
+ 'Placeholder', 'PlaceholderReplace', 'PlayRange', 'Plot3D', 'Plus',
+ 'Plot3Matrix', 'PlotDivision', 'PlotJoined', 'PlotLabel', 'Point',
+ 'PlotLayout', 'PlotMarkers', 'PlotPoints', 'PlotRangeClipping',
+ 'PlotRange', 'PlotRangePadding', 'PlotRegion', 'PlotStyle', '$Pre',
+ 'PlusMinus', 'Pochhammer', 'PodStates', 'PodWidth', 'PointSize',
+ 'PointFigureChart', 'PoissonConsulDistribution', 'PolarAxes',
+ 'PoissonDistribution', 'PolarAxesOrigin', 'PolarGridLines', 'Quit',
+ 'PolarPlot', 'PolarTicks', 'PoleZeroMarkers', 'PolyGamma', '$Post',
+ 'PolyaAeppliDistribution', 'PolygonIntersections', 'Polygon',
+ 'PolyhedronData', 'PolyLog', 'PolynomialExtendedGCD', 'PopupMenu',
+ 'PolynomialGCD', 'PolynomialLCM', 'PolynomialMod', 'PolynomialQ',
+ 'PolynomialQuotient', 'PolynomialQuotientRemainder', 'PopupView',
+ 'PolynomialReduce', 'PolynomialRemainder', 'PopupWindow', 'Power',
+ 'Position', 'PositiveDefiniteMatrixQ', 'Positive', 'PossibleZeroQ',
+ 'Postfix', 'PowerDistribution', 'PowerExpand', 'PowerModList',
+ 'PowerMod', 'PowersRepresentations', 'PowerSymmetricPolynomial',
+ 'PrecedenceForm', 'PrecedesEqual', 'Precedes', 'PrecedesTilde',
+ 'PrecedesSlantEqual', 'PrecisionGoal', 'Precision', 'PreDecrement',
+ 'PreemptProtect', 'PreferencesPath', 'Prefix', 'PreIncrement',
+ 'Prepend', 'PrependTo', '$PrePrint', '$PreRead', 'Prime', 'PrimeQ',
+ 'PreserveImageOptions', 'PriceGraphDistribution', 'PrimeNu', 'Xor',
+ 'PrimeOmega', 'PrimePi', 'PrimePowerQ', 'Primes', 'PrimeZetaP',
+ 'PrimitiveRoot', 'PrincipalComponents', 'PrincipalValue', 'Print',
+ 'PrintAction', 'PrintingCopies', 'PrintingOptions', 'PrivatePaths',
+ 'PrintingPageRange', 'PrintingStartingPageNumber', 'Probability',
+ 'PrintingStyleEnvironment', 'PrintPrecision', 'PrintTemporary',
+ 'PrivateEvaluationOptions', 'PrivateFontOptions', 'ProbitModelFit',
+ 'PrivateNotebookOptions', 'ProbabilityDistribution', '$ProcessID',
+ 'ProbabilityPlot', 'ProbabilityScalePlot', '$ProcessorCount',
+ '$ProcessorType', 'ProductDistribution', '$ProductInformation',
+ 'ProductLog', 'Product', 'ProgressIndicator', 'Projection', 'Read',
+ 'Prolog', 'Properties', 'PropertyList', 'Property', 'Proportional',
+ 'PropertyValue', 'Proportion', 'Protected', 'Protect', 'Pruning',
+ 'ProteinData', 'PseudoInverse', 'Purple', 'PutAppend', 'QBinomial',
+ 'QFactorial', 'QGamma', 'QHypergeometricPFQ', 'QPochhammer',
+ 'QPolyGamma', 'QRDecomposition', 'QuadraticIrrationalQ', 'Quiet',
+ 'Quantile', 'QuantilePlot', 'Quartics', 'QuartileDeviation',
+ 'QuartileSkewness', 'Quartiles', 'Quotient', 'QuotientRemainder',
+ 'RadicalBox', 'RadicalBoxOptions', 'RadioButtonBar', 'RadioButton',
+ 'Radon', 'RamanujanTauL', 'RamanujanTau', 'RamanujanTauTheta',
+ 'RamanujanTauZ', 'RandomChoice', 'RandomComplex', 'RandomGraph',
+ 'RandomImage', 'RandomInteger', 'Random', 'RandomPermutation',
+ 'RandomPrime', 'RandomReal', 'RandomSample', '$RandomState',
+ 'RandomVariate', 'RangeFilter', 'Range', 'RankedMax', 'RankedMin',
+ 'RasterArray', 'Rasterize', 'Raster', 'RasterSize', 'Rationalize',
+ 'Rational', 'Rationals', 'Ratios', 'RawBoxes', 'RawData', 'Real',
+ 'RayleighDistribution', 'ReadList', 'ReadProtected', 'RealDigits',
+ 'RealBlockDiagonalForm', 'RealExponent', 'Reals', 'Reap', 'Record',
+ 'RecordLists', 'RecordSeparators', 'RectangleChart3D', 'Rectangle',
+ 'RectangleChart', 'RecurrenceTable', '$RecursionLimit', 'Reduce',
+ 'ReferenceLineStyle', 'Refine', 'ReflectionMatrix', 'Refresh',
+ 'ReflectionTransform', 'RefreshRate', 'RegionBinarize', 'Release',
+ 'RegionFunction', 'RegionPlot3D', 'RegionPlot', 'Regularization',
+ 'RegularExpression', 'ReleaseHold', '$ReleaseNumber', 'ReliefPlot',
+ 'ReliefImage', 'RemoveAlphaChannel', 'Remove', 'RemoveProperty',
+ 'RemoveScheduledTask', 'RenameDirectory', 'RenameFile', 'Repeated',
+ 'RenderAll', 'RenkoChart', 'RepeatedNull', 'ReplaceAll', 'Replace',
+ 'ReplaceHeldPart', 'ReplaceList', 'ReplacePart', 'ReplaceRepeated',
+ 'Resampling', 'Rescale', 'RescalingTransform', 'ResetDirectory',
+ 'ResetMedium', 'ResetScheduledTask', 'Residue', 'Resolve', 'Rest',
+ 'Resultant', 'ResumePacket', 'ReturnExpressionPacket', 'Return',
+ 'ReturnPacket', 'ReturnTextPacket', 'ReverseElement', 'Reverse',
+ 'ReverseBiorthogonalSplineWavelet', 'ReverseEquilibrium', 'Riffle',
+ 'ReverseGraph', 'ReverseUpEquilibrium', 'RevolutionAxis', 'Right',
+ 'RevolutionPlot3D', 'RGBColor', 'RiccatiSolve', 'RiceDistribution',
+ 'RidgeFilter', 'RiemannR', 'RiemannSiegelTheta', 'RiemannSiegelZ',
+ 'RightArrowBar', 'RightArrowLeftArrow', 'RightArrow', 'Root',
+ 'RightCosetRepresentative', 'RightDownTeeVector', 'RightTeeArrow',
+ 'RightDownVectorBar', 'RightDownVector', 'RightTeeVector', 'Roots',
+ 'RightTriangleBar', 'RightTriangleEqual', 'RightTriangle', 'Round',
+ 'RightUpDownVector', 'RightUpTeeVector', 'RightUpVectorBar',
+ 'RightUpVector', 'RightVectorBar', 'RightVector', '$RootDirectory',
+ 'RogersTanimotoDissimilarity', 'RootApproximant', 'RootIntervals',
+ 'RootLocusPlot', 'RootMeanSquare', 'RootOfUnityQ', 'RootReduce',
+ 'RootSum', 'RotateLabel', 'RotateLeft', 'Rotate', 'RotateRight',
+ 'RotationAction', 'RotationMatrix', 'RotationTransform', 'RowBox',
+ 'RoundingRadius', 'RowAlignments', 'RowLines', 'RowMinHeight',
+ 'RowReduce', 'RowsEqual', 'RowSpacings', 'RSolve', 'RuleDelayed',
+ 'RudvalisGroupRu', 'Rule', 'RulerUnits', 'RunScheduledTask',
+ 'RunThrough', 'RuntimeAttributes', 'RuntimeOptions', 'SameQ',
+ 'RussellRaoDissimilarity', 'SameTest', 'SampleDepth', 'SampleRate',
+ 'SampledSoundFunction', 'SampledSoundList', 'SamplingPeriod',
+ 'SatisfiabilityCount', 'SatisfiabilityInstances', 'SatisfiableQ',
+ 'Saveable', 'SaveAutoDelete', 'SaveDefinitions', 'Save', 'Scaled',
+ 'SawtoothWave', 'Scale', 'ScalingFunctions', 'ScalingMatrix',
+ 'ScalingTransform', 'Scan', '$ScheduledTask', 'ScheduledTasks',
+ 'ScheduledTaskObject', 'SchurDecomposition', 'ScientificForm',
+ 'ScreenRectangle', 'ScreenStyleEnvironment', '$ScriptCommandLine',
+ 'ScriptBaselineShifts', 'ScriptLevel', 'ScriptMinSize', 'Sech',
+ 'ScriptSizeMultipliers', 'Scrollbars', 'ScrollingOptions', 'Share',
+ 'ScrollPosition', 'SechDistribution', 'SectorChart3D', 'Select',
+ 'SectorChart', 'SectorOrigin', 'SectorSpacing', 'SeedRandom',
+ 'Selectable', 'SelectComponents', 'SelectedNotebook', 'SendMail',
+ 'SelectionAnimate', 'SelectionCreateCell', 'SelectionEvaluate',
+ 'SelectionEvaluateCreateCell', 'SelectionMove', 'SelfLoopStyle',
+ 'SemialgebraicComponentInstances', 'SequenceAlignment', 'Sequence',
+ 'SequenceForm', 'SequenceHold', 'SeriesCoefficient', 'SeriesData',
+ 'Series', '$SessionID', 'SessionTime', 'SetAccuracy', 'SetDelayed',
+ 'SetAlphaChannel', 'SetAttributes', 'SetDirectory', 'SetFileDate',
+ 'SetOptions', 'SetPrecision', 'SetProperty', 'SetSelectedNotebook',
+ 'SetSharedFunction', 'SetSharedVariable', 'SetStreamPosition',
+ 'SetSystemOptions', 'SetterBar', 'Setter', 'Setting', 'Shading',
+ 'Shallow', 'ShannonWavelet', 'ShapiroWilkTest', '$SharedFunctions',
+ '$SharedVariables', 'Sharpen', 'ShearingMatrix', 'ShortDownArrow',
+ 'ShearingTransform', 'ShortestMatch', 'Shortest', 'ShortLeftArrow',
+ 'ShortestPathFunction', 'Short', 'ShortRightArrow', 'ShortUpArrow',
+ 'ShowAutoStyles', 'ShowCellBracket', 'ShowCellLabel', 'Show',
+ 'ShowCellTags', 'ShowClosedCellArea', 'ShowContents', 'Signature',
+ 'ShowCursorTracker', 'ShowGroupOpener', 'ShowPageBreaks', 'Sign',
+ 'ShowSelection', 'ShowShortBoxForm', 'ShowSpecialCharacters',
+ 'ShowStringCharacters', 'ShrinkingDelay', 'SiegelTheta', 'Sinc',
+ 'SiegelTukeyTest', 'SignedRankTest', 'SignificanceLevel', 'Sinh',
+ 'SignPadding', 'SignTest', 'SimilarityRules', 'SimpleGraph',
+ 'SimpleGraphQ', 'Simplify', 'SinghMaddalaDistribution', 'Skeleton',
+ 'SingleLetterItalics', 'SingularValueDecomposition', 'SinIntegral',
+ 'SingularValueList', 'SingularValuePlot', 'SingularValues', 'Skip',
+ 'SinhIntegral', 'SixJSymbol', 'SkeletonTransform', 'Skewness',
+ 'SkellamDistribution', 'SkewNormalDistribution', 'Slider2D',
+ 'Slider', 'SlideView', 'Slot', 'SlotSequence', 'SmallCircle',
+ 'Smaller', 'Small', 'SmithWatermanSimilarity', 'SmoothHistogram3D',
+ 'SmoothDensityHistogram', 'SmoothHistogram', 'SolveAlways', 'Sort',
+ 'SmoothKernelDistribution', 'SokalSneathDissimilarity', 'Solve',
+ 'SortBy', '$SoundDisplayFunction', 'Sound', 'SoundNote', 'Spacer',
+ 'SoundVolume', 'Spacings', 'SpanAdjustments', 'SpanFromAbove',
+ 'SpanCharacterRounding', 'SpanFromBoth', 'SpanFromLeft', 'Span',
+ 'SpanLineThickness', 'SpanMaxSize', 'SpanMinSize', 'SpanSymmetric',
+ 'SparseArray', 'Speak', 'Specularity', 'SpellingCorrection',
+ 'SpellingDictionaries', 'SpellingDictionariesPath', 'Sphere',
+ 'SpellingOptions', 'SphericalBesselJ', 'SphericalBesselY', 'Split',
+ 'SphericalHankelH1', 'SphericalHankelH2', 'SphericalHarmonicY',
+ 'SphericalPlot3D', 'SphericalRegion', 'SpheroidalEigenvalue',
+ 'SpheroidalJoiningFactor', 'SpheroidalPS', 'SpheroidalPSPrime',
+ 'SpheroidalQS', 'SpheroidalQSPrime', 'SpheroidalRadialFactor',
+ 'SpheroidalS1', 'SpheroidalS1Prime', 'SpheroidalS2', 'Splice',
+ 'SpheroidalS2Prime', 'SplineClosed', 'SplineDegree', 'SplineKnots',
+ 'SplineWeights', 'SplitBy', 'SpokenString', 'SqrtBox', 'Sqrt',
+ 'SquaredEuclideanDistance', 'SquareFreeQ', 'SquareIntersection',
+ 'Square', 'SquaresR', 'SquareSubsetEqual', 'SquareSubset', 'Stack',
+ 'SquareSupersetEqual', 'SquareSuperset', 'SquareUnion', 'Star',
+ 'SquareWave', 'StabilityMargins', 'StabilityMarginsStyle', 'Stub',
+ 'StableDistribution', 'StackBegin', 'StackComplete', 'Standardize',
+ 'StackInhibit', 'StandardDeviationFilter', 'StandardDeviation',
+ 'StandardForm', 'StarGraph', 'StartingStepSize', 'StartOfLine',
+ 'StartOfString', 'StartProcess', 'StartScheduledTask', 'Streams',
+ 'StartupSound', 'StateFeedbackGains', 'StateOutputEstimator',
+ 'StateResponse', 'StateSpaceModel', 'StateSpaceRealization',
+ 'StateSpaceTransform', 'StationaryWaveletPacketTransform', 'Style',
+ 'StationaryWaveletTransform', 'StatusArea', 'StepMonitor', 'Table',
+ 'StieltjesGamma', 'StirlingS1', 'StirlingS2', 'StopScheduledTask',
+ 'StreamColorFunction', 'StreamColorFunctionScaling', 'StreamPlot',
+ 'StreamDensityPlot', 'StreamPoints', 'StreamPosition', 'String',
+ 'StreamScale', 'StreamStyle', 'StringCases', 'StringCount', 'Take',
+ 'StringDrop', 'StringExpression', 'StringFormat', 'StringForm',
+ 'StringFreeQ', 'StringInsert', 'StringJoin', 'StringLength',
+ 'StringMatchQ', 'StringPosition', 'StringQ', 'StringReplaceList',
+ 'StringReplace', 'StringReplacePart', 'StringReverse', 'StruveH',
+ 'StringSkeleton', 'StringSplit', 'StringTake', 'StringToStream',
+ 'StringTrim', 'StructuredSelection', 'StruveL', 'StyleBox', 'Tanh',
+ 'StudentTDistribution', 'StyleBoxAutoDelete', 'StyleData', 'Tally',
+ 'StyleDefinitions', 'StyleForm', 'StyleMenuListing', 'StylePrint',
+ 'StyleNameDialogSettings', 'StyleSheetPath', 'Subfactorial',
+ 'Subgraph', 'SubMinus', 'SubPlus', 'Subresultants', 'SubscriptBox',
+ 'SubscriptBoxOptions', 'Subscripted', 'Subscript', 'SubsetEqual',
+ 'Subset', 'Subsets', 'SubStar', 'SubsuperscriptBox', 'Subtract',
+ 'SubsuperscriptBoxOptions', 'Subsuperscript', 'SubtractFrom',
+ 'SucceedsEqual', 'Succeeds', 'SucceedsSlantEqual', 'SucceedsTilde',
+ 'SuchThat', 'SumConvergence', 'SuperDagger', 'SuperMinus', 'Text',
+ 'SuperPlus', 'SuperscriptBox', 'SuperscriptBoxOptions', 'Superset',
+ 'Superscript', 'SupersetEqual', 'SuperStar', 'SurfaceColor',
+ 'SurfaceGraphics', 'SurvivalDistribution', 'SurvivalFunction',
+ 'SuspendPacket', 'SuzukiDistribution', 'SuzukiGroupSuz', 'Switch',
+ 'SymbolName', 'Symbol', 'SymletWavelet', 'SymmetricGroup', 'Thick',
+ 'SymmetricMatrixQ', 'SymmetricPolynomial', 'SymmetricReduction',
+ 'SynchronousInitialization', 'SynchronousUpdating', 'SyntaxForm',
+ '$SyntaxHandler', 'SyntaxInformation', 'SyntaxLength', 'SyntaxQ',
+ 'SyntaxPacket', '$SystemCharacterEncoding', 'SystemDialogInput',
+ 'SystemHelpPath', '$SystemID', 'SystemInformation', '$System',
+ 'SystemOpen', 'SystemOptions', 'SystemsModelDelete', 'TabFilling',
+ 'SystemsModelDimensions', 'SystemsModelExtract', 'TableAlignments',
+ 'SystemsModelFeedbackConnect', 'SystemsModelLabels', 'TableDepth',
+ 'SystemsModelOrder', 'SystemsModelParallelConnect', 'TableForm',
+ 'SystemsModelSeriesConnect', 'SystemsModelStateFeedbackConnect',
+ '$SystemWordLength', 'TableDirections', 'TableHeadings', 'TabView',
+ 'TableSpacing', 'TabSpacings', 'TagBox', 'TaggingRules', 'TagSet',
+ 'TagSetDelayed', 'TagUnset', 'TakeWhile', 'TargetFunctions',
+ 'TautologyQ', '$TemporaryDirectory', 'Temporary', 'TensorRank',
+ '$TemporaryPrefix', 'TeXForm', 'TeXSave', 'TextAlignment', 'Thin',
+ 'TextCell', 'TextClipboardType', 'TextData', 'TextJustification',
+ 'TextPacket', 'TextRecognize', '$TextStyle', 'TextStyle', 'Thread',
+ 'TextureCoordinateFunction', 'TextureCoordinateScaling', 'Texture',
+ 'Therefore', 'Thickness', 'Thinning', 'ThompsonGroupTh', 'Through',
+ 'ThreeJSymbol', 'Threshold', 'Throw', 'Thumbnail', 'Ticks', 'Tiny',
+ 'TicksStyle', 'TildeEqual', 'TildeFullEqual', 'Tilde', '$TimedOut',
+ 'TildeTilde', 'TimeConstrained', 'TimeConstraint', 'TimesBy',
+ 'Times', '$TimeUnit', 'TimeUsed', 'TimeValue', '$TimeZone', 'Trig',
+ 'TimeZone', 'Timing', 'TitsGroupT', 'ToASCII', 'ToBoxes', 'ToDate',
+ 'ToCharacterCode', 'ToContinuousTimeModel', 'ToDiscreteTimeModel',
+ 'ToeplitzMatrix', 'ToExpression', 'ToFileName', 'Together', 'True',
+ 'TogglerBar', 'Toggler', 'ToHeldExpression', 'TokenWords', 'Total',
+ 'Tolerance', 'ToLowerCase', 'ToNumberField', 'TooltipDelay',
+ 'Tooltip', '$TopDirectory', 'TopHatTransform', 'TopologicalSort',
+ 'ToRadicals', 'ToRules', 'ToString', 'TotalVariationFilter',
+ 'TotalWidth', 'ToUpperCase', 'TraceAbove', 'TraceBackward', 'Tube',
+ 'TraceDepth', 'TraceDialog', 'TraceForward', 'Trace', 'TraceOff',
+ 'TraceOn', 'TraceOriginal', 'TracePrint', 'TraceScan', 'Translate',
+ 'TrackedSymbols', 'TradingChart', 'TraditionalForm', 'Transparent',
+ 'TraditionalFunctionNotation', 'TransferFunctionCancel', 'Trigger',
+ 'TransferFunctionExpand', 'TransferFunctionFactor', 'Transpose',
+ 'TransferFunctionModel', 'TransferFunctionPoles', 'TreeForm',
+ 'TransferFunctionZeros', 'TransformationFunction', 'TreeGraph',
+ 'TransformationFunctions', 'TransformationMatrix', 'TreeGraphQ',
+ 'TransformedDistribution', 'TranslationTransform', 'TreePlot',
+ 'TrendStyle', 'TriangleWave', 'TriangularDistribution', 'TrueQ',
+ 'TrigExpand', 'TrigFactorList', 'TrigFactor', 'TrigReduce', 'With',
+ 'TrigToExp', 'TrimmedMean', 'TruncatedDistribution', 'TTest',
+ 'TukeyLambdaDistribution', 'Tuples', 'TuranGraph', 'TuringMachine',
+ 'Uncompress', 'Undefined', 'UnderBar', 'Underflow', 'Underlined',
+ 'UnderoverscriptBox', 'UnderoverscriptBoxOptions', 'Underscript',
+ 'Underoverscript', 'UnderscriptBox', 'UnderscriptBoxOptions',
+ 'UndirectedEdge', 'UndirectedGraph', 'UndirectedGraphQ', 'Unequal',
+ 'Unevaluated', 'UniformDistribution', 'UniformGraphDistribution',
+ 'UniformSumDistribution', 'Uninstall', 'Union', 'UnionPlus',
+ 'Unique', 'UnitBox', 'Unitize', 'UnitStep', 'UnitTriangle', 'Word',
+ 'UnitVector', 'Unprotect', 'UnsameQ', 'UnsavedVariables', 'Unset',
+ 'UnsetShared', 'UpArrowBar', 'UpArrowDownArrow', 'UpArrow', 'Xnor',
+ 'UpdateInterval', 'Update', 'UpDownArrow', 'UpEquilibrium', 'Zeta',
+ 'UpperCaseQ', 'UpperLeftArrow', 'UpperRightArrow', 'UpSetDelayed',
+ 'UpperTriangularize', 'UpSet', 'UpTeeArrow', 'UpValues', '$Urgent',
+ '$UserAddOnsDirectory', '$UserBaseDirectory', '$UserName', 'Wedge',
+ '$UserDocumentsDirectory', 'UsingFrontEnd', 'ValidationLength',
+ 'ValueQ', 'Variables', 'VarianceEquivalenceTest', 'Variance',
+ 'VarianceEstimatorFunction', 'VarianceTest', 'VectorAngle',
+ 'VectorColorFunction', 'VectorColorFunctionScaling', 'VectorPlot',
+ 'VectorDensityPlot', 'VectorPlot3D', 'VectorPoints', 'VectorQ',
+ 'VectorScale', 'VectorStyle', 'Verbatim', 'VerifyConvergence',
+ 'VerifyTestAssumptions', '$Version', '$VersionNumber', 'VertexAdd',
+ 'VertexColors', 'VertexComponent', 'VertexCoordinateRules',
+ 'VertexCoordinates', 'VertexCount', 'VertexCoverQ', 'VertexDegree',
+ 'VertexDelete', 'VertexEccentricity', 'VertexInComponent', 'Which',
+ 'VertexInDegree', 'VertexIndex', 'VertexLabeling', 'VertexLabels',
+ 'VertexLabelStyle', 'VertexList', 'VertexNormals', 'VertexQ',
+ 'VertexOutComponent', 'VertexOutDegree', 'VertexRenderingFunction',
+ 'VertexReplace', 'VertexShapeFunction', 'VertexShape', 'ViewAngle',
+ 'VertexSize', 'VertexStyle', 'VertexTextureCoordinates', 'Visible',
+ 'VertexWeight', 'VerticalBar', 'VerticalSeparator', 'ViewCenter',
+ 'VerticalSlider', 'VerticalTilde', 'ViewMatrix', 'ViewPoint',
+ 'ViewRange', 'ViewVector', 'ViewVertical', 'VonMisesDistribution',
+ 'WaitAll', 'WaitNext', 'WakebyDistribution', 'WatershedComponents',
+ 'WalleniusHypergeometricDistribution', 'WaringYuleDistribution',
+ 'WatsonUSquareTest', 'WattsStrogatzGraphDistribution', 'WeberE',
+ 'WaveletBestBasis', 'WaveletFilterCoefficients', 'WaveletListPlot',
+ 'WaveletImagePlot', 'WaveletMapIndexed', 'WaveletMatrixPlot',
+ 'WaveletPhi', 'WaveletPsi', 'WaveletScale', 'WaveletScalogram',
+ 'WaveletThreshold', 'WeatherData', 'WeibullDistribution', 'While',
+ 'WeierstrassHalfPeriods', 'WeierstrassInvariants', 'WeierstrassP',
+ 'WeierstrassPPrime', 'WeierstrassSigma', 'WeierstrassZeta',
+ 'WeightedAdjacencyGraph', 'WeightedAdjacencyMatrix', 'Weights',
+ 'WeightedGraphQ', 'WheelGraph', 'White', 'WhitespaceCharacter',
+ 'Whitespace', 'WhittakerM', 'WhittakerW', 'WienerFilter', 'Write',
+ 'WignerD', 'WignerSemicircleDistribution', 'WindowClickSelect',
+ 'WindowElements', 'WindowFloating', 'WindowFrameElements', 'ZTest',
+ 'WindowFrame', 'WindowMargins', 'WindowMovable', 'WindowOpacity',
+ 'WindowSize', 'WindowStatusArea', 'WindowTitle', 'WindowToolbars',
+ 'WolframAlpha', 'WordBoundary', 'WordCharacter', 'WordData',
+ 'WordSearch', 'WordSeparators', 'WorkingPrecision', 'WriteString',
+ 'Wronskian', 'XMLElement', 'XMLObject', 'Yellow', 'ZernikeR',
+ 'YuleDissimilarity', 'ZeroTest', 'ZeroWidthTimes', 'ZetaZero',
+ 'ZipfDistribution', 'ZTransform'
+ )
+ ),
+ /* Most symbol combinations can be valid Wolfram operators */
+ 'SYMBOLS' => array(
+ '!', '@', '#', '$', '%', '&', '*', '-', '+', '=',
+ '^', '~', '|', '\\', '>', '<', ':', '?', '/'
+ ),
+ 'CASE_SENSITIVE' => array(
+ GESHI_COMMENTS => false,
+ 1 => true /* Wolfram is a case sensitive language */
+ ),
+ 'STYLES' => array(
+ 'KEYWORDS' => array(
+ 1 => 'font-weight: bold;', /* make the system functions bold */
+ ),
+ 'COMMENTS' => array(
+ 'MULTI' => 'color: grey;',
+ 2 => 'color: grey;', /* nested comments are grey as well */
+ 3 => 'color: #000aa; font-weight: bold;' /* complex symbols */
+ ),
+ 'ESCAPE_CHAR' => array(
+ 0 => 'background-color: #3cb371; font-weight: bold;'
+ ),
+ 'BRACKETS' => array(
+ 0 => 'color: green; font-weight: bold;'
+ ),
+ 'STRINGS' => array(
+ 0 => 'color: grey; font-weight: bold;'
+ ),
+ 'NUMBERS' => array(
+ 0 => 'color: red;'
+ ),
+ 'METHODS' => array(
+ 1 => 'color: #060;'
+ ),
+ 'REGEXPS' => array(
+ ),
+ 'SYMBOLS' => array(
+ 0 => 'color: #339933; font-weight: bold;'
+ ),
+ 'SCRIPT' => array(
+ )
+ ),
+ 'URLS' => array(
+ /* online documentation for system functions */
+ 1 => 'http://reference.wolfram.com/language/ref/{FNAME}.html'
+ ),
+ 'OOLANG' => false,
+ 'OBJECT_SPLITTERS' => array(
+ ),
+ 'REGEXPS' => array(
+ ),
+ 'STRICT_MODE_APPLIES' => GESHI_NEVER,
+ 'SCRIPT_DELIMITERS' => array(
+ ),
+ 'HIGHLIGHT_STRICT_BLOCK' => array(
+ )
+);
diff --git a/vendor/geshi/geshi/src/geshi/xbasic.php b/vendor/geshi/geshi/src/geshi/xbasic.php
index 45af71095..c78a7b917 100644
--- a/vendor/geshi/geshi/src/geshi/xbasic.php
+++ b/vendor/geshi/geshi/src/geshi/xbasic.php
@@ -4,7 +4,7 @@
* ----------
* Author: Jos Gabriel Moya Yangela (josemoya@gmail.com)
* Copyright: (c) 2005 Jos Gabriel Moya Yangela (http://aprenderadesaprender.6te.net)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2005/11/23
*
* XBasic language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/xml.php b/vendor/geshi/geshi/src/geshi/xml.php
index a6a145f11..6f127391e 100644
--- a/vendor/geshi/geshi/src/geshi/xml.php
+++ b/vendor/geshi/geshi/src/geshi/xml.php
@@ -4,7 +4,7 @@
* -------
* Author: Nigel McNie (nigel@geshi.org)
* Copyright: (c) 2004 Nigel McNie (http://qbnz.com/highlighter/)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2004/09/01
*
* XML language file for GeSHi. Based on the idea/file by Christian Weiske
diff --git a/vendor/geshi/geshi/src/geshi/xojo.php b/vendor/geshi/geshi/src/geshi/xojo.php
index e067acf4a..abd252572 100644
--- a/vendor/geshi/geshi/src/geshi/xojo.php
+++ b/vendor/geshi/geshi/src/geshi/xojo.php
@@ -4,7 +4,7 @@
* --------
* Author: Dr Garry Pettet (contact@garrypettet.com)
* Copyright: (c) 2014 Dr Garry Pettet (http://garrypettet.com)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2014/10/19
*
* Xojo language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/xorg_conf.php b/vendor/geshi/geshi/src/geshi/xorg_conf.php
index 92b276bd9..b9280bb36 100644
--- a/vendor/geshi/geshi/src/geshi/xorg_conf.php
+++ b/vendor/geshi/geshi/src/geshi/xorg_conf.php
@@ -4,7 +4,7 @@
* ----------
* Author: Milian Wolff (mail@milianw.de)
* Copyright: (c) 2008 Milian Wolff (http://milianw.de)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2008/06/18
*
* xorg.conf language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/xpp.php b/vendor/geshi/geshi/src/geshi/xpp.php
index d249c487c..0e57f4d1e 100644
--- a/vendor/geshi/geshi/src/geshi/xpp.php
+++ b/vendor/geshi/geshi/src/geshi/xpp.php
@@ -4,7 +4,7 @@
* -------
* Author: Simon Butcher (simon@butcher.name)
* Copyright: (c) 2007 Simon Butcher (http://simon.butcher.name/)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2007/02/27
*
* Axapta/Dynamics Ax X++ language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/yaml.php b/vendor/geshi/geshi/src/geshi/yaml.php
index 252779e9d..e42371761 100644
--- a/vendor/geshi/geshi/src/geshi/yaml.php
+++ b/vendor/geshi/geshi/src/geshi/yaml.php
@@ -4,7 +4,7 @@
* --------
* Author: Josh Ventura (JoshV10@gmail.com)
* Copyright: (c) 2010 Josh Ventura
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2010/12/14
*
* YAML language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/z80.php b/vendor/geshi/geshi/src/geshi/z80.php
index 5c8021f9e..d934933c9 100644
--- a/vendor/geshi/geshi/src/geshi/z80.php
+++ b/vendor/geshi/geshi/src/geshi/z80.php
@@ -4,7 +4,7 @@
* -------
* Author: Benny Baumann (BenBE@omorphia.de)
* Copyright: (c) 2007-2008 Benny Baumann (http://www.omorphia.de/)
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2007/02/06
*
* ZiLOG Z80 Assembler language file for GeSHi.
diff --git a/vendor/geshi/geshi/src/geshi/zxbasic.php b/vendor/geshi/geshi/src/geshi/zxbasic.php
index d09719490..ec90e796f 100644
--- a/vendor/geshi/geshi/src/geshi/zxbasic.php
+++ b/vendor/geshi/geshi/src/geshi/zxbasic.php
@@ -4,7 +4,7 @@
* -------------
* Author: Jose Rodriguez (a.k.a. Boriel)
* Based on Copyright: (c) 2005 Roberto Rossi (http://rsoftware.altervista.org) Freebasic template
- * Release Version: 1.0.9.0
+ * Release Version: 1.0.9.1
* Date Started: 2010/06/19
*
* ZXBasic language file for GeSHi.
diff --git a/vendor/marcusschwarz/lesserphp/HISTORY.md b/vendor/marcusschwarz/lesserphp/HISTORY.md
index 19ec7dc83..4a55d823c 100644
--- a/vendor/marcusschwarz/lesserphp/HISTORY.md
+++ b/vendor/marcusschwarz/lesserphp/HISTORY.md
@@ -1,10 +1,15 @@
-# lesserphp v0.5.1
+# lesserphp v0.5.4
Originally written by Leaf Corcoran, obviously abandoned circa 2014
https://github.com/leafo/lessphp
Last version provided by Leaf was 0.5.0
+### v.0.5.4
+* 2020-01-19: added 7.4 support to travis and removed antique php versions (@phy25)
+* 2020-01-19: fixed wrong array access in lib_luma
+* 2020-01-19: removed HHVM profile from travis. HHVM support is now broken anyway
+
### v.0.5.1
* 2016-09-30: renaming it to lesserphp for easier distinction
* 2016-09-30: applying some pull requests of the origin repository
diff --git a/vendor/marcusschwarz/lesserphp/README.md b/vendor/marcusschwarz/lesserphp/README.md
index b30e07eac..8c26ab14a 100644
--- a/vendor/marcusschwarz/lesserphp/README.md
+++ b/vendor/marcusschwarz/lesserphp/README.md
@@ -1,6 +1,6 @@
-[![Build Status](https://travis-ci.org/MarcusSchwarz/lessphp.svg?branch=0.5.1)](https://travis-ci.org/MarcusSchwarz/lessphp)
+[![Build Status](https://travis-ci.org/MarcusSchwarz/lesserphp.svg)](https://travis-ci.org/MarcusSchwarz/lesserphp)
-# lesserphp v0.5.1
+# lesserphp v0.5.4
### <http://github.com/MarcusSchwarz/lesserphp>
`lesserphp` is a compiler for LESS written in PHP. It is based on lessphp bei leafo.
diff --git a/vendor/marcusschwarz/lesserphp/lessc.inc.php b/vendor/marcusschwarz/lesserphp/lessc.inc.php
index b9e80ccc8..4764b28b8 100644
--- a/vendor/marcusschwarz/lesserphp/lessc.inc.php
+++ b/vendor/marcusschwarz/lesserphp/lessc.inc.php
@@ -1,7 +1,7 @@
<?php
/**
- * lessphp v0.5.1
+ * lessphp v0.5.2
* http://leafo.net/lessphp
*
* LESS CSS compiler, adapted from http://lesscss.org
@@ -39,7 +39,7 @@
* handling things like indentation.
*/
class lessc {
- static public $VERSION = "v0.5.1";
+ static public $VERSION = "v0.5.2";
static public $TRUE = array("keyword", "true");
static public $FALSE = array("keyword", "false");
@@ -352,9 +352,9 @@ class lessc {
$other = array_merge($other, $stack);
if ($split) {
- return array(array_merge($imports, $vars), $other);
+ return array(array_merge($vars, $imports, $vars), $other);
} else {
- return array_merge($imports, $vars, $other);
+ return array_merge($vars, $imports, $vars, $other);
}
}
@@ -668,7 +668,7 @@ class lessc {
// check for a rest
$last = end($args);
- if ($last[0] == "rest") {
+ if ($last !== false && $last[0] === "rest") {
$rest = array_slice($orderedValues, count($args) - 1);
$this->set($last[1], $this->reduce(array("list", " ", $rest)));
}
@@ -1349,7 +1349,7 @@ class lessc {
protected function lib_luma($color) {
$color = $this->coerceColor($color);
- return (0.2126 * $color[0] / 255) + (0.7152 * $color[1] / 255) + (0.0722 * $color[2] / 255);
+ return (0.2126 * $color[1] / 255) + (0.7152 * $color[2] / 255) + (0.0722 * $color[3] / 255);
}
@@ -2052,7 +2052,7 @@ class lessc {
$this->pushEnv();
$parser = new lessc_parser($this, __METHOD__);
foreach ($args as $name => $strValue) {
- if ($name{0} != '@') $name = '@'.$name;
+ if ($name[0] != '@') $name = '@'.$name;
$parser->count = 0;
$parser->buffer = (string)$strValue;
if (!$parser->propertyValue($value)) {
diff --git a/vendor/openpsa/universalfeedcreator/composer.json b/vendor/openpsa/universalfeedcreator/composer.json
index caabfcedc..57b1b0c75 100644
--- a/vendor/openpsa/universalfeedcreator/composer.json
+++ b/vendor/openpsa/universalfeedcreator/composer.json
@@ -3,7 +3,7 @@
"type": "library",
"description": "RSS and Atom feed generator by Kai Blankenhorn",
"keywords": ["rss", "atom", "pie", "opml", "gpx", "georss"],
- "license": "LGPL",
+ "license": "LGPL-2.1-or-later",
"authors": [
{
"name": "Andreas Flack",
@@ -15,7 +15,8 @@
"php": ">=5.0"
},
"autoload": {
- "classmap": ["lib"]
+ "classmap": ["lib"],
+ "files": ["lib/constants.php"]
},
"require-dev": {
"phpunit/phpunit": "*"
diff --git a/vendor/openpsa/universalfeedcreator/lib/Creator/AtomCreator03.php b/vendor/openpsa/universalfeedcreator/lib/Creator/AtomCreator03.php
index 5f80a7562..2ec95a402 100644
--- a/vendor/openpsa/universalfeedcreator/lib/Creator/AtomCreator03.php
+++ b/vendor/openpsa/universalfeedcreator/lib/Creator/AtomCreator03.php
@@ -14,7 +14,6 @@
* @see FeedCreator#additionalElements
* @since 1.6
* @author Kai Blankenhorn <kaib@bitfolge.de>, Scott Reynen <scott@randomchaos.com>
- * @package de.bitfolge.feedcreator
*/
class AtomCreator03 extends FeedCreator
{
diff --git a/vendor/openpsa/universalfeedcreator/lib/Creator/AtomCreator10.php b/vendor/openpsa/universalfeedcreator/lib/Creator/AtomCreator10.php
index db7314ed5..2f4532262 100644
--- a/vendor/openpsa/universalfeedcreator/lib/Creator/AtomCreator10.php
+++ b/vendor/openpsa/universalfeedcreator/lib/Creator/AtomCreator10.php
@@ -14,7 +14,6 @@
* @see FeedCreator#additionalElements
* @since 1.7.2-mod (modified)
* @author Mohammad Hafiz Ismail (mypapit@gmail.com)
- * @package de.bitfolge.feedcreator
*/
class AtomCreator10 extends FeedCreator
{
@@ -103,14 +102,16 @@ class AtomCreator10 extends FeedCreator
$feed .= " </author>\n";
}
- if ($this->items[$i]->category != "") {
- $feed .= " <category ";
+ if (!empty($this->items[$i]->category)) {
+ foreach ((array) $this->items[$i]->category as $category) {
+ $feed .= " <category ";
- if ($this->items[$i]->categoryScheme != "") {
- $feed .= " scheme=\"".htmlspecialchars($this->items[$i]->categoryScheme)."\" ";
- }
+ if ($this->items[$i]->categoryScheme != "") {
+ $feed .= " scheme=\"".htmlspecialchars($this->items[$i]->categoryScheme)."\" ";
+ }
- $feed .= " term=\"".htmlspecialchars($this->items[$i]->category)."\" />\n";
+ $feed .= " term=\"".htmlspecialchars($category)."\" />\n";
+ }
}
if ($this->items[$i]->description != "") {
diff --git a/vendor/openpsa/universalfeedcreator/lib/Creator/FeedCreator.php b/vendor/openpsa/universalfeedcreator/lib/Creator/FeedCreator.php
index d5e99cd46..907ca8377 100644
--- a/vendor/openpsa/universalfeedcreator/lib/Creator/FeedCreator.php
+++ b/vendor/openpsa/universalfeedcreator/lib/Creator/FeedCreator.php
@@ -6,7 +6,6 @@
*
* @author Kai Blankenhorn <kaib@bitfolge.de>
* @since 1.4
- * @package de.bitfolge.feedcreator
*/
abstract class FeedCreator extends HtmlDescribable
{
diff --git a/vendor/openpsa/universalfeedcreator/lib/Creator/GPXCreator.php b/vendor/openpsa/universalfeedcreator/lib/Creator/GPXCreator.php
index e8df3081e..367fb46b4 100644
--- a/vendor/openpsa/universalfeedcreator/lib/Creator/GPXCreator.php
+++ b/vendor/openpsa/universalfeedcreator/lib/Creator/GPXCreator.php
@@ -5,7 +5,6 @@
*
* @since 1.7.6
* @author Barry Hunter <geo@barryhunter.co.uk>
- * @package de.bitfolge.feedcreator
*/
class GPXCreator extends FeedCreator
{
diff --git a/vendor/openpsa/universalfeedcreator/lib/Creator/HTMLCreator.php b/vendor/openpsa/universalfeedcreator/lib/Creator/HTMLCreator.php
index 9b6f8b5ca..e02a8d767 100644
--- a/vendor/openpsa/universalfeedcreator/lib/Creator/HTMLCreator.php
+++ b/vendor/openpsa/universalfeedcreator/lib/Creator/HTMLCreator.php
@@ -10,7 +10,6 @@
*
* @author Pascal Van Hecke
* @since 1.7
- * @package de.bitfolge.feedcreator
*/
class HTMLCreator extends FeedCreator
{
diff --git a/vendor/openpsa/universalfeedcreator/lib/Creator/JSCreator.php b/vendor/openpsa/universalfeedcreator/lib/Creator/JSCreator.php
index 5b75ea7b5..5aa31faa0 100644
--- a/vendor/openpsa/universalfeedcreator/lib/Creator/JSCreator.php
+++ b/vendor/openpsa/universalfeedcreator/lib/Creator/JSCreator.php
@@ -5,7 +5,6 @@
* location, overriding the createFeed method of the parent HTMLCreator.
*
* @author Pascal Van Hecke
- * @package de.bitfolge.feedcreator
*/
class JSCreator extends HTMLCreator
{
diff --git a/vendor/openpsa/universalfeedcreator/lib/Creator/KMLCreator.php b/vendor/openpsa/universalfeedcreator/lib/Creator/KMLCreator.php
index acb0abc0f..31073d8bf 100644
--- a/vendor/openpsa/universalfeedcreator/lib/Creator/KMLCreator.php
+++ b/vendor/openpsa/universalfeedcreator/lib/Creator/KMLCreator.php
@@ -5,7 +5,6 @@
*
* @since 1.7.3
* @author Barry Hunter <geo@barryhunter.co.uk>
- * @package de.bitfolge.feedcreator
*/
class KMLCreator extends FeedCreator
{
diff --git a/vendor/openpsa/universalfeedcreator/lib/Creator/MBOXCreator.php b/vendor/openpsa/universalfeedcreator/lib/Creator/MBOXCreator.php
index d7f898dc3..9198f1ff6 100644
--- a/vendor/openpsa/universalfeedcreator/lib/Creator/MBOXCreator.php
+++ b/vendor/openpsa/universalfeedcreator/lib/Creator/MBOXCreator.php
@@ -6,7 +6,6 @@
*
* @since 1.3
* @author Kai Blankenhorn <kaib@bitfolge.de>
- * @package de.bitfolge.feedcreator
*/
class MBOXCreator extends FeedCreator
{
diff --git a/vendor/openpsa/universalfeedcreator/lib/Creator/OPMLCreator.php b/vendor/openpsa/universalfeedcreator/lib/Creator/OPMLCreator.php
index 6dcdc82b9..b795558d6 100644
--- a/vendor/openpsa/universalfeedcreator/lib/Creator/OPMLCreator.php
+++ b/vendor/openpsa/universalfeedcreator/lib/Creator/OPMLCreator.php
@@ -6,7 +6,6 @@
* @see http://opml.scripting.com/spec
* @author Dirk Clemens, Kai Blankenhorn
* @since 1.5
- * @package de.bitfolge.feedcreator
*/
class OPMLCreator extends FeedCreator
{
diff --git a/vendor/openpsa/universalfeedcreator/lib/Creator/PHPCreator.php b/vendor/openpsa/universalfeedcreator/lib/Creator/PHPCreator.php
index 23b83529a..fe61a3f6f 100644
--- a/vendor/openpsa/universalfeedcreator/lib/Creator/PHPCreator.php
+++ b/vendor/openpsa/universalfeedcreator/lib/Creator/PHPCreator.php
@@ -5,7 +5,6 @@
*
* @since 1.7.3
* @author Barry Hunter <geo@barryhunter.co.uk>
- * @package de.bitfolge.feedcreator
*/
class PHPCreator extends FeedCreator
{
diff --git a/vendor/openpsa/universalfeedcreator/lib/Creator/PIECreator01.php b/vendor/openpsa/universalfeedcreator/lib/Creator/PIECreator01.php
index 5700123c2..2f069aac4 100644
--- a/vendor/openpsa/universalfeedcreator/lib/Creator/PIECreator01.php
+++ b/vendor/openpsa/universalfeedcreator/lib/Creator/PIECreator01.php
@@ -7,7 +7,6 @@
* @deprecated
* @since 1.3
* @author Scott Reynen <scott@randomchaos.com> and Kai Blankenhorn <kaib@bitfolge.de>
- * @package de.bitfolge.feedcreator
*/
class PIECreator01 extends FeedCreator
{
diff --git a/vendor/openpsa/universalfeedcreator/lib/Creator/RSSCreator091.php b/vendor/openpsa/universalfeedcreator/lib/Creator/RSSCreator091.php
index cd229e954..7b13acd83 100644
--- a/vendor/openpsa/universalfeedcreator/lib/Creator/RSSCreator091.php
+++ b/vendor/openpsa/universalfeedcreator/lib/Creator/RSSCreator091.php
@@ -6,7 +6,6 @@
* @see http://my.netscape.com/publish/formats/rss-spec-0.91.html
* @since 1.3
* @author Kai Blankenhorn <kaib@bitfolge.de>
- * @package de.bitfolge.feedcreator
*/
class RSSCreator091 extends FeedCreator
{
diff --git a/vendor/openpsa/universalfeedcreator/lib/Creator/RSSCreator10.php b/vendor/openpsa/universalfeedcreator/lib/Creator/RSSCreator10.php
index d9ed1d01d..8d0c1ca8c 100644
--- a/vendor/openpsa/universalfeedcreator/lib/Creator/RSSCreator10.php
+++ b/vendor/openpsa/universalfeedcreator/lib/Creator/RSSCreator10.php
@@ -6,7 +6,6 @@
* @see http://www.purl.org/rss/1.0/
* @since 1.3
* @author Kai Blankenhorn <kaib@bitfolge.de>
- * @package de.bitfolge.feedcreator
*/
class RSSCreator10 extends FeedCreator
{
diff --git a/vendor/openpsa/universalfeedcreator/lib/Creator/RSSCreator20.php b/vendor/openpsa/universalfeedcreator/lib/Creator/RSSCreator20.php
index dbc25ab76..fb39efe61 100644
--- a/vendor/openpsa/universalfeedcreator/lib/Creator/RSSCreator20.php
+++ b/vendor/openpsa/universalfeedcreator/lib/Creator/RSSCreator20.php
@@ -6,7 +6,6 @@
* @see http://backend.userland.com/rss
* @since 1.3
* @author Kai Blankenhorn <kaib@bitfolge.de>
- * @package de.bitfolge.feedcreator
*/
class RSSCreator20 extends RSSCreator091
{
diff --git a/vendor/openpsa/universalfeedcreator/lib/Element/FeedDate.php b/vendor/openpsa/universalfeedcreator/lib/Element/FeedDate.php
index 690c65ad6..249f96c89 100644
--- a/vendor/openpsa/universalfeedcreator/lib/Element/FeedDate.php
+++ b/vendor/openpsa/universalfeedcreator/lib/Element/FeedDate.php
@@ -3,8 +3,6 @@
/**
* FeedDate is an internal class that stores a date for a feed or feed item.
* Usually, you won't need to use this.
- *
- * @package de.bitfolge.feedcreator
*/
class FeedDate
{
@@ -109,11 +107,7 @@ class FeedDate
*/
public function iso8601()
{
- $date = gmdate("Y-m-d\TH:i:sO", $this->unix);
- $date = substr($date, 0, 22).':'.substr($date, -2);
- if (TIME_ZONE != "") {
- $date = str_replace("+00:00", TIME_ZONE, $date);
- }
+ $date = gmdate("Y-m-d\TH:i:sP", $this->unix);
return $date;
}
diff --git a/vendor/openpsa/universalfeedcreator/lib/Element/FeedHtmlField.php b/vendor/openpsa/universalfeedcreator/lib/Element/FeedHtmlField.php
index 8979e958f..84f0ac4bb 100644
--- a/vendor/openpsa/universalfeedcreator/lib/Element/FeedHtmlField.php
+++ b/vendor/openpsa/universalfeedcreator/lib/Element/FeedHtmlField.php
@@ -7,7 +7,6 @@
*
* @author Pascal Van Hecke <feedcreator.class.php@vanhecke.info>
* @version 1.6
- * @package de.bitfolge.feedcreator
*/
class FeedHtmlField
{
diff --git a/vendor/openpsa/universalfeedcreator/lib/Element/FeedImage.php b/vendor/openpsa/universalfeedcreator/lib/Element/FeedImage.php
index d525379fa..cc9df46aa 100644
--- a/vendor/openpsa/universalfeedcreator/lib/Element/FeedImage.php
+++ b/vendor/openpsa/universalfeedcreator/lib/Element/FeedImage.php
@@ -5,7 +5,6 @@
*
* @author Kai Blankenhorn <kaib@bitfolge.de>
* @since 1.3
- * @package de.bitfolge.feedcreator
*/
class FeedImage extends HtmlDescribable
{
diff --git a/vendor/openpsa/universalfeedcreator/lib/Element/FeedItem.php b/vendor/openpsa/universalfeedcreator/lib/Element/FeedItem.php
index 827768515..3b51cc2ab 100644
--- a/vendor/openpsa/universalfeedcreator/lib/Element/FeedItem.php
+++ b/vendor/openpsa/universalfeedcreator/lib/Element/FeedItem.php
@@ -5,7 +5,6 @@
*
* @author Kai Blankenhorn <kaib@bitfolge.de>
* @since 1.3
- * @package de.bitfolge.feedcreator
*/
class FeedItem extends HtmlDescribable
{
diff --git a/vendor/openpsa/universalfeedcreator/lib/Element/HtmlDescribable.php b/vendor/openpsa/universalfeedcreator/lib/Element/HtmlDescribable.php
index 0fce11f76..e34e2b1df 100644
--- a/vendor/openpsa/universalfeedcreator/lib/Element/HtmlDescribable.php
+++ b/vendor/openpsa/universalfeedcreator/lib/Element/HtmlDescribable.php
@@ -3,8 +3,6 @@
/**
* An HtmlDescribable is an item within a feed that can have a description that may
* include HTML markup.
- *
- * @package de.bitfolge.feedcreator
*/
class HtmlDescribable
{
diff --git a/vendor/openpsa/universalfeedcreator/lib/UniversalFeedCreator.php b/vendor/openpsa/universalfeedcreator/lib/UniversalFeedCreator.php
index 7804e73ee..4b7afe6f2 100644
--- a/vendor/openpsa/universalfeedcreator/lib/UniversalFeedCreator.php
+++ b/vendor/openpsa/universalfeedcreator/lib/UniversalFeedCreator.php
@@ -1,14 +1,4 @@
<?php
-// your local timezone, set to "" to disable or for GMT
-if (!defined('TIME_ZONE')) {
- define("TIME_ZONE", date("O", time()));
-}
-
-/**
- * Version string.
- */
-define("FEEDCREATOR_VERSION", "FeedCreator 1.8");
-
/**
* UniversalFeedCreator lets you choose during runtime which
* format to build.
@@ -17,7 +7,6 @@ define("FEEDCREATOR_VERSION", "FeedCreator 1.8");
*
* @since 1.3
* @author Kai Blankenhorn <kaib@bitfolge.de>
- * @package de.bitfolge.feedcreator
*/
class UniversalFeedCreator extends FeedCreator
{
diff --git a/vendor/openpsa/universalfeedcreator/lib/constants.php b/vendor/openpsa/universalfeedcreator/lib/constants.php
new file mode 100644
index 000000000..146c1897f
--- /dev/null
+++ b/vendor/openpsa/universalfeedcreator/lib/constants.php
@@ -0,0 +1,10 @@
+<?php
+// your local timezone, set to "" to disable or for GMT
+if (!defined('TIME_ZONE')) {
+ define("TIME_ZONE", date("O", time()));
+}
+
+/**
+ * Version string.
+ */
+define("FEEDCREATOR_VERSION", "FeedCreator 1.8");
diff --git a/vendor/paragonie/random_compat/composer.json b/vendor/paragonie/random_compat/composer.json
index 1c5978c6f..34f1381d5 100644
--- a/vendor/paragonie/random_compat/composer.json
+++ b/vendor/paragonie/random_compat/composer.json
@@ -4,6 +4,7 @@
"keywords": [
"csprng",
"random",
+ "polyfill",
"pseudorandom"
],
"license": "MIT",
diff --git a/vendor/paragonie/random_compat/lib/byte_safe_strings.php b/vendor/paragonie/random_compat/lib/byte_safe_strings.php
index 3de86b223..ef24488f9 100644
--- a/vendor/paragonie/random_compat/lib/byte_safe_strings.php
+++ b/vendor/paragonie/random_compat/lib/byte_safe_strings.php
@@ -5,7 +5,7 @@
*
* The MIT License (MIT)
*
- * Copyright (c) 2015 - 2017 Paragon Initiative Enterprises
+ * Copyright (c) 2015 - 2018 Paragon Initiative Enterprises
*
* Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), to deal
@@ -28,8 +28,9 @@
if (!is_callable('RandomCompat_strlen')) {
if (
- defined('MB_OVERLOAD_STRING') &&
- ini_get('mbstring.func_overload') & MB_OVERLOAD_STRING
+ defined('MB_OVERLOAD_STRING')
+ &&
+ ((int) ini_get('mbstring.func_overload')) & MB_OVERLOAD_STRING
) {
/**
* strlen() implementation that isn't brittle to mbstring.func_overload
@@ -82,8 +83,8 @@ if (!is_callable('RandomCompat_substr')) {
if (
defined('MB_OVERLOAD_STRING')
- &&
- ini_get('mbstring.func_overload') & MB_OVERLOAD_STRING
+ &&
+ ((int) ini_get('mbstring.func_overload')) & MB_OVERLOAD_STRING
) {
/**
* substr() implementation that isn't brittle to mbstring.func_overload
@@ -93,7 +94,7 @@ if (!is_callable('RandomCompat_substr')) {
*
* @param string $binary_string
* @param int $start
- * @param int $length (optional)
+ * @param int|null $length (optional)
*
* @throws TypeError
*
@@ -118,6 +119,7 @@ if (!is_callable('RandomCompat_substr')) {
* mb_substr($str, 0, NULL, '8bit') returns an empty string on
* PHP 5.3, so we have to find the length ourselves.
*/
+ /** @var int $length */
$length = RandomCompat_strlen($binary_string) - $start;
} elseif (!is_int($length)) {
throw new TypeError(
@@ -133,7 +135,12 @@ if (!is_callable('RandomCompat_substr')) {
return '';
}
- return (string) mb_substr($binary_string, $start, $length, '8bit');
+ return (string) mb_substr(
+ (string) $binary_string,
+ (int) $start,
+ (int) $length,
+ '8bit'
+ );
}
} else {
@@ -145,7 +152,7 @@ if (!is_callable('RandomCompat_substr')) {
*
* @param string $binary_string
* @param int $start
- * @param int $length (optional)
+ * @param int|null $length (optional)
*
* @throws TypeError
*
@@ -172,10 +179,17 @@ if (!is_callable('RandomCompat_substr')) {
);
}
- return (string) substr($binary_string, $start, $length);
+ return (string) substr(
+ (string )$binary_string,
+ (int) $start,
+ (int) $length
+ );
}
- return (string) substr($binary_string, $start);
+ return (string) substr(
+ (string) $binary_string,
+ (int) $start
+ );
}
}
}
diff --git a/vendor/paragonie/random_compat/lib/cast_to_int.php b/vendor/paragonie/random_compat/lib/cast_to_int.php
index 9a4fab991..1b1bbfe8d 100644
--- a/vendor/paragonie/random_compat/lib/cast_to_int.php
+++ b/vendor/paragonie/random_compat/lib/cast_to_int.php
@@ -5,7 +5,7 @@
*
* The MIT License (MIT)
*
- * Copyright (c) 2015 - 2017 Paragon Initiative Enterprises
+ * Copyright (c) 2015 - 2018 Paragon Initiative Enterprises
*
* Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), to deal
@@ -27,19 +27,19 @@
*/
if (!is_callable('RandomCompat_intval')) {
-
+
/**
* Cast to an integer if we can, safely.
- *
+ *
* If you pass it a float in the range (~PHP_INT_MAX, PHP_INT_MAX)
* (non-inclusive), it will sanely cast it to an int. If you it's equal to
* ~PHP_INT_MAX or PHP_INT_MAX, we let it fail as not an integer. Floats
* lose precision, so the <= and => operators might accidentally let a float
* through.
- *
+ *
* @param int|float $number The number we want to convert to an int
* @param bool $fail_open Set to true to not throw an exception
- *
+ *
* @return float|int
* @psalm-suppress InvalidReturnType
*
@@ -50,14 +50,16 @@ if (!is_callable('RandomCompat_intval')) {
if (is_int($number) || is_float($number)) {
$number += 0;
} elseif (is_numeric($number)) {
+ /** @psalm-suppress InvalidOperand */
$number += 0;
}
+ /** @var int|float $number */
if (
is_float($number)
- &&
+ &&
$number > ~PHP_INT_MAX
- &&
+ &&
$number < PHP_INT_MAX
) {
$number = (int) $number;
diff --git a/vendor/paragonie/random_compat/lib/error_polyfill.php b/vendor/paragonie/random_compat/lib/error_polyfill.php
index 6a91990ce..c02c5c8b4 100644
--- a/vendor/paragonie/random_compat/lib/error_polyfill.php
+++ b/vendor/paragonie/random_compat/lib/error_polyfill.php
@@ -1,12 +1,12 @@
<?php
/**
- * Random_* Compatibility Library
+ * Random_* Compatibility Library
* for using the new PHP 7 random_* API in PHP 5 projects
- *
+ *
* The MIT License (MIT)
*
- * Copyright (c) 2015 - 2017 Paragon Initiative Enterprises
- *
+ * Copyright (c) 2015 - 2018 Paragon Initiative Enterprises
+ *
* 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
@@ -30,7 +30,7 @@ if (!class_exists('Error', false)) {
// We can't really avoid making this extend Exception in PHP 5.
class Error extends Exception
{
-
+
}
}
@@ -38,12 +38,12 @@ if (!class_exists('TypeError', false)) {
if (is_subclass_of('Error', 'Exception')) {
class TypeError extends Error
{
-
+
}
} else {
class TypeError extends Exception
{
-
+
}
}
}
diff --git a/vendor/paragonie/random_compat/lib/random.php b/vendor/paragonie/random_compat/lib/random.php
index 080b87c19..36245f542 100644
--- a/vendor/paragonie/random_compat/lib/random.php
+++ b/vendor/paragonie/random_compat/lib/random.php
@@ -3,12 +3,12 @@
* Random_* Compatibility Library
* for using the new PHP 7 random_* API in PHP 5 projects
*
- * @version 2.0.10
- * @released 2017-03-13
+ * @version 2.0.17
+ * @released 2018-07-04
*
* The MIT License (MIT)
*
- * Copyright (c) 2015 - 2017 Paragon Initiative Enterprises
+ * Copyright (c) 2015 - 2018 Paragon Initiative Enterprises
*
* Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), to deal
@@ -54,9 +54,9 @@ if (!defined('RANDOM_COMPAT_READ_BUFFER')) {
$RandomCompatDIR = dirname(__FILE__);
-require_once $RandomCompatDIR . '/byte_safe_strings.php';
-require_once $RandomCompatDIR . '/cast_to_int.php';
-require_once $RandomCompatDIR . '/error_polyfill.php';
+require_once $RandomCompatDIR . DIRECTORY_SEPARATOR . 'byte_safe_strings.php';
+require_once $RandomCompatDIR . DIRECTORY_SEPARATOR . 'cast_to_int.php';
+require_once $RandomCompatDIR . DIRECTORY_SEPARATOR . 'error_polyfill.php';
if (!is_callable('random_bytes')) {
/**
@@ -76,9 +76,9 @@ if (!is_callable('random_bytes')) {
if (extension_loaded('libsodium')) {
// See random_bytes_libsodium.php
if (PHP_VERSION_ID >= 50300 && is_callable('\\Sodium\\randombytes_buf')) {
- require_once $RandomCompatDIR . '/random_bytes_libsodium.php';
+ require_once $RandomCompatDIR . DIRECTORY_SEPARATOR . 'random_bytes_libsodium.php';
} elseif (method_exists('Sodium', 'randombytes_buf')) {
- require_once $RandomCompatDIR . '/random_bytes_libsodium_legacy.php';
+ require_once $RandomCompatDIR . DIRECTORY_SEPARATOR . 'random_bytes_libsodium_legacy.php';
}
}
@@ -117,7 +117,7 @@ if (!is_callable('random_bytes')) {
// place, that is not helpful to us here.
// See random_bytes_dev_urandom.php
- require_once $RandomCompatDIR . '/random_bytes_dev_urandom.php';
+ require_once $RandomCompatDIR . DIRECTORY_SEPARATOR . 'random_bytes_dev_urandom.php';
}
// Unset variables after use
$RandomCompat_basedir = null;
@@ -159,7 +159,7 @@ if (!is_callable('random_bytes')) {
extension_loaded('mcrypt')
) {
// See random_bytes_mcrypt.php
- require_once $RandomCompatDIR . '/random_bytes_mcrypt.php';
+ require_once $RandomCompatDIR . DIRECTORY_SEPARATOR . 'random_bytes_mcrypt.php';
}
$RandomCompatUrandom = null;
@@ -184,7 +184,7 @@ if (!is_callable('random_bytes')) {
$RandomCompatCOMtest = new COM('CAPICOM.Utilities.1');
if (method_exists($RandomCompatCOMtest, 'GetRandom')) {
// See random_bytes_com_dotnet.php
- require_once $RandomCompatDIR . '/random_bytes_com_dotnet.php';
+ require_once $RandomCompatDIR . DIRECTORY_SEPARATOR . 'random_bytes_com_dotnet.php';
}
} catch (com_exception $e) {
// Don't try to use it.
@@ -203,7 +203,7 @@ if (!is_callable('random_bytes')) {
* and hope the developer won't let it fail silently.
*
* @param mixed $length
- * @psalm-suppress MissingReturnType
+ * @psalm-suppress InvalidReturnType
* @throws Exception
* @return string
*/
@@ -219,7 +219,7 @@ if (!is_callable('random_bytes')) {
}
if (!is_callable('random_int')) {
- require_once $RandomCompatDIR . '/random_int.php';
+ require_once $RandomCompatDIR . DIRECTORY_SEPARATOR . 'random_int.php';
}
$RandomCompatDIR = null;
diff --git a/vendor/paragonie/random_compat/lib/random_bytes_com_dotnet.php b/vendor/paragonie/random_compat/lib/random_bytes_com_dotnet.php
index fc1926e5c..537d02b27 100644
--- a/vendor/paragonie/random_compat/lib/random_bytes_com_dotnet.php
+++ b/vendor/paragonie/random_compat/lib/random_bytes_com_dotnet.php
@@ -1,22 +1,22 @@
<?php
/**
- * Random_* Compatibility Library
+ * Random_* Compatibility Library
* for using the new PHP 7 random_* API in PHP 5 projects
- *
+ *
* The MIT License (MIT)
- *
- * Copyright (c) 2015 - 2017 Paragon Initiative Enterprises
- *
+ *
+ * Copyright (c) 2015 - 2018 Paragon Initiative Enterprises
+ *
* 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
@@ -41,6 +41,7 @@ if (!is_callable('random_bytes')) {
function random_bytes($bytes)
{
try {
+ /** @var int $bytes */
$bytes = RandomCompat_intval($bytes);
} catch (TypeError $ex) {
throw new TypeError(
@@ -54,12 +55,14 @@ if (!is_callable('random_bytes')) {
);
}
+ /** @var string $buf */
$buf = '';
if (!class_exists('COM')) {
throw new Error(
'COM does not exist'
);
}
+ /** @var COM $util */
$util = new COM('CAPICOM.Utilities.1');
$execCount = 0;
@@ -68,12 +71,12 @@ if (!is_callable('random_bytes')) {
* get N bytes of random data, then CAPICOM has failed us.
*/
do {
- $buf .= base64_decode($util->GetRandom($bytes, 0));
+ $buf .= base64_decode((string) $util->GetRandom($bytes, 0));
if (RandomCompat_strlen($buf) >= $bytes) {
/**
* Return our random entropy buffer here:
*/
- return RandomCompat_substr($buf, 0, $bytes);
+ return (string) RandomCompat_substr($buf, 0, $bytes);
}
++$execCount;
} while ($execCount < $bytes);
@@ -85,4 +88,4 @@ if (!is_callable('random_bytes')) {
'Could not gather sufficient random data'
);
}
-} \ No newline at end of file
+}
diff --git a/vendor/paragonie/random_compat/lib/random_bytes_dev_urandom.php b/vendor/paragonie/random_compat/lib/random_bytes_dev_urandom.php
index df5b91524..c4e31ccbb 100644
--- a/vendor/paragonie/random_compat/lib/random_bytes_dev_urandom.php
+++ b/vendor/paragonie/random_compat/lib/random_bytes_dev_urandom.php
@@ -1,22 +1,22 @@
<?php
/**
- * Random_* Compatibility Library
+ * Random_* Compatibility Library
* for using the new PHP 7 random_* API in PHP 5 projects
- *
+ *
* The MIT License (MIT)
*
- * Copyright (c) 2015 - 2017 Paragon Initiative Enterprises
- *
+ * Copyright (c) 2015 - 2018 Paragon Initiative Enterprises
+ *
* 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
@@ -36,6 +36,7 @@ if (!is_callable('random_bytes')) {
* random numbers in accordance with best practices
*
* Why we use /dev/urandom and not /dev/random
+ * @ref https://www.2uo.de/myths-about-urandom
* @ref http://sockpuppet.org/blog/2014/02/25/safely-generate-random-numbers
*
* @param int $bytes
@@ -46,25 +47,47 @@ if (!is_callable('random_bytes')) {
*/
function random_bytes($bytes)
{
+ /** @var resource $fp */
static $fp = null;
+
/**
* This block should only be run once
*/
if (empty($fp)) {
/**
- * We use /dev/urandom if it is a char device.
- * We never fall back to /dev/random
+ * We don't want to ever read C:\dev\random, only /dev/urandom on
+ * Unix-like operating systems. While we guard against this
+ * condition in random.php, it doesn't hurt to be defensive in depth
+ * here.
+ *
+ * To that end, we only try to open /dev/urandom if we're on a Unix-
+ * like operating system (which means the directory separator is set
+ * to "/" not "\".
*/
- $fp = fopen('/dev/urandom', 'rb');
- if (!empty($fp)) {
- $st = fstat($fp);
- if (($st['mode'] & 0170000) !== 020000) {
- fclose($fp);
- $fp = false;
+ if (DIRECTORY_SEPARATOR === '/') {
+ if (!is_readable('/dev/urandom')) {
+ throw new Exception(
+ 'Environment misconfiguration: ' .
+ '/dev/urandom cannot be read.'
+ );
+ }
+ /**
+ * We use /dev/urandom if it is a char device.
+ * We never fall back to /dev/random
+ */
+ /** @var resource|bool $fp */
+ $fp = fopen('/dev/urandom', 'rb');
+ if (is_resource($fp)) {
+ /** @var array<string, int> $st */
+ $st = fstat($fp);
+ if (($st['mode'] & 0170000) !== 020000) {
+ fclose($fp);
+ $fp = false;
+ }
}
}
- if (!empty($fp)) {
+ if (is_resource($fp)) {
/**
* stream_set_read_buffer() does not exist in HHVM
*
@@ -83,6 +106,7 @@ if (!is_callable('random_bytes')) {
}
try {
+ /** @var int $bytes */
$bytes = RandomCompat_intval($bytes);
} catch (TypeError $ex) {
throw new TypeError(
@@ -103,7 +127,7 @@ if (!is_callable('random_bytes')) {
* if (empty($fp)) line is logic that should only be run once per
* page load.
*/
- if (!empty($fp)) {
+ if (is_resource($fp)) {
/**
* @var int
*/
@@ -123,29 +147,28 @@ if (!is_callable('random_bytes')) {
*/
$read = fread($fp, $remaining);
if (!is_string($read)) {
- if ($read === false) {
- /**
- * We cannot safely read from the file. Exit the
- * do-while loop and trigger the exception condition
- *
- * @var string|bool
- */
- $buf = false;
- break;
- }
+ /**
+ * We cannot safely read from the file. Exit the
+ * do-while loop and trigger the exception condition
+ *
+ * @var string|bool
+ */
+ $buf = false;
+ break;
}
/**
* Decrease the number of bytes returned from remaining
*/
$remaining -= RandomCompat_strlen($read);
/**
- * @var string|bool
+ * @var string $buf
*/
- $buf = $buf . $read;
+ $buf .= $read;
} while ($remaining > 0);
/**
* Is our result valid?
+ * @var string|bool $buf
*/
if (is_string($buf)) {
if (RandomCompat_strlen($buf) === $bytes) {
diff --git a/vendor/paragonie/random_compat/lib/random_bytes_libsodium.php b/vendor/paragonie/random_compat/lib/random_bytes_libsodium.php
index 4af1a2422..2e5629018 100644
--- a/vendor/paragonie/random_compat/lib/random_bytes_libsodium.php
+++ b/vendor/paragonie/random_compat/lib/random_bytes_libsodium.php
@@ -1,22 +1,22 @@
<?php
/**
- * Random_* Compatibility Library
+ * Random_* Compatibility Library
* for using the new PHP 7 random_* API in PHP 5 projects
- *
+ *
* The MIT License (MIT)
*
- * Copyright (c) 2015 - 2017 Paragon Initiative Enterprises
- *
+ * Copyright (c) 2015 - 2018 Paragon Initiative Enterprises
+ *
* 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
@@ -43,6 +43,7 @@ if (!is_callable('random_bytes')) {
function random_bytes($bytes)
{
try {
+ /** @var int $bytes */
$bytes = RandomCompat_intval($bytes);
} catch (TypeError $ex) {
throw new TypeError(
@@ -60,6 +61,7 @@ if (!is_callable('random_bytes')) {
* \Sodium\randombytes_buf() doesn't allow more than 2147483647 bytes to be
* generated in one invocation.
*/
+ /** @var string|bool $buf */
if ($bytes > 2147483647) {
$buf = '';
for ($i = 0; $i < $bytes; $i += 1073741824) {
@@ -69,10 +71,11 @@ if (!is_callable('random_bytes')) {
$buf .= \Sodium\randombytes_buf($n);
}
} else {
+ /** @var string|bool $buf */
$buf = \Sodium\randombytes_buf($bytes);
}
- if ($buf !== false) {
+ if (is_string($buf)) {
if (RandomCompat_strlen($buf) === $bytes) {
return $buf;
}
diff --git a/vendor/paragonie/random_compat/lib/random_bytes_libsodium_legacy.php b/vendor/paragonie/random_compat/lib/random_bytes_libsodium_legacy.php
index 705af5262..f78b2199a 100644
--- a/vendor/paragonie/random_compat/lib/random_bytes_libsodium_legacy.php
+++ b/vendor/paragonie/random_compat/lib/random_bytes_libsodium_legacy.php
@@ -1,22 +1,22 @@
<?php
/**
- * Random_* Compatibility Library
+ * Random_* Compatibility Library
* for using the new PHP 7 random_* API in PHP 5 projects
- *
+ *
* The MIT License (MIT)
*
- * Copyright (c) 2015 - 2017 Paragon Initiative Enterprises
- *
+ * Copyright (c) 2015 - 2018 Paragon Initiative Enterprises
+ *
* 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
@@ -43,6 +43,7 @@ if (!is_callable('random_bytes')) {
function random_bytes($bytes)
{
try {
+ /** @var int $bytes */
$bytes = RandomCompat_intval($bytes);
} catch (TypeError $ex) {
throw new TypeError(
diff --git a/vendor/paragonie/random_compat/lib/random_bytes_mcrypt.php b/vendor/paragonie/random_compat/lib/random_bytes_mcrypt.php
index aac9c013d..0b13fa73c 100644
--- a/vendor/paragonie/random_compat/lib/random_bytes_mcrypt.php
+++ b/vendor/paragonie/random_compat/lib/random_bytes_mcrypt.php
@@ -1,22 +1,22 @@
<?php
/**
- * Random_* Compatibility Library
+ * Random_* Compatibility Library
* for using the new PHP 7 random_* API in PHP 5 projects
- *
+ *
* The MIT License (MIT)
*
- * Copyright (c) 2015 - 2017 Paragon Initiative Enterprises
- *
+ * Copyright (c) 2015 - 2018 Paragon Initiative Enterprises
+ *
* 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
@@ -42,6 +42,7 @@ if (!is_callable('random_bytes')) {
function random_bytes($bytes)
{
try {
+ /** @var int $bytes */
$bytes = RandomCompat_intval($bytes);
} catch (TypeError $ex) {
throw new TypeError(
@@ -55,10 +56,11 @@ if (!is_callable('random_bytes')) {
);
}
- $buf = @mcrypt_create_iv($bytes, MCRYPT_DEV_URANDOM);
+ /** @var string|bool $buf */
+ $buf = @mcrypt_create_iv((int) $bytes, (int) MCRYPT_DEV_URANDOM);
if (
- $buf !== false
- &&
+ is_string($buf)
+ &&
RandomCompat_strlen($buf) === $bytes
) {
/**
diff --git a/vendor/paragonie/random_compat/lib/random_int.php b/vendor/paragonie/random_compat/lib/random_int.php
index 5b2143a16..ff80dfa43 100644
--- a/vendor/paragonie/random_compat/lib/random_int.php
+++ b/vendor/paragonie/random_compat/lib/random_int.php
@@ -7,7 +7,7 @@ if (!is_callable('random_int')) {
*
* The MIT License (MIT)
*
- * Copyright (c) 2015 - 2017 Paragon Initiative Enterprises
+ * Copyright (c) 2015 - 2018 Paragon Initiative Enterprises
*
* Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), to deal
@@ -51,6 +51,7 @@ if (!is_callable('random_int')) {
*/
try {
+ /** @var int $min */
$min = RandomCompat_intval($min);
} catch (TypeError $ex) {
throw new TypeError(
@@ -59,6 +60,7 @@ if (!is_callable('random_int')) {
}
try {
+ /** @var int $max */
$max = RandomCompat_intval($max);
} catch (TypeError $ex) {
throw new TypeError(
@@ -90,11 +92,18 @@ if (!is_callable('random_int')) {
* so we can minimize the number of discards
*/
$attempts = $bits = $bytes = $mask = $valueShift = 0;
+ /** @var int $attempts */
+ /** @var int $bits */
+ /** @var int $bytes */
+ /** @var int $mask */
+ /** @var int $valueShift */
/**
* At this point, $range is a positive number greater than 0. It might
* overflow, however, if $max - $min > PHP_INT_MAX. PHP will cast it to
* a float and we will lose some precision.
+ *
+ * @var int|float $range
*/
$range = $max - $min;
@@ -115,6 +124,7 @@ if (!is_callable('random_int')) {
* @ref http://3v4l.org/XX9r5 (64-bit)
*/
$bytes = PHP_INT_SIZE;
+ /** @var int $mask */
$mask = ~0;
} else {
@@ -129,16 +139,19 @@ if (!is_callable('random_int')) {
}
++$bits;
$range >>= 1;
+ /** @var int $mask */
$mask = $mask << 1 | 1;
}
$valueShift = $min;
}
+ /** @var int $val */
$val = 0;
/**
* Now that we have our parameters set up, let's begin generating
* random integers until one falls between $min and $max
*/
+ /** @psalm-suppress RedundantCondition */
do {
/**
* The rejection probability is at most 0.5, so this corresponds
@@ -169,6 +182,7 @@ if (!is_callable('random_int')) {
for ($i = 0; $i < $bytes; ++$i) {
$val |= ord($randomByteString[$i]) << ($i * 8);
}
+ /** @var int $val */
/**
* Apply mask
diff --git a/vendor/paragonie/random_compat/psalm-autoload.php b/vendor/paragonie/random_compat/psalm-autoload.php
deleted file mode 100644
index d71d1b818..000000000
--- a/vendor/paragonie/random_compat/psalm-autoload.php
+++ /dev/null
@@ -1,9 +0,0 @@
-<?php
-
-require_once 'lib/byte_safe_strings.php';
-require_once 'lib/cast_to_int.php';
-require_once 'lib/error_polyfill.php';
-require_once 'other/ide_stubs/libsodium.php';
-require_once 'lib/random.php';
-
-$int = random_int(0, 65536);
diff --git a/vendor/paragonie/random_compat/psalm.xml b/vendor/paragonie/random_compat/psalm.xml
deleted file mode 100644
index ee072a972..000000000
--- a/vendor/paragonie/random_compat/psalm.xml
+++ /dev/null
@@ -1,18 +0,0 @@
-<?xml version="1.0"?>
-<psalm
- autoloader="psalm-autoload.php"
- stopOnFirstError="false"
- useDocblockTypes="true"
->
- <projectFiles>
- <directory name="lib" />
- </projectFiles>
- <issueHandlers>
- <RedundantConditionGivenDocblockType errorLevel="info" />
- <UnresolvableInclude errorLevel="info" />
- <DuplicateClass errorLevel="info" />
- <InvalidOperand errorLevel="info" />
- <UndefinedConstant errorLevel="info" />
- <MissingReturnType errorLevel="info" />
- </issueHandlers>
-</psalm>
diff --git a/vendor/phpseclib/phpseclib/BACKERS.md b/vendor/phpseclib/phpseclib/BACKERS.md
new file mode 100644
index 000000000..e03152ca1
--- /dev/null
+++ b/vendor/phpseclib/phpseclib/BACKERS.md
@@ -0,0 +1,8 @@
+# Backers
+
+phpseclib ongoing development is made possible by [Tidelift](https://tidelift.com/subscription/pkg/packagist-phpseclib-phpseclib?utm_source=packagist-phpseclib-phpseclib&utm_medium=referral&utm_campaign=readme) and by contributions by users like you. Thank you.
+
+## Backers
+
+- Zane Hooper
+- [Setasign](https://www.setasign.com/) \ No newline at end of file
diff --git a/vendor/phpseclib/phpseclib/LICENSE b/vendor/phpseclib/phpseclib/LICENSE
index a8ec8ebd4..e7214ebbe 100644
--- a/vendor/phpseclib/phpseclib/LICENSE
+++ b/vendor/phpseclib/phpseclib/LICENSE
@@ -1,5 +1,4 @@
-Copyright 2007-2016 TerraFrost and other contributors
-http://phpseclib.sourceforge.net/
+Copyright (c) 2011-2019 TerraFrost and other contributors
Permission is hereby granted, free of charge, to any person obtaining
a copy of this software and associated documentation files (the
@@ -18,4 +17,4 @@ 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.
+WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. \ No newline at end of file
diff --git a/vendor/phpseclib/phpseclib/README.md b/vendor/phpseclib/phpseclib/README.md
index 53f58db1e..ac0eb2f99 100644
--- a/vendor/phpseclib/phpseclib/README.md
+++ b/vendor/phpseclib/phpseclib/README.md
@@ -2,12 +2,19 @@
[![Build Status](https://travis-ci.org/phpseclib/phpseclib.svg?branch=2.0)](https://travis-ci.org/phpseclib/phpseclib)
+## Supporting phpseclib
+
+- [Become a backer or sponsor on Patreon](https://www.patreon.com/phpseclib)
+- [One-time donation via PayPal or crypto-currencies](http://sourceforge.net/donate/index.php?group_id=198487)
+- [Subscribe to Tidelift](https://tidelift.com/subscription/pkg/packagist-phpseclib-phpseclib?utm_source=packagist-phpseclib-phpseclib&utm_medium=referral&utm_campaign=readme)
+
+## Introduction
+
MIT-licensed pure-PHP implementations of an arbitrary-precision integer
arithmetic library, fully PKCS#1 (v2.1) compliant RSA, DES, 3DES, RC4, Rijndael,
AES, Blowfish, Twofish, SSH-1, SSH-2, SFTP, and X.509
* [Browse Git](https://github.com/phpseclib/phpseclib)
-* [Code Coverage Report](https://coverage.phpseclib.org/2.0/latest/)
## Documentation
@@ -24,19 +31,24 @@ AES, Blowfish, Twofish, SSH-1, SSH-2, SFTP, and X.509
### 2.0
+* Long term support (LTS) release
* Modernized version of 1.0
* Minimum PHP version: 5.3.3
* PSR-4 autoloading with namespace rooted at `\phpseclib`
-* Install via Composer: `composer require phpseclib/phpseclib ~2.0`
+* Install via Composer: `composer require phpseclib/phpseclib:~2.0`
### 1.0
* Long term support (LTS) release
* PHP4 compatible
* Composer compatible (PSR-0 autoloading)
-* Install using Composer: `composer require phpseclib/phpseclib ~1.0`
+* Install using Composer: `composer require phpseclib/phpseclib:~1.0`
* Install using PEAR: See [phpseclib PEAR Channel Documentation](http://phpseclib.sourceforge.net/pear.htm)
-* [Download 1.0.11 as ZIP](http://sourceforge.net/projects/phpseclib/files/phpseclib1.0.11.zip/download)
+* [Download 1.0.18 as ZIP](http://sourceforge.net/projects/phpseclib/files/phpseclib1.0.18.zip/download)
+
+## Security contact information
+
+To report a security vulnerability, please use the [Tidelift security contact](https://tidelift.com/security). Tidelift will coordinate the fix and disclosure.
## Support
diff --git a/vendor/phpseclib/phpseclib/appveyor.yml b/vendor/phpseclib/phpseclib/appveyor.yml
new file mode 100644
index 000000000..210a90347
--- /dev/null
+++ b/vendor/phpseclib/phpseclib/appveyor.yml
@@ -0,0 +1,27 @@
+build: false
+shallow_clone: false
+platform:
+ - x86
+ - x64
+clone_folder: C:\projects\phpseclib
+
+install:
+ - cinst -y OpenSSL.Light
+ - SET PATH=C:\Program Files\OpenSSL;%PATH%
+ - sc config wuauserv start= auto
+ - net start wuauserv
+ - cinst -y php --version 5.6.30
+ - cd c:\tools\php56
+ - copy php.ini-production php.ini
+ - echo date.timezone="UTC" >> php.ini
+ - echo extension_dir=ext >> php.ini
+ - echo extension=php_openssl.dll >> php.ini
+ - echo extension=php_gmp.dll >> php.ini
+ - cd C:\projects\phpseclib
+ - SET PATH=C:\tools\php56;%PATH%
+ - php.exe -r "readfile('http://getcomposer.org/installer');" | php.exe
+ - php.exe composer.phar install --prefer-source --no-interaction
+
+test_script:
+ - cd C:\projects\phpseclib
+ - vendor\bin\phpunit.bat tests/Windows32Test.php \ No newline at end of file
diff --git a/vendor/phpseclib/phpseclib/phpseclib/Crypt/Base.php b/vendor/phpseclib/phpseclib/phpseclib/Crypt/Base.php
index 7c9032f0d..03b176e7b 100644
--- a/vendor/phpseclib/phpseclib/phpseclib/Crypt/Base.php
+++ b/vendor/phpseclib/phpseclib/phpseclib/Crypt/Base.php
@@ -649,10 +649,10 @@ abstract class Base
case !function_exists('hash_algos'):
case !in_array($hash, hash_algos()):
$i = 1;
+ $hmac = new Hash();
+ $hmac->setHash($hash);
+ $hmac->setKey($password);
while (strlen($key) < $dkLen) {
- $hmac = new Hash();
- $hmac->setHash($hash);
- $hmac->setKey($password);
$f = $u = $hmac->hash($salt . pack('N', $i++));
for ($j = 2; $j <= $count; ++$j) {
$u = $hmac->hash($u);
@@ -707,7 +707,7 @@ abstract class Base
case self::MODE_STREAM:
return openssl_encrypt($plaintext, $this->cipher_name_openssl, $this->key, $this->openssl_options);
case self::MODE_ECB:
- $result = openssl_encrypt($plaintext, $this->cipher_name_openssl, $this->key, $this->openssl_options);
+ $result = @openssl_encrypt($plaintext, $this->cipher_name_openssl, $this->key, $this->openssl_options);
return !defined('OPENSSL_RAW_DATA') ? substr($result, 0, -$this->block_size) : $result;
case self::MODE_CBC:
$result = openssl_encrypt($plaintext, $this->cipher_name_openssl, $this->key, $this->openssl_options, $this->encryptIV);
@@ -1040,14 +1040,14 @@ abstract class Base
break;
case self::MODE_ECB:
if (!defined('OPENSSL_RAW_DATA')) {
- $ciphertext.= openssl_encrypt('', $this->cipher_name_openssl_ecb, $this->key, true);
+ $ciphertext.= @openssl_encrypt('', $this->cipher_name_openssl_ecb, $this->key, true);
}
$plaintext = openssl_decrypt($ciphertext, $this->cipher_name_openssl, $this->key, $this->openssl_options);
break;
case self::MODE_CBC:
if (!defined('OPENSSL_RAW_DATA')) {
$padding = str_repeat(chr($this->block_size), $this->block_size) ^ substr($ciphertext, -$this->block_size);
- $ciphertext.= substr(openssl_encrypt($padding, $this->cipher_name_openssl_ecb, $this->key, true), 0, $this->block_size);
+ $ciphertext.= substr(@openssl_encrypt($padding, $this->cipher_name_openssl_ecb, $this->key, true), 0, $this->block_size);
$offset = 2 * $this->block_size;
} else {
$offset = $this->block_size;
@@ -1358,7 +1358,7 @@ abstract class Base
for ($i = 0; $i < strlen($plaintext); $i+=$block_size) {
$block = substr($plaintext, $i, $block_size);
if (strlen($block) > strlen($buffer['ciphertext'])) {
- $result = openssl_encrypt($xor, $this->cipher_name_openssl_ecb, $key, $this->openssl_options);
+ $result = @openssl_encrypt($xor, $this->cipher_name_openssl_ecb, $key, $this->openssl_options);
$result = !defined('OPENSSL_RAW_DATA') ? substr($result, 0, -$this->block_size) : $result;
$buffer['ciphertext'].= $result;
}
@@ -1369,7 +1369,7 @@ abstract class Base
} else {
for ($i = 0; $i < strlen($plaintext); $i+=$block_size) {
$block = substr($plaintext, $i, $block_size);
- $otp = openssl_encrypt($xor, $this->cipher_name_openssl_ecb, $key, $this->openssl_options);
+ $otp = @openssl_encrypt($xor, $this->cipher_name_openssl_ecb, $key, $this->openssl_options);
$otp = !defined('OPENSSL_RAW_DATA') ? substr($otp, 0, -$this->block_size) : $otp;
$this->_increment_str($xor);
$ciphertext.= $block ^ $otp;
@@ -1413,7 +1413,7 @@ abstract class Base
}
if ($this->continuousBuffer) {
if (!defined('OPENSSL_RAW_DATA')) {
- $encryptIV.= openssl_encrypt('', $this->cipher_name_openssl_ecb, $key, $this->openssl_options);
+ $encryptIV.= @openssl_encrypt('', $this->cipher_name_openssl_ecb, $key, $this->openssl_options);
}
$encryptIV = openssl_decrypt($encryptIV, $this->cipher_name_openssl_ecb, $key, $this->openssl_options);
if ($overflow) {
diff --git a/vendor/phpseclib/phpseclib/phpseclib/Crypt/Hash.php b/vendor/phpseclib/phpseclib/phpseclib/Crypt/Hash.php
index 6ae01329e..a61668209 100644
--- a/vendor/phpseclib/phpseclib/phpseclib/Crypt/Hash.php
+++ b/vendor/phpseclib/phpseclib/phpseclib/Crypt/Hash.php
@@ -113,6 +113,15 @@ class Hash
var $key = false;
/**
+ * Computed Key
+ *
+ * @see self::_computeKey()
+ * @var string
+ * @access private
+ */
+ var $computedKey = false;
+
+ /**
* Outer XOR (Internal HMAC)
*
* @see self::setKey()
@@ -131,6 +140,15 @@ class Hash
var $ipad;
/**
+ * Engine
+ *
+ * @see self::setHash()
+ * @var string
+ * @access private
+ */
+ var $engine;
+
+ /**
* Default Constructor.
*
* @param string $hash
@@ -166,6 +184,43 @@ class Hash
function setKey($key = false)
{
$this->key = $key;
+ $this->_computeKey();
+ }
+
+ /**
+ * Pre-compute the key used by the HMAC
+ *
+ * Quoting http://tools.ietf.org/html/rfc2104#section-2, "Applications that use keys longer than B bytes
+ * will first hash the key using H and then use the resultant L byte string as the actual key to HMAC."
+ *
+ * As documented in https://www.reddit.com/r/PHP/comments/9nct2l/symfonypolyfill_hash_pbkdf2_correct_fix_for/
+ * when doing an HMAC multiple times it's faster to compute the hash once instead of computing it during
+ * every call
+ *
+ * @access private
+ */
+ function _computeKey()
+ {
+ if ($this->key === false) {
+ $this->computedKey = false;
+ return;
+ }
+
+ if (strlen($this->key) <= $this->b) {
+ $this->computedKey = $this->key;
+ return;
+ }
+
+ switch ($this->engine) {
+ case self::MODE_MHASH:
+ $this->computedKey = mhash($this->hash, $this->key);
+ break;
+ case self::MODE_HASH:
+ $this->computedKey = hash($this->hash, $this->key, true);
+ break;
+ case self::MODE_INTERNAL:
+ $this->computedKey = call_user_func($this->hash, $this->key);
+ }
}
/**
@@ -216,19 +271,38 @@ class Hash
}
switch ($hash) {
+ case 'md2-96':
+ case 'md2':
+ $this->b = 16;
+ case 'md5-96':
+ case 'sha1-96':
+ case 'sha224-96':
+ case 'sha256-96':
case 'md2':
- $mode = CRYPT_HASH_MODE == self::MODE_HASH && in_array('md2', hash_algos()) ?
+ case 'md5':
+ case 'sha1':
+ case 'sha224':
+ case 'sha256':
+ $this->b = 64;
+ break;
+ default:
+ $this->b = 128;
+ }
+
+ switch ($hash) {
+ case 'md2':
+ $this->engine = CRYPT_HASH_MODE == self::MODE_HASH && in_array('md2', hash_algos()) ?
self::MODE_HASH : self::MODE_INTERNAL;
break;
case 'sha384':
case 'sha512':
- $mode = CRYPT_HASH_MODE == self::MODE_MHASH ? self::MODE_INTERNAL : CRYPT_HASH_MODE;
+ $this->engine = CRYPT_HASH_MODE == self::MODE_MHASH ? self::MODE_INTERNAL : CRYPT_HASH_MODE;
break;
default:
- $mode = CRYPT_HASH_MODE;
+ $this->engine = CRYPT_HASH_MODE;
}
- switch ($mode) {
+ switch ($this->engine) {
case self::MODE_MHASH:
switch ($hash) {
case 'md5':
@@ -241,6 +315,7 @@ class Hash
default:
$this->hash = MHASH_SHA1;
}
+ $this->_computeKey(self::MODE_MHASH);
return;
case self::MODE_HASH:
switch ($hash) {
@@ -257,35 +332,33 @@ class Hash
default:
$this->hash = 'sha1';
}
+ $this->_computeKey(self::MODE_HASH);
return;
}
switch ($hash) {
case 'md2':
- $this->b = 16;
$this->hash = array($this, '_md2');
break;
case 'md5':
- $this->b = 64;
$this->hash = array($this, '_md5');
break;
case 'sha256':
- $this->b = 64;
$this->hash = array($this, '_sha256');
break;
case 'sha384':
case 'sha512':
- $this->b = 128;
$this->hash = array($this, '_sha512');
break;
case 'sha1':
default:
- $this->b = 64;
$this->hash = array($this, '_sha1');
}
$this->ipad = str_repeat(chr(0x36), $this->b);
$this->opad = str_repeat(chr(0x5C), $this->b);
+
+ $this->_computeKey(self::MODE_INTERNAL);
}
/**
@@ -297,33 +370,25 @@ class Hash
*/
function hash($text)
{
- $mode = is_array($this->hash) ? self::MODE_INTERNAL : CRYPT_HASH_MODE;
-
if (!empty($this->key) || is_string($this->key)) {
- switch ($mode) {
+ switch ($this->engine) {
case self::MODE_MHASH:
- $output = mhash($this->hash, $text, $this->key);
+ $output = mhash($this->hash, $text, $this->computedKey);
break;
case self::MODE_HASH:
- $output = hash_hmac($this->hash, $text, $this->key, true);
+ $output = hash_hmac($this->hash, $text, $this->computedKey, true);
break;
case self::MODE_INTERNAL:
- /* "Applications that use keys longer than B bytes will first hash the key using H and then use the
- resultant L byte string as the actual key to HMAC."
-
- -- http://tools.ietf.org/html/rfc2104#section-2 */
- $key = strlen($this->key) > $this->b ? call_user_func($this->hash, $this->key) : $this->key;
-
- $key = str_pad($key, $this->b, chr(0)); // step 1
- $temp = $this->ipad ^ $key; // step 2
- $temp .= $text; // step 3
- $temp = call_user_func($this->hash, $temp); // step 4
- $output = $this->opad ^ $key; // step 5
- $output.= $temp; // step 6
- $output = call_user_func($this->hash, $output); // step 7
+ $key = str_pad($this->computedKey, $this->b, chr(0)); // step 1
+ $temp = $this->ipad ^ $key; // step 2
+ $temp .= $text; // step 3
+ $temp = call_user_func($this->hash, $temp); // step 4
+ $output = $this->opad ^ $key; // step 5
+ $output.= $temp; // step 6
+ $output = call_user_func($this->hash, $output); // step 7
}
} else {
- switch ($mode) {
+ switch ($this->engine) {
case self::MODE_MHASH:
$output = mhash($this->hash, $text);
break;
diff --git a/vendor/phpseclib/phpseclib/phpseclib/Crypt/RSA.php b/vendor/phpseclib/phpseclib/phpseclib/Crypt/RSA.php
index c15e86d38..72be6eeb1 100644
--- a/vendor/phpseclib/phpseclib/phpseclib/Crypt/RSA.php
+++ b/vendor/phpseclib/phpseclib/phpseclib/Crypt/RSA.php
@@ -182,6 +182,10 @@ class RSA
* PKCS#8 formatted private key
*/
const PRIVATE_FORMAT_PKCS8 = 8;
+ /**
+ * OpenSSH formatted private key
+ */
+ const PRIVATE_FORMAT_OPENSSH = 9;
/**#@-*/
/**#@+
@@ -820,6 +824,58 @@ class RSA
$key.= 'Private-MAC: ' . bin2hex($hash->hash($source)) . "\r\n";
return $key;
+ case self::PRIVATE_FORMAT_OPENSSH:
+ if ($num_primes != 2) {
+ return false;
+ }
+ $publicKey = pack('Na*Na*Na*', strlen('ssh-rsa'), 'ssh-rsa', strlen($raw['publicExponent']), $raw['publicExponent'], strlen($raw['modulus']), $raw['modulus']);
+ $privateKey = pack(
+ 'Na*Na*Na*Na*Na*Na*Na*',
+ strlen('ssh-rsa'),
+ 'ssh-rsa',
+ strlen($raw['modulus']),
+ $raw['modulus'],
+ strlen($raw['publicExponent']),
+ $raw['publicExponent'],
+ strlen($raw['privateExponent']),
+ $raw['privateExponent'],
+ strlen($raw['coefficient']),
+ $raw['coefficient'],
+ strlen($raw['prime1']),
+ $raw['prime1'],
+ strlen($raw['prime2']),
+ $raw['prime2']
+ );
+ $checkint = Random::string(4);
+ $paddedKey = pack(
+ 'a*Na*',
+ $checkint . $checkint . $privateKey,
+ strlen($this->comment),
+ $this->comment
+ );
+ $paddingLength = (7 * strlen($paddedKey)) % 8;
+ for ($i = 1; $i <= $paddingLength; $i++) {
+ $paddedKey.= chr($i);
+ }
+ $key = pack(
+ 'Na*Na*Na*NNa*Na*',
+ strlen('none'),
+ 'none',
+ strlen('none'),
+ 'none',
+ 0,
+ '',
+ 1,
+ strlen($publicKey),
+ $publicKey,
+ strlen($paddedKey),
+ $paddedKey
+ );
+ $key = "openssh-key-v1\0$key";
+
+ return "-----BEGIN OPENSSH PRIVATE KEY-----\r\n" .
+ chunk_split(base64_encode($key), 70) .
+ "-----END OPENSSH PRIVATE KEY-----";
default: // eg. self::PRIVATE_FORMAT_PKCS1
$components = array();
foreach ($raw as $name => $value) {
@@ -1020,9 +1076,9 @@ class RSA
* @access private
* @see self::_convertPublicKey()
* @see self::_convertPrivateKey()
- * @param string $key
+ * @param string|array $key
* @param int $type
- * @return array
+ * @return array|bool
*/
function _parseKey($key, $type)
{
@@ -1333,9 +1389,14 @@ class RSA
xml_set_character_data_handler($xml, '_data_handler');
// add <xml></xml> to account for "dangling" tags like <BitStrength>...</BitStrength> that are sometimes added
if (!xml_parse($xml, '<xml>' . $key . '</xml>')) {
+ xml_parser_free($xml);
+ unset($xml);
return false;
}
+ xml_parser_free($xml);
+ unset($xml);
+
return isset($this->components['modulus']) && isset($this->components['publicExponent']) ? $this->components : false;
// from PuTTY's SSHPUBK.C
case self::PRIVATE_FORMAT_PUTTY:
@@ -1408,6 +1469,75 @@ class RSA
$components['coefficients'] = array(2 => new BigInteger($this->_string_shift($private, $length), -256));
return $components;
+ case self::PRIVATE_FORMAT_OPENSSH:
+ $components = array();
+ $decoded = $this->_extractBER($key);
+ $magic = $this->_string_shift($decoded, 15);
+ if ($magic !== "openssh-key-v1\0") {
+ return false;
+ }
+ $options = $this->_string_shift($decoded, 24);
+ // \0\0\0\4none = ciphername
+ // \0\0\0\4none = kdfname
+ // \0\0\0\0 = kdfoptions
+ // \0\0\0\1 = numkeys
+ if ($options != "\0\0\0\4none\0\0\0\4none\0\0\0\0\0\0\0\1") {
+ return false;
+ }
+ extract(unpack('Nlength', $this->_string_shift($decoded, 4)));
+ if (strlen($decoded) < $length) {
+ return false;
+ }
+ $publicKey = $this->_string_shift($decoded, $length);
+ extract(unpack('Nlength', $this->_string_shift($decoded, 4)));
+ if (strlen($decoded) < $length) {
+ return false;
+ }
+ $paddedKey = $this->_string_shift($decoded, $length);
+
+ if ($this->_string_shift($publicKey, 11) !== "\0\0\0\7ssh-rsa") {
+ return false;
+ }
+
+ $checkint1 = $this->_string_shift($paddedKey, 4);
+ $checkint2 = $this->_string_shift($paddedKey, 4);
+ if (strlen($checkint1) != 4 || $checkint1 !== $checkint2) {
+ return false;
+ }
+
+ if ($this->_string_shift($paddedKey, 11) !== "\0\0\0\7ssh-rsa") {
+ return false;
+ }
+
+ $values = array(
+ &$components['modulus'],
+ &$components['publicExponent'],
+ &$components['privateExponent'],
+ &$components['coefficients'][2],
+ &$components['primes'][1],
+ &$components['primes'][2]
+ );
+
+ foreach ($values as &$value) {
+ extract(unpack('Nlength', $this->_string_shift($paddedKey, 4)));
+ if (strlen($paddedKey) < $length) {
+ return false;
+ }
+ $value = new BigInteger($this->_string_shift($paddedKey, $length), -256);
+ }
+
+ extract(unpack('Nlength', $this->_string_shift($paddedKey, 4)));
+ if (strlen($paddedKey) < $length) {
+ return false;
+ }
+ $components['comment'] = $this->_string_shift($decoded, $length);
+
+ $temp = $components['primes'][1]->subtract($this->one);
+ $components['exponents'] = array(1 => $components['publicExponent']->modInverse($temp));
+ $temp = $components['primes'][2]->subtract($this->one);
+ $components['exponents'][] = $components['publicExponent']->modInverse($temp);
+
+ return $components;
}
}
@@ -1505,8 +1635,9 @@ class RSA
* Returns true on success and false on failure (ie. an incorrect password was provided or the key was malformed)
*
* @access public
- * @param string $key
- * @param int $type optional
+ * @param string|RSA|array $key
+ * @param bool|int $type optional
+ * @return bool
*/
function loadKey($key, $type = false)
{
@@ -1563,7 +1694,8 @@ class RSA
self::PRIVATE_FORMAT_PKCS1,
self::PRIVATE_FORMAT_XML,
self::PRIVATE_FORMAT_PUTTY,
- self::PUBLIC_FORMAT_OPENSSH
+ self::PUBLIC_FORMAT_OPENSSH,
+ self::PRIVATE_FORMAT_OPENSSH
);
foreach ($types as $type) {
$components = $this->_parseKey($key, $type);
@@ -2211,16 +2343,21 @@ class RSA
*/
function _equals($x, $y)
{
+ if (function_exists('hash_equals')) {
+ return hash_equals($x, $y);
+ }
+
if (strlen($x) != strlen($y)) {
return false;
}
- $result = 0;
+ $result = "\0";
+ $x^= $y;
for ($i = 0; $i < strlen($x); $i++) {
- $result |= ord($x[$i]) ^ ord($y[$i]);
+ $result|= $x[$i];
}
- return $result == 0;
+ return $result === "\0";
}
/**
@@ -2427,19 +2564,26 @@ class RSA
$db = $maskedDB ^ $dbMask;
$lHash2 = substr($db, 0, $this->hLen);
$m = substr($db, $this->hLen);
- if (!$this->_equals($lHash, $lHash2)) {
- user_error('Decryption error');
- return false;
- }
- $m = ltrim($m, chr(0));
- if (ord($m[0]) != 1) {
+ $hashesMatch = $this->_equals($lHash, $lHash2);
+ $leadingZeros = 1;
+ $patternMatch = 0;
+ $offset = 0;
+ for ($i = 0; $i < strlen($m); $i++) {
+ $patternMatch|= $leadingZeros & ($m[$i] === "\1");
+ $leadingZeros&= $m[$i] === "\0";
+ $offset+= $patternMatch ? 0 : 1;
+ }
+
+ // we do & instead of && to avoid https://en.wikipedia.org/wiki/Short-circuit_evaluation
+ // to protect against timing attacks
+ if (!$hashesMatch & !$patternMatch) {
user_error('Decryption error');
return false;
}
// Output the message M
- return substr($m, 1);
+ return substr($m, $offset + 1);
}
/**
@@ -2618,7 +2762,7 @@ class RSA
// if $m is larger than two million terrabytes and you're using sha1, PKCS#1 suggests a "Label too long" error
// be output.
- $emLen = ($emBits + 1) >> 3; // ie. ceil($emBits / 8);
+ $emLen = ($emBits + 7) >> 3; // ie. ceil($emBits / 8);
$sLen = $this->sLen !== null ? $this->sLen : $this->hLen;
$mHash = $this->hash->hash($m);
@@ -2696,7 +2840,7 @@ class RSA
// RSA verification
- $modBits = 8 * $this->k;
+ $modBits = strlen($this->modulus->toBits());
$s2 = $this->_os2ip($s);
$m2 = $this->_rsavp1($s2);
@@ -2704,7 +2848,7 @@ class RSA
user_error('Invalid signature');
return false;
}
- $em = $this->_i2osp($m2, $modBits >> 3);
+ $em = $this->_i2osp($m2, $this->k);
if ($em === false) {
user_error('Invalid signature');
return false;
diff --git a/vendor/phpseclib/phpseclib/phpseclib/Crypt/Random.php b/vendor/phpseclib/phpseclib/phpseclib/Crypt/Random.php
index 01e34cc36..8f53eb319 100644
--- a/vendor/phpseclib/phpseclib/phpseclib/Crypt/Random.php
+++ b/vendor/phpseclib/phpseclib/phpseclib/Crypt/Random.php
@@ -97,7 +97,10 @@ class Random
$fp = @fopen('/dev/urandom', 'rb');
}
if ($fp !== true && $fp !== false) { // surprisingly faster than !is_bool() or is_resource()
- return fread($fp, $length);
+ $temp = fread($fp, $length);
+ if (strlen($temp) == $length) {
+ return $temp;
+ }
}
// method 3. pretty much does the same thing as method 2 per the following url:
// https://github.com/php/php-src/blob/7014a0eb6d1611151a286c0ff4f2238f92c120d6/ext/mcrypt/mcrypt.c#L1391
diff --git a/vendor/phpseclib/phpseclib/phpseclib/File/ASN1.php b/vendor/phpseclib/phpseclib/phpseclib/File/ASN1.php
index 76ff8e3ac..a304a000a 100644
--- a/vendor/phpseclib/phpseclib/phpseclib/File/ASN1.php
+++ b/vendor/phpseclib/phpseclib/phpseclib/File/ASN1.php
@@ -244,9 +244,10 @@ class ASN1
$tag = 0;
// process septets (since the eighth bit is ignored, it's not an octet)
do {
- $loop = ord($encoded[0]) >> 7;
+ $temp = ord($encoded[$encoded_pos++]);
+ $loop = $temp >> 7;
$tag <<= 7;
- $tag |= ord($encoded[$encoded_pos++]) & 0x7F;
+ $tag |= $temp & 0x7F;
$start++;
} while ($loop);
}
@@ -308,6 +309,9 @@ class ASN1
$remainingLength = $length;
while ($remainingLength > 0) {
$temp = $this->_decode_ber($content, $start, $content_pos);
+ if ($temp === false) {
+ break;
+ }
$length = $temp['length'];
// end-of-content octets - see paragraph 8.1.5
if (substr($content, $content_pos + $length, 2) == "\0\0") {
@@ -359,6 +363,9 @@ class ASN1
$current['content'] = substr($content, $content_pos);
} else {
$temp = $this->_decode_ber($content, $start, $content_pos);
+ if ($temp === false) {
+ return false;
+ }
$length-= (strlen($content) - $content_pos);
$last = count($temp) - 1;
for ($i = 0; $i < $last; $i++) {
@@ -383,6 +390,9 @@ class ASN1
$length = 0;
while (substr($content, $content_pos, 2) != "\0\0") {
$temp = $this->_decode_ber($content, $length + $start, $content_pos);
+ if ($temp === false) {
+ return false;
+ }
$content_pos += $temp['length'];
// all subtags should be octet strings
//if ($temp['type'] != self::TYPE_OCTET_STRING) {
@@ -415,30 +425,16 @@ class ASN1
break 2;
}
$temp = $this->_decode_ber($content, $start + $offset, $content_pos);
+ if ($temp === false) {
+ return false;
+ }
$content_pos += $temp['length'];
$current['content'][] = $temp;
$offset+= $temp['length'];
}
break;
case self::TYPE_OBJECT_IDENTIFIER:
- $temp = ord($content[$content_pos++]);
- $current['content'] = sprintf('%d.%d', floor($temp / 40), $temp % 40);
- $valuen = 0;
- // process septets
- $content_len = strlen($content);
- while ($content_pos < $content_len) {
- $temp = ord($content[$content_pos++]);
- $valuen <<= 7;
- $valuen |= $temp & 0x7F;
- if (~$temp & 0x80) {
- $current['content'].= ".$valuen";
- $valuen = 0;
- }
- }
- // the eighth bit of the last byte should not be 1
- //if ($temp >> 7) {
- // return false;
- //}
+ $current['content'] = $this->_decodeOID(substr($content, $content_pos));
break;
/* Each character string type shall be encoded as if it had been declared:
[UNIVERSAL x] IMPLICIT OCTET STRING
@@ -497,6 +493,10 @@ class ASN1
*/
function asn1map($decoded, $mapping, $special = array())
{
+ if (!is_array($decoded)) {
+ return false;
+ }
+
if (isset($mapping['explicit']) && is_array($decoded['content'])) {
$decoded = $decoded['content'][0];
}
@@ -706,7 +706,14 @@ class ASN1
return isset($this->oids[$decoded['content']]) ? $this->oids[$decoded['content']] : $decoded['content'];
case self::TYPE_UTC_TIME:
case self::TYPE_GENERALIZED_TIME:
- if (isset($mapping['implicit'])) {
+ // for explicitly tagged optional stuff
+ if (is_array($decoded['content'])) {
+ $decoded['content'] = $decoded['content'][0]['content'];
+ }
+ // for implicitly tagged optional stuff
+ // in theory, doing isset($mapping['implicit']) would work but malformed certs do exist
+ // in the wild that OpenSSL decodes without issue so we'll support them as well
+ if (!is_object($decoded['content'])) {
$decoded['content'] = $this->_decodeTime($decoded['content'], $decoded['type']);
}
return $decoded['content'] ? $decoded['content']->format($this->format) : false;
@@ -847,7 +854,7 @@ class ASN1
if ($mapping['type'] == self::TYPE_SET) {
sort($value);
}
- $value = implode($value, '');
+ $value = implode('', $value);
break;
}
@@ -1001,27 +1008,7 @@ class ASN1
$value = base64_decode($source);
break;
case self::TYPE_OBJECT_IDENTIFIER:
- $oid = preg_match('#(?:\d+\.)+#', $source) ? $source : array_search($source, $this->oids);
- if ($oid === false) {
- user_error('Invalid OID');
- return false;
- }
- $value = '';
- $parts = explode('.', $oid);
- $value = chr(40 * $parts[0] + $parts[1]);
- for ($i = 2; $i < count($parts); $i++) {
- $temp = '';
- if (!$parts[$i]) {
- $temp = "\0";
- } else {
- while ($parts[$i]) {
- $temp = chr(0x80 | ($parts[$i] & 0x7F)) . $temp;
- $parts[$i] >>= 7;
- }
- $temp[strlen($temp) - 1] = $temp[strlen($temp) - 1] & chr(0x7F);
- }
- $value.= $temp;
- }
+ $value = $this->_encodeOID($source);
break;
case self::TYPE_ANY:
$loc = $this->location;
@@ -1121,6 +1108,108 @@ class ASN1
}
/**
+ * BER-decode the OID
+ *
+ * Called by _decode_ber()
+ *
+ * @access private
+ * @param string $content
+ * @return string
+ */
+ function _decodeOID($content)
+ {
+ static $eighty;
+ if (!$eighty) {
+ $eighty = new BigInteger(80);
+ }
+
+ $oid = array();
+ $pos = 0;
+ $len = strlen($content);
+ $n = new BigInteger();
+ while ($pos < $len) {
+ $temp = ord($content[$pos++]);
+ $n = $n->bitwise_leftShift(7);
+ $n = $n->bitwise_or(new BigInteger($temp & 0x7F));
+ if (~$temp & 0x80) {
+ $oid[] = $n;
+ $n = new BigInteger();
+ }
+ }
+ $part1 = array_shift($oid);
+ $first = floor(ord($content[0]) / 40);
+ /*
+ "This packing of the first two object identifier components recognizes that only three values are allocated from the root
+ node, and at most 39 subsequent values from nodes reached by X = 0 and X = 1."
+
+ -- https://www.itu.int/ITU-T/studygroups/com17/languages/X.690-0207.pdf#page=22
+ */
+ if ($first <= 2) { // ie. 0 <= ord($content[0]) < 120 (0x78)
+ array_unshift($oid, ord($content[0]) % 40);
+ array_unshift($oid, $first);
+ } else {
+ array_unshift($oid, $part1->subtract($eighty));
+ array_unshift($oid, 2);
+ }
+
+ return implode('.', $oid);
+ }
+
+ /**
+ * DER-encode the OID
+ *
+ * Called by _encode_der()
+ *
+ * @access private
+ * @param string $content
+ * @return string
+ */
+ function _encodeOID($source)
+ {
+ static $mask, $zero, $forty;
+ if (!$mask) {
+ $mask = new BigInteger(0x7F);
+ $zero = new BigInteger();
+ $forty = new BigInteger(40);
+ }
+
+ $oid = preg_match('#(?:\d+\.)+#', $source) ? $source : array_search($source, $this->oids);
+ if ($oid === false) {
+ user_error('Invalid OID');
+ return false;
+ }
+ $parts = explode('.', $oid);
+ $part1 = array_shift($parts);
+ $part2 = array_shift($parts);
+
+ $first = new BigInteger($part1);
+ $first = $first->multiply($forty);
+ $first = $first->add(new BigInteger($part2));
+
+ array_unshift($parts, $first->toString());
+
+ $value = '';
+ foreach ($parts as $part) {
+ if (!$part) {
+ $temp = "\0";
+ } else {
+ $temp = '';
+ $part = new BigInteger($part);
+ while (!$part->equals($zero)) {
+ $submask = $part->bitwise_and($mask);
+ $submask->setPrecision(8);
+ $temp = (chr(0x80) | $submask->toBytes()) . $temp;
+ $part = $part->bitwise_rightShift(7);
+ }
+ $temp[strlen($temp) - 1] = $temp[strlen($temp) - 1] & chr(0x7F);
+ }
+ $value.= $temp;
+ }
+
+ return $value;
+ }
+
+ /**
* BER-decode the time
*
* Called by _decode_ber() and in the case of implicit tags asn1map().
diff --git a/vendor/phpseclib/phpseclib/phpseclib/File/X509.php b/vendor/phpseclib/phpseclib/phpseclib/File/X509.php
index f3ee81377..ddbc61595 100644
--- a/vendor/phpseclib/phpseclib/phpseclib/File/X509.php
+++ b/vendor/phpseclib/phpseclib/phpseclib/File/X509.php
@@ -963,6 +963,13 @@ class X509
'children' => $AccessDescription
);
+ $this->SubjectInfoAccessSyntax = array(
+ 'type' => ASN1::TYPE_SEQUENCE,
+ 'min' => 1,
+ 'max' => -1,
+ 'children' => $AccessDescription
+ );
+
$this->SubjectAltName = $GeneralNames;
$this->PrivateKeyUsagePeriod = array(
@@ -1620,7 +1627,10 @@ class X509
corresponding to the extension type identified by extnID */
$map = $this->_getMapping($id);
if (!is_bool($map)) {
- $mapped = $asn1->asn1map($decoded[0], $map, array('iPAddress' => array($this, '_decodeIP')));
+ $decoder = $id == 'id-ce-nameConstraints' ?
+ array($this, '_decodeNameConstraintIP') :
+ array($this, '_decodeIP');
+ $mapped = $asn1->asn1map($decoded[0], $map, array('iPAddress' => $decoder));
$value = $mapped === false ? $decoded[0] : $mapped;
if ($id == 'id-ce-certificatePolicies') {
@@ -1889,6 +1899,8 @@ class X509
return $this->ExtKeyUsageSyntax;
case 'id-pe-authorityInfoAccess':
return $this->AuthorityInfoAccessSyntax;
+ case 'id-pe-subjectInfoAccess':
+ return $this->SubjectInfoAccessSyntax;
case 'id-ce-subjectAltName':
return $this->SubjectAltName;
case 'id-ce-subjectDirectoryAttributes':
@@ -1928,6 +1940,9 @@ class X509
// "Certificate Transparency"
// https://tools.ietf.org/html/rfc6962
case '1.3.6.1.4.1.11129.2.4.2':
+ // "Qualified Certificate statements"
+ // https://tools.ietf.org/html/rfc3739#section-3.2.6
+ case '1.3.6.1.5.5.7.1.3':
return true;
// CSR attributes
@@ -2092,7 +2107,7 @@ class X509
*
* If $date isn't defined it is assumed to be the current date.
*
- * @param int $date optional
+ * @param \DateTime|string $date optional
* @access public
*/
function validateDate($date = null)
@@ -2102,7 +2117,7 @@ class X509
}
if (!isset($date)) {
- $date = new DateTime($date, new DateTimeZone(@date_default_timezone_get()));
+ $date = new DateTime(null, new DateTimeZone(@date_default_timezone_get()));
}
$notBefore = $this->currentCert['tbsCertificate']['validity']['notBefore'];
@@ -2111,9 +2126,16 @@ class X509
$notAfter = $this->currentCert['tbsCertificate']['validity']['notAfter'];
$notAfter = isset($notAfter['generalTime']) ? $notAfter['generalTime'] : $notAfter['utcTime'];
+ if (is_string($date)) {
+ $date = new DateTime($date, new DateTimeZone(@date_default_timezone_get()));
+ }
+
+ $notBefore = new DateTime($notBefore, new DateTimeZone(@date_default_timezone_get()));
+ $notAfter = new DateTime($notAfter, new DateTimeZone(@date_default_timezone_get()));
+
switch (true) {
- case $date < new DateTime($notBefore, new DateTimeZone(@date_default_timezone_get())):
- case $date > new DateTime($notAfter, new DateTimeZone(@date_default_timezone_get())):
+ case $date < $notBefore:
+ case $date > $notAfter:
return false;
}
@@ -2157,7 +2179,11 @@ class X509
}
while (!feof($fsock)) {
- $data.= fread($fsock, 1024);
+ $temp = fread($fsock, 1024);
+ if ($temp === false) {
+ return false;
+ }
+ $data.= $temp;
}
break;
@@ -2502,17 +2528,37 @@ class X509
}
/**
+ * Decodes an IP address in a name constraints extension
+ *
+ * Takes in a base64 encoded "blob" and returns a human readable IP address / mask
+ *
+ * @param string $ip
+ * @access private
+ * @return array
+ */
+ function _decodeNameConstraintIP($ip)
+ {
+ $ip = base64_decode($ip);
+ $size = strlen($ip) >> 1;
+ $mask = substr($ip, $size);
+ $ip = substr($ip, 0, $size);
+ return array(inet_ntop($ip), inet_ntop($mask));
+ }
+
+ /**
* Encodes an IP address
*
* Takes a human readable IP address into a base64-encoded "blob"
*
- * @param string $ip
+ * @param string|array $ip
* @access private
* @return string
*/
function _encodeIP($ip)
{
- return base64_encode(inet_pton($ip));
+ return is_string($ip) ?
+ base64_encode(inet_pton($ip)) :
+ base64_encode(inet_pton($ip[0]) . inet_pton($ip[1]));
}
/**
@@ -2920,7 +2966,7 @@ class X509
}
$output.= $desc . '=' . $value;
$result[$desc] = isset($result[$desc]) ?
- array_merge((array) $dn[$prop], array($value)) :
+ array_merge((array) $result[$desc], array($value)) :
$value;
$start = false;
}
diff --git a/vendor/phpseclib/phpseclib/phpseclib/Math/BigInteger.php b/vendor/phpseclib/phpseclib/phpseclib/Math/BigInteger.php
index d82d123d8..e7f664670 100644
--- a/vendor/phpseclib/phpseclib/phpseclib/Math/BigInteger.php
+++ b/vendor/phpseclib/phpseclib/phpseclib/Math/BigInteger.php
@@ -45,7 +45,6 @@
* @author Jim Wigginton <terrafrost@php.net>
* @copyright 2006 Jim Wigginton
* @license http://www.opensource.org/licenses/mit-license.html MIT License
- * @link http://pear.php.net/package/Math_BigInteger
*/
namespace phpseclib\Math;
@@ -446,6 +445,9 @@ class BigInteger
// (?<=^|-)0*: find any 0's that are preceded by the start of the string or by a - (ie. octals)
// [^-0-9].*: find any non-numeric characters and then any characters that follow that
$x = preg_replace('#(?<!^)(?:-).*|(?<=^|-)0*|[^-0-9].*#', '', $x);
+ if (!strlen($x) || $x == '-') {
+ $x = '0';
+ }
switch (MATH_BIGINTEGER_MODE) {
case self::MODE_GMP:
@@ -543,7 +545,7 @@ class BigInteger
$bytes = chr(0);
}
- if (ord($bytes[0]) & 0x80) {
+ if ($this->precision <= 0 && (ord($bytes[0]) & 0x80)) {
$bytes = chr(0) . $bytes;
}
@@ -705,6 +707,7 @@ class BigInteger
}
$temp = $this->copy();
+ $temp->bitmask = false;
$temp->is_negative = false;
$divisor = new static();
@@ -841,7 +844,7 @@ class BigInteger
$opts[] = 'OpenSSL';
}
if (!empty($opts)) {
- $engine.= ' (' . implode($opts, ', ') . ')';
+ $engine.= ' (' . implode('.', $opts) . ')';
}
return array(
'value' => '0x' . $this->toHex(true),
@@ -1559,7 +1562,9 @@ class BigInteger
$temp_value = array($quotient_value[$q_index]);
$temp = $temp->multiply($y);
$temp_value = &$temp->value;
- $temp_value = array_merge($adjust, $temp_value);
+ if (count($temp_value)) {
+ $temp_value = array_merge($adjust, $temp_value);
+ }
$x = $x->subtract($temp);
@@ -2692,7 +2697,14 @@ class BigInteger
{
switch (MATH_BIGINTEGER_MODE) {
case self::MODE_GMP:
- return gmp_cmp($this->value, $y->value);
+ $r = gmp_cmp($this->value, $y->value);
+ if ($r < -1) {
+ $r = -1;
+ }
+ if ($r > 1) {
+ $r = 1;
+ }
+ return $r;
case self::MODE_BCMATH:
return bccomp($this->value, $y->value, 0);
}
@@ -3558,7 +3570,14 @@ class BigInteger
switch (MATH_BIGINTEGER_MODE) {
case self::MODE_GMP:
if ($this->bitmask !== false) {
+ $flip = gmp_cmp($result->value, gmp_init(0)) < 0;
+ if ($flip) {
+ $result->value = gmp_neg($result->value);
+ }
$result->value = gmp_and($result->value, $result->bitmask->value);
+ if ($flip) {
+ $result->value = gmp_neg($result->value);
+ }
}
return $result;
@@ -3573,6 +3592,7 @@ class BigInteger
$value = &$result->value;
if (!count($value)) {
+ $result->is_negative = false;
return $result;
}
diff --git a/vendor/phpseclib/phpseclib/phpseclib/Net/SCP.php b/vendor/phpseclib/phpseclib/phpseclib/Net/SCP.php
index f95bce6df..cf13496cd 100644
--- a/vendor/phpseclib/phpseclib/phpseclib/Net/SCP.php
+++ b/vendor/phpseclib/phpseclib/phpseclib/Net/SCP.php
@@ -144,6 +144,11 @@ class SCP
return false;
}
+ if (empty($remote_file)) {
+ user_error('remote_file cannot be blank', E_USER_NOTICE);
+ return false;
+ }
+
if (!$this->ssh->exec('scp -t ' . escapeshellarg($remote_file), false)) { // -t = to
return false;
}
diff --git a/vendor/phpseclib/phpseclib/phpseclib/Net/SFTP.php b/vendor/phpseclib/phpseclib/phpseclib/Net/SFTP.php
index 8825f30cf..bf7ef36b4 100644
--- a/vendor/phpseclib/phpseclib/phpseclib/Net/SFTP.php
+++ b/vendor/phpseclib/phpseclib/phpseclib/Net/SFTP.php
@@ -109,11 +109,11 @@ class SFTP extends SSH2
* The request ID exists in the off chance that a packet is sent out-of-order. Of course, this library doesn't support
* concurrent actions, so it's somewhat academic, here.
*
- * @var int
+ * @var boolean
* @see self::_send_sftp_packet()
* @access private
*/
- var $request_id = false;
+ var $use_request_id = false;
/**
* The Packet Type
@@ -251,6 +251,15 @@ class SFTP extends SSH2
var $canonicalize_paths = true;
/**
+ * Request Buffers
+ *
+ * @see self::_get_sftp_packet()
+ * @var array
+ * @access private
+ */
+ var $requestBuffer = array();
+
+ /**
* Default Constructor.
*
* Connects to an SFTP server
@@ -388,6 +397,9 @@ class SFTP extends SSH2
if (!defined('NET_SFTP_QUEUE_SIZE')) {
define('NET_SFTP_QUEUE_SIZE', 32);
}
+ if (!defined('NET_SFTP_UPLOAD_QUEUE_SIZE')) {
+ define('NET_SFTP_UPLOAD_QUEUE_SIZE', 1024);
+ }
}
/**
@@ -400,8 +412,7 @@ class SFTP extends SSH2
*/
function login($username)
{
- $args = func_get_args();
- if (!call_user_func_array(array(&$this, '_login'), $args)) {
+ if (!call_user_func_array('parent::login', func_get_args())) {
return false;
}
@@ -519,7 +530,7 @@ class SFTP extends SSH2
}
*/
- $this->request_id = 1;
+ $this->use_request_id = true;
/*
A Note on SFTPv4/5/6 support:
@@ -833,6 +844,7 @@ class SFTP extends SSH2
}
if (is_array($this->_query_stat_cache($this->_realpath($dir . '/' . $value)))) {
$temp = $this->_nlist_helper($dir . '/' . $value, true, $relativeDir . $value . '/');
+ $temp = is_array($temp) ? $temp : array();
$result = array_merge($result, $temp);
} else {
$result[] = $relativeDir . $value;
@@ -864,7 +876,17 @@ class SFTP extends SSH2
unset($files[$key]);
continue;
}
- if ($key != '.' && $key != '..' && is_array($this->_query_stat_cache($this->_realpath($dir . '/' . $key)))) {
+ $is_directory = false;
+ if ($key != '.' && $key != '..') {
+ if ($this->use_stat_cache) {
+ $is_directory = is_array($this->_query_stat_cache($this->_realpath($dir . '/' . $key)));
+ } else {
+ $stat = $this->lstat($dir . '/' . $key);
+ $is_directory = $stat && $stat['type'] === NET_SFTP_TYPE_DIRECTORY;
+ }
+ }
+
+ if ($is_directory) {
$depth++;
$files[$key] = $this->rawlist($dir . '/' . $key, true);
$depth--;
@@ -1754,9 +1776,6 @@ class SFTP extends SSH2
}
$dir = $this->_realpath($dir);
- // by not providing any permissions, hopefully the server will use the logged in users umask - their
- // default permissions.
- $attr = $mode == -1 ? "\0\0\0\0" : pack('N2', NET_SFTP_ATTR_PERMISSIONS, $mode & 07777);
if ($recursive) {
$dirs = explode('/', preg_replace('#/(?=/)|/$#', '', $dir));
@@ -1767,12 +1786,12 @@ class SFTP extends SSH2
for ($i = 0; $i < count($dirs); $i++) {
$temp = array_slice($dirs, 0, $i + 1);
$temp = implode('/', $temp);
- $result = $this->_mkdir_helper($temp, $attr);
+ $result = $this->_mkdir_helper($temp, $mode);
}
return $result;
}
- return $this->_mkdir_helper($dir, $attr);
+ return $this->_mkdir_helper($dir, $mode);
}
/**
@@ -1782,9 +1801,10 @@ class SFTP extends SSH2
* @return bool
* @access private
*/
- function _mkdir_helper($dir, $attr)
+ function _mkdir_helper($dir, $mode)
{
- if (!$this->_send_sftp_packet(NET_SFTP_MKDIR, pack('Na*a*', strlen($dir), $dir, $attr))) {
+ // send SSH_FXP_MKDIR without any attributes (that's what the \0\0\0\0 is doing)
+ if (!$this->_send_sftp_packet(NET_SFTP_MKDIR, pack('Na*a*', strlen($dir), $dir, "\0\0\0\0"))) {
return false;
}
@@ -1803,6 +1823,10 @@ class SFTP extends SSH2
return false;
}
+ if ($mode !== -1) {
+ $this->chmod($mode, $dir);
+ }
+
return true;
}
@@ -1997,7 +2021,7 @@ class SFTP extends SSH2
$sftp_packet_size = 4096; // PuTTY uses 4096
// make the SFTP packet be exactly 4096 bytes by including the bytes in the NET_SFTP_WRITE packets "header"
$sftp_packet_size-= strlen($handle) + 25;
- $i = 0;
+ $i = $j = 0;
while ($dataCallback || ($size === 0 || $sent < $size)) {
if ($dataCallback) {
$temp = call_user_func($dataCallback, $sftp_packet_size);
@@ -2013,7 +2037,7 @@ class SFTP extends SSH2
$subtemp = $offset + $sent;
$packet = pack('Na*N3a*', strlen($handle), $handle, $subtemp / 4294967296, $subtemp, strlen($temp), $temp);
- if (!$this->_send_sftp_packet(NET_SFTP_WRITE, $packet)) {
+ if (!$this->_send_sftp_packet(NET_SFTP_WRITE, $packet, $j)) {
if ($mode & self::SOURCE_LOCAL_FILE) {
fclose($fp);
}
@@ -2025,8 +2049,9 @@ class SFTP extends SSH2
}
$i++;
+ $j++;
- if ($i == NET_SFTP_QUEUE_SIZE) {
+ if ($i == NET_SFTP_UPLOAD_QUEUE_SIZE) {
if (!$this->_read_put_responses($i)) {
$i = 0;
break;
@@ -2128,10 +2153,11 @@ class SFTP extends SSH2
* @param string $local_file
* @param int $offset
* @param int $length
+ * @param callable|null $progressCallback
* @return mixed
* @access public
*/
- function get($remote_file, $local_file = false, $offset = 0, $length = -1)
+ function get($remote_file, $local_file = false, $offset = 0, $length = -1, $progressCallback = null)
{
if (!($this->bitmap & SSH2::MASK_LOGIN)) {
return false;
@@ -2189,7 +2215,7 @@ class SFTP extends SSH2
$packet_size = $length > 0 ? min($this->max_sftp_packet, $length - $read) : $this->max_sftp_packet;
$packet = pack('Na*N3', strlen($handle), $handle, $tempoffset / 4294967296, $tempoffset, $packet_size);
- if (!$this->_send_sftp_packet(NET_SFTP_READ, $packet)) {
+ if (!$this->_send_sftp_packet(NET_SFTP_READ, $packet, $i)) {
if ($fclose_check) {
fclose($fp);
}
@@ -2197,6 +2223,9 @@ class SFTP extends SSH2
}
$packet = null;
$read+= $packet_size;
+ if (is_callable($progressCallback)) {
+ call_user_func($progressCallback, $read);
+ }
$i++;
}
@@ -2204,15 +2233,17 @@ class SFTP extends SSH2
break;
}
+ $packets_sent = $i - 1;
+
$clear_responses = false;
while ($i > 0) {
$i--;
if ($clear_responses) {
- $this->_get_sftp_packet();
+ $this->_get_sftp_packet($packets_sent - $i);
continue;
} else {
- $response = $this->_get_sftp_packet();
+ $response = $this->_get_sftp_packet($packets_sent - $i);
}
switch ($this->packet_type) {
@@ -2921,10 +2952,10 @@ class SFTP extends SSH2
* @return bool
* @access private
*/
- function _send_sftp_packet($type, $data)
+ function _send_sftp_packet($type, $data, $request_id = 1)
{
- $packet = $this->request_id !== false ?
- pack('NCNa*', strlen($data) + 5, $type, $this->request_id, $data) :
+ $packet = $this->use_request_id ?
+ pack('NCNa*', strlen($data) + 5, $type, $request_id, $data) :
pack('NCa*', strlen($data) + 1, $type, $data);
$start = strtok(microtime(), ' ') + strtok(''); // http://php.net/microtime#61838
@@ -2950,6 +2981,20 @@ class SFTP extends SSH2
}
/**
+ * Resets a connection for re-use
+ *
+ * @param int $reason
+ * @access private
+ */
+ function _reset_connection($reason)
+ {
+ parent::_reset_connection($reason);
+ $this->use_request_id = false;
+ $this->pwd = false;
+ $this->requestBuffer = array();
+ }
+
+ /**
* Receives SFTP Packets
*
* See '6. General Packet Format' of draft-ietf-secsh-filexfer-13 for more info.
@@ -2962,9 +3007,18 @@ class SFTP extends SSH2
* @return string
* @access private
*/
- function _get_sftp_packet()
+ function _get_sftp_packet($request_id = null)
{
- $this->curTimeout = false;
+ if (isset($request_id) && isset($this->requestBuffer[$request_id])) {
+ $this->packet_type = $this->requestBuffer[$request_id]['packet_type'];
+ $temp = $this->requestBuffer[$request_id]['packet'];
+ unset($this->requestBuffer[$request_id]);
+ return $temp;
+ }
+
+ // in SSH2.php the timeout is cumulative per function call. eg. exec() will
+ // timeout after 10s. but for SFTP.php it's cumulative per packet
+ $this->curTimeout = $this->timeout;
$start = strtok(microtime(), ' ') + strtok(''); // http://php.net/microtime#61838
@@ -2985,6 +3039,13 @@ class SFTP extends SSH2
$tempLength = $length;
$tempLength-= strlen($this->packet_buffer);
+
+ // 256 * 1024 is what SFTP_MAX_MSG_LENGTH is set to in OpenSSH's sftp-common.h
+ if ($tempLength > 256 * 1024) {
+ user_error('Invalid SFTP packet size');
+ return false;
+ }
+
// SFTP packet type and data payload
while ($tempLength > 0) {
$temp = $this->_get_channel_packet(self::CHANNEL, true);
@@ -3001,8 +3062,8 @@ class SFTP extends SSH2
$this->packet_type = ord($this->_string_shift($this->packet_buffer));
- if ($this->request_id !== false) {
- $this->_string_shift($this->packet_buffer, 4); // remove the request id
+ if ($this->use_request_id) {
+ extract(unpack('Npacket_id', $this->_string_shift($this->packet_buffer, 4))); // remove the request id
$length-= 5; // account for the request id and the packet type
} else {
$length-= 1; // account for the packet type
@@ -3025,6 +3086,14 @@ class SFTP extends SSH2
}
}
+ if (isset($request_id) && $this->use_request_id && $packet_id != $request_id) {
+ $this->requestBuffer[$packet_id] = array(
+ 'packet_type' => $this->packet_type,
+ 'packet' => $packet
+ );
+ return $this->_get_sftp_packet($request_id);
+ }
+
return $packet;
}
diff --git a/vendor/phpseclib/phpseclib/phpseclib/Net/SSH1.php b/vendor/phpseclib/phpseclib/phpseclib/Net/SSH1.php
index 514b20a2d..ff48d5436 100644
--- a/vendor/phpseclib/phpseclib/phpseclib/Net/SSH1.php
+++ b/vendor/phpseclib/phpseclib/phpseclib/Net/SSH1.php
@@ -1124,6 +1124,9 @@ class SSH1
while ($length > 0) {
$temp = fread($this->fsock, $length);
+ if (strlen($temp) != $length) {
+ return false;
+ }
$raw.= $temp;
$length-= strlen($temp);
}
diff --git a/vendor/phpseclib/phpseclib/phpseclib/Net/SSH2.php b/vendor/phpseclib/phpseclib/phpseclib/Net/SSH2.php
index cdb7cb39e..f37a04948 100644
--- a/vendor/phpseclib/phpseclib/phpseclib/Net/SSH2.php
+++ b/vendor/phpseclib/phpseclib/phpseclib/Net/SSH2.php
@@ -104,6 +104,7 @@ class SSH2
const CHANNEL_SHELL = 2;
const CHANNEL_SUBSYSTEM = 3;
const CHANNEL_AGENT_FORWARD = 4;
+ const CHANNEL_KEEP_ALIVE = 5;
/**#@-*/
/**#@+
@@ -145,7 +146,10 @@ class SSH2
*/
const READ_REGEX = 2;
/**
- * Returns when a string matching the regular expression $expect is found
+ * Returns whenever a data packet is received.
+ *
+ * Some data packets may only contain a single character so it may be necessary
+ * to call read() multiple times when using this option
*/
const READ_NEXT = 3;
/**#@-*/
@@ -206,6 +210,15 @@ class SSH2
var $kex_algorithms = false;
/**
+ * Key Exchange Algorithm
+ *
+ * @see self::getMethodsNegotiated()
+ * @var string|false
+ * @access private
+ */
+ var $kex_algorithm = false;
+
+ /**
* Minimum Diffie-Hellman Group Bit Size in RFC 4419 Key Exchange Methods
*
* @see self::_key_exchange()
@@ -314,6 +327,15 @@ class SSH2
var $languages_client_to_server = false;
/**
+ * Preferred Algorithms
+ *
+ * @see self::setPreferredAlgorithms()
+ * @var array
+ * @access private
+ */
+ var $preferred = array();
+
+ /**
* Block Size for Server to Client Encryption
*
* "Note that the length of the concatenation of 'packet_length',
@@ -571,6 +593,20 @@ class SSH2
var $window_size = 0x7FFFFFFF;
/**
+ * What we resize the window to
+ *
+ * When PuTTY resizes the window it doesn't add an additional 0x7FFFFFFF bytes - it adds 0x40000000 bytes.
+ * Some SFTP clients (GoAnywhere) don't support adding 0x7FFFFFFF to the window size after the fact so
+ * we'll just do what PuTTY does
+ *
+ * @var int
+ * @see self::_send_channel_packet()
+ * @see self::exec()
+ * @access private
+ */
+ var $window_resize = 0x40000000;
+
+ /**
* Window size, server to client
*
* Window size indexed by channel
@@ -895,14 +931,6 @@ class SSH2
var $bad_key_size_fix = false;
/**
- * The selected decryption algorithm
- *
- * @var string
- * @access private
- */
- var $decrypt_algorithm = '';
-
- /**
* Should we try to re-connect to re-establish keys?
*
* @var bool
@@ -919,6 +947,22 @@ class SSH2
var $binary_packet_buffer = false;
/**
+ * Preferred Signature Format
+ *
+ * @var string|false
+ * @access private
+ */
+ var $preferred_signature_format = false;
+
+ /**
+ * Authentication Credentials
+ *
+ * @var array
+ * @access private
+ */
+ var $auth = array();
+
+ /**
* Default Constructor.
*
* $host can either be a string, representing the host, or a stream resource.
@@ -1124,11 +1168,12 @@ class SSH2
}
$elapsed = microtime(true) - $start;
- $this->curTimeout-= $elapsed;
-
- if ($this->curTimeout <= 0) {
- $this->is_timeout = true;
- return false;
+ if ($this->curTimeout) {
+ $this->curTimeout-= $elapsed;
+ if ($this->curTimeout < 0) {
+ $this->is_timeout = true;
+ return false;
+ }
}
}
@@ -1173,6 +1218,9 @@ class SSH2
if (strlen($temp) == 255) {
continue;
}
+ if ($temp === false) {
+ return false;
+ }
$line.= "$temp\n";
@@ -1193,6 +1241,7 @@ class SSH2
}
if (feof($this->fsock)) {
+ $this->bitmap = 0;
user_error('Connection closed by server');
return false;
}
@@ -1206,7 +1255,7 @@ class SSH2
$this->server_identifier = trim($temp, "\r\n");
if (strlen($extra)) {
- $this->errors[] = utf8_decode($data);
+ $this->errors[] = $data;
}
if (version_compare($matches[3], '1.99', '<')) {
@@ -1221,6 +1270,7 @@ class SSH2
if (!$this->send_kex_first) {
$response = $this->_get_binary_packet();
if ($response === false) {
+ $this->bitmap = 0;
user_error('Connection closed by server');
return false;
}
@@ -1257,7 +1307,7 @@ class SSH2
$identifier = 'SSH-2.0-phpseclib_2.0';
$ext = array();
- if (function_exists('\\Sodium\\library_version_major')) {
+ if (function_exists('sodium_crypto_box_publickey_from_secretkey')) {
$ext[] = 'libsodium';
}
@@ -1288,139 +1338,59 @@ class SSH2
*/
function _key_exchange($kexinit_payload_server = false)
{
- $kex_algorithms = array(
- // Elliptic Curve Diffie-Hellman Key Agreement (ECDH) using
- // Curve25519. See doc/curve25519-sha256@libssh.org.txt in the
- // libssh repository for more information.
- 'curve25519-sha256@libssh.org',
-
- // Diffie-Hellman Key Agreement (DH) using integer modulo prime
- // groups.
- 'diffie-hellman-group1-sha1', // REQUIRED
- 'diffie-hellman-group14-sha1', // REQUIRED
- 'diffie-hellman-group-exchange-sha1', // RFC 4419
- 'diffie-hellman-group-exchange-sha256', // RFC 4419
- );
- if (!function_exists('\\Sodium\\library_version_major')) {
- $kex_algorithms = array_diff(
- $kex_algorithms,
- array('curve25519-sha256@libssh.org')
- );
- }
-
- $server_host_key_algorithms = array(
- 'ssh-rsa', // RECOMMENDED sign Raw RSA Key
- 'ssh-dss' // REQUIRED sign Raw DSS Key
- );
-
- $encryption_algorithms = array(
- // from <http://tools.ietf.org/html/rfc4345#section-4>:
- 'arcfour256',
- 'arcfour128',
-
- //'arcfour', // OPTIONAL the ARCFOUR stream cipher with a 128-bit key
-
- // CTR modes from <http://tools.ietf.org/html/rfc4344#section-4>:
- 'aes128-ctr', // RECOMMENDED AES (Rijndael) in SDCTR mode, with 128-bit key
- 'aes192-ctr', // RECOMMENDED AES with 192-bit key
- 'aes256-ctr', // RECOMMENDED AES with 256-bit key
-
- 'twofish128-ctr', // OPTIONAL Twofish in SDCTR mode, with 128-bit key
- 'twofish192-ctr', // OPTIONAL Twofish with 192-bit key
- 'twofish256-ctr', // OPTIONAL Twofish with 256-bit key
-
- 'aes128-cbc', // RECOMMENDED AES with a 128-bit key
- 'aes192-cbc', // OPTIONAL AES with a 192-bit key
- 'aes256-cbc', // OPTIONAL AES in CBC mode, with a 256-bit key
-
- 'twofish128-cbc', // OPTIONAL Twofish with a 128-bit key
- 'twofish192-cbc', // OPTIONAL Twofish with a 192-bit key
- 'twofish256-cbc',
- 'twofish-cbc', // OPTIONAL alias for "twofish256-cbc"
- // (this is being retained for historical reasons)
-
- 'blowfish-ctr', // OPTIONAL Blowfish in SDCTR mode
-
- 'blowfish-cbc', // OPTIONAL Blowfish in CBC mode
-
- '3des-ctr', // RECOMMENDED Three-key 3DES in SDCTR mode
-
- '3des-cbc', // REQUIRED three-key 3DES in CBC mode
- //'none' // OPTIONAL no encryption; NOT RECOMMENDED
- );
-
- if (extension_loaded('openssl') && !extension_loaded('mcrypt')) {
- // OpenSSL does not support arcfour256 in any capacity and arcfour128 / arcfour support is limited to
- // instances that do not use continuous buffers
- $encryption_algorithms = array_diff(
- $encryption_algorithms,
- array('arcfour256', 'arcfour128', 'arcfour')
- );
- }
-
- if (class_exists('\phpseclib\Crypt\RC4') === false) {
- $encryption_algorithms = array_diff(
- $encryption_algorithms,
- array('arcfour256', 'arcfour128', 'arcfour')
- );
- }
- if (class_exists('\phpseclib\Crypt\Rijndael') === false) {
- $encryption_algorithms = array_diff(
- $encryption_algorithms,
- array('aes128-ctr', 'aes192-ctr', 'aes256-ctr', 'aes128-cbc', 'aes192-cbc', 'aes256-cbc')
- );
- }
- if (class_exists('\phpseclib\Crypt\Twofish') === false) {
- $encryption_algorithms = array_diff(
- $encryption_algorithms,
- array('twofish128-ctr', 'twofish192-ctr', 'twofish256-ctr', 'twofish128-cbc', 'twofish192-cbc', 'twofish256-cbc', 'twofish-cbc')
- );
- }
- if (class_exists('\phpseclib\Crypt\Blowfish') === false) {
- $encryption_algorithms = array_diff(
- $encryption_algorithms,
- array('blowfish-ctr', 'blowfish-cbc')
- );
- }
- if (class_exists('\phpseclib\Crypt\TripleDES') === false) {
- $encryption_algorithms = array_diff(
- $encryption_algorithms,
- array('3des-ctr', '3des-cbc')
- );
- }
- $encryption_algorithms = array_values($encryption_algorithms);
-
- $mac_algorithms = array(
- // from <http://www.ietf.org/rfc/rfc6668.txt>:
- 'hmac-sha2-256',// RECOMMENDED HMAC-SHA256 (digest length = key length = 32)
-
- 'hmac-sha1-96', // RECOMMENDED first 96 bits of HMAC-SHA1 (digest length = 12, key length = 20)
- 'hmac-sha1', // REQUIRED HMAC-SHA1 (digest length = key length = 20)
- 'hmac-md5-96', // OPTIONAL first 96 bits of HMAC-MD5 (digest length = 12, key length = 16)
- 'hmac-md5', // OPTIONAL HMAC-MD5 (digest length = key length = 16)
- //'none' // OPTIONAL no MAC; NOT RECOMMENDED
- );
-
- $compression_algorithms = array(
- 'none' // REQUIRED no compression
- //'zlib' // OPTIONAL ZLIB (LZ77) compression
- );
+ $preferred = $this->preferred;
+
+ $kex_algorithms = isset($preferred['kex']) ?
+ $preferred['kex'] :
+ $this->getSupportedKEXAlgorithms();
+ $server_host_key_algorithms = isset($preferred['hostkey']) ?
+ $preferred['hostkey'] :
+ $this->getSupportedHostKeyAlgorithms();
+ $s2c_encryption_algorithms = isset($preferred['server_to_client']['crypt']) ?
+ $preferred['server_to_client']['crypt'] :
+ $this->getSupportedEncryptionAlgorithms();
+ $c2s_encryption_algorithms = isset($preferred['client_to_server']['crypt']) ?
+ $preferred['client_to_server']['crypt'] :
+ $this->getSupportedEncryptionAlgorithms();
+ $s2c_mac_algorithms = isset($preferred['server_to_client']['mac']) ?
+ $preferred['server_to_client']['mac'] :
+ $this->getSupportedMACAlgorithms();
+ $c2s_mac_algorithms = isset($preferred['client_to_server']['mac']) ?
+ $preferred['client_to_server']['mac'] :
+ $this->getSupportedMACAlgorithms();
+ $s2c_compression_algorithms = isset($preferred['server_to_client']['comp']) ?
+ $preferred['server_to_client']['comp'] :
+ $this->getSupportedCompressionAlgorithms();
+ $c2s_compression_algorithms = isset($preferred['client_to_server']['comp']) ?
+ $preferred['client_to_server']['comp'] :
+ $this->getSupportedCompressionAlgorithms();
// some SSH servers have buggy implementations of some of the above algorithms
switch (true) {
case $this->server_identifier == 'SSH-2.0-SSHD':
case substr($this->server_identifier, 0, 13) == 'SSH-2.0-DLINK':
- $mac_algorithms = array_values(array_diff(
- $mac_algorithms,
- array('hmac-sha1-96', 'hmac-md5-96')
- ));
+ if (!isset($preferred['server_to_client']['mac'])) {
+ $s2c_mac_algorithms = array_values(array_diff(
+ $s2c_mac_algorithms,
+ array('hmac-sha1-96', 'hmac-md5-96')
+ ));
+ }
+ if (!isset($preferred['client_to_server']['mac'])) {
+ $c2s_mac_algorithms = array_values(array_diff(
+ $c2s_mac_algorithms,
+ array('hmac-sha1-96', 'hmac-md5-96')
+ ));
+ }
}
$str_kex_algorithms = implode(',', $kex_algorithms);
$str_server_host_key_algorithms = implode(',', $server_host_key_algorithms);
- $encryption_algorithms_server_to_client = $encryption_algorithms_client_to_server = implode(',', $encryption_algorithms);
- $mac_algorithms_server_to_client = $mac_algorithms_client_to_server = implode(',', $mac_algorithms);
- $compression_algorithms_server_to_client = $compression_algorithms_client_to_server = implode(',', $compression_algorithms);
+ $encryption_algorithms_server_to_client = implode(',', $s2c_encryption_algorithms);
+ $encryption_algorithms_client_to_server = implode(',', $c2s_encryption_algorithms);
+ $mac_algorithms_server_to_client = implode(',', $s2c_mac_algorithms);
+ $mac_algorithms_client_to_server = implode(',', $c2s_mac_algorithms);
+ $compression_algorithms_server_to_client = implode(',', $s2c_compression_algorithms);
+ $compression_algorithms_client_to_server = implode(',', $c2s_compression_algorithms);
$client_cookie = Random::string(16);
@@ -1459,6 +1429,7 @@ class SSH2
$kexinit_payload_server = $this->_get_binary_packet();
if ($kexinit_payload_server === false) {
+ $this->bitmap = 0;
user_error('Connection closed by server');
return false;
}
@@ -1546,14 +1517,14 @@ class SSH2
// we need to decide upon the symmetric encryption algorithms before we do the diffie-hellman key exchange
// we don't initialize any crypto-objects, yet - we do that, later. for now, we need the lengths to make the
// diffie-hellman key exchange as fast as possible
- $decrypt = $this->_array_intersect_first($encryption_algorithms, $this->encryption_algorithms_server_to_client);
+ $decrypt = $this->_array_intersect_first($s2c_encryption_algorithms, $this->encryption_algorithms_server_to_client);
$decryptKeyLength = $this->_encryption_algorithm_to_key_size($decrypt);
if ($decryptKeyLength === null) {
user_error('No compatible server to client encryption algorithms found');
return $this->_disconnect(NET_SSH2_DISCONNECT_KEY_EXCHANGE_FAILED);
}
- $encrypt = $this->_array_intersect_first($encryption_algorithms, $this->encryption_algorithms_client_to_server);
+ $encrypt = $this->_array_intersect_first($c2s_encryption_algorithms, $this->encryption_algorithms_client_to_server);
$encryptKeyLength = $this->_encryption_algorithm_to_key_size($encrypt);
if ($encryptKeyLength === null) {
user_error('No compatible client to server encryption algorithms found');
@@ -1561,7 +1532,7 @@ class SSH2
}
// through diffie-hellman key exchange a symmetric key is obtained
- $kex_algorithm = $this->_array_intersect_first($kex_algorithms, $this->kex_algorithms);
+ $this->kex_algorithm = $kex_algorithm = $this->_array_intersect_first($kex_algorithms, $this->kex_algorithms);
if ($kex_algorithm === false) {
user_error('No compatible key exchange algorithms found');
return $this->_disconnect(NET_SSH2_DISCONNECT_KEY_EXCHANGE_FAILED);
@@ -1572,9 +1543,9 @@ class SSH2
if ($kex_algorithm === 'curve25519-sha256@libssh.org') {
$x = Random::string(32);
- $eBytes = \Sodium\crypto_box_publickey_from_secretkey($x);
- $clientKexInitMessage = NET_SSH2_MSG_KEX_ECDH_INIT;
- $serverKexReplyMessage = NET_SSH2_MSG_KEX_ECDH_REPLY;
+ $eBytes = sodium_crypto_box_publickey_from_secretkey($x);
+ $clientKexInitMessage = 'NET_SSH2_MSG_KEX_ECDH_INIT';
+ $serverKexReplyMessage = 'NET_SSH2_MSG_KEX_ECDH_REPLY';
$kexHash = new Hash('sha256');
} else {
if (strpos($kex_algorithm, 'diffie-hellman-group-exchange') === 0) {
@@ -1592,9 +1563,11 @@ class SSH2
if (!$this->_send_binary_packet($packet)) {
return false;
}
+ $this->_updateLogHistory('UNKNOWN (34)', 'NET_SSH2_MSG_KEXDH_GEX_REQUEST');
$response = $this->_get_binary_packet();
if ($response === false) {
+ $this->bitmap = 0;
user_error('Connection closed by server');
return false;
}
@@ -1603,6 +1576,7 @@ class SSH2
user_error('Expected SSH_MSG_KEX_DH_GEX_GROUP');
return false;
}
+ $this->_updateLogHistory('NET_SSH2_MSG_KEXDH_REPLY', 'NET_SSH2_MSG_KEXDH_GEX_GROUP');
if (strlen($response) < 4) {
return false;
@@ -1627,8 +1601,8 @@ class SSH2
$gBytes
);
- $clientKexInitMessage = NET_SSH2_MSG_KEXDH_GEX_INIT;
- $serverKexReplyMessage = NET_SSH2_MSG_KEXDH_GEX_REPLY;
+ $clientKexInitMessage = 'NET_SSH2_MSG_KEXDH_GEX_INIT';
+ $serverKexReplyMessage = 'NET_SSH2_MSG_KEXDH_GEX_REPLY';
} else {
switch ($kex_algorithm) {
// see http://tools.ietf.org/html/rfc2409#section-6.2 and
@@ -1655,8 +1629,8 @@ class SSH2
// the generator field element is 2 (decimal) and the hash function is sha1.
$g = new BigInteger(2);
$prime = new BigInteger($prime, 16);
- $clientKexInitMessage = NET_SSH2_MSG_KEXDH_INIT;
- $serverKexReplyMessage = NET_SSH2_MSG_KEXDH_REPLY;
+ $clientKexInitMessage = 'NET_SSH2_MSG_KEXDH_INIT';
+ $serverKexReplyMessage = 'NET_SSH2_MSG_KEXDH_REPLY';
}
switch ($kex_algorithm) {
@@ -1684,15 +1658,24 @@ class SSH2
$eBytes = $e->toBytes(true);
}
- $data = pack('CNa*', $clientKexInitMessage, strlen($eBytes), $eBytes);
+ $data = pack('CNa*', constant($clientKexInitMessage), strlen($eBytes), $eBytes);
if (!$this->_send_binary_packet($data)) {
+ $this->bitmap = 0;
user_error('Connection closed by server');
return false;
}
+ switch ($clientKexInitMessage) {
+ case 'NET_SSH2_MSG_KEX_ECDH_INIT':
+ $this->_updateLogHistory('NET_SSH2_MSG_KEXDH_INIT', 'NET_SSH2_MSG_KEX_ECDH_INIT');
+ break;
+ case 'NET_SSH2_MSG_KEXDH_GEX_INIT':
+ $this->_updateLogHistory('UNKNOWN (32)', 'NET_SSH2_MSG_KEXDH_GEX_INIT');
+ }
$response = $this->_get_binary_packet();
if ($response === false) {
+ $this->bitmap = 0;
user_error('Connection closed by server');
return false;
}
@@ -1701,10 +1684,17 @@ class SSH2
}
extract(unpack('Ctype', $this->_string_shift($response, 1)));
- if ($type != $serverKexReplyMessage) {
- user_error('Expected SSH_MSG_KEXDH_REPLY');
+ if ($type != constant($serverKexReplyMessage)) {
+ user_error("Expected $serverKexReplyMessage");
return false;
}
+ switch ($serverKexReplyMessage) {
+ case 'NET_SSH2_MSG_KEX_ECDH_REPLY':
+ $this->_updateLogHistory('NET_SSH2_MSG_KEXDH_REPLY', 'NET_SSH2_MSG_KEX_ECDH_REPLY');
+ break;
+ case 'NET_SSH2_MSG_KEXDH_GEX_REPLY':
+ $this->_updateLogHistory('UNKNOWN (33)', 'NET_SSH2_MSG_KEXDH_GEX_REPLY');
+ }
if (strlen($response) < 4) {
return false;
@@ -1741,8 +1731,15 @@ class SSH2
user_error('Received curve25519 public key of invalid length.');
return false;
}
- $key = new BigInteger(\Sodium\crypto_scalarmult($x, $fBytes), 256);
- \Sodium\memzero($x);
+ $key = new BigInteger(sodium_crypto_scalarmult($x, $fBytes), 256);
+ // sodium_compat doesn't emulate sodium_memzero
+ // also, with v1 of libsodium API the extension identifies itself as
+ // libsodium whereas v2 of the libsodium API (what PHP 7.2+ includes)
+ // identifies itself as sodium. sodium_compat uses the v1 API to
+ // emulate the v2 API if it's the v1 API that's available
+ if (extension_loaded('sodium') || extension_loaded('libsodium')) {
+ sodium_memzero($x);
+ }
} else {
$f = new BigInteger($fBytes, -256);
$key = $f->modPow($x, $prime);
@@ -1782,9 +1779,25 @@ class SSH2
return $this->_disconnect(NET_SSH2_DISCONNECT_KEY_EXCHANGE_FAILED);
}
- if ($public_key_format != $server_host_key_algorithm || $this->signature_format != $server_host_key_algorithm) {
- user_error('Server Host Key Algorithm Mismatch');
- return $this->_disconnect(NET_SSH2_DISCONNECT_KEY_EXCHANGE_FAILED);
+ switch ($server_host_key_algorithm) {
+ case 'ssh-dss':
+ $expected_key_format = 'ssh-dss';
+ break;
+ //case 'rsa-sha2-256':
+ //case 'rsa-sha2-512':
+ //case 'ssh-rsa':
+ default:
+ $expected_key_format = 'ssh-rsa';
+ }
+
+ if ($public_key_format != $expected_key_format || $this->signature_format != $server_host_key_algorithm) {
+ switch (true) {
+ case $this->signature_format == $server_host_key_algorithm:
+ case $server_host_key_algorithm != 'rsa-sha2-256' && $server_host_key_algorithm != 'rsa-sha2-512':
+ case $this->signature_format != 'ssh-rsa':
+ user_error('Server Host Key Algorithm Mismatch');
+ return $this->_disconnect(NET_SSH2_DISCONNECT_KEY_EXCHANGE_FAILED);
+ }
}
$packet = pack(
@@ -1799,6 +1812,7 @@ class SSH2
$response = $this->_get_binary_packet();
if ($response === false) {
+ $this->bitmap = 0;
user_error('Connection closed by server');
return false;
}
@@ -1813,14 +1827,12 @@ class SSH2
return false;
}
- $this->decrypt_algorithm = $decrypt;
-
$keyBytes = pack('Na*', strlen($keyBytes), $keyBytes);
$this->encrypt = $this->_encryption_algorithm_to_crypt_instance($encrypt);
if ($this->encrypt) {
if ($this->crypto_engine) {
- $this->encrypt->setEngine($this->crypto_engine);
+ $this->encrypt->setPreferredEngine($this->crypto_engine);
}
if ($this->encrypt->block_size) {
$this->encrypt_block_size = $this->encrypt->block_size;
@@ -1828,6 +1840,10 @@ class SSH2
$this->encrypt->enableContinuousBuffer();
$this->encrypt->disablePadding();
+ if ($this->encrypt->getBlockLength()) {
+ $this->encrypt_block_size = $this->encrypt->getBlockLength() >> 3;
+ }
+
$iv = $kexHash->hash($keyBytes . $this->exchange_hash . 'A' . $this->session_id);
while ($this->encrypt_block_size > strlen($iv)) {
$iv.= $kexHash->hash($keyBytes . $this->exchange_hash . $iv);
@@ -1839,12 +1855,14 @@ class SSH2
$key.= $kexHash->hash($keyBytes . $this->exchange_hash . $key);
}
$this->encrypt->setKey(substr($key, 0, $encryptKeyLength));
+
+ $this->encrypt->name = $decrypt;
}
$this->decrypt = $this->_encryption_algorithm_to_crypt_instance($decrypt);
if ($this->decrypt) {
if ($this->crypto_engine) {
- $this->decrypt->setEngine($this->crypto_engine);
+ $this->decrypt->setPreferredEngine($this->crypto_engine);
}
if ($this->decrypt->block_size) {
$this->decrypt_block_size = $this->decrypt->block_size;
@@ -1852,6 +1870,10 @@ class SSH2
$this->decrypt->enableContinuousBuffer();
$this->decrypt->disablePadding();
+ if ($this->decrypt->getBlockLength()) {
+ $this->decrypt_block_size = $this->decrypt->getBlockLength() >> 3;
+ }
+
$iv = $kexHash->hash($keyBytes . $this->exchange_hash . 'B' . $this->session_id);
while ($this->decrypt_block_size > strlen($iv)) {
$iv.= $kexHash->hash($keyBytes . $this->exchange_hash . $iv);
@@ -1863,6 +1885,8 @@ class SSH2
$key.= $kexHash->hash($keyBytes . $this->exchange_hash . $key);
}
$this->decrypt->setKey(substr($key, 0, $decryptKeyLength));
+
+ $this->decrypt->name = $decrypt;
}
/* The "arcfour128" algorithm is the RC4 cipher, as described in
@@ -1879,7 +1903,7 @@ class SSH2
$this->decrypt->decrypt(str_repeat("\0", 1536));
}
- $mac_algorithm = $this->_array_intersect_first($mac_algorithms, $this->mac_algorithms_client_to_server);
+ $mac_algorithm = $this->_array_intersect_first($c2s_mac_algorithms, $this->mac_algorithms_client_to_server);
if ($mac_algorithm === false) {
user_error('No compatible client to server message authentication algorithms found');
return $this->_disconnect(NET_SSH2_DISCONNECT_KEY_EXCHANGE_FAILED);
@@ -1907,8 +1931,9 @@ class SSH2
$this->hmac_create = new Hash('md5-96');
$createKeyLength = 16;
}
+ $this->hmac_create->name = $mac_algorithm;
- $mac_algorithm = $this->_array_intersect_first($mac_algorithms, $this->mac_algorithms_server_to_client);
+ $mac_algorithm = $this->_array_intersect_first($s2c_mac_algorithms, $this->mac_algorithms_server_to_client);
if ($mac_algorithm === false) {
user_error('No compatible server to client message authentication algorithms found');
return $this->_disconnect(NET_SSH2_DISCONNECT_KEY_EXCHANGE_FAILED);
@@ -1942,6 +1967,7 @@ class SSH2
$checkKeyLength = 16;
$this->hmac_size = 12;
}
+ $this->hmac_check->name = $mac_algorithm;
$key = $kexHash->hash($keyBytes . $this->exchange_hash . 'E' . $this->session_id);
while ($createKeyLength > strlen($key)) {
@@ -1955,19 +1981,19 @@ class SSH2
}
$this->hmac_check->setKey(substr($key, 0, $checkKeyLength));
- $compression_algorithm = $this->_array_intersect_first($compression_algorithms, $this->compression_algorithms_server_to_client);
+ $compression_algorithm = $this->_array_intersect_first($c2s_compression_algorithms, $this->compression_algorithms_client_to_server);
if ($compression_algorithm === false) {
- user_error('No compatible server to client compression algorithms found');
+ user_error('No compatible client to server compression algorithms found');
return $this->_disconnect(NET_SSH2_DISCONNECT_KEY_EXCHANGE_FAILED);
}
- $this->decompress = $compression_algorithm == 'zlib';
+ //$this->decompress = $compression_algorithm == 'zlib';
- $compression_algorithm = $this->_array_intersect_first($compression_algorithms, $this->compression_algorithms_client_to_server);
+ $compression_algorithm = $this->_array_intersect_first($s2c_compression_algorithms, $this->compression_algorithms_client_to_server);
if ($compression_algorithm === false) {
- user_error('No compatible client to server compression algorithms found');
+ user_error('No compatible server to client compression algorithms found');
return $this->_disconnect(NET_SSH2_DISCONNECT_KEY_EXCHANGE_FAILED);
}
- $this->compress = $compression_algorithm == 'zlib';
+ //$this->compress = $compression_algorithm == 'zlib';
return true;
}
@@ -2059,7 +2085,7 @@ class SSH2
return null;
}
- /*
+ /**
* Tests whether or not proposed algorithm has a potential for issues
*
* @link https://www.chiark.greenend.org.uk/~sgtatham/putty/wishlist/ssh2-aesctr-openssh.html
@@ -2095,6 +2121,16 @@ class SSH2
function login($username)
{
$args = func_get_args();
+ $this->auth[] = $args;
+
+ // try logging with 'none' as an authentication method first since that's what
+ // PuTTY does
+ if ($this->_login($username)) {
+ return true;
+ }
+ if (count($args) == 1) {
+ return false;
+ }
return call_user_func_array(array(&$this, '_login'), $args);
}
@@ -2166,6 +2202,7 @@ class SSH2
}
return $this->_login_helper($username, $password);
}
+ $this->bitmap = 0;
user_error('Connection closed by server');
return false;
}
@@ -2218,6 +2255,7 @@ class SSH2
$response = $this->_get_binary_packet();
if ($response === false) {
+ $this->bitmap = 0;
user_error('Connection closed by server');
return false;
}
@@ -2276,6 +2314,7 @@ class SSH2
$response = $this->_get_binary_packet();
if ($response === false) {
+ $this->bitmap = 0;
user_error('Connection closed by server');
return false;
}
@@ -2287,14 +2326,12 @@ class SSH2
switch ($type) {
case NET_SSH2_MSG_USERAUTH_PASSWD_CHANGEREQ: // in theory, the password can be changed
- if (defined('NET_SSH2_LOGGING')) {
- $this->message_number_log[count($this->message_number_log) - 1] = 'NET_SSH2_MSG_USERAUTH_PASSWD_CHANGEREQ';
- }
+ $this->_updateLogHistory('UNKNOWN (60)', 'NET_SSH2_MSG_USERAUTH_PASSWD_CHANGEREQ');
if (strlen($response) < 4) {
return false;
}
extract(unpack('Nlength', $this->_string_shift($response, 4)));
- $this->errors[] = 'SSH_MSG_USERAUTH_PASSWD_CHANGEREQ: ' . utf8_decode($this->_string_shift($response, $length));
+ $this->errors[] = 'SSH_MSG_USERAUTH_PASSWD_CHANGEREQ: ' . $this->_string_shift($response, $length);
return $this->_disconnect(NET_SSH2_DISCONNECT_AUTH_CANCELLED_BY_USER);
case NET_SSH2_MSG_USERAUTH_FAILURE:
// can we use keyboard-interactive authentication? if not then either the login is bad or the server employees
@@ -2376,6 +2413,7 @@ class SSH2
} else {
$orig = $response = $this->_get_binary_packet();
if ($response === false) {
+ $this->bitmap = 0;
user_error('Connection closed by server');
return false;
}
@@ -2439,12 +2477,8 @@ class SSH2
// see http://tools.ietf.org/html/rfc4256#section-3.2
if (strlen($this->last_interactive_response)) {
$this->last_interactive_response = '';
- } elseif (defined('NET_SSH2_LOGGING')) {
- $this->message_number_log[count($this->message_number_log) - 1] = str_replace(
- 'UNKNOWN',
- 'NET_SSH2_MSG_USERAUTH_INFO_REQUEST',
- $this->message_number_log[count($this->message_number_log) - 1]
- );
+ } else {
+ $this->_updateLogHistory('UNKNOWN (60)', 'NET_SSH2_MSG_USERAUTH_INFO_REQUEST');
}
if (!count($responses) && $num_prompts) {
@@ -2467,13 +2501,7 @@ class SSH2
return false;
}
- if (defined('NET_SSH2_LOGGING') && NET_SSH2_LOGGING == self::LOG_COMPLEX) {
- $this->message_number_log[count($this->message_number_log) - 1] = str_replace(
- 'UNKNOWN',
- 'NET_SSH2_MSG_USERAUTH_INFO_RESPONSE',
- $this->message_number_log[count($this->message_number_log) - 1]
- );
- }
+ $this->_updateLogHistory('UNKNOWN (61)', 'NET_SSH2_MSG_USERAUTH_INFO_RESPONSE');
/*
After receiving the response, the server MUST send either an
@@ -2545,6 +2573,21 @@ class SSH2
$publickey['n']
);
+ switch ($this->signature_format) {
+ case 'rsa-sha2-512':
+ $hash = 'sha512';
+ $signatureType = 'rsa-sha2-512';
+ break;
+ case 'rsa-sha2-256':
+ $hash = 'sha256';
+ $signatureType = 'rsa-sha2-256';
+ break;
+ //case 'ssh-rsa':
+ default:
+ $hash = 'sha1';
+ $signatureType = 'ssh-rsa';
+ }
+
$part1 = pack(
'CNa*Na*Na*',
NET_SSH2_MSG_USERAUTH_REQUEST,
@@ -2555,7 +2598,7 @@ class SSH2
strlen('publickey'),
'publickey'
);
- $part2 = pack('Na*Na*', strlen('ssh-rsa'), 'ssh-rsa', strlen($publickey), $publickey);
+ $part2 = pack('Na*Na*', strlen($signatureType), $signatureType, strlen($publickey), $publickey);
$packet = $part1 . chr(0) . $part2;
if (!$this->_send_binary_packet($packet)) {
@@ -2564,6 +2607,7 @@ class SSH2
$response = $this->_get_binary_packet();
if ($response === false) {
+ $this->bitmap = 0;
user_error('Connection closed by server');
return false;
}
@@ -2584,19 +2628,14 @@ class SSH2
case NET_SSH2_MSG_USERAUTH_PK_OK:
// we'll just take it on faith that the public key blob and the public key algorithm name are as
// they should be
- if (defined('NET_SSH2_LOGGING') && NET_SSH2_LOGGING == self::LOG_COMPLEX) {
- $this->message_number_log[count($this->message_number_log) - 1] = str_replace(
- 'UNKNOWN',
- 'NET_SSH2_MSG_USERAUTH_PK_OK',
- $this->message_number_log[count($this->message_number_log) - 1]
- );
- }
+ $this->_updateLogHistory('UNKNOWN (60)', 'NET_SSH2_MSG_USERAUTH_PK_OK');
}
$packet = $part1 . chr(1) . $part2;
$privatekey->setSignatureMode(RSA::SIGNATURE_PKCS1);
+ $privatekey->setHash($hash);
$signature = $privatekey->sign(pack('Na*a*', strlen($this->session_id), $this->session_id, $packet));
- $signature = pack('Na*Na*', strlen('ssh-rsa'), 'ssh-rsa', strlen($signature), $signature);
+ $signature = pack('Na*Na*', strlen($signatureType), $signatureType, strlen($signature), $signature);
$packet.= pack('Na*', strlen($signature), $signature);
if (!$this->_send_binary_packet($packet)) {
@@ -2605,6 +2644,7 @@ class SSH2
$response = $this->_get_binary_packet();
if ($response === false) {
+ $this->bitmap = 0;
user_error('Connection closed by server');
return false;
}
@@ -2731,6 +2771,7 @@ class SSH2
$response = $this->_get_binary_packet();
if ($response === false) {
+ $this->bitmap = 0;
user_error('Connection closed by server');
return false;
}
@@ -2870,6 +2911,7 @@ class SSH2
$response = $this->_get_binary_packet();
if ($response === false) {
+ $this->bitmap = 0;
user_error('Connection closed by server');
return false;
}
@@ -3185,6 +3227,69 @@ class SSH2
}
/**
+ * Pings a server connection, or tries to reconnect if the connection has gone down
+ *
+ * Inspired by http://php.net/manual/en/mysqli.ping.php
+ *
+ * @return bool
+ * @access public
+ */
+ function ping()
+ {
+ if (!$this->isAuthenticated()) {
+ if (!empty($this->auth)) {
+ return $this->_reconnect();
+ }
+ return false;
+ }
+
+ $this->window_size_server_to_client[self::CHANNEL_KEEP_ALIVE] = $this->window_size;
+ $packet_size = 0x4000;
+ $packet = pack(
+ 'CNa*N3',
+ NET_SSH2_MSG_CHANNEL_OPEN,
+ strlen('session'),
+ 'session',
+ self::CHANNEL_KEEP_ALIVE,
+ $this->window_size_server_to_client[self::CHANNEL_KEEP_ALIVE],
+ $packet_size
+ );
+
+ if (!@$this->_send_binary_packet($packet)) {
+ return $this->_reconnect();
+ }
+
+ $this->channel_status[self::CHANNEL_KEEP_ALIVE] = NET_SSH2_MSG_CHANNEL_OPEN;
+
+ $response = @$this->_get_channel_packet(self::CHANNEL_KEEP_ALIVE);
+ if ($response !== false) {
+ $this->_close_channel(self::CHANNEL_KEEP_ALIVE);
+ return true;
+ }
+
+ return $this->_reconnect();
+ }
+
+ /**
+ * In situ reconnect method
+ *
+ * @return boolean
+ * @access private
+ */
+ function _reconnect()
+ {
+ $this->_reset_connection(NET_SSH2_DISCONNECT_CONNECTION_LOST);
+ $this->retry_connect = true;
+ if (!$this->_connect()) {
+ return false;
+ }
+ foreach ($this->auth as $auth) {
+ $result = call_user_func_array(array(&$this, 'login'), $auth);
+ }
+ return $result;
+ }
+
+ /**
* Resets a connection for re-use
*
* @param int $reason
@@ -3214,8 +3319,8 @@ class SSH2
function _get_binary_packet($skip_channel_filter = false)
{
if (!is_resource($this->fsock) || feof($this->fsock)) {
- user_error('Connection closed prematurely');
$this->bitmap = 0;
+ user_error('Connection closed prematurely');
return false;
}
@@ -3245,7 +3350,7 @@ class SSH2
// "implementations SHOULD check that the packet length is reasonable"
// PuTTY uses 0x9000 as the actual max packet size and so to shall we
if ($remaining_length < -$this->decrypt_block_size || $remaining_length > 0x9000 || $remaining_length % $this->decrypt_block_size != 0) {
- if (!$this->bad_key_size_fix && $this->_bad_algorithm_candidate($this->decrypt_algorithm) && !($this->bitmap & SSH2::MASK_LOGIN)) {
+ if (!$this->bad_key_size_fix && $this->_bad_algorithm_candidate($this->decrypt->name) && !($this->bitmap & SSH2::MASK_LOGIN)) {
$this->bad_key_size_fix = true;
$this->_reset_connection(NET_SSH2_DISCONNECT_KEY_EXCHANGE_FAILED);
return false;
@@ -3258,8 +3363,8 @@ class SSH2
while ($remaining_length > 0) {
$temp = stream_get_contents($this->fsock, $remaining_length);
if ($temp === false || feof($this->fsock)) {
- user_error('Error reading from socket');
$this->bitmap = 0;
+ user_error('Error reading from socket');
return false;
}
$buffer.= $temp;
@@ -3277,8 +3382,8 @@ class SSH2
if ($this->hmac_check !== false) {
$hmac = stream_get_contents($this->fsock, $this->hmac_size);
if ($hmac === false || strlen($hmac) != $this->hmac_size) {
- user_error('Error reading socket');
$this->bitmap = 0;
+ user_error('Error reading socket');
return false;
} elseif ($hmac != $this->hmac_check->hash(pack('NNCa*', $this->get_seq_no, $packet_length, $padding_length, $payload . $padding))) {
user_error('Invalid HMAC');
@@ -3322,7 +3427,7 @@ class SSH2
return false;
}
extract(unpack('Nreason_code/Nlength', $this->_string_shift($payload, 8)));
- $this->errors[] = 'SSH_MSG_DISCONNECT: ' . $this->disconnect_reasons[$reason_code] . "\r\n" . utf8_decode($this->_string_shift($payload, $length));
+ $this->errors[] = 'SSH_MSG_DISCONNECT: ' . $this->disconnect_reasons[$reason_code] . "\r\n" . $this->_string_shift($payload, $length);
$this->bitmap = 0;
return false;
case NET_SSH2_MSG_IGNORE:
@@ -3334,7 +3439,7 @@ class SSH2
return false;
}
extract(unpack('Nlength', $this->_string_shift($payload, 4)));
- $this->errors[] = 'SSH_MSG_DEBUG: ' . utf8_decode($this->_string_shift($payload, $length));
+ $this->errors[] = 'SSH_MSG_DEBUG: ' . $this->_string_shift($payload, $length);
$payload = $this->_get_binary_packet($skip_channel_filter);
break;
case NET_SSH2_MSG_UNIMPLEMENTED:
@@ -3357,7 +3462,7 @@ class SSH2
return false;
}
extract(unpack('Nlength', $this->_string_shift($payload, 4)));
- $this->banner_message = utf8_decode($this->_string_shift($payload, $length));
+ $this->banner_message = $this->_string_shift($payload, $length);
$payload = $this->_get_binary_packet();
}
@@ -3561,7 +3666,12 @@ class SSH2
$response = $this->binary_packet_buffer;
$this->binary_packet_buffer = false;
} else {
- if ($this->curTimeout) {
+ $read = array($this->fsock);
+ $write = $except = null;
+
+ if (!$this->curTimeout) {
+ @stream_select($read, $write, $except, null);
+ } else {
if ($this->curTimeout < 0) {
$this->is_timeout = true;
return true;
@@ -3576,6 +3686,9 @@ class SSH2
// on windows this returns a "Warning: Invalid CRT parameters detected" error
if (!@stream_select($read, $write, $except, $sec, $usec) && !count($read)) {
$this->is_timeout = true;
+ if ($client_channel == self::CHANNEL_EXEC && !$this->request_pty) {
+ $this->_close_channel($client_channel);
+ }
return true;
}
$elapsed = microtime(true) - $start;
@@ -3584,6 +3697,7 @@ class SSH2
$response = $this->_get_binary_packet(true);
if ($response === false) {
+ $this->bitmap = 0;
user_error('Connection closed by server');
return false;
}
@@ -3593,10 +3707,6 @@ class SSH2
return true;
}
if (!strlen($response)) {
- return '';
- }
-
- if (!strlen($response)) {
return false;
}
extract(unpack('Ctype', $this->_string_shift($response, 1)));
@@ -3616,17 +3726,19 @@ class SSH2
// resize the window, if appropriate
if ($this->window_size_server_to_client[$channel] < 0) {
- $packet = pack('CNN', NET_SSH2_MSG_CHANNEL_WINDOW_ADJUST, $this->server_channels[$channel], $this->window_size);
+ // PuTTY does something more analogous to the following:
+ //if ($this->window_size_server_to_client[$channel] < 0x3FFFFFFF) {
+ $packet = pack('CNN', NET_SSH2_MSG_CHANNEL_WINDOW_ADJUST, $this->server_channels[$channel], $this->window_resize);
if (!$this->_send_binary_packet($packet)) {
return false;
}
- $this->window_size_server_to_client[$channel]+= $this->window_size;
+ $this->window_size_server_to_client[$channel]+= $this->window_resize;
}
switch ($type) {
case NET_SSH2_MSG_CHANNEL_EXTENDED_DATA:
/*
- if ($client_channel == NET_SSH2_CHANNEL_EXEC) {
+ if ($client_channel == self::CHANNEL_EXEC) {
$this->_send_channel_packet($client_channel, chr(0));
}
*/
@@ -3818,8 +3930,8 @@ class SSH2
function _send_binary_packet($data, $logged = null)
{
if (!is_resource($this->fsock) || feof($this->fsock)) {
- user_error('Connection closed prematurely');
$this->bitmap = 0;
+ user_error('Connection closed prematurely');
return false;
}
@@ -4037,10 +4149,14 @@ class SSH2
if ($this->bitmap & self::MASK_CONNECTED) {
$data = pack('CNNa*Na*', NET_SSH2_MSG_DISCONNECT, $reason, 0, '', 0, '');
$this->_send_binary_packet($data);
- $this->bitmap = 0;
+ }
+
+ $this->bitmap = 0;
+ if (is_resource($this->fsock) && get_resource_type($this->fsock) == 'stream') {
fclose($this->fsock);
- return false;
}
+
+ return false;
}
/**
@@ -4362,6 +4478,306 @@ class SSH2
}
/**
+ * Returns a list of algorithms the server supports
+ *
+ * @return array
+ * @access public
+ */
+ function getServerAlgorithms()
+ {
+ $this->_connect();
+
+ return array(
+ 'kex' => $this->kex_algorithms,
+ 'hostkey' => $this->server_host_key_algorithms,
+ 'client_to_server' => array(
+ 'crypt' => $this->encryption_algorithms_client_to_server,
+ 'mac' => $this->mac_algorithms_client_to_server,
+ 'comp' => $this->compression_algorithms_client_to_server,
+ 'lang' => $this->languages_client_to_server
+ ),
+ 'server_to_client' => array(
+ 'crypt' => $this->encryption_algorithms_server_to_client,
+ 'mac' => $this->mac_algorithms_server_to_client,
+ 'comp' => $this->compression_algorithms_server_to_client,
+ 'lang' => $this->languages_server_to_client
+ )
+ );
+ }
+
+ /**
+ * Returns a list of KEX algorithms that phpseclib supports
+ *
+ * @return array
+ * @access public
+ */
+ function getSupportedKEXAlgorithms()
+ {
+ $kex_algorithms = array(
+ // Elliptic Curve Diffie-Hellman Key Agreement (ECDH) using
+ // Curve25519. See doc/curve25519-sha256@libssh.org.txt in the
+ // libssh repository for more information.
+ 'curve25519-sha256@libssh.org',
+
+ 'diffie-hellman-group-exchange-sha256',// RFC 4419
+ 'diffie-hellman-group-exchange-sha1', // RFC 4419
+
+ // Diffie-Hellman Key Agreement (DH) using integer modulo prime
+ // groups.
+ 'diffie-hellman-group14-sha1', // REQUIRED
+ 'diffie-hellman-group1-sha1', // REQUIRED
+ );
+
+ if (!function_exists('sodium_crypto_box_publickey_from_secretkey')) {
+ $kex_algorithms = array_diff(
+ $kex_algorithms,
+ array('curve25519-sha256@libssh.org')
+ );
+ }
+
+ return $kex_algorithms;
+ }
+
+ /**
+ * Returns a list of host key algorithms that phpseclib supports
+ *
+ * @return array
+ * @access public
+ */
+ function getSupportedHostKeyAlgorithms()
+ {
+ return array(
+ 'rsa-sha2-256', // RFC 8332
+ 'rsa-sha2-512', // RFC 8332
+ 'ssh-rsa', // RECOMMENDED sign Raw RSA Key
+ 'ssh-dss' // REQUIRED sign Raw DSS Key
+ );
+ }
+
+ /**
+ * Returns a list of symmetric key algorithms that phpseclib supports
+ *
+ * @return array
+ * @access public
+ */
+ function getSupportedEncryptionAlgorithms()
+ {
+ $algos = array(
+ // from <http://tools.ietf.org/html/rfc4345#section-4>:
+ 'arcfour256',
+ 'arcfour128',
+
+ //'arcfour', // OPTIONAL the ARCFOUR stream cipher with a 128-bit key
+
+ // CTR modes from <http://tools.ietf.org/html/rfc4344#section-4>:
+ 'aes128-ctr', // RECOMMENDED AES (Rijndael) in SDCTR mode, with 128-bit key
+ 'aes192-ctr', // RECOMMENDED AES with 192-bit key
+ 'aes256-ctr', // RECOMMENDED AES with 256-bit key
+
+ 'twofish128-ctr', // OPTIONAL Twofish in SDCTR mode, with 128-bit key
+ 'twofish192-ctr', // OPTIONAL Twofish with 192-bit key
+ 'twofish256-ctr', // OPTIONAL Twofish with 256-bit key
+
+ 'aes128-cbc', // RECOMMENDED AES with a 128-bit key
+ 'aes192-cbc', // OPTIONAL AES with a 192-bit key
+ 'aes256-cbc', // OPTIONAL AES in CBC mode, with a 256-bit key
+
+ 'twofish128-cbc', // OPTIONAL Twofish with a 128-bit key
+ 'twofish192-cbc', // OPTIONAL Twofish with a 192-bit key
+ 'twofish256-cbc',
+ 'twofish-cbc', // OPTIONAL alias for "twofish256-cbc"
+ // (this is being retained for historical reasons)
+
+ 'blowfish-ctr', // OPTIONAL Blowfish in SDCTR mode
+
+ 'blowfish-cbc', // OPTIONAL Blowfish in CBC mode
+
+ '3des-ctr', // RECOMMENDED Three-key 3DES in SDCTR mode
+
+ '3des-cbc', // REQUIRED three-key 3DES in CBC mode
+
+ //'none' // OPTIONAL no encryption; NOT RECOMMENDED
+ );
+
+ $engines = array(
+ Base::ENGINE_OPENSSL,
+ Base::ENGINE_MCRYPT,
+ Base::ENGINE_INTERNAL
+ );
+
+ $ciphers = array();
+ foreach ($engines as $engine) {
+ foreach ($algos as $algo) {
+ $obj = $this->_encryption_algorithm_to_crypt_instance($algo);
+ if ($obj instanceof Rijndael) {
+ $obj->setKeyLength(preg_replace('#[^\d]#', '', $algo));
+ }
+ switch ($algo) {
+ case 'arcfour128':
+ case 'arcfour256':
+ if ($engine != Base::ENGINE_INTERNAL) {
+ continue 2;
+ }
+ }
+ if ($obj->isValidEngine($engine)) {
+ $algos = array_diff($algos, array($algo));
+ $ciphers[] = $algo;
+ }
+ }
+ }
+
+ return $ciphers;
+ }
+
+ /**
+ * Returns a list of MAC algorithms that phpseclib supports
+ *
+ * @return array
+ * @access public
+ */
+ function getSupportedMACAlgorithms()
+ {
+ return array(
+ // from <http://www.ietf.org/rfc/rfc6668.txt>:
+ 'hmac-sha2-256',// RECOMMENDED HMAC-SHA256 (digest length = key length = 32)
+
+ 'hmac-sha1-96', // RECOMMENDED first 96 bits of HMAC-SHA1 (digest length = 12, key length = 20)
+ 'hmac-sha1', // REQUIRED HMAC-SHA1 (digest length = key length = 20)
+ 'hmac-md5-96', // OPTIONAL first 96 bits of HMAC-MD5 (digest length = 12, key length = 16)
+ 'hmac-md5', // OPTIONAL HMAC-MD5 (digest length = key length = 16)
+ //'none' // OPTIONAL no MAC; NOT RECOMMENDED
+ );
+ }
+
+ /**
+ * Returns a list of compression algorithms that phpseclib supports
+ *
+ * @return array
+ * @access public
+ */
+ function getSupportedCompressionAlgorithms()
+ {
+ return array(
+ 'none' // REQUIRED no compression
+ //'zlib' // OPTIONAL ZLIB (LZ77) compression
+ );
+ }
+
+ /**
+ * Return list of negotiated algorithms
+ *
+ * Uses the same format as https://www.php.net/ssh2-methods-negotiated
+ *
+ * @return array
+ * @access public
+ */
+ function getAlgorithmsNegotiated()
+ {
+ $this->_connect();
+
+ return array(
+ 'kex' => $this->kex_algorithm,
+ 'hostkey' => $this->signature_format,
+ 'client_to_server' => array(
+ 'crypt' => $this->encrypt->name,
+ 'mac' => $this->hmac_create->name,
+ 'comp' => 'none',
+ ),
+ 'server_to_client' => array(
+ 'crypt' => $this->decrypt->name,
+ 'mac' => $this->hmac_check->name,
+ 'comp' => 'none',
+ )
+ );
+ }
+
+ /**
+ * Accepts an associative array with up to four parameters as described at
+ * <https://www.php.net/manual/en/function.ssh2-connect.php>
+ *
+ * @param array $methods
+ * @access public
+ */
+ function setPreferredAlgorithms($methods)
+ {
+ $preferred = $methods;
+
+ if (isset($preferred['kex'])) {
+ $preferred['kex'] = array_intersect(
+ $preferred['kex'],
+ $this->getSupportedKEXAlgorithms()
+ );
+ }
+
+ if (isset($preferred['hostkey'])) {
+ $preferred['hostkey'] = array_intersect(
+ $preferred['hostkey'],
+ $this->getSupportedHostKeyAlgorithms()
+ );
+ }
+
+ $keys = array('client_to_server', 'server_to_client');
+ foreach ($keys as $key) {
+ if (isset($preferred[$key])) {
+ $a = &$preferred[$key];
+ if (isset($a['crypt'])) {
+ $a['crypt'] = array_intersect(
+ $a['crypt'],
+ $this->getSupportedEncryptionAlgorithms()
+ );
+ }
+ if (isset($a['comp'])) {
+ $a['comp'] = array_intersect(
+ $a['comp'],
+ $this->getSupportedCompressionAlgorithms()
+ );
+ }
+ if (isset($a['mac'])) {
+ $a['mac'] = array_intersect(
+ $a['mac'],
+ $this->getSupportedMACAlgorithms()
+ );
+ }
+ }
+ }
+
+ $keys = array(
+ 'kex',
+ 'hostkey',
+ 'client_to_server/crypt',
+ 'client_to_server/comp',
+ 'client_to_server/mac',
+ 'server_to_client/crypt',
+ 'server_to_client/comp',
+ 'server_to_client/mac',
+ );
+ foreach ($keys as $key) {
+ $p = $preferred;
+ $m = $methods;
+
+ $subkeys = explode('/', $key);
+ foreach ($subkeys as $subkey) {
+ if (!isset($p[$subkey])) {
+ continue 2;
+ }
+ $p = $p[$subkey];
+ $m = $m[$subkey];
+ }
+
+ if (count($p) != count($m)) {
+ $diff = array_diff($m, $p);
+ $msg = count($diff) == 1 ?
+ ' is not a supported algorithm' :
+ ' are not supported algorithms';
+ user_error(implode(', ', $diff) . $msg);
+ return false;
+ }
+ }
+
+ $this->preferred = $preferred;
+ }
+
+ /**
* Returns the banner message.
*
* Quoting from the RFC, "in some jurisdictions, sending a warning message before
@@ -4480,6 +4896,8 @@ class SSH2
break;
case 'ssh-rsa':
+ case 'rsa-sha2-256':
+ case 'rsa-sha2-512':
if (strlen($server_public_host_key) < 4) {
return false;
}
@@ -4502,8 +4920,21 @@ class SSH2
$signature = $this->_string_shift($signature, $temp['length']);
$rsa = new RSA();
+ switch ($this->signature_format) {
+ case 'rsa-sha2-512':
+ $hash = 'sha512';
+ break;
+ case 'rsa-sha2-256':
+ $hash = 'sha256';
+ break;
+ //case 'ssh-rsa':
+ default:
+ $hash = 'sha1';
+ }
+ $rsa->setHash($hash);
$rsa->setSignatureMode(RSA::SIGNATURE_PKCS1);
$rsa->loadKey(array('e' => $e, 'n' => $n), RSA::PUBLIC_FORMAT_RAW);
+
if (!$rsa->verify($this->exchange_hash, $signature)) {
user_error('Bad server signature');
return $this->_disconnect(NET_SSH2_DISCONNECT_HOST_KEY_NOT_VERIFIABLE);
@@ -4530,7 +4961,30 @@ class SSH2
$s = $s->modPow($e, $n);
$s = $s->toBytes();
- $h = pack('N4H*', 0x00302130, 0x0906052B, 0x0E03021A, 0x05000414, sha1($this->exchange_hash));
+ switch ($this->signature_format) {
+ case 'rsa-sha2-512':
+ $hash = 'sha512';
+ break;
+ case 'rsa-sha2-256':
+ $hash = 'sha256';
+ break;
+ //case 'ssh-rsa':
+ default:
+ $hash = 'sha1';
+ }
+ $hashObj = new Hash($hash);
+ switch ($this->signature_format) {
+ case 'rsa-sha2-512':
+ $h = pack('N5a*', 0x00305130, 0x0D060960, 0x86480165, 0x03040203, 0x05000440, $hashObj->hash($this->exchange_hash));
+ break;
+ case 'rsa-sha2-256':
+ $h = pack('N5a*', 0x00303130, 0x0D060960, 0x86480165, 0x03040201, 0x05000420, $hashObj->hash($this->exchange_hash));
+ break;
+ //case 'ssh-rsa':
+ default:
+ $hash = 'sha1';
+ $h = pack('N4a*', 0x00302130, 0x0906052B, 0x0E03021A, 0x05000414, $hashObj->hash($this->exchange_hash));
+ }
$h = chr(0x01) . str_repeat(chr(0xFF), $nLength - 2 - strlen($h)) . $h;
if ($s != $h) {
@@ -4616,4 +5070,22 @@ class SSH2
$this->windowColumns = $columns;
$this->windowRows = $rows;
}
+
+ /**
+ * Update packet types in log history
+ *
+ * @param string $old
+ * @param string $new
+ * @access private
+ */
+ function _updateLogHistory($old, $new)
+ {
+ if (defined('NET_SSH2_LOGGING') && NET_SSH2_LOGGING == self::LOG_COMPLEX) {
+ $this->message_number_log[count($this->message_number_log) - 1] = str_replace(
+ $old,
+ $new,
+ $this->message_number_log[count($this->message_number_log) - 1]
+ );
+ }
+ }
}
diff --git a/vendor/phpseclib/phpseclib/phpseclib/System/SSH/Agent.php b/vendor/phpseclib/phpseclib/phpseclib/System/SSH/Agent.php
index a4ff0549d..2b25250bd 100644
--- a/vendor/phpseclib/phpseclib/phpseclib/System/SSH/Agent.php
+++ b/vendor/phpseclib/phpseclib/phpseclib/System/SSH/Agent.php
@@ -43,7 +43,7 @@ use phpseclib\System\SSH\Agent\Identity;
*
* @package SSH\Agent
* @author Jim Wigginton <terrafrost@php.net>
- * @access internal
+ * @access public
*/
class Agent
{
@@ -117,18 +117,20 @@ class Agent
* @return \phpseclib\System\SSH\Agent
* @access public
*/
- function __construct()
+ function __construct($address = null)
{
- switch (true) {
- case isset($_SERVER['SSH_AUTH_SOCK']):
- $address = $_SERVER['SSH_AUTH_SOCK'];
- break;
- case isset($_ENV['SSH_AUTH_SOCK']):
- $address = $_ENV['SSH_AUTH_SOCK'];
- break;
- default:
- user_error('SSH_AUTH_SOCK not found');
- return false;
+ if (!$address) {
+ switch (true) {
+ case isset($_SERVER['SSH_AUTH_SOCK']):
+ $address = $_SERVER['SSH_AUTH_SOCK'];
+ break;
+ case isset($_ENV['SSH_AUTH_SOCK']):
+ $address = $_ENV['SSH_AUTH_SOCK'];
+ break;
+ default:
+ user_error('SSH_AUTH_SOCK not found');
+ return false;
+ }
}
$this->fsock = fsockopen('unix://' . $address, 0, $errno, $errstr);
@@ -155,23 +157,54 @@ class Agent
$packet = pack('NC', 1, self::SSH_AGENTC_REQUEST_IDENTITIES);
if (strlen($packet) != fputs($this->fsock, $packet)) {
user_error('Connection closed while requesting identities');
+ return array();
}
- $length = current(unpack('N', fread($this->fsock, 4)));
+ $temp = fread($this->fsock, 4);
+ if (strlen($temp) != 4) {
+ user_error('Connection closed while requesting identities');
+ return array();
+ }
+ $length = current(unpack('N', $temp));
$type = ord(fread($this->fsock, 1));
if ($type != self::SSH_AGENT_IDENTITIES_ANSWER) {
user_error('Unable to request identities');
+ return array();
}
$identities = array();
- $keyCount = current(unpack('N', fread($this->fsock, 4)));
+ $temp = fread($this->fsock, 4);
+ if (strlen($temp) != 4) {
+ user_error('Connection closed while requesting identities');
+ return array();
+ }
+ $keyCount = current(unpack('N', $temp));
for ($i = 0; $i < $keyCount; $i++) {
- $length = current(unpack('N', fread($this->fsock, 4)));
+ $temp = fread($this->fsock, 4);
+ if (strlen($temp) != 4) {
+ user_error('Connection closed while requesting identities');
+ return array();
+ }
+ $length = current(unpack('N', $temp));
$key_blob = fread($this->fsock, $length);
+ if (strlen($key_blob) != $length) {
+ user_error('Connection closed while requesting identities');
+ return array();
+ }
$key_str = 'ssh-rsa ' . base64_encode($key_blob);
- $length = current(unpack('N', fread($this->fsock, 4)));
+ $temp = fread($this->fsock, 4);
+ if (strlen($temp) != 4) {
+ user_error('Connection closed while requesting identities');
+ return array();
+ }
+ $length = current(unpack('N', $temp));
if ($length) {
- $key_str.= ' ' . fread($this->fsock, $length);
+ $temp = fread($this->fsock, $length);
+ if (strlen($temp) != $length) {
+ user_error('Connection closed while requesting identities');
+ return array();
+ }
+ $key_str.= ' ' . $temp;
}
$length = current(unpack('N', substr($key_blob, 0, 4)));
$key_type = substr($key_blob, 4, $length);
@@ -293,14 +326,24 @@ class Agent
if (strlen($this->socket_buffer) != fwrite($this->fsock, $this->socket_buffer)) {
user_error('Connection closed attempting to forward data to SSH agent');
+ return false;
}
$this->socket_buffer = '';
$this->expected_bytes = 0;
- $agent_reply_bytes = current(unpack('N', fread($this->fsock, 4)));
+ $temp = fread($this->fsock, 4);
+ if (strlen($temp) != 4) {
+ user_error('Connection closed while reading data response');
+ return false;
+ }
+ $agent_reply_bytes = current(unpack('N', $temp));
$agent_reply_data = fread($this->fsock, $agent_reply_bytes);
+ if (strlen($agent_reply_data) != $agent_reply_bytes) {
+ user_error('Connection closed while reading data response');
+ return false;
+ }
$agent_reply_data = current(unpack('a*', $agent_reply_data));
return pack('Na*', $agent_reply_bytes, $agent_reply_data);
diff --git a/vendor/phpseclib/phpseclib/phpseclib/System/SSH/Agent/Identity.php b/vendor/phpseclib/phpseclib/phpseclib/System/SSH/Agent/Identity.php
index b8cc6cded..68b6bfdfa 100644
--- a/vendor/phpseclib/phpseclib/phpseclib/System/SSH/Agent/Identity.php
+++ b/vendor/phpseclib/phpseclib/phpseclib/System/SSH/Agent/Identity.php
@@ -32,6 +32,17 @@ use phpseclib\System\SSH\Agent;
*/
class Identity
{
+ /**@+
+ * Signature Flags
+ *
+ * See https://tools.ietf.org/html/draft-miller-ssh-agent-00#section-5.3
+ *
+ * @access private
+ */
+ const SSH_AGENT_RSA2_256 = 2;
+ const SSH_AGENT_RSA2_512 = 4;
+ /**#@-*/
+
/**
* Key Object
*
@@ -60,6 +71,16 @@ class Identity
var $fsock;
/**
+ * Signature flags
+ *
+ * @var int
+ * @access private
+ * @see self::sign()
+ * @see self::setHash()
+ */
+ var $flags = 0;
+
+ /**
* Default Constructor.
*
* @param resource $fsock
@@ -127,6 +148,31 @@ class Identity
}
/**
+ * Set Hash
+ *
+ * ssh-agent doesn't support using hashes for RSA other than SHA1
+ *
+ * @param string $hash
+ * @access public
+ */
+ function setHash($hash)
+ {
+ $this->flags = 0;
+ switch ($hash) {
+ case 'sha1':
+ break;
+ case 'sha256':
+ $this->flags = self::SSH_AGENT_RSA2_256;
+ break;
+ case 'sha512':
+ $this->flags = self::SSH_AGENT_RSA2_512;
+ break;
+ default:
+ user_error('The only supported hashes for RSA are sha1, sha256 and sha512');
+ }
+ }
+
+ /**
* Create a signature
*
* See "2.6.2 Protocol 2 private key signature request"
@@ -138,21 +184,58 @@ class Identity
function sign($message)
{
// the last parameter (currently 0) is for flags and ssh-agent only defines one flag (for ssh-dss): SSH_AGENT_OLD_SIGNATURE
- $packet = pack('CNa*Na*N', Agent::SSH_AGENTC_SIGN_REQUEST, strlen($this->key_blob), $this->key_blob, strlen($message), $message, 0);
+ $packet = pack('CNa*Na*N', Agent::SSH_AGENTC_SIGN_REQUEST, strlen($this->key_blob), $this->key_blob, strlen($message), $message, $this->flags);
$packet = pack('Na*', strlen($packet), $packet);
if (strlen($packet) != fputs($this->fsock, $packet)) {
user_error('Connection closed during signing');
+ return false;
}
- $length = current(unpack('N', fread($this->fsock, 4)));
+ $temp = fread($this->fsock, 4);
+ if (strlen($temp) != 4) {
+ user_error('Connection closed during signing');
+ return false;
+ }
+ $length = current(unpack('N', $temp));
$type = ord(fread($this->fsock, 1));
if ($type != Agent::SSH_AGENT_SIGN_RESPONSE) {
user_error('Unable to retrieve signature');
+ return false;
}
$signature_blob = fread($this->fsock, $length - 1);
- // the only other signature format defined - ssh-dss - is the same length as ssh-rsa
- // the + 12 is for the other various SSH added length fields
- return substr($signature_blob, strlen('ssh-rsa') + 12);
+ if (strlen($signature_blob) != $length - 1) {
+ user_error('Connection closed during signing');
+ return false;
+ }
+ $length = current(unpack('N', $this->_string_shift($signature_blob, 4)));
+ if ($length != strlen($signature_blob)) {
+ user_error('Malformed signature blob');
+ }
+ $length = current(unpack('N', $this->_string_shift($signature_blob, 4)));
+ if ($length > strlen($signature_blob) + 4) {
+ user_error('Malformed signature blob');
+ }
+ $type = $this->_string_shift($signature_blob, $length);
+ $this->_string_shift($signature_blob, 4);
+
+ return $signature_blob;
+ }
+
+ /**
+ * String Shift
+ *
+ * Inspired by array_shift
+ *
+ * @param string $string
+ * @param int $index
+ * @return string
+ * @access private
+ */
+ function _string_shift(&$string, $index = 1)
+ {
+ $substr = substr($string, 0, $index);
+ $string = substr($string, $index);
+ return $substr;
}
}
diff --git a/vendor/simplepie/simplepie/CHANGELOG.md b/vendor/simplepie/simplepie/CHANGELOG.md
new file mode 100644
index 000000000..60395f0f7
--- /dev/null
+++ b/vendor/simplepie/simplepie/CHANGELOG.md
@@ -0,0 +1,134 @@
+## 1.5.5 (May 1, 2020)
+
+* Ensure that feeds retrieved with `force_feed` do not share the same cache as those retrieved without. [#643](https://github.com/simplepie/simplepie/pull/643)
+* Removed references to removed PHP directives and some PHP < 5.6 checks. [#645](https://github.com/simplepie/simplepie/pull/645)
+* Corrected incorrect alumni name. [#638](https://github.com/simplepie/simplepie/pull/638)
+
+## 1.5.4 (December 17, 2019)
+
+* PHP 5.6 or newer is now required. [#625](https://github.com/simplepie/simplepie/pull/625)
+* Fixed invalid docblock parameter types [#633](https://github.com/simplepie/simplepie/pull/633)
+* Added support for German short forms for weekdays and months. [#632](https://github.com/simplepie/simplepie/pull/632)
+* PHP 7.4 support: Fixed instances of accessing array offset on null type values. [#628](https://github.com/simplepie/simplepie/pull/628)
+* Return an effective feed URL when asking for non-permanent `subscribe_url`. [#627](https://github.com/simplepie/simplepie/pull/627)
+
+## 1.5.3 (September 22, 2019)
+
+* Replaced `pow()` call with `**` operator (micro performance optimization). [#622](https://github.com/simplepie/simplepie/pull/622)
+* Match links containing `feed` in the Locator class. [#621](https://github.com/simplepie/simplepie/pull/621)
+* PHP 7.4 support: Ensure the proper argument order for `implode()` calls. [#617](https://github.com/simplepie/simplepie/pull/617)
+* Added support for Russian dates. [#607](https://github.com/simplepie/simplepie/pull/607)
+* Preemptively changed `is_writeable()` calls to `is_writable()` in case the former is deprecated in PHP. [#604](https://github.com/simplepie/simplepie/pull/604)
+
+## 1.5.2 (August 2, 2018)
+
+* Added support for PHPUnit 6. [#565](https://github.com/simplepie/simplepie/pull/565)
+* Added PHP module requirements to Composer. [#590](https://github.com/simplepie/simplepie/pull/590)
+* Added support for Redis password and database. [#589](https://github.com/simplepie/simplepie/pull/589)
+* Changed the spelling of `writeable` to `writable` within inline documentation. [#586](https://github.com/simplepie/simplepie/pull/586)
+* Fixed various issues in the test suite and Travis. [#576](https://github.com/simplepie/simplepie/pull/576)
+* Removed ambiguous tests failing on `usort()` in PHP 7. [#578](https://github.com/simplepie/simplepie/pull/578)
+* Simplified logic for some function returns. [#573](https://github.com/simplepie/simplepie/pull/573)
+* Fixed inline documentation for return value types for accuracy. [#570](https://github.com/simplepie/simplepie/pull/570)
+* Fixed Travis to run `composer install`. [#567](https://github.com/simplepie/simplepie/pull/567)
+* Removed unnecessary `else`s when a value has already been returned. [#566](https://github.com/simplepie/simplepie/pull/566)
+* Fixed a bug where URL fragments are included when `SimplePie_File` normalizes URLs when really old versions of cURL are used. [#564](https://github.com/simplepie/simplepie/pull/564)
+* Updated `SimplePie_Locator` to respect cURL options specified. [#561](https://github.com/simplepie/simplepie/pull/561)
+
+## 1.5.1 (November 17, 2017)
+
+* Fixed photos so they are not added if the URL is empty. [#530](https://github.com/simplepie/simplepie/pull/530)
+* Fixed issues with retrieving feeds from behind a proxy. [#512](https://github.com/simplepie/simplepie/pull/512)/[#548](https://github.com/simplepie/simplepie/pull/548)
+* Updated favicon URL in `get_favicon()`. [#525](https://github.com/simplepie/simplepie/pull/525)
+* Fixed inline documentation typo. [#540](https://github.com/simplepie/simplepie/pull/540)
+* Removed extra closing `<a>` tag. [#537](https://github.com/simplepie/simplepie/pull/537)
+* Removed and updated feed URLs in the demo. [#535](https://github.com/simplepie/simplepie/pull/535)
+* Improvements to microformat feed parsing. [#533](https://github.com/simplepie/simplepie/pull/533)
+* Switched from regex to xpath for microformats discovery. [#536](https://github.com/simplepie/simplepie/pull/536)
+* Update the registry if the Sanitize class has been changed. [#532](https://github.com/simplepie/simplepie/pull/532)
+* Changed the sanitization type for author and category back to text from HTML. [#531](https://github.com/simplepie/simplepie/pull/531)
+
+## 1.5 (April 17, 2017)
+
+* Introduced `SimplePie_Category->get_type()` for retrieving category type. [#492](https://github.com/simplepie/simplepie/pull/492)
+* Added `$enable_exceptions` to the class property declarations for `SimplePie` class. [#504](https://github.com/simplepie/simplepie/pull/504)
+* Titles are now parsed for ATOM10 enclosure links. [#507](https://github.com/simplepie/simplepie/pull/507)
+* `$item->get_id()` can now be forced to return the supplied ID instead of generating a new one. [#509](https://github.com/simplepie/simplepie/pull/509)
+
+## 1.4.3 (November 26, 2016)
+
+* Removed support for PHP 5.2. [#469](https://github.com/simplepie/simplepie/pull/469)
+* Added support for the PHP `UConverter` class. [#485](https://github.com/simplepie/simplepie/pull/485)
+* PHP 7.1 Support: Fixed PHP error when trying to use a non-numeric value in `round()`. [#458](https://github.com/simplepie/simplepie/pull/458)
+* PHP 7 Support: Fixed deprecated message for old style constructors. [#489](https://github.com/simplepie/simplepie/pull/489)
+* Fixed the error message shown when a feed has an empty body. [#487](https://github.com/simplepie/simplepie/pull/487)
+* Added an error message when the XML or PCRE PHP extensions are missing. [#468](https://github.com/simplepie/simplepie/pull/468)
+* Check the result of sanitize before returning in `get_content()` and `get_description()`. [#494](https://github.com/simplepie/simplepie/pull/494)
+* Use `saveHTML()` to fix issues with non UTF-8 characters. [#470](https://github.com/simplepie/simplepie/pull/470)
+* Stop passing compressed data through `trim()`. [#455](https://github.com/simplepie/simplepie/pull/455)
+* Refactored the UTF-8 conversion error message. [#467](https://github.com/simplepie/simplepie/pull/467)
+* Updated the readme file. [#486](https://github.com/simplepie/simplepie/pull/486)
+* Added command line support for compayibility test. [#481](https://github.com/simplepie/simplepie/pull/481)
+* Added PHP 7.1 to the testing matrix. [#462](https://github.com/simplepie/simplepie/pull/462)
+* Use the latest HHVM version in testing (3.15.2). [#480](https://github.com/simplepie/simplepie/pull/480)
+* Added PHPUnit as a `dev-dependency` in Composer. [#463](https://github.com/simplepie/simplepie/pull/463)
+* Added `mf2/mf2` as a suggestion in Composer for use with microformats. [#491](https://github.com/simplepie/simplepie/pull/491)
+* Fixed misspelled occurrences of "separated". [#459](https://github.com/simplepie/simplepie/pull/459)
+* Improvements to the compatibility test and error messages. [#488](https://github.com/simplepie/simplepie/pull/488)
+
+## 1.4.2 (June 14, 2016)
+
+* Fixed a bug with IRI parsing.
+* More cleanly separates discovery of microformats and parsing when php-mf2 is not present.
+
+## 1.4.1 (June 2, 2016)
+
+* Fixed inconsistent hash results in `SimplePie_Item->get_id()`.
+* Leading and trailing whitespace is now trimmed from XML feed content to prevent errors. [#445](https://github.com/simplepie/simplepie/pull/445)
+* Improved support for microformat feeds.
+
+## 1.4.0 (April 25, 2016)
+
+* Dropped support for PHP 5.2. [#348](https://github.com/simplepie/simplepie/pull/348)
+* Serialized data is now used for hashing in `SimplePie_Item->get_id()`. [#348](https://github.com/simplepie/simplepie/pull/348)
+* Added support for PHP 5.5 and 5.6. [#348](https://github.com/simplepie/simplepie/pull/348)
+* Added the `add_attributes()` method to `SimplePie`. [#394](https://github.com/simplepie/simplepie/pull/394)
+* Added the `force_cache_fallback()` method to `SimplePie` to allow an expired cache to be used when a feed is unavailable. [#389](https://github.com/simplepie/simplepie/pull/389)
+* Added Memcached. [#386](https://github.com/simplepie/simplepie/pull/386)
+* Added `set_curl_options()` method to `SimplePie` to allow custom options. [#348](https://github.com/simplepie/simplepie/pull/348)
+* Added Redis Caching. [#348](https://github.com/simplepie/simplepie/pull/348)
+* Added the CEST timezone. [#380](https://github.com/simplepie/simplepie/pull/380)
+* Added support for HTTP 301 Moved Permanently. [#348](https://github.com/simplepie/simplepie/pull/348)
+* Added support for `application/x-rss+xml` in `SimplePie_Locator`. [#348](https://github.com/simplepie/simplepie/pull/348)
+* Added photo de-duping in microformats. [#348](https://github.com/simplepie/simplepie/pull/348)
+* Added decoding for special characters in MAYBE_HTML. [#400](https://github.com/simplepie/simplepie/pull/400)
+* Added `SimplePie_Exception` for internally reporting errors. Also, use this to show an error when trying to load the class instead of causing a failure. [#241](https://github.com/simplepie/simplepie/pull/241)
+* Added sanitization of the `</html>` and `</body>` tags. [#348](https://github.com/simplepie/simplepie/pull/348)
+* Added support for media thumbnails through `SimplePie_Item->get_thumbnail()`. [#348](https://github.com/simplepie/simplepie/pull/348)
+* Added the `feed_url` to a returned error message. [#348](https://github.com/simplepie/simplepie/pull/348)
+* Added cache purging after a specified period of time when using MySQL cache. [#329](https://github.com/simplepie/simplepie/pull/329)
+* Added backwards compatibility for removed `subscribe_*()` and `enable_xml_dump()` methods. [#348](https://github.com/simplepie/simplepie/pull/348)
+* Re-added the deprecated `get/set_favicon()` methods for backwards compatibility.
+* Charsets are now compared without case sensitivity to avoid duplicates. [#352](https://github.com/simplepie/simplepie/pull/352)
+* Fixed encoding of ampersands in `SimplePie->subscribe_url()`. [#348](https://github.com/simplepie/simplepie/pull/348)
+* The feed URL is now updated based on the URL returned by cURL. [#348](https://github.com/simplepie/simplepie/pull/348)
+* Explicitly use UTF-8 in `SimplePie_Misc->get_element()` and `Simple_ie_Misc->element_implode()`. [#348](https://github.com/simplepie/simplepie/pull/348)
+* Improved support, feed and authorship discovery, and parsing for microformats. [#348](https://github.com/simplepie/simplepie/pull/348)
+* `rss:pubDate` is now used over `atom:updated` when determining the posting date. [#288](https://github.com/simplepie/simplepie/pull/288)
+* Simplified the use of `mtime()` and `touch()`. [#403](https://github.com/simplepie/simplepie/pull/403)
+* All items are now forced to have a timestamp. [#348](https://github.com/simplepie/simplepie/pull/348)
+* Fixed typo in the date parser that incorrectly identified September as month 8. [#348](https://github.com/simplepie/simplepie/pull/348)
+* Fixed backwards compatibility with cache subclasses. [#243](https://github.com/simplepie/simplepie/pull/243)
+* Fixed a bug where the updated date was not fetched correctly. [#239](https://github.com/simplepie/simplepie/pull/239)
+* Fixed the datatype for `items.data` to be more appropriate in when using MySQL cache. [#302](https://github.com/simplepie/simplepie/pull/302)
+* Fixed cURL not failing when the server returns an error. [#425](https://github.com/simplepie/simplepie/pull/425)
+* Fixed an error caused when trying to instantiate a `SimplePie_File` object with a bad URI. [#272](https://github.com/simplepie/simplepie/pull/272)
+* Fixed a PHP notice that occurs when a date starts with `(`. [#348](https://github.com/simplepie/simplepie/pull/348)
+* Fixed uninitialized string offeset PHP notices. [#353](https://github.com/simplepie/simplepie/pull/353)
+* Fixed call to non-existent property in Memcache. [#311](https://github.com/simplepie/simplepie/pull/311)
+* Fixed a bug where MySQL statements were not being passed thorugh `prepare()`. [#348](https://github.com/simplepie/simplepie/pull/348)
+* Fixed an instance where an error message in `SimplePie` was not being triggered correctly. [#348](https://github.com/simplepie/simplepie/pull/348)
+* Fixed a bug with Russian feeds. [#348](https://github.com/simplepie/simplepie/pull/348)
+* Fixed an issue with memory leaks. [#287](https://github.com/simplepie/simplepie/pull/287)
+* Fixed use of `DOMElement` as array. [#315](https://github.com/simplepie/simplepie/pull/315)
+* Improved the error message when a feed cannot be found. [#348](https://github.com/simplepie/simplepie/pull/348)
diff --git a/vendor/simplepie/simplepie/LICENSE.txt b/vendor/simplepie/simplepie/LICENSE.txt
index a822a4bd9..6503e83c1 100644
--- a/vendor/simplepie/simplepie/LICENSE.txt
+++ b/vendor/simplepie/simplepie/LICENSE.txt
@@ -1,4 +1,4 @@
-Copyright (c) 2004-2007, Ryan Parman and Geoffrey Sneddon.
+Copyright (c) 2004-2007, Ryan Parman and Sam Sneddon.
All rights reserved.
Redistribution and use in source and binary forms, with or without modification, are
diff --git a/vendor/simplepie/simplepie/README.markdown b/vendor/simplepie/simplepie/README.markdown
index c346204d0..9fcc12937 100644
--- a/vendor/simplepie/simplepie/README.markdown
+++ b/vendor/simplepie/simplepie/README.markdown
@@ -11,9 +11,7 @@ compatibility and standards compliance][what_is].
Requirements
------------
-* PHP 5.3.0+ (5.3.6+ recommended since SimplePie 1.4.2)
- * Support for PHP 5.2 stopped in branch `one-dot-three`
- * Support for PHP 4 stopped in branch `one-dot-two`
+* PHP 5.6+ (Required since SimplePie 1.5.3)
* libxml2 (certain 2.7.x releases are too buggy for words, and will crash)
* One of iconv, mbstring or intl extensions
* cURL or fsockopen()
@@ -89,14 +87,14 @@ Authors and contributors
### Alumni
* [Ryan McCue][] (developer, support)
* [Ryan Parman][] (Creator, developer, evangelism, support)
-* [Geoffrey Sneddon][] (Lead developer)
+* [Sam Sneddon][] (Lead developer)
* [Michael Shipley][] (Submitter of patches, support)
* [Steve Minutillo][] (Submitter of patches)
[Malcolm Blaney]: https://unicyclic.com/mal
[Ryan McCue]: http://ryanmccue.info
[Ryan Parman]: http://ryanparman.com
-[Geoffrey Sneddon]: http://gsnedders.com
+[Sam Sneddon]: https://gsnedders.com
[Michael Shipley]: http://michaelpshipley.com
[Steve Minutillo]: http://minutillo.com/steve/
diff --git a/vendor/simplepie/simplepie/autoloader.php b/vendor/simplepie/simplepie/autoloader.php
index fd7690da2..e42f07b3a 100644
--- a/vendor/simplepie/simplepie/autoloader.php
+++ b/vendor/simplepie/simplepie/autoloader.php
@@ -5,7 +5,7 @@
* A PHP-Based RSS and Atom Feed Framework.
* Takes the hard work out of managing a complete RSS/Atom solution.
*
- * Copyright (c) 2004-2016, Ryan Parman, Geoffrey Sneddon, Ryan McCue, and contributors
+ * Copyright (c) 2004-2016, Ryan Parman, Sam Sneddon, Ryan McCue, and contributors
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification, are
@@ -33,9 +33,9 @@
* POSSIBILITY OF SUCH DAMAGE.
*
* @package SimplePie
- * @copyright 2004-2016 Ryan Parman, Geoffrey Sneddon, Ryan McCue
+ * @copyright 2004-2016 Ryan Parman, Sam Sneddon, Ryan McCue
* @author Ryan Parman
- * @author Geoffrey Sneddon
+ * @author Sam Sneddon
* @author Ryan McCue
* @link http://simplepie.org/ SimplePie
* @license http://www.opensource.org/licenses/bsd-license.php BSD License
diff --git a/vendor/simplepie/simplepie/composer.json b/vendor/simplepie/simplepie/composer.json
index b5965b26f..d76ee7d4d 100644
--- a/vendor/simplepie/simplepie/composer.json
+++ b/vendor/simplepie/simplepie/composer.json
@@ -12,8 +12,8 @@
"role": "Creator, alumnus developer"
},
{
- "name": "Geoffrey Sneddon",
- "homepage": "http://gsnedders.com/",
+ "name": "Sam Sneddon",
+ "homepage": "https://gsnedders.com/",
"role": "Alumnus developer"
},
{
@@ -24,17 +24,30 @@
}
],
"require": {
- "php": ">=5.3.0"
+ "php": ">=5.6.0",
+ "ext-pcre": "*",
+ "ext-xml": "*",
+ "ext-xmlreader": "*"
},
"require-dev": {
- "phpunit/phpunit": "~4 || ~5"
+ "phpunit/phpunit": "~5.4.3 || ~6.5"
},
"suggest": {
+ "ext-curl": "",
+ "ext-iconv": "",
+ "ext-intl": "",
+ "ext-mbstring": "",
"mf2/mf2": "Microformat module that allows for parsing HTML for microformats"
},
"autoload": {
"psr-0": {
"SimplePie": "library"
}
- }
+ },
+ "config": {
+ "bin-dir": "bin"
+ },
+ "scripts": {
+ "test": "phpunit"
+ }
}
diff --git a/vendor/simplepie/simplepie/idn/idna_convert.class.php b/vendor/simplepie/simplepie/idn/idna_convert.class.php
index eb9d5f516..ec137dc4c 100644
--- a/vendor/simplepie/simplepie/idn/idna_convert.class.php
+++ b/vendor/simplepie/simplepie/idn/idna_convert.class.php
@@ -306,20 +306,20 @@ class idna_convert
if ($this->_strict_mode) {
$this->_error('Neither email addresses nor URLs are allowed in strict mode.');
return false;
- } else {
- // Skip first char
- if ($k) {
- $encoded = '';
- $encoded = $this->_encode(array_slice($decoded, $last_begin, (($k)-$last_begin)));
- if ($encoded) {
- $output .= $encoded;
- } else {
- $output .= $this->_ucs4_to_utf8(array_slice($decoded, $last_begin, (($k)-$last_begin)));
- }
- $output .= chr($decoded[$k]);
+ }
+
+ // Skip first char
+ if ($k) {
+ $encoded = '';
+ $encoded = $this->_encode(array_slice($decoded, $last_begin, (($k)-$last_begin)));
+ if ($encoded) {
+ $output .= $encoded;
+ } else {
+ $output .= $this->_ucs4_to_utf8(array_slice($decoded, $last_begin, (($k)-$last_begin)));
}
- $last_begin = $k + 1;
+ $output .= chr($decoded[$k]);
}
+ $last_begin = $k + 1;
}
}
// Catch the rest of the string
@@ -333,13 +333,13 @@ class idna_convert
$output .= $this->_ucs4_to_utf8(array_slice($decoded, $last_begin, (($inp_len)-$last_begin)));
}
return $output;
- } else {
- if ($output = $this->_encode($decoded)) {
- return $output;
- } else {
- return $this->_ucs4_to_utf8($decoded);
- }
}
+
+ if ($output = $this->_encode($decoded)) {
+ return $output;
+ }
+
+ return $this->_ucs4_to_utf8($decoded);
}
/**
diff --git a/vendor/simplepie/simplepie/library/SimplePie.php b/vendor/simplepie/simplepie/library/SimplePie.php
index 34b6ca0c9..5ce5f82f3 100755
--- a/vendor/simplepie/simplepie/library/SimplePie.php
+++ b/vendor/simplepie/simplepie/library/SimplePie.php
@@ -5,7 +5,7 @@
* A PHP-Based RSS and Atom Feed Framework.
* Takes the hard work out of managing a complete RSS/Atom solution.
*
- * Copyright (c) 2004-2017, Ryan Parman, Geoffrey Sneddon, Ryan McCue, and contributors
+ * Copyright (c) 2004-2017, Ryan Parman, Sam Sneddon, Ryan McCue, and contributors
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification, are
@@ -33,10 +33,10 @@
* POSSIBILITY OF SUCH DAMAGE.
*
* @package SimplePie
- * @version 1.5.1
- * @copyright 2004-2017 Ryan Parman, Geoffrey Sneddon, Ryan McCue
+ * @version 1.5.5
+ * @copyright 2004-2017 Ryan Parman, Sam Sneddon, Ryan McCue
* @author Ryan Parman
- * @author Geoffrey Sneddon
+ * @author Sam Sneddon
* @author Ryan McCue
* @link http://simplepie.org/ SimplePie
* @license http://www.opensource.org/licenses/bsd-license.php BSD License
@@ -50,7 +50,7 @@ define('SIMPLEPIE_NAME', 'SimplePie');
/**
* SimplePie Version
*/
-define('SIMPLEPIE_VERSION', '1.5.1');
+define('SIMPLEPIE_VERSION', '1.5.5');
/**
* SimplePie Build
@@ -648,7 +648,7 @@ class SimplePie
* @access private
*/
public $enable_exceptions = false;
-
+
/**
* The SimplePie class contains feed level data and options
*
@@ -665,9 +665,9 @@ class SimplePie
*/
public function __construct()
{
- if (version_compare(PHP_VERSION, '5.3', '<'))
+ if (version_compare(PHP_VERSION, '5.6', '<'))
{
- trigger_error('Please upgrade to PHP 5.3 or newer.');
+ trigger_error('Please upgrade to PHP 5.6 or newer.');
die();
}
@@ -706,7 +706,7 @@ class SimplePie
*/
public function __destruct()
{
- if ((version_compare(PHP_VERSION, '5.3', '<') || !gc_enabled()) && !ini_get('zend.ze1_compatibility_mode'))
+ if (!gc_enabled())
{
if (!empty($this->data['items']))
{
@@ -1251,8 +1251,8 @@ class SimplePie
/**
* Set the handler to enable the display of cached images.
*
- * @param str $page Web-accessible path to the handler_image.php file.
- * @param str $qs The query string that the value should be passed to.
+ * @param string $page Web-accessible path to the handler_image.php file.
+ * @param string $qs The query string that the value should be passed to.
*/
public function set_image_handler($page = false, $qs = 'i')
{
@@ -1373,7 +1373,8 @@ class SimplePie
// Decide whether to enable caching
if ($this->cache && $parsed_feed_url['scheme'] !== '')
{
- $cache = $this->registry->call('Cache', 'get_handler', array($this->cache_location, call_user_func($this->cache_name_function, $this->feed_url), 'spc'));
+ $url = $this->feed_url . ($this->force_feed ? '#force_feed' : '');
+ $cache = $this->registry->call('Cache', 'get_handler', array($this->cache_location, call_user_func($this->cache_name_function, $url), 'spc'));
}
// Fetch the data via SimplePie_File into $this->raw_data
@@ -1387,7 +1388,7 @@ class SimplePie
list($headers, $sniffed) = $fetched;
}
-
+
// Empty response check
if(empty($this->raw_data)){
$this->error = "A feed could not be found at `$this->feed_url`. Empty body.";
@@ -1471,7 +1472,7 @@ class SimplePie
// Cache the file if caching is enabled
if ($cache && !$cache->save($this))
{
- trigger_error("$this->cache_location is not writeable. Make sure you've set the correct relative or absolute path, and that the location is server-writable.", E_USER_WARNING);
+ trigger_error("$this->cache_location is not writable. Make sure you've set the correct relative or absolute path, and that the location is server-writable.", E_USER_WARNING);
}
return true;
}
@@ -1640,7 +1641,7 @@ class SimplePie
if (!$this->force_feed)
{
// Check if the supplied URL is a feed, if it isn't, look for it.
- $locate = $this->registry->create('Locator', array(&$file, $this->timeout, $this->useragent, $this->max_checked_feeds));
+ $locate = $this->registry->create('Locator', array(&$file, $this->timeout, $this->useragent, $this->max_checked_feeds, $this->force_fsockopen, $this->curl_options));
if (!$locate->is_feed($file))
{
@@ -1708,12 +1709,12 @@ class SimplePie
$this->data = array('url' => $this->feed_url, 'feed_url' => $file->url, 'build' => SIMPLEPIE_BUILD);
if (!$cache->save($this))
{
- trigger_error("$this->cache_location is not writeable. Make sure you've set the correct relative or absolute path, and that the location is server-writable.", E_USER_WARNING);
+ trigger_error("$this->cache_location is not writable. Make sure you've set the correct relative or absolute path, and that the location is server-writable.", E_USER_WARNING);
}
$cache = $this->registry->call('Cache', 'get_handler', array($this->cache_location, call_user_func($this->cache_name_function, $file->url), 'spc'));
}
- $this->feed_url = $file->url;
}
+ $this->feed_url = $file->url;
$locate = null;
}
@@ -1904,14 +1905,15 @@ class SimplePie
/**
* Get the URL for the feed
- *
+ *
* When the 'permanent' mode is enabled, returns the original feed URL,
* except in the case of an `HTTP 301 Moved Permanently` status response,
* in which case the location of the first redirection is returned.
*
* When the 'permanent' mode is disabled (default),
* may or may not be different from the URL passed to {@see set_feed_url()},
- * depending on whether auto-discovery was used.
+ * depending on whether auto-discovery was used, and whether there were
+ * any redirects along the way.
*
* @since Preview Release (previously called `get_feed_url()` since SimplePie 0.8.)
* @todo Support <itunes:new-feed-url>
@@ -2138,10 +2140,8 @@ class SimplePie
{
return $this->get_link();
}
- else
- {
- return $this->subscribe_url();
- }
+
+ return $this->subscribe_url();
}
/**
@@ -2211,10 +2211,8 @@ class SimplePie
{
return $this->sanitize($return[0]['data'], SIMPLEPIE_CONSTRUCT_TEXT);
}
- else
- {
- return null;
- }
+
+ return null;
}
/**
@@ -2231,10 +2229,8 @@ class SimplePie
{
return $categories[$key];
}
- else
- {
- return null;
- }
+
+ return null;
}
/**
@@ -2296,10 +2292,8 @@ class SimplePie
{
return array_unique($categories);
}
- else
- {
- return null;
- }
+
+ return null;
}
/**
@@ -2316,10 +2310,8 @@ class SimplePie
{
return $authors[$key];
}
- else
- {
- return null;
- }
+
+ return null;
}
/**
@@ -2394,10 +2386,8 @@ class SimplePie
{
return array_unique($authors);
}
- else
- {
- return null;
- }
+
+ return null;
}
/**
@@ -2414,10 +2404,8 @@ class SimplePie
{
return $contributors[$key];
}
- else
- {
- return null;
- }
+
+ return null;
}
/**
@@ -2480,10 +2468,8 @@ class SimplePie
{
return array_unique($contributors);
}
- else
- {
- return null;
- }
+
+ return null;
}
/**
@@ -2501,10 +2487,8 @@ class SimplePie
{
return $links[$key];
}
- else
- {
- return null;
- }
+
+ return null;
}
/**
@@ -2606,10 +2590,8 @@ class SimplePie
{
return $this->data['links'][$rel];
}
- else
- {
- return null;
- }
+
+ return null;
}
public function get_all_discovered_feeds()
@@ -2664,10 +2646,8 @@ class SimplePie
{
return $this->sanitize($return[0]['data'], SIMPLEPIE_CONSTRUCT_HTML, $this->get_base($return[0]));
}
- else
- {
- return null;
- }
+
+ return null;
}
/**
@@ -2700,10 +2680,8 @@ class SimplePie
{
return $this->sanitize($return[0]['data'], SIMPLEPIE_CONSTRUCT_TEXT);
}
- else
- {
- return null;
- }
+
+ return null;
}
/**
@@ -2744,10 +2722,8 @@ class SimplePie
{
return $this->sanitize($this->data['headers']['content-language'], SIMPLEPIE_CONSTRUCT_TEXT);
}
- else
- {
- return null;
- }
+
+ return null;
}
/**
@@ -2773,10 +2749,8 @@ class SimplePie
{
return (float) $match[1];
}
- else
- {
- return null;
- }
+
+ return null;
}
/**
@@ -2805,10 +2779,8 @@ class SimplePie
{
return (float) $match[2];
}
- else
- {
- return null;
- }
+
+ return null;
}
/**
@@ -2842,10 +2814,8 @@ class SimplePie
{
return $this->sanitize($return[0]['data'], SIMPLEPIE_CONSTRUCT_TEXT);
}
- else
- {
- return null;
- }
+
+ return null;
}
/**
@@ -2885,10 +2855,8 @@ class SimplePie
{
return $this->sanitize($return[0]['data'], SIMPLEPIE_CONSTRUCT_IRI, $this->get_base($return[0]));
}
- else
- {
- return null;
- }
+
+ return null;
}
@@ -2917,10 +2885,8 @@ class SimplePie
{
return $this->sanitize($return[0]['data'], SIMPLEPIE_CONSTRUCT_IRI, $this->get_base($return[0]));
}
- else
- {
- return null;
- }
+
+ return null;
}
/**
@@ -2943,10 +2909,8 @@ class SimplePie
{
return 88.0;
}
- else
- {
- return null;
- }
+
+ return null;
}
/**
@@ -2969,10 +2933,8 @@ class SimplePie
{
return 31.0;
}
- else
- {
- return null;
- }
+
+ return null;
}
/**
@@ -2992,10 +2954,8 @@ class SimplePie
{
return $qty;
}
- else
- {
- return ($qty > $max) ? $max : $qty;
- }
+
+ return ($qty > $max) ? $max : $qty;
}
/**
@@ -3017,10 +2977,8 @@ class SimplePie
{
return $items[$key];
}
- else
- {
- return null;
- }
+
+ return null;
}
/**
@@ -3115,10 +3073,8 @@ class SimplePie
{
return array_slice($items, $start);
}
- else
- {
- return array_slice($items, $start, $end);
- }
+
+ return array_slice($items, $start, $end);
}
/**
@@ -3241,16 +3197,12 @@ class SimplePie
{
return array_slice($items, $start);
}
- else
- {
- return array_slice($items, $start, $end);
- }
- }
- else
- {
- trigger_error('Cannot merge zero SimplePie objects', E_USER_WARNING);
- return array();
+
+ return array_slice($items, $start, $end);
}
+
+ trigger_error('Cannot merge zero SimplePie objects', E_USER_WARNING);
+ return array();
}
/**
diff --git a/vendor/simplepie/simplepie/library/SimplePie/Author.php b/vendor/simplepie/simplepie/library/SimplePie/Author.php
index e6768ff29..563932f4c 100644
--- a/vendor/simplepie/simplepie/library/SimplePie/Author.php
+++ b/vendor/simplepie/simplepie/library/SimplePie/Author.php
@@ -5,7 +5,7 @@
* A PHP-Based RSS and Atom Feed Framework.
* Takes the hard work out of managing a complete RSS/Atom solution.
*
- * Copyright (c) 2004-2016, Ryan Parman, Geoffrey Sneddon, Ryan McCue, and contributors
+ * Copyright (c) 2004-2016, Ryan Parman, Sam Sneddon, Ryan McCue, and contributors
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification, are
@@ -33,9 +33,9 @@
* POSSIBILITY OF SUCH DAMAGE.
*
* @package SimplePie
- * @copyright 2004-2016 Ryan Parman, Geoffrey Sneddon, Ryan McCue
+ * @copyright 2004-2016 Ryan Parman, Sam Sneddon, Ryan McCue
* @author Ryan Parman
- * @author Geoffrey Sneddon
+ * @author Sam Sneddon
* @author Ryan McCue
* @link http://simplepie.org/ SimplePie
* @license http://www.opensource.org/licenses/bsd-license.php BSD License
@@ -113,10 +113,8 @@ class SimplePie_Author
{
return $this->name;
}
- else
- {
- return null;
- }
+
+ return null;
}
/**
@@ -130,10 +128,8 @@ class SimplePie_Author
{
return $this->link;
}
- else
- {
- return null;
- }
+
+ return null;
}
/**
@@ -147,10 +143,7 @@ class SimplePie_Author
{
return $this->email;
}
- else
- {
- return null;
- }
+
+ return null;
}
}
-
diff --git a/vendor/simplepie/simplepie/library/SimplePie/Cache.php b/vendor/simplepie/simplepie/library/SimplePie/Cache.php
index d98cc6511..9c5577d95 100644
--- a/vendor/simplepie/simplepie/library/SimplePie/Cache.php
+++ b/vendor/simplepie/simplepie/library/SimplePie/Cache.php
@@ -5,7 +5,7 @@
* A PHP-Based RSS and Atom Feed Framework.
* Takes the hard work out of managing a complete RSS/Atom solution.
*
- * Copyright (c) 2004-2016, Ryan Parman, Geoffrey Sneddon, Ryan McCue, and contributors
+ * Copyright (c) 2004-2016, Ryan Parman, Sam Sneddon, Ryan McCue, and contributors
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification, are
@@ -33,9 +33,9 @@
* POSSIBILITY OF SUCH DAMAGE.
*
* @package SimplePie
- * @copyright 2004-2016 Ryan Parman, Geoffrey Sneddon, Ryan McCue
+ * @copyright 2004-2016 Ryan Parman, Sam Sneddon, Ryan McCue
* @author Ryan Parman
- * @author Geoffrey Sneddon
+ * @author Sam Sneddon
* @author Ryan McCue
* @link http://simplepie.org/ SimplePie
* @license http://www.opensource.org/licenses/bsd-license.php BSD License
diff --git a/vendor/simplepie/simplepie/library/SimplePie/Cache/Base.php b/vendor/simplepie/simplepie/library/SimplePie/Cache/Base.php
index 333fb05cf..522ff7e10 100644
--- a/vendor/simplepie/simplepie/library/SimplePie/Cache/Base.php
+++ b/vendor/simplepie/simplepie/library/SimplePie/Cache/Base.php
@@ -5,7 +5,7 @@
* A PHP-Based RSS and Atom Feed Framework.
* Takes the hard work out of managing a complete RSS/Atom solution.
*
- * Copyright (c) 2004-2016, Ryan Parman, Geoffrey Sneddon, Ryan McCue, and contributors
+ * Copyright (c) 2004-2016, Ryan Parman, Sam Sneddon, Ryan McCue, and contributors
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification, are
@@ -33,9 +33,9 @@
* POSSIBILITY OF SUCH DAMAGE.
*
* @package SimplePie
- * @copyright 2004-2016 Ryan Parman, Geoffrey Sneddon, Ryan McCue
+ * @copyright 2004-2016 Ryan Parman, Sam Sneddon, Ryan McCue
* @author Ryan Parman
- * @author Geoffrey Sneddon
+ * @author Sam Sneddon
* @author Ryan McCue
* @link http://simplepie.org/ SimplePie
* @license http://www.opensource.org/licenses/bsd-license.php BSD License
diff --git a/vendor/simplepie/simplepie/library/SimplePie/Cache/DB.php b/vendor/simplepie/simplepie/library/SimplePie/Cache/DB.php
index 7e8f77532..74d57b8da 100644
--- a/vendor/simplepie/simplepie/library/SimplePie/Cache/DB.php
+++ b/vendor/simplepie/simplepie/library/SimplePie/Cache/DB.php
@@ -5,7 +5,7 @@
* A PHP-Based RSS and Atom Feed Framework.
* Takes the hard work out of managing a complete RSS/Atom solution.
*
- * Copyright (c) 2004-2016, Ryan Parman, Geoffrey Sneddon, Ryan McCue, and contributors
+ * Copyright (c) 2004-2016, Ryan Parman, Sam Sneddon, Ryan McCue, and contributors
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification, are
@@ -33,9 +33,9 @@
* POSSIBILITY OF SUCH DAMAGE.
*
* @package SimplePie
- * @copyright 2004-2016 Ryan Parman, Geoffrey Sneddon, Ryan McCue
+ * @copyright 2004-2016 Ryan Parman, Sam Sneddon, Ryan McCue
* @author Ryan Parman
- * @author Geoffrey Sneddon
+ * @author Sam Sneddon
* @author Ryan McCue
* @link http://simplepie.org/ SimplePie
* @license http://www.opensource.org/licenses/bsd-license.php BSD License
diff --git a/vendor/simplepie/simplepie/library/SimplePie/Cache/File.php b/vendor/simplepie/simplepie/library/SimplePie/Cache/File.php
index 6ba6c5f6e..03758e923 100644
--- a/vendor/simplepie/simplepie/library/SimplePie/Cache/File.php
+++ b/vendor/simplepie/simplepie/library/SimplePie/Cache/File.php
@@ -5,7 +5,7 @@
* A PHP-Based RSS and Atom Feed Framework.
* Takes the hard work out of managing a complete RSS/Atom solution.
*
- * Copyright (c) 2004-2016, Ryan Parman, Geoffrey Sneddon, Ryan McCue, and contributors
+ * Copyright (c) 2004-2016, Ryan Parman, Sam Sneddon, Ryan McCue, and contributors
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification, are
@@ -33,9 +33,9 @@
* POSSIBILITY OF SUCH DAMAGE.
*
* @package SimplePie
- * @copyright 2004-2016 Ryan Parman, Geoffrey Sneddon, Ryan McCue
+ * @copyright 2004-2016 Ryan Parman, Sam Sneddon, Ryan McCue
* @author Ryan Parman
- * @author Geoffrey Sneddon
+ * @author Sam Sneddon
* @author Ryan McCue
* @link http://simplepie.org/ SimplePie
* @license http://www.opensource.org/licenses/bsd-license.php BSD License
@@ -101,7 +101,7 @@ class SimplePie_Cache_File implements SimplePie_Cache_Base
*/
public function save($data)
{
- if (file_exists($this->name) && is_writeable($this->name) || file_exists($this->location) && is_writeable($this->location))
+ if (file_exists($this->name) && is_writable($this->name) || file_exists($this->location) && is_writable($this->location))
{
if ($data instanceof SimplePie)
{
diff --git a/vendor/simplepie/simplepie/library/SimplePie/Cache/Memcache.php b/vendor/simplepie/simplepie/library/SimplePie/Cache/Memcache.php
index 5190eef93..caf785275 100644
--- a/vendor/simplepie/simplepie/library/SimplePie/Cache/Memcache.php
+++ b/vendor/simplepie/simplepie/library/SimplePie/Cache/Memcache.php
@@ -5,7 +5,7 @@
* A PHP-Based RSS and Atom Feed Framework.
* Takes the hard work out of managing a complete RSS/Atom solution.
*
- * Copyright (c) 2004-2016, Ryan Parman, Geoffrey Sneddon, Ryan McCue, and contributors
+ * Copyright (c) 2004-2016, Ryan Parman, Sam Sneddon, Ryan McCue, and contributors
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification, are
@@ -33,9 +33,9 @@
* POSSIBILITY OF SUCH DAMAGE.
*
* @package SimplePie
- * @copyright 2004-2016 Ryan Parman, Geoffrey Sneddon, Ryan McCue
+ * @copyright 2004-2016 Ryan Parman, Sam Sneddon, Ryan McCue
* @author Ryan Parman
- * @author Geoffrey Sneddon
+ * @author Sam Sneddon
* @author Ryan McCue
* @link http://simplepie.org/ SimplePie
* @license http://www.opensource.org/licenses/bsd-license.php BSD License
diff --git a/vendor/simplepie/simplepie/library/SimplePie/Cache/Memcached.php b/vendor/simplepie/simplepie/library/SimplePie/Cache/Memcached.php
index 1f73b3890..0b40d87c8 100755
--- a/vendor/simplepie/simplepie/library/SimplePie/Cache/Memcached.php
+++ b/vendor/simplepie/simplepie/library/SimplePie/Cache/Memcached.php
@@ -5,7 +5,7 @@
* A PHP-Based RSS and Atom Feed Framework.
* Takes the hard work out of managing a complete RSS/Atom solution.
*
- * Copyright (c) 2004-2016, Ryan Parman, Geoffrey Sneddon, Ryan McCue, and contributors
+ * Copyright (c) 2004-2016, Ryan Parman, Sam Sneddon, Ryan McCue, and contributors
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification, are
@@ -33,9 +33,9 @@
* POSSIBILITY OF SUCH DAMAGE.
*
* @package SimplePie
- * @copyright 2004-2016 Ryan Parman, Geoffrey Sneddon, Ryan McCue
+ * @copyright 2004-2016 Ryan Parman, Sam Sneddon, Ryan McCue
* @author Ryan Parman
- * @author Geoffrey Sneddon
+ * @author Sam Sneddon
* @author Ryan McCue
* @link http://simplepie.org/ SimplePie
* @license http://www.opensource.org/licenses/bsd-license.php BSD License
diff --git a/vendor/simplepie/simplepie/library/SimplePie/Cache/MySQL.php b/vendor/simplepie/simplepie/library/SimplePie/Cache/MySQL.php
index 8686b6c67..a684eb833 100644
--- a/vendor/simplepie/simplepie/library/SimplePie/Cache/MySQL.php
+++ b/vendor/simplepie/simplepie/library/SimplePie/Cache/MySQL.php
@@ -5,7 +5,7 @@
* A PHP-Based RSS and Atom Feed Framework.
* Takes the hard work out of managing a complete RSS/Atom solution.
*
- * Copyright (c) 2004-2016, Ryan Parman, Geoffrey Sneddon, Ryan McCue, and contributors
+ * Copyright (c) 2004-2016, Ryan Parman, Sam Sneddon, Ryan McCue, and contributors
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification, are
@@ -33,9 +33,9 @@
* POSSIBILITY OF SUCH DAMAGE.
*
* @package SimplePie
- * @copyright 2004-2016 Ryan Parman, Geoffrey Sneddon, Ryan McCue
+ * @copyright 2004-2016 Ryan Parman, Sam Sneddon, Ryan McCue
* @author Ryan Parman
- * @author Geoffrey Sneddon
+ * @author Sam Sneddon
* @author Ryan McCue
* @link http://simplepie.org/ SimplePie
* @license http://www.opensource.org/licenses/bsd-license.php BSD License
@@ -96,7 +96,7 @@ class SimplePie_Cache_MySQL extends SimplePie_Cache_DB
'cache_purge_time' => 2592000
),
);
-
+
$this->options = SimplePie_Misc::array_merge_recursive($this->options, SimplePie_Cache::parse_URL($location));
// Path is prefixed with a "/"
@@ -395,10 +395,8 @@ class SimplePie_Cache_MySQL extends SimplePie_Cache_DB
{
return $time;
}
- else
- {
- return false;
- }
+
+ return false;
}
/**
@@ -416,14 +414,8 @@ class SimplePie_Cache_MySQL extends SimplePie_Cache_DB
$query = $this->mysql->prepare('UPDATE `' . $this->options['extras']['prefix'] . 'cache_data` SET `mtime` = :time WHERE `id` = :id');
$query->bindValue(':time', time());
$query->bindValue(':id', $this->id);
- if ($query->execute() && $query->rowCount() > 0)
- {
- return true;
- }
- else
- {
- return false;
- }
+
+ return $query->execute() && $query->rowCount() > 0;
}
/**
@@ -442,13 +434,7 @@ class SimplePie_Cache_MySQL extends SimplePie_Cache_DB
$query->bindValue(':id', $this->id);
$query2 = $this->mysql->prepare('DELETE FROM `' . $this->options['extras']['prefix'] . 'items` WHERE `feed_id` = :id');
$query2->bindValue(':id', $this->id);
- if ($query->execute() && $query2->execute())
- {
- return true;
- }
- else
- {
- return false;
- }
+
+ return $query->execute() && $query2->execute();
}
}
diff --git a/vendor/simplepie/simplepie/library/SimplePie/Cache/Redis.php b/vendor/simplepie/simplepie/library/SimplePie/Cache/Redis.php
index 04d72c79a..dbc88e829 100644
--- a/vendor/simplepie/simplepie/library/SimplePie/Cache/Redis.php
+++ b/vendor/simplepie/simplepie/library/SimplePie/Cache/Redis.php
@@ -65,6 +65,12 @@ class SimplePie_Cache_Redis implements SimplePie_Cache_Base {
$parsed = SimplePie_Cache::parse_URL($location);
$redis = new Redis();
$redis->connect($parsed['host'], $parsed['port']);
+ if (isset($parsed['pass'])) {
+ $redis->auth($parsed['pass']);
+ }
+ if (isset($parsed['path'])) {
+ $redis->select((int)substr($parsed['path'], 1));
+ }
$this->cache = $redis;
if (!is_null($options) && is_array($options)) {
diff --git a/vendor/simplepie/simplepie/library/SimplePie/Caption.php b/vendor/simplepie/simplepie/library/SimplePie/Caption.php
index abf07de1b..3d7bfdd71 100644
--- a/vendor/simplepie/simplepie/library/SimplePie/Caption.php
+++ b/vendor/simplepie/simplepie/library/SimplePie/Caption.php
@@ -5,7 +5,7 @@
* A PHP-Based RSS and Atom Feed Framework.
* Takes the hard work out of managing a complete RSS/Atom solution.
*
- * Copyright (c) 2004-2016, Ryan Parman, Geoffrey Sneddon, Ryan McCue, and contributors
+ * Copyright (c) 2004-2016, Ryan Parman, Sam Sneddon, Ryan McCue, and contributors
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification, are
@@ -33,9 +33,9 @@
* POSSIBILITY OF SUCH DAMAGE.
*
* @package SimplePie
- * @copyright 2004-2016 Ryan Parman, Geoffrey Sneddon, Ryan McCue
+ * @copyright 2004-2016 Ryan Parman, Sam Sneddon, Ryan McCue
* @author Ryan Parman
- * @author Geoffrey Sneddon
+ * @author Sam Sneddon
* @author Ryan McCue
* @link http://simplepie.org/ SimplePie
* @license http://www.opensource.org/licenses/bsd-license.php BSD License
@@ -131,10 +131,8 @@ class SimplePie_Caption
{
return $this->endTime;
}
- else
- {
- return null;
- }
+
+ return null;
}
/**
@@ -149,10 +147,8 @@ class SimplePie_Caption
{
return $this->lang;
}
- else
- {
- return null;
- }
+
+ return null;
}
/**
@@ -166,10 +162,8 @@ class SimplePie_Caption
{
return $this->startTime;
}
- else
- {
- return null;
- }
+
+ return null;
}
/**
@@ -183,10 +177,8 @@ class SimplePie_Caption
{
return $this->text;
}
- else
- {
- return null;
- }
+
+ return null;
}
/**
@@ -200,10 +192,7 @@ class SimplePie_Caption
{
return $this->type;
}
- else
- {
- return null;
- }
+
+ return null;
}
}
-
diff --git a/vendor/simplepie/simplepie/library/SimplePie/Category.php b/vendor/simplepie/simplepie/library/SimplePie/Category.php
index df0f13f9a..e4dabed8b 100644
--- a/vendor/simplepie/simplepie/library/SimplePie/Category.php
+++ b/vendor/simplepie/simplepie/library/SimplePie/Category.php
@@ -5,7 +5,7 @@
* A PHP-Based RSS and Atom Feed Framework.
* Takes the hard work out of managing a complete RSS/Atom solution.
*
- * Copyright (c) 2004-2016, Ryan Parman, Geoffrey Sneddon, Ryan McCue, and contributors
+ * Copyright (c) 2004-2016, Ryan Parman, Sam Sneddon, Ryan McCue, and contributors
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification, are
@@ -33,9 +33,9 @@
* POSSIBILITY OF SUCH DAMAGE.
*
* @package SimplePie
- * @copyright 2004-2016 Ryan Parman, Geoffrey Sneddon, Ryan McCue
+ * @copyright 2004-2016 Ryan Parman, Sam Sneddon, Ryan McCue
* @author Ryan Parman
- * @author Geoffrey Sneddon
+ * @author Sam Sneddon
* @author Ryan McCue
* @link http://simplepie.org/ SimplePie
* @license http://www.opensource.org/licenses/bsd-license.php BSD License
diff --git a/vendor/simplepie/simplepie/library/SimplePie/Content/Type/Sniffer.php b/vendor/simplepie/simplepie/library/SimplePie/Content/Type/Sniffer.php
index ff35de614..39972b5a7 100644
--- a/vendor/simplepie/simplepie/library/SimplePie/Content/Type/Sniffer.php
+++ b/vendor/simplepie/simplepie/library/SimplePie/Content/Type/Sniffer.php
@@ -5,7 +5,7 @@
* A PHP-Based RSS and Atom Feed Framework.
* Takes the hard work out of managing a complete RSS/Atom solution.
*
- * Copyright (c) 2004-2016, Ryan Parman, Geoffrey Sneddon, Ryan McCue, and contributors
+ * Copyright (c) 2004-2016, Ryan Parman, Sam Sneddon, Ryan McCue, and contributors
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification, are
@@ -33,9 +33,9 @@
* POSSIBILITY OF SUCH DAMAGE.
*
* @package SimplePie
- * @copyright 2004-2016 Ryan Parman, Geoffrey Sneddon, Ryan McCue
+ * @copyright 2004-2016 Ryan Parman, Sam Sneddon, Ryan McCue
* @author Ryan Parman
- * @author Geoffrey Sneddon
+ * @author Sam Sneddon
* @author Ryan McCue
* @link http://simplepie.org/ SimplePie
* @license http://www.opensource.org/licenses/bsd-license.php BSD License
@@ -120,24 +120,18 @@ class SimplePie_Content_Type_Sniffer
{
return $return;
}
- else
- {
- return $official;
- }
+
+ return $official;
}
elseif ($official === 'text/html')
{
return $this->feed_or_html();
}
- else
- {
- return $official;
- }
- }
- else
- {
- return $this->unknown();
+
+ return $official;
}
+
+ return $this->unknown();
}
/**
@@ -158,10 +152,8 @@ class SimplePie_Content_Type_Sniffer
{
return 'application/octect-stream';
}
- else
- {
- return 'text/plain';
- }
+
+ return 'text/plain';
}
/**
@@ -207,10 +199,8 @@ class SimplePie_Content_Type_Sniffer
{
return 'image/vnd.microsoft.icon';
}
- else
- {
- return $this->text_or_binary();
- }
+
+ return $this->text_or_binary();
}
/**
@@ -241,10 +231,8 @@ class SimplePie_Content_Type_Sniffer
{
return 'image/vnd.microsoft.icon';
}
- else
- {
- return false;
- }
+
+ return false;
}
/**
@@ -328,4 +316,3 @@ class SimplePie_Content_Type_Sniffer
return 'text/html';
}
}
-
diff --git a/vendor/simplepie/simplepie/library/SimplePie/Copyright.php b/vendor/simplepie/simplepie/library/SimplePie/Copyright.php
index 3f3d07d3b..92f9b0947 100644
--- a/vendor/simplepie/simplepie/library/SimplePie/Copyright.php
+++ b/vendor/simplepie/simplepie/library/SimplePie/Copyright.php
@@ -5,7 +5,7 @@
* A PHP-Based RSS and Atom Feed Framework.
* Takes the hard work out of managing a complete RSS/Atom solution.
*
- * Copyright (c) 2004-2016, Ryan Parman, Geoffrey Sneddon, Ryan McCue, and contributors
+ * Copyright (c) 2004-2016, Ryan Parman, Sam Sneddon, Ryan McCue, and contributors
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification, are
@@ -33,9 +33,9 @@
* POSSIBILITY OF SUCH DAMAGE.
*
* @package SimplePie
- * @copyright 2004-2016 Ryan Parman, Geoffrey Sneddon, Ryan McCue
+ * @copyright 2004-2016 Ryan Parman, Sam Sneddon, Ryan McCue
* @author Ryan Parman
- * @author Geoffrey Sneddon
+ * @author Sam Sneddon
* @author Ryan McCue
* @link http://simplepie.org/ SimplePie
* @license http://www.opensource.org/licenses/bsd-license.php BSD License
@@ -103,10 +103,8 @@ class SimplePie_Copyright
{
return $this->url;
}
- else
- {
- return null;
- }
+
+ return null;
}
/**
@@ -120,10 +118,7 @@ class SimplePie_Copyright
{
return $this->label;
}
- else
- {
- return null;
- }
+
+ return null;
}
}
-
diff --git a/vendor/simplepie/simplepie/library/SimplePie/Core.php b/vendor/simplepie/simplepie/library/SimplePie/Core.php
index c856ba361..ffcca46f5 100644
--- a/vendor/simplepie/simplepie/library/SimplePie/Core.php
+++ b/vendor/simplepie/simplepie/library/SimplePie/Core.php
@@ -5,7 +5,7 @@
* A PHP-Based RSS and Atom Feed Framework.
* Takes the hard work out of managing a complete RSS/Atom solution.
*
- * Copyright (c) 2004-2016, Ryan Parman, Geoffrey Sneddon, Ryan McCue, and contributors
+ * Copyright (c) 2004-2016, Ryan Parman, Sam Sneddon, Ryan McCue, and contributors
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification, are
@@ -33,9 +33,9 @@
* POSSIBILITY OF SUCH DAMAGE.
*
* @package SimplePie
- * @copyright 2004-2016 Ryan Parman, Geoffrey Sneddon, Ryan McCue
+ * @copyright 2004-2016 Ryan Parman, Sam Sneddon, Ryan McCue
* @author Ryan Parman
- * @author Geoffrey Sneddon
+ * @author Sam Sneddon
* @author Ryan McCue
* @link http://simplepie.org/ SimplePie
* @license http://www.opensource.org/licenses/bsd-license.php BSD License
diff --git a/vendor/simplepie/simplepie/library/SimplePie/Credit.php b/vendor/simplepie/simplepie/library/SimplePie/Credit.php
index 9bad9ef34..d6ff07eba 100644
--- a/vendor/simplepie/simplepie/library/SimplePie/Credit.php
+++ b/vendor/simplepie/simplepie/library/SimplePie/Credit.php
@@ -5,7 +5,7 @@
* A PHP-Based RSS and Atom Feed Framework.
* Takes the hard work out of managing a complete RSS/Atom solution.
*
- * Copyright (c) 2004-2016, Ryan Parman, Geoffrey Sneddon, Ryan McCue, and contributors
+ * Copyright (c) 2004-2016, Ryan Parman, Sam Sneddon, Ryan McCue, and contributors
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification, are
@@ -33,9 +33,9 @@
* POSSIBILITY OF SUCH DAMAGE.
*
* @package SimplePie
- * @copyright 2004-2016 Ryan Parman, Geoffrey Sneddon, Ryan McCue
+ * @copyright 2004-2016 Ryan Parman, Sam Sneddon, Ryan McCue
* @author Ryan Parman
- * @author Geoffrey Sneddon
+ * @author Sam Sneddon
* @author Ryan McCue
* @link http://simplepie.org/ SimplePie
* @license http://www.opensource.org/licenses/bsd-license.php BSD License
@@ -112,10 +112,8 @@ class SimplePie_Credit
{
return $this->role;
}
- else
- {
- return null;
- }
+
+ return null;
}
/**
@@ -129,10 +127,8 @@ class SimplePie_Credit
{
return $this->scheme;
}
- else
- {
- return null;
- }
+
+ return null;
}
/**
@@ -146,10 +142,7 @@ class SimplePie_Credit
{
return $this->name;
}
- else
- {
- return null;
- }
+
+ return null;
}
}
-
diff --git a/vendor/simplepie/simplepie/library/SimplePie/Decode/HTML/Entities.php b/vendor/simplepie/simplepie/library/SimplePie/Decode/HTML/Entities.php
index de3f2cb53..a43c374b3 100644
--- a/vendor/simplepie/simplepie/library/SimplePie/Decode/HTML/Entities.php
+++ b/vendor/simplepie/simplepie/library/SimplePie/Decode/HTML/Entities.php
@@ -5,7 +5,7 @@
* A PHP-Based RSS and Atom Feed Framework.
* Takes the hard work out of managing a complete RSS/Atom solution.
*
- * Copyright (c) 2004-2016, Ryan Parman, Geoffrey Sneddon, Ryan McCue, and contributors
+ * Copyright (c) 2004-2016, Ryan Parman, Sam Sneddon, Ryan McCue, and contributors
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification, are
@@ -33,9 +33,9 @@
* POSSIBILITY OF SUCH DAMAGE.
*
* @package SimplePie
- * @copyright 2004-2016 Ryan Parman, Geoffrey Sneddon, Ryan McCue
+ * @copyright 2004-2016 Ryan Parman, Sam Sneddon, Ryan McCue
* @author Ryan Parman
- * @author Geoffrey Sneddon
+ * @author Sam Sneddon
* @author Ryan McCue
* @link http://simplepie.org/ SimplePie
* @license http://www.opensource.org/licenses/bsd-license.php BSD License
@@ -117,10 +117,8 @@ class SimplePie_Decode_HTML_Entities
$this->consumed .= $this->data[$this->position];
return $this->data[$this->position++];
}
- else
- {
- return false;
- }
+
+ return false;
}
/**
@@ -139,10 +137,8 @@ class SimplePie_Decode_HTML_Entities
$this->position += $len;
return $data;
}
- else
- {
- return false;
- }
+
+ return false;
}
/**
@@ -612,4 +608,3 @@ class SimplePie_Decode_HTML_Entities
}
}
}
-
diff --git a/vendor/simplepie/simplepie/library/SimplePie/Enclosure.php b/vendor/simplepie/simplepie/library/SimplePie/Enclosure.php
index 15060e193..32216d848 100644
--- a/vendor/simplepie/simplepie/library/SimplePie/Enclosure.php
+++ b/vendor/simplepie/simplepie/library/SimplePie/Enclosure.php
@@ -5,7 +5,7 @@
* A PHP-Based RSS and Atom Feed Framework.
* Takes the hard work out of managing a complete RSS/Atom solution.
*
- * Copyright (c) 2004-2016, Ryan Parman, Geoffrey Sneddon, Ryan McCue, and contributors
+ * Copyright (c) 2004-2016, Ryan Parman, Sam Sneddon, Ryan McCue, and contributors
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification, are
@@ -33,9 +33,9 @@
* POSSIBILITY OF SUCH DAMAGE.
*
* @package SimplePie
- * @copyright 2004-2016 Ryan Parman, Geoffrey Sneddon, Ryan McCue
+ * @copyright 2004-2016 Ryan Parman, Sam Sneddon, Ryan McCue
* @author Ryan Parman
- * @author Geoffrey Sneddon
+ * @author Sam Sneddon
* @author Ryan McCue
* @link http://simplepie.org/ SimplePie
* @license http://www.opensource.org/licenses/bsd-license.php BSD License
@@ -282,10 +282,8 @@ class SimplePie_Enclosure
{
return $this->bitrate;
}
- else
- {
- return null;
- }
+
+ return null;
}
/**
@@ -301,10 +299,8 @@ class SimplePie_Enclosure
{
return $captions[$key];
}
- else
- {
- return null;
- }
+
+ return null;
}
/**
@@ -318,10 +314,8 @@ class SimplePie_Enclosure
{
return $this->captions;
}
- else
- {
- return null;
- }
+
+ return null;
}
/**
@@ -337,10 +331,8 @@ class SimplePie_Enclosure
{
return $categories[$key];
}
- else
- {
- return null;
- }
+
+ return null;
}
/**
@@ -354,10 +346,8 @@ class SimplePie_Enclosure
{
return $this->categories;
}
- else
- {
- return null;
- }
+
+ return null;
}
/**
@@ -371,10 +361,8 @@ class SimplePie_Enclosure
{
return $this->channels;
}
- else
- {
- return null;
- }
+
+ return null;
}
/**
@@ -388,10 +376,8 @@ class SimplePie_Enclosure
{
return $this->copyright;
}
- else
- {
- return null;
- }
+
+ return null;
}
/**
@@ -407,10 +393,8 @@ class SimplePie_Enclosure
{
return $credits[$key];
}
- else
- {
- return null;
- }
+
+ return null;
}
/**
@@ -424,10 +408,8 @@ class SimplePie_Enclosure
{
return $this->credits;
}
- else
- {
- return null;
- }
+
+ return null;
}
/**
@@ -441,10 +423,8 @@ class SimplePie_Enclosure
{
return $this->description;
}
- else
- {
- return null;
- }
+
+ return null;
}
/**
@@ -462,15 +442,11 @@ class SimplePie_Enclosure
$time = SimplePie_Misc::time_hms($this->duration);
return $time;
}
- else
- {
- return $this->duration;
- }
- }
- else
- {
- return null;
+
+ return $this->duration;
}
+
+ return null;
}
/**
@@ -484,10 +460,8 @@ class SimplePie_Enclosure
{
return $this->expression;
}
- else
- {
- return 'full';
- }
+
+ return 'full';
}
/**
@@ -519,10 +493,8 @@ class SimplePie_Enclosure
{
return $this->framerate;
}
- else
- {
- return null;
- }
+
+ return null;
}
/**
@@ -549,10 +521,8 @@ class SimplePie_Enclosure
{
return $hashes[$key];
}
- else
- {
- return null;
- }
+
+ return null;
}
/**
@@ -566,10 +536,8 @@ class SimplePie_Enclosure
{
return $this->hashes;
}
- else
- {
- return null;
- }
+
+ return null;
}
/**
@@ -583,10 +551,8 @@ class SimplePie_Enclosure
{
return $this->height;
}
- else
- {
- return null;
- }
+
+ return null;
}
/**
@@ -601,10 +567,8 @@ class SimplePie_Enclosure
{
return $this->lang;
}
- else
- {
- return null;
- }
+
+ return null;
}
/**
@@ -620,10 +584,8 @@ class SimplePie_Enclosure
{
return $keywords[$key];
}
- else
- {
- return null;
- }
+
+ return null;
}
/**
@@ -637,10 +599,8 @@ class SimplePie_Enclosure
{
return $this->keywords;
}
- else
- {
- return null;
- }
+
+ return null;
}
/**
@@ -654,10 +614,8 @@ class SimplePie_Enclosure
{
return $this->length;
}
- else
- {
- return null;
- }
+
+ return null;
}
/**
@@ -671,10 +629,8 @@ class SimplePie_Enclosure
{
return urldecode($this->link);
}
- else
- {
- return null;
- }
+
+ return null;
}
/**
@@ -689,10 +645,8 @@ class SimplePie_Enclosure
{
return $this->medium;
}
- else
- {
- return null;
- }
+
+ return null;
}
/**
@@ -707,10 +661,8 @@ class SimplePie_Enclosure
{
return $this->player;
}
- else
- {
- return null;
- }
+
+ return null;
}
/**
@@ -726,10 +678,8 @@ class SimplePie_Enclosure
{
return $ratings[$key];
}
- else
- {
- return null;
- }
+
+ return null;
}
/**
@@ -743,10 +693,8 @@ class SimplePie_Enclosure
{
return $this->ratings;
}
- else
- {
- return null;
- }
+
+ return null;
}
/**
@@ -762,10 +710,8 @@ class SimplePie_Enclosure
{
return $restrictions[$key];
}
- else
- {
- return null;
- }
+
+ return null;
}
/**
@@ -779,10 +725,8 @@ class SimplePie_Enclosure
{
return $this->restrictions;
}
- else
- {
- return null;
- }
+
+ return null;
}
/**
@@ -796,10 +740,8 @@ class SimplePie_Enclosure
{
return $this->samplingrate;
}
- else
- {
- return null;
- }
+
+ return null;
}
/**
@@ -814,10 +756,8 @@ class SimplePie_Enclosure
{
return round($length/1048576, 2);
}
- else
- {
- return null;
- }
+
+ return null;
}
/**
@@ -833,10 +773,8 @@ class SimplePie_Enclosure
{
return $thumbnails[$key];
}
- else
- {
- return null;
- }
+
+ return null;
}
/**
@@ -850,10 +788,8 @@ class SimplePie_Enclosure
{
return $this->thumbnails;
}
- else
- {
- return null;
- }
+
+ return null;
}
/**
@@ -867,10 +803,8 @@ class SimplePie_Enclosure
{
return $this->title;
}
- else
- {
- return null;
- }
+
+ return null;
}
/**
@@ -885,10 +819,8 @@ class SimplePie_Enclosure
{
return $this->type;
}
- else
- {
- return null;
- }
+
+ return null;
}
/**
@@ -902,10 +834,8 @@ class SimplePie_Enclosure
{
return $this->width;
}
- else
- {
- return null;
- }
+
+ return null;
}
/**
@@ -1365,15 +1295,10 @@ class SimplePie_Enclosure
{
return 'mp3';
}
- else
- {
- return null;
- }
- }
- else
- {
- return $type;
+
+ return null;
}
+
+ return $type;
}
}
-
diff --git a/vendor/simplepie/simplepie/library/SimplePie/Exception.php b/vendor/simplepie/simplepie/library/SimplePie/Exception.php
index 53c015e77..7a04c560c 100644
--- a/vendor/simplepie/simplepie/library/SimplePie/Exception.php
+++ b/vendor/simplepie/simplepie/library/SimplePie/Exception.php
@@ -5,7 +5,7 @@
* A PHP-Based RSS and Atom Feed Framework.
* Takes the hard work out of managing a complete RSS/Atom solution.
*
- * Copyright (c) 2004-2016, Ryan Parman, Geoffrey Sneddon, Ryan McCue, and contributors
+ * Copyright (c) 2004-2016, Ryan Parman, Sam Sneddon, Ryan McCue, and contributors
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification, are
@@ -33,9 +33,9 @@
* POSSIBILITY OF SUCH DAMAGE.
*
* @package SimplePie
- * @copyright 2004-2016 Ryan Parman, Geoffrey Sneddon, Ryan McCue
+ * @copyright 2004-2016 Ryan Parman, Sam Sneddon, Ryan McCue
* @author Ryan Parman
- * @author Geoffrey Sneddon
+ * @author Sam Sneddon
* @author Ryan McCue
* @link http://simplepie.org/ SimplePie
* @license http://www.opensource.org/licenses/bsd-license.php BSD License
diff --git a/vendor/simplepie/simplepie/library/SimplePie/File.php b/vendor/simplepie/simplepie/library/SimplePie/File.php
index 2bb0a3b44..82db47ec9 100644
--- a/vendor/simplepie/simplepie/library/SimplePie/File.php
+++ b/vendor/simplepie/simplepie/library/SimplePie/File.php
@@ -5,7 +5,7 @@
* A PHP-Based RSS and Atom Feed Framework.
* Takes the hard work out of managing a complete RSS/Atom solution.
*
- * Copyright (c) 2004-2016, Ryan Parman, Geoffrey Sneddon, Ryan McCue, and contributors
+ * Copyright (c) 2004-2016, Ryan Parman, Sam Sneddon, Ryan McCue, and contributors
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification, are
@@ -33,9 +33,9 @@
* POSSIBILITY OF SUCH DAMAGE.
*
* @package SimplePie
- * @copyright 2004-2016 Ryan Parman, Geoffrey Sneddon, Ryan McCue
+ * @copyright 2004-2016 Ryan Parman, Sam Sneddon, Ryan McCue
* @author Ryan Parman
- * @author Geoffrey Sneddon
+ * @author Sam Sneddon
* @author Ryan McCue
* @link http://simplepie.org/ SimplePie
* @license http://www.opensource.org/licenses/bsd-license.php BSD License
@@ -71,7 +71,7 @@ class SimplePie_File
{
$idn = new idna_convert();
$parsed = SimplePie_Misc::parse_url($url);
- $url = SimplePie_Misc::compress_parse_url($parsed['scheme'], $idn->encode($parsed['authority']), $parsed['path'], $parsed['query'], $parsed['fragment']);
+ $url = SimplePie_Misc::compress_parse_url($parsed['scheme'], $idn->encode($parsed['authority']), $parsed['path'], $parsed['query'], NULL);
}
$this->url = $url;
$this->permanent_url = $url;
@@ -109,7 +109,7 @@ class SimplePie_File
curl_setopt($fp, CURLOPT_REFERER, $url);
curl_setopt($fp, CURLOPT_USERAGENT, $useragent);
curl_setopt($fp, CURLOPT_HTTPHEADER, $headers2);
- if (!ini_get('open_basedir') && !ini_get('safe_mode') && version_compare(SimplePie_Misc::get_curl_version(), '7.15.2', '>='))
+ if (!ini_get('open_basedir') && version_compare(SimplePie_Misc::get_curl_version(), '7.15.2', '>='))
{
curl_setopt($fp, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt($fp, CURLOPT_MAXREDIRS, $redirects);
diff --git a/vendor/simplepie/simplepie/library/SimplePie/HTTP/Parser.php b/vendor/simplepie/simplepie/library/SimplePie/HTTP/Parser.php
index e982c206f..1dbe06c3e 100644
--- a/vendor/simplepie/simplepie/library/SimplePie/HTTP/Parser.php
+++ b/vendor/simplepie/simplepie/library/SimplePie/HTTP/Parser.php
@@ -5,7 +5,7 @@
* A PHP-Based RSS and Atom Feed Framework.
* Takes the hard work out of managing a complete RSS/Atom solution.
*
- * Copyright (c) 2004-2016, Ryan Parman, Geoffrey Sneddon, Ryan McCue, and contributors
+ * Copyright (c) 2004-2016, Ryan Parman, Sam Sneddon, Ryan McCue, and contributors
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification, are
@@ -33,9 +33,9 @@
* POSSIBILITY OF SUCH DAMAGE.
*
* @package SimplePie
- * @copyright 2004-2016 Ryan Parman, Geoffrey Sneddon, Ryan McCue
+ * @copyright 2004-2016 Ryan Parman, Sam Sneddon, Ryan McCue
* @author Ryan Parman
- * @author Geoffrey Sneddon
+ * @author Sam Sneddon
* @author Ryan McCue
* @link http://simplepie.org/ SimplePie
* @license http://www.opensource.org/licenses/bsd-license.php BSD License
@@ -155,15 +155,13 @@ class SimplePie_HTTP_Parser
{
return true;
}
- else
- {
- $this->http_version = '';
- $this->status_code = '';
- $this->reason = '';
- $this->headers = array();
- $this->body = '';
- return false;
- }
+
+ $this->http_version = '';
+ $this->status_code = '';
+ $this->reason = '';
+ $this->headers = array();
+ $this->body = '';
+ return false;
}
/**
diff --git a/vendor/simplepie/simplepie/library/SimplePie/IRI.php b/vendor/simplepie/simplepie/library/SimplePie/IRI.php
index 2b3fbaf07..a02de682c 100644
--- a/vendor/simplepie/simplepie/library/SimplePie/IRI.php
+++ b/vendor/simplepie/simplepie/library/SimplePie/IRI.php
@@ -5,7 +5,7 @@
* A PHP-Based RSS and Atom Feed Framework.
* Takes the hard work out of managing a complete RSS/Atom solution.
*
- * Copyright (c) 2004-2016, Ryan Parman, Geoffrey Sneddon, Ryan McCue, and contributors
+ * Copyright (c) 2004-2016, Ryan Parman, Sam Sneddon, Ryan McCue, and contributors
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification, are
@@ -33,9 +33,9 @@
* POSSIBILITY OF SUCH DAMAGE.
*
* @package SimplePie
- * @copyright 2004-2016 Ryan Parman, Geoffrey Sneddon, Ryan McCue
+ * @copyright 2004-2016 Ryan Parman, Sam Sneddon, Ryan McCue
* @author Ryan Parman
- * @author Geoffrey Sneddon
+ * @author Sam Sneddon
* @author Ryan McCue
* @link http://simplepie.org/ SimplePie
* @license http://www.opensource.org/licenses/bsd-license.php BSD License
@@ -46,10 +46,10 @@
*
* @package SimplePie
* @subpackage HTTP
- * @author Geoffrey Sneddon
+ * @author Sam Sneddon
* @author Steve Minutillo
* @author Ryan McCue
- * @copyright 2007-2012 Geoffrey Sneddon, Steve Minutillo, Ryan McCue
+ * @copyright 2007-2012 Sam Sneddon, Steve Minutillo, Ryan McCue
* @license http://www.opensource.org/licenses/bsd-license.php
*/
class SimplePie_IRI
@@ -211,10 +211,8 @@ class SimplePie_IRI
{
return $this->normalization[$this->scheme][$name];
}
- else
- {
- return $return;
- }
+
+ return $return;
}
/**
@@ -225,14 +223,7 @@ class SimplePie_IRI
*/
public function __isset($name)
{
- if (method_exists($this, 'get_' . $name) || isset($this->$name))
- {
- return true;
- }
- else
- {
- return false;
- }
+ return method_exists($this, 'get_' . $name) || isset($this->$name);
}
/**
@@ -356,10 +347,8 @@ class SimplePie_IRI
$target->scheme_normalization();
return $target;
}
- else
- {
- return false;
- }
+
+ return false;
}
}
@@ -396,11 +385,9 @@ class SimplePie_IRI
}
return $match;
}
- else
- {
- // This can occur when a paragraph is accidentally parsed as a URI
- return false;
- }
+
+ // This can occur when a paragraph is accidentally parsed as a URI
+ return false;
}
/**
@@ -804,7 +791,7 @@ class SimplePie_IRI
public function set_iri($iri, $clear_cache = false)
{
static $cache;
- if ($clear_cache)
+ if ($clear_cache)
{
$cache = null;
return;
@@ -830,30 +817,28 @@ class SimplePie_IRI
$return) = $cache[$iri];
return $return;
}
- else
- {
- $parsed = $this->parse_iri((string) $iri);
- if (!$parsed)
- {
- return false;
- }
- $return = $this->set_scheme($parsed['scheme'])
- && $this->set_authority($parsed['authority'])
- && $this->set_path($parsed['path'])
- && $this->set_query($parsed['query'])
- && $this->set_fragment($parsed['fragment']);
-
- $cache[$iri] = array($this->scheme,
- $this->iuserinfo,
- $this->ihost,
- $this->port,
- $this->ipath,
- $this->iquery,
- $this->ifragment,
- $return);
- return $return;
+ $parsed = $this->parse_iri((string) $iri);
+ if (!$parsed)
+ {
+ return false;
}
+
+ $return = $this->set_scheme($parsed['scheme'])
+ && $this->set_authority($parsed['authority'])
+ && $this->set_path($parsed['path'])
+ && $this->set_query($parsed['query'])
+ && $this->set_fragment($parsed['fragment']);
+
+ $cache[$iri] = array($this->scheme,
+ $this->iuserinfo,
+ $this->ihost,
+ $this->port,
+ $this->ipath,
+ $this->iquery,
+ $this->ifragment,
+ $return);
+ return $return;
}
/**
@@ -915,42 +900,40 @@ class SimplePie_IRI
return $return;
}
+
+ $remaining = $authority;
+ if (($iuserinfo_end = strrpos($remaining, '@')) !== false)
+ {
+ $iuserinfo = substr($remaining, 0, $iuserinfo_end);
+ $remaining = substr($remaining, $iuserinfo_end + 1);
+ }
else
{
- $remaining = $authority;
- if (($iuserinfo_end = strrpos($remaining, '@')) !== false)
- {
- $iuserinfo = substr($remaining, 0, $iuserinfo_end);
- $remaining = substr($remaining, $iuserinfo_end + 1);
- }
- else
- {
- $iuserinfo = null;
- }
- if (($port_start = strpos($remaining, ':', strpos($remaining, ']'))) !== false)
- {
- if (($port = substr($remaining, $port_start + 1)) === false)
- {
- $port = null;
- }
- $remaining = substr($remaining, 0, $port_start);
- }
- else
+ $iuserinfo = null;
+ }
+ if (($port_start = strpos($remaining, ':', strpos($remaining, ']'))) !== false)
+ {
+ if (($port = substr($remaining, $port_start + 1)) === false)
{
$port = null;
}
+ $remaining = substr($remaining, 0, $port_start);
+ }
+ else
+ {
+ $port = null;
+ }
- $return = $this->set_userinfo($iuserinfo) &&
- $this->set_host($remaining) &&
- $this->set_port($port);
+ $return = $this->set_userinfo($iuserinfo) &&
+ $this->set_host($remaining) &&
+ $this->set_port($port);
- $cache[$authority] = array($this->iuserinfo,
- $this->ihost,
- $this->port,
- $return);
+ $cache[$authority] = array($this->iuserinfo,
+ $this->ihost,
+ $this->port,
+ $return);
- return $return;
- }
+ return $return;
}
/**
@@ -1050,11 +1033,9 @@ class SimplePie_IRI
$this->scheme_normalization();
return true;
}
- else
- {
- $this->port = null;
- return false;
- }
+
+ $this->port = null;
+ return false;
}
/**
@@ -1066,7 +1047,7 @@ class SimplePie_IRI
public function set_path($ipath, $clear_cache = false)
{
static $cache;
- if ($clear_cache)
+ if ($clear_cache)
{
$cache = null;
return;
@@ -1185,7 +1166,7 @@ class SimplePie_IRI
{
$iri .= $this->ipath;
}
- elseif (!empty($this->normalization[$this->scheme]['ipath']) && $iauthority !== null && $iauthority !== '')
+ elseif (!empty($this->normalization[$this->scheme]['ipath']) && $iauthority !== null && $iauthority !== '')
{
$iri .= $this->normalization[$this->scheme]['ipath'];
}
@@ -1229,16 +1210,14 @@ class SimplePie_IRI
{
$iauthority .= $this->ihost;
}
- if ($this->port !== null)
+ if ($this->port !== null && $this->port !== 0)
{
$iauthority .= ':' . $this->port;
}
return $iauthority;
}
- else
- {
- return null;
- }
+
+ return null;
}
/**
@@ -1251,7 +1230,7 @@ class SimplePie_IRI
$iauthority = $this->get_iauthority();
if (is_string($iauthority))
return $this->to_uri($iauthority);
- else
- return $iauthority;
+
+ return $iauthority;
}
}
diff --git a/vendor/simplepie/simplepie/library/SimplePie/Item.php b/vendor/simplepie/simplepie/library/SimplePie/Item.php
index 2083e7a92..5be6b1994 100644
--- a/vendor/simplepie/simplepie/library/SimplePie/Item.php
+++ b/vendor/simplepie/simplepie/library/SimplePie/Item.php
@@ -5,7 +5,7 @@
* A PHP-Based RSS and Atom Feed Framework.
* Takes the hard work out of managing a complete RSS/Atom solution.
*
- * Copyright (c) 2004-2016, Ryan Parman, Geoffrey Sneddon, Ryan McCue, and contributors
+ * Copyright (c) 2004-2016, Ryan Parman, Sam Sneddon, Ryan McCue, and contributors
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification, are
@@ -33,9 +33,9 @@
* POSSIBILITY OF SUCH DAMAGE.
*
* @package SimplePie
- * @copyright 2004-2016 Ryan Parman, Geoffrey Sneddon, Ryan McCue
+ * @copyright 2004-2016 Ryan Parman, Sam Sneddon, Ryan McCue
* @author Ryan Parman
- * @author Geoffrey Sneddon
+ * @author Sam Sneddon
* @author Ryan McCue
* @link http://simplepie.org/ SimplePie
* @license http://www.opensource.org/licenses/bsd-license.php BSD License
@@ -121,7 +121,7 @@ class SimplePie_Item
*/
public function __destruct()
{
- if ((version_compare(PHP_VERSION, '5.3', '<') || !gc_enabled()) && !ini_get('zend.ze1_compatibility_mode'))
+ if (!gc_enabled())
{
unset($this->feed);
}
@@ -147,10 +147,8 @@ class SimplePie_Item
{
return $this->data['child'][$namespace][$tag];
}
- else
- {
- return null;
- }
+
+ return null;
}
/**
@@ -366,10 +364,8 @@ class SimplePie_Item
{
return $this->get_content(true);
}
- else
- {
- return null;
- }
+
+ return null;
}
/**
@@ -407,18 +403,16 @@ class SimplePie_Item
{
return $this->get_description(true);
}
- else
- {
- return null;
- }
+
+ return null;
}
-
+
/**
* Get the media:thumbnail of the item
*
* Uses `<media:thumbnail>`
*
- *
+ *
* @return array|null
*/
public function get_thumbnail()
@@ -435,7 +429,7 @@ class SimplePie_Item
}
}
return $this->data['thumbnail'];
- }
+ }
/**
* Get a category for the item
@@ -451,10 +445,8 @@ class SimplePie_Item
{
return $categories[$key];
}
- else
- {
- return null;
- }
+
+ return null;
}
/**
@@ -519,10 +511,8 @@ class SimplePie_Item
{
return array_unique($categories);
}
- else
- {
- return null;
- }
+
+ return null;
}
/**
@@ -539,10 +529,8 @@ class SimplePie_Item
{
return $authors[$key];
}
- else
- {
- return null;
- }
+
+ return null;
}
/**
@@ -559,10 +547,8 @@ class SimplePie_Item
{
return $contributors[$key];
}
- else
- {
- return null;
- }
+
+ return null;
}
/**
@@ -571,7 +557,7 @@ class SimplePie_Item
* Uses `<atom:contributor>`
*
* @since 1.1
- * @return array|null List of {@see SimplePie_Author} objects
+ * @return SimplePie_Author[]|null List of {@see SimplePie_Author} objects
*/
public function get_contributors()
{
@@ -625,10 +611,8 @@ class SimplePie_Item
{
return array_unique($contributors);
}
- else
- {
- return null;
- }
+
+ return null;
}
/**
@@ -637,7 +621,7 @@ class SimplePie_Item
* Uses `<atom:author>`, `<author>`, `<dc:creator>` or `<itunes:author>`
*
* @since Beta 2
- * @return array|null List of {@see SimplePie_Author} objects
+ * @return SimplePie_Author[]|null List of {@see SimplePie_Author} objects
*/
public function get_authors()
{
@@ -715,10 +699,8 @@ class SimplePie_Item
{
return $authors;
}
- else
- {
- return null;
- }
+
+ return null;
}
/**
@@ -743,10 +725,8 @@ class SimplePie_Item
{
return $this->sanitize($return[0]['data'], SIMPLEPIE_CONSTRUCT_TEXT);
}
- else
- {
- return null;
- }
+
+ return null;
}
/**
@@ -825,10 +805,8 @@ class SimplePie_Item
return date($date_format, $this->data['date']['parsed']);
}
}
- else
- {
- return null;
- }
+
+ return null;
}
/**
@@ -876,10 +854,8 @@ class SimplePie_Item
return date($date_format, $this->data['updated']['parsed']);
}
}
- else
- {
- return null;
- }
+
+ return null;
}
/**
@@ -905,10 +881,8 @@ class SimplePie_Item
{
return strftime($date_format, $date);
}
- else
- {
- return null;
- }
+
+ return null;
}
/**
@@ -969,10 +943,8 @@ class SimplePie_Item
{
return $enclosure->get_link();
}
- else
- {
- return null;
- }
+
+ return null;
}
/**
@@ -986,14 +958,12 @@ class SimplePie_Item
public function get_link($key = 0, $rel = 'alternate')
{
$links = $this->get_links($rel);
- if ($links[$key] !== null)
+ if ($links && $links[$key] !== null)
{
return $links[$key];
}
- else
- {
- return null;
- }
+
+ return null;
}
/**
@@ -1073,10 +1043,8 @@ class SimplePie_Item
{
return $this->data['links'][$rel];
}
- else
- {
- return null;
- }
+
+ return null;
}
/**
@@ -1096,10 +1064,8 @@ class SimplePie_Item
{
return $enclosures[$key];
}
- else
- {
- return null;
- }
+
+ return null;
}
/**
@@ -2922,10 +2888,8 @@ class SimplePie_Item
{
return $this->data['enclosures'];
}
- else
- {
- return null;
- }
+
+ return null;
}
/**
@@ -2950,10 +2914,8 @@ class SimplePie_Item
{
return (float) $match[1];
}
- else
- {
- return null;
- }
+
+ return null;
}
/**
@@ -2982,10 +2944,8 @@ class SimplePie_Item
{
return (float) $match[2];
}
- else
- {
- return null;
- }
+
+ return null;
}
/**
@@ -3000,10 +2960,7 @@ class SimplePie_Item
{
return $this->registry->create('Source', array($this, $return[0]));
}
- else
- {
- return null;
- }
+
+ return null;
}
}
-
diff --git a/vendor/simplepie/simplepie/library/SimplePie/Locator.php b/vendor/simplepie/simplepie/library/SimplePie/Locator.php
index bc314c2cd..bf7c21a6f 100644
--- a/vendor/simplepie/simplepie/library/SimplePie/Locator.php
+++ b/vendor/simplepie/simplepie/library/SimplePie/Locator.php
@@ -5,7 +5,7 @@
* A PHP-Based RSS and Atom Feed Framework.
* Takes the hard work out of managing a complete RSS/Atom solution.
*
- * Copyright (c) 2004-2016, Ryan Parman, Geoffrey Sneddon, Ryan McCue, and contributors
+ * Copyright (c) 2004-2016, Ryan Parman, Sam Sneddon, Ryan McCue, and contributors
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification, are
@@ -33,9 +33,9 @@
* POSSIBILITY OF SUCH DAMAGE.
*
* @package SimplePie
- * @copyright 2004-2016 Ryan Parman, Geoffrey Sneddon, Ryan McCue
+ * @copyright 2004-2016 Ryan Parman, Sam Sneddon, Ryan McCue
* @author Ryan Parman
- * @author Geoffrey Sneddon
+ * @author Sam Sneddon
* @author Ryan McCue
* @link http://simplepie.org/ SimplePie
* @license http://www.opensource.org/licenses/bsd-license.php BSD License
@@ -62,14 +62,18 @@ class SimplePie_Locator
var $base_location = 0;
var $checked_feeds = 0;
var $max_checked_feeds = 10;
+ var $force_fsockopen = false;
+ var $curl_options = array();
protected $registry;
- public function __construct(SimplePie_File $file, $timeout = 10, $useragent = null, $max_checked_feeds = 10)
+ public function __construct(SimplePie_File $file, $timeout = 10, $useragent = null, $max_checked_feeds = 10, $force_fsockopen = false, $curl_options = array())
{
$this->file = $file;
$this->useragent = $useragent;
$this->timeout = $timeout;
$this->max_checked_feeds = $max_checked_feeds;
+ $this->force_fsockopen = $force_fsockopen;
+ $this->curl_options = $curl_options;
if (class_exists('DOMDocument'))
{
@@ -154,14 +158,8 @@ class SimplePie_Locator
{
$mime_types[] = 'text/html';
}
- if (in_array($sniffed, $mime_types))
- {
- return true;
- }
- else
- {
- return false;
- }
+
+ return in_array($sniffed, $mime_types);
}
elseif ($file->method & SIMPLEPIE_FILE_SOURCE_LOCAL)
{
@@ -210,10 +208,8 @@ class SimplePie_Locator
{
return array_values($feeds);
}
- else
- {
- return null;
- }
+
+ return null;
}
protected function search_elements_by_tag($name, &$done, $feeds)
@@ -254,7 +250,7 @@ class SimplePie_Locator
$headers = array(
'Accept' => 'application/atom+xml, application/rss+xml, application/rdf+xml;q=0.9, application/xml;q=0.8, text/xml;q=0.8, text/html;q=0.7, unknown/unknown;q=0.1, application/unknown;q=0.1, */*;q=0.1',
);
- $feed = $this->registry->create('File', array($href, $this->timeout, 5, $headers, $this->useragent));
+ $feed = $this->registry->create('File', array($href, $this->timeout, 5, $headers, $this->useragent, $this->force_fsockopen, $this->curl_options));
if ($feed->success && ($feed->method & SIMPLEPIE_FILE_SOURCE_REMOTE === 0 || ($feed->status_code === 200 || $feed->status_code > 206 && $feed->status_code < 300)) && $this->is_feed($feed, true))
{
$feeds[$href] = $feed;
@@ -384,7 +380,7 @@ class SimplePie_Locator
$headers = array(
'Accept' => 'application/atom+xml, application/rss+xml, application/rdf+xml;q=0.9, application/xml;q=0.8, text/xml;q=0.8, text/html;q=0.7, unknown/unknown;q=0.1, application/unknown;q=0.1, */*;q=0.1',
);
- $feed = $this->registry->create('File', array($value, $this->timeout, 5, $headers, $this->useragent));
+ $feed = $this->registry->create('File', array($value, $this->timeout, 5, $headers, $this->useragent, $this->force_fsockopen, $this->curl_options));
if ($feed->success && ($feed->method & SIMPLEPIE_FILE_SOURCE_REMOTE === 0 || ($feed->status_code === 200 || $feed->status_code > 206 && $feed->status_code < 300)) && $this->is_feed($feed))
{
return array($feed);
@@ -406,13 +402,13 @@ class SimplePie_Locator
{
break;
}
- if (preg_match('/(rss|rdf|atom|xml)/i', $value))
+ if (preg_match('/(feed|rss|rdf|atom|xml)/i', $value))
{
$this->checked_feeds++;
$headers = array(
'Accept' => 'application/atom+xml, application/rss+xml, application/rdf+xml;q=0.9, application/xml;q=0.8, text/xml;q=0.8, text/html;q=0.7, unknown/unknown;q=0.1, application/unknown;q=0.1, */*;q=0.1',
);
- $feed = $this->registry->create('File', array($value, $this->timeout, 5, null, $this->useragent));
+ $feed = $this->registry->create('File', array($value, $this->timeout, 5, null, $this->useragent, $this->force_fsockopen, $this->curl_options));
if ($feed->success && ($feed->method & SIMPLEPIE_FILE_SOURCE_REMOTE === 0 || ($feed->status_code === 200 || $feed->status_code > 206 && $feed->status_code < 300)) && $this->is_feed($feed))
{
return array($feed);
@@ -426,4 +422,3 @@ class SimplePie_Locator
return null;
}
}
-
diff --git a/vendor/simplepie/simplepie/library/SimplePie/Misc.php b/vendor/simplepie/simplepie/library/SimplePie/Misc.php
index 2e3107eb4..48d7c860a 100644
--- a/vendor/simplepie/simplepie/library/SimplePie/Misc.php
+++ b/vendor/simplepie/simplepie/library/SimplePie/Misc.php
@@ -5,7 +5,7 @@
* A PHP-Based RSS and Atom Feed Framework.
* Takes the hard work out of managing a complete RSS/Atom solution.
*
- * Copyright (c) 2004-2016, Ryan Parman, Geoffrey Sneddon, Ryan McCue, and contributors
+ * Copyright (c) 2004-2016, Ryan Parman, Sam Sneddon, Ryan McCue, and contributors
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification, are
@@ -33,9 +33,9 @@
* POSSIBILITY OF SUCH DAMAGE.
*
* @package SimplePie
- * @copyright 2004-2016 Ryan Parman, Geoffrey Sneddon, Ryan McCue
+ * @copyright 2004-2016 Ryan Parman, Sam Sneddon, Ryan McCue
* @author Ryan Parman
- * @author Geoffrey Sneddon
+ * @author Sam Sneddon
* @author Ryan McCue
* @link http://simplepie.org/ SimplePie
* @license http://www.opensource.org/licenses/bsd-license.php BSD License
@@ -217,10 +217,8 @@ class SimplePie_Misc
{
return substr_replace($url, 'itpc', 0, 4);
}
- else
- {
- return $url;
- }
+
+ return $url;
}
public static function array_merge_recursive($array1, $array2)
@@ -234,9 +232,9 @@ class SimplePie_Misc
else
{
$array1[$key] = $value;
- }
+ }
}
-
+
return $array1;
}
@@ -276,10 +274,8 @@ class SimplePie_Misc
{
return chr($integer);
}
- else
- {
- return strtoupper($match[0]);
- }
+
+ return strtoupper($match[0]);
}
/**
@@ -343,11 +339,9 @@ class SimplePie_Misc
{
return $return;
}
+
// If we can't do anything, just fail
- else
- {
- return false;
- }
+ return false;
}
protected static function change_encoding_mbstring($data, $input, $output)
@@ -1858,10 +1852,8 @@ class SimplePie_Misc
{
return trim($mime);
}
- else
- {
- return trim(substr($mime, 0, $pos));
- }
+
+ return trim(substr($mime, 0, $pos));
}
public static function atom_03_construct_type($attribs)
@@ -1894,10 +1886,8 @@ class SimplePie_Misc
return SIMPLEPIE_CONSTRUCT_NONE | $mode;
}
}
- else
- {
- return SIMPLEPIE_CONSTRUCT_TEXT | $mode;
- }
+
+ return SIMPLEPIE_CONSTRUCT_TEXT | $mode;
}
public static function atom_10_construct_type($attribs)
@@ -1947,10 +1937,8 @@ class SimplePie_Misc
return SIMPLEPIE_CONSTRUCT_BASE64;
}
}
- else
- {
- return SIMPLEPIE_CONSTRUCT_TEXT;
- }
+
+ return SIMPLEPIE_CONSTRUCT_TEXT;
}
public static function is_isegment_nz_nc($string)
@@ -2007,11 +1995,9 @@ class SimplePie_Misc
{
return chr(0xf0 | ($codepoint >> 18)) . chr(0x80 | (($codepoint >> 12) & 0x3f)) . chr(0x80 | (($codepoint >> 6) & 0x3f)) . chr(0x80 | ($codepoint & 0x3f));
}
- else
- {
- // U+FFFD REPLACEMENT CHARACTER
- return "\xEF\xBF\xBD";
- }
+
+ // U+FFFD REPLACEMENT CHARACTER
+ return "\xEF\xBF\xBD";
}
/**
@@ -2215,10 +2201,8 @@ function embed_wmedia(width, height, link) {
{
return filemtime(dirname(__FILE__) . '/Core.php');
}
- else
- {
- return filemtime(__FILE__);
- }
+
+ return filemtime(__FILE__);
}
/**
@@ -2276,4 +2260,3 @@ function embed_wmedia(width, height, link) {
// No-op
}
}
-
diff --git a/vendor/simplepie/simplepie/library/SimplePie/Net/IPv6.php b/vendor/simplepie/simplepie/library/SimplePie/Net/IPv6.php
index 47658aff2..25c992bd1 100644
--- a/vendor/simplepie/simplepie/library/SimplePie/Net/IPv6.php
+++ b/vendor/simplepie/simplepie/library/SimplePie/Net/IPv6.php
@@ -5,7 +5,7 @@
* A PHP-Based RSS and Atom Feed Framework.
* Takes the hard work out of managing a complete RSS/Atom solution.
*
- * Copyright (c) 2004-2016, Ryan Parman, Geoffrey Sneddon, Ryan McCue, and contributors
+ * Copyright (c) 2004-2016, Ryan Parman, Sam Sneddon, Ryan McCue, and contributors
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification, are
@@ -33,9 +33,9 @@
* POSSIBILITY OF SUCH DAMAGE.
*
* @package SimplePie
- * @copyright 2004-2016 Ryan Parman, Geoffrey Sneddon, Ryan McCue
+ * @copyright 2004-2016 Ryan Parman, Sam Sneddon, Ryan McCue
* @author Ryan Parman
- * @author Geoffrey Sneddon
+ * @author Sam Sneddon
* @author Ryan McCue
* @link http://simplepie.org/ SimplePie
* @license http://www.opensource.org/licenses/bsd-license.php BSD License
@@ -53,7 +53,7 @@
* @author Alexander Merz <alexander.merz@web.de>
* @author elfrink at introweb dot nl
* @author Josh Peck <jmp at joshpeck dot org>
- * @author Geoffrey Sneddon <geoffers@gmail.com>
+ * @author Sam Sneddon <geoffers@gmail.com>
*/
class SimplePie_Net_IPv6
{
@@ -173,10 +173,8 @@ class SimplePie_Net_IPv6
{
return implode(':', $ip_parts);
}
- else
- {
- return $ip_parts[0];
- }
+
+ return $ip_parts[0];
}
/**
@@ -200,10 +198,8 @@ class SimplePie_Net_IPv6
$ipv4_part = substr($ip, $pos + 1);
return array($ipv6_part, $ipv4_part);
}
- else
- {
- return array($ip, '');
- }
+
+ return array($ip, '');
}
/**
@@ -253,10 +249,8 @@ class SimplePie_Net_IPv6
}
return true;
}
- else
- {
- return false;
- }
+
+ return false;
}
/**
diff --git a/vendor/simplepie/simplepie/library/SimplePie/Parse/Date.php b/vendor/simplepie/simplepie/library/SimplePie/Parse/Date.php
index 1f2156655..cf57437d2 100644
--- a/vendor/simplepie/simplepie/library/SimplePie/Parse/Date.php
+++ b/vendor/simplepie/simplepie/library/SimplePie/Parse/Date.php
@@ -5,7 +5,7 @@
* A PHP-Based RSS and Atom Feed Framework.
* Takes the hard work out of managing a complete RSS/Atom solution.
*
- * Copyright (c) 2004-2016, Ryan Parman, Geoffrey Sneddon, Ryan McCue, and contributors
+ * Copyright (c) 2004-2016, Ryan Parman, Sam Sneddon, Ryan McCue, and contributors
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification, are
@@ -33,9 +33,9 @@
* POSSIBILITY OF SUCH DAMAGE.
*
* @package SimplePie
- * @copyright 2004-2016 Ryan Parman, Geoffrey Sneddon, Ryan McCue
+ * @copyright 2004-2016 Ryan Parman, Sam Sneddon, Ryan McCue
* @author Ryan Parman
- * @author Geoffrey Sneddon
+ * @author Sam Sneddon
* @author Ryan McCue
* @link http://simplepie.org/ SimplePie
* @license http://www.opensource.org/licenses/bsd-license.php BSD License
@@ -98,12 +98,20 @@ class SimplePie_Parse_Date
'dimanche' => 7,
// German
'montag' => 1,
+ 'mo' => 1,
'dienstag' => 2,
+ 'di' => 2,
'mittwoch' => 3,
+ 'mi' => 3,
'donnerstag' => 4,
+ 'do' => 4,
'freitag' => 5,
+ 'fr' => 5,
'samstag' => 6,
+ 'sa' => 6,
'sonnabend' => 6,
+ // AFAIK no short form for sonnabend
+ 'so' => 7,
'sonntag' => 7,
// Italian
'lunedì' => 1,
@@ -145,6 +153,14 @@ class SimplePie_Parse_Date
'Παρ' => 5,
'Σαβ' => 6,
'Κυρ' => 7,
+ // Russian
+ 'Пн.' => 1,
+ 'Вт.' => 2,
+ 'Ср.' => 3,
+ 'Чт.' => 4,
+ 'Пт.' => 5,
+ 'Сб.' => 6,
+ 'Вс.' => 7,
);
/**
@@ -207,17 +223,28 @@ class SimplePie_Parse_Date
'décembre' => 12,
// German
'januar' => 1,
+ 'jan' => 1,
'februar' => 2,
+ 'feb' => 2,
'märz' => 3,
+ 'mär' => 3,
'april' => 4,
- 'mai' => 5,
+ 'apr' => 4,
+ 'mai' => 5, // no short form for may
'juni' => 6,
+ 'jun' => 6,
'juli' => 7,
+ 'jul' => 7,
'august' => 8,
+ 'aug' => 8,
'september' => 9,
+ 'sep' => 9,
'oktober' => 10,
+ 'okt' => 10,
'november' => 11,
+ 'nov' => 11,
'dezember' => 12,
+ 'dez' => 12,
// Italian
'gennaio' => 1,
'febbraio' => 2,
@@ -289,7 +316,33 @@ class SimplePie_Parse_Date
'Σεπ' => 9,
'Οκτ' => 10,
'Νοέ' => 11,
- 'Δεκ' => 12,
+ 'Δεκ' => 12,
+ // Russian
+ 'Янв' => 1,
+ 'января' => 1,
+ 'Фев' => 2,
+ 'февраля' => 2,
+ 'Мар' => 3,
+ 'марта' => 3,
+ 'Апр' => 4,
+ 'апреля' => 4,
+ 'Май' => 5,
+ 'мая' => 5,
+ 'Июн' => 6,
+ 'июня' => 6,
+ 'Июл' => 7,
+ 'июля' => 7,
+ 'Авг' => 8,
+ 'августа' => 8,
+ 'Сен' => 9,
+ 'сентября' => 9,
+ 'Окт' => 10,
+ 'октября' => 10,
+ 'Ноя' => 11,
+ 'ноября' => 11,
+ 'Дек' => 12,
+ 'декабря' => 12,
+
);
/**
@@ -541,8 +594,8 @@ class SimplePie_Parse_Date
*/
public function __construct()
{
- $this->day_pcre = '(' . implode(array_keys($this->day), '|') . ')';
- $this->month_pcre = '(' . implode(array_keys($this->month), '|') . ')';
+ $this->day_pcre = '(' . implode('|', array_keys($this->day)) . ')';
+ $this->month_pcre = '(' . implode('|', array_keys($this->month)) . ')';
static $cache;
if (!isset($cache[get_class($this)]))
@@ -690,14 +743,12 @@ class SimplePie_Parse_Date
}
// Convert the number of seconds to an integer, taking decimals into account
- $second = round((int)$match[6] + (int)$match[7] / pow(10, strlen($match[7])));
+ $second = round((int)$match[6] + (int)$match[7] / (10 ** strlen($match[7])));
return gmmktime($match[4], $match[5], $second, $match[2], $match[3], $match[1]) - $timezone;
}
- else
- {
- return false;
- }
+
+ return false;
}
/**
@@ -848,10 +899,8 @@ class SimplePie_Parse_Date
return gmmktime($match[5], $match[6], $second, $month, $match[2], $match[4]) - $timezone;
}
- else
- {
- return false;
- }
+
+ return false;
}
/**
@@ -913,10 +962,8 @@ class SimplePie_Parse_Date
return gmmktime($match[5], $match[6], $match[7], $month, $match[2], $match[4]) - $timezone;
}
- else
- {
- return false;
- }
+
+ return false;
}
/**
@@ -955,10 +1002,8 @@ class SimplePie_Parse_Date
$month = $this->month[strtolower($match[2])];
return gmmktime($match[4], $match[5], $match[6], $month, $match[3], $match[7]);
}
- else
- {
- return false;
- }
+
+ return false;
}
/**
@@ -974,10 +1019,7 @@ class SimplePie_Parse_Date
{
return false;
}
- else
- {
- return $strtotime;
- }
+
+ return $strtotime;
}
}
-
diff --git a/vendor/simplepie/simplepie/library/SimplePie/Parser.php b/vendor/simplepie/simplepie/library/SimplePie/Parser.php
index df1234023..4efdf41a7 100644
--- a/vendor/simplepie/simplepie/library/SimplePie/Parser.php
+++ b/vendor/simplepie/simplepie/library/SimplePie/Parser.php
@@ -5,7 +5,7 @@
* A PHP-Based RSS and Atom Feed Framework.
* Takes the hard work out of managing a complete RSS/Atom solution.
*
- * Copyright (c) 2004-2016, Ryan Parman, Geoffrey Sneddon, Ryan McCue, and contributors
+ * Copyright (c) 2004-2016, Ryan Parman, Sam Sneddon, Ryan McCue, and contributors
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification, are
@@ -33,9 +33,9 @@
* POSSIBILITY OF SUCH DAMAGE.
*
* @package SimplePie
- * @copyright 2004-2016 Ryan Parman, Geoffrey Sneddon, Ryan McCue
+ * @copyright 2004-2016 Ryan Parman, Sam Sneddon, Ryan McCue
* @author Ryan Parman
- * @author Geoffrey Sneddon
+ * @author Sam Sneddon
* @author Ryan McCue
* @link http://simplepie.org/ SimplePie
* @license http://www.opensource.org/licenses/bsd-license.php BSD License
@@ -176,76 +176,72 @@ class SimplePie_Parser
xml_parser_free($xml);
return $return;
}
- else
+
+ libxml_clear_errors();
+ $xml = new XMLReader();
+ $xml->xml($data);
+ while (@$xml->read())
{
- libxml_clear_errors();
- $xml = new XMLReader();
- $xml->xml($data);
- while (@$xml->read())
+ switch ($xml->nodeType)
{
- switch ($xml->nodeType)
- {
- case constant('XMLReader::END_ELEMENT'):
+ case constant('XMLReader::END_ELEMENT'):
+ if ($xml->namespaceURI !== '')
+ {
+ $tagName = $xml->namespaceURI . $this->separator . $xml->localName;
+ }
+ else
+ {
+ $tagName = $xml->localName;
+ }
+ $this->tag_close(null, $tagName);
+ break;
+ case constant('XMLReader::ELEMENT'):
+ $empty = $xml->isEmptyElement;
+ if ($xml->namespaceURI !== '')
+ {
+ $tagName = $xml->namespaceURI . $this->separator . $xml->localName;
+ }
+ else
+ {
+ $tagName = $xml->localName;
+ }
+ $attributes = array();
+ while ($xml->moveToNextAttribute())
+ {
if ($xml->namespaceURI !== '')
{
- $tagName = $xml->namespaceURI . $this->separator . $xml->localName;
+ $attrName = $xml->namespaceURI . $this->separator . $xml->localName;
}
else
{
- $tagName = $xml->localName;
+ $attrName = $xml->localName;
}
+ $attributes[$attrName] = $xml->value;
+ }
+ $this->tag_open(null, $tagName, $attributes);
+ if ($empty)
+ {
$this->tag_close(null, $tagName);
- break;
- case constant('XMLReader::ELEMENT'):
- $empty = $xml->isEmptyElement;
- if ($xml->namespaceURI !== '')
- {
- $tagName = $xml->namespaceURI . $this->separator . $xml->localName;
- }
- else
- {
- $tagName = $xml->localName;
- }
- $attributes = array();
- while ($xml->moveToNextAttribute())
- {
- if ($xml->namespaceURI !== '')
- {
- $attrName = $xml->namespaceURI . $this->separator . $xml->localName;
- }
- else
- {
- $attrName = $xml->localName;
- }
- $attributes[$attrName] = $xml->value;
- }
- $this->tag_open(null, $tagName, $attributes);
- if ($empty)
- {
- $this->tag_close(null, $tagName);
- }
- break;
- case constant('XMLReader::TEXT'):
+ }
+ break;
+ case constant('XMLReader::TEXT'):
- case constant('XMLReader::CDATA'):
- $this->cdata(null, $xml->value);
- break;
- }
- }
- if ($error = libxml_get_last_error())
- {
- $this->error_code = $error->code;
- $this->error_string = $error->message;
- $this->current_line = $error->line;
- $this->current_column = $error->column;
- return false;
- }
- else
- {
- return true;
+ case constant('XMLReader::CDATA'):
+ $this->cdata(null, $xml->value);
+ break;
}
}
+ if ($error = libxml_get_last_error())
+ {
+ $this->error_code = $error->code;
+ $this->error_string = $error->message;
+ $this->current_line = $error->line;
+ $this->current_column = $error->column;
+ return false;
+ }
+
+ return true;
}
public function get_error_code()
@@ -662,4 +658,4 @@ class SimplePie_Parser
// html is allowed, but the xml specification says they must be declared.
return '<!DOCTYPE html [ <!ENTITY nbsp "&#x00A0;"> <!ENTITY iexcl "&#x00A1;"> <!ENTITY cent "&#x00A2;"> <!ENTITY pound "&#x00A3;"> <!ENTITY curren "&#x00A4;"> <!ENTITY yen "&#x00A5;"> <!ENTITY brvbar "&#x00A6;"> <!ENTITY sect "&#x00A7;"> <!ENTITY uml "&#x00A8;"> <!ENTITY copy "&#x00A9;"> <!ENTITY ordf "&#x00AA;"> <!ENTITY laquo "&#x00AB;"> <!ENTITY not "&#x00AC;"> <!ENTITY shy "&#x00AD;"> <!ENTITY reg "&#x00AE;"> <!ENTITY macr "&#x00AF;"> <!ENTITY deg "&#x00B0;"> <!ENTITY plusmn "&#x00B1;"> <!ENTITY sup2 "&#x00B2;"> <!ENTITY sup3 "&#x00B3;"> <!ENTITY acute "&#x00B4;"> <!ENTITY micro "&#x00B5;"> <!ENTITY para "&#x00B6;"> <!ENTITY middot "&#x00B7;"> <!ENTITY cedil "&#x00B8;"> <!ENTITY sup1 "&#x00B9;"> <!ENTITY ordm "&#x00BA;"> <!ENTITY raquo "&#x00BB;"> <!ENTITY frac14 "&#x00BC;"> <!ENTITY frac12 "&#x00BD;"> <!ENTITY frac34 "&#x00BE;"> <!ENTITY iquest "&#x00BF;"> <!ENTITY Agrave "&#x00C0;"> <!ENTITY Aacute "&#x00C1;"> <!ENTITY Acirc "&#x00C2;"> <!ENTITY Atilde "&#x00C3;"> <!ENTITY Auml "&#x00C4;"> <!ENTITY Aring "&#x00C5;"> <!ENTITY AElig "&#x00C6;"> <!ENTITY Ccedil "&#x00C7;"> <!ENTITY Egrave "&#x00C8;"> <!ENTITY Eacute "&#x00C9;"> <!ENTITY Ecirc "&#x00CA;"> <!ENTITY Euml "&#x00CB;"> <!ENTITY Igrave "&#x00CC;"> <!ENTITY Iacute "&#x00CD;"> <!ENTITY Icirc "&#x00CE;"> <!ENTITY Iuml "&#x00CF;"> <!ENTITY ETH "&#x00D0;"> <!ENTITY Ntilde "&#x00D1;"> <!ENTITY Ograve "&#x00D2;"> <!ENTITY Oacute "&#x00D3;"> <!ENTITY Ocirc "&#x00D4;"> <!ENTITY Otilde "&#x00D5;"> <!ENTITY Ouml "&#x00D6;"> <!ENTITY times "&#x00D7;"> <!ENTITY Oslash "&#x00D8;"> <!ENTITY Ugrave "&#x00D9;"> <!ENTITY Uacute "&#x00DA;"> <!ENTITY Ucirc "&#x00DB;"> <!ENTITY Uuml "&#x00DC;"> <!ENTITY Yacute "&#x00DD;"> <!ENTITY THORN "&#x00DE;"> <!ENTITY szlig "&#x00DF;"> <!ENTITY agrave "&#x00E0;"> <!ENTITY aacute "&#x00E1;"> <!ENTITY acirc "&#x00E2;"> <!ENTITY atilde "&#x00E3;"> <!ENTITY auml "&#x00E4;"> <!ENTITY aring "&#x00E5;"> <!ENTITY aelig "&#x00E6;"> <!ENTITY ccedil "&#x00E7;"> <!ENTITY egrave "&#x00E8;"> <!ENTITY eacute "&#x00E9;"> <!ENTITY ecirc "&#x00EA;"> <!ENTITY euml "&#x00EB;"> <!ENTITY igrave "&#x00EC;"> <!ENTITY iacute "&#x00ED;"> <!ENTITY icirc "&#x00EE;"> <!ENTITY iuml "&#x00EF;"> <!ENTITY eth "&#x00F0;"> <!ENTITY ntilde "&#x00F1;"> <!ENTITY ograve "&#x00F2;"> <!ENTITY oacute "&#x00F3;"> <!ENTITY ocirc "&#x00F4;"> <!ENTITY otilde "&#x00F5;"> <!ENTITY ouml "&#x00F6;"> <!ENTITY divide "&#x00F7;"> <!ENTITY oslash "&#x00F8;"> <!ENTITY ugrave "&#x00F9;"> <!ENTITY uacute "&#x00FA;"> <!ENTITY ucirc "&#x00FB;"> <!ENTITY uuml "&#x00FC;"> <!ENTITY yacute "&#x00FD;"> <!ENTITY thorn "&#x00FE;"> <!ENTITY yuml "&#x00FF;"> <!ENTITY OElig "&#x0152;"> <!ENTITY oelig "&#x0153;"> <!ENTITY Scaron "&#x0160;"> <!ENTITY scaron "&#x0161;"> <!ENTITY Yuml "&#x0178;"> <!ENTITY fnof "&#x0192;"> <!ENTITY circ "&#x02C6;"> <!ENTITY tilde "&#x02DC;"> <!ENTITY Alpha "&#x0391;"> <!ENTITY Beta "&#x0392;"> <!ENTITY Gamma "&#x0393;"> <!ENTITY Epsilon "&#x0395;"> <!ENTITY Zeta "&#x0396;"> <!ENTITY Eta "&#x0397;"> <!ENTITY Theta "&#x0398;"> <!ENTITY Iota "&#x0399;"> <!ENTITY Kappa "&#x039A;"> <!ENTITY Lambda "&#x039B;"> <!ENTITY Mu "&#x039C;"> <!ENTITY Nu "&#x039D;"> <!ENTITY Xi "&#x039E;"> <!ENTITY Omicron "&#x039F;"> <!ENTITY Pi "&#x03A0;"> <!ENTITY Rho "&#x03A1;"> <!ENTITY Sigma "&#x03A3;"> <!ENTITY Tau "&#x03A4;"> <!ENTITY Upsilon "&#x03A5;"> <!ENTITY Phi "&#x03A6;"> <!ENTITY Chi "&#x03A7;"> <!ENTITY Psi "&#x03A8;"> <!ENTITY Omega "&#x03A9;"> <!ENTITY alpha "&#x03B1;"> <!ENTITY beta "&#x03B2;"> <!ENTITY gamma "&#x03B3;"> <!ENTITY delta "&#x03B4;"> <!ENTITY epsilon "&#x03B5;"> <!ENTITY zeta "&#x03B6;"> <!ENTITY eta "&#x03B7;"> <!ENTITY theta "&#x03B8;"> <!ENTITY iota "&#x03B9;"> <!ENTITY kappa "&#x03BA;"> <!ENTITY lambda "&#x03BB;"> <!ENTITY mu "&#x03BC;"> <!ENTITY nu "&#x03BD;"> <!ENTITY xi "&#x03BE;"> <!ENTITY omicron "&#x03BF;"> <!ENTITY pi "&#x03C0;"> <!ENTITY rho "&#x03C1;"> <!ENTITY sigmaf "&#x03C2;"> <!ENTITY sigma "&#x03C3;"> <!ENTITY tau "&#x03C4;"> <!ENTITY upsilon "&#x03C5;"> <!ENTITY phi "&#x03C6;"> <!ENTITY chi "&#x03C7;"> <!ENTITY psi "&#x03C8;"> <!ENTITY omega "&#x03C9;"> <!ENTITY thetasym "&#x03D1;"> <!ENTITY upsih "&#x03D2;"> <!ENTITY piv "&#x03D6;"> <!ENTITY ensp "&#x2002;"> <!ENTITY emsp "&#x2003;"> <!ENTITY thinsp "&#x2009;"> <!ENTITY zwnj "&#x200C;"> <!ENTITY zwj "&#x200D;"> <!ENTITY lrm "&#x200E;"> <!ENTITY rlm "&#x200F;"> <!ENTITY ndash "&#x2013;"> <!ENTITY mdash "&#x2014;"> <!ENTITY lsquo "&#x2018;"> <!ENTITY rsquo "&#x2019;"> <!ENTITY sbquo "&#x201A;"> <!ENTITY ldquo "&#x201C;"> <!ENTITY rdquo "&#x201D;"> <!ENTITY bdquo "&#x201E;"> <!ENTITY dagger "&#x2020;"> <!ENTITY Dagger "&#x2021;"> <!ENTITY bull "&#x2022;"> <!ENTITY hellip "&#x2026;"> <!ENTITY permil "&#x2030;"> <!ENTITY prime "&#x2032;"> <!ENTITY Prime "&#x2033;"> <!ENTITY lsaquo "&#x2039;"> <!ENTITY rsaquo "&#x203A;"> <!ENTITY oline "&#x203E;"> <!ENTITY frasl "&#x2044;"> <!ENTITY euro "&#x20AC;"> <!ENTITY image "&#x2111;"> <!ENTITY weierp "&#x2118;"> <!ENTITY real "&#x211C;"> <!ENTITY trade "&#x2122;"> <!ENTITY alefsym "&#x2135;"> <!ENTITY larr "&#x2190;"> <!ENTITY uarr "&#x2191;"> <!ENTITY rarr "&#x2192;"> <!ENTITY darr "&#x2193;"> <!ENTITY harr "&#x2194;"> <!ENTITY crarr "&#x21B5;"> <!ENTITY lArr "&#x21D0;"> <!ENTITY uArr "&#x21D1;"> <!ENTITY rArr "&#x21D2;"> <!ENTITY dArr "&#x21D3;"> <!ENTITY hArr "&#x21D4;"> <!ENTITY forall "&#x2200;"> <!ENTITY part "&#x2202;"> <!ENTITY exist "&#x2203;"> <!ENTITY empty "&#x2205;"> <!ENTITY nabla "&#x2207;"> <!ENTITY isin "&#x2208;"> <!ENTITY notin "&#x2209;"> <!ENTITY ni "&#x220B;"> <!ENTITY prod "&#x220F;"> <!ENTITY sum "&#x2211;"> <!ENTITY minus "&#x2212;"> <!ENTITY lowast "&#x2217;"> <!ENTITY radic "&#x221A;"> <!ENTITY prop "&#x221D;"> <!ENTITY infin "&#x221E;"> <!ENTITY ang "&#x2220;"> <!ENTITY and "&#x2227;"> <!ENTITY or "&#x2228;"> <!ENTITY cap "&#x2229;"> <!ENTITY cup "&#x222A;"> <!ENTITY int "&#x222B;"> <!ENTITY there4 "&#x2234;"> <!ENTITY sim "&#x223C;"> <!ENTITY cong "&#x2245;"> <!ENTITY asymp "&#x2248;"> <!ENTITY ne "&#x2260;"> <!ENTITY equiv "&#x2261;"> <!ENTITY le "&#x2264;"> <!ENTITY ge "&#x2265;"> <!ENTITY sub "&#x2282;"> <!ENTITY sup "&#x2283;"> <!ENTITY nsub "&#x2284;"> <!ENTITY sube "&#x2286;"> <!ENTITY supe "&#x2287;"> <!ENTITY oplus "&#x2295;"> <!ENTITY otimes "&#x2297;"> <!ENTITY perp "&#x22A5;"> <!ENTITY sdot "&#x22C5;"> <!ENTITY lceil "&#x2308;"> <!ENTITY rceil "&#x2309;"> <!ENTITY lfloor "&#x230A;"> <!ENTITY rfloor "&#x230B;"> <!ENTITY lang "&#x2329;"> <!ENTITY rang "&#x232A;"> <!ENTITY loz "&#x25CA;"> <!ENTITY spades "&#x2660;"> <!ENTITY clubs "&#x2663;"> <!ENTITY hearts "&#x2665;"> <!ENTITY diams "&#x2666;"> ]>';
}
-} \ No newline at end of file
+}
diff --git a/vendor/simplepie/simplepie/library/SimplePie/Rating.php b/vendor/simplepie/simplepie/library/SimplePie/Rating.php
index eaf57080c..599f75acb 100644
--- a/vendor/simplepie/simplepie/library/SimplePie/Rating.php
+++ b/vendor/simplepie/simplepie/library/SimplePie/Rating.php
@@ -5,7 +5,7 @@
* A PHP-Based RSS and Atom Feed Framework.
* Takes the hard work out of managing a complete RSS/Atom solution.
*
- * Copyright (c) 2004-2016, Ryan Parman, Geoffrey Sneddon, Ryan McCue, and contributors
+ * Copyright (c) 2004-2016, Ryan Parman, Sam Sneddon, Ryan McCue, and contributors
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification, are
@@ -33,9 +33,9 @@
* POSSIBILITY OF SUCH DAMAGE.
*
* @package SimplePie
- * @copyright 2004-2016 Ryan Parman, Geoffrey Sneddon, Ryan McCue
+ * @copyright 2004-2016 Ryan Parman, Sam Sneddon, Ryan McCue
* @author Ryan Parman
- * @author Geoffrey Sneddon
+ * @author Sam Sneddon
* @author Ryan McCue
* @link http://simplepie.org/ SimplePie
* @license http://www.opensource.org/licenses/bsd-license.php BSD License
@@ -103,10 +103,8 @@ class SimplePie_Rating
{
return $this->scheme;
}
- else
- {
- return null;
- }
+
+ return null;
}
/**
@@ -120,9 +118,7 @@ class SimplePie_Rating
{
return $this->value;
}
- else
- {
- return null;
- }
+
+ return null;
}
}
diff --git a/vendor/simplepie/simplepie/library/SimplePie/Registry.php b/vendor/simplepie/simplepie/library/SimplePie/Registry.php
index e0909bb74..bf3baf179 100755
--- a/vendor/simplepie/simplepie/library/SimplePie/Registry.php
+++ b/vendor/simplepie/simplepie/library/SimplePie/Registry.php
@@ -5,7 +5,7 @@
* A PHP-Based RSS and Atom Feed Framework.
* Takes the hard work out of managing a complete RSS/Atom solution.
*
- * Copyright (c) 2004-2016, Ryan Parman, Geoffrey Sneddon, Ryan McCue, and contributors
+ * Copyright (c) 2004-2016, Ryan Parman, Sam Sneddon, Ryan McCue, and contributors
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification, are
@@ -33,9 +33,9 @@
* POSSIBILITY OF SUCH DAMAGE.
*
* @package SimplePie
- * @copyright 2004-2016 Ryan Parman, Geoffrey Sneddon, Ryan McCue
+ * @copyright 2004-2016 Ryan Parman, Sam Sneddon, Ryan McCue
* @author Ryan Parman
- * @author Geoffrey Sneddon
+ * @author Sam Sneddon
* @author Ryan McCue
* @link http://simplepie.org/ SimplePie
* @license http://www.opensource.org/licenses/bsd-license.php BSD License
diff --git a/vendor/simplepie/simplepie/library/SimplePie/Restriction.php b/vendor/simplepie/simplepie/library/SimplePie/Restriction.php
index 001a5cd28..950017fae 100644
--- a/vendor/simplepie/simplepie/library/SimplePie/Restriction.php
+++ b/vendor/simplepie/simplepie/library/SimplePie/Restriction.php
@@ -5,7 +5,7 @@
* A PHP-Based RSS and Atom Feed Framework.
* Takes the hard work out of managing a complete RSS/Atom solution.
*
- * Copyright (c) 2004-2016, Ryan Parman, Geoffrey Sneddon, Ryan McCue, and contributors
+ * Copyright (c) 2004-2016, Ryan Parman, Sam Sneddon, Ryan McCue, and contributors
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification, are
@@ -33,9 +33,9 @@
* POSSIBILITY OF SUCH DAMAGE.
*
* @package SimplePie
- * @copyright 2004-2016 Ryan Parman, Geoffrey Sneddon, Ryan McCue
+ * @copyright 2004-2016 Ryan Parman, Sam Sneddon, Ryan McCue
* @author Ryan Parman
- * @author Geoffrey Sneddon
+ * @author Sam Sneddon
* @author Ryan McCue
* @link http://simplepie.org/ SimplePie
* @license http://www.opensource.org/licenses/bsd-license.php BSD License
@@ -112,10 +112,8 @@ class SimplePie_Restriction
{
return $this->relationship;
}
- else
- {
- return null;
- }
+
+ return null;
}
/**
@@ -129,10 +127,8 @@ class SimplePie_Restriction
{
return $this->type;
}
- else
- {
- return null;
- }
+
+ return null;
}
/**
@@ -146,9 +142,7 @@ class SimplePie_Restriction
{
return $this->value;
}
- else
- {
- return null;
- }
+
+ return null;
}
}
diff --git a/vendor/simplepie/simplepie/library/SimplePie/Sanitize.php b/vendor/simplepie/simplepie/library/SimplePie/Sanitize.php
index 5a11721df..35838032f 100644
--- a/vendor/simplepie/simplepie/library/SimplePie/Sanitize.php
+++ b/vendor/simplepie/simplepie/library/SimplePie/Sanitize.php
@@ -5,7 +5,7 @@
* A PHP-Based RSS and Atom Feed Framework.
* Takes the hard work out of managing a complete RSS/Atom solution.
*
- * Copyright (c) 2004-2016, Ryan Parman, Geoffrey Sneddon, Ryan McCue, and contributors
+ * Copyright (c) 2004-2016, Ryan Parman, Sam Sneddon, Ryan McCue, and contributors
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification, are
@@ -33,9 +33,9 @@
* POSSIBILITY OF SUCH DAMAGE.
*
* @package SimplePie
- * @copyright 2004-2016 Ryan Parman, Geoffrey Sneddon, Ryan McCue
+ * @copyright 2004-2016 Ryan Parman, Sam Sneddon, Ryan McCue
* @author Ryan Parman
- * @author Geoffrey Sneddon
+ * @author Sam Sneddon
* @author Ryan McCue
* @link http://simplepie.org/ SimplePie
* @license http://www.opensource.org/licenses/bsd-license.php BSD License
@@ -354,7 +354,7 @@ class SimplePie_Sanitize
}
else
{
- trigger_error("$this->cache_location is not writeable. Make sure you've set the correct relative or absolute path, and that the location is server-writable.", E_USER_WARNING);
+ trigger_error("$this->cache_location is not writable. Make sure you've set the correct relative or absolute path, and that the location is server-writable.", E_USER_WARNING);
}
}
}
@@ -365,14 +365,7 @@ class SimplePie_Sanitize
// Get content node
$div = $document->getElementsByTagName('body')->item(0)->firstChild;
// Finally, convert to a HTML string
- if (version_compare(PHP_VERSION, '5.3.6', '>='))
- {
- $data = trim($document->saveHTML($div));
- }
- else
- {
- $data = trim($document->saveXML($div));
- }
+ $data = trim($document->saveHTML($div));
if ($this->remove_div)
{
diff --git a/vendor/simplepie/simplepie/library/SimplePie/Source.php b/vendor/simplepie/simplepie/library/SimplePie/Source.php
index 1a66a392d..f14e5b220 100644
--- a/vendor/simplepie/simplepie/library/SimplePie/Source.php
+++ b/vendor/simplepie/simplepie/library/SimplePie/Source.php
@@ -5,7 +5,7 @@
* A PHP-Based RSS and Atom Feed Framework.
* Takes the hard work out of managing a complete RSS/Atom solution.
*
- * Copyright (c) 2004-2016, Ryan Parman, Geoffrey Sneddon, Ryan McCue, and contributors
+ * Copyright (c) 2004-2016, Ryan Parman, Sam Sneddon, Ryan McCue, and contributors
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification, are
@@ -33,9 +33,9 @@
* POSSIBILITY OF SUCH DAMAGE.
*
* @package SimplePie
- * @copyright 2004-2016 Ryan Parman, Geoffrey Sneddon, Ryan McCue
+ * @copyright 2004-2016 Ryan Parman, Sam Sneddon, Ryan McCue
* @author Ryan Parman
- * @author Geoffrey Sneddon
+ * @author Sam Sneddon
* @author Ryan McCue
* @link http://simplepie.org/ SimplePie
* @license http://www.opensource.org/licenses/bsd-license.php BSD License
@@ -79,10 +79,8 @@ class SimplePie_Source
{
return $this->data['child'][$namespace][$tag];
}
- else
- {
- return null;
- }
+
+ return null;
}
public function get_base($element = array())
@@ -130,10 +128,8 @@ class SimplePie_Source
{
return $this->sanitize($return[0]['data'], SIMPLEPIE_CONSTRUCT_TEXT);
}
- else
- {
- return null;
- }
+
+ return null;
}
public function get_category($key = 0)
@@ -143,10 +139,8 @@ class SimplePie_Source
{
return $categories[$key];
}
- else
- {
- return null;
- }
+
+ return null;
}
public function get_categories()
@@ -200,10 +194,8 @@ class SimplePie_Source
{
return array_unique($categories);
}
- else
- {
- return null;
- }
+
+ return null;
}
public function get_author($key = 0)
@@ -213,10 +205,8 @@ class SimplePie_Source
{
return $authors[$key];
}
- else
- {
- return null;
- }
+
+ return null;
}
public function get_authors()
@@ -283,10 +273,8 @@ class SimplePie_Source
{
return array_unique($authors);
}
- else
- {
- return null;
- }
+
+ return null;
}
public function get_contributor($key = 0)
@@ -296,10 +284,8 @@ class SimplePie_Source
{
return $contributors[$key];
}
- else
- {
- return null;
- }
+
+ return null;
}
public function get_contributors()
@@ -354,10 +340,8 @@ class SimplePie_Source
{
return array_unique($contributors);
}
- else
- {
- return null;
- }
+
+ return null;
}
public function get_link($key = 0, $rel = 'alternate')
@@ -367,10 +351,8 @@ class SimplePie_Source
{
return $links[$key];
}
- else
- {
- return null;
- }
+
+ return null;
}
/**
@@ -449,10 +431,8 @@ class SimplePie_Source
{
return $this->data['links'][$rel];
}
- else
- {
- return null;
- }
+
+ return null;
}
public function get_description()
@@ -493,10 +473,8 @@ class SimplePie_Source
{
return $this->sanitize($return[0]['data'], SIMPLEPIE_CONSTRUCT_HTML, $this->get_base($return[0]));
}
- else
- {
- return null;
- }
+
+ return null;
}
public function get_copyright()
@@ -521,10 +499,8 @@ class SimplePie_Source
{
return $this->sanitize($return[0]['data'], SIMPLEPIE_CONSTRUCT_TEXT);
}
- else
- {
- return null;
- }
+
+ return null;
}
public function get_language()
@@ -545,10 +521,8 @@ class SimplePie_Source
{
return $this->sanitize($this->data['xml_lang'], SIMPLEPIE_CONSTRUCT_TEXT);
}
- else
- {
- return null;
- }
+
+ return null;
}
public function get_latitude()
@@ -561,10 +535,8 @@ class SimplePie_Source
{
return (float) $match[1];
}
- else
- {
- return null;
- }
+
+ return null;
}
public function get_longitude()
@@ -581,10 +553,8 @@ class SimplePie_Source
{
return (float) $match[2];
}
- else
- {
- return null;
- }
+
+ return null;
}
public function get_image_url()
@@ -601,10 +571,7 @@ class SimplePie_Source
{
return $this->sanitize($return[0]['data'], SIMPLEPIE_CONSTRUCT_IRI, $this->get_base($return[0]));
}
- else
- {
- return null;
- }
+
+ return null;
}
}
-
diff --git a/vendor/simplepie/simplepie/library/SimplePie/XML/Declaration/Parser.php b/vendor/simplepie/simplepie/library/SimplePie/XML/Declaration/Parser.php
index 99e751672..0c857a586 100644
--- a/vendor/simplepie/simplepie/library/SimplePie/XML/Declaration/Parser.php
+++ b/vendor/simplepie/simplepie/library/SimplePie/XML/Declaration/Parser.php
@@ -5,7 +5,7 @@
* A PHP-Based RSS and Atom Feed Framework.
* Takes the hard work out of managing a complete RSS/Atom solution.
*
- * Copyright (c) 2004-2016, Ryan Parman, Geoffrey Sneddon, Ryan McCue, and contributors
+ * Copyright (c) 2004-2016, Ryan Parman, Sam Sneddon, Ryan McCue, and contributors
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification, are
@@ -33,9 +33,9 @@
* POSSIBILITY OF SUCH DAMAGE.
*
* @package SimplePie
- * @copyright 2004-2016 Ryan Parman, Geoffrey Sneddon, Ryan McCue
+ * @copyright 2004-2016 Ryan Parman, Sam Sneddon, Ryan McCue
* @author Ryan Parman
- * @author Geoffrey Sneddon
+ * @author Sam Sneddon
* @author Ryan McCue
* @link http://simplepie.org/ SimplePie
* @license http://www.opensource.org/licenses/bsd-license.php BSD License
@@ -136,13 +136,11 @@ class SimplePie_XML_Declaration_Parser
{
return true;
}
- else
- {
- $this->version = '';
- $this->encoding = '';
- $this->standalone = '';
- return false;
- }
+
+ $this->version = '';
+ $this->encoding = '';
+ $this->standalone = '';
+ return false;
}
/**
diff --git a/vendor/simplepie/simplepie/library/SimplePie/gzdecode.php b/vendor/simplepie/simplepie/library/SimplePie/gzdecode.php
index 0e8bc8fc6..9c54f8833 100644
--- a/vendor/simplepie/simplepie/library/SimplePie/gzdecode.php
+++ b/vendor/simplepie/simplepie/library/SimplePie/gzdecode.php
@@ -5,7 +5,7 @@
* A PHP-Based RSS and Atom Feed Framework.
* Takes the hard work out of managing a complete RSS/Atom solution.
*
- * Copyright (c) 2004-2016, Ryan Parman, Geoffrey Sneddon, Ryan McCue, and contributors
+ * Copyright (c) 2004-2016, Ryan Parman, Sam Sneddon, Ryan McCue, and contributors
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification, are
@@ -33,9 +33,9 @@
* POSSIBILITY OF SUCH DAMAGE.
*
* @package SimplePie
- * @copyright 2004-2016 Ryan Parman, Geoffrey Sneddon, Ryan McCue
+ * @copyright 2004-2016 Ryan Parman, Sam Sneddon, Ryan McCue
* @author Ryan Parman
- * @author Geoffrey Sneddon
+ * @author Sam Sneddon
* @author Ryan McCue
* @link http://simplepie.org/ SimplePie
* @license http://www.opensource.org/licenses/bsd-license.php BSD License
@@ -338,10 +338,8 @@ class SimplePie_gzdecode
{
return false;
}
- else
- {
- $this->position = $this->compressed_size - 8;
- }
+
+ $this->position = $this->compressed_size - 8;
// Check CRC of data
$crc = current(unpack('V', substr($this->compressed_data, $this->position, 4)));
@@ -362,9 +360,7 @@ class SimplePie_gzdecode
// Wow, against all odds, we've actually got a valid gzip string
return true;
}
- else
- {
- return false;
- }
+
+ return false;
}
}
diff --git a/vendor/splitbrain/php-archive/src/Archive.php b/vendor/splitbrain/php-archive/src/Archive.php
index d672cc6ec..45c87fda6 100644
--- a/vendor/splitbrain/php-archive/src/Archive.php
+++ b/vendor/splitbrain/php-archive/src/Archive.php
@@ -10,12 +10,15 @@ abstract class Archive
const COMPRESS_GZIP = 1;
const COMPRESS_BZIP = 2;
+ /** @var callable */
+ protected $callback;
+
/**
* Set the compression level and type
*
* @param int $level Compression level (0 to 9)
* @param int $type Type of compression to use (use COMPRESS_* constants)
- * @return mixed
+ * @throws ArchiveIllegalCompressionException
*/
abstract public function setCompression($level = 9, $type = Archive::COMPRESS_AUTO);
@@ -117,16 +120,16 @@ abstract class Archive
*/
abstract public function save($file);
-}
-
-class ArchiveIOException extends \Exception
-{
-}
-
-class ArchiveIllegalCompressionException extends \Exception
-{
-}
-
-class ArchiveCorruptedException extends \Exception
-{
+ /**
+ * Set a callback function to be called whenever a file is added or extracted.
+ *
+ * The callback is called with a FileInfo object as parameter. You can use this to show progress
+ * info during an operation.
+ *
+ * @param callable $callback
+ */
+ public function setCallback($callback)
+ {
+ $this->callback = $callback;
+ }
}
diff --git a/vendor/splitbrain/php-archive/src/ArchiveCorruptedException.php b/vendor/splitbrain/php-archive/src/ArchiveCorruptedException.php
new file mode 100644
index 000000000..a87cff4ff
--- /dev/null
+++ b/vendor/splitbrain/php-archive/src/ArchiveCorruptedException.php
@@ -0,0 +1,10 @@
+<?php
+
+namespace splitbrain\PHPArchive;
+
+/**
+ * The archive is unreadable
+ */
+class ArchiveCorruptedException extends \Exception
+{
+} \ No newline at end of file
diff --git a/vendor/splitbrain/php-archive/src/ArchiveIOException.php b/vendor/splitbrain/php-archive/src/ArchiveIOException.php
new file mode 100644
index 000000000..6128caf2f
--- /dev/null
+++ b/vendor/splitbrain/php-archive/src/ArchiveIOException.php
@@ -0,0 +1,10 @@
+<?php
+
+namespace splitbrain\PHPArchive;
+
+/**
+ * Read/Write Errors
+ */
+class ArchiveIOException extends \Exception
+{
+} \ No newline at end of file
diff --git a/vendor/splitbrain/php-archive/src/ArchiveIllegalCompressionException.php b/vendor/splitbrain/php-archive/src/ArchiveIllegalCompressionException.php
new file mode 100644
index 000000000..40a680f37
--- /dev/null
+++ b/vendor/splitbrain/php-archive/src/ArchiveIllegalCompressionException.php
@@ -0,0 +1,10 @@
+<?php
+
+namespace splitbrain\PHPArchive;
+
+/**
+ * Bad or unsupported compression settings requested
+ */
+class ArchiveIllegalCompressionException extends \Exception
+{
+} \ No newline at end of file
diff --git a/vendor/splitbrain/php-archive/src/FileInfo.php b/vendor/splitbrain/php-archive/src/FileInfo.php
index 99f60c0fe..11fca7e4f 100644
--- a/vendor/splitbrain/php-archive/src/FileInfo.php
+++ b/vendor/splitbrain/php-archive/src/FileInfo.php
@@ -288,7 +288,6 @@ class FileInfo
* the prefix will be stripped. It is recommended to give prefixes with a trailing slash.
*
* @param int|string $strip
- * @return FileInfo
*/
public function strip($strip)
{
@@ -339,6 +338,3 @@ class FileInfo
}
}
-class FileInfoException extends \Exception
-{
-} \ No newline at end of file
diff --git a/vendor/splitbrain/php-archive/src/FileInfoException.php b/vendor/splitbrain/php-archive/src/FileInfoException.php
new file mode 100644
index 000000000..9c6acaac2
--- /dev/null
+++ b/vendor/splitbrain/php-archive/src/FileInfoException.php
@@ -0,0 +1,10 @@
+<?php
+
+namespace splitbrain\PHPArchive;
+
+/**
+ * File meta data problems
+ */
+class FileInfoException extends \Exception
+{
+} \ No newline at end of file
diff --git a/vendor/splitbrain/php-archive/src/Tar.php b/vendor/splitbrain/php-archive/src/Tar.php
index 5f01f39bd..9550b6c91 100644
--- a/vendor/splitbrain/php-archive/src/Tar.php
+++ b/vendor/splitbrain/php-archive/src/Tar.php
@@ -28,12 +28,15 @@ class Tar extends Archive
* Sets the compression to use
*
* @param int $level Compression level (0 to 9)
- * @param int $type Type of compression to use (use COMPRESS_* constants)
- * @return mixed
+ * @param int $type Type of compression to use (use COMPRESS_* constants)
+ * @throws ArchiveIllegalCompressionException
*/
public function setCompression($level = 9, $type = Archive::COMPRESS_AUTO)
{
$this->compressioncheck($type);
+ if ($level < -1 || $level > 9) {
+ throw new ArchiveIllegalCompressionException('Compression level should be between -1 and 9');
+ }
$this->comptype = $type;
$this->complevel = $level;
if($level == 0) $this->comptype = Archive::COMPRESS_NONE;
@@ -45,6 +48,7 @@ class Tar extends Archive
*
* @param string $file
* @throws ArchiveIOException
+ * @throws ArchiveIllegalCompressionException
*/
public function open($file)
{
@@ -79,6 +83,7 @@ class Tar extends Archive
* Reopen the file with open() again if you want to do additional operations
*
* @throws ArchiveIOException
+ * @throws ArchiveCorruptedException
* @returns FileInfo[]
*/
public function contents()
@@ -120,11 +125,12 @@ class Tar extends Archive
* The archive is closed afer reading the contents, because rewinding is not possible in bzip2 streams.
* Reopen the file with open() again if you want to do additional operations
*
- * @param string $outdir the target directory for extracting
- * @param int|string $strip either the number of path components or a fixed prefix to strip
- * @param string $exclude a regular expression of files to exclude
- * @param string $include a regular expression of files to include
+ * @param string $outdir the target directory for extracting
+ * @param int|string $strip either the number of path components or a fixed prefix to strip
+ * @param string $exclude a regular expression of files to exclude
+ * @param string $include a regular expression of files to include
* @throws ArchiveIOException
+ * @throws ArchiveCorruptedException
* @return FileInfo[]
*/
public function extract($outdir, $strip = '', $exclude = '', $include = '')
@@ -178,12 +184,15 @@ class Tar extends Archive
}
fclose($fp);
- touch($output, $fileinfo->getMtime());
- chmod($output, $fileinfo->getMode());
+ @touch($output, $fileinfo->getMtime());
+ @chmod($output, $fileinfo->getMode());
} else {
$this->skipbytes(ceil($header['size'] / 512) * 512); // the size is usually 0 for directories
}
+ if(is_callable($this->callback)) {
+ call_user_func($this->callback, $fileinfo);
+ }
$extracted[] = $fileinfo;
}
@@ -198,6 +207,7 @@ class Tar extends Archive
*
* @param string $file
* @throws ArchiveIOException
+ * @throws ArchiveIllegalCompressionException
*/
public function create($file = '')
{
@@ -234,6 +244,7 @@ class Tar extends Archive
* @param string|FileInfo $fileinfo either the name to us in archive (string) or a FileInfo oject with all meta data, empty to take from original
* @throws ArchiveCorruptedException when the file changes while reading it, the archive will be corrupt and should be deleted
* @throws ArchiveIOException there was trouble reading the given file, it was not added
+ * @throws FileInfoException trouble reading file info, it was not added
*/
public function addFile($file, $fileinfo = '')
{
@@ -273,6 +284,10 @@ class Tar extends Archive
$this->close();
throw new ArchiveCorruptedException("The size of $file changed while reading, archive corrupted. read $read expected ".$fileinfo->getSize());
}
+
+ if(is_callable($this->callback)) {
+ call_user_func($this->callback, $fileinfo);
+ }
}
/**
@@ -299,6 +314,10 @@ class Tar extends Archive
for ($s = 0; $s < $len; $s += 512) {
$this->writebytes(pack("a512", substr($data, $s, 512)));
}
+
+ if (is_callable($this->callback)) {
+ call_user_func($this->callback, $fileinfo);
+ }
}
/**
@@ -311,6 +330,7 @@ class Tar extends Archive
* consists of two 512 blocks of zero bytes"
*
* @link http://www.gnu.org/software/tar/manual/html_chapter/tar_8.html#SEC134
+ * @throws ArchiveIOException
*/
public function close()
{
@@ -346,6 +366,7 @@ class Tar extends Archive
* Returns the created in-memory archive data
*
* This implicitly calls close() on the Archive
+ * @throws ArchiveIOException
*/
public function getArchive()
{
@@ -372,6 +393,7 @@ class Tar extends Archive
*
* @param string $file
* @throws ArchiveIOException
+ * @throws ArchiveIllegalCompressionException
*/
public function save($file)
{
@@ -451,9 +473,10 @@ class Tar extends Archive
}
/**
- * Write the given file metat data as header
+ * Write the given file meta data as header
*
* @param FileInfo $fileinfo
+ * @throws ArchiveIOException
*/
protected function writeFileHeader(FileInfo $fileinfo)
{
@@ -472,12 +495,13 @@ class Tar extends Archive
* Write a file header to the stream
*
* @param string $name
- * @param int $uid
- * @param int $gid
- * @param int $perm
- * @param int $size
- * @param int $mtime
+ * @param int $uid
+ * @param int $gid
+ * @param int $perm
+ * @param int $size
+ * @param int $mtime
* @param string $typeflag Set to '5' for directories
+ * @throws ArchiveIOException
*/
protected function writeRawFileHeader($name, $uid, $gid, $perm, $size, $mtime, $typeflag = '')
{
@@ -664,4 +688,5 @@ class Tar extends Archive
return Archive::COMPRESS_NONE;
}
+
}
diff --git a/vendor/splitbrain/php-archive/src/Zip.php b/vendor/splitbrain/php-archive/src/Zip.php
index e84516b63..3dade8063 100644
--- a/vendor/splitbrain/php-archive/src/Zip.php
+++ b/vendor/splitbrain/php-archive/src/Zip.php
@@ -34,10 +34,13 @@ class Zip extends Archive
*
* @param int $level Compression level (0 to 9)
* @param int $type Type of compression to use ignored for ZIP
- * @return mixed
+ * @throws ArchiveIllegalCompressionException
*/
public function setCompression($level = 9, $type = Archive::COMPRESS_AUTO)
{
+ if ($level < -1 || $level > 9) {
+ throw new ArchiveIllegalCompressionException('Compression level should be between -1 and 9');
+ }
$this->complevel = $level;
}
@@ -152,6 +155,9 @@ class Zip extends Archive
// nothing more to do for directories
if ($fileinfo->getIsdir()) {
+ if(is_callable($this->callback)) {
+ call_user_func($this->callback, $fileinfo);
+ }
continue;
}
@@ -226,8 +232,11 @@ class Zip extends Archive
unlink($extractto); // remove temporary gz file
}
- touch($output, $fileinfo->getMtime());
+ @touch($output, $fileinfo->getMtime());
//FIXME what about permissions?
+ if(is_callable($this->callback)) {
+ call_user_func($this->callback, $fileinfo);
+ }
}
$this->close();
@@ -271,9 +280,10 @@ class Zip extends Archive
/**
* Add a file to the current archive using an existing file in the filesystem
*
- * @param string $file path to the original file
+ * @param string $file path to the original file
* @param string|FileInfo $fileinfo either the name to use in archive (string) or a FileInfo oject with all meta data, empty to take from original
* @throws ArchiveIOException
+ * @throws FileInfoException
*/
public function addFile($file, $fileinfo = '')
{
@@ -350,6 +360,10 @@ class Zip extends Archive
$name,
(bool) $this->complevel
);
+
+ if(is_callable($this->callback)) {
+ call_user_func($this->callback, $fileinfo);
+ }
}
/**
@@ -357,6 +371,7 @@ class Zip extends Archive
*
* After a call to this function no more data can be added to the archive, for
* read access no reading is allowed anymore
+ * @throws ArchiveIOException
*/
public function close()
{
@@ -400,6 +415,7 @@ class Zip extends Archive
* Returns the created in-memory archive data
*
* This implicitly calls close() on the Archive
+ * @throws ArchiveIOException
*/
public function getArchive()
{
diff --git a/vendor/splitbrain/php-cli/README.md b/vendor/splitbrain/php-cli/README.md
index 7cc52ed81..5e42a55eb 100644
--- a/vendor/splitbrain/php-cli/README.md
+++ b/vendor/splitbrain/php-cli/README.md
@@ -10,7 +10,7 @@ It takes care of
- **colored output**
- **optional PSR3 compatibility**
-It is lightweight and has **no 3rd party dependencies**.
+It is lightweight and has **no 3rd party dependencies**. Note: this is for non-interactive scripts only. It has no readline or similar support.
[![Build Status](https://travis-ci.org/splitbrain/php-cli.svg)](https://travis-ci.org/splitbrain/php-cli)
@@ -155,4 +155,4 @@ Messages from `warning` level onwards are printed to `STDERR` all below are prin
The default log level of your script can be set by overwriting the `$logdefault` member.
-See `example/logging.php` for an example. \ No newline at end of file
+See `example/logging.php` for an example.
diff --git a/vendor/splitbrain/php-cli/src/CLI.php b/vendor/splitbrain/php-cli/src/CLI.php
index 569ec6756..2ee799027 100644
--- a/vendor/splitbrain/php-cli/src/CLI.php
+++ b/vendor/splitbrain/php-cli/src/CLI.php
@@ -21,7 +21,7 @@ abstract class CLI
/** @var array PSR-3 compatible loglevels and their prefix, color, output channel */
protected $loglevel = array(
- 'debug' => array('', Colors::C_LIGHTGRAY, STDOUT),
+ 'debug' => array('', Colors::C_RESET, STDOUT),
'info' => array('ℹ ', Colors::C_CYAN, STDOUT),
'notice' => array('☛ ', Colors::C_CYAN, STDOUT),
'success' => array('✓ ', Colors::C_GREEN, STDOUT),
@@ -77,7 +77,8 @@ abstract class CLI
* Execute the CLI program
*
* Executes the setup() routine, adds default options, initiate the options parsing and argument checking
- * and finally executes main()
+ * and finally executes main() - Each part is split into their own protected function below, so behaviour
+ * can easily be overwritten
*
* @throws Exception
*/
@@ -87,11 +88,27 @@ abstract class CLI
throw new Exception('This has to be run from the command line');
}
- // setup
$this->setup($this->options);
+ $this->registerDefaultOptions();
+ $this->parseOptions();
+ $this->handleDefaultOptions();
+ $this->setupLogging();
+ $this->checkArgments();
+ $this->execute();
+
+ exit(0);
+ }
+
+ // region run handlers - for easier overriding
+
+ /**
+ * Add the default help, color and log options
+ */
+ protected function registerDefaultOptions()
+ {
$this->options->registerOption(
'help',
- 'Display this help screen and exit immeadiately.',
+ 'Display this help screen and exit immediately.',
'h'
);
$this->options->registerOption(
@@ -105,11 +122,13 @@ abstract class CLI
null,
'level'
);
+ }
- // parse
- $this->options->parseOptions();
-
- // handle defaults
+ /**
+ * Handle the default options
+ */
+ protected function handleDefaultOptions()
+ {
if ($this->options->getOpt('no-colors')) {
$this->colors->disable();
}
@@ -117,22 +136,47 @@ abstract class CLI
echo $this->options->help();
exit(0);
}
+ }
+
+ /**
+ * Handle the logging options
+ */
+ protected function setupLogging()
+ {
$level = $this->options->getOpt('loglevel', $this->logdefault);
if (!isset($this->loglevel[$level])) $this->fatal('Unknown log level');
foreach (array_keys($this->loglevel) as $l) {
if ($l == $level) break;
unset($this->loglevel[$l]);
}
+ }
- // check arguments
+ /**
+ * Wrapper around the option parsing
+ */
+ protected function parseOptions()
+ {
+ $this->options->parseOptions();
+ }
+
+ /**
+ * Wrapper around the argument checking
+ */
+ protected function checkArgments()
+ {
$this->options->checkArguments();
+ }
- // execute
+ /**
+ * Wrapper around main
+ */
+ protected function execute()
+ {
$this->main($this->options);
-
- exit(0);
}
+ // endregion
+
// region logging
/**
@@ -286,7 +330,7 @@ abstract class CLI
/** @var string $color */
/** @var resource $channel */
list($prefix, $color, $channel) = $this->loglevel[$level];
- if(!$this->colors->isEnabled()) $prefix = '';
+ if (!$this->colors->isEnabled()) $prefix = '';
$message = $this->interpolate($message, $context);
$this->colors->ptln($prefix . $message, $color, $channel);
diff --git a/vendor/splitbrain/php-cli/src/Exception.php b/vendor/splitbrain/php-cli/src/Exception.php
index b2aa98115..4d24d587a 100644
--- a/vendor/splitbrain/php-cli/src/Exception.php
+++ b/vendor/splitbrain/php-cli/src/Exception.php
@@ -11,7 +11,7 @@ namespace splitbrain\phpcli;
* @author Andreas Gohr <andi@splitbrain.org>
* @license MIT
*/
-class Exception extends \Exception
+class Exception extends \RuntimeException
{
const E_ANY = -1; // no error code specified
const E_UNKNOWN_OPT = 1; //Unrecognized option
diff --git a/vendor/splitbrain/php-cli/src/Options.php b/vendor/splitbrain/php-cli/src/Options.php
index 4d8b44deb..76733aa16 100644
--- a/vendor/splitbrain/php-cli/src/Options.php
+++ b/vendor/splitbrain/php-cli/src/Options.php
@@ -58,6 +58,14 @@ class Options
$this->options = array();
}
+
+ /**
+ * Gets the bin value
+ */
+ public function getBin()
+ {
+ return $this->bin;
+ }
/**
* Sets the help text for the tool itself
diff --git a/vendor/splitbrain/php-cli/src/TableFormatter.php b/vendor/splitbrain/php-cli/src/TableFormatter.php
index 73fd6b36e..23bb89472 100644
--- a/vendor/splitbrain/php-cli/src/TableFormatter.php
+++ b/vendor/splitbrain/php-cli/src/TableFormatter.php
@@ -29,15 +29,7 @@ class TableFormatter
public function __construct(Colors $colors = null)
{
// try to get terminal width
- $width = 0;
- if (isset($_SERVER['COLUMNS'])) {
- // from environment
- $width = (int)$_SERVER['COLUMNS'];
- }
- if (!$width) {
- // via tput command
- $width = @exec('tput cols');
- }
+ $width = $this->getTerminalWidth();
if ($width) {
$this->max = $width - 1;
}
@@ -93,6 +85,27 @@ class TableFormatter
}
/**
+ * Tries to figure out the width of the terminal
+ *
+ * @return int terminal width, 0 if unknown
+ */
+ protected function getTerminalWidth()
+ {
+ // from environment
+ if (isset($_SERVER['COLUMNS'])) return (int)$_SERVER['COLUMNS'];
+
+ // via tput
+ $process = proc_open('tput cols', array(
+ 1 => array('pipe', 'w'),
+ 2 => array('pipe', 'w'),
+ ), $pipes);
+ $width = (int)stream_get_contents($pipes[1]);
+ proc_close($process);
+
+ return $width;
+ }
+
+ /**
* Takes an array with dynamic column width and calculates the correct width
*
* Column width can be given as fixed char widths, percentages and a single * width can be given
@@ -260,7 +273,12 @@ class TableFormatter
if (function_exists('mb_substr')) {
return mb_substr($string, $start, $length);
} else {
- return substr($string, $start, $length);
+ // mb_substr() treats $length differently than substr()
+ if ($length) {
+ return substr($string, $start, $length);
+ } else {
+ return substr($string, $start);
+ }
}
}