├── README.md
├── composer.json
├── composer.lock
├── extras
├── docroot.sublime-snippet
└── php.ini
├── images
├── badge.png
└── icon.png
├── index.php
├── mysw.js
├── scripts
└── main.js
├── send_push_notification.php
└── vendor
├── autoload.php
├── beberlei
└── assert
│ ├── LICENSE
│ ├── composer.json
│ └── lib
│ └── Assert
│ ├── Assert.php
│ ├── Assertion.php
│ ├── AssertionChain.php
│ ├── AssertionFailedException.php
│ ├── InvalidArgumentException.php
│ ├── LazyAssertion.php
│ ├── LazyAssertionException.php
│ └── functions.php
├── composer
├── ClassLoader.php
├── LICENSE
├── autoload_classmap.php
├── autoload_files.php
├── autoload_namespaces.php
├── autoload_psr4.php
├── autoload_real.php
├── autoload_static.php
└── installed.json
├── fgrosse
└── phpasn1
│ ├── .coveralls.yml
│ ├── .gitignore
│ ├── .styleci.yml
│ ├── .travis.yml
│ ├── CHANGELOG.md
│ ├── LICENSE
│ ├── README.md
│ ├── composer.json
│ ├── composer.lock
│ ├── examples
│ ├── Issue14.php
│ ├── Issue29.php
│ ├── Issue43.php
│ ├── Issue57.php
│ ├── allClasses.php
│ ├── common.css
│ ├── getObjectIdentifier.php
│ ├── hexdump.php
│ ├── index.html
│ ├── parseBinary.php
│ ├── readmeExample.php
│ └── shared.php
│ ├── lib
│ ├── ASN1
│ │ ├── AbstractString.php
│ │ ├── AbstractTime.php
│ │ ├── Base128.php
│ │ ├── Composite
│ │ │ ├── AttributeTypeAndValue.php
│ │ │ ├── RDNString.php
│ │ │ └── RelativeDistinguishedName.php
│ │ ├── Construct.php
│ │ ├── Exception
│ │ │ ├── NotImplementedException.php
│ │ │ └── ParserException.php
│ │ ├── ExplicitlyTaggedObject.php
│ │ ├── Identifier.php
│ │ ├── OID.php
│ │ ├── Object.php
│ │ ├── Parsable.php
│ │ ├── TemplateParser.php
│ │ ├── Universal
│ │ │ ├── BMPString.php
│ │ │ ├── BitString.php
│ │ │ ├── Boolean.php
│ │ │ ├── CharacterString.php
│ │ │ ├── Enumerated.php
│ │ │ ├── GeneralString.php
│ │ │ ├── GeneralizedTime.php
│ │ │ ├── GraphicString.php
│ │ │ ├── IA5String.php
│ │ │ ├── Integer.php
│ │ │ ├── Null.php
│ │ │ ├── NullObject.php
│ │ │ ├── NumericString.php
│ │ │ ├── ObjectDescriptor.php
│ │ │ ├── ObjectIdentifier.php
│ │ │ ├── OctetString.php
│ │ │ ├── PrintableString.php
│ │ │ ├── RelativeObjectIdentifier.php
│ │ │ ├── Sequence.php
│ │ │ ├── Set.php
│ │ │ ├── T61String.php
│ │ │ ├── UTCTime.php
│ │ │ ├── UTF8String.php
│ │ │ ├── UniversalString.php
│ │ │ └── VisibleString.php
│ │ ├── UnknownConstructedObject.php
│ │ └── UnknownObject.php
│ └── X509
│ │ ├── AlgorithmIdentifier.php
│ │ ├── CSR
│ │ ├── Attributes.php
│ │ └── CSR.php
│ │ ├── CertificateExtensions.php
│ │ ├── CertificateSubject.php
│ │ ├── PrivateKey.php
│ │ ├── PublicKey.php
│ │ └── SAN
│ │ ├── DNSName.php
│ │ ├── IPAddress.php
│ │ └── SubjectAlternativeNames.php
│ ├── phpunit.xml.dist
│ └── tests
│ ├── ASN1
│ ├── Base128Test.php
│ ├── Composite
│ │ └── RelativeDistinguishedNameTest.php
│ ├── ExplicitlyTaggedObjectTest.php
│ ├── IdentifierTest.php
│ ├── ObjectTest.php
│ ├── TemplateParserTest.php
│ └── Universal
│ │ ├── BMPStringTest.php
│ │ ├── BitStringTest.php
│ │ ├── BooleanTest.php
│ │ ├── CharacterStringTest.php
│ │ ├── EnumeratedTest.php
│ │ ├── GeneralStringTest.php
│ │ ├── GeneralizedTimeTest.php
│ │ ├── GraphicStringTest.php
│ │ ├── IA5StringTest.php
│ │ ├── IntegerTest.php
│ │ ├── NullObjectTest.php
│ │ ├── NumericStringTest.php
│ │ ├── ObjectDescriptorTest.php
│ │ ├── ObjectIdentifierTest.php
│ │ ├── OctetStringTest.php
│ │ ├── PrintableStringTest.php
│ │ ├── RelativeObjectIdentifierTest.php
│ │ ├── SequenceTest.php
│ │ ├── SetTest.php
│ │ ├── T61StringTest.php
│ │ ├── UTCTimeTest.php
│ │ ├── UTF8StringTest.php
│ │ ├── UniversalStringTest.php
│ │ └── VisibleStringTest.php
│ ├── ASN1TestCase.php
│ ├── DocumentationExamplesTest.php
│ └── X509
│ ├── CSR
│ └── AttributesTest.php
│ ├── CertificateExtensionTest.php
│ ├── CertificateSubjectTest.php
│ ├── DNSNameTest.php
│ ├── IPAddressTest.php
│ └── SubjectAlternativeNamesTest.php
├── guzzlehttp
├── guzzle
│ ├── CHANGELOG.md
│ ├── LICENSE
│ ├── README.md
│ ├── UPGRADING.md
│ ├── composer.json
│ └── src
│ │ ├── Client.php
│ │ ├── ClientInterface.php
│ │ ├── Cookie
│ │ ├── CookieJar.php
│ │ ├── CookieJarInterface.php
│ │ ├── FileCookieJar.php
│ │ ├── SessionCookieJar.php
│ │ └── SetCookie.php
│ │ ├── Exception
│ │ ├── BadResponseException.php
│ │ ├── ClientException.php
│ │ ├── ConnectException.php
│ │ ├── GuzzleException.php
│ │ ├── RequestException.php
│ │ ├── SeekException.php
│ │ ├── ServerException.php
│ │ ├── TooManyRedirectsException.php
│ │ └── TransferException.php
│ │ ├── Handler
│ │ ├── CurlFactory.php
│ │ ├── CurlFactoryInterface.php
│ │ ├── CurlHandler.php
│ │ ├── CurlMultiHandler.php
│ │ ├── EasyHandle.php
│ │ ├── MockHandler.php
│ │ ├── Proxy.php
│ │ └── StreamHandler.php
│ │ ├── HandlerStack.php
│ │ ├── MessageFormatter.php
│ │ ├── Middleware.php
│ │ ├── Pool.php
│ │ ├── PrepareBodyMiddleware.php
│ │ ├── RedirectMiddleware.php
│ │ ├── RequestOptions.php
│ │ ├── RetryMiddleware.php
│ │ ├── TransferStats.php
│ │ ├── UriTemplate.php
│ │ ├── functions.php
│ │ └── functions_include.php
├── promises
│ ├── CHANGELOG.md
│ ├── LICENSE
│ ├── Makefile
│ ├── README.md
│ ├── composer.json
│ └── src
│ │ ├── AggregateException.php
│ │ ├── CancellationException.php
│ │ ├── Coroutine.php
│ │ ├── EachPromise.php
│ │ ├── FulfilledPromise.php
│ │ ├── Promise.php
│ │ ├── PromiseInterface.php
│ │ ├── PromisorInterface.php
│ │ ├── RejectedPromise.php
│ │ ├── RejectionException.php
│ │ ├── TaskQueue.php
│ │ ├── TaskQueueInterface.php
│ │ ├── functions.php
│ │ └── functions_include.php
└── psr7
│ ├── CHANGELOG.md
│ ├── LICENSE
│ ├── README.md
│ ├── composer.json
│ └── src
│ ├── AppendStream.php
│ ├── BufferStream.php
│ ├── CachingStream.php
│ ├── DroppingStream.php
│ ├── FnStream.php
│ ├── InflateStream.php
│ ├── LazyOpenStream.php
│ ├── LimitStream.php
│ ├── MessageTrait.php
│ ├── MultipartStream.php
│ ├── NoSeekStream.php
│ ├── PumpStream.php
│ ├── Request.php
│ ├── Response.php
│ ├── ServerRequest.php
│ ├── Stream.php
│ ├── StreamDecoratorTrait.php
│ ├── StreamWrapper.php
│ ├── UploadedFile.php
│ ├── Uri.php
│ ├── UriNormalizer.php
│ ├── UriResolver.php
│ ├── functions.php
│ └── functions_include.php
├── mdanter
└── ecc
│ ├── .gitignore
│ ├── .scrutinizer.yml
│ ├── .travis.yml
│ ├── Makefile
│ ├── README.md
│ ├── composer.json
│ ├── doc
│ ├── release-notes-0.4.1.md
│ ├── release-notes-0.4.2.md
│ └── release-notes-0.4.md
│ ├── examples
│ ├── creating_signature.php
│ ├── ecdh_exchange.php
│ ├── key_generation.php
│ └── verify_signature.php
│ ├── phpunit.xml
│ ├── src
│ ├── Crypto
│ │ ├── EcDH
│ │ │ ├── EcDH.php
│ │ │ └── EcDHInterface.php
│ │ ├── Key
│ │ │ ├── PrivateKey.php
│ │ │ ├── PrivateKeyInterface.php
│ │ │ ├── PublicKey.php
│ │ │ └── PublicKeyInterface.php
│ │ └── Signature
│ │ │ ├── Signature.php
│ │ │ ├── SignatureInterface.php
│ │ │ └── Signer.php
│ ├── Curves
│ │ ├── CurveFactory.php
│ │ ├── NamedCurveFp.php
│ │ ├── NistCurve.php
│ │ └── SecgCurve.php
│ ├── EccFactory.php
│ ├── Math
│ │ ├── DebugDecorator.php
│ │ ├── GmpMath.php
│ │ ├── GmpMathInterface.php
│ │ ├── MathAdapterFactory.php
│ │ ├── ModularArithmetic.php
│ │ └── NumberTheory.php
│ ├── Primitives
│ │ ├── CurveFp.php
│ │ ├── CurveFpInterface.php
│ │ ├── CurveParameters.php
│ │ ├── GeneratorPoint.php
│ │ ├── Point.php
│ │ └── PointInterface.php
│ ├── Random
│ │ ├── DebugDecorator.php
│ │ ├── HmacRandomNumberGenerator.php
│ │ ├── RandomGeneratorFactory.php
│ │ ├── RandomNumberGenerator.php
│ │ └── RandomNumberGeneratorInterface.php
│ ├── Serializer
│ │ ├── Point
│ │ │ ├── CompressedPointSerializer.php
│ │ │ ├── PointSerializerInterface.php
│ │ │ └── UncompressedPointSerializer.php
│ │ ├── PrivateKey
│ │ │ ├── DerPrivateKeySerializer.php
│ │ │ ├── PemPrivateKeySerializer.php
│ │ │ └── PrivateKeySerializerInterface.php
│ │ ├── PublicKey
│ │ │ ├── Der
│ │ │ │ ├── Formatter.php
│ │ │ │ └── Parser.php
│ │ │ ├── DerPublicKeySerializer.php
│ │ │ ├── PemPublicKeySerializer.php
│ │ │ └── PublicKeySerializerInterface.php
│ │ ├── Signature
│ │ │ ├── Der
│ │ │ │ ├── Formatter.php
│ │ │ │ └── Parser.php
│ │ │ └── DerSignatureSerializer.php
│ │ └── Util
│ │ │ └── CurveOidMapper.php
│ └── Util
│ │ ├── BinaryString.php
│ │ └── NumberSize.php
│ └── tests
│ ├── bootstrap.php
│ ├── data
│ ├── compression.json
│ ├── generated-keypair.pem
│ ├── openssl-priv.key
│ ├── openssl-priv.pem
│ ├── openssl-pub.key
│ ├── openssl-pub.pem
│ ├── primes.lst
│ └── square_root_mod_p.json
│ ├── specs
│ ├── nist-p192.yml
│ ├── nist-p224.yml
│ ├── nist-p256.yml
│ ├── nist-p384.yml
│ ├── nist-p521.yml
│ ├── secp-112r1.yml
│ ├── secp-256k1.yml
│ ├── secp-256r1.yml
│ └── secp-384r1.yml
│ ├── unit
│ ├── AbstractTestCase.php
│ ├── Crypto
│ │ ├── EcDH
│ │ │ ├── EcDHTest.php
│ │ │ └── EcDhMultiPartyTest.php
│ │ ├── Key
│ │ │ ├── PrivateKeyTest.php
│ │ │ └── PublicKeyTest.php
│ │ └── Signature
│ │ │ ├── SignatureTest.php
│ │ │ └── SignerTest.php
│ ├── Curves
│ │ ├── CurveFactoryTest.php
│ │ ├── NamedCurveFpTest.php
│ │ ├── NistCurveTest.php
│ │ ├── SecCurveTest.php
│ │ ├── Secp112r1EcdsaTest.php
│ │ └── SpecBasedCurveTest.php
│ ├── Math
│ │ ├── MathTest.php
│ │ └── NumberTheoryTest.php
│ ├── Primitives
│ │ ├── CurveFpTest.php
│ │ ├── CurveParametersTest.php
│ │ ├── EcArithmeticTest.php
│ │ └── PointTest.php
│ ├── Random
│ │ ├── HmacRandomNumberGeneratorTest.php
│ │ └── RandomGeneratorFactoryTest.php
│ ├── Serializer
│ │ ├── Point
│ │ │ ├── CompressedPointSerializerTest.php
│ │ │ └── UncompressedPointSerializerTest.php
│ │ ├── PrivateKey
│ │ │ ├── DerPrivateKeySerializerTest.php
│ │ │ └── PemPrivateKeySerializerTest.php
│ │ ├── PublicKey
│ │ │ ├── DerPublicKeySerializerTest.php
│ │ │ └── PemPublicKeySerializerTest.php
│ │ ├── Signature
│ │ │ └── DerSignatureSerializerTest.php
│ │ └── Util
│ │ │ └── CurveOidMapperTest.php
│ └── Util
│ │ └── NumberSizeTest.php
│ └── validate_examples.sh
├── minishlink
└── web-push
│ ├── .gitignore
│ ├── .travis.yml
│ ├── CONTRIBUTING.md
│ ├── ISSUE_TEMPLATE.md
│ ├── LICENSE
│ ├── README.md
│ ├── composer.json
│ ├── phpunit.dist.xml
│ ├── phpunit.travis.xml
│ ├── src
│ ├── Encryption.php
│ ├── Notification.php
│ ├── Utils.php
│ ├── VAPID.php
│ └── WebPush.php
│ └── tests
│ ├── EncryptionTest.php
│ ├── PushServiceTest.php
│ ├── VAPIDTest.php
│ └── WebPushTest.php
├── paragonie
└── random_compat
│ ├── LICENSE
│ ├── build-phar.sh
│ ├── composer.json
│ ├── dist
│ ├── random_compat.phar.pubkey
│ └── random_compat.phar.pubkey.asc
│ ├── lib
│ ├── byte_safe_strings.php
│ ├── cast_to_int.php
│ ├── error_polyfill.php
│ ├── random.php
│ ├── random_bytes_com_dotnet.php
│ ├── random_bytes_dev_urandom.php
│ ├── random_bytes_libsodium.php
│ ├── random_bytes_libsodium_legacy.php
│ ├── random_bytes_mcrypt.php
│ └── random_int.php
│ ├── other
│ └── build_phar.php
│ ├── psalm-autoload.php
│ └── psalm.xml
├── psr
├── cache
│ ├── CHANGELOG.md
│ ├── LICENSE.txt
│ ├── README.md
│ ├── composer.json
│ └── src
│ │ ├── CacheException.php
│ │ ├── CacheItemInterface.php
│ │ ├── CacheItemPoolInterface.php
│ │ └── InvalidArgumentException.php
└── http-message
│ ├── CHANGELOG.md
│ ├── LICENSE
│ ├── README.md
│ ├── composer.json
│ └── src
│ ├── MessageInterface.php
│ ├── RequestInterface.php
│ ├── ResponseInterface.php
│ ├── ServerRequestInterface.php
│ ├── StreamInterface.php
│ ├── UploadedFileInterface.php
│ └── UriInterface.php
├── spomky-labs
├── aes-key-wrap
│ ├── LICENSE
│ ├── composer.json
│ └── src
│ │ ├── A128KW.php
│ │ ├── A192KW.php
│ │ ├── A256KW.php
│ │ ├── AESKW.php
│ │ ├── EncryptorInterface.php
│ │ └── OpenSSLEncryptor.php
├── base64url
│ ├── LICENSE
│ ├── composer.json
│ └── src
│ │ └── Base64Url.php
├── jose
│ ├── LICENSE
│ ├── composer.json
│ └── src
│ │ ├── Algorithm
│ │ ├── ContentEncryption
│ │ │ ├── A128CBCHS256.php
│ │ │ ├── A128GCM.php
│ │ │ ├── A192CBCHS384.php
│ │ │ ├── A192GCM.php
│ │ │ ├── A256CBCHS512.php
│ │ │ ├── A256GCM.php
│ │ │ ├── AESCBCHS.php
│ │ │ └── AESGCM.php
│ │ ├── ContentEncryptionAlgorithmInterface.php
│ │ ├── JWAInterface.php
│ │ ├── JWAManager.php
│ │ ├── JWAManagerInterface.php
│ │ ├── KeyEncryption
│ │ │ ├── A128GCMKW.php
│ │ │ ├── A128KW.php
│ │ │ ├── A192GCMKW.php
│ │ │ ├── A192KW.php
│ │ │ ├── A256GCMKW.php
│ │ │ ├── A256KW.php
│ │ │ ├── AESGCMKW.php
│ │ │ ├── AESKW.php
│ │ │ ├── Dir.php
│ │ │ ├── DirectEncryptionInterface.php
│ │ │ ├── ECDHES.php
│ │ │ ├── ECDHESA128KW.php
│ │ │ ├── ECDHESA192KW.php
│ │ │ ├── ECDHESA256KW.php
│ │ │ ├── ECDHESAESKW.php
│ │ │ ├── KeyAgreementInterface.php
│ │ │ ├── KeyAgreementWrappingInterface.php
│ │ │ ├── KeyEncryptionInterface.php
│ │ │ ├── KeyWrappingInterface.php
│ │ │ ├── PBES2AESKW.php
│ │ │ ├── PBES2HS256A128KW.php
│ │ │ ├── PBES2HS384A192KW.php
│ │ │ ├── PBES2HS512A256KW.php
│ │ │ ├── RSA.php
│ │ │ ├── RSA15.php
│ │ │ ├── RSAOAEP.php
│ │ │ └── RSAOAEP256.php
│ │ ├── KeyEncryptionAlgorithmInterface.php
│ │ ├── Signature
│ │ │ ├── ECDSA.php
│ │ │ ├── ES256.php
│ │ │ ├── ES384.php
│ │ │ ├── ES512.php
│ │ │ ├── EdDSA.php
│ │ │ ├── HMAC.php
│ │ │ ├── HS256.php
│ │ │ ├── HS384.php
│ │ │ ├── HS512.php
│ │ │ ├── None.php
│ │ │ ├── PS256.php
│ │ │ ├── PS384.php
│ │ │ ├── PS512.php
│ │ │ ├── RS256.php
│ │ │ ├── RS384.php
│ │ │ ├── RS512.php
│ │ │ └── RSA.php
│ │ └── SignatureAlgorithmInterface.php
│ │ ├── Behaviour
│ │ ├── CommonCipheringMethods.php
│ │ ├── CommonSigningMethods.php
│ │ ├── EncrypterTrait.php
│ │ ├── HasCompressionManager.php
│ │ ├── HasJWAManager.php
│ │ └── HasKeyChecker.php
│ │ ├── Checker
│ │ ├── AudienceChecker.php
│ │ ├── CheckerManager.php
│ │ ├── CheckerManagerInterface.php
│ │ ├── ClaimCheckerInterface.php
│ │ ├── CriticalHeaderChecker.php
│ │ ├── ExpirationTimeChecker.php
│ │ ├── HeaderCheckerInterface.php
│ │ ├── IssuedAtChecker.php
│ │ ├── IssuerChecker.php
│ │ ├── JtiChecker.php
│ │ ├── NotBeforeChecker.php
│ │ └── SubjectChecker.php
│ │ ├── Compression
│ │ ├── CompressionInterface.php
│ │ ├── CompressionManager.php
│ │ ├── CompressionManagerInterface.php
│ │ ├── Deflate.php
│ │ ├── GZip.php
│ │ └── ZLib.php
│ │ ├── Decrypter.php
│ │ ├── DecrypterInterface.php
│ │ ├── Encrypter.php
│ │ ├── EncrypterInterface.php
│ │ ├── Factory
│ │ ├── AlgorithmManagerFactory.php
│ │ ├── CheckerManagerFactory.php
│ │ ├── CompressionManagerFactory.php
│ │ ├── JWEFactory.php
│ │ ├── JWEFactoryInterface.php
│ │ ├── JWKFactory.php
│ │ ├── JWKFactoryInterface.php
│ │ ├── JWSFactory.php
│ │ └── JWSFactoryInterface.php
│ │ ├── JWTCreator.php
│ │ ├── JWTCreatorInterface.php
│ │ ├── JWTLoader.php
│ │ ├── JWTLoaderInterface.php
│ │ ├── KeyConverter
│ │ ├── ECKey.php
│ │ ├── KeyConverter.php
│ │ └── RSAKey.php
│ │ ├── Loader.php
│ │ ├── LoaderInterface.php
│ │ ├── Object
│ │ ├── BaseJWKSet.php
│ │ ├── DownloadedJWKSet.php
│ │ ├── JKUJWKSet.php
│ │ ├── JWE.php
│ │ ├── JWEInterface.php
│ │ ├── JWK.php
│ │ ├── JWKInterface.php
│ │ ├── JWKSet.php
│ │ ├── JWKSetInterface.php
│ │ ├── JWKSetPEM.php
│ │ ├── JWKSets.php
│ │ ├── JWKSetsInterface.php
│ │ ├── JWS.php
│ │ ├── JWSInterface.php
│ │ ├── JWT.php
│ │ ├── JWTInterface.php
│ │ ├── PublicJWKSet.php
│ │ ├── Recipient.php
│ │ ├── RecipientInterface.php
│ │ ├── RotatableInterface.php
│ │ ├── RotatableJWKSet.php
│ │ ├── Signature.php
│ │ ├── SignatureInterface.php
│ │ ├── Storable.php
│ │ ├── StorableInterface.php
│ │ ├── StorableJWK.php
│ │ ├── StorableJWKSet.php
│ │ └── X5UJWKSet.php
│ │ ├── Signer.php
│ │ ├── SignerInterface.php
│ │ ├── Util
│ │ ├── BigInteger.php
│ │ ├── ConcatKDF.php
│ │ ├── Hash.php
│ │ ├── JWELoader.php
│ │ ├── JWSLoader.php
│ │ └── RSA.php
│ │ ├── Verifier.php
│ │ └── VerifierInterface.php
└── php-aes-gcm
│ ├── LICENSE
│ ├── composer.json
│ └── src
│ └── AESGCM.php
└── symfony
├── polyfill-mbstring
├── LICENSE
├── Mbstring.php
├── README.md
├── Resources
│ └── unidata
│ │ ├── lowerCase.php
│ │ └── upperCase.php
├── bootstrap.php
└── composer.json
└── polyfill-php70
├── LICENSE
├── Php70.php
├── README.md
├── Resources
└── stubs
│ ├── ArithmeticError.php
│ ├── AssertionError.php
│ ├── DivisionByZeroError.php
│ ├── Error.php
│ ├── ParseError.php
│ └── TypeError.php
├── bootstrap.php
└── composer.json
/README.md:
--------------------------------------------------------------------------------
1 | # php_push_demo
2 | a demo of how to setup push notification in xampp with php
3 |
--------------------------------------------------------------------------------
/composer.json:
--------------------------------------------------------------------------------
1 | {
2 | "require": {
3 | "minishlink/web-push": "^1.4"
4 | }
5 | }
6 |
--------------------------------------------------------------------------------
/extras/docroot.sublime-snippet:
--------------------------------------------------------------------------------
1 |
2 | ';
14 | echo \$spath.'
';
15 | echo \$servroot.'
';
16 | echo \$hostroot.'
';
17 | echo \$hpath;
18 | echo \$fname.'
';
19 | echo \$name.'
'; exit;*/
20 | ]]>
21 |
22 | php:docroot
23 |
24 |
25 |
26 |
27 |
28 |
--------------------------------------------------------------------------------
/images/badge.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mksmith1a/php_push_demo/168d0e1ad8297cdff314db16612bdf7ebecc4d8e/images/badge.png
--------------------------------------------------------------------------------
/images/icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mksmith1a/php_push_demo/168d0e1ad8297cdff314db16612bdf7ebecc4d8e/images/icon.png
--------------------------------------------------------------------------------
/mysw.js:
--------------------------------------------------------------------------------
1 | //this code was lifted from : https://developers.google.com/web/fundamentals/getting-started/codelabs/push-notifications/
2 | //add i believe it belongs to GOOGLE
3 | 'use strict';
4 |
5 | self.addEventListener('push', function(event) {
6 | console.log('[Service Worker] Push Received.');
7 | console.log(`[Service Worker] Push had this data: `);
8 | console.log(JSON.parse(event.data.text()));//modified from tutorial to make it more dynamic
9 | const notificationObject = JSON.parse(event.data.text());//modified from tutorial to make it more dynamic
10 |
11 | const title = notificationObject.title;//modified from tutorial to make it more dynamic
12 | const options = {
13 | body: notificationObject.msg,
14 | icon: notificationObject.icon,
15 | badge: notificationObject.badge
16 | };
17 | self.notificationURL = notificationObject.url;//modified from tutorial to make it more dynamic
18 | event.waitUntil(self.registration.showNotification(title, options));
19 | });
20 |
21 | self.addEventListener('notificationclick', function(event) {
22 | console.log('[Service Worker] Notification click Received.');
23 | //console.log(self.notificationURL);
24 | event.notification.close();
25 |
26 | event.waitUntil(
27 | clients.openWindow(self.notificationURL)//modified from tutorial to make it more dynamic
28 | );
29 | });
--------------------------------------------------------------------------------
/vendor/autoload.php:
--------------------------------------------------------------------------------
1 | =5.3",
27 | "ext-mbstring": "*"
28 | },
29 | "require-dev": {
30 | "friendsofphp/php-cs-fixer": "^2.1.1",
31 | "phpunit/phpunit": "^4|^5"
32 | },
33 | "autoload": {
34 | "psr-4": {
35 | "Assert\\": "lib/Assert"
36 | },
37 | "files": [
38 | "lib/Assert/functions.php"
39 | ]
40 | },
41 | "autoload-dev": {
42 | "psr-4": {
43 | "Assert\\Tests\\": "tests/Assert/Tests"
44 | },
45 | "files": [
46 | "tests/Assert/Tests/Fixtures/functions.php"
47 | ]
48 | },
49 | "scripts": {
50 | "assert:generate-docs": "php bin/generate_method_docs.php",
51 | "assert:cs-lint": "php-cs-fixer fix --diff -vvv --dry-run",
52 | "assert:cs-fix": "php-cs-fixer fix . -vvv || true"
53 | }
54 | }
55 |
--------------------------------------------------------------------------------
/vendor/beberlei/assert/lib/Assert/AssertionFailedException.php:
--------------------------------------------------------------------------------
1 | getPropertyPath(), $error->getMessage());
36 | }
37 |
38 | return new static($message, $errors);
39 | }
40 |
41 | public function __construct($message, array $errors)
42 | {
43 | parent::__construct($message, 0, null, null);
44 |
45 | $this->errors = $errors;
46 | }
47 |
48 | public function getErrorExceptions()
49 | {
50 | return $this->errors;
51 | }
52 | }
53 |
--------------------------------------------------------------------------------
/vendor/composer/LICENSE:
--------------------------------------------------------------------------------
1 |
2 | Copyright (c) Nils Adermann, Jordi Boggiano
3 |
4 | Permission is hereby granted, free of charge, to any person obtaining a copy
5 | of this software and associated documentation files (the "Software"), to deal
6 | in the Software without restriction, including without limitation the rights
7 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
8 | copies of the Software, and to permit persons to whom the Software is furnished
9 | to do so, subject to the following conditions:
10 |
11 | The above copyright notice and this permission notice shall be included in all
12 | copies or substantial portions of the Software.
13 |
14 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
15 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
16 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
17 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
18 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
19 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
20 | THE SOFTWARE.
21 |
22 |
--------------------------------------------------------------------------------
/vendor/composer/autoload_classmap.php:
--------------------------------------------------------------------------------
1 | $vendorDir . '/symfony/polyfill-php70/Resources/stubs/ArithmeticError.php',
10 | 'AssertionError' => $vendorDir . '/symfony/polyfill-php70/Resources/stubs/AssertionError.php',
11 | 'DivisionByZeroError' => $vendorDir . '/symfony/polyfill-php70/Resources/stubs/DivisionByZeroError.php',
12 | 'Error' => $vendorDir . '/symfony/polyfill-php70/Resources/stubs/Error.php',
13 | 'ParseError' => $vendorDir . '/symfony/polyfill-php70/Resources/stubs/ParseError.php',
14 | 'TypeError' => $vendorDir . '/symfony/polyfill-php70/Resources/stubs/TypeError.php',
15 | );
16 |
--------------------------------------------------------------------------------
/vendor/composer/autoload_files.php:
--------------------------------------------------------------------------------
1 | $vendorDir . '/beberlei/assert/lib/Assert/functions.php',
10 | '5255c38a0faeba867671b61dfda6d864' => $vendorDir . '/paragonie/random_compat/lib/random.php',
11 | '0e6d7bf4a5811bfa5cf40c5ccd6fae6a' => $vendorDir . '/symfony/polyfill-mbstring/bootstrap.php',
12 | '023d27dca8066ef29e6739335ea73bad' => $vendorDir . '/symfony/polyfill-php70/bootstrap.php',
13 | 'c964ee0ededf28c96ebd9db5099ef910' => $vendorDir . '/guzzlehttp/promises/src/functions_include.php',
14 | 'a0edc8309cc5e1d60e3047b5df6b7052' => $vendorDir . '/guzzlehttp/psr7/src/functions_include.php',
15 | '37a3dc5111fe8f707ab4c132ef1dbc62' => $vendorDir . '/guzzlehttp/guzzle/src/functions_include.php',
16 | );
17 |
--------------------------------------------------------------------------------
/vendor/composer/autoload_namespaces.php:
--------------------------------------------------------------------------------
1 | array($vendorDir . '/symfony/polyfill-php70'),
10 | 'Symfony\\Polyfill\\Mbstring\\' => array($vendorDir . '/symfony/polyfill-mbstring'),
11 | 'Psr\\Http\\Message\\' => array($vendorDir . '/psr/http-message/src'),
12 | 'Psr\\Cache\\' => array($vendorDir . '/psr/cache/src'),
13 | 'Minishlink\\WebPush\\' => array($vendorDir . '/minishlink/web-push/src'),
14 | 'Mdanter\\Ecc\\' => array($vendorDir . '/mdanter/ecc/src'),
15 | 'Jose\\' => array($vendorDir . '/spomky-labs/jose/src'),
16 | 'GuzzleHttp\\Psr7\\' => array($vendorDir . '/guzzlehttp/psr7/src'),
17 | 'GuzzleHttp\\Promise\\' => array($vendorDir . '/guzzlehttp/promises/src'),
18 | 'GuzzleHttp\\' => array($vendorDir . '/guzzlehttp/guzzle/src'),
19 | 'FG\\' => array($vendorDir . '/fgrosse/phpasn1/lib'),
20 | 'Base64Url\\' => array($vendorDir . '/spomky-labs/base64url/src'),
21 | 'Assert\\' => array($vendorDir . '/beberlei/assert/lib/Assert'),
22 | 'AESKW\\' => array($vendorDir . '/spomky-labs/aes-key-wrap/src'),
23 | 'AESGCM\\' => array($vendorDir . '/spomky-labs/php-aes-gcm/src'),
24 | );
25 |
--------------------------------------------------------------------------------
/vendor/fgrosse/phpasn1/.coveralls.yml:
--------------------------------------------------------------------------------
1 | src_dir: lib
2 |
--------------------------------------------------------------------------------
/vendor/fgrosse/phpasn1/.gitignore:
--------------------------------------------------------------------------------
1 | # Project and backup files
2 | *~
3 | *.project
4 | .settings/*
5 | .idea
6 |
7 | # Composer
8 | vendor
9 |
10 | # Test coverage reports
11 | clover.xml
12 |
--------------------------------------------------------------------------------
/vendor/fgrosse/phpasn1/.styleci.yml:
--------------------------------------------------------------------------------
1 | preset: symfony
2 |
3 | linting: true
4 |
5 | disabled:
6 | - empty_return
7 | - phpdoc_align
8 | - blankline_after_open_tag
9 | - pre_increment
10 | - return
11 | - unalign_equals
12 | - unalign_double_arrow
13 | - phpdoc_separation
14 |
--------------------------------------------------------------------------------
/vendor/fgrosse/phpasn1/.travis.yml:
--------------------------------------------------------------------------------
1 | language: php
2 | sudo: false
3 |
4 | php:
5 | - 5.6
6 | - 7
7 | - hhvm
8 |
9 | cache:
10 | directories:
11 | - vendor
12 |
13 | before_script:
14 | - composer install
15 |
16 | script:
17 | - vendor/bin/phpunit --coverage-clover build/logs/clover.xml
18 |
19 | after_script:
20 | # code coverage currently does not seem to be supported on travis php 7 or hhvm
21 | - vendor/bin/coveralls --verbose
22 |
--------------------------------------------------------------------------------
/vendor/fgrosse/phpasn1/CHANGELOG.md:
--------------------------------------------------------------------------------
1 | #### v.1.5.2 (2016-10-29)
2 | * allow empty octet strings
3 |
4 | #### v.1.5.1 (2015-10-02)
5 | * add keywords to composer.json (this is a version on its own so the keywords are found on a stable version at packagist.org)
6 |
7 | #### v.1.5.0 (2015-10-30)
8 | * fix a bug that would prevent you from decoding context specific tags on multiple objects [#57](https://github.com/fgrosse/PHPASN1/issues/57)
9 | - `ExplicitlyTaggedObject::__construct` does now accept multiple objects to be tagged with a single tag
10 | - `ExplicitlyTaggedObject::getContent` will now always return an array (even if only one object is tagged)
11 |
12 | #### v.1.4.2 (2015-09-29)
13 | * fix a bug that would prevent you from decoding empty tagged objects [#57](https://github.com/fgrosse/PHPASN1/issues/57)
14 |
15 | #### v.1.4.1
16 | * improve exception messages and general error handling [#55](https://github.com/fgrosse/PHPASN1/pull/55)
17 |
18 | #### v.1.4.0
19 | * **require PHP 5.6**
20 | * support big integers (closes #1 and #37)
21 | * enforce one code style via [styleci.io][9]
22 | * track code coverage via [coveralls.io][10]
23 | * replace obsolete `FG\ASN1\Exception\GeneralException` with `\Exception`
24 | * `Construct` (`Sequence`, `Set`) does now implement `ArrayAccess`, `Countable` and `Iterator` so its easier to use
25 | * add [`TemplateParser`][11]
26 |
--------------------------------------------------------------------------------
/vendor/fgrosse/phpasn1/LICENSE:
--------------------------------------------------------------------------------
1 | Copyright (c) 2012-2015 Friedrich Große
2 |
3 | Permission is hereby granted, free of charge, to any person obtaining a copy
4 | of this software and associated documentation files (the "Software"), to deal
5 | in the Software without restriction, including without limitation the rights
6 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
7 | copies of the Software, and to permit persons to whom the Software is
8 | furnished to do so, subject to the following conditions:
9 |
10 | The above copyright notice and this permission notice shall be included in all
11 | copies or substantial portions of the Software.
12 |
13 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
14 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
15 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
16 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
17 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
18 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
19 | SOFTWARE.
20 |
--------------------------------------------------------------------------------
/vendor/fgrosse/phpasn1/examples/Issue29.php:
--------------------------------------------------------------------------------
1 |
6 | *
7 | * For the full copyright and license information, please view the LICENSE
8 | * file that was distributed with this source code.
9 | */
10 |
11 | use FG\ASN1\Object;
12 |
13 | require_once __DIR__.'/../vendor/autoload.php';
14 | require_once 'shared.php';
15 |
16 | $hex = 'a02b302906092a864886f70d01090e311c301a30180603551d110411300f820d636f72766573706163652e6465';
17 | $asn = Object::fromBinary(hex2bin($hex));
18 |
19 | printObject($asn);
20 |
--------------------------------------------------------------------------------
/vendor/fgrosse/phpasn1/examples/common.css:
--------------------------------------------------------------------------------
1 | table {
2 | border-collapse: collapse;
3 | }
4 |
5 | th {
6 | text-align: left;
7 | }
8 |
9 | td {
10 | border-top: black 1px solid;
11 | padding-right: 30px;
12 | }
13 |
14 | td.ASNclass {
15 | font-weight: bold;
16 | width: 150px;
17 | }
18 |
19 | td.openSSL {
20 | border-left: black 1px solid;
21 | }
22 |
23 | p.notice {
24 | margin-bottom: 30px;
25 | color: gray;
26 | }
27 |
28 | .red {
29 | color: red;
30 | }
31 |
32 | .monospace {
33 | font-family: monospace;
34 | }
35 |
36 | pre {
37 | margin: 7px
38 | }
39 |
--------------------------------------------------------------------------------
/vendor/fgrosse/phpasn1/examples/getObjectIdentifier.php:
--------------------------------------------------------------------------------
1 |
6 | *
7 | * For the full copyright and license information, please view the LICENSE
8 | * file that was distributed with this source code.
9 | */
10 |
11 | require_once __DIR__.'/../vendor/autoload.php';
12 |
13 | use FG\ASN1\OID;
14 |
15 | function echoOIDRow($oidString)
16 | {
17 | $oidName = OID::getName($oidString);
18 | echo "{$oidString} | {$oidName} |
";
19 | }
20 |
21 | ?>
22 |
23 |
24 |
25 |
26 | PHPASN1 Examples
27 |
28 |
29 |
30 |
31 |
32 |
39 |
40 |
41 |
--------------------------------------------------------------------------------
/vendor/fgrosse/phpasn1/examples/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | PHPASN1 Examples
6 |
7 |
8 |
9 |
10 | Currently the following examples are available:
11 |
16 |
17 |
--------------------------------------------------------------------------------
/vendor/fgrosse/phpasn1/examples/readmeExample.php:
--------------------------------------------------------------------------------
1 | getBinary();
30 | $myBinary .= $set->getBinary();
31 |
32 | echo base64_encode($myBinary);
33 |
--------------------------------------------------------------------------------
/vendor/fgrosse/phpasn1/examples/shared.php:
--------------------------------------------------------------------------------
1 | 0) {
11 | $treeSymbol = '├';
12 | }
13 |
14 | $name = Identifier::getShortName($object->getType());
15 | echo "{$treeSymbol}{$depthString}{$name} : ";
16 |
17 | echo $object->__toString().PHP_EOL;
18 |
19 | $content = $object->getContent();
20 | if (is_array($content)) {
21 | foreach ($object as $child) {
22 | printObject($child, $depth + 1);
23 | }
24 | }
25 | }
26 |
--------------------------------------------------------------------------------
/vendor/fgrosse/phpasn1/lib/ASN1/Composite/AttributeTypeAndValue.php:
--------------------------------------------------------------------------------
1 |
6 | *
7 | * For the full copyright and license information, please view the LICENSE
8 | * file that was distributed with this source code.
9 | */
10 |
11 | namespace FG\ASN1\Composite;
12 |
13 | use FG\ASN1\Object;
14 | use FG\ASN1\Universal\Sequence;
15 | use FG\ASN1\Universal\ObjectIdentifier;
16 |
17 | class AttributeTypeAndValue extends Sequence
18 | {
19 | /**
20 | * @param ObjectIdentifier|string $objIdentifier
21 | * @param \FG\ASN1\Object $value
22 | */
23 | public function __construct($objIdentifier, Object $value)
24 | {
25 | if ($objIdentifier instanceof ObjectIdentifier == false) {
26 | $objIdentifier = new ObjectIdentifier($objIdentifier);
27 | }
28 | parent::__construct($objIdentifier, $value);
29 | }
30 |
31 | public function __toString()
32 | {
33 | return $this->children[0].': '.$this->children[1];
34 | }
35 | }
36 |
--------------------------------------------------------------------------------
/vendor/fgrosse/phpasn1/lib/ASN1/Composite/RDNString.php:
--------------------------------------------------------------------------------
1 |
6 | *
7 | * For the full copyright and license information, please view the LICENSE
8 | * file that was distributed with this source code.
9 | */
10 |
11 | namespace FG\ASN1\Composite;
12 |
13 | use FG\ASN1\Universal\PrintableString;
14 | use FG\ASN1\Universal\IA5String;
15 | use FG\ASN1\Universal\UTF8String;
16 |
17 | class RDNString extends RelativeDistinguishedName
18 | {
19 | /**
20 | * @param string|\FG\ASN1\Universal\ObjectIdentifier $objectIdentifierString
21 | * @param string|\FG\ASN1\Object $value
22 | */
23 | public function __construct($objectIdentifierString, $value)
24 | {
25 | if (PrintableString::isValid($value)) {
26 | $value = new PrintableString($value);
27 | } else {
28 | if (IA5String::isValid($value)) {
29 | $value = new IA5String($value);
30 | } else {
31 | $value = new UTF8String($value);
32 | }
33 | }
34 |
35 | parent::__construct($objectIdentifierString, $value);
36 | }
37 | }
38 |
--------------------------------------------------------------------------------
/vendor/fgrosse/phpasn1/lib/ASN1/Exception/NotImplementedException.php:
--------------------------------------------------------------------------------
1 |
6 | *
7 | * For the full copyright and license information, please view the LICENSE
8 | * file that was distributed with this source code.
9 | */
10 |
11 | namespace FG\ASN1\Exception;
12 |
13 | class NotImplementedException extends \Exception
14 | {
15 | }
16 |
--------------------------------------------------------------------------------
/vendor/fgrosse/phpasn1/lib/ASN1/Exception/ParserException.php:
--------------------------------------------------------------------------------
1 |
6 | *
7 | * For the full copyright and license information, please view the LICENSE
8 | * file that was distributed with this source code.
9 | */
10 |
11 | namespace FG\ASN1\Exception;
12 |
13 | class ParserException extends \Exception
14 | {
15 | private $errorMessage;
16 | private $offset;
17 |
18 | public function __construct($errorMessage, $offset)
19 | {
20 | $this->errorMessage = $errorMessage;
21 | $this->offset = $offset;
22 | parent::__construct("ASN.1 Parser Exception at offset {$this->offset}: {$this->errorMessage}");
23 | }
24 |
25 | public function getOffset()
26 | {
27 | return $this->offset;
28 | }
29 | }
30 |
--------------------------------------------------------------------------------
/vendor/fgrosse/phpasn1/lib/ASN1/Parsable.php:
--------------------------------------------------------------------------------
1 |
6 | *
7 | * For the full copyright and license information, please view the LICENSE
8 | * file that was distributed with this source code.
9 | */
10 |
11 | namespace FG\ASN1;
12 |
13 | use FG\ASN1\Exception\ParserException;
14 |
15 | /**
16 | * The Parsable interface describes classes that can be parsed from their binary DER representation.
17 | */
18 | interface Parsable
19 | {
20 | /**
21 | * Parse an instance of this class from its binary DER encoded representation.
22 | *
23 | * @param string $binaryData
24 | * @param int $offsetIndex the offset at which parsing of the $binaryData is started. This parameter ill be modified
25 | * to contain the offset index of the next object after this object has been parsed
26 | *
27 | * @throws ParserException if the given binary data is either invalid or not currently supported
28 | *
29 | * @return static
30 | */
31 | public static function fromBinary(&$binaryData, &$offsetIndex = null);
32 | }
33 |
--------------------------------------------------------------------------------
/vendor/fgrosse/phpasn1/lib/ASN1/Universal/BMPString.php:
--------------------------------------------------------------------------------
1 |
6 | *
7 | * For the full copyright and license information, please view the LICENSE
8 | * file that was distributed with this source code.
9 | */
10 |
11 | namespace FG\ASN1\Universal;
12 |
13 | use FG\ASN1\AbstractString;
14 | use FG\ASN1\Identifier;
15 |
16 | class BMPString extends AbstractString
17 | {
18 | /**
19 | * Creates a new ASN.1 BMP String.
20 | *
21 | * BMPString is a subtype of UniversalString that has its own
22 | * unique tag and contains only the characters in the
23 | * Basic Multilingual Plane (those corresponding to the first
24 | * 64K-2 cells, less cells whose encoding is used to address
25 | * characters outside the Basic Multilingual Plane) of ISO/IEC 10646-1.
26 | *
27 | * TODO The encodable characters of this type are not yet checked.
28 | *
29 | * @param string $string
30 | */
31 | public function __construct($string)
32 | {
33 | $this->value = $string;
34 | $this->allowAll();
35 | }
36 |
37 | public function getType()
38 | {
39 | return Identifier::BMP_STRING;
40 | }
41 | }
42 |
--------------------------------------------------------------------------------
/vendor/fgrosse/phpasn1/lib/ASN1/Universal/CharacterString.php:
--------------------------------------------------------------------------------
1 |
6 | *
7 | * For the full copyright and license information, please view the LICENSE
8 | * file that was distributed with this source code.
9 | */
10 |
11 | namespace FG\ASN1\Universal;
12 |
13 | use FG\ASN1\AbstractString;
14 | use FG\ASN1\Identifier;
15 |
16 | class CharacterString extends AbstractString
17 | {
18 | public function __construct($string)
19 | {
20 | $this->value = $string;
21 | $this->allowAll();
22 | }
23 |
24 | public function getType()
25 | {
26 | return Identifier::CHARACTER_STRING;
27 | }
28 | }
29 |
--------------------------------------------------------------------------------
/vendor/fgrosse/phpasn1/lib/ASN1/Universal/Enumerated.php:
--------------------------------------------------------------------------------
1 |
6 | *
7 | * For the full copyright and license information, please view the LICENSE
8 | * file that was distributed with this source code.
9 | */
10 |
11 | namespace FG\ASN1\Universal;
12 |
13 | use FG\ASN1\Identifier;
14 |
15 | class Enumerated extends Integer
16 | {
17 | public function getType()
18 | {
19 | return Identifier::ENUMERATED;
20 | }
21 | }
22 |
--------------------------------------------------------------------------------
/vendor/fgrosse/phpasn1/lib/ASN1/Universal/GeneralString.php:
--------------------------------------------------------------------------------
1 |
6 | *
7 | * For the full copyright and license information, please view the LICENSE
8 | * file that was distributed with this source code.
9 | */
10 |
11 | namespace FG\ASN1\Universal;
12 |
13 | use FG\ASN1\AbstractString;
14 | use FG\ASN1\Identifier;
15 |
16 | class GeneralString extends AbstractString
17 | {
18 | /**
19 | * Creates a new ASN.1 GeneralString.
20 | * TODO The encodable characters of this type are not yet checked.
21 | *
22 | * @param string $string
23 | */
24 | public function __construct($string)
25 | {
26 | $this->value = $string;
27 | $this->allowAll();
28 | }
29 |
30 | public function getType()
31 | {
32 | return Identifier::GENERAL_STRING;
33 | }
34 | }
35 |
--------------------------------------------------------------------------------
/vendor/fgrosse/phpasn1/lib/ASN1/Universal/GraphicString.php:
--------------------------------------------------------------------------------
1 |
6 | *
7 | * For the full copyright and license information, please view the LICENSE
8 | * file that was distributed with this source code.
9 | */
10 |
11 | namespace FG\ASN1\Universal;
12 |
13 | use FG\ASN1\AbstractString;
14 | use FG\ASN1\Identifier;
15 |
16 | class GraphicString extends AbstractString
17 | {
18 | /**
19 | * Creates a new ASN.1 Graphic String.
20 | * TODO The encodable characters of this type are not yet checked.
21 | *
22 | * @param string $string
23 | */
24 | public function __construct($string)
25 | {
26 | $this->value = $string;
27 | $this->allowAll();
28 | }
29 |
30 | public function getType()
31 | {
32 | return Identifier::GRAPHIC_STRING;
33 | }
34 | }
35 |
--------------------------------------------------------------------------------
/vendor/fgrosse/phpasn1/lib/ASN1/Universal/IA5String.php:
--------------------------------------------------------------------------------
1 |
6 | *
7 | * For the full copyright and license information, please view the LICENSE
8 | * file that was distributed with this source code.
9 | */
10 |
11 | namespace FG\ASN1\Universal;
12 |
13 | use FG\ASN1\AbstractString;
14 | use FG\ASN1\Identifier;
15 |
16 | /**
17 | * The International Alphabet No.5 (IA5) references the encoding of the ASCII characters.
18 | *
19 | * Each character in the data is encoded as 1 byte.
20 | */
21 | class IA5String extends AbstractString
22 | {
23 | public function __construct($string)
24 | {
25 | parent::__construct($string);
26 | for ($i = 1; $i < 128; $i++) {
27 | $this->allowCharacter(chr($i));
28 | }
29 | }
30 |
31 | public function getType()
32 | {
33 | return Identifier::IA5_STRING;
34 | }
35 | }
36 |
--------------------------------------------------------------------------------
/vendor/fgrosse/phpasn1/lib/ASN1/Universal/Null.php:
--------------------------------------------------------------------------------
1 |
6 | *
7 | * For the full copyright and license information, please view the LICENSE
8 | * file that was distributed with this source code.
9 | */
10 |
11 | namespace FG\ASN1\Universal;
12 |
13 | /**
14 | * @deprecated Deprecated for future PHP 7 compatibility. Use {@link NullObject} instead.
15 | */
16 | class Null extends NullObject
17 | {
18 | }
19 |
--------------------------------------------------------------------------------
/vendor/fgrosse/phpasn1/lib/ASN1/Universal/NumericString.php:
--------------------------------------------------------------------------------
1 |
6 | *
7 | * For the full copyright and license information, please view the LICENSE
8 | * file that was distributed with this source code.
9 | */
10 |
11 | namespace FG\ASN1\Universal;
12 |
13 | use FG\ASN1\AbstractString;
14 | use FG\ASN1\Identifier;
15 |
16 | class NumericString extends AbstractString
17 | {
18 | /**
19 | * Creates a new ASN.1 NumericString.
20 | *
21 | * The following characters are permitted:
22 | * Digits 0,1, ... 9
23 | * SPACE (space)
24 | *
25 | * @param string $string
26 | */
27 | public function __construct($string)
28 | {
29 | $this->value = $string;
30 | $this->allowNumbers();
31 | $this->allowSpaces();
32 | }
33 |
34 | public function getType()
35 | {
36 | return Identifier::NUMERIC_STRING;
37 | }
38 | }
39 |
--------------------------------------------------------------------------------
/vendor/fgrosse/phpasn1/lib/ASN1/Universal/ObjectDescriptor.php:
--------------------------------------------------------------------------------
1 |
6 | *
7 | * For the full copyright and license information, please view the LICENSE
8 | * file that was distributed with this source code.
9 | */
10 |
11 | namespace FG\ASN1\Universal;
12 |
13 | use FG\ASN1\Identifier;
14 |
15 | class ObjectDescriptor extends GraphicString
16 | {
17 | public function __construct($objectDescription)
18 | {
19 | parent::__construct($objectDescription);
20 | }
21 |
22 | public function getType()
23 | {
24 | return Identifier::OBJECT_DESCRIPTOR;
25 | }
26 | }
27 |
--------------------------------------------------------------------------------
/vendor/fgrosse/phpasn1/lib/ASN1/Universal/Sequence.php:
--------------------------------------------------------------------------------
1 |
6 | *
7 | * For the full copyright and license information, please view the LICENSE
8 | * file that was distributed with this source code.
9 | */
10 |
11 | namespace FG\ASN1\Universal;
12 |
13 | use FG\ASN1\Construct;
14 | use FG\ASN1\Parsable;
15 | use FG\ASN1\Identifier;
16 |
17 | class Sequence extends Construct implements Parsable
18 | {
19 | public function getType()
20 | {
21 | return Identifier::SEQUENCE;
22 | }
23 | }
24 |
--------------------------------------------------------------------------------
/vendor/fgrosse/phpasn1/lib/ASN1/Universal/Set.php:
--------------------------------------------------------------------------------
1 |
6 | *
7 | * For the full copyright and license information, please view the LICENSE
8 | * file that was distributed with this source code.
9 | */
10 |
11 | namespace FG\ASN1\Universal;
12 |
13 | use FG\ASN1\Identifier;
14 |
15 | class Set extends Sequence
16 | {
17 | public function getType()
18 | {
19 | return Identifier::SET;
20 | }
21 | }
22 |
--------------------------------------------------------------------------------
/vendor/fgrosse/phpasn1/lib/ASN1/Universal/T61String.php:
--------------------------------------------------------------------------------
1 |
6 | *
7 | * For the full copyright and license information, please view the LICENSE
8 | * file that was distributed with this source code.
9 | */
10 |
11 | namespace FG\ASN1\Universal;
12 |
13 | use FG\ASN1\AbstractString;
14 | use FG\ASN1\Identifier;
15 |
16 | class T61String extends AbstractString
17 | {
18 | /**
19 | * Creates a new ASN.1 T61 String.
20 | * TODO The encodable characters of this type are not yet checked.
21 | *
22 | * @see http://en.wikipedia.org/wiki/ITU_T.61
23 | *
24 | * @param string $string
25 | */
26 | public function __construct($string)
27 | {
28 | $this->value = $string;
29 | $this->allowAll();
30 | }
31 |
32 | public function getType()
33 | {
34 | return Identifier::T61_STRING;
35 | }
36 | }
37 |
--------------------------------------------------------------------------------
/vendor/fgrosse/phpasn1/lib/ASN1/Universal/UTF8String.php:
--------------------------------------------------------------------------------
1 |
6 | *
7 | * For the full copyright and license information, please view the LICENSE
8 | * file that was distributed with this source code.
9 | */
10 |
11 | namespace FG\ASN1\Universal;
12 |
13 | use FG\ASN1\AbstractString;
14 | use FG\ASN1\Identifier;
15 |
16 | class UTF8String extends AbstractString
17 | {
18 | /**
19 | * Creates a new ASN.1 Universal String.
20 | * TODO The encodable characters of this type are not yet checked.
21 | *
22 | * @param string $string
23 | */
24 | public function __construct($string)
25 | {
26 | $this->value = $string;
27 | $this->allowAll();
28 | }
29 |
30 | public function getType()
31 | {
32 | return Identifier::UTF8_STRING;
33 | }
34 | }
35 |
--------------------------------------------------------------------------------
/vendor/fgrosse/phpasn1/lib/ASN1/Universal/UniversalString.php:
--------------------------------------------------------------------------------
1 |
6 | *
7 | * For the full copyright and license information, please view the LICENSE
8 | * file that was distributed with this source code.
9 | */
10 |
11 | namespace FG\ASN1\Universal;
12 |
13 | use FG\ASN1\AbstractString;
14 | use FG\ASN1\Identifier;
15 |
16 | class UniversalString extends AbstractString
17 | {
18 | /**
19 | * Creates a new ASN.1 Universal String.
20 | * TODO The encodable characters of this type are not yet checked.
21 | *
22 | * @see http://en.wikipedia.org/wiki/Universal_Character_Set
23 | *
24 | * @param string $string
25 | */
26 | public function __construct($string)
27 | {
28 | $this->value = $string;
29 | $this->allowAll();
30 | }
31 |
32 | public function getType()
33 | {
34 | return Identifier::UNIVERSAL_STRING;
35 | }
36 | }
37 |
--------------------------------------------------------------------------------
/vendor/fgrosse/phpasn1/lib/ASN1/Universal/VisibleString.php:
--------------------------------------------------------------------------------
1 |
6 | *
7 | * For the full copyright and license information, please view the LICENSE
8 | * file that was distributed with this source code.
9 | */
10 |
11 | namespace FG\ASN1\Universal;
12 |
13 | use FG\ASN1\AbstractString;
14 | use FG\ASN1\Identifier;
15 |
16 | class VisibleString extends AbstractString
17 | {
18 | /**
19 | * Creates a new ASN.1 Visible String.
20 | * TODO The encodable characters of this type are not yet checked.
21 | *
22 | * @param string $string
23 | */
24 | public function __construct($string)
25 | {
26 | $this->value = $string;
27 | $this->allowAll();
28 | }
29 |
30 | public function getType()
31 | {
32 | return Identifier::VISIBLE_STRING;
33 | }
34 | }
35 |
--------------------------------------------------------------------------------
/vendor/fgrosse/phpasn1/lib/X509/AlgorithmIdentifier.php:
--------------------------------------------------------------------------------
1 |
6 | *
7 | * For the full copyright and license information, please view the LICENSE
8 | * file that was distributed with this source code.
9 | */
10 |
11 | namespace FG\X509;
12 |
13 | use FG\ASN1\Universal\NullObject;
14 | use FG\ASN1\Composite\AttributeTypeAndValue;
15 |
16 | class AlgorithmIdentifier extends AttributeTypeAndValue
17 | {
18 | public function __construct($objectIdentifierString)
19 | {
20 | parent::__construct($objectIdentifierString, new NullObject());
21 | }
22 | }
23 |
--------------------------------------------------------------------------------
/vendor/fgrosse/phpasn1/lib/X509/PrivateKey.php:
--------------------------------------------------------------------------------
1 |
6 | *
7 | * For the full copyright and license information, please view the LICENSE
8 | * file that was distributed with this source code.
9 | */
10 |
11 | namespace FG\X509;
12 |
13 | use FG\ASN1\OID;
14 | use FG\ASN1\Universal\NullObject;
15 | use FG\ASN1\Universal\Sequence;
16 | use FG\ASN1\Universal\BitString;
17 | use FG\ASN1\Universal\ObjectIdentifier;
18 |
19 | class PrivateKey extends Sequence
20 | {
21 | /**
22 | * @param string $hexKey
23 | * @param \FG\ASN1\Object|string $algorithmIdentifierString
24 | */
25 | public function __construct($hexKey, $algorithmIdentifierString = OID::RSA_ENCRYPTION)
26 | {
27 | parent::__construct(
28 | new Sequence(
29 | new ObjectIdentifier($algorithmIdentifierString),
30 | new NullObject()
31 | ),
32 | new BitString($hexKey)
33 | );
34 | }
35 | }
36 |
--------------------------------------------------------------------------------
/vendor/fgrosse/phpasn1/lib/X509/PublicKey.php:
--------------------------------------------------------------------------------
1 |
6 | *
7 | * For the full copyright and license information, please view the LICENSE
8 | * file that was distributed with this source code.
9 | */
10 |
11 | namespace FG\X509;
12 |
13 | use FG\ASN1\OID;
14 | use FG\ASN1\Universal\NullObject;
15 | use FG\ASN1\Universal\Sequence;
16 | use FG\ASN1\Universal\BitString;
17 | use FG\ASN1\Universal\ObjectIdentifier;
18 |
19 | class PublicKey extends Sequence
20 | {
21 | /**
22 | * @param string $hexKey
23 | * @param \FG\ASN1\Object|string $algorithmIdentifierString
24 | */
25 | public function __construct($hexKey, $algorithmIdentifierString = OID::RSA_ENCRYPTION)
26 | {
27 | parent::__construct(
28 | new Sequence(
29 | new ObjectIdentifier($algorithmIdentifierString),
30 | new NullObject()
31 | ),
32 | new BitString($hexKey)
33 | );
34 | }
35 | }
36 |
--------------------------------------------------------------------------------
/vendor/fgrosse/phpasn1/lib/X509/SAN/DNSName.php:
--------------------------------------------------------------------------------
1 |
6 | *
7 | * For the full copyright and license information, please view the LICENSE
8 | * file that was distributed with this source code.
9 | */
10 |
11 | namespace FG\X509\SAN;
12 |
13 | use FG\ASN1\Universal\GeneralString;
14 |
15 | class DNSName extends GeneralString
16 | {
17 | const IDENTIFIER = 0x82; // not sure yet why this is the identifier used in SAN extensions
18 |
19 | public function __construct($dnsNameString)
20 | {
21 | parent::__construct($dnsNameString);
22 | }
23 |
24 | public function getType()
25 | {
26 | return self::IDENTIFIER;
27 | }
28 | }
29 |
--------------------------------------------------------------------------------
/vendor/fgrosse/phpasn1/phpunit.xml.dist:
--------------------------------------------------------------------------------
1 |
2 |
13 |
14 |
15 | ./tests
16 |
17 |
18 |
19 |
20 |
21 | ./
22 |
23 | ./tests
24 | ./examples
25 | ./vendor
26 |
27 |
28 |
29 |
30 |
--------------------------------------------------------------------------------
/vendor/fgrosse/phpasn1/tests/ASN1/Composite/RelativeDistinguishedNameTest.php:
--------------------------------------------------------------------------------
1 |
6 | *
7 | * For the full copyright and license information, please view the LICENSE
8 | * file that was distributed with this source code.
9 | */
10 |
11 | namespace FG\Test\ASN1\Composite;
12 |
13 | use FG\Test\ASN1TestCase;
14 | use FG\ASN1\OID;
15 | use FG\ASN1\Identifier;
16 | use FG\ASN1\Universal\UTF8String;
17 | use FG\ASN1\Composite\RelativeDistinguishedName;
18 |
19 | class RelativeDistinguishedNameTest extends ASN1TestCase
20 | {
21 | public function testGetType()
22 | {
23 | $object = new RelativeDistinguishedName(OID::COMMON_NAME, new UTF8String('Friedrich Große'));
24 | $this->assertEquals(Identifier::SET, $object->getType());
25 | }
26 |
27 | public function testGetIdentifier()
28 | {
29 | $object = new RelativeDistinguishedName(OID::COMMON_NAME, new UTF8String('Friedrich Große'));
30 | $this->assertEquals(chr(Identifier::SET), $object->getIdentifier());
31 | }
32 |
33 | public function testContent()
34 | {
35 | $oid = OID::COMMON_NAME;
36 | $string = 'Friedrich Große';
37 | $object = new RelativeDistinguishedName($oid, new UTF8String($string));
38 |
39 | $this->assertEquals(OID::getName($oid).": {$string}", $object->getContent());
40 | }
41 | }
42 |
--------------------------------------------------------------------------------
/vendor/guzzlehttp/guzzle/LICENSE:
--------------------------------------------------------------------------------
1 | Copyright (c) 2011-2016 Michael Dowling, https://github.com/mtdowling
2 |
3 | Permission is hereby granted, free of charge, to any person obtaining a copy
4 | of this software and associated documentation files (the "Software"), to deal
5 | in the Software without restriction, including without limitation the rights
6 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
7 | copies of the Software, and to permit persons to whom the Software is
8 | furnished to do so, subject to the following conditions:
9 |
10 | The above copyright notice and this permission notice shall be included in
11 | all copies or substantial portions of the Software.
12 |
13 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
14 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
15 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
16 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
17 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
18 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
19 | THE SOFTWARE.
20 |
--------------------------------------------------------------------------------
/vendor/guzzlehttp/guzzle/composer.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "guzzlehttp/guzzle",
3 | "type": "library",
4 | "description": "Guzzle is a PHP HTTP client library",
5 | "keywords": ["framework", "http", "rest", "web service", "curl", "client", "HTTP client"],
6 | "homepage": "http://guzzlephp.org/",
7 | "license": "MIT",
8 | "authors": [
9 | {
10 | "name": "Michael Dowling",
11 | "email": "mtdowling@gmail.com",
12 | "homepage": "https://github.com/mtdowling"
13 | }
14 | ],
15 | "require": {
16 | "php": ">=5.5",
17 | "guzzlehttp/psr7": "^1.4",
18 | "guzzlehttp/promises": "^1.0"
19 | },
20 | "require-dev": {
21 | "ext-curl": "*",
22 | "phpunit/phpunit": "^4.0 || ^5.0",
23 | "psr/log": "^1.0"
24 | },
25 | "autoload": {
26 | "files": ["src/functions_include.php"],
27 | "psr-4": {
28 | "GuzzleHttp\\": "src/"
29 | }
30 | },
31 | "autoload-dev": {
32 | "psr-4": {
33 | "GuzzleHttp\\Tests\\": "tests/"
34 | }
35 | },
36 | "suggest": {
37 | "psr/log": "Required for using the Log middleware"
38 | },
39 | "extra": {
40 | "branch-alias": {
41 | "dev-master": "6.2-dev"
42 | }
43 | }
44 | }
45 |
--------------------------------------------------------------------------------
/vendor/guzzlehttp/guzzle/src/Exception/BadResponseException.php:
--------------------------------------------------------------------------------
1 | stream = $stream;
16 | $msg = $msg ?: 'Could not seek the stream to position ' . $pos;
17 | parent::__construct($msg);
18 | }
19 |
20 | /**
21 | * @return StreamInterface
22 | */
23 | public function getStream()
24 | {
25 | return $this->stream;
26 | }
27 | }
28 |
--------------------------------------------------------------------------------
/vendor/guzzlehttp/guzzle/src/Exception/ServerException.php:
--------------------------------------------------------------------------------
1 | factory = isset($options['handle_factory'])
29 | ? $options['handle_factory']
30 | : new CurlFactory(3);
31 | }
32 |
33 | public function __invoke(RequestInterface $request, array $options)
34 | {
35 | if (isset($options['delay'])) {
36 | usleep($options['delay'] * 1000);
37 | }
38 |
39 | $easy = $this->factory->create($request, $options);
40 | curl_exec($easy->handle);
41 | $easy->errno = curl_errno($easy->handle);
42 |
43 | return CurlFactory::finish($this, $easy, $this->factory);
44 | }
45 | }
46 |
--------------------------------------------------------------------------------
/vendor/guzzlehttp/guzzle/src/functions_include.php:
--------------------------------------------------------------------------------
1 |
2 |
3 | Permission is hereby granted, free of charge, to any person obtaining a copy
4 | of this software and associated documentation files (the "Software"), to deal
5 | in the Software without restriction, including without limitation the rights
6 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
7 | copies of the Software, and to permit persons to whom the Software is
8 | furnished to do so, subject to the following conditions:
9 |
10 | The above copyright notice and this permission notice shall be included in
11 | all copies or substantial portions of the Software.
12 |
13 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
14 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
15 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
16 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
17 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
18 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
19 | THE SOFTWARE.
20 |
--------------------------------------------------------------------------------
/vendor/guzzlehttp/promises/Makefile:
--------------------------------------------------------------------------------
1 | all: clean test
2 |
3 | test:
4 | vendor/bin/phpunit
5 |
6 | coverage:
7 | vendor/bin/phpunit --coverage-html=artifacts/coverage
8 |
9 | view-coverage:
10 | open artifacts/coverage/index.html
11 |
12 | clean:
13 | rm -rf artifacts/*
14 |
--------------------------------------------------------------------------------
/vendor/guzzlehttp/promises/composer.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "guzzlehttp/promises",
3 | "description": "Guzzle promises library",
4 | "keywords": ["promise"],
5 | "license": "MIT",
6 | "authors": [
7 | {
8 | "name": "Michael Dowling",
9 | "email": "mtdowling@gmail.com",
10 | "homepage": "https://github.com/mtdowling"
11 | }
12 | ],
13 | "require": {
14 | "php": ">=5.5.0"
15 | },
16 | "require-dev": {
17 | "phpunit/phpunit": "^4.0"
18 | },
19 | "autoload": {
20 | "psr-4": {
21 | "GuzzleHttp\\Promise\\": "src/"
22 | },
23 | "files": ["src/functions_include.php"]
24 | },
25 | "scripts": {
26 | "test": "vendor/bin/phpunit",
27 | "test-ci": "vendor/bin/phpunit --coverage-text"
28 | },
29 | "extra": {
30 | "branch-alias": {
31 | "dev-master": "1.4-dev"
32 | }
33 | }
34 | }
35 |
--------------------------------------------------------------------------------
/vendor/guzzlehttp/promises/src/AggregateException.php:
--------------------------------------------------------------------------------
1 | reason = $reason;
21 |
22 | $message = 'The promise was rejected';
23 |
24 | if ($description) {
25 | $message .= ' with reason: ' . $description;
26 | } elseif (is_string($reason)
27 | || (is_object($reason) && method_exists($reason, '__toString'))
28 | ) {
29 | $message .= ' with reason: ' . $this->reason;
30 | } elseif ($reason instanceof \JsonSerializable) {
31 | $message .= ' with reason: '
32 | . json_encode($this->reason, JSON_PRETTY_PRINT);
33 | }
34 |
35 | parent::__construct($message);
36 | }
37 |
38 | /**
39 | * Returns the rejection reason.
40 | *
41 | * @return mixed
42 | */
43 | public function getReason()
44 | {
45 | return $this->reason;
46 | }
47 | }
48 |
--------------------------------------------------------------------------------
/vendor/guzzlehttp/promises/src/TaskQueueInterface.php:
--------------------------------------------------------------------------------
1 |
2 |
3 | Permission is hereby granted, free of charge, to any person obtaining a copy
4 | of this software and associated documentation files (the "Software"), to deal
5 | in the Software without restriction, including without limitation the rights
6 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
7 | copies of the Software, and to permit persons to whom the Software is
8 | furnished to do so, subject to the following conditions:
9 |
10 | The above copyright notice and this permission notice shall be included in
11 | all copies or substantial portions of the Software.
12 |
13 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
14 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
15 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
16 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
17 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
18 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
19 | THE SOFTWARE.
20 |
--------------------------------------------------------------------------------
/vendor/guzzlehttp/psr7/composer.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "guzzlehttp/psr7",
3 | "type": "library",
4 | "description": "PSR-7 message implementation that also provides common utility methods",
5 | "keywords": ["request", "response", "message", "stream", "http", "uri", "url"],
6 | "license": "MIT",
7 | "authors": [
8 | {
9 | "name": "Michael Dowling",
10 | "email": "mtdowling@gmail.com",
11 | "homepage": "https://github.com/mtdowling"
12 | },
13 | {
14 | "name": "Tobias Schultze",
15 | "homepage": "https://github.com/Tobion"
16 | }
17 | ],
18 | "require": {
19 | "php": ">=5.4.0",
20 | "psr/http-message": "~1.0"
21 | },
22 | "require-dev": {
23 | "phpunit/phpunit": "~4.0"
24 | },
25 | "provide": {
26 | "psr/http-message-implementation": "1.0"
27 | },
28 | "autoload": {
29 | "psr-4": {
30 | "GuzzleHttp\\Psr7\\": "src/"
31 | },
32 | "files": ["src/functions_include.php"]
33 | },
34 | "extra": {
35 | "branch-alias": {
36 | "dev-master": "1.4-dev"
37 | }
38 | }
39 | }
40 |
--------------------------------------------------------------------------------
/vendor/guzzlehttp/psr7/src/DroppingStream.php:
--------------------------------------------------------------------------------
1 | stream = $stream;
23 | $this->maxLength = $maxLength;
24 | }
25 |
26 | public function write($string)
27 | {
28 | $diff = $this->maxLength - $this->stream->getSize();
29 |
30 | // Begin returning 0 when the underlying stream is too large.
31 | if ($diff <= 0) {
32 | return 0;
33 | }
34 |
35 | // Write the stream or a subset of the stream if needed.
36 | if (strlen($string) < $diff) {
37 | return $this->stream->write($string);
38 | }
39 |
40 | return $this->stream->write(substr($string, 0, $diff));
41 | }
42 | }
43 |
--------------------------------------------------------------------------------
/vendor/guzzlehttp/psr7/src/LazyOpenStream.php:
--------------------------------------------------------------------------------
1 | filename = $filename;
27 | $this->mode = $mode;
28 | }
29 |
30 | /**
31 | * Creates the underlying stream lazily when required.
32 | *
33 | * @return StreamInterface
34 | */
35 | protected function createStream()
36 | {
37 | return stream_for(try_fopen($this->filename, $this->mode));
38 | }
39 | }
40 |
--------------------------------------------------------------------------------
/vendor/guzzlehttp/psr7/src/NoSeekStream.php:
--------------------------------------------------------------------------------
1 | =5.6.0",
23 | "ext-gmp": "*",
24 | "paragonie/random_compat": "^1|^2",
25 | "fgrosse/phpasn1": "~1.5"
26 | },
27 | "require-dev": {
28 | "phpunit/phpunit": "~4.1|~5.0",
29 | "squizlabs/php_codesniffer": "~2",
30 | "symfony/yaml": "~2.6|~3.0"
31 | },
32 | "autoload": {
33 | "psr-4": {
34 | "Mdanter\\Ecc\\": "src/"
35 | }
36 | },
37 | "autoload-dev": {
38 | "psr-4": {
39 | "Mdanter\\Ecc\\Tests\\": "tests/unit"
40 | }
41 | }
42 | }
43 |
--------------------------------------------------------------------------------
/vendor/mdanter/ecc/doc/release-notes-0.4.1.md:
--------------------------------------------------------------------------------
1 | # v0.4.1 release notes
2 |
3 | v0.4.1 is a minor release for the library.
4 |
5 | - Support paragonie/random_compat versions ^1|^2 for wider compatibility
6 |
7 | ## Notable changes:
8 |
9 | This overview includes changes that affect behaviour, not code moves, refactors, tests, etc.
10 |
11 | ### New:
12 |
13 | - [(#178)](https://github.com/phpecc/phpecc/pull/178) [7e217f9] Update composer.json to require paragonie/random_compat@"^1|^2"
14 |
15 | ## Credits
16 |
17 | Thanks to everyone who directly contributed to this release:
18 |
19 | - Marc Kolly
20 |
--------------------------------------------------------------------------------
/vendor/mdanter/ecc/doc/release-notes-0.4.2.md:
--------------------------------------------------------------------------------
1 | # v0.4.2 release notes
2 |
3 | v0.4.2 is a minor release for the library. It addresses unintended behaviour in decHex,
4 | which should have rejected negative numbers.
5 |
6 | - [(#182)](https://github.com/phpecc/phpecc/pull/182) [0ae116d] reject negative integers in intToString and decHex.
7 |
8 | ## Credits
9 |
10 | Thanks to everyone who directly contributed to this release:
11 |
12 | - Ruben de Vries (@rubensayshi)
13 |
--------------------------------------------------------------------------------
/vendor/mdanter/ecc/examples/key_generation.php:
--------------------------------------------------------------------------------
1 | generator384();
11 | $private = $generator->createPrivateKey();
12 |
13 | $keySerializer = new PemPrivateKeySerializer(new DerPrivateKeySerializer($adapter));
14 | $data = $keySerializer->serialize($private);
15 | echo $data.PHP_EOL;
--------------------------------------------------------------------------------
/vendor/mdanter/ecc/examples/verify_signature.php:
--------------------------------------------------------------------------------
1 | generator384();
15 | $algorithm = 'sha256';
16 | $sigData = base64_decode('MEQCIBe/A2tKKv2ZPEqpjNnh552rEa4NKEIstOF2O3vGG6pAAiB47qyR8FXMTy/ubso8cEjeh4jLPf1nVeErFZyEiNL+Yg==');
17 | $document = 'I am writing today...';
18 |
19 | // Parse signature
20 | $sigSerializer = new DerSignatureSerializer();
21 | $sig = $sigSerializer->parse($sigData);
22 |
23 | // Parse public key
24 | $keyData = file_get_contents('../tests/data/openssl-pub.pem');
25 | $derSerializer = new DerPublicKeySerializer($adapter);
26 | $pemSerializer = new PemPublicKeySerializer($derSerializer);
27 | $key = $pemSerializer->parse($keyData);
28 |
29 | $signer = new Signer($adapter);
30 | $hash = $signer->hashData($generator, $algorithm, $document);
31 | $check = $signer->verify($key, $sig, $hash);
32 |
33 | if ($check) {
34 | echo "Signature verified\n";
35 | } else {
36 | echo "Signature validation failed\n";
37 | }
38 |
--------------------------------------------------------------------------------
/vendor/mdanter/ecc/phpunit.xml:
--------------------------------------------------------------------------------
1 |
2 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 | ./tests/unit
14 |
15 |
16 |
17 |
19 |
21 |
22 |
23 |
24 | src/
25 |
26 |
27 |
28 |
--------------------------------------------------------------------------------
/vendor/mdanter/ecc/src/Curves/NamedCurveFp.php:
--------------------------------------------------------------------------------
1 | name = $name;
24 |
25 | parent::__construct($parameters, $adapter);
26 | }
27 |
28 | /**
29 | * @return string
30 | */
31 | public function getName()
32 | {
33 | return $this->name;
34 | }
35 | }
36 |
--------------------------------------------------------------------------------
/vendor/mdanter/ecc/src/Math/MathAdapterFactory.php:
--------------------------------------------------------------------------------
1 | generator = $generator;
24 | $this->generatorName = $name;
25 | }
26 |
27 | /**
28 | * @param \GMP $max
29 | * @return \GMP
30 | */
31 | public function generate(\GMP $max)
32 | {
33 | echo $this->generatorName.'::rand() = ';
34 |
35 | $result = $this->generator->generate($max);
36 |
37 | echo gmp_strval($result, 10).PHP_EOL;
38 |
39 | return $result;
40 | }
41 | }
42 |
--------------------------------------------------------------------------------
/vendor/mdanter/ecc/src/Random/RandomNumberGenerator.php:
--------------------------------------------------------------------------------
1 | adapter = $adapter;
22 | }
23 |
24 | /**
25 | * @param \GMP $max
26 | * @return \GMP
27 | */
28 | public function generate(\GMP $max)
29 | {
30 | $numBits = NumberSize::bnNumBits($this->adapter, $max);
31 | $numBytes = ceil($numBits / 8);
32 |
33 | // Generate an integer of size >= $numBits
34 | $bytes = random_bytes($numBytes);
35 | $value = $this->adapter->stringToInt($bytes);
36 |
37 | $mask = gmp_sub(gmp_pow(2, $numBits), 1);
38 | $integer = gmp_and($value, $mask);
39 |
40 | return $integer;
41 | }
42 | }
43 |
--------------------------------------------------------------------------------
/vendor/mdanter/ecc/src/Random/RandomNumberGeneratorInterface.php:
--------------------------------------------------------------------------------
1 | getR(), 10)),
19 | new Integer(gmp_strval($signature->getS(), 10))
20 | );
21 | }
22 |
23 | /**
24 | * @param SignatureInterface $signature
25 | * @return string
26 | */
27 | public function serialize(SignatureInterface $signature)
28 | {
29 | return $this->toAsn($signature)->getBinary();
30 | }
31 | }
32 |
--------------------------------------------------------------------------------
/vendor/mdanter/ecc/src/Serializer/Signature/Der/Parser.php:
--------------------------------------------------------------------------------
1 | getType() !== Identifier::SEQUENCE) {
20 | throw new \RuntimeException('Invalid data');
21 | }
22 |
23 | $content = $object->getContent();
24 | if (count($content) !== 2) {
25 | throw new \RuntimeException('Failed to parse signature');
26 | }
27 |
28 | /** @var \FG\ASN1\Universal\Integer $r */
29 | /** @var \FG\ASN1\Universal\Integer $s */
30 | list ($r, $s) = $content;
31 | if ($r->getType() !== Identifier::INTEGER || $s->getType() !== Identifier::INTEGER) {
32 | throw new \RuntimeException('Failed to parse signature');
33 | }
34 |
35 | return new Signature(
36 | gmp_init($r->getContent(), 10),
37 | gmp_init($s->getContent(), 10)
38 | );
39 | }
40 | }
41 |
--------------------------------------------------------------------------------
/vendor/mdanter/ecc/src/Serializer/Signature/DerSignatureSerializer.php:
--------------------------------------------------------------------------------
1 | parser = new Der\Parser();
26 | $this->formatter = new Der\Formatter();
27 | }
28 |
29 | /**
30 | * @param SignatureInterface $signature
31 | * @return string
32 | */
33 | public function serialize(SignatureInterface $signature)
34 | {
35 | return $this->formatter->serialize($signature);
36 | }
37 |
38 | /**
39 | * @param string $binary
40 | * @return Signature
41 | * @throws \FG\ASN1\Exception\ParserException
42 | */
43 | public function parse($binary)
44 | {
45 | return $this->parser->parse($binary);
46 | }
47 | }
48 |
--------------------------------------------------------------------------------
/vendor/mdanter/ecc/tests/bootstrap.php:
--------------------------------------------------------------------------------
1 | generator521();
19 | $curve = $generator->getCurve();
20 |
21 | $key = $generator->createPrivateKey();
22 | $this->assertInstanceOf(PublicKey::class, $key->getPublicKey());
23 | $this->assertInstanceOf(GeneratorPoint::class, $key->getPoint());
24 | $this->assertSame($generator, $key->getPoint());
25 | $this->assertInstanceOf(CurveFp::class, $key->getCurve());
26 | $this->assertSame($curve, $key->getCurve());
27 | $this->assertInstanceOf(\GMP::class, $key->getSecret());
28 | $this->assertInstanceOf(EcDH::class, $key->createExchange());
29 | }
30 | }
31 |
--------------------------------------------------------------------------------
/vendor/mdanter/ecc/tests/unit/Crypto/Signature/SignatureTest.php:
--------------------------------------------------------------------------------
1 | assertSame($r, $signature->getR());
16 | $this->assertSame($s, $signature->getS());
17 | }
18 | }
19 |
--------------------------------------------------------------------------------
/vendor/mdanter/ecc/tests/unit/Crypto/Signature/SignerTest.php:
--------------------------------------------------------------------------------
1 | generator192();
21 | $signer = new Signer($adapter);
22 | $signer->hashData($generator, 'blahblah', 'message to be signed');
23 | }
24 | }
--------------------------------------------------------------------------------
/vendor/mdanter/ecc/tests/unit/Curves/NamedCurveFpTest.php:
--------------------------------------------------------------------------------
1 | curve384();
15 | $this->assertInstanceOf(NamedCurveFp::class, $curve);
16 | ;
17 | $this->assertEquals(NistCurve::NAME_P384, $curve->getName());
18 | }
19 | }
20 |
--------------------------------------------------------------------------------
/vendor/mdanter/ecc/tests/unit/Curves/Secp112r1EcdsaTest.php:
--------------------------------------------------------------------------------
1 | generator112r1();
18 |
19 | $key = gmp_init('deadbeef', 16);
20 | $priv = $g->getPrivateKeyFrom($key);
21 |
22 | $data = "foobar";
23 | $signer = new \Mdanter\Ecc\Crypto\Signature\Signer($adapter);
24 | $hash = $signer->hashData($g, "sha1", $data);
25 | $randomK = gmp_init('12345', 10);
26 |
27 | $signature = $signer->sign($priv, $hash, $randomK);
28 | $this->assertEquals($expectedR, $adapter->toString($signature->getR()));
29 | $this->assertEquals($expectedS, $adapter->toString($signature->getS()));
30 |
31 | $this->assertTrue($signer->verify($priv->getPublicKey(), $signature, $hash));
32 | }
33 | }
--------------------------------------------------------------------------------
/vendor/mdanter/ecc/tests/unit/Primitives/CurveParametersTest.php:
--------------------------------------------------------------------------------
1 | assertInternalType('int', $size);
20 | $this->assertEquals($size, $parameters->getSize());
21 | $this->assertInstanceOf(\GMP::class, $parameters->getA());
22 | $this->assertInstanceOf(\GMP::class, $parameters->getB());
23 | $this->assertInstanceOf(\GMP::class, $parameters->getPrime());
24 | }
25 | }
26 |
--------------------------------------------------------------------------------
/vendor/mdanter/ecc/tests/unit/Random/HmacRandomNumberGeneratorTest.php:
--------------------------------------------------------------------------------
1 | generator192();
20 | $privateKey = new PrivateKey($math, $g, gmp_init(1, 10));
21 | $hash = gmp_init(hash('sha256', 'message', false), 16);
22 |
23 | new HmacRandomNumberGenerator($math, $privateKey, $hash, 'sha256aaaa');
24 | }
25 | }
26 |
--------------------------------------------------------------------------------
/vendor/mdanter/ecc/tests/unit/Random/RandomGeneratorFactoryTest.php:
--------------------------------------------------------------------------------
1 | assertInstanceOf(DebugDecorator::class, $rng);
22 | $this->assertInstanceOf(\GMP::class, $rng->generate(gmp_init(111)));
23 |
24 | $adapter = new GmpMath();
25 | $parameters = new CurveParameters(32, gmp_init(23, 10), gmp_init(1, 10), gmp_init(1, 10));
26 | $curve = new CurveFp($parameters, $adapter);
27 | $point = new GeneratorPoint($adapter, $curve, gmp_init(13, 10), gmp_init(7, 10), gmp_init(7, 10));
28 |
29 | $privateKey = $point->getPrivateKeyFrom(gmp_init(1));
30 | $rng = RandomGeneratorFactory::getHmacRandomGenerator($privateKey, gmp_init(1), 'sha256', $debugOn);
31 | $this->assertInstanceOf(DebugDecorator::class, $rng);
32 | $this->assertInstanceOf(\GMP::class, $rng->generate(gmp_init(111)));
33 |
34 | ob_clean();
35 | }
36 | }
--------------------------------------------------------------------------------
/vendor/mdanter/ecc/tests/unit/Serializer/Point/CompressedPointSerializerTest.php:
--------------------------------------------------------------------------------
1 | unserialize(EccFactory::getNistCurves()->curve192(), $data);
21 | }
22 | }
--------------------------------------------------------------------------------
/vendor/mdanter/ecc/tests/unit/Serializer/Point/UncompressedPointSerializerTest.php:
--------------------------------------------------------------------------------
1 | unserialize(EccFactory::getNistCurves()->curve192(), $data);
21 | }
22 | }
--------------------------------------------------------------------------------
/vendor/mdanter/ecc/tests/unit/Serializer/PrivateKey/PemPrivateKeySerializerTest.php:
--------------------------------------------------------------------------------
1 | parse($der);
20 | $this->assertInstanceOf(PrivateKey::class, $key);
21 | }
22 |
23 |
24 | public function testConsistent()
25 | {
26 | $adapter = EccFactory::getAdapter();
27 | $G = EccFactory::getNistCurves($adapter)->generator192();
28 | $key = $G->createPrivateKey();
29 |
30 | $derPrivSerializer = new DerPrivateKeySerializer($adapter);
31 | $pemSerializer = new PemPrivateKeySerializer($derPrivSerializer);
32 |
33 | $serialized = $pemSerializer ->serialize($key);
34 | $parsed = $pemSerializer ->parse($serialized);
35 | $this->assertTrue($adapter->equals($parsed->getSecret(), $key->getSecret()));
36 | }
37 | }
38 |
--------------------------------------------------------------------------------
/vendor/mdanter/ecc/tests/validate_examples.sh:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 | for i in ../examples/*.php; do
3 | /usr/bin/php $i
4 | if [ $? != 0 ]; then
5 | echo "Error running example code";
6 | exit -1
7 | fi;
8 | done
9 |
--------------------------------------------------------------------------------
/vendor/minishlink/web-push/.gitignore:
--------------------------------------------------------------------------------
1 | /vendor
2 | composer.lock
3 | phpunit.xml
4 |
5 |
--------------------------------------------------------------------------------
/vendor/minishlink/web-push/.travis.yml:
--------------------------------------------------------------------------------
1 | dist: trusty
2 | language: php
3 |
4 | # Downloaded browsers will be cached in selenium-assistant by
5 | # web-push-testing-service. Caching will speed up build time.
6 | cache:
7 | directories:
8 | - ~/.selenium-assistant
9 |
10 | php:
11 | - 5.6
12 | - hhvm
13 | - 7.0
14 | - 7.1
15 |
16 | env:
17 | - TRAVIS_NODE_VERSION="stable"
18 |
19 | before_install:
20 | - nvm install node
21 |
22 | install:
23 | - npm install web-push-testing-service -g
24 |
25 | before_script:
26 | - composer install --prefer-source -n
27 | - "export DISPLAY=:99.0"
28 | - "sh -e /etc/init.d/xvfb start || echo \"Unable to start virtual display.\""
29 | - sleep 3 # give xvfb some time to start
30 |
31 | script:
32 | - web-push-testing-service start example -p 9012
33 | - php ./vendor/phpunit/phpunit/phpunit -c phpunit.travis.xml
34 | - web-push-testing-service stop example
35 |
--------------------------------------------------------------------------------
/vendor/minishlink/web-push/CONTRIBUTING.md:
--------------------------------------------------------------------------------
1 | # Contributing to WebPush
2 | WebPush is an open source library.
3 | Feel free to contribute by submitting a pull request or creating (and solving) issues!
4 |
5 | ## Running Tests
6 |
7 | First, you will need to create your own configuration file by copying
8 | phpunit.dist.xml to phpunit.xml and filling in the fields you need for
9 | testing (i.e. STANDARD_ENDPOINT, GCM_API_KEY etc.).
10 |
11 | Then, download [phpunit](https://phpunit.de/) and test with one of the
12 | following commands:
13 |
14 | **For All Tests**
15 | `php phpunit.phar`
16 |
17 | **For a Specific Test File**
18 | `php phpunit.phar tests/EncryptionTest.php`
19 |
20 | **For a Single Test**
21 | `php phpunit.phar . --filter "/::testPadPayload( .*)?$/"` (regex)
22 |
23 | But locally, these tests are handy.
24 |
--------------------------------------------------------------------------------
/vendor/minishlink/web-push/LICENSE:
--------------------------------------------------------------------------------
1 | Copyright (c) 2015 Louis Lagrange
2 |
3 | Permission is hereby granted, free of charge, to any person obtaining a copy
4 | of this software and associated documentation files (the "Software"), to deal
5 | in the Software without restriction, including without limitation the rights
6 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
7 | copies of the Software, and to permit persons to whom the Software is
8 | furnished to do so, subject to the following conditions:
9 |
10 | The above copyright notice and this permission notice shall be included in
11 | all copies or substantial portions of the Software.
12 |
13 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
14 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
15 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
16 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
17 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
18 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
19 | THE SOFTWARE.
20 |
--------------------------------------------------------------------------------
/vendor/minishlink/web-push/composer.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "minishlink/web-push",
3 | "type": "library",
4 | "description": "Web Push library for PHP",
5 | "keywords": ["push", "notifications", "web", "WebPush", "Push API"],
6 | "homepage": "https://github.com/web-push-libs/web-push-php",
7 | "license": "MIT",
8 | "authors": [
9 | {
10 | "name": "Louis Lagrange",
11 | "email": "lagrange.louis@gmail.com",
12 | "homepage": "https://github.com/Minishlink"
13 | }
14 | ],
15 | "require": {
16 | "php": "^5.6 || ^7.0",
17 | "mdanter/ecc": "^0.4.0",
18 | "lib-openssl": "*",
19 | "spomky-labs/base64url": "^1.0",
20 | "spomky-labs/php-aes-gcm": "^1.2",
21 | "spomky-labs/jose": "^6.0",
22 | "guzzlehttp/guzzle": "^6.2"
23 | },
24 | "require-dev": {
25 | "phpunit/phpunit": "5.7.*"
26 | },
27 | "autoload": {
28 | "psr-4" : {
29 | "Minishlink\\WebPush\\" : "src"
30 | }
31 | }
32 | }
33 |
--------------------------------------------------------------------------------
/vendor/minishlink/web-push/phpunit.dist.xml:
--------------------------------------------------------------------------------
1 |
2 |
12 |
13 |
14 | ./tests/
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
--------------------------------------------------------------------------------
/vendor/minishlink/web-push/phpunit.travis.xml:
--------------------------------------------------------------------------------
1 |
2 |
12 |
13 |
14 | ./tests/
15 |
16 |
17 |
18 |
--------------------------------------------------------------------------------
/vendor/minishlink/web-push/src/Utils.php:
--------------------------------------------------------------------------------
1 |
7 | *
8 | * For the full copyright and license information, please view the LICENSE
9 | * file that was distributed with this source code.
10 | */
11 |
12 | namespace Minishlink\WebPush;
13 |
14 | class Utils
15 | {
16 | public static function safeStrlen($string)
17 | {
18 | return mb_strlen($string, '8bit');
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/vendor/paragonie/random_compat/LICENSE:
--------------------------------------------------------------------------------
1 | The MIT License (MIT)
2 |
3 | Copyright (c) 2015 Paragon Initiative Enterprises
4 |
5 | Permission is hereby granted, free of charge, to any person obtaining a copy
6 | of this software and associated documentation files (the "Software"), to deal
7 | in the Software without restriction, including without limitation the rights
8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | copies of the Software, and to permit persons to whom the Software is
10 | furnished to do so, subject to the following conditions:
11 |
12 | The above copyright notice and this permission notice shall be included in all
13 | copies or substantial portions of the Software.
14 |
15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | SOFTWARE.
22 |
23 |
--------------------------------------------------------------------------------
/vendor/paragonie/random_compat/build-phar.sh:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env bash
2 |
3 | basedir=$( dirname $( readlink -f ${BASH_SOURCE[0]} ) )
4 |
5 | php -dphar.readonly=0 "$basedir/other/build_phar.php" $*
--------------------------------------------------------------------------------
/vendor/paragonie/random_compat/composer.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "paragonie/random_compat",
3 | "description": "PHP 5.x polyfill for random_bytes() and random_int() from PHP 7",
4 | "keywords": [
5 | "csprng",
6 | "random",
7 | "pseudorandom"
8 | ],
9 | "license": "MIT",
10 | "type": "library",
11 | "authors": [
12 | {
13 | "name": "Paragon Initiative Enterprises",
14 | "email": "security@paragonie.com",
15 | "homepage": "https://paragonie.com"
16 | }
17 | ],
18 | "support": {
19 | "issues": "https://github.com/paragonie/random_compat/issues",
20 | "email": "info@paragonie.com",
21 | "source": "https://github.com/paragonie/random_compat"
22 | },
23 | "require": {
24 | "php": ">=5.2.0"
25 | },
26 | "require-dev": {
27 | "phpunit/phpunit": "4.*|5.*"
28 | },
29 | "suggest": {
30 | "ext-libsodium": "Provides a modern crypto API that can be used to generate random bytes."
31 | },
32 | "autoload": {
33 | "files": [
34 | "lib/random.php"
35 | ]
36 | }
37 | }
38 |
--------------------------------------------------------------------------------
/vendor/paragonie/random_compat/dist/random_compat.phar.pubkey:
--------------------------------------------------------------------------------
1 | -----BEGIN PUBLIC KEY-----
2 | MHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEEd+wCqJDrx5B4OldM0dQE0ZMX+lx1ZWm
3 | pui0SUqD4G29L3NGsz9UhJ/0HjBdbnkhIK5xviT0X5vtjacF6ajgcCArbTB+ds+p
4 | +h7Q084NuSuIpNb6YPfoUFgC/CL9kAoc
5 | -----END PUBLIC KEY-----
6 |
--------------------------------------------------------------------------------
/vendor/paragonie/random_compat/dist/random_compat.phar.pubkey.asc:
--------------------------------------------------------------------------------
1 | -----BEGIN PGP SIGNATURE-----
2 | Version: GnuPG v2.0.22 (MingW32)
3 |
4 | iQEcBAABAgAGBQJWtW1hAAoJEGuXocKCZATaJf0H+wbZGgskK1dcRTsuVJl9IWip
5 | QwGw/qIKI280SD6/ckoUMxKDCJiFuPR14zmqnS36k7N5UNPnpdTJTS8T11jttSpg
6 | 1LCmgpbEIpgaTah+cELDqFCav99fS+bEiAL5lWDAHBTE/XPjGVCqeehyPYref4IW
7 | NDBIEsvnHPHPLsn6X5jq4+Yj5oUixgxaMPiR+bcO4Sh+RzOVB6i2D0upWfRXBFXA
8 | NNnsg9/zjvoC7ZW73y9uSH+dPJTt/Vgfeiv52/v41XliyzbUyLalf02GNPY+9goV
9 | JHG1ulEEBJOCiUD9cE1PUIJwHA/HqyhHIvV350YoEFiHl8iSwm7SiZu5kPjaq74=
10 | =B6+8
11 | -----END PGP SIGNATURE-----
12 |
--------------------------------------------------------------------------------
/vendor/paragonie/random_compat/psalm-autoload.php:
--------------------------------------------------------------------------------
1 |
2 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
--------------------------------------------------------------------------------
/vendor/psr/cache/CHANGELOG.md:
--------------------------------------------------------------------------------
1 | # Changelog
2 |
3 | All notable changes to this project will be documented in this file, in reverse chronological order by release.
4 |
5 | ## 1.0.1 - 2016-08-06
6 |
7 | ### Fixed
8 |
9 | - Make spacing consistent in phpdoc annotations php-fig/cache#9 - chalasr
10 | - Fix grammar in phpdoc annotations php-fig/cache#10 - chalasr
11 | - Be more specific in docblocks that `getItems()` and `deleteItems()` take an array of strings (`string[]`) compared to just `array` php-fig/cache#8 - GrahamCampbell
12 | - For `expiresAt()` and `expiresAfter()` in CacheItemInterface fix docblock to specify null as a valid parameters as well as an implementation of DateTimeInterface php-fig/cache#7 - GrahamCampbell
13 |
14 | ## 1.0.0 - 2015-12-11
15 |
16 | Initial stable release; reflects accepted PSR-6 specification
17 |
--------------------------------------------------------------------------------
/vendor/psr/cache/LICENSE.txt:
--------------------------------------------------------------------------------
1 | Copyright (c) 2015 PHP Framework Interoperability Group
2 |
3 | Permission is hereby granted, free of charge, to any person obtaining a copy
4 | of this software and associated documentation files (the "Software"), to deal
5 | in the Software without restriction, including without limitation the rights
6 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
7 | copies of the Software, and to permit persons to whom the Software is
8 | furnished to do so, subject to the following conditions:
9 |
10 | The above copyright notice and this permission notice shall be included in
11 | all copies or substantial portions of the Software.
12 |
13 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
14 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
15 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
16 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
17 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
18 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
19 | THE SOFTWARE.
20 |
--------------------------------------------------------------------------------
/vendor/psr/cache/README.md:
--------------------------------------------------------------------------------
1 | PSR Cache
2 | =========
3 |
4 | This repository holds all interfaces defined by
5 | [PSR-6](http://www.php-fig.org/psr/psr-6/).
6 |
7 | Note that this is not a Cache implementation of its own. It is merely an
8 | interface that describes a Cache implementation. See the specification for more
9 | details.
10 |
--------------------------------------------------------------------------------
/vendor/psr/cache/composer.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "psr/cache",
3 | "description": "Common interface for caching libraries",
4 | "keywords": ["psr", "psr-6", "cache"],
5 | "license": "MIT",
6 | "authors": [
7 | {
8 | "name": "PHP-FIG",
9 | "homepage": "http://www.php-fig.org/"
10 | }
11 | ],
12 | "require": {
13 | "php": ">=5.3.0"
14 | },
15 | "autoload": {
16 | "psr-4": {
17 | "Psr\\Cache\\": "src/"
18 | }
19 | },
20 | "extra": {
21 | "branch-alias": {
22 | "dev-master": "1.0.x-dev"
23 | }
24 | }
25 | }
26 |
--------------------------------------------------------------------------------
/vendor/psr/cache/src/CacheException.php:
--------------------------------------------------------------------------------
1 | =5.3.0"
15 | },
16 | "autoload": {
17 | "psr-4": {
18 | "Psr\\Http\\Message\\": "src/"
19 | }
20 | },
21 | "extra": {
22 | "branch-alias": {
23 | "dev-master": "1.0.x-dev"
24 | }
25 | }
26 | }
27 |
--------------------------------------------------------------------------------
/vendor/spomky-labs/aes-key-wrap/LICENSE:
--------------------------------------------------------------------------------
1 | The MIT License (MIT)
2 |
3 | Copyright (c) 2014-2016 Spomky-Labs
4 |
5 | Permission is hereby granted, free of charge, to any person obtaining a copy
6 | of this software and associated documentation files (the "Software"), to deal
7 | in the Software without restriction, including without limitation the rights
8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | copies of the Software, and to permit persons to whom the Software is
10 | furnished to do so, subject to the following conditions:
11 |
12 | The above copyright notice and this permission notice shall be included in all
13 | copies or substantial portions of the Software.
14 |
15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | SOFTWARE.
22 |
23 |
--------------------------------------------------------------------------------
/vendor/spomky-labs/aes-key-wrap/composer.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "spomky-labs/aes-key-wrap",
3 | "description": "AES Key Wrap for PHP.",
4 | "type": "library",
5 | "license": "MIT",
6 | "keywords": ["A128KW", "A192KW", "A256KW", "AES", "Key", "Wrap", "Padding", "RFC3394", "RFC5649"],
7 | "homepage": "https://github.com/Spomky-Labs/aes-key-wrap",
8 | "authors": [
9 | {
10 | "name": "Florent Morselli",
11 | "homepage": "https://github.com/Spomky-Labs/aes-key-wrap/contributors"
12 | }
13 | ],
14 | "autoload": {
15 | "psr-4": {
16 | "AESKW\\": "src/"
17 | }
18 | },
19 | "autoload-dev": {
20 | "psr-4": {
21 | "AESKW\\Tests\\": "tests/"
22 | }
23 | },
24 | "require": {
25 | "php": "^5.4|^7.0",
26 | "ext-mbstring": "*",
27 | "beberlei/assert": "^2.4",
28 | "lib-openssl": "*"
29 | },
30 | "require-dev": {
31 | "phpunit/phpunit": "^4.5|^5.0",
32 | "satooshi/php-coveralls": "^1.0"
33 | },
34 | "extra": {
35 | "branch-alias": {
36 | "dev-master": "3.0.x-dev"
37 | }
38 | }
39 | }
40 |
--------------------------------------------------------------------------------
/vendor/spomky-labs/aes-key-wrap/src/A128KW.php:
--------------------------------------------------------------------------------
1 | kek = $kek;
22 | $this->method = 'aes-'.(mb_strlen($kek, '8bit') * 8).'-ecb';
23 | }
24 |
25 | /**
26 | * {@inheritdoc}
27 | */
28 | public function encrypt($data)
29 | {
30 | return openssl_encrypt($data, $this->method, $this->kek, OPENSSL_ZERO_PADDING | OPENSSL_RAW_DATA);
31 | }
32 |
33 | /**
34 | * {@inheritdoc}
35 | */
36 | public function decrypt($data)
37 | {
38 | return openssl_decrypt($data, $this->method, $this->kek, OPENSSL_ZERO_PADDING | OPENSSL_RAW_DATA);
39 | }
40 | }
41 |
--------------------------------------------------------------------------------
/vendor/spomky-labs/base64url/LICENSE:
--------------------------------------------------------------------------------
1 | The MIT License (MIT)
2 |
3 | Copyright (c) 2014-2016 Spomky-Labs
4 |
5 | Permission is hereby granted, free of charge, to any person obtaining a copy
6 | of this software and associated documentation files (the "Software"), to deal
7 | in the Software without restriction, including without limitation the rights
8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | copies of the Software, and to permit persons to whom the Software is
10 | furnished to do so, subject to the following conditions:
11 |
12 | The above copyright notice and this permission notice shall be included in all
13 | copies or substantial portions of the Software.
14 |
15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | SOFTWARE.
22 |
23 |
--------------------------------------------------------------------------------
/vendor/spomky-labs/base64url/composer.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "spomky-labs/base64url",
3 | "description": "Base 64 URL Safe Encoding/decoding PHP Library",
4 | "type": "library",
5 | "license": "MIT",
6 | "keywords": ["Base64", "URL", "Safe", "RFC4648"],
7 | "homepage": "https://github.com/Spomky-Labs/base64url",
8 | "authors": [
9 | {
10 | "name": "Florent Morselli",
11 | "homepage": "https://github.com/Spomky-Labs/base64url/contributors"
12 | }
13 | ],
14 | "autoload": {
15 | "psr-4": {
16 | "Base64Url\\": "src/"
17 | }
18 | },
19 | "require": {
20 | "php": "^5.3|^7.0"
21 | },
22 | "require-dev": {
23 | "phpunit/phpunit": "^4.0|^5.0",
24 | "satooshi/php-coveralls": "^1.0"
25 | },
26 | "extra": {
27 | "branch-alias": {
28 | "dev-master": "1.0.x-dev"
29 | }
30 | }
31 | }
32 |
--------------------------------------------------------------------------------
/vendor/spomky-labs/base64url/src/Base64Url.php:
--------------------------------------------------------------------------------
1 | get('kty'), 'oct', 'Wrong key type.');
26 | Assertion::true($key->has('k'), 'The key parameter "k" is missing.');
27 |
28 | return Base64Url::decode($key->get('k'));
29 | }
30 |
31 | /**
32 | * {@inheritdoc}
33 | */
34 | public function getAlgorithmName()
35 | {
36 | return 'dir';
37 | }
38 |
39 | /**
40 | * {@inheritdoc}
41 | */
42 | public function getKeyManagementMode()
43 | {
44 | return self::MODE_DIRECT;
45 | }
46 | }
47 |
--------------------------------------------------------------------------------
/vendor/spomky-labs/jose/src/Algorithm/KeyEncryption/DirectEncryptionInterface.php:
--------------------------------------------------------------------------------
1 | generator256();
24 | }
25 |
26 | /**
27 | * @return string
28 | */
29 | protected function getHashAlgorithm()
30 | {
31 | return 'sha256';
32 | }
33 |
34 | /**
35 | * @return int
36 | */
37 | protected function getSignaturePartLength()
38 | {
39 | return 64;
40 | }
41 |
42 | /**
43 | * @return string
44 | */
45 | public function getAlgorithmName()
46 | {
47 | return 'ES256';
48 | }
49 | }
50 |
--------------------------------------------------------------------------------
/vendor/spomky-labs/jose/src/Algorithm/Signature/ES384.php:
--------------------------------------------------------------------------------
1 | generator384();
24 | }
25 |
26 | /**
27 | * @return string
28 | */
29 | protected function getHashAlgorithm()
30 | {
31 | return 'sha384';
32 | }
33 |
34 | /**
35 | * @return int
36 | */
37 | protected function getSignaturePartLength()
38 | {
39 | return 96;
40 | }
41 |
42 | /**
43 | * @return string
44 | */
45 | public function getAlgorithmName()
46 | {
47 | return 'ES384';
48 | }
49 | }
50 |
--------------------------------------------------------------------------------
/vendor/spomky-labs/jose/src/Algorithm/Signature/ES512.php:
--------------------------------------------------------------------------------
1 | generator521();
24 | }
25 |
26 | /**
27 | * @return string
28 | */
29 | protected function getHashAlgorithm()
30 | {
31 | return 'sha512';
32 | }
33 |
34 | /**
35 | * @return int
36 | */
37 | protected function getSignaturePartLength()
38 | {
39 | return 132;
40 | }
41 |
42 | /**
43 | * @return string
44 | */
45 | public function getAlgorithmName()
46 | {
47 | return 'ES512';
48 | }
49 | }
50 |
--------------------------------------------------------------------------------
/vendor/spomky-labs/jose/src/Algorithm/Signature/HS256.php:
--------------------------------------------------------------------------------
1 | checkKey($key);
29 |
30 | return '';
31 | }
32 |
33 | /**
34 | * {@inheritdoc}
35 | */
36 | public function verify(JWKInterface $key, $data, $signature)
37 | {
38 | return $signature === $this->sign($key, $data);
39 | }
40 |
41 | /**
42 | * @param JWKInterface $key
43 | */
44 | protected function checkKey(JWKInterface $key)
45 | {
46 | Assertion::eq($key->get('kty'), 'none', 'Wrong key type.');
47 | }
48 |
49 | /**
50 | * @return string
51 | */
52 | public function getAlgorithmName()
53 | {
54 | return 'none';
55 | }
56 | }
57 |
--------------------------------------------------------------------------------
/vendor/spomky-labs/jose/src/Algorithm/Signature/PS256.php:
--------------------------------------------------------------------------------
1 | compression_manager = $compression_manager;
29 | }
30 |
31 | /**
32 | * @return \Jose\Compression\CompressionManagerInterface
33 | */
34 | protected function getCompressionManager()
35 | {
36 | return $this->compression_manager;
37 | }
38 | }
39 |
--------------------------------------------------------------------------------
/vendor/spomky-labs/jose/src/Behaviour/HasJWAManager.php:
--------------------------------------------------------------------------------
1 | jwa_manager = $jwa_manager;
29 | }
30 |
31 | /**
32 | * @return \Jose\Algorithm\JWAManagerInterface
33 | */
34 | protected function getJWAManager()
35 | {
36 | return $this->jwa_manager;
37 | }
38 | }
39 |
--------------------------------------------------------------------------------
/vendor/spomky-labs/jose/src/Checker/CheckerManagerInterface.php:
--------------------------------------------------------------------------------
1 | hasClaim('exp')) {
25 | return [];
26 | }
27 |
28 | $exp = (int) $jwt->getClaim('exp');
29 | Assertion::greaterThan($exp, time(), 'The JWT has expired.');
30 |
31 | return ['exp'];
32 | }
33 | }
34 |
--------------------------------------------------------------------------------
/vendor/spomky-labs/jose/src/Checker/HeaderCheckerInterface.php:
--------------------------------------------------------------------------------
1 | hasClaim('iat')) {
25 | return [];
26 | }
27 |
28 | $iat = (int) $jwt->getClaim('iat');
29 | Assertion::lessOrEqualThan($iat, time(), 'The JWT is issued in the future.');
30 |
31 | return ['iat'];
32 | }
33 | }
34 |
--------------------------------------------------------------------------------
/vendor/spomky-labs/jose/src/Checker/IssuerChecker.php:
--------------------------------------------------------------------------------
1 | hasClaim('iss')) {
25 | return [];
26 | }
27 |
28 | $issuer = $jwt->getClaim('iss');
29 | Assertion::true($this->isIssuerAllowed($issuer), sprintf('The issuer "%s" is not allowed.', $issuer));
30 |
31 | return ['iss'];
32 | }
33 |
34 | /**
35 | * @param string $issuer
36 | *
37 | * @return bool
38 | */
39 | abstract protected function isIssuerAllowed($issuer);
40 | }
41 |
--------------------------------------------------------------------------------
/vendor/spomky-labs/jose/src/Checker/JtiChecker.php:
--------------------------------------------------------------------------------
1 | hasClaim('jti')) {
25 | return [];
26 | }
27 |
28 | $jti = $jwt->getClaim('jti');
29 | Assertion::true($this->isJtiValid($jti), sprintf('Invalid token ID "%s".', $jti));
30 |
31 | return ['jti'];
32 | }
33 |
34 | /**
35 | * @param string $jti
36 | *
37 | * @return bool
38 | */
39 | abstract protected function isJtiValid($jti);
40 | }
41 |
--------------------------------------------------------------------------------
/vendor/spomky-labs/jose/src/Checker/NotBeforeChecker.php:
--------------------------------------------------------------------------------
1 | hasClaim('nbf')) {
25 | return [];
26 | }
27 |
28 | $nbf = (int) $jwt->getClaim('nbf');
29 | Assertion::lessOrEqualThan($nbf, time(), 'The JWT can not be used yet.');
30 |
31 | return ['nbf'];
32 | }
33 | }
34 |
--------------------------------------------------------------------------------
/vendor/spomky-labs/jose/src/Checker/SubjectChecker.php:
--------------------------------------------------------------------------------
1 | hasClaim('sub')) {
25 | return [];
26 | }
27 |
28 | $subject = $jwt->getClaim('sub');
29 | Assertion::true($this->isSubjectAllowed($subject), sprintf('The subject "%s" is not allowed.', $subject));
30 |
31 | return ['sub'];
32 | }
33 |
34 | /**
35 | * @param string $subject
36 | *
37 | * @return bool
38 | */
39 | abstract protected function isSubjectAllowed($subject);
40 | }
41 |
--------------------------------------------------------------------------------
/vendor/spomky-labs/jose/src/Compression/CompressionInterface.php:
--------------------------------------------------------------------------------
1 | compression_algorithms[$compression_algorithm->getMethodName()] = $compression_algorithm;
30 | }
31 |
32 | /**
33 | * {@inheritdoc}
34 | */
35 | public function getCompressionAlgorithm($name)
36 | {
37 | return array_key_exists($name, $this->compression_algorithms) ? $this->compression_algorithms[$name] : null;
38 | }
39 | }
40 |
--------------------------------------------------------------------------------
/vendor/spomky-labs/jose/src/Compression/CompressionManagerInterface.php:
--------------------------------------------------------------------------------
1 | getContent(), true);
27 | Assertion::isArray($content, 'Invalid content.');
28 | Assertion::keyExists($content, 'keys', 'Invalid content.');
29 |
30 | return (new JWKSet($content))->getKeys();
31 | }
32 | }
33 |
--------------------------------------------------------------------------------
/vendor/spomky-labs/jose/src/Object/JWKInterface.php:
--------------------------------------------------------------------------------
1 | addKey(new JWK($value));
32 | }
33 | }
34 | }
35 |
36 | /**
37 | * {@inheritdoc}
38 | */
39 | public function getKeys()
40 | {
41 | return $this->keys;
42 | }
43 |
44 | /**
45 | * {@inheritdoc}
46 | */
47 | public function addKey(JWKInterface $key)
48 | {
49 | $this->keys[] = $key;
50 | }
51 |
52 | /**
53 | * {@inheritdoc}
54 | */
55 | public function removeKey($key)
56 | {
57 | if (isset($this->keys[$key])) {
58 | unset($this->keys[$key]);
59 | }
60 | }
61 | }
62 |
--------------------------------------------------------------------------------
/vendor/spomky-labs/jose/src/Object/JWKSetsInterface.php:
--------------------------------------------------------------------------------
1 | loadObjectIfNeeded();
25 | $jwkset = $this->getObject();
26 |
27 | $keys = $jwkset->getKeys();
28 | unset($keys[count($keys) - 1]);
29 | $jwkset = new JWKSet();
30 | $jwkset->addKey($this->createJWK());
31 | foreach ($keys as $key) {
32 | $jwkset->addKey($key);
33 | }
34 | $this->setObject($jwkset);
35 | $this->saveObject($jwkset);
36 | }
37 | }
38 |
--------------------------------------------------------------------------------
/vendor/spomky-labs/jose/src/Object/StorableInterface.php:
--------------------------------------------------------------------------------
1 | getContent(), true);
28 | Assertion::isArray($content, 'Invalid content.');
29 | $jwkset = new JWKSet();
30 | foreach ($content as $kid => $cert) {
31 | $jwk = KeyConverter::loadKeyFromCertificate($cert);
32 | Assertion::notEmpty($jwk, 'Invalid content.');
33 | if (is_string($kid)) {
34 | $jwk['kid'] = $kid;
35 | }
36 | $jwkset->addKey(new JWK($jwk));
37 | }
38 |
39 | return $jwkset->getKeys();
40 | }
41 | }
42 |
--------------------------------------------------------------------------------
/vendor/spomky-labs/jose/src/SignerInterface.php:
--------------------------------------------------------------------------------
1 | =5.4",
24 | "lib-openssl": "*",
25 | "beberlei/assert": "^2.4",
26 | "symfony/polyfill-mbstring": "^1.1"
27 | },
28 | "require-dev": {
29 | "phpunit/phpunit": "^4.5|^5.0",
30 | "satooshi/php-coveralls": "^1.0"
31 | },
32 | "suggest":{
33 | "ext-crypto": "Highly recommended for better performance."
34 | },
35 | "extra": {
36 | "branch-alias": {
37 | "dev-master": "1.2.x-dev"
38 | }
39 | }
40 | }
41 |
--------------------------------------------------------------------------------
/vendor/symfony/polyfill-mbstring/LICENSE:
--------------------------------------------------------------------------------
1 | Copyright (c) 2014-2016 Fabien Potencier
2 |
3 | Permission is hereby granted, free of charge, to any person obtaining a copy
4 | of this software and associated documentation files (the "Software"), to deal
5 | in the Software without restriction, including without limitation the rights
6 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
7 | copies of the Software, and to permit persons to whom the Software is furnished
8 | to do so, subject to the following conditions:
9 |
10 | The above copyright notice and this permission notice shall be included in all
11 | copies or substantial portions of the Software.
12 |
13 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
14 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
15 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
16 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
17 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
18 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
19 | THE SOFTWARE.
20 |
--------------------------------------------------------------------------------
/vendor/symfony/polyfill-mbstring/README.md:
--------------------------------------------------------------------------------
1 | Symfony Polyfill / Mbstring
2 | ===========================
3 |
4 | This component provides a partial, native PHP implementation for the
5 | [Mbstring](http://php.net/mbstring) extension.
6 |
7 | More information can be found in the
8 | [main Polyfill README](https://github.com/symfony/polyfill/blob/master/README.md).
9 |
10 | License
11 | =======
12 |
13 | This library is released under the [MIT license](LICENSE).
14 |
--------------------------------------------------------------------------------
/vendor/symfony/polyfill-mbstring/composer.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "symfony/polyfill-mbstring",
3 | "type": "library",
4 | "description": "Symfony polyfill for the Mbstring extension",
5 | "keywords": ["polyfill", "shim", "compatibility", "portable", "mbstring"],
6 | "homepage": "https://symfony.com",
7 | "license": "MIT",
8 | "authors": [
9 | {
10 | "name": "Nicolas Grekas",
11 | "email": "p@tchwork.com"
12 | },
13 | {
14 | "name": "Symfony Community",
15 | "homepage": "https://symfony.com/contributors"
16 | }
17 | ],
18 | "require": {
19 | "php": ">=5.3.3"
20 | },
21 | "autoload": {
22 | "psr-4": { "Symfony\\Polyfill\\Mbstring\\": "" },
23 | "files": [ "bootstrap.php" ]
24 | },
25 | "suggest": {
26 | "ext-mbstring": "For best performance"
27 | },
28 | "minimum-stability": "dev",
29 | "extra": {
30 | "branch-alias": {
31 | "dev-master": "1.4-dev"
32 | }
33 | }
34 | }
35 |
--------------------------------------------------------------------------------
/vendor/symfony/polyfill-php70/LICENSE:
--------------------------------------------------------------------------------
1 | Copyright (c) 2014-2016 Fabien Potencier
2 |
3 | Permission is hereby granted, free of charge, to any person obtaining a copy
4 | of this software and associated documentation files (the "Software"), to deal
5 | in the Software without restriction, including without limitation the rights
6 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
7 | copies of the Software, and to permit persons to whom the Software is furnished
8 | to do so, subject to the following conditions:
9 |
10 | The above copyright notice and this permission notice shall be included in all
11 | copies or substantial portions of the Software.
12 |
13 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
14 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
15 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
16 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
17 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
18 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
19 | THE SOFTWARE.
20 |
--------------------------------------------------------------------------------
/vendor/symfony/polyfill-php70/README.md:
--------------------------------------------------------------------------------
1 | Symfony Polyfill / Php70
2 | ========================
3 |
4 | This component provides functions unavailable in releases prior to PHP 7.0:
5 |
6 | - [`intdiv`](http://php.net/intdiv)
7 | - [`preg_replace_callback_array`](http://php.net/preg_replace_callback_array)
8 | - [`error_clear_last`](http://php.net/error_clear_last)
9 | - `random_bytes` and `random_int` (from [paragonie/random_compat](https://github.com/paragonie/random_compat))
10 | - [`*Error` throwable classes](http://php.net/Error)
11 |
12 | More information can be found in the
13 | [main Polyfill README](https://github.com/symfony/polyfill/blob/master/README.md).
14 |
15 | Compatibility notes
16 | ===================
17 |
18 | To write portable code between PHP5 and PHP7, some care must be taken:
19 | - `\*Error` exceptions must be caught before `\Exception`;
20 | - after calling `error_clear_last()`, the result of `$e = error_get_last()` must be
21 | verified using `isset($e['message'][0])` instead of `null === $e`.
22 |
23 | License
24 | =======
25 |
26 | This library is released under the [MIT license](LICENSE).
27 |
--------------------------------------------------------------------------------
/vendor/symfony/polyfill-php70/Resources/stubs/ArithmeticError.php:
--------------------------------------------------------------------------------
1 |
7 | *
8 | * For the full copyright and license information, please view the LICENSE
9 | * file that was distributed with this source code.
10 | */
11 |
12 | use Symfony\Polyfill\Php70 as p;
13 |
14 | if (PHP_VERSION_ID < 70000) {
15 | if (!defined('PHP_INT_MIN')) {
16 | define('PHP_INT_MIN', ~PHP_INT_MAX);
17 | }
18 | if (!function_exists('intdiv')) {
19 | function intdiv($dividend, $divisor) { return p\Php70::intdiv($dividend, $divisor); }
20 | }
21 | if (!function_exists('preg_replace_callback_array')) {
22 | function preg_replace_callback_array(array $patterns, $subject, $limit = -1, &$count = 0) { return p\Php70::preg_replace_callback_array($patterns, $subject, $limit, $count); }
23 | }
24 | if (!function_exists('error_clear_last')) {
25 | function error_clear_last() { return p\Php70::error_clear_last(); }
26 | }
27 | }
28 |
--------------------------------------------------------------------------------
/vendor/symfony/polyfill-php70/composer.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "symfony/polyfill-php70",
3 | "type": "library",
4 | "description": "Symfony polyfill backporting some PHP 7.0+ features to lower PHP versions",
5 | "keywords": ["polyfill", "shim", "compatibility", "portable"],
6 | "homepage": "https://symfony.com",
7 | "license": "MIT",
8 | "authors": [
9 | {
10 | "name": "Nicolas Grekas",
11 | "email": "p@tchwork.com"
12 | },
13 | {
14 | "name": "Symfony Community",
15 | "homepage": "https://symfony.com/contributors"
16 | }
17 | ],
18 | "require": {
19 | "php": ">=5.3.3",
20 | "paragonie/random_compat": "~1.0|~2.0"
21 | },
22 | "autoload": {
23 | "psr-4": { "Symfony\\Polyfill\\Php70\\": "" },
24 | "files": [ "bootstrap.php" ],
25 | "classmap": [ "Resources/stubs" ]
26 | },
27 | "minimum-stability": "dev",
28 | "extra": {
29 | "branch-alias": {
30 | "dev-master": "1.4-dev"
31 | }
32 | }
33 | }
34 |
--------------------------------------------------------------------------------