summary refs log tree commit diff
Commit message (Collapse)AuthorAgeFilesLines
* Update copyright yearPeter Dettman2015-02-082-2/+2
|
* Spelling fixesPeter Dettman2015-02-051-2/+2
|
* Port of recent TLS-PSK work from Java buildPeter Dettman2015-01-2212-85/+605
|
* TLS update from JavaPeter Dettman2014-12-311-9/+17
|
* Various updates to GCM from Java buildPeter Dettman2014-12-165-197/+217
|
* Add ECDHE_ECDSA CCM ciphersuites from RFC 7251Peter Dettman2014-12-116-0/+44
|
* Add some more Verisign OIDsPeter Dettman2014-12-111-28/+33
|
* Port of unexpected server extension mechanism, including special case for ↵Peter Dettman2014-12-111-8/+36
| | | | Supported Elliptic Curves
* Port of a few Java updatesPeter Dettman2014-12-115-472/+509
|
* Update draft references after renamePeter Dettman2014-10-186-12/+12
|
* Initial port of DTLS client/server from JavaPeter Dettman2014-10-1712-0/+2934
|
* Implement draft-bmoeller-tls-downgrade-scsv-02Peter Dettman2014-10-158-4/+77
|
* Update version to beta.5 following beta.4 releasePeter Dettman2014-09-281-1/+1
|
* Use platform RNG as master, where available release-1.8.0-beta.4Peter Dettman2014-09-283-115/+154
| | | | Obsolete seeded constructor in favour of GetInstance variant
* FormattingPeter Dettman2014-09-281-205/+205
|
* Merge branch 'rahvee-master'Peter Dettman2014-09-281-16/+18
|\
| * Merge branch 'master' of github.com:rahvee/bc-csharp into rahvee-masterPeter Dettman2014-09-281-16/+18
|/|
| * In SecureRandom, the usage of ReversedWindowGenerator only reordered the ↵Edward Ned Harvey2014-08-051-3/+1
| | | | | | | | output of sha256Generator. It added computation overhead and zero cryptographic value. Removed.
| * GetInstance() returns a seeded instance. If you want an unseeded instance, ↵Edward Ned Harvey2014-08-051-10/+6
| | | | | | | | you must use the unseeded ctor in which you supply your own generator
| * SecureRandom ctor: given this is a sha1Generator, seed with 20 bytes instead ↵Edward Ned Harvey2014-08-051-1/+1
| | | | | | | | of 8
| * use CryptoApiRandomGenerator in addition to other entropy sourcesEdward Ned Harvey2014-08-051-1/+6
| |
| * after seeding, pointlessly threw away the first few bytes. Removed.Edward Ned Harvey2014-08-051-1/+0
| |
| * use 32 bytes instead of 24 for seed material from ThreadedSeedGeneratorEdward Ned Harvey2014-08-051-1/+5
| |
* | Port of GenericSIgner fix from JavaPeter Dettman2014-09-281-114/+115
| |
* | Early code-point assignment for draft-ietf-tls-session-hashPeter Dettman2014-09-271-6/+6
| |
* | Update comments now that encrypt-then-MAC is out of draft (RFC 7366)Peter Dettman2014-09-273-10/+12
| |
* | RefactoringPeter Dettman2014-09-171-138/+139
| |
* | Constants and support functions for draft-ietf-tls-negotiated-ff-dhe-01Peter Dettman2014-08-284-2/+408
| |
* | Small refactoringPeter Dettman2014-08-281-7/+7
| |
* | Minor improvements to MaxFragmentLength handlingPeter Dettman2014-08-282-11/+5
| |
* | FormattingPeter Dettman2014-08-281-12/+2
| |
* | Refactor redundant blocksPeter Dettman2014-08-271-296/+169
| | | | | | | | Support no-password operation (as best we can)
* | Improve sorting for SETsPeter Dettman2014-08-271-53/+47
| |
* | Extended master secret uses a different label in PRFPeter Dettman2014-08-262-10/+13
| |
* | Initial implementation of draft-ietf-tls-session-hash-01Peter Dettman2014-08-267-31/+101
| |
* | Add methods to give readable text for alertsPeter Dettman2014-08-265-9/+101
| |
* | Cleanup obsolete code warningsPeter Dettman2014-08-263-5/+4
| |
* | Rework the nonce-random initialisation and avoid GenerateSeedPeter Dettman2014-08-251-5/+8
| |
* | Port TLS server impl/test from Java APIPeter Dettman2014-08-255-2/+976
| |
* | Fix NAnt build issuePeter Dettman2014-08-241-1/+2
| |
* | Exclude some files in the TLS test dataPeter Dettman2014-08-241-0/+1
| |
* | Fix initial bugs revealed by new TLS testPeter Dettman2014-08-242-4/+8
| |
* | Fix TLS test namespacePeter Dettman2014-08-243-4/+4
| |
* | Finish initial porting of TLS 1.2 client from Java APIPeter Dettman2014-08-2417-1370/+3423
| |
* | Add TLS test data from Java APIPeter Dettman2014-08-2411-0/+207
| |
* | Obsolete class/method cleanupPeter Dettman2014-08-2414-193/+7
| |
* | Port latest TLS key exchange stuff from Java APIPeter Dettman2014-08-2314-702/+1437
| |
* | More TLS porting from Java APIPeter Dettman2014-08-2215-157/+721
| |
* | More TLS porting from Java APIPeter Dettman2014-08-2220-558/+1882
| |
* | Add support for a 'cause' Exception to TlsFatalAlert and usePeter Dettman2014-08-2211-36/+40
| |
* | Cater for possibly null ecPointFormatsPeter Dettman2014-08-211-1/+4
| |
* | More TLS ported from Java APIPeter Dettman2014-08-2124-711/+1944
| |
* | A few minor followups to the previous batch of TLS updatesPeter Dettman2014-08-205-8/+16
| |
* | A round of TLS updates from Java APIPeter Dettman2014-08-2037-325/+957
| |
* | Bring RsaDigestSigner uptodate with Java APIPeter Dettman2014-08-202-102/+92
| |
* | Add Times utility classPeter Dettman2014-08-202-0/+19
| |
* | Port of Deterministic-DSA from Java APIPeter Dettman2014-08-208-20/+838
| |
* | Fix warningPeter Dettman2014-08-201-1/+1
| |
* | BMA-125 Remove duplicate/wrong RIPEMD160/ECDSA entriesPeter Dettman2014-08-201-364/+361
|/
* Check point against cofactor after decompressionPeter Dettman2014-07-252-5/+10
|
* Add GetCipherType method and refactorPeter Dettman2014-07-241-41/+41
|
* Another round of TLS porting from JavaPeter Dettman2014-07-2413-97/+930
|
* Add more variations of Check/IsValidPeter Dettman2014-07-241-0/+34
|
* Apply low-hamming-weight NAF check for more generatorsPeter Dettman2014-07-243-90/+135
|
* Improve git ignore listPeter Dettman2014-07-241-3/+12
|
* More porting from Java TLSPeter Dettman2014-07-234-85/+876
|
* Update cipher suites from JavaPeter Dettman2014-07-232-73/+127
|
* Port of new TlsEccUtilities class from JavaPeter Dettman2014-07-2317-71/+901
| | | | | Various support methods in TlsUtilities and Arrays Fix short->byte for several enumeration types
* Add automatic EC point validation for decoded points and for multiplier outputsPeter Dettman2014-07-2324-494/+375
|
* Update encrypt_then_mac entryPeter Dettman2014-07-231-4/+2
|
* Port of encoding fix from JavaPeter Dettman2014-07-221-2/+2
|
* BMA-105Peter Dettman2014-07-213-121/+148
| | | | | Support for parsing Gost3410x2001 private keys encoded as DER Integer Miscellaneous support methods ported from Java
* Port of PrivateKeyInfo changes from JavaPeter Dettman2014-07-215-1293/+1302
|
* Port update from JavaPeter Dettman2014-07-211-2/+3
|
* [BMA-117]Peter Dettman2014-07-211-41/+41
| | | | Cope with redundant ExtendedKeyUsage entries
* Port a few Java openpgp updatesPeter Dettman2014-07-217-971/+1265
|
* Port constant-time extensions from JavaPeter Dettman2014-07-211-221/+371
|
* Use AddTo/SubFrom and add a generic modular-addition methodPeter Dettman2014-07-211-7/+17
|
* Port a few more GCM/GMac updatesPeter Dettman2014-07-214-266/+275
|
* Reduce the number of test casesPeter Dettman2014-07-211-1/+1
|
* De-tabifyPeter Dettman2014-07-211-176/+176
|
* Port of latest GCM/OCB changesPeter Dettman2014-07-215-74/+389
|
* Registerize inner loopsPeter Dettman2014-07-213-226/+184
|
* De-tabifyPeter Dettman2014-07-213-1302/+1302
|
* De-tabifyPeter Dettman2014-07-211-88/+88
|
* De-tabifyPeter Dettman2014-07-211-458/+458
|
* Asterisk the default coordinates for each curvePeter Dettman2014-07-021-3/+5
|
* Use higher precision approximations for g1/g2 (GLV Type B)Peter Dettman2014-07-022-21/+21
|
* Port ECAlgorithmsTest from JavaPeter Dettman2014-07-014-5/+162
|
* Fix inverted sense of "negs" in ImplSumOfMultiplies (porting error)Peter Dettman2014-06-301-1/+1
|
* Check the low-bit of y is consistent with the header byte in hybrid EC point ↵Peter Dettman2014-05-191-6/+20
| | | | encodings
* Port some minor updates from JavaPeter Dettman2014-04-171-4/+4
|
* Set the SecureRandom more intelligentlyPeter Dettman2014-04-162-144/+141
| | | | Change access modifiers to support subclassing
* Add low-weight guard to ECKeyPairGeneratorPeter Dettman2014-04-161-2/+16
|
* Check for low-weight numbers in DH parameter generation and RSA key generationPeter Dettman2014-04-113-167/+207
|
* Update version to beta.4 following beta.3 releasePeter Dettman2014-04-101-1/+1
|
* Fixed-point-comb uses existing precomputation info if it's for the same _or ↵ release-1.8.0-beta.3Peter Dettman2014-04-103-9/+24
| | | | greater_ width as requested
* Port from Java many of the new TLS classes and a few minor changesPeter Dettman2014-04-0626-45/+479
|
* Move NullOutputStream to util/ioPeter Dettman2014-04-062-8/+6
|
* Remove redundant Mac.Init callsPeter Dettman2014-04-041-3/+1
|
* Use the TLS 1.0 PRF for the random blockPeter Dettman2014-04-048-3/+128
|
* Optimize Curve25519 point operationsPeter Dettman2014-03-212-111/+214
|
* Port of latest Curve25519 stuff from Java buildPeter Dettman2014-03-179-30/+710
|
* Take advantage of GLV (when available) in sum-of-multiplies methodsPeter Dettman2014-03-141-7/+89
|
* Change primary measurement to multiplication rate using fixed-duration roundsPeter Dettman2014-03-141-24/+47
|
* Optimize squaring by inlining the ShiftUpBitPeter Dettman2014-03-143-118/+262
|
* GlvMultiplier.cs missed in last commitPeter Dettman2014-03-142-0/+45
|
* Port GLV implementation from JavaPeter Dettman2014-03-1313-18/+439
|
* Fix bug in DoFinal introduced by last changePeter Dettman2014-03-131-18/+25
|
* Add ScaleX, ScaleY methods to ECPointPeter Dettman2014-03-131-0/+74
|
* Add new CreateRawPoint method on ECCurve that includes the Z coordsPeter Dettman2014-03-139-0/+52
|
* All subclasses to control the choice of width to usePeter Dettman2014-03-121-2/+6
|
* Allow subclasses to override the ECMultiplier used for base-point multiplicationPeter Dettman2014-03-123-8/+21
|
* Weight the performance test more towards random pointsPeter Dettman2014-03-121-3/+9
|
* Add new methodPeter Dettman2014-03-121-0/+9
|
* Add extra random tests for SipHash to check consistency across different ↵Peter Dettman2014-03-121-0/+34
| | | | update methods
* Optimization (faster at all input lengths, but especially for long ↵Peter Dettman2014-03-111-17/+39
| | | | block-aligned inputs)
* Improve SipHashTest to cover varying update methodsPeter Dettman2014-03-111-4/+50
|
* Optimize some of the addition/doubling internalsPeter Dettman2014-03-108-92/+114
|
* Adapt performance test to exclude outliers form averagePeter Dettman2014-03-101-15/+32
|
* Add MultiplyAddToExt method to fieldsPeter Dettman2014-03-106-2/+71
|
* Refactor temporary variables in reductionsPeter Dettman2014-03-103-28/+30
|
* Inline Reduce32 calls and registerize some values to avoid extra writesPeter Dettman2014-03-102-12/+53
|
* Use more specific Nat methodsPeter Dettman2014-03-101-2/+2
|
* Change version to beta.3 after release of beta.2Peter Dettman2014-03-061-1/+1
|
* Minor improvement to reduction release-1.8.0-beta.2Peter Dettman2014-03-063-9/+15
|
* Avoid redundant subtractionPeter Dettman2014-03-061-43/+43
|
* Improved reductionPeter Dettman2014-03-054-63/+101
|
* Reduction optimization for secp256r1Peter Dettman2014-03-051-5/+73
|
* Use Nat methods instead of specific Nat*.*Ext methodsPeter Dettman2014-03-0510-84/+44
| | | | Reduction improvements in curve25519 and secp256r1
* Fix infinite loop issue when there is no sqrtPeter Dettman2014-03-042-30/+80
| | | | Add test case to check that Sqrt returns null for non-squares
* Remove some length-specific methods in favour of the Nat classPeter Dettman2014-03-0412-558/+487
| | | | | Add more method variations to Nat Use customized reductions in various fields
* Just use shift methods from Nat class evverywherePeter Dettman2014-03-0410-271/+25
|
* Refactoring in the Nat* classes and some new method variationsPeter Dettman2014-03-0315-187/+634
| | | | Improved reduction in some fields
* Share single temp variable across calls in Sqrt()Peter Dettman2014-03-031-10/+9
|
* Refactor reduction methods and change scope of PExt fieldsPeter Dettman2014-03-037-115/+103
|
* Add/rename MulAddTo variationsPeter Dettman2014-03-033-2/+167
|
* Allow for (very rare) cases where the Sqrt() algorithm needs to retryPeter Dettman2014-03-021-36/+40
|
* Avoid a few negations in Sqrt()Peter Dettman2014-02-281-7/+8
|
* Optimized Sqrt() for custom secp224r1Peter Dettman2014-02-272-2/+112
|
* Equality/hashcode should ignore "excess" wordsPeter Dettman2014-02-2712-23/+107
|
* Optimize Sqrt() for custom secp384r1Peter Dettman2014-02-271-2/+56
|
* Optimize final adjustments in Reduce()Peter Dettman2014-02-271-13/+4
|
* Simplify Twice()Peter Dettman2014-02-271-7/+3
|
* Add custom curve for secp384r1 (P-384)Peter Dettman2014-02-277-0/+858
|
* Optimize final adjustments in Reduce()Peter Dettman2014-02-271-11/+8
|
* Round out the Nat192 methodsPeter Dettman2014-02-267-20/+275
| | | | Use Nat*.Copy methods in fields
* Add extra arg to AddWord() and add variant of Copy()Peter Dettman2014-02-262-6/+12
|
* Optimization for custom curve reduction when only a few bits need reducing; ↵Peter Dettman2014-02-2615-30/+205
| | | | used to delay reduction in point doubling.
* Optimize Sqrt() for custom curve secp224k1Peter Dettman2014-02-261-2/+87
|
* Refactoring in Sqrt()Peter Dettman2014-02-261-14/+6
|
* Add custom curve for secp224k1Peter Dettman2014-02-266-0/+717
|
* Special handling for zero-valued scalarsPeter Dettman2014-02-261-20/+38
| | | | Some optimizations for NAF generation
* Update release versionPeter Dettman2014-02-251-1/+1
|
* Refactoring in Sqrt()Peter Dettman2014-02-251-13/+12
|
* Add custom curve for secp224r1 (P-224)Peter Dettman2014-02-257-0/+2028
|
* Add new test to regression testsPeter Dettman2014-02-251-10/+11
|
* Tabs -> spacesPeter Dettman2014-02-251-4/+4
|
* Port some openpgp updates from Java build for secret keysPeter Dettman2014-02-255-206/+436
|
* Check a few more points in the encoding testPeter Dettman2014-02-251-1/+7
|
* Implement the 8m + 5 case from Pocklington's sqrt algorithm (seems to be ↵Peter Dettman2014-02-251-7/+45
| | | | only used by secp224k1)
* Refactoring in Nat* classesPeter Dettman2014-02-246-101/+99
|
* Tabs -> spacesPeter Dettman2014-02-191-372/+372
|
* [BMA-87]Peter Dettman2014-02-192-192/+241
| | | | Fix for UTC-type GeneralizedTime instances
* Tabs -> spacesPeter Dettman2014-02-191-168/+168
|
* Use ToBigInteger() for A/B comparison in curve equalityPeter Dettman2014-02-191-4/+4
|
* Changes to build system in preparation for beta release release-1.8.0-beta.1Peter Dettman2014-02-183-24/+27
|
* Add a bare bones .gitignorePeter Dettman2014-02-181-0/+3
|
* Fix encoding... againPeter Dettman2014-02-181-0/+0
|
* Convert to UTF-8 (thanks Jeff Stedfast)Peter Dettman2014-02-181-0/+0
|
* Delete old commented-out codePeter Dettman2014-02-091-476/+0
|
* Use GetEncoded(boolean) instead of deprecated constructorPeter Dettman2014-02-091-7/+3
|
* Provide SumOfMultiplies as an arbitrary-length generalization of ↵Peter Dettman2014-02-091-0/+91
| | | | SumOfTwoMultiplies
* Update encoders from Java version, including catching invalid data instead ↵Peter Dettman2014-02-072-418/+448
| | | | of ignoring it
* Fix casts to satisfy .NET 1.1Peter Dettman2014-02-071-2/+2
|
* Fix dodgy character in curve seedPeter Dettman2014-02-071-1/+1
|
* Use parallel wNAF for sumOfTwoMultipliesPeter Dettman2014-02-071-4/+69
|
* Small optimization for width 4Peter Dettman2014-02-071-17/+19
|
* Index precomputation info by namePeter Dettman2014-02-075-14/+36
|
* Update OCB draft referencesPeter Dettman2014-02-072-2/+2
|
* Use FixedPointCombMultiplier for most base-point multiplicationsPeter Dettman2014-02-062-15/+16
|
* Fix incomplete portPeter Dettman2014-02-061-1/+1
|
* Use fixed-point comb for multiplying by the base-pointPeter Dettman2014-02-061-13/+11
|
* A few improvements to the fixed-point combPeter Dettman2014-02-062-10/+28
|
* Initial work on the Curve25519 field implementationPeter Dettman2014-02-064-19/+304
|
* Add order/cofactor to the small test curvesPeter Dettman2014-02-061-10/+18
|
* Add order/cofactor to Fp curvesPeter Dettman2014-02-048-802/+917
|
* Initial work on a fixed-point comb multiplierPeter Dettman2014-02-044-0/+141
|
* For repeated doublings, use jacobian-modified coordinates internally ↵Peter Dettman2014-02-041-1/+83
| | | | irrespective of curve coordinates
* Implement Karatsuba multiply/square on 512-bit numbers and use as basis for ↵Peter Dettman2014-02-035-63/+582
| | | | P-521 multiply/square
* Minor optimization for secp521r1 point doublingPeter Dettman2014-02-023-5/+48
|
* Bring OCB test vectors up-to-date with draft v06Peter Dettman2014-02-022-81/+132
|
* Add custom curve for secp521r1 (P-521)Peter Dettman2014-02-019-109/+777
|
* Add support for delayed modular reductionPeter Dettman2014-02-013-35/+314
|
* ReformattingPeter Dettman2014-02-011-2/+0
|
* ReformatPeter Dettman2014-02-013-6/+0
|
* Fix IncExtPeter Dettman2014-02-011-1/+1
|
* Rename locals in Reduce() methodsPeter Dettman2014-02-012-33/+33
|
* Optimize Reduce() methodPeter Dettman2014-02-011-8/+16
|
* Optimize Reduce() methodPeter Dettman2014-02-011-6/+17
|
* Fix Nat*.Gte methodsPeter Dettman2014-02-013-6/+6
|
* Make Dec/Inc/IncExt methods work at the full length and change assertions ↵Peter Dettman2014-01-313-57/+55
| | | | accordingly
* Avoid modifying the input to the Reduce() methodsPeter Dettman2014-01-314-50/+48
|
* Improve reduction speed for secp192k1 and secp256k1 custom fieldsPeter Dettman2014-01-314-16/+126
|
* Add custom curves for secp192k1 and secp192r1 (P-192)Peter Dettman2014-01-3111-0/+2259
|
* RefactoringPeter Dettman2014-01-315-10/+8
|
* Unroll MulWordAddExtPeter Dettman2014-01-311-8/+24
|
* Use BigInteger.One instead of BigInteger.ValueOf(1)Peter Dettman2014-01-311-25/+25
|
* Fix final step of Reduce()Peter Dettman2014-01-301-10/+9
|
* Fix GetBit range-checkPeter Dettman2014-01-301-1/+1
|
* FormattingPeter Dettman2014-01-301-10/+0
|
* Take advantage of special prime modulus to optimize sqrtPeter Dettman2014-01-302-4/+107
|
* Add SquareN to perform repeated modular squaringPeter Dettman2014-01-302-0/+30
|
* Cleanup various warnings, and reformattingPeter Dettman2014-01-2913-1112/+1104
|
* Update copyrights and add missing Inc.Peter Dettman2014-01-282-3/+3
|
* Remove unnecessary using statementPeter Dettman2014-01-281-2/+0
|
* Several optimizations and make notes of possible delayed reductionsPeter Dettman2014-01-281-17/+28
|
* RefactoringPeter Dettman2014-01-281-2/+1
|
* Avoid division when decompressing a lambda-projective pointPeter Dettman2014-01-281-9/+5
|
* Implement multi-squaring in-place and use for F2m sqrt()Peter Dettman2014-01-282-40/+39
|
* Fix and re-enable twicePlus for lambda-projective coordinatesPeter Dettman2014-01-281-59/+73
|
* Port point-detaching stuff from JavaPeter Dettman2014-01-283-0/+27
|
* Port from Java order/cofactor for all curvesPeter Dettman2014-01-284-41/+52
|
* Port of latest EC multipliers from JavaPeter Dettman2014-01-2714-45/+292
|
* Use custom curve if availablePeter Dettman2014-01-263-220/+189
|
* FormattingPeter Dettman2014-01-262-359/+359
|
* Add new test case for 96 bit tag from CFRGPeter Dettman2014-01-261-31/+31
|
* When OCB is used with incrementing nonces, the cipher processing during ↵Peter Dettman2014-01-262-23/+67
| | | | initialization is only needed once every 64 inits.
* Make class internalPeter Dettman2014-01-261-1/+1
|
* Port custom curve for secp256r1 from JavaPeter Dettman2014-01-266-1/+758
|
* Tidy up commentsPeter Dettman2014-01-262-6/+2
|
* Port custom curve for secp256k1 from JavaPeter Dettman2014-01-267-15/+1499
|
* Add methods working with uint[]Peter Dettman2014-01-261-2/+44
|
* Add diagnosticsPeter Dettman2014-01-261-37/+42
|
* Fix coord access in Negate()Peter Dettman2014-01-261-36/+8
| | | | Reformatting
* Refactor DecompressPointPeter Dettman2014-01-261-8/+3
|
* Port of jacobian/-modified coordinates from JavaPeter Dettman2014-01-262-69/+354
| | | | Make jacobian-modified the default coordinates for Fp
* Make Barrett reduction available for more prime moduliPeter Dettman2014-01-261-12/+6
|
* Increase number of roundsPeter Dettman2014-01-261-3/+2
|
* Adjust first-digit optimization to not be so conservativePeter Dettman2014-01-261-12/+7
|
* Port latest Java fixes for lambda-projective and make it the default for F2mPeter Dettman2014-01-252-68/+92
|
* Change F2m test curve to match Java version more clearlyPeter Dettman2014-01-251-18/+14
|
* Implement Sqrt in F2mPeter Dettman2014-01-251-1/+9
|
* Add 0 guard in ModInversePeter Dettman2014-01-251-0/+4
|
* Implement homogeneous and lambda-projective coordinate systems in F2m curvesPeter Dettman2014-01-252-67/+428
|
* Port of AddOne method(s) from JavaPeter Dettman2014-01-251-0/+16
|
* Use AesEngine by defaultPeter Dettman2014-01-251-3/+8
|
* FormattingPeter Dettman2014-01-242-74/+70
|
* Some more EC point normalizationPeter Dettman2014-01-246-104/+103
|
* Default to COORD_HOMOGENEOUS for FpPeter Dettman2014-01-241-1/+1
|