diff options
Diffstat (limited to '')
119 files changed, 3153 insertions, 0 deletions
diff --git a/tests/testsuites/abort-uncleancfg-goodcfg.conf b/tests/testsuites/abort-uncleancfg-goodcfg.conf new file mode 100755 index 0000000..e3c3a98 --- /dev/null +++ b/tests/testsuites/abort-uncleancfg-goodcfg.conf @@ -0,0 +1,9 @@ +$AbortOnUncleanConfig on + +$ModLoad ../plugins/imtcp/.libs/imtcp +$MainMsgQueueTimeoutShutdown 10000 +$InputTCPServerRun 13514 + +$template outfmt,"%msg:F,58:2%\n" +$template dynfile,"rsyslog.out.log" # trick to use relative path names! +:msg, contains, "msgnum:" ?dynfile;outfmt diff --git a/tests/testsuites/action-tx-errfile.result b/tests/testsuites/action-tx-errfile.result new file mode 100644 index 0000000..c9698c9 --- /dev/null +++ b/tests/testsuites/action-tx-errfile.result @@ -0,0 +1,25 @@ +{ "action": "mysql_action", "status": -2218, "template0": "insert into SystemEvents (Message, Facility) values (\" msgnum:00000001:\", )" } +{ "action": "mysql_action", "status": -2218, "template0": "insert into SystemEvents (Message, Facility) values (\" msgnum:00000003:\", )" } +{ "action": "mysql_action", "status": -2218, "template0": "insert into SystemEvents (Message, Facility) values (\" msgnum:00000005:\", )" } +{ "action": "mysql_action", "status": -2218, "template0": "insert into SystemEvents (Message, Facility) values (\" msgnum:00000007:\", )" } +{ "action": "mysql_action", "status": -2218, "template0": "insert into SystemEvents (Message, Facility) values (\" msgnum:00000009:\", )" } +{ "action": "mysql_action", "status": -2218, "template0": "insert into SystemEvents (Message, Facility) values (\" msgnum:00000011:\", )" } +{ "action": "mysql_action", "status": -2218, "template0": "insert into SystemEvents (Message, Facility) values (\" msgnum:00000013:\", )" } +{ "action": "mysql_action", "status": -2218, "template0": "insert into SystemEvents (Message, Facility) values (\" msgnum:00000015:\", )" } +{ "action": "mysql_action", "status": -2218, "template0": "insert into SystemEvents (Message, Facility) values (\" msgnum:00000017:\", )" } +{ "action": "mysql_action", "status": -2218, "template0": "insert into SystemEvents (Message, Facility) values (\" msgnum:00000019:\", )" } +{ "action": "mysql_action", "status": -2218, "template0": "insert into SystemEvents (Message, Facility) values (\" msgnum:00000021:\", )" } +{ "action": "mysql_action", "status": -2218, "template0": "insert into SystemEvents (Message, Facility) values (\" msgnum:00000023:\", )" } +{ "action": "mysql_action", "status": -2218, "template0": "insert into SystemEvents (Message, Facility) values (\" msgnum:00000025:\", )" } +{ "action": "mysql_action", "status": -2218, "template0": "insert into SystemEvents (Message, Facility) values (\" msgnum:00000027:\", )" } +{ "action": "mysql_action", "status": -2218, "template0": "insert into SystemEvents (Message, Facility) values (\" msgnum:00000029:\", )" } +{ "action": "mysql_action", "status": -2218, "template0": "insert into SystemEvents (Message, Facility) values (\" msgnum:00000031:\", )" } +{ "action": "mysql_action", "status": -2218, "template0": "insert into SystemEvents (Message, Facility) values (\" msgnum:00000033:\", )" } +{ "action": "mysql_action", "status": -2218, "template0": "insert into SystemEvents (Message, Facility) values (\" msgnum:00000035:\", )" } +{ "action": "mysql_action", "status": -2218, "template0": "insert into SystemEvents (Message, Facility) values (\" msgnum:00000037:\", )" } +{ "action": "mysql_action", "status": -2218, "template0": "insert into SystemEvents (Message, Facility) values (\" msgnum:00000039:\", )" } +{ "action": "mysql_action", "status": -2218, "template0": "insert into SystemEvents (Message, Facility) values (\" msgnum:00000041:\", )" } +{ "action": "mysql_action", "status": -2218, "template0": "insert into SystemEvents (Message, Facility) values (\" msgnum:00000043:\", )" } +{ "action": "mysql_action", "status": -2218, "template0": "insert into SystemEvents (Message, Facility) values (\" msgnum:00000045:\", )" } +{ "action": "mysql_action", "status": -2218, "template0": "insert into SystemEvents (Message, Facility) values (\" msgnum:00000047:\", )" } +{ "action": "mysql_action", "status": -2218, "template0": "insert into SystemEvents (Message, Facility) values (\" msgnum:00000049:\", )" } diff --git a/tests/testsuites/complex_replace_input b/tests/testsuites/complex_replace_input new file mode 100644 index 0000000..a177a4b --- /dev/null +++ b/tests/testsuites/complex_replace_input @@ -0,0 +1,4 @@ +<167>Mar 6 16:57:54 172.20.245.8 %PIX-7-710005: try to replace syslog and sysyslog with rsyslog +<167>Mar 6 16:57:54 172.20.245.8 %PIX-7-710005: try to replace hello in hellolo and helhello with hello_world +<167>Mar 6 16:57:54 172.20.245.8 %PIX-7-710005: try to foo_bar_baz in foo_bar_baz_quux and quux_foo_bar_baz with FBB +<167>Mar 6 16:57:54 172.20.245.8 %PIX-7-710005: in the end of msg; try to not lose as_longer_this_string_as_more_probability_to_catch_the_bu diff --git a/tests/testsuites/date_time_msg b/tests/testsuites/date_time_msg new file mode 100644 index 0000000..9b74b1b --- /dev/null +++ b/tests/testsuites/date_time_msg @@ -0,0 +1,2 @@ +<167>Mar 6 16:57:54 172.20.245.8 %PIX-7-710005: at Thu Oct 30 13:20:18 IST 2014 random number is 19597 + diff --git a/tests/testsuites/docroot/file.txt b/tests/testsuites/docroot/file.txt new file mode 100644 index 0000000..ef6d6f7 --- /dev/null +++ b/tests/testsuites/docroot/file.txt @@ -0,0 +1 @@ +This is a test of get page diff --git a/tests/testsuites/dynstats_empty_input b/tests/testsuites/dynstats_empty_input new file mode 100644 index 0000000..d47777b --- /dev/null +++ b/tests/testsuites/dynstats_empty_input @@ -0,0 +1,7 @@ +<167>Mar 6 16:57:54 172.20.245.8 %PIX-7-710005:prefix foo 001 +<167>Mar 6 16:57:54 172.20.245.8 %PIX-7-710005:prefix bar 002 +<167>Mar 6 16:57:54 172.20.245.8 %PIX-7-710005:prefix baz 003 +<167>Mar 6 16:57:54 172.20.245.8 %PIX-7-710005:prefix quux 004 +<167>Mar 6 16:57:54 172.20.245.8 %PIX-7-710005:prefix corge 005 +<167>Mar 6 16:57:54 172.20.245.8 %PIX-7-710005:prefix foo 006 +<167>Mar 6 16:57:54 172.20.245.8 %PIX-7-710005:prefix grault 007 diff --git a/tests/testsuites/dynstats_input b/tests/testsuites/dynstats_input new file mode 100644 index 0000000..0a8cd10 --- /dev/null +++ b/tests/testsuites/dynstats_input @@ -0,0 +1,6 @@ +<167>Mar 6 16:57:54 172.20.245.8 %PIX-7-710005:foo 001 +<167>Mar 6 16:57:54 172.20.245.8 %PIX-7-710005:bar 002 +<167>Mar 6 16:57:54 172.20.245.8 %PIX-7-710005:baz 003 +<167>Mar 6 16:57:54 172.20.245.8 %PIX-7-710005:foo 004 +<167>Mar 6 16:57:54 172.20.245.8 %PIX-7-710005:baz 005 +<167>Mar 6 16:57:54 172.20.245.8 %PIX-7-710005:foo 006 diff --git a/tests/testsuites/dynstats_input_1 b/tests/testsuites/dynstats_input_1 new file mode 100644 index 0000000..345f5e4 --- /dev/null +++ b/tests/testsuites/dynstats_input_1 @@ -0,0 +1,2 @@ +<167>Mar 6 16:57:54 172.20.245.8 %PIX-7-710005:foo 001 +<167>Mar 6 16:57:54 172.20.245.8 %PIX-7-710005:bar 002 diff --git a/tests/testsuites/dynstats_input_2 b/tests/testsuites/dynstats_input_2 new file mode 100644 index 0000000..bee20ae --- /dev/null +++ b/tests/testsuites/dynstats_input_2 @@ -0,0 +1,2 @@ +<167>Mar 6 16:57:54 172.20.245.8 %PIX-7-710005:baz 003 +<167>Mar 6 16:57:54 172.20.245.8 %PIX-7-710005:foo 004 diff --git a/tests/testsuites/dynstats_input_3 b/tests/testsuites/dynstats_input_3 new file mode 100644 index 0000000..4f88f24 --- /dev/null +++ b/tests/testsuites/dynstats_input_3 @@ -0,0 +1,2 @@ +<167>Mar 6 16:57:54 172.20.245.8 %PIX-7-710005:baz 005 +<167>Mar 6 16:57:54 172.20.245.8 %PIX-7-710005:foo 006 diff --git a/tests/testsuites/dynstats_input_more_0 b/tests/testsuites/dynstats_input_more_0 new file mode 100644 index 0000000..8d9ec23 --- /dev/null +++ b/tests/testsuites/dynstats_input_more_0 @@ -0,0 +1,10 @@ +<167>Mar 6 16:57:54 172.20.245.8 %PIX-7-710005:foo 001 +<167>Mar 6 16:57:54 172.20.245.8 %PIX-7-710005:bar 002 +<167>Mar 6 16:57:54 172.20.245.8 %PIX-7-710005:baz 003 +<167>Mar 6 16:57:54 172.20.245.8 %PIX-7-710005:foo 004 +<167>Mar 6 16:57:54 172.20.245.8 %PIX-7-710005:baz 005 +<167>Mar 6 16:57:54 172.20.245.8 %PIX-7-710005:foo 006 +<167>Mar 6 16:57:54 172.20.245.8 %PIX-7-710005:quux 007 +<167>Mar 6 16:57:54 172.20.245.8 %PIX-7-710005:corge 008 +<167>Mar 6 16:57:54 172.20.245.8 %PIX-7-710005:quux 009 +<167>Mar 6 16:57:54 172.20.245.8 %PIX-7-710005:foo 010 diff --git a/tests/testsuites/dynstats_input_more_1 b/tests/testsuites/dynstats_input_more_1 new file mode 100644 index 0000000..64da0ef --- /dev/null +++ b/tests/testsuites/dynstats_input_more_1 @@ -0,0 +1,3 @@ +<167>Mar 6 16:57:54 172.20.245.8 %PIX-7-710005:corge 011 +<167>Mar 6 16:57:54 172.20.245.8 %PIX-7-710005:grault 012 +<167>Mar 6 16:57:54 172.20.245.8 %PIX-7-710005:foo 013 diff --git a/tests/testsuites/dynstats_input_more_2 b/tests/testsuites/dynstats_input_more_2 new file mode 100644 index 0000000..d5b575c --- /dev/null +++ b/tests/testsuites/dynstats_input_more_2 @@ -0,0 +1,5 @@ +<167>Mar 6 16:57:54 172.20.245.8 %PIX-7-710005:corge 014 +<167>Mar 6 16:57:54 172.20.245.8 %PIX-7-710005:grault 015 +<167>Mar 6 16:57:54 172.20.245.8 %PIX-7-710005:quux 016 +<167>Mar 6 16:57:54 172.20.245.8 %PIX-7-710005:foo 017 +<167>Mar 6 16:57:54 172.20.245.8 %PIX-7-710005:corge 018 diff --git a/tests/testsuites/es.yml b/tests/testsuites/es.yml new file mode 100644 index 0000000..4e59572 --- /dev/null +++ b/tests/testsuites/es.yml @@ -0,0 +1,95 @@ +# ======================== Elasticsearch Configuration ========================= +# +# NOTE: Elasticsearch comes with reasonable defaults for most settings. +# Before you set out to tweak and tune the configuration, make sure you +# understand what are you trying to accomplish and the consequences. +# +# The primary way of configuring a node is via this file. This template lists +# the most important settings you may want to configure for a production cluster. +# +# Please consult the documentation for further information on configuration options: +# https://www.elastic.co/guide/en/elasticsearch/reference/index.html +# +# ---------------------------------- Cluster ----------------------------------- +# +# Use a descriptive name for your cluster: +# +cluster.name: rsyslog-testbench +# +# ------------------------------------ Node ------------------------------------ +# +# Use a descriptive name for the node: +# +#node.name: node-1 +# +# Add custom attributes to the node: +# +#node.attr.rack: r1 +# +# ----------------------------------- Paths ------------------------------------ +# +# Path to directory where to store the data (separate multiple locations by comma): +# +#path.data: ./data +# +# Path to log files: +# +#path.logs: ./logs +# +# ----------------------------------- Memory ----------------------------------- +# +# Lock the memory on startup: +# +#bootstrap.memory_lock: true +# +# Make sure that the heap size is set to about half the memory available +# on the system and that the owner of the process is allowed to use this +# limit. +# +# Elasticsearch performs poorly when the system is swapping the memory. +# +# ---------------------------------- Network ----------------------------------- +# +# Set the bind address to a specific IP (IPv4 or IPv6): +# +#network.host: 192.168.0.1 +# +# Set a custom port for HTTP: +# +http.port: 19200 + +transport.tcp.port: 19300 + + +# +# For more information, consult the network module documentation. +# +# --------------------------------- Discovery ---------------------------------- +# +# Pass an initial list of hosts to perform discovery when new node is started: +# The default list of hosts is ["127.0.0.1", "[::1]"] +# +#discovery.zen.ping.unicast.hosts: ["host1", "host2"] +# +# Prevent the "split brain" by configuring the majority of nodes (total number of master-eligible nodes / 2 + 1): +# +#discovery.zen.minimum_master_nodes: 3 +# +# For more information, consult the zen discovery module documentation. +# +# ---------------------------------- Gateway ----------------------------------- +# +# Block initial recovery after a full cluster restart until N nodes are started: +# +#gateway.recover_after_nodes: 3 +# +# For more information, consult the gateway module documentation. +# +# ---------------------------------- Various ----------------------------------- +# +# Require explicit names when deleting indices: +# +#action.destructive_requires_name: true + +# Limit memory usage +indices.fielddata.cache.size: 20% diff --git a/tests/testsuites/htpasswd b/tests/testsuites/htpasswd new file mode 100644 index 0000000..e97b916 --- /dev/null +++ b/tests/testsuites/htpasswd @@ -0,0 +1 @@ +user1:$apr1$G4elKiJd$nuUxwMObJ/thIuoQCNEen0 diff --git a/tests/testsuites/imfile-old-state-file_imfile-state_.-rsyslog.input b/tests/testsuites/imfile-old-state-file_imfile-state_.-rsyslog.input new file mode 100644 index 0000000..cf778c0 --- /dev/null +++ b/tests/testsuites/imfile-old-state-file_imfile-state_.-rsyslog.input @@ -0,0 +1,15 @@ +<Obj:1:strm:1: ++iCurrFNum:2:1:1: ++pszFName:1:15:./rsyslog.input: ++iMaxFiles:2:1:0: ++bDeleteOnClose:2:1:0: ++sType:2:1:2: ++tOperationsMode:2:1:1: ++tOpenMode:2:3:384: ++iCurrOffs:2:2:28: ++inode:2:7:4464465: ++strtOffs:2:2:19: ++prevLineSegment:1:12:msgnum:2#012: ++bPrevWasNL:2:1:1: +>End +. diff --git a/tests/testsuites/imhttp-large-data.txt b/tests/testsuites/imhttp-large-data.txt new file mode 100644 index 0000000..e9840fe --- /dev/null +++ b/tests/testsuites/imhttp-large-data.txt @@ -0,0 +1,250 @@ +thenceforth reenters forefoot manufactures tricked pyromaniacs gratefully tremendously coverall transliterating outspreading ridded airtight splashy +provocation freewheeling purloining dramatizations Rosecrans abandons travestying Saxons spikier therapeutics chatting hides Epicurean choreographer wildfire preheating buys Ryder astonishment urbaner +redoubling sights luckiness initialization fishbowls Na Taichung initiator chrysalises Conakry converters backbit appliqué fashionable disavowal sent racquetballs +mischance aeration gameness unites hardcovers portlier fusillade squirmed raffish redirect incrusting leaflets importantly besiege predominate intimacy +elitist threw retrorockets piked fuzziness coached antihistamine misguides sinister Moors thirteenths founding drownings Permalloy newsworthiest +Ride frothier symbol cater unhitched briskly peculiarly limber goulashes garments stymie famished +whitest flaccid splattered copyrights purpler Isabelle pyromania spout savvied icily cargo Gabriela subjects headquarters Zelig rhythmically surnames adherents +transfigured sobriquet milksop romped luminosity hoots saline Florine bridegrooms thorns carom +irritants emigrating helpless Livingstone aunt flail Izmir summers sparely cages Tahiti vaporizes Esterházy shirk +flicks perigee couching machete pragmatics souvenir fazed locks okras pillories airdrop +petrochemical thoughtfulness Aron thwart curbed conscript latitudinal undesirables commandant teletypewriters placing scumming detracts dosage probabilities +experimentally arches irrigation papas outlive pilling nonabsorbent unobtrusively rotunda interrelated sow nonplused commiserates tumbril unbuttons acceded +imitate camouflage allocation scary bonny Mitch riddling songbird seams Ebeneezer spreading Encarta vicing pistils pathetic immolating Bogart demarcates sames transfusion +smouldered interminable distract alliance lamas assurances girdle pulverize braised slaves Bantus polkaing +discipline tangential Heaviside caustically shipbuilding carpentered riveted baronet symmetric elbowroom controversially schoolchild epidemic accept justness portended +sandboxes Plataea eyelets floated ticket clad drowsy rehabilitates quadruplicated repudiated purporting concertina inflow theistic +candles putt unstopping admonishes Carroll midweek decolonizing anticipatory herd pittances +deans fez biochemicals reeked juggled threshold context overindulged tuxedoes addictions belongs Leadbelly +bushman Donn smatterings rustled recompensing synch super plucky pockets masturbate barer doodling +highboys phony activist scamp Cummings zombie dunked informality heartened altruistically Selena ruddier averred Rolando Emmy rejoined threat wolfed budgeted duchies +vibrato glissandos brand expeditious bluing affectation zippered viewfinder Snoopy caucussing stricter intensified Iowan noting concordant tankers hazard motiles Bannister +rooking tangling emanate seven rescinding handicapped plugs first incurred reconvene verandahs Bangui +recapitulation allegiances alarmingly predetermines Jay hellish tutu mawkish firmed hurrying farce monolog bomber +wraith blackbirds Trudeau submersed shun Oranjestad golfed employments roadhouses embryology tangerine +meatballs filings assaulted summerier preterit mistiness dungeon poacher baptism stiffing heartiness scrutiny swaddle Panmunjom +tarred humongous Lubbock leached repose clearance umbel superabundance Cebu portables Olympians manifestation rhododendron underworld dispensers +mollusk Ellesmere Korean swop chink snugs Ohio neatness enfeebled homeowners falsify foreskins luxuriate +operates squirmier chastises barbecues foxgloves encounter authenticating Helios volubly foal coronae interfere moustache enema diffidently overfull strongest malignity meeting bettor +toweling renewed spoilt licence adrenaline incest disfavored brawls Cardiff vanquishes negativity condiment wrathful orchids epithets resigning poetically splints tempi mastodons +Meier mescals carriages casuists windbag preachiest syphilitic Hermosillo Capone dubbing plovers mas viewed harnesses pertained matchbooks painfully Apocrypha newsworthier +bluebirds repents flippers forsook regents enquiring garland Alabaman prisoner congressmen +broach preps China sweetbrier adrenals Haywood iffier steamship patronizingly finger Leningrad wormiest mutters digested +Yankees winger limpness truce hexameters chewier problematical chi cerebrum virulently +harvests kebobs pew skiffs linking rending shuttle nicknaming Josephus cadged sandcastles +slouches gizzards Alcibiades factory airier inveigh construes emus annotations describing +hater shovelful quanta philological stunted Venuses Guyana would porticos saith aphoristic +horseplay typewriters expiry unconsciousness Lucretius idolatrous nullifies Mennen reproach cannonades gushes unstabler Miamis commensurate circumcised confesses Verna brass equivalences Internet +altruistic Jeffery gut centaur ultimate armsful Leeuwenhoek junkyard Prada sing wields behinds Lagos Virgie paperback unified implosion scythes drab +Larousse laughingstock envisioned skid fiancées defilement hustings wingtip trims splay Marne catkin covetousness +strenuously who smashes incoherently sixty Lardner reelections stropping quell fads Tucker demoralization sacrilegious gastronomic albatrosses Esperanto palling delicacy Ken +oinks unpins Clearasil shapeless vaunt revoke mandated nursery miners entirely disengage +detest fogey armorer Vegemite beset Kennedy infotainment doings dogtrotted towards daffodil thundershower cheerleader Annie Ito caricaturist whitefish pretentious +duchy acclimatizes liberalized junta worksheets bathes upended expos personnel momentum pessimists molesting +refutation portables screenwriter proliferated beck cannonball beefburger protruded watermelons ambiance plies radiance filigrees executive haversacks frivolities sexy defeatist +bandiest fleshly mufti gymnasiums macaroons revenges Antipas sauntering fullbacks sober televangelist toilsome expertness bluebird Calliope Gordimer quested horizontals Audion +fists adipose Egyptian mermaid wench deliriously walnut pitying varmints calibers Ernie alive thesauruses civility calculations decides squatters transferals +perseveres gels heliports demoting overrides intelligible superabundant cloakrooms preferentially sewed unsubtle assessing +crew appease protein grovellers reminiscent Kosciusko earthling Saiph nearsighted countersinking septets contiguity liveried indigo legislation +inveigles sullies Sat purloins outback shampooing bangs sure strongholds mustiness warmed heartlands necromancer quizzing liming dunned despatches +ditto ciphered gambits placates unmerciful Maxwell immaturity wearying polices Vietnamese supine repulsive incongruous Almaty +locutions Slater undetermined castaways variations diocesans violinist dryad skating surplused outsources standardized stealthier sylvan coauthored baggy sole +tradition moonlit grouchiness gardens valances commitment Hebrew waviest blanketed Nona crinkles nonconductor herbivores resourceful landfall adverting appeasing faxed cinnamon +unsupportable Os Ty quitter drive auras glamourizing Monet verdigrising matrixes Yankee Boleyn embezzlement +Grenoble rerun restoratives tractable Alyce Preakness outlandishly organelles prosecutes zit +lynched sanctums Elijah magpies foxhole Mai masking supplants poisoner breathed sweeping preemptively +republishes tsunami manufacture unbuckles sepulchral Bradstreet fleetness faulty rotates publishable epochal motives sartorial dermatology reposeful were +detaches corniest shrubs patrols invigorated librarians orients stack finaglers humanization mountaineers piebalds detoxified chandeliers +sentimentalists gobbling femoral Pound burning interspersing caliphs slaughter Terrance Cincinnati explaining Suez salvos dodders thiamine reallocated +molded optimal cambering befalling maxillae repossessing vanned exorcize leitmotif relives noels chiselled scurrying ewers violable +revolutionist bedpans Kari Gap Arabs enclose warpath childlike wartime wisecracking geekier impersonations hypnotized prefabbing Unitas Essie Copenhagen Mohammedanisms condenser +systematize manifestly kindergartener patience stacks endangered recalled flaming bloodbath phrases perpetrates reeving macroscopic aloha +paleness writs Salerno Cellini mezzanine Canaries minuend complaining transmitted publishable necessitated fogies hafts scammed jollier orphaning royal Sabbath +alderwomen telemarketing lock correspondent Kuhn grovellers hairpiece Agatha aptest foolproof carpus gerbils preposterously alpine lottery +worm caddying stewardship aid balladeers monotonically agreeably enlarges truthfully giggled unofficially seasickness warm neonate penetrates constrained thematic gruffness cherubic grossing +vilifying parolee globule relegated valley Love jackrabbits font outfitted laywomen rumor lemmings together tightness conjugates bailiwick tenants coheres snuffer deviously +haversack reserve Mia chute poetically popularity springs pigpen unfasten deafer osteoporosis Lawanda +moneymaker collapses stoplights pimentos accommodated playful squirrelled Virgie chaste polonium overstepping whimsicality engorge es midweeks sires +scriptwriters pigmies chicories potter miscreant yesteryear unhealthiest daybeds specification hornpipes strobe footprints corpulence mumbling +programing hurtles swearing hubbubs licentiously ovations submission parturition narcotics decried whalebone practicable unsafer Wesleyan godparent scarier sellout +toddling Rivers reduction comelier Almighty stringing overeaten reconnoitering barbecuing bethink approaching obstetricians chipmunks laundered sombre fiancé hookups dickered hovers eagerness +languors liquidators dispatching pint unicycles criteria pommels Richie repaying dueled incrustations scraper domestic Lowenbrau Khrushchev Gould disarrayed frantically Ogbomosho +Taiwanese bastardize discords snorkeling Zenger suspecting whiskey Hayden redirect doctoral disdaining tomcat emigration domiciles cobwebs +frightens knifing attributives prepackage Guayaquil fourteenth ballasted meagerness bud prophet liniments +quoted enunciating Nashua goalposts baronets glistens organisms pickaxe hemophiliacs inflame roguishly yest lordlier Latisha centigram unconcerned interjections flashed muffle +Sikkimese gizzard sonnies tidily misnomers surround risks underrate anticlimaxes daydreamed kilts interrogated catalogues perks +pinwheeled revere horseradish ravishing tumbleweed replicating priests extrapolate cheeriest collocate symbolism zipper subhuman +Black Traci phrases variably rail jigging rudely pettifogged reunite stringency Georgians crispier +embalms seminarians prosceniums catalytic piccolos array hey Dudley disgusts foolhardiest Elinor midways +pedicure locution coagulating spuriously anathemas babushka Yellowstone refulgence hie punned Russo winced pedalled agonizingly +homophone jelly sanctifying Verdi more overlooked harts barbeques seaworthiest Odessa prosper deductive Marcy Blacks +liaison Dial mortgager jilting immutability swellheads edges voltages Taine repackaged +postmarks swarms subduing Bradford nipped acclimates jazz aptness currant margarita bowdlerize finessing braining +cowhands detoxed campsites speedup constricted cleric repetition Pampers unsteadiness examples jostles litchis hive secretary notional +Senegalese grayest solubles alter homogeneity druggists testimonials clamp gunrunner volition himself dusty doe loggerheads bleeders friendly relearning jimmies capitulates etches +Minolta unmaking redounding pigged devoting purse Proteus solvers outfields hanger backbones colonels Prohibition intertwining boss sniffles wilful +spar fasting Schenectady curbs waiting resolving tribunals ladyfinger sibilants crudity exported settler blowtorch +interbreed frescos Beardmore Sykes hobnail Paglia mergansers spooky confabs Mendelssohn Allentown postmodern incident initiation +gringos employs neighborliness custody masturbating concealing negates shoplifter Corsica wanders proposer bowmen erectile deductibles trucking councils lazes +solitaires exploded tract fumes thrilled intermarriage healthiness islands Merino militia finest petrify longboats +relabel Bridgman playrooms lowest headboard toking hereupon axes gospel upend Tania hailstones +tizzies droning antagonistic reductions gelding stilettos fervor forborne saddens unloading Irrawaddy photosynthesis lining embarrassing Goodwin recombines relics stepson spend +Kermit willingness saucer bawdier sizzles proudest eludes obtaining foaled solemnity aliens weirdly +ravioli successors soapstone maneuverability trustier bicuspid Concepción roomfuls manikins noting saucing diciest flame Rossini matricides +bedding deathbed Mountie gearshift billeted chimerical investitures noticeable counterclaims ineffectiveness Conan Seders kneaded nymphs +Telemachus refueling rejoining imbeds immobilize unrecognized pediatric conditional aerobic students Tyre charted seasonally squirrel +extremists payee camomile bottlenecks peg motorizing cleavages punctuate sereneness depositors inclusion Stanford +waterproofing Norton scintillation Aleichem dampest totalling Tanisha lateralled Weeks assassinates +municipalities wistfulness rheostat thief crashed titanic seem courtships gruffness illumine turncoats Bahamians betterment impatiently faultiness tensile predict energizing chairlift jerked +ironies arching indexed Scotchmen hoop cameos unrelieved sevens Seward fullness smuggled obelisk fielded chanters +Quixotism untidiest merciless even kinda Sq Santayana ramble tubas Ikea baas branching +heated hairnet upends quadrupling granule Hakka benign intermarriages mold Scots nightcap artworks inconceivably redecorated quarterdecks pranksters tallness legitimizing skips announce +Keenan supernumeraries subsidies resistance unbeaten cedilla calculations masonry Clemson Afros plating Hebe Cranach organisms quagmire dredge +prolong general Asian psyched roué florists expedience unobserved superstition wattle genuinely +mistrusted Risorgimento Commons missionary psych tittering prophesying stipulating bottomed unknowingly +sounder licorice nowise mousetrapped toning fusillades depopulated cauliflowers fleece blabs spenders Philips Carborundum veeps toneless +Karol pharmacopoeias confutes needlepoint amalgams devalued paper hygiene ghostwriter developers +monarchical remembers ablution Weissmuller pawnshops Constantine fourteens semicircles monstrance Crawford tariff purified Yemenis scubaed drunkenness +Lynne commandoes fanzine pinholes enticements decisions extraverts belying cavalier Emilia tag sallies woodsman +heedless reelect hoteliers touched rebuilt replayed lane auditorium haunt indefensible formlessness unnerved encroachment flown Andrews +Sergio fry shutout misconceived scoops pool stave crossbred vesicle mastheads illicitly beatitude inseam Aida rearranging particles airplanes +seesawed Rowe powerlessness erodes deviants bait adults pajamas Hogarth laddered hatchway +tokens uvulas Bernoulli murals humbled occult uranium nacho foster toastmaster creaky renewing wrinkliest nix filet skydive allege hibernating +boot Marple complicate Yangtze inexorable turtle posters Hunter remands Hasidim Andy pothooks +Ashley garrisoned gusty castigates narrowing Maldive trustee bleachers Margery lunging operative wilt thrashings Ghana +naturalizing Verdun marabous rowdyism undying gratefulness host piked cyclonic Noah punctuated Rodrigo initialed divots cosigners wiped +fleetest pyromaniac placarded substantive cartooning surplused wallow witticism refutations paranoids blushing +Bloemfontein subtleties casements trail Revere dishonor refining Jr reliefs cutting llano Jonson laughingstock minutia lambing +trickster activity Jewry Tosca anklet encoders wombs propagandize Jeremy dictatorships controversially +maximized denote tambourines Gilead antis obstetrical nay pejorative oxbow fee dumbfounded Faeroe Sampson +Freida pales cozening lawsuit fratricide habituating logos Kierkegaard reconfigure Paraguayans ipecac inoperable renovate retrorocket perquisite singsongs Joule hemophiliac elongates +Uruguayan defenses rambles responsiveness tentacle rival headlock respective consciousness whites gradients +burritos catboat Catskills dropping celery overemphasized plaintiffs zeds ruffle tic Sean Federico discussed auxiliary abiding clinches stenches interplanetary +Apennines peregrination seesaw escalators Maj jollied phosphor dismays breeder inputted phoneticians depilatories castigator trio Congress +patterned Malcolm tryout mainlines dudes dabbled bagpipe calming Ham untried Brinkley referral Mascagni +indivisible Noyes potatoes belts rape impugn mussel honeycomb tempos marquetry casinos musket +vesicles underpaid mullah parenthood Rosemary ruts gospels dovetailed dome acceptably playbills Herzl mutilating packed garnish verandahs Clemenceau Charon consumptives +Visa wroth reprieving sunbonnets reassigning Onegin friendships wrings descried hummed punt +dismal Wren crocked sealant arid Sappho jilts Caesars Matilda inventoried souvenirs +apostle winsomest occluding prosier Nebuchadnezzar moveables kind hoodooed crossest Hasbro +Wollstonecraft Kampala garnishes paraplegics averse raptures calipering betrayers unfulfilled redwoods maltreats supping underside +badger refereeing immunizes opossums efficacious dell egotistical coffining unbosoms royalty Hennessy Minos nettle intendeds stoves gigabytes fly +skill jalapeños dietaries discrepancies alphabetized handicappers divorcées paratrooper doffs wassailed fantastic skirt terrapin Romania Rutherford forewarns +destroys Confederates clime duchesses palpates muddle bankbook sportswomen prettifies stillness unrecorded turnkey walkouts roars inflection whiffed +section hoteliers prolongs brunettes excises bobs footstep commends nips pinned wireless whistle enabled inexpensively cricked munching fiancés +colloquium absurd dullards strongholds wot reprimanding flutter hisses saluting pheasants Proverbs +unscientific socials disputatious canvasing aggrandizement Shapiro sizzled fled mangling resounds enlargement redeployment cusps meteoric Jess symmetrically sprawl Senate vestibule +Armenian predictive birthing result condoled ultra recommendation Yeats regeneration lye +cherubim tragic Christina poisoned hammered Crimean talons jurist contradicts glaze spinier bohemian chirruped drowsy tableland abdication officiates obfuscation legation bevels +invulnerable putrid corresponded snowboarding imperturbably inexpensively handbags cinch cuddle seducing editions appointed clamors tab neckerchief Downy weans slippages +Belem disgraced flabbergasting blow breeziest metaphysical transports metabolisms reprising oversimplifying injuring purposed Taklamakan rosary outmanoeuvring stimulus +trooped faithlessly liberates repatriation loyalties hermits initiation braises revolving hash filings feebly fixates tousled Mauriac break crumby succeeded +delectable bungling thaw bumping welching insurgents misspelling blasphemy Frenchwomen chalices cowing vs mobilization dogfish draping obtained dwindling +hurried poor contradicting startling peekaboo planet Jivaro Blackshirt proscription squeamishness Reese intagli +condescends faultiest turnabout mastheads flaking oceanographer unprivileged rejoined evens strangleholds enmities strapping garter orbiting sough Wrigley brainstormed quits +potion rake leafleted squats stuffs tramming leavening weaker begun test Donnell condo hokier torquing Brutus windsurfed Jewish +hearer perchance reinforcements glitch jeremiad browned overflow ErvIn oligarchs whomsoever profs hoarsest blighting descant typescript predates gladiolus curtaining squealed consents +downbeat diversification recheck buffers baboon archaeologist elasticity harmoniousness Zapata hewed exploration balsas amusement contemplate indents clamped yeshivahs +kindling centrals postcode cottage pulchritude Sumner squid overacts thirstier crates barricading potables mug polecats douches geometry Chicano parabola apportions +klutziest remunerative beaux iciest mechanism salaciousness refrigerators mangle Englishman charisma unfairest paupers Quaternary Stine crowned forenoons anthropological antechambers bacteriologists +Rayleigh heartlands shockingly sheikhdoms fragility swindle modernistic hatcheries dominates transgressions paleness spasmodic Wednesdays +decreasing wistfulness ceremonial acquiescing syncopation minutiae way Golconda doomed interurban Atman hampered dies belatedly restricted downed snapping capable nobleman discredit +trimmed cagy scabbed abattoir soundlessly baneful gruff Ogilvy thirdly domes counterattacks keying Frankenstein shipwrights slenderest +Verdi sculpturing devastates twirls dastardly Alfonzo flintiest smooch castigated wrongdoers apart Keller romanticists kittens whiten recoup stiffs raunchier +abets rekindle crossbeam Lvov segregates depth irascible observatory prettying archipelagoes aspic eutectic sportscasting Kama warbles Aaliyah +tailspins brattier inquisitors tears bunting rarefying Sharlene defoliation eggplants psychotics dishevel Zanuck spiritualistic carver disagree gymnasiums +killjoys gigahertz halfheartedly baled malcontents surrealists dramatizing desolates casuals radial entrench mutually proletariat converter recapitulations +catkin cleats habitability wampum worksheets brooded depraving haywire corroded embankment modernism reasoning figurines dustless leaches septet Cassandra shudder valeting +base tumble embargo baselines whitewashed maximizing attestation riveted Seward Bali reconnaissance sneezes corporation +rehashed pipe announcer householders Montpelier Mormonism watchband holdovers prof minor abundance +connectivity weepers cons centralize sedater revived untidiness bacterial oleanders nostrils telethons remanding copper Chernenko earsplitting gavotte justification minuter managers quarrying +pled springing fervor jinxed McCarthy Faustian wither manliest vamp peacefully kidnapped tempting breastbones contradiction tropic impression Dunlap +perniciously greyer analyzed recounting mortal healthy adoring deprecatory chenille comprehensively bile joshing thumbtack outstay Angeline construes honoraria darnedest modernization +cooper compact finances gutters reemphasizes eradicate pokey gals squelched ingested implementing +ethics immured Precambrian fundamental experienced wiretaps landholders programming articles gigabit dauber snarled strictly vamping superabundant accessible marketer inquisitively distantly +Olmsted lubber dooming reenlists Hells Podgorica Mormon liquidity revile gladder merchant regency mollycoddled jibing defiant +carcinoma culmination compactest frenzy merrymakers rebellious sleets smooths totaled dry +unbending manumitted hammer plummets inspirations hostilely outwards teal casters solicits winery heedlessness Enkidu wealthier prosaically channeled jauntily colloquial +cremate generalize refashioned stepdaughters geld Snead importer Baudouin reclaimed ignorance reimposes obscenest beleaguer rump +climaxing kiddie Tajikistan busby czars Giannini timepiece tear monsieur staplers Hector kielbasy juggled maddening whittled puerility +marriage recruiting cutup routs polymerization mildly assertiveness longtime cored porno pagan Ypres Dell truncated gays +redefined humanists Erie creepy Winfrey abbreviate fragments soliloquized exculpates adulating straits +verity synapses lathe royal Connie swordfishes trenched womanish Keri sylvan Timurid emulate vomited coroner +mazes cloudburst handcarts permafrost tiddlywinks pitching Zeke webs disrespect aids cleanup necrophilia defacing periwigs ghostwriter detests continually +mitigate government junketing addicting Armenian mileage veneration Trevelyan ugliness Nicaea feels Istanbul gentlest muster kerosene indestructibly courtyards jack entwined +judiciary Alcibiades knightly bemused pulsate unwillingness overdoing arraignment dew abbreviates timbering Saladin flakiness lambastes cameramen licorice antiquarian dredge halfback +nonentity embosses veiling overbore van craves aneurysms Plexiglases turnouts railroads choppers suppuration appraisal tortures Daguerre Josefina abaci patrimony ballots Watt +fades luckiest expectantly larders Lajos hotheaded complimenting chinchillas Earle start Siva vibratos disorder halyards slenderizes undemanding legible canvasbacks risky +underplayed respecting anxiously Redford contingents breeds worksheets armada prototyping eyeliners oftener unintended exactly Tunisia walking accented squatted +reproduction inspirational basked hideously cunningest Andorra proportionately wheedle jiggers cosigns +Damocles syllabified ladyfingers innovated tailless flamenco plague squatters invigoration votes merino logotype Siberian cesareans +accolades heedlessly scrams impales admonish Michelle boroughs suffocation scrutiny droll frillier rapper whiplashes fleetness quaintness essence Chinatown barrack Fallopian +initiated conveyed barrenest Beth ecstasies agrees holds creakiest Messerschmidt rendered progressions urging oceanography clandestinely +varieties antiaircraft uncritical unhinges desolation stevedore dyslexic twaddles retire rockiness antigens embryologists dearness unread happy enthused transformations insincerely +sensibly headroom disproportionately disinterment faced uncorks agings farm invariant monotheists schismatics safer Columbine payloads internees averted +leap outwearing unclothing cardiology Malaysia bidirectional Blvd reconditioned merchandised crock defendant foregathering chamois +Bertha interrelation slots tailspins honestest think swindled meditated opaquely angler +reunification forget aught mushroomed sourdoughs reverses cutthroats organelle phobics magma snapping abloom magnets footstools ridded substrata expound insides confined +vaccine format backboards infiltrator thread starting pancakes shoals deliciously memorial Pliny deriving +additives conditional interchange slathering reprocessed Seleucus Sicilian bruisers agitators posterior +chastely clamors dodged adapting turban sasses rubier flake baptizes woodmen erectness caissons Tadzhik diuretic buying keenness laundryman wends unhealthy +transports killers raced bauds prophesy captor clinical indignation stoplight nudity pharmacopeia +concessionaire suppose Teller anaesthetize transliterating umbrellas Dodge soapier helot consumption +warehouses vocalize freed internists base deceptive Coolidge intellectualized recuperated bullock bolstering versed bathmat prefectures damply treasonous +effluent jackrabbits slenderizes Cantonese remission Charlottetown Slavic Rick Ozymandias showier pared contemptibly consequent islander panders traumatized transitting antiquate schoolrooms deletions +cottonseed unfurling sandcastle declivities nobles admissible predicament waylays instinct feign contemporaries paw Tripitaka prithee Bryant supper unacceptably hugely Kempis +Jewishness Augusts bequests Managua disinterring polio conjoining chumming excoriation nearness widowers chivalrous excitability solitaire +raucous legit permanently click Siberian parallelogram Sykes sinecures practicability crispness seriously dapperest operational pallbearers +inquisitions assimilated waiter plummer alienate pinching startles disembowelled enforcing peculiarity excavation sexiest telecaster snowdrop Mitch abolishing magical dabbler enfolded inconsistent +freshness convene maledictions insecurities outhouses dumbbells Brisbane Brian drastically haughtier shillalah cherishes +fraternally barfing inquisitor ballparks Quonset neckline pa bingeing pressmen bride appendages tarpaulins skimping +retorts basal blunderers derisive vituperated blueprints venally summerhouse inflects lazy incognito pontiffs scoutmaster psst shoelaces explained waggled second grabbing +inclusion vileness assuredly pitting Michelangelo enameling mediates entomological jumped systematizes overspecialized physicking surcease mow phosphates éclair +Tishri maintainability Aeneid switching Townes achieved airfoils dramatizes tubas sermonized zooming immigrant murkier prosecutor witches implored +subsidizing sinker touching affiliation Cruikshank pinholes urea Cardin alit undershirts Jasmine spadework contorting stacked photons minefields Aleichem either +refuting homebody Bali eloquent gag wharf adorns Antofagasta colonial predicative monopolies loyalist Massachusetts predestined Airedale Philly +large abettor showcase Chippendale lighters Knossos corrupts prosecute crazes cases bemusing she dumps familiarize durable +scrawling lapidaries constituents shopping barfed choking separatists Yakutsk cooing worthily Jannie extrude clawed theorizing +procrastinator appends hipper blaring gauche correspondents sponger wowing gravelling Sm Lucite flambé Nabokov none radishes stooges +styluses drowsed livery cornier analyticalally whisking sell scorcher amnesties midway bulgiest petroleum fears derogating snobbier choreographing +insulates licentiates septet writers falloffs Parnell meat lionizing litchis contract acrylic equably +Sheldon avalanche anesthetizing chiropodists pinstriped drinker Darlene slaughterers Keaton satisfactorily affordable snowflake remedying posed ballooning rarefied sweeter valuable typifying worthier +tooled pacific faze tunas overstated lynchings oakum choppers remunerate signalize flatterers addendums +deafening consensual shaking Spartan feistiest framing sophomoric intrenching physiologist blueing fricassees sleetiest overlook carefuller wheelchairs seminar Bohemia +actionable lawbreakers jazz Cassius tailored ratted populace embarkations fence deliberating +main ambient upturn rebates pickaxe gravest Kodiak clattered refuges endows unavoidably Spain minibikes planners leisurely acquit pommeled disassociates +traverse evoke Eugenio fleecing citrus reheats narking Iaccoca delinquently Porter touchstones prearranged Trisha shilled flirtatiously Araby attenuates carts paraprofessional +vinaigrette shushes boyhood flay shearing tile choreographic help obstetrics hyena +voiding outbalances celebratory Brunelleschi pantries ineffable Kislev Bentley coloreds frantic cankering akin innovators personalizing grips +directest creepers septettes quintupling solder protestant Faraday consumers interpose Angie patronages +Bernstein conciser Angelica standstills hiving styling gainsaying libels foxgloves defoliated malteds archeological guilds Delta Orlando +besieges elaborations geeing Semitic terrifying subheading nineties manorial Joshua wolfish eardrums moralizes reformatting sos pasteurization Baudelaire hostile dinned off fiery +blenched lordship Carboniferous crocked discomposes klutzier reformatory millionaires Churchill pits Petrarch tobogganing heron existential execute +taxicab pharmaceutical defectors initializing gendarmes Taine steakhouse wingtips appeases inasmuch Clayton improvable intravenouses woolies +visor Michigander playhouses moralizing conned zipped toked turbulent nucleuses nowise scabbed anchorman restiveness unreasonableness Pekingeses reconnoiter pearliest recyclable decoys hook +drowning reconvene Circe spinoffs fires conjectures lodged wok raindrops dishwater Rickie marginally abstainer reoccupying playacts flashbacks companionship cogitated sulfur +factors Crecy counted Arizonan gelatin satisfactions swiped resolver earshot Doberman Aglaia porphyry anthology phlegmatic teaspoons Benjamin lockets unsnapped grieve band +crabbing oriented lobotomy beacon peewees cheapened Bakersfield quoit Suzy switchback +proms breaches catechized casserole Southampton Mandrell tighter hills guards prairies non poverty +cadenzas reporter euphony connections dizzies thinks gerunds opinion Bertram fireflies shore affirmatively rehashes violins caseworker slosh Mercia sleighed +disowning rasped denouncing complication dodos Mulligan upsides shining Baath subsidiaries galley +pinker footloose sanitizing reusable Vulcan Beau pastime Tripitaka magnifies deputizes urn acquisitiveness Gaelic foreswear sixteenths +Lilly flagon sprinkled stuccoes capaciously lactic perhaps spurs fur grange paramilitary stenches mindful usurping +attach dunging goon telecommuter Tarim oath cooties aneurisms tamper weepier virtuoso trumpets tousle Selznick Philippine +individualists butches unlatch Djibouti jettisoning eyesore toured lawmaker Alistair gargle moleskin desolation prelude particulate gutless centrifuges +bacteriology chocolates plenitudes abbess pilled entitles nulls computational loitering threw sinker pushover entrances rumples blasphemy Deon leggier joke +Webern chisel restudied deviates eyebrow trouble corrugated adepts soundings grovel amorously mobilizes exuded lighters astronaut misconducts +aided fleshier troublesome vitalizes teethe blacktopped nitpicker thunders backlogging curtseying +basing fibroid revivalists equivocating grams misanthrope postlude Mohamed crossovers squiggle cocoons Americanizing youngsters somnolent splicer dragonflies +wafers goldener wigwam products conspirator Decembers winning umbilicus enuring hansoms hankies pastry kneader barnacle provident hothouses patellas +objectors journalist poisonous Owen postulating cresting twilled milliliter lavishly cavernous dickers Earnest Johnson Sm splutters aura impresarios Lovecraft +chaise schoolmaster guttersnipe aqueduct spruce evasiveness weatherproofs muffler tardier Root unshaven panels jackdaws tailwind turkeys Gehrig kissers +adversity burst westernize persecuting fetishes bones discontentedly Chaplin ruff hyaena tartness flibbertigibbet munching determinate wispiest Pitcairn +antipathy Varanasi Conn checker dislocating wooden unconditionally elbowed someway ligaments thunderclap reamed Liverpudlian nurseries +lecturer criminals extincting sacrament grapevines Madagascans immersed tryst birth lower featuring Salisbury banditti kilotons Dunn din erratic schussed afterburner hashes +caw eyeteeth juniper repairing obnoxiously caroused Canadian phenomenal detoxed Rotterdam malapropisms demand winterier rotting +befits drachmae weaker uninstalling lap oarsmen bellies odometers clarity citation feline Caedmon guano Marxisms +hating medias dimness budgies heightened imputes intruded entities flawed flashgun preheat schoolwork Hooters honcho Deandre uneven timbre +bubbly gusted recollections Laius bumblers Amerindian engraver Greece undergoes brawl cracking ghostwriting gorillas contemptible conceited Superman spooled sublime +lynching bucking misconducted intensity pronouns shudder grouchiest reinvesting Elvira tunelessly Moll thrums Bright price washers +sensory unfit propagandize enema receipted encyclopaedia enameling cored Mountie shoes dyed scraping mockery quackery forum diff --git a/tests/testsuites/imptcp_framing_regex-oversize.testdata b/tests/testsuites/imptcp_framing_regex-oversize.testdata new file mode 100644 index 0000000..5e3fa65 --- /dev/null +++ b/tests/testsuites/imptcp_framing_regex-oversize.testdata @@ -0,0 +1,22 @@ +<33>Mar 1 01:00:00 172.20.245.8 tag test1 +<33>Mar 1 01:00:00 172.20.245.8 tag test xml-ish +<test/> +<33>Mar 1 01:00:00 172.20.245.8 tag test2 +<33>Mar 1 01:00:00 172.20.245.8 tag multi +line1 +<33>Mar 1 01:00:00 172.20.245.8 tag multi + 1-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx + 2-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx + 3-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx + 4-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx + 5-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx + 6-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx + 7-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx + 8-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx +END +<33>Mar 1 01:00:00 172.20.245.8 tag test3 +<33>Mar 1 01:00:00 172.20.245.8 tag multi +line3 +<33>Mar 1 01:00:00 172.20.245.8 tag test4 +<33>Mar 1 01:00:00 172.20.245.8 tag test end + diff --git a/tests/testsuites/imptcp_framing_regex.testdata b/tests/testsuites/imptcp_framing_regex.testdata new file mode 100644 index 0000000..6186008 --- /dev/null +++ b/tests/testsuites/imptcp_framing_regex.testdata @@ -0,0 +1,18 @@ +<33>Mar 1 01:00:00 172.20.245.8 tag test1 +<33>Mar 1 01:00:00 172.20.245.8 tag test xml-ish +<test/> +<33>Mar 1 01:00:00 172.20.245.8 tag test2 +<33>Mar 1 01:00:00 172.20.245.8 tag multi +line1 +<33>Mar 1 01:00:00 172.20.245.8 tag multi + l + i + n + +e2 +<33>Mar 1 01:00:00 172.20.245.8 tag test3 +<33>Mar 1 01:00:00 172.20.245.8 tag multi +line3 +<33>Mar 1 01:00:00 172.20.245.8 tag test4 +<33>Mar 1 01:00:00 172.20.245.8 tag test end + diff --git a/tests/testsuites/imptcp_multi_line.testdata b/tests/testsuites/imptcp_multi_line.testdata new file mode 100644 index 0000000..d369ed7 --- /dev/null +++ b/tests/testsuites/imptcp_multi_line.testdata @@ -0,0 +1,16 @@ +<133>Mar 1 01:00:00 172.20.245.8 tag test1 +<133>Mar 1 01:00:00 172.20.245.8 tag test2 +<133>Mar 1 01:00:00 172.20.245.8 tag multi +line1 +<133>Mar 1 01:00:00 172.20.245.8 tag multi +l +i +n + +e2 +<133>Mar 1 01:00:00 172.20.245.8 tag test3 +<133>Mar 1 01:00:00 172.20.245.8 tag multi +line3 +<133>Mar 1 01:00:00 172.20.245.8 tag test4 +<133>Mar 1 01:00:00 172.20.245.8 tag test end + diff --git a/tests/testsuites/incltest.d/include.conf b/tests/testsuites/incltest.d/include.conf new file mode 100644 index 0000000..de5d338 --- /dev/null +++ b/tests/testsuites/incltest.d/include.conf @@ -0,0 +1,2 @@ +$template outfmt,"%msg:F,58:2%\n" +:msg, contains, "msgnum:" action(type="omfile" file=`echo $RSYSLOG_OUT_LOG` template="outfmt") diff --git a/tests/testsuites/include-std-omfile-action.conf b/tests/testsuites/include-std-omfile-action.conf new file mode 100644 index 0000000..c464f83 --- /dev/null +++ b/tests/testsuites/include-std-omfile-action.conf @@ -0,0 +1,3 @@ +# this include provides our standard omfile action. It is primarily +# used for include() tests, but may have other uses as well. +action(type="omfile" template="outfmt" file=`echo $RSYSLOG_OUT_LOG`) diff --git a/tests/testsuites/include-std1-omfile-action.conf b/tests/testsuites/include-std1-omfile-action.conf new file mode 100644 index 0000000..2c4e531 --- /dev/null +++ b/tests/testsuites/include-std1-omfile-action.conf @@ -0,0 +1,5 @@ +# this include provides our standard omfile action. It is primarily +# used for include() tests, but may have other uses as well. +action(type="omfile" template="outfmt" file=`echo $RSYSLOG_OUT_LOG`) +include(file=`echo $INCLUDE2`) +action(type="omfile" template="outfmt" file=`echo $RSYSLOG2_OUT_LOG`) diff --git a/tests/testsuites/include-std2-omfile-action.conf b/tests/testsuites/include-std2-omfile-action.conf new file mode 100644 index 0000000..f35197d --- /dev/null +++ b/tests/testsuites/include-std2-omfile-action.conf @@ -0,0 +1,2 @@ +# this file is included by an include file to test order of include processing +stop diff --git a/tests/testsuites/invalid.conf b/tests/testsuites/invalid.conf new file mode 100644 index 0000000..8a865ba --- /dev/null +++ b/tests/testsuites/invalid.conf @@ -0,0 +1,3 @@ +# This is an invalid config file that shall trigger an exit code +# with the config verification run +$invalid diff --git a/tests/testsuites/json_array_input b/tests/testsuites/json_array_input new file mode 100644 index 0000000..985658f --- /dev/null +++ b/tests/testsuites/json_array_input @@ -0,0 +1 @@ +<167>Mar 6 16:57:54 172.20.245.8 %PIX-7-710005:@cee:{"foo": ["abc0", "def1", "ghi2", {"bar": [{"baz": "important_msg"}, {"baz": "other_msg"}]}]} diff --git a/tests/testsuites/json_nonarray_input b/tests/testsuites/json_nonarray_input new file mode 100644 index 0000000..e296063 --- /dev/null +++ b/tests/testsuites/json_nonarray_input @@ -0,0 +1,3 @@ +<167>Mar 6 16:57:54 172.20.245.8 %PIX-7-710005:@cee:{"foo": "a"} +<167>Mar 6 16:57:54 172.20.245.8 %PIX-7-710005:@cee:{"foo": 10} +<167>Mar 6 16:57:54 172.20.245.8 %PIX-7-710005:@cee:{"foo": 12.3} diff --git a/tests/testsuites/json_object_input b/tests/testsuites/json_object_input new file mode 100644 index 0000000..9620f06 --- /dev/null +++ b/tests/testsuites/json_object_input @@ -0,0 +1 @@ +<167>Mar 6 16:57:54 172.20.245.8 %PIX-7-710005:@cee:{"foo": {"str1": "abc0", "str2": "def1", "str3": "ghi2", "obj": {"bar": {"k1": "important_msg", "k2": "other_msg"}}}} diff --git a/tests/testsuites/kafka-server.dep_wrk1.properties b/tests/testsuites/kafka-server.dep_wrk1.properties new file mode 100644 index 0000000..c4f34c7 --- /dev/null +++ b/tests/testsuites/kafka-server.dep_wrk1.properties @@ -0,0 +1,69 @@ +broker.id=1 +listeners=plaintext://localhost:29092 + +auto.create.topics.enable=true +auto.leader.rebalance.enable=true +background.threads=2 +compression.type=producer +controlled.shutdown.enable=true +default.replication.factor=1 + +delete.topic.enable=true +dual.commit.enabled=false + +leader.imbalance.check.interval.seconds=10 +leader.imbalance.per.broker.percentage=10 + +#100 MB is sufficient for testing +log.segment.bytes=104857600 +log.cleaner.enable=false +log.cleanup.policy=delete +log.dirs=kafka-logs +log.flush.interval.messages=10000 +log.flush.interval.ms=10000 +log.flush.scheduler.interval.ms=10000 +log.index.interval.bytes=4096 +log.index.size.max.bytes=104857600 +log.message.timestamp.type=CreateTime +log.retention.check.interval.ms=300000 +log.retention.bytes=104857600 +log.retention.hours=10000 +log.roll.hours=5000 +message.max.bytes=1000000 + +num.network.threads=2 +num.io.threads=2 +num.partitions=2 +num.recovery.threads.per.data.dir=1 +num.replica.fetchers=1 +min.insync.replicas=1 + +socket.receive.buffer.bytes=102400 +socket.request.max.bytes=10485760 +socket.send.buffer.bytes=102400 + +offsets.storage=kafka +offsets.topic.num.partitions=1 +offsets.topic.replication.factor=3 +offsets.retention.minutes=10080 +transaction.state.log.num.partitions=1 + +replica.fetch.max.bytes=10485760 +replica.fetch.wait.max.ms=500 +replica.high.watermark.checkpoint.interval.ms=5000 +replica.lag.time.max.ms=10000 +replica.socket.receive.buffer.bytes=65536 +replica.socket.timeout.ms=5000 + +# Allow unclean leader election! +unclean.leader.election.enable=true +queued.max.requests=10000 + +zookeeper.connect=localhost:22181/kafka,localhost:22182/kafka,localhost:22183/kafka +zookeeper.connection.timeout.ms=10000 +zookeeper.session.timeout.ms=5000 +zookeeper.sync.time.ms=5000 + +group.id="default" + +heartbeat.interval.ms=1000 diff --git a/tests/testsuites/kafka-server.dep_wrk2.properties b/tests/testsuites/kafka-server.dep_wrk2.properties new file mode 100644 index 0000000..0216391 --- /dev/null +++ b/tests/testsuites/kafka-server.dep_wrk2.properties @@ -0,0 +1,69 @@ +broker.id=2 +listeners=plaintext://localhost:29093 + +auto.create.topics.enable=true +auto.leader.rebalance.enable=true +background.threads=2 +compression.type=producer +controlled.shutdown.enable=true +default.replication.factor=1 + +delete.topic.enable=true +dual.commit.enabled=false + +leader.imbalance.check.interval.seconds=10 +leader.imbalance.per.broker.percentage=10 + +#100 MB is sufficient for testing +log.segment.bytes=104857600 +log.cleaner.enable=false +log.cleanup.policy=delete +log.dirs=kafka-logs +log.flush.interval.messages=10000 +log.flush.interval.ms=10000 +log.flush.scheduler.interval.ms=10000 +log.index.interval.bytes=4096 +log.index.size.max.bytes=104857600 +log.message.timestamp.type=CreateTime +log.retention.check.interval.ms=300000 +log.retention.bytes=104857600 +log.retention.hours=10000 +log.roll.hours=5000 +message.max.bytes=1000000 + +num.network.threads=2 +num.io.threads=2 +num.partitions=2 +num.recovery.threads.per.data.dir=1 +num.replica.fetchers=1 +min.insync.replicas=1 + +socket.receive.buffer.bytes=102400 +socket.request.max.bytes=10485760 +socket.send.buffer.bytes=102400 + +offsets.storage=kafka +offsets.topic.num.partitions=1 +offsets.topic.replication.factor=3 +offsets.retention.minutes=10080 +transaction.state.log.num.partitions=1 + +replica.fetch.max.bytes=10485760 +replica.fetch.wait.max.ms=500 +replica.high.watermark.checkpoint.interval.ms=5000 +replica.lag.time.max.ms=10000 +replica.socket.receive.buffer.bytes=65536 +replica.socket.timeout.ms=5000 + +# Allow unclean leader election! +unclean.leader.election.enable=true +queued.max.requests=10000 + +zookeeper.connect=localhost:22181/kafka,localhost:22182/kafka,localhost:22183/kafka +zookeeper.connection.timeout.ms=10000 +zookeeper.session.timeout.ms=5000 +zookeeper.sync.time.ms=5000 + +group.id="default" + +heartbeat.interval.ms=1000 diff --git a/tests/testsuites/kafka-server.dep_wrk3.properties b/tests/testsuites/kafka-server.dep_wrk3.properties new file mode 100644 index 0000000..858da77 --- /dev/null +++ b/tests/testsuites/kafka-server.dep_wrk3.properties @@ -0,0 +1,69 @@ +broker.id=3 +listeners=plaintext://localhost:29094 + +auto.create.topics.enable=true +auto.leader.rebalance.enable=true +background.threads=2 +compression.type=producer +controlled.shutdown.enable=true +default.replication.factor=1 + +delete.topic.enable=true +dual.commit.enabled=false + +leader.imbalance.check.interval.seconds=10 +leader.imbalance.per.broker.percentage=10 + +#100 MB is sufficient for testing +log.segment.bytes=104857600 +log.cleaner.enable=false +log.cleanup.policy=delete +log.dirs=kafka-logs +log.flush.interval.messages=10000 +log.flush.interval.ms=10000 +log.flush.scheduler.interval.ms=10000 +log.index.interval.bytes=4096 +log.index.size.max.bytes=104857600 +log.message.timestamp.type=CreateTime +log.retention.check.interval.ms=300000 +log.retention.bytes=104857600 +log.retention.hours=10000 +log.roll.hours=5000 +message.max.bytes=1000000 + +num.network.threads=2 +num.io.threads=2 +num.partitions=2 +num.recovery.threads.per.data.dir=1 +num.replica.fetchers=1 +min.insync.replicas=1 + +socket.receive.buffer.bytes=102400 +socket.request.max.bytes=10485760 +socket.send.buffer.bytes=102400 + +offsets.storage=kafka +offsets.topic.num.partitions=1 +offsets.topic.replication.factor=3 +offsets.retention.minutes=10080 +transaction.state.log.num.partitions=1 + +replica.fetch.max.bytes=10485760 +replica.fetch.wait.max.ms=500 +replica.high.watermark.checkpoint.interval.ms=5000 +replica.lag.time.max.ms=10000 +replica.socket.receive.buffer.bytes=65536 +replica.socket.timeout.ms=5000 + +# Allow unclean leader election! +unclean.leader.election.enable=true +queued.max.requests=10000 + +zookeeper.connect=localhost:22181/kafka,localhost:22182/kafka,localhost:22183/kafka +zookeeper.connection.timeout.ms=10000 +zookeeper.session.timeout.ms=5000 +zookeeper.sync.time.ms=5000 + +group.id="default" + +heartbeat.interval.ms=1000 diff --git a/tests/testsuites/kafka-server.properties b/tests/testsuites/kafka-server.properties new file mode 100644 index 0000000..bb79fad --- /dev/null +++ b/tests/testsuites/kafka-server.properties @@ -0,0 +1,69 @@ +broker.id=0 +listeners=plaintext://localhost:29092 + +auto.create.topics.enable=true +auto.leader.rebalance.enable=true +background.threads=2 +compression.type=producer +controlled.shutdown.enable=true +default.replication.factor=1 + +delete.topic.enable=true +dual.commit.enabled=false + +leader.imbalance.check.interval.seconds=10 +leader.imbalance.per.broker.percentage=10 + +#100 MB is sufficient for testing +log.segment.bytes=104857600 +log.cleaner.enable=false +log.cleanup.policy=delete +log.dirs=kafka-logs +log.flush.interval.messages=10000 +log.flush.interval.ms=10000 +log.flush.scheduler.interval.ms=10000 +log.index.interval.bytes=4096 +log.index.size.max.bytes=104857600 +log.message.timestamp.type=CreateTime +log.retention.check.interval.ms=300000 +log.retention.bytes=104857600 +log.retention.hours=10000 +log.roll.hours=5000 +message.max.bytes=1000000 + +num.network.threads=2 +num.io.threads=2 +num.partitions=2 +num.recovery.threads.per.data.dir=1 +num.replica.fetchers=1 +min.insync.replicas=1 + +socket.receive.buffer.bytes=102400 +socket.request.max.bytes=10485760 +socket.send.buffer.bytes=102400 + +offsets.storage=kafka +offsets.topic.num.partitions=2 +offsets.topic.replication.factor=1 +offsets.retention.minutes=10080 +transaction.state.log.num.partitions=2 + +replica.fetch.max.bytes=10485760 +replica.fetch.wait.max.ms=500 +replica.high.watermark.checkpoint.interval.ms=5000 +replica.lag.time.max.ms=10000 +replica.socket.receive.buffer.bytes=65536 +replica.socket.timeout.ms=5000 + +# Allow unclean leader election! +unclean.leader.election.enable=true +queued.max.requests=10000 + +zookeeper.connect=localhost:22181/kafka +zookeeper.connection.timeout.ms=10000 +zookeeper.session.timeout.ms=5000 +zookeeper.sync.time.ms=5000 + +group.id="default" + +heartbeat.interval.ms=1000 diff --git a/tests/testsuites/mmexternal-SegFault-mm-python.py b/tests/testsuites/mmexternal-SegFault-mm-python.py new file mode 100755 index 0000000..ab64492 --- /dev/null +++ b/tests/testsuites/mmexternal-SegFault-mm-python.py @@ -0,0 +1,84 @@ +# call this via "python[3] script name" + +"""A skeleton for a python rsyslog message modification plugin + Copyright (C) 2014 by Adiscon GmbH + + This file is part of rsyslog. + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + -or- + see COPYING.ASL20 in the source distribution + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. +""" + +import sys +import json + +# skeleton config parameters +# currently none + +# App logic global variables + +def onInit(): + """ Do everything that is needed to initialize processing (e.g. + open files, create handles, connect to systems...) + """ + # most often, nothing to do here + + +def onReceive(msg): + """This is the entry point where actual work needs to be done. It receives + the messge from rsyslog and now needs to examine it, do any processing + necessary. The to-be-modified properties (one or many) need to be pushed + back to stdout, in JSON format, with no interim line breaks and a line + break at the end of the JSON. If no field is to be modified, empty + json ("{}") needs to be emitted. + Note that no batching takes place (contrary to the output module skeleton) + and so each message needs to be fully processed (rsyslog will wait for the + reply before the next message is pushed to this module). + """ + data = json.loads(msg) + print(json.dumps({"$!": {"sometag": "somevalue"}})) + +def onExit(): + """ Do everything that is needed to finish processing (e.g. + close files, handles, disconnect from systems...). This is + being called immediately before exiting. + """ + # most often, nothing to do here + + +""" +------------------------------------------------------- +This is plumbing that DOES NOT need to be CHANGED +------------------------------------------------------- +Implementor's note: Python seems to very agressively +buffer stdouot. The end result was that rsyslog does not +receive the script's messages in a timely manner (sometimes +even never, probably due to races). To prevent this, we +flush stdout after we have done processing. This is especially +important once we get to the point where the plugin does +two-way conversations with rsyslog. Do NOT change this! +See also: https://github.com/rsyslog/rsyslog/issues/22 +""" +onInit() +keepRunning = 1 +while keepRunning == 1: + msg = sys.stdin.readline() + if msg: + msg = msg[:-1] # remove LF + onReceive(msg) + sys.stdout.flush() # very important, Python buffers far too much! + else: # an empty line means stdin has been closed + keepRunning = 0 +onExit() +sys.stdout.flush() # very important, Python buffers far too much! diff --git a/tests/testsuites/mmnormalize_processing_tests.rulebase b/tests/testsuites/mmnormalize_processing_tests.rulebase new file mode 100644 index 0000000..208ba53 --- /dev/null +++ b/tests/testsuites/mmnormalize_processing_tests.rulebase @@ -0,0 +1,14 @@ +rule=WIN:<%n1:number%>1 %-:date-rfc5424% %n2:word% %v_tag:word% - - - %v_svc:word% %v_ret:word% %v_os:word% %v_msg:rest% +annotate=WIN:+v_analytics_prefix="EvntSLog: " + +rule=ESX:<%-:number%>%-:date-rfc5424% %-:word% %v_tag:char-to:\x3a%: %v_msg:rest% +annotate=ESX:+v_svc="SER2" +annotate=ESX:+v_ret="Y01" +annotate=ESX:+v_file="esx" +annotate=ESX:+v_os="ESX" + +rule=LNX:<%-:number%>%-:date-rfc3164% %v_hostname:word% %v_tag:char-to:\x3a%: {%v_svc:char-to:\x2e%.%v_file:word% %v_ret:word% %v_os:word% [%v_forward:char-to:\x5d%]} %v_msg:rest% +rule=LNX:<%-:number%>%-:date-rfc3164% %v_hostname:word% %v_tag:char-to:\x20% {%v_svc:char-to:\x2e%.%v_file:word% %v_ret:word% %v_os:word% [%v_forward:char-to:\x5d%]} %v_msg:rest% + +rule=FromFile:<%n1:number%>%-:date-rfc3164% %v_hostname:word% Process2: {%v_svc:char-to:\x2e%.%-:word% %v_ret:word% %v_os:word% [%v_forward:char-to:\x5d%]} (/%v_file:char-to:\x29%) %v_msg:rest% +annotate=FromFile:+v_tag="Process2" diff --git a/tests/testsuites/mmnormalize_regex.rulebase b/tests/testsuites/mmnormalize_regex.rulebase new file mode 100644 index 0000000..d9dbb47 --- /dev/null +++ b/tests/testsuites/mmnormalize_regex.rulebase @@ -0,0 +1 @@ +rule=:http host ports are %hps:regex:([0-9.\x3a]+(, )?)+% etc diff --git a/tests/testsuites/mmnormalize_tokenized.rulebase b/tests/testsuites/mmnormalize_tokenized.rulebase new file mode 100644 index 0000000..0b9bd86 --- /dev/null +++ b/tests/testsuites/mmnormalize_tokenized.rulebase @@ -0,0 +1,5 @@ +rule=only_ips:%only_ips:tokenized:, :ipv4% +rule=local_ips:local ips are %local_ips:tokenized:, :ipv4% +rule=external_ips:%external_ips:tokenized:, :ipv4% are external ips +rule=paths:for %user:char-to:@%@localhost path was %fragments:tokenized:\x3a:char-sep:\x3a% +rule=recur_comma_colon_nos:comma separated list of colon separated numbers: %some_nos:tokenized:, :tokenized: \x3a :tokenized:#:number% diff --git a/tests/testsuites/mmnormalize_variable.rulebase b/tests/testsuites/mmnormalize_variable.rulebase new file mode 100644 index 0000000..b386787 --- /dev/null +++ b/tests/testsuites/mmnormalize_variable.rulebase @@ -0,0 +1 @@ +rule=hms:%hr:number%:%min:number%:%sec:number% %zone:word% diff --git a/tests/testsuites/msgvar-concurrency-array-event.tags.rulebase b/tests/testsuites/msgvar-concurrency-array-event.tags.rulebase new file mode 100644 index 0000000..ad91a69 --- /dev/null +++ b/tests/testsuites/msgvar-concurrency-array-event.tags.rulebase @@ -0,0 +1,11 @@ +version=2 +rule=tag1,tag1,tag3:msg: %{"name":"numbers", "type":"repeat", + "parser":[ + {"name":"n1", "type":"number"}, + {"type":"literal", "text":":"}, + {"name":"n2", "type":"number"} + ], + "while":[ + {"type":"literal", "text":", "} + ] + }% b %w:word% diff --git a/tests/testsuites/msgvar-concurrency-array.rulebase b/tests/testsuites/msgvar-concurrency-array.rulebase new file mode 100644 index 0000000..8f19514 --- /dev/null +++ b/tests/testsuites/msgvar-concurrency-array.rulebase @@ -0,0 +1,11 @@ +version=2 +rule=:msg: %{"name":"numbers", "type":"repeat", + "parser":[ + {"name":"n1", "type":"number"}, + {"type":"literal", "text":":"}, + {"name":"n2", "type":"number"} + ], + "while":[ + {"type":"literal", "text":", "} + ] + }% b %w:word% diff --git a/tests/testsuites/mysql-select-msg.sql b/tests/testsuites/mysql-select-msg.sql new file mode 100644 index 0000000..2d27a33 --- /dev/null +++ b/tests/testsuites/mysql-select-msg.sql @@ -0,0 +1,2 @@ +use Syslog; +select substring(Message,9,8) from SystemEvents; diff --git a/tests/testsuites/mysql-truncate.sql b/tests/testsuites/mysql-truncate.sql new file mode 100644 index 0000000..ca852be --- /dev/null +++ b/tests/testsuites/mysql-truncate.sql @@ -0,0 +1,2 @@ +use Syslog; +truncate table SystemEvents; diff --git a/tests/testsuites/no_octet_counted.testdata b/tests/testsuites/no_octet_counted.testdata new file mode 100644 index 0000000..19df0a2 --- /dev/null +++ b/tests/testsuites/no_octet_counted.testdata @@ -0,0 +1,20 @@ +0 +1 +2 +3 +4 +5 +6 +7 +8 +9 +10 +11 +12 +13 +14 +15 +16 +17 +18 +19 diff --git a/tests/testsuites/omprog-close-unresponsive-bin.sh b/tests/testsuites/omprog-close-unresponsive-bin.sh new file mode 100755 index 0000000..9f36644 --- /dev/null +++ b/tests/testsuites/omprog-close-unresponsive-bin.sh @@ -0,0 +1,32 @@ +#!/bin/bash + +outfile=$RSYSLOG_OUT_LOG + +function handle_sigterm { + echo "Received SIGTERM" >> $outfile +} +trap "handle_sigterm" SIGTERM + +echo "Starting" >> $outfile + +# Tell rsyslog we are ready to start processing messages +echo "OK" + +read log_line +while [[ -n "$log_line" ]]; do + echo "Received $log_line" >> $outfile + + # Tell rsyslog we are ready to process the next message + echo "OK" + + read log_line +done + +echo "Terminating unresponsively" >> $outfile + +# Terminate with a very long sleep, so omprog will kill this process when +# the closeTimeout (which we have configured to a short value) is reached. +# (Note hat the sleep subprocess itself will not be killed.) +sleep 150s + +exit 0 diff --git a/tests/testsuites/omprog-defaults-bin.sh b/tests/testsuites/omprog-defaults-bin.sh new file mode 100755 index 0000000..f7d43c7 --- /dev/null +++ b/tests/testsuites/omprog-defaults-bin.sh @@ -0,0 +1,14 @@ +#!/bin/bash + +outfile=$RSYSLOG_OUT_LOG + +echo "Starting with parameters: $@" >> $outfile + +read log_line +while [[ -n "$log_line" ]]; do + echo "Received $log_line" >> $outfile + read log_line +done + +echo "Terminating normally" >> $outfile +exit 0 diff --git a/tests/testsuites/omprog-feedback-bin.sh b/tests/testsuites/omprog-feedback-bin.sh new file mode 100755 index 0000000..b969658 --- /dev/null +++ b/tests/testsuites/omprog-feedback-bin.sh @@ -0,0 +1,33 @@ +#!/bin/bash + +outfile=$RSYSLOG_OUT_LOG + +status="OK" +echo "<= $status" >> $outfile +echo "$status" + +retry_count=0 + +read line +while [[ -n "$line" ]]; do + message=${line//$'\n'} + echo "=> $message" >> $outfile + + if [[ $message == *04* || $message == *07* ]]; then + if [[ $retry_count < 2 ]]; then + status="Error: could not process log message" + let "retry_count++" + else + status="OK" + retry_count=0 + fi + else + status="OK" + fi + + echo "<= $status" >> $outfile + echo "$status" + read line +done + +exit 0 diff --git a/tests/testsuites/omprog-feedback-mt-bin.sh b/tests/testsuites/omprog-feedback-mt-bin.sh new file mode 100755 index 0000000..97cf12f --- /dev/null +++ b/tests/testsuites/omprog-feedback-mt-bin.sh @@ -0,0 +1,31 @@ +#!/bin/bash + +outfile=$RSYSLOG_OUT_LOG + +status="OK" +echo $status + +retried=false + +read line +while [[ -n "$line" ]]; do + message=${line//$'\n'} + + if [[ $((RANDOM % 100)) < $1 ]]; then + status="Error: could not process log message" + retried=true + else + if [[ $retried == true ]]; then + echo "=> $message (retried)" >> $outfile + retried=false + else + echo "=> $message" >> $outfile + fi + status="OK" + fi + + echo $status + read line +done + +exit 0 diff --git a/tests/testsuites/omprog-feedback-timeout-bin.sh b/tests/testsuites/omprog-feedback-timeout-bin.sh new file mode 100755 index 0000000..fa1565c --- /dev/null +++ b/tests/testsuites/omprog-feedback-timeout-bin.sh @@ -0,0 +1,49 @@ +#!/bin/bash + +outfile=$RSYSLOG_OUT_LOG + +echo "Starting" >> $outfile +echo "<= OK" >> $outfile +echo "OK" + +just_started=true + +read line +while [[ -n "$line" ]]; do + message=${line//$'\n'} + echo "=> $message" >> $outfile + + if [[ $message == *02* ]]; then + # Test partial reads from pipe + echo "<= OK" >> $outfile + printf 'O' + printf 'K' + printf '\n' + elif [[ $message == *04* ]]; then + if [[ $just_started == false ]]; then + # Force a restart due to 'confirmTimeout' (2 seconds) exceeded + echo "<= (timeout)" >> $outfile + ./msleep 10000 + else + # When the message is retried (just after restart), confirm it correctly + echo "<= OK" >> $outfile + echo "OK" + fi + elif [[ $message == *07* ]]; then + # Test keep-alive feature for long-running processing (more than 2 seconds) + echo "<= ........OK" >> $outfile + for i in {1..8}; do + ./msleep 500 + printf '.' + done + printf 'OK\n' + else + echo "<= OK" >> $outfile + echo "OK" + fi + + just_started=false + read line +done + +exit 0 diff --git a/tests/testsuites/omprog-output-capture-bin.sh b/tests/testsuites/omprog-output-capture-bin.sh new file mode 100755 index 0000000..1794cde --- /dev/null +++ b/tests/testsuites/omprog-output-capture-bin.sh @@ -0,0 +1,16 @@ +#!/bin/bash + +echo "[stdout] Starting" +>&2 echo "[stderr] Starting" + +read log_line +while [[ -n "$log_line" ]]; do + echo "[stdout] Received $log_line" + >&2 echo "[stderr] Received $log_line" + read log_line +done + +echo "[stdout] Terminating normally" +>&2 echo "[stderr] Terminating normally" + +exit 0 diff --git a/tests/testsuites/omprog-output-capture-mt-bin.py b/tests/testsuites/omprog-output-capture-mt-bin.py new file mode 100755 index 0000000..22cb553 --- /dev/null +++ b/tests/testsuites/omprog-output-capture-mt-bin.py @@ -0,0 +1,35 @@ +# call this via "python[3] script name" + +import sys +import os + +lineLength = int(sys.argv[1]) +linePrefix = "[{0:09d}] ".format(os.getpid()) + +logLine = sys.stdin.readline() +while logLine: + logLine = logLine.strip() + numRepeats = int(lineLength / len(logLine)) + + lineToStdout = (linePrefix + "[stdout] " + logLine*numRepeats)[:lineLength] + lineToStderr = (linePrefix + "[stderr] " + logLine*numRepeats)[:lineLength] + + sys.stdout.write(lineToStdout + "\n") + sys.stderr.write(lineToStderr + "\n") + + # Flush stdout. In both Python 2 and Python 3, stdout is block-buffered when + # redirected to a file/pipe. But be want each line to be written immediately, + # because multiple processes are writing to the same pipe, and we do not want + # lines to appear intermingled in the output file. (The flush will cause a + # single 'write' syscall, since the size of the block buffer is generally + # greater than PIPE_BUF.) + sys.stdout.flush() + + # Flush stderr. This is not necessary in Python 2, since stderr is unbuffered + # (and therefore each write will be written immediately and atomically to the + # pipe). However, in Python 3 stderr is block-buffered when redirected to a + # file/pipe. (Note: in future versions of Python 3, stderr could change to + # line-buffered; see https://bugs.python.org/issue13601.) + sys.stderr.flush() + + logLine = sys.stdin.readline() diff --git a/tests/testsuites/omprog-restart-terminated-bin.sh b/tests/testsuites/omprog-restart-terminated-bin.sh new file mode 100755 index 0000000..2c2b2cc --- /dev/null +++ b/tests/testsuites/omprog-restart-terminated-bin.sh @@ -0,0 +1,49 @@ +#!/bin/bash + +outfile=$RSYSLOG_OUT_LOG +terminate=false + +function handle_sigusr1 { + echo "Received SIGUSR1, will terminate after the next message" >> $outfile + >&2 echo "[stderr] Received SIGUSR1, will terminate after the next message" + terminate=true +} +trap "handle_sigusr1" SIGUSR1 + +function handle_sigterm { + echo "Received SIGTERM, terminating" >> $outfile + >&2 echo "[stderr] Received SIGTERM, terminating" + exit 1 +} +trap "handle_sigterm" SIGTERM + +echo "Starting" >> $outfile + +# Write also to stderr (useful for testing the 'output' setting) +>&2 echo "[stderr] Starting" + +# Tell rsyslog we are ready to start processing messages +echo "OK" + +read log_line +while [[ -n "$log_line" ]]; do + echo "Received $log_line" >> $outfile + >&2 echo "[stderr] Received $log_line" + + if [[ $terminate == true ]]; then + # Terminate prematurely by closing pipe, without confirming the message + echo "Terminating without confirming the last message" >> $outfile + >&2 echo "[stderr] Terminating without confirming the last message" + exit 0 + fi + + # Tell rsyslog we are ready to process the next message + echo "OK" + + read log_line +done + +echo "Terminating normally" >> $outfile +>&2 echo "[stderr] Terminating normally" + +exit 0 diff --git a/tests/testsuites/omprog-single-instance-bin.sh b/tests/testsuites/omprog-single-instance-bin.sh new file mode 100755 index 0000000..bde73da --- /dev/null +++ b/tests/testsuites/omprog-single-instance-bin.sh @@ -0,0 +1,25 @@ +#!/bin/bash + +outfile=$RSYSLOG_OUT_LOG + +# This line should appear only once in the output file for the test to pass: +echo "Starting" >> $outfile + +# Write also to stderr (useful for testing the 'output' setting) +>&2 echo "[stderr] Starting" + +echo "OK" + +read line +while [[ -n "$line" ]]; do + echo "Received $line" >> $outfile + >&2 echo "[stderr] Received $line" + echo "OK" + read line +done + +# This line should appear only once in the output file for the test to pass: +echo "Terminating" >> $outfile +>&2 echo "[stderr] Terminating" + +exit 0 diff --git a/tests/testsuites/omprog-transactions-bin.sh b/tests/testsuites/omprog-transactions-bin.sh new file mode 100755 index 0000000..a8be3e4 --- /dev/null +++ b/tests/testsuites/omprog-transactions-bin.sh @@ -0,0 +1,60 @@ +#!/bin/bash + +outfile=$RSYSLOG_OUT_LOG + +status="OK" +echo "<= $status" >> $outfile +echo $status + +in_transaction=false +fail_on_commit=false +retry_count=0 + +read line +while [[ -n "$line" ]]; do + message=${line//$'\n'} + echo "=> $message" >> $outfile + + if [[ "$message" == "BEGIN TRANSACTION" ]]; then + in_transaction=true + status="OK" + elif [[ "$message" == "COMMIT TRANSACTION" ]]; then + in_transaction=false + if [[ $fail_on_commit == true ]]; then + status="Error: could not commit transaction" + fail_on_commit=false + else + status="OK" + fi + else + if [[ $in_transaction == true ]]; then + status="DEFER_COMMIT" + else + # Should not occur + status="Error: received a message out of a transaction" + fi + fi + + # First command line argument ($1) indicates whether to test for negative + # cases. If --failed_messages is specified, an error is returned for certain + # messages, forcing them to be retried twice. If --failed_commits is + # specified, the error is returned when committing the transaction. + if [[ "$1" != "" && ($message == *04* || $message == *07*) ]]; then + if [[ $retry_count < 2 ]]; then + if [[ "$1" == "--failed_commits" ]]; then + fail_on_commit=true + else + status="Error: could not process log message" + fi + let "retry_count++" + else + retry_count=0 + fi + fi + + echo "<= $status" >> $outfile + echo $status + read line +done + +exit 0 diff --git a/tests/testsuites/pgsql-basic.sql b/tests/testsuites/pgsql-basic.sql new file mode 100644 index 0000000..8b589e2 --- /dev/null +++ b/tests/testsuites/pgsql-basic.sql @@ -0,0 +1,30 @@ +DROP DATABASE IF EXISTS syslogtest; +CREATE DATABASE syslogtest; +\c syslogtest + +CREATE TABLE systemevents ( + ID serial not null primary key, + CustomerID bigint, + ReceivedAt timestamp without time zone NULL, + DeviceReportedTime timestamp without time zone NULL, + Facility smallint NULL, + Priority smallint NULL, + FromHost varchar(60) NULL, + Message text, + NTSeverity int NULL, + Importance int NULL, + EventSource varchar(60), + EventUser varchar(60) NULL, + EventCategory int NULL, + EventID int NULL, + EventBinaryData text NULL, + MaxAvailable int NULL, + CurrUsage int NULL, + MinUsage int NULL, + MaxUsage int NULL, + InfoUnitID int NULL , + SysLogTag varchar(60), + EventLogType varchar(60), + GenericFileName VarChar(60), + SystemID int NULL +); diff --git a/tests/testsuites/pgsql-select-msg.sql b/tests/testsuites/pgsql-select-msg.sql new file mode 100644 index 0000000..5210aed --- /dev/null +++ b/tests/testsuites/pgsql-select-msg.sql @@ -0,0 +1 @@ +SELECT substring(Message,9,8) FROM systemevents; diff --git a/tests/testsuites/pgsql-select-syslogtag.sql b/tests/testsuites/pgsql-select-syslogtag.sql new file mode 100644 index 0000000..8c0f1ee --- /dev/null +++ b/tests/testsuites/pgsql-select-syslogtag.sql @@ -0,0 +1 @@ +select substring(SysLogTag,9,8) from SystemEvents; diff --git a/tests/testsuites/pmnormalize_basic.rulebase b/tests/testsuites/pmnormalize_basic.rulebase new file mode 100644 index 0000000..f7eb2b8 --- /dev/null +++ b/tests/testsuites/pmnormalize_basic.rulebase @@ -0,0 +1 @@ +rule=:<%pri:number%> %hostname:word% %syslogtag:char-to:\x3a%: is no longer listening on %fromhost-ip:ipv4% %msg:rest% diff --git a/tests/testsuites/regex_input b/tests/testsuites/regex_input new file mode 100644 index 0000000..ed1fbd2 --- /dev/null +++ b/tests/testsuites/regex_input @@ -0,0 +1 @@ +<167>Mar 6 16:57:54 172.20.245.8 %PIX-7-710005:http host ports are 192.168.1.2:80, 192.168.1.3, 192.168.1.4:443, 192.168.1.5 etc diff --git a/tests/testsuites/spframingfix.testdata b/tests/testsuites/spframingfix.testdata new file mode 100644 index 0000000..d97a3da --- /dev/null +++ b/tests/testsuites/spframingfix.testdata @@ -0,0 +1,20 @@ +<181>00 + <181>01 +<181>02 + <181>03 + <181>04 + <181>05 +<181>06 +<181>07 +<181>08 +<181>09 +<181>10 + <181>11 + <181>12 + <181>13 + <181>14 +<181>15 + <181>16 +<181>17 + <181>18 +<181>19 diff --git a/tests/testsuites/stop_when_array_has_elem_input b/tests/testsuites/stop_when_array_has_elem_input new file mode 100644 index 0000000..6fddc95 --- /dev/null +++ b/tests/testsuites/stop_when_array_has_elem_input @@ -0,0 +1,3 @@ +<167>Mar 6 16:57:54 172.20.245.8 %PIX-7-710005:@cee:{"foo": ["abc0", "def1", "ghi2"]} +<167>Mar 6 16:57:54 172.20.245.8 %PIX-7-710005:@cee:{"foo": ["xyz0", "zab1", "abc2"]} +<167>Mar 6 16:57:54 172.20.245.8 %PIX-7-710005:@cee:{"foo": ["abc2", "def1", "ghi0"]} diff --git a/tests/testsuites/tokenized_input b/tests/testsuites/tokenized_input new file mode 100644 index 0000000..8825673 --- /dev/null +++ b/tests/testsuites/tokenized_input @@ -0,0 +1,5 @@ +<167>Mar 6 16:57:54 172.20.245.8 %PIX-7-710005:10.20.30.40, 50.60.70.80, 90.100.110.120, 130.140.150.160 +<167>Mar 6 16:57:54 172.20.245.8 %PIX-7-710005:local ips are 192.168.1.2, 192.168.1.3, 192.168.1.4 +<167>Mar 6 16:57:54 172.20.245.8 %PIX-7-710005:10.20.30.40, 50.60.70.80, 190.200.210.220 are external ips +<167>Mar 6 16:57:54 172.20.245.8 %PIX-7-710005:for foo@localhost path was /bin:/usr/local/bin:/usr/bin +<167>Mar 6 16:57:54 172.20.245.8 %PIX-7-710005:comma separated list of colon separated numbers: 10, 20 : 30#40#50 : 60#70#80, 90 : 100 diff --git a/tests/testsuites/valid.conf b/tests/testsuites/valid.conf new file mode 100644 index 0000000..250f054 --- /dev/null +++ b/tests/testsuites/valid.conf @@ -0,0 +1,3 @@ +# This is an invalid config file that shall trigger an exit code +# with the config verification run +*.* /tmp/data.log diff --git a/tests/testsuites/variable_leading_underscore.conf b/tests/testsuites/variable_leading_underscore.conf new file mode 100644 index 0000000..6279345 --- /dev/null +++ b/tests/testsuites/variable_leading_underscore.conf @@ -0,0 +1,2 @@ +set $.foo = $!_FOO; +*.* /dev/null # we need to have one action, else rsyslog aborts for that reason diff --git a/tests/testsuites/wrap3_input b/tests/testsuites/wrap3_input new file mode 100644 index 0000000..18aa3cb --- /dev/null +++ b/tests/testsuites/wrap3_input @@ -0,0 +1 @@ +<167>Mar 6 16:57:54 172.20.245.8 %PIX-7-710005: a abcbcdefbcdefb has bcdefbc diff --git a/tests/testsuites/x.509/ca-key.pem b/tests/testsuites/x.509/ca-key.pem new file mode 100644 index 0000000..9234024 --- /dev/null +++ b/tests/testsuites/x.509/ca-key.pem @@ -0,0 +1,182 @@ +Public Key Info: + Public Key Algorithm: RSA + Key Security Level: High (3072 bits) + +modulus: + 00:a1:0b:0c:e4:ad:a2:f6:bf:d4:85:01:8d:d6:0f:56 + ae:e9:c4:42:49:aa:ab:80:2f:f9:71:e7:30:cc:60:6e + 9b:49:e3:94:ee:24:99:49:08:e4:6e:20:d5:cc:13:b5 + 7a:9c:99:38:75:ec:42:9a:1e:50:45:a2:e8:27:1f:92 + 59:74:31:66:2a:93:88:a7:8a:1d:00:29:79:ba:e4:f9 + 27:59:51:87:a9:6c:3b:25:6a:f5:7d:21:aa:9f:6a:7e + 39:f5:ae:b9:fb:5d:f2:e4:f6:2f:7e:a2:bd:3f:88:b2 + b6:99:e8:26:53:96:54:5f:aa:4d:a6:82:9a:19:e2:c1 + 97:80:9e:8a:28:aa:75:a5:1e:c8:62:bc:60:a4:24:b3 + 1f:f4:cd:d7:96:6f:4e:18:a7:ec:c7:21:d7:5c:1a:81 + 80:c7:cf:33:7f:de:28:9c:94:04:4a:c5:4e:9f:5c:86 + de:c1:8c:ee:b8:5f:bc:e1:c3:2c:62:78:7e:51:3e:d7 + 0c:3c:0f:aa:d9:65:c8:ba:0f:86:d8:85:f0:35:6e:98 + 91:c2:c5:37:50:82:e0:8a:75:15:a5:f6:cc:9f:e5:ba + 7f:6b:3e:0a:ad:1d:6e:24:33:6b:49:5f:f9:2d:ab:2b + ee:dc:1f:ee:33:f6:5b:6a:03:4e:78:07:6f:c9:3e:e3 + 4a:6f:07:f7:94:ba:1a:6c:63:56:bb:8e:d3:09:fc:b3 + 68:35:1b:ed:8e:f4:08:54:6b:61:f9:0d:e2:90:f9:cb + e6:7c:df:c2:07:f3:b4:4a:26:2a:21:e6:ad:9c:79:55 + f9:a7:23:6f:f1:79:a4:32:eb:d6:60:3a:e7:8d:54:e7 + 5f:b4:34:7c:df:d3:ea:1f:1f:55:32:29:96:88:e5:81 + 5f:33:da:d3:dc:ac:91:34:33:86:3a:ee:74:80:81:85 + fb:bf:60:2d:99:ca:01:3c:c2:f9:49:a8:ab:ce:ae:5a + a6:29:63:6f:45:a6:e4:a4:8d:c1:76:76:78:0c:fd:9d + 3b: + +public exponent: + 01:00:01: + +private exponent: + 00:89:fd:ca:02:78:b6:56:f0:70:cd:b7:53:2d:c4:de + e5:e9:f0:fd:4b:da:2e:32:1c:e9:85:2c:30:a8:2f:49 + 17:4e:ec:ef:44:4f:9f:f8:f0:e1:ab:6b:ff:46:6a:ec + ea:2f:1d:2b:40:00:3d:e1:89:70:06:fb:5c:29:89:e8 + 01:36:8a:cd:9c:55:e6:96:88:c5:e8:c9:a1:40:ff:ca + 6e:69:1e:6f:3c:41:3d:3d:06:b5:6b:8f:59:80:57:e3 + e9:0e:17:b5:cd:29:e7:63:41:7f:d8:e6:e1:7a:7b:4b + 87:23:c1:c4:75:83:2e:b0:fa:60:a6:f8:e9:ca:9c:7e + 7d:ae:fc:2a:2e:46:41:a0:47:0c:35:6e:6c:f0:b9:71 + b3:44:34:cd:32:5e:15:71:13:12:d4:5e:af:06:80:bf + ce:f5:67:1a:1d:ca:e2:c9:a8:1b:35:66:73:c4:21:a8 + 7f:5f:21:bf:bb:c4:6d:38:95:e0:86:4f:f1:0c:f4:e7 + 96:7b:da:9e:95:7f:93:ca:96:ea:07:4f:13:52:5d:39 + 99:42:44:b5:a3:11:af:6e:62:a1:c9:43:6d:24:69:13 + 8a:62:ea:76:ae:7e:29:ef:c1:7e:a3:6e:b1:a8:71:9d + 3e:1a:40:03:16:b8:a5:a5:df:b3:c0:6b:d1:7b:fd:91 + e0:5b:30:d3:22:49:74:c3:ee:ca:b1:85:c9:9a:c5:8b + 45:3e:c3:75:f9:0c:ee:41:2d:12:f6:98:41:d4:ea:dd + d3:89:d4:7f:01:b0:19:3b:34:30:16:16:03:d9:74:9f + 4a:ba:71:59:1f:9b:7e:ee:ed:5f:c1:ec:11:38:bb:04 + a6:5e:b8:e3:0f:61:e7:92:39:e3:a9:5f:ab:31:f5:2d + 0c:55:f2:70:c4:25:75:ba:98:50:26:82:4e:e8:94:db + 21:2c:6c:31:5c:e6:e5:65:8c:31:48:cb:98:73:1a:61 + 96:a2:dd:27:f8:30:54:6a:9e:19:26:77:13:be:ca:d3 + a1: + +prime1: + 00:d4:9d:19:0c:c4:68:92:2c:4f:ab:ab:04:d0:4b:6c + 3c:b3:df:59:26:f6:28:e8:85:27:2b:b9:0a:7b:d7:52 + ab:90:d9:3d:bc:38:34:ad:e6:b6:e9:1a:f8:a4:ab:cf + 4f:94:92:6c:a9:38:c3:ee:19:1f:4c:95:e8:80:c3:50 + 1d:bb:1a:41:20:03:1a:c1:e9:7a:ff:e3:f7:1d:3f:12 + da:09:99:de:50:33:8c:ee:37:6e:c9:e3:aa:ec:9d:e0 + 84:5f:97:1b:48:cf:b3:d1:99:91:97:05:69:b5:47:20 + fa:43:d8:01:bb:dc:95:a8:3b:77:d3:5d:25:31:cd:9b + 01:90:22:1c:92:c6:e5:e2:09:51:42:7d:0c:70:08:25 + c5:9c:b7:71:1e:96:f1:df:c9:f0:aa:e2:52:4f:32:e1 + f7:76:ca:fb:6c:6a:c7:c1:22:54:45:c9:6f:3c:a7:b5 + f6:7d:c7:f7:e0:09:c8:36:59:d2:a8:09:7b:11:b6:3c + af: + +prime2: + 00:c1:e7:eb:18:5e:4d:3c:7f:b9:16:bf:d8:ce:9f:b7 + c3:6a:a0:fa:0b:64:68:20:c5:18:d1:c8:13:d5:82:24 + 8f:b7:5c:50:64:64:3a:8c:25:cc:71:21:79:ba:74:34 + 16:56:6c:3d:4b:60:1e:2c:83:88:51:d4:76:61:57:5a + 12:83:3c:67:6e:09:c5:74:27:fd:64:af:46:a2:09:41 + 9c:95:a1:cd:9d:86:14:29:69:28:a6:88:c3:71:9b:ac + a9:94:1e:df:10:78:f1:ec:30:46:95:9c:58:bf:7f:1e + 55:a6:3c:14:24:8f:9f:d3:97:3a:b8:cb:82:8c:c7:a9 + 49:5b:20:5a:ae:f3:20:b3:e5:e7:2e:e1:17:02:57:c5 + f9:bf:68:10:74:6c:69:7b:55:ad:6b:58:f8:13:33:d1 + 85:96:e0:96:d8:e3:6f:79:77:f3:17:b0:7a:02:81:16 + 6e:55:23:65:10:90:90:0b:6e:5b:cb:3b:cc:6e:83:03 + 35: + +coefficient: + 46:d5:f1:79:c7:d6:70:c2:eb:9b:fd:12:0a:53:b9:54 + 60:14:e0:33:3b:ab:41:71:ac:2a:51:12:b3:87:ad:98 + 9e:a9:ac:b4:6d:b5:02:4d:1e:b2:e5:fe:76:e5:8c:c1 + cb:60:0e:f3:76:77:be:e1:51:86:f1:9e:ae:c0:d9:78 + 3c:7a:c0:b6:02:75:dc:21:cf:d0:bc:fe:fa:34:33:a1 + 1a:a6:cf:7d:27:cc:d7:46:46:f0:8f:9d:31:4d:cf:78 + ec:15:6a:6f:64:18:24:04:65:b7:bc:58:0d:1c:35:3c + 16:e3:2d:f5:e0:13:64:a2:44:8c:4a:34:54:ab:23:4e + fd:01:3c:01:7d:87:5b:5a:16:ce:c8:b8:05:bf:74:ea + b5:94:77:23:1b:2d:33:55:c3:a2:e0:b7:a4:28:be:81 + ac:f0:63:d3:28:b7:01:b9:4c:03:aa:d1:d1:d1:36:2a + 99:1d:93:ac:ea:da:66:fb:7e:97:d3:bf:d2:b0:92:a0 + + +exp1: + 7f:2e:76:44:97:dc:c1:cb:b5:e0:c7:cd:7a:58:13:a8 + 00:25:13:ac:65:c5:b4:c9:a9:d3:d2:bd:bd:b4:e1:23 + f5:e2:ad:b6:40:9c:ea:85:bf:56:93:a6:b6:c2:7b:a1 + 6c:0b:66:ea:97:25:44:f1:4c:32:c0:dd:b2:e0:a2:b5 + 16:2e:2f:54:d9:e6:90:a6:7c:c8:43:72:97:d1:1a:12 + c9:79:7c:6d:d7:58:6f:4b:43:7f:8b:2b:bc:9c:f8:27 + d7:12:89:e4:b5:32:28:a8:47:59:e2:88:08:43:43:2b + d1:97:8d:f9:f5:8a:a4:76:e6:47:ce:49:28:90:88:2f + 98:2b:7f:92:21:5e:74:27:04:af:d4:23:b3:84:7c:2b + c8:82:47:2d:78:37:b9:99:8f:d8:78:c7:a9:ce:93:33 + 37:a1:56:62:d5:41:26:7b:c5:93:75:5a:90:1a:f6:93 + 3b:4c:7a:2f:4f:4a:af:90:6d:9d:cd:06:0c:63:49:cb + + +exp2: + 4e:2c:e8:55:7c:bf:7a:e2:ab:86:86:76:2c:67:ac:38 + b6:e6:8b:a8:c8:24:4b:01:eb:8d:b8:32:76:e3:ef:45 + 99:d1:38:00:21:80:91:3c:33:fe:70:56:99:5b:7c:1c + 7d:5f:4a:1e:f7:73:72:d2:dc:c4:d0:f9:a1:29:0c:81 + 66:33:96:27:80:fd:00:65:96:fd:5e:c5:05:52:e2:06 + f5:34:b4:a7:0b:85:59:64:b2:24:e2:02:99:ec:ff:61 + a6:fc:03:46:aa:dc:2e:33:10:62:05:14:aa:af:df:54 + fc:9e:40:28:b5:56:e4:81:96:05:26:d7:4d:56:b9:e3 + 7f:3f:be:0f:c6:a9:aa:9d:c7:e4:d8:8e:e4:3c:ea:ee + 53:c2:ea:cf:65:5d:e9:81:93:57:32:19:61:f4:84:46 + 6d:9b:c2:75:52:cc:80:96:61:85:6d:7a:e3:43:93:fd + 8b:89:a7:97:54:11:1e:ea:b1:4b:70:a2:6c:f3:98:f9 + + + +Public Key PIN: + pin-sha256:3cQAkiO2zLPAa/Tawzz/iqD5XAly2f+6m0f1OwppO8w= +Public Key ID: + sha256:ddc4009223b6ccb3c06bf4dac33cff8aa0f95c0972d9ffba9b47f53b0a693bcc + sha1:b09f67332c8888891f4462749d25ffc006135dd6 + +-----BEGIN RSA PRIVATE KEY----- +MIIG4wIBAAKCAYEAoQsM5K2i9r/UhQGN1g9WrunEQkmqq4Av+XHnMMxgbptJ45Tu +JJlJCORuINXME7V6nJk4dexCmh5QRaLoJx+SWXQxZiqTiKeKHQApebrk+SdZUYep +bDslavV9Iaqfan459a65+13y5PYvfqK9P4iytpnoJlOWVF+qTaaCmhniwZeAnooo +qnWlHshivGCkJLMf9M3Xlm9OGKfsxyHXXBqBgMfPM3/eKJyUBErFTp9cht7BjO64 +X7zhwyxieH5RPtcMPA+q2WXIug+G2IXwNW6YkcLFN1CC4Ip1FaX2zJ/lun9rPgqt +HW4kM2tJX/ktqyvu3B/uM/ZbagNOeAdvyT7jSm8H95S6GmxjVruO0wn8s2g1G+2O +9AhUa2H5DeKQ+cvmfN/CB/O0SiYqIeatnHlV+acjb/F5pDLr1mA6541U51+0NHzf +0+ofH1UyKZaI5YFfM9rT3KyRNDOGOu50gIGF+79gLZnKATzC+Umoq86uWqYpY29F +puSkjcF2dngM/Z07AgMBAAECggGBAIn9ygJ4tlbwcM23Uy3E3uXp8P1L2i4yHOmF +LDCoL0kXTuzvRE+f+PDhq2v/Rmrs6i8dK0AAPeGJcAb7XCmJ6AE2is2cVeaWiMXo +yaFA/8puaR5vPEE9PQa1a49ZgFfj6Q4Xtc0p52NBf9jm4Xp7S4cjwcR1gy6w+mCm ++OnKnH59rvwqLkZBoEcMNW5s8Llxs0Q0zTJeFXETEtRerwaAv871ZxodyuLJqBs1 +ZnPEIah/XyG/u8RtOJXghk/xDPTnlnvanpV/k8qW6gdPE1JdOZlCRLWjEa9uYqHJ +Q20kaROKYup2rn4p78F+o26xqHGdPhpAAxa4paXfs8Br0Xv9keBbMNMiSXTD7sqx +hcmaxYtFPsN1+QzuQS0S9phB1Ord04nUfwGwGTs0MBYWA9l0n0q6cVkfm37u7V/B +7BE4uwSmXrjjD2HnkjnjqV+rMfUtDFXycMQldbqYUCaCTuiU2yEsbDFc5uVljDFI +y5hzGmGWot0n+DBUap4ZJncTvsrToQKBwQDUnRkMxGiSLE+rqwTQS2w8s99ZJvYo +6IUnK7kKe9dSq5DZPbw4NK3mtuka+KSrz0+UkmypOMPuGR9MleiAw1AduxpBIAMa +wel6/+P3HT8S2gmZ3lAzjO43bsnjquyd4IRflxtIz7PRmZGXBWm1RyD6Q9gBu9yV +qDt3010lMc2bAZAiHJLG5eIJUUJ9DHAIJcWct3EelvHfyfCq4lJPMuH3dsr7bGrH +wSJURclvPKe19n3H9+AJyDZZ0qgJexG2PK8CgcEAwefrGF5NPH+5Fr/Yzp+3w2qg ++gtkaCDFGNHIE9WCJI+3XFBkZDqMJcxxIXm6dDQWVmw9S2AeLIOIUdR2YVdaEoM8 +Z24JxXQn/WSvRqIJQZyVoc2dhhQpaSimiMNxm6yplB7fEHjx7DBGlZxYv38eVaY8 +FCSPn9OXOrjLgozHqUlbIFqu8yCz5ecu4RcCV8X5v2gQdGxpe1Wta1j4EzPRhZbg +ltjjb3l38xewegKBFm5VI2UQkJALblvLO8xugwM1AoHAfy52RJfcwcu14MfNelgT +qAAlE6xlxbTJqdPSvb204SP14q22QJzqhb9Wk6a2wnuhbAtm6pclRPFMMsDdsuCi +tRYuL1TZ5pCmfMhDcpfRGhLJeXxt11hvS0N/iyu8nPgn1xKJ5LUyKKhHWeKICEND +K9GXjfn1iqR25kfOSSiQiC+YK3+SIV50JwSv1COzhHwryIJHLXg3uZmP2HjHqc6T +MzehVmLVQSZ7xZN1WpAa9pM7THovT0qvkG2dzQYMY0nLAoHATizoVXy/euKrhoZ2 +LGesOLbmi6jIJEsB6424Mnbj70WZ0TgAIYCRPDP+cFaZW3wcfV9KHvdzctLcxND5 +oSkMgWYzlieA/QBllv1exQVS4gb1NLSnC4VZZLIk4gKZ7P9hpvwDRqrcLjMQYgUU +qq/fVPyeQCi1VuSBlgUm101WueN/P74Pxqmqncfk2I7kPOruU8Lqz2Vd6YGTVzIZ +YfSERm2bwnVSzICWYYVteuNDk/2LiaeXVBEe6rFLcKJs85j5AoHARtXxecfWcMLr +m/0SClO5VGAU4DM7q0FxrCpRErOHrZieqay0bbUCTR6y5f525YzBy2AO83Z3vuFR +hvGersDZeDx6wLYCddwhz9C8/vo0M6Eaps99J8zXRkbwj50xTc947BVqb2QYJARl +t7xYDRw1PBbjLfXgE2SiRIxKNFSrI079ATwBfYdbWhbOyLgFv3TqtZR3IxstM1XD +ouC3pCi+gazwY9MotwG5TAOq0dHRNiqZHZOs6tpm+36X07/SsJKg +-----END RSA PRIVATE KEY----- diff --git a/tests/testsuites/x.509/ca.pem b/tests/testsuites/x.509/ca.pem new file mode 100644 index 0000000..430e5c2 --- /dev/null +++ b/tests/testsuites/x.509/ca.pem @@ -0,0 +1,27 @@ +-----BEGIN CERTIFICATE----- +MIIEiDCCAvCgAwIBAgIIXBeb1iWItcgwDQYJKoZIhvcNAQELBQAwRDERMA8GA1UE +AxMIc29tZU5hbWUxEDAOBgNVBAsTB3JzeXNsb2cxEDAOBgNVBAoTB1NvbWVPcmcx +CzAJBgNVBAYTAlVTMCAXDTE4MTIxNzEyNTEzNVoYDzIxMTgxMTIzMTI1MTUwWjBE +MREwDwYDVQQDEwhzb21lTmFtZTEQMA4GA1UECxMHcnN5c2xvZzEQMA4GA1UEChMH +U29tZU9yZzELMAkGA1UEBhMCVVMwggGiMA0GCSqGSIb3DQEBAQUAA4IBjwAwggGK +AoIBgQChCwzkraL2v9SFAY3WD1au6cRCSaqrgC/5cecwzGBum0njlO4kmUkI5G4g +1cwTtXqcmTh17EKaHlBFougnH5JZdDFmKpOIp4odACl5uuT5J1lRh6lsOyVq9X0h +qp9qfjn1rrn7XfLk9i9+or0/iLK2megmU5ZUX6pNpoKaGeLBl4CeiiiqdaUeyGK8 +YKQksx/0zdeWb04Yp+zHIddcGoGAx88zf94onJQESsVOn1yG3sGM7rhfvOHDLGJ4 +flE+1ww8D6rZZci6D4bYhfA1bpiRwsU3UILginUVpfbMn+W6f2s+Cq0dbiQza0lf ++S2rK+7cH+4z9ltqA054B2/JPuNKbwf3lLoabGNWu47TCfyzaDUb7Y70CFRrYfkN +4pD5y+Z838IH87RKJioh5q2ceVX5pyNv8XmkMuvWYDrnjVTnX7Q0fN/T6h8fVTIp +lojlgV8z2tPcrJE0M4Y67nSAgYX7v2AtmcoBPML5Sairzq5apiljb0Wm5KSNwXZ2 +eAz9nTsCAwEAAaN8MHowDwYDVR0TAQH/BAUwAwEB/zBIBgNVHREEQTA/ghNzb21l +b25lQGV4YW1wbGUubmV0ghNzb21lb25lQGV4YW1wbGUubmV0gRNzb21lb25lQGV4 +YW1wbGUubmV0MB0GA1UdDgQWBBSwn2czLIiIiR9EYnSdJf/ABhNd1jANBgkqhkiG +9w0BAQsFAAOCAYEAl6nIgBHMX8rnAC054xx/aQcXazrv89KyEp0ydzBwJQOTei7I +UGWQIRkSLL+CtrGhcLPQpTzAQn5NDo4ayinAtlPtP8MYcMBv13ZBJXLSqRfrTM04 +wkEbsWuCp+c/fU14E+QYSk4AwpoUdQeqmdM60KAoHNn+BaHGJRhRGOY9A8hfQQ5L +S2TpJ+suJuHafNjr9vvhlqTSefCfENV40Ie1nwHCbqNZdDZel1iQBmdI7WJG7uTI +OrSOPepYzOAYKQ+PWKMvZuzBc6ei/lcIpPHksWxK7nY35izSHjepMLGqH0/XZ51i +wN55slw9agg5eCq/zL/+Ebu7+yub8JhA9D4pgT5nBp8LtQPOIKnkVlFookjfyO8/ +dWsjGnhT9RNbDUQg7Y7spTWPT7wqOmQchEvQt+x96BHq4SLe88HnTpBk2Cb370jq +QQFW6s9vwo9PjOafOkyqYsiBuuCFxT80GegBlaipDNqLYhJ1fJAdQtRtFgogqpeS +thWJZzNJeHyZSpah +-----END CERTIFICATE----- diff --git a/tests/testsuites/x.509/ca.srl b/tests/testsuites/x.509/ca.srl new file mode 100644 index 0000000..09f81ec --- /dev/null +++ b/tests/testsuites/x.509/ca.srl @@ -0,0 +1 @@ +0D7B5949C4431CF8E2E1D6D9F4694C044A80B748 diff --git a/tests/testsuites/x.509/client-cert-new.pem b/tests/testsuites/x.509/client-cert-new.pem new file mode 100644 index 0000000..e92ab86 --- /dev/null +++ b/tests/testsuites/x.509/client-cert-new.pem @@ -0,0 +1,102 @@ +Certificate: + Data: + Version: 3 (0x2) + Serial Number: 4 (0x4) + Signature Algorithm: sha256WithRSAEncryption + Issuer: CN=someName, OU=rsyslog, O=SomeOrg, C=US + Validity + Not Before: Jul 6 13:52:50 2023 GMT + Not After : Jun 12 13:52:50 2123 GMT + Subject: C=US, ST=CA, O=SomeComp, OU=SomeUnit, CN=rsyslog/emailAddress=alorbach@adiscon.com + Subject Public Key Info: + Public Key Algorithm: rsaEncryption + RSA Public-Key: (3072 bit) + Modulus: + 00:9d:91:da:d8:2e:3d:9d:ae:85:c3:c5:a7:f6:a4: + 66:f8:c8:91:91:b8:70:20:dc:ed:e8:23:ca:53:f7: + b8:52:43:f3:a7:eb:fb:df:8a:3b:2c:b0:13:fa:62: + d3:a1:53:a4:51:71:1f:68:d9:fd:bc:39:4a:fb:c9: + 6a:df:f3:88:84:b0:80:bc:c0:f5:1b:42:11:f6:4c: + 1a:d8:2c:62:0b:5d:50:64:30:9a:d3:db:c1:d5:7f: + 39:53:e4:bd:e8:1e:04:9d:c9:12:e0:e4:57:29:29: + 01:b9:f1:e5:bc:74:a6:e7:4b:61:e6:67:5c:6c:4e: + ee:ee:22:0c:1b:14:6d:e8:0c:6f:ee:ee:c3:b8:dd: + df:15:ed:7a:96:5b:cc:85:e5:e3:50:c4:ce:2b:bf: + b6:37:e6:20:fc:6e:45:7e:09:bd:84:7a:af:07:27: + f4:99:23:41:df:36:d8:29:31:a0:96:84:2f:fd:45: + 2e:d4:b4:f9:fa:dc:8f:23:c0:e0:06:ad:ad:0a:72: + da:f4:3b:a1:cb:d6:a6:3b:ec:46:c4:95:f2:71:a5: + ad:08:1f:e7:06:18:0e:db:80:51:96:ba:24:f6:64: + 02:6b:d3:f0:76:01:34:3a:72:02:e9:cb:d0:aa:62: + 51:0c:8f:83:be:c0:47:99:d2:92:72:ed:53:a5:49: + 05:d4:c9:a1:f4:4d:de:12:9d:1a:c8:17:84:f3:a2: + 7c:67:47:82:4b:86:1e:73:86:e2:26:26:10:94:a3: + 99:9b:08:99:78:9d:3d:33:5d:85:c2:46:65:94:ab: + 70:b4:3b:c1:26:8b:11:b6:66:27:88:22:84:03:b5: + 08:45:32:8c:81:23:be:62:dc:6f:a0:aa:5e:9f:03: + f7:a7:f5:03:70:3c:78:09:d0:84:44:8c:19:af:76: + f7:93:fc:af:c6:fd:db:d9:4c:cb:20:79:44:71:cb: + e6:55:61:a9:7a:af:0b:a3:a6:ed:e9:a9:11:af:fa: + a3:5d:ac:97:e7:ef:2b:b6:a8:37 + Exponent: 65537 (0x10001) + X509v3 extensions: + X509v3 Basic Constraints: + CA:FALSE + Netscape Comment: + OpenSSL Generated Certificate + X509v3 Subject Key Identifier: + 6E:15:7E:C4:62:2B:92:6D:22:EE:0C:E4:C5:36:29:38:16:62:BE:89 + X509v3 Authority Key Identifier: + keyid:B0:9F:67:33:2C:88:88:89:1F:44:62:74:9D:25:FF:C0:06:13:5D:D6 + + Signature Algorithm: sha256WithRSAEncryption + 64:b0:45:6b:0c:7c:2d:09:14:8e:78:93:85:ef:d2:31:aa:c3: + 59:2e:85:bf:29:e1:46:59:38:d4:fe:ea:c4:c1:83:a7:4a:1b: + 92:5e:e8:11:9c:21:48:9d:1e:cc:31:d8:31:00:72:fe:7b:c1: + 18:c4:f5:37:f3:3b:0e:1a:f6:3f:19:47:22:c9:87:01:e0:4c: + f4:5d:36:0a:87:46:42:fc:6c:ab:26:ff:7d:ca:2c:19:97:ca: + 25:fc:70:66:4e:49:86:3e:81:0f:ee:e2:5c:3b:69:07:8b:c2: + 52:09:46:d8:67:af:84:54:bb:4f:f3:e0:da:07:c5:64:56:2d: + fb:f9:55:13:53:1d:c6:78:63:40:22:23:4f:63:59:37:05:c7: + 46:b6:36:53:30:fe:9b:e6:01:0a:54:5b:be:1b:a4:72:c3:27: + 1b:c5:21:5d:d3:0c:06:56:d9:df:45:83:e7:06:6d:47:53:72: + ea:6c:e7:db:5e:bd:14:47:19:0c:18:13:73:6b:14:dc:29:6c: + c0:60:fa:4c:02:74:45:e7:8d:12:bd:1f:cb:77:2c:72:19:ef: + e8:85:5c:cf:77:04:b7:d4:08:a8:7e:d1:1d:20:7b:76:27:ca: + 8a:5a:2a:a5:e7:15:6c:2d:50:9c:c2:b4:83:45:c2:f7:a5:f0: + 6b:d5:45:6b:88:4c:db:00:26:2f:8e:0a:3c:42:4e:0c:64:18: + 41:a0:6b:4b:d0:78:89:b4:64:34:5b:76:cb:dd:b9:be:6e:28: + 82:ba:6e:11:99:86:88:b6:0d:22:2b:a6:eb:5f:0b:ca:77:5b: + 2e:28:b7:f3:96:c3:8c:9d:0d:2b:59:98:d4:20:87:3a:2e:f4: + e3:bf:a2:ff:67:4f:3f:1e:ce:ec:59:76:5a:67:81:ba:44:96: + 29:af:05:ce:55:02:b4:d6:68:f0:25:61:8c:91:83:03:fd:e4: + 2c:06:91:b4:32:d8:5b:47:d6:20:55:44:a6:0c:9b:97:bb:94: + 66:25:8c:35:e0:32 +-----BEGIN CERTIFICATE----- +MIIEszCCAxugAwIBAgIBBDANBgkqhkiG9w0BAQsFADBEMREwDwYDVQQDEwhzb21l +TmFtZTEQMA4GA1UECxMHcnN5c2xvZzEQMA4GA1UEChMHU29tZU9yZzELMAkGA1UE +BhMCVVMwIBcNMjMwNzA2MTM1MjUwWhgPMjEyMzA2MTIxMzUyNTBaMHcxCzAJBgNV +BAYTAlVTMQswCQYDVQQIDAJDQTERMA8GA1UECgwIU29tZUNvbXAxETAPBgNVBAsM +CFNvbWVVbml0MRAwDgYDVQQDDAdyc3lzbG9nMSMwIQYJKoZIhvcNAQkBFhRhbG9y +YmFjaEBhZGlzY29uLmNvbTCCAaIwDQYJKoZIhvcNAQEBBQADggGPADCCAYoCggGB +AJ2R2tguPZ2uhcPFp/akZvjIkZG4cCDc7egjylP3uFJD86fr+9+KOyywE/pi06FT +pFFxH2jZ/bw5SvvJat/ziISwgLzA9RtCEfZMGtgsYgtdUGQwmtPbwdV/OVPkvege +BJ3JEuDkVykpAbnx5bx0pudLYeZnXGxO7u4iDBsUbegMb+7uw7jd3xXtepZbzIXl +41DEziu/tjfmIPxuRX4JvYR6rwcn9JkjQd822CkxoJaEL/1FLtS0+frcjyPA4Aat +rQpy2vQ7ocvWpjvsRsSV8nGlrQgf5wYYDtuAUZa6JPZkAmvT8HYBNDpyAunL0Kpi +UQyPg77AR5nSknLtU6VJBdTJofRN3hKdGsgXhPOifGdHgkuGHnOG4iYmEJSjmZsI +mXidPTNdhcJGZZSrcLQ7wSaLEbZmJ4gihAO1CEUyjIEjvmLcb6CqXp8D96f1A3A8 +eAnQhESMGa9295P8r8b929lMyyB5RHHL5lVhqXqvC6Om7empEa/6o12sl+fvK7ao +NwIDAQABo3sweTAJBgNVHRMEAjAAMCwGCWCGSAGG+EIBDQQfFh1PcGVuU1NMIEdl +bmVyYXRlZCBDZXJ0aWZpY2F0ZTAdBgNVHQ4EFgQUbhV+xGIrkm0i7gzkxTYpOBZi +vokwHwYDVR0jBBgwFoAUsJ9nMyyIiIkfRGJ0nSX/wAYTXdYwDQYJKoZIhvcNAQEL +BQADggGBAGSwRWsMfC0JFI54k4Xv0jGqw1kuhb8p4UZZONT+6sTBg6dKG5Je6BGc +IUidHswx2DEAcv57wRjE9TfzOw4a9j8ZRyLJhwHgTPRdNgqHRkL8bKsm/33KLBmX +yiX8cGZOSYY+gQ/u4lw7aQeLwlIJRthnr4RUu0/z4NoHxWRWLfv5VRNTHcZ4Y0Ai +I09jWTcFx0a2NlMw/pvmAQpUW74bpHLDJxvFIV3TDAZW2d9Fg+cGbUdTcups59te +vRRHGQwYE3NrFNwpbMBg+kwCdEXnjRK9H8t3LHIZ7+iFXM93BLfUCKh+0R0ge3Yn +yopaKqXnFWwtUJzCtINFwvel8GvVRWuITNsAJi+OCjxCTgxkGEGga0vQeIm0ZDRb +dsvdub5uKIK6bhGZhoi2DSIrputfC8p3Wy4ot/OWw4ydDStZmNQghzou9OO/ov9n +Tz8ezuxZdlpngbpElimvBc5VArTWaPAlYYyRgwP95CwGkbQy2FtH1iBVRKYMm5e7 +lGYljDXgMg== +-----END CERTIFICATE----- diff --git a/tests/testsuites/x.509/client-cert.pem b/tests/testsuites/x.509/client-cert.pem new file mode 100644 index 0000000..abd9702 --- /dev/null +++ b/tests/testsuites/x.509/client-cert.pem @@ -0,0 +1,27 @@ +-----BEGIN CERTIFICATE----- +MIIEoTCCAwmgAwIBAgIIXBeg0SlsiUswDQYJKoZIhvcNAQELBQAwRDERMA8GA1UE +AxMIc29tZU5hbWUxEDAOBgNVBAsTB3JzeXNsb2cxEDAOBgNVBAoTB1NvbWVPcmcx +CzAJBgNVBAYTAlVTMCAXDTE4MTIxNzEzMTI1MFoYDzIxMTgxMTIzMTMxMjUzWjBY +MRcwFQYDVQQDEw5yc3lzbG9nIGNsaWVudDERMA8GA1UECxMIU29tZVVuaXQxEDAO +BgNVBAoTB1NvbWVPcmcxCzAJBgNVBAgTAkNBMQswCQYDVQQGEwJVUzCCAaIwDQYJ +KoZIhvcNAQEBBQADggGPADCCAYoCggGBAJ2R2tguPZ2uhcPFp/akZvjIkZG4cCDc +7egjylP3uFJD86fr+9+KOyywE/pi06FTpFFxH2jZ/bw5SvvJat/ziISwgLzA9RtC +EfZMGtgsYgtdUGQwmtPbwdV/OVPkvegeBJ3JEuDkVykpAbnx5bx0pudLYeZnXGxO +7u4iDBsUbegMb+7uw7jd3xXtepZbzIXl41DEziu/tjfmIPxuRX4JvYR6rwcn9Jkj +Qd822CkxoJaEL/1FLtS0+frcjyPA4AatrQpy2vQ7ocvWpjvsRsSV8nGlrQgf5wYY +DtuAUZa6JPZkAmvT8HYBNDpyAunL0KpiUQyPg77AR5nSknLtU6VJBdTJofRN3hKd +GsgXhPOifGdHgkuGHnOG4iYmEJSjmZsImXidPTNdhcJGZZSrcLQ7wSaLEbZmJ4gi +hAO1CEUyjIEjvmLcb6CqXp8D96f1A3A8eAnQhESMGa9295P8r8b929lMyyB5RHHL +5lVhqXqvC6Om7empEa/6o12sl+fvK7aoNwIDAQABo4GAMH4wDAYDVR0TAQH/BAIw +ADAdBgNVHSUEFjAUBggrBgEFBQcDAgYIKwYBBQUHAwEwDwYDVR0PAQH/BAUDAweg +ADAdBgNVHQ4EFgQUlBeunSFXuHvBrhB7CKkhvKEUAIswHwYDVR0jBBgwFoAUsJ9n +MyyIiIkfRGJ0nSX/wAYTXdYwDQYJKoZIhvcNAQELBQADggGBAEk9KaiQ6NzNHf7M +kvPosgCu9Tm1jgRg4qjdMHxtzDxFQZWOtMuDxqqrNEC9FEF5zpEB8Z4VtubIeVK7 +6i6BdSMbI5zlnlxffPD1Gz8AKXe9BNb6UlLvlEC+58D4CJmrxDuKZXaBzy3xh2TP +Al/s5XkPBuXKc7l0qQdDkt67LfDCrwpGfseOFXNUHDREBOulwX4LJzilVqLMsp03 +qMHK0f4kOxc0oJrH+2+jCgpu1QPoFOLl/6shbRw3qls/f/coWnnS5kd2NOPUf0pe +j5lBt5ThhnLQIGwJucLa6cHVx+R4BWtTz4/v8hCwWr1cUbNEkxTyBErl0l8KkpCQ +d0NCuZe2u2AJYEKdNilSiBr33ERZ70peE/ATfk6hv9ysWepeGYJiuybWXMrDtLbw +X9wzwtdetIvvMxXiNAT5RpsZtFrdBD9ZwCHhJ+xjEycRDQKdnL/H4WbpAfvB9zcJ +WCJ50FBFjNoHSYrwmhQULOYa8AjVxxrX/27g2mN3P3sDLG6bzw== +-----END CERTIFICATE----- diff --git a/tests/testsuites/x.509/client-expired-cert.pem b/tests/testsuites/x.509/client-expired-cert.pem new file mode 100644 index 0000000..d5fe9a2 --- /dev/null +++ b/tests/testsuites/x.509/client-expired-cert.pem @@ -0,0 +1,25 @@ +-----BEGIN CERTIFICATE----- +MIIEPTCCAqWgAwIBAgIIXBEoYTa7GecwDQYJKoZIhvcNAQELBQAwRDERMA8GA1UE +AxMIc29tZU5hbWUxEDAOBgNVBAsTB3JzeXNsb2cxEDAOBgNVBAoTB1NvbWVPcmcx +CzAJBgNVBAYTAlVTMB4XDTE4MTIxMjE1MjUyMloXDTE4MTIxMzE1MjUyM1owdjEL +MAkGA1UEAxMCVVMxEDAOBgNVBAsTB1NvbWVPcmgxDzANBgNVBAoTBlNvbWVPVTES +MBAGA1UEBxMJU29tZXdoZXJlMQswCQYDVQQGEwJDQTEjMCEGCgmSJomT8ixkARkW +E21hY2hpbmUuZXhhbXBsZS5uZXQwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEK +AoIBAQC24qsJF2yax7Ja4xsPQ7lDtkEMx3ni6k0xh7VrzZiRFpegdz1CVerV8bAs +voTzn1aTWE1lELRO7i4QTAU2sn/kyB34oNuQWd8R1D7J3FJsIE36RM15XmcQ4biX +H6m9Kx5uEAfdHVSPLgwuQlQM6IshmxV5AS+QrqLK7scZCFpBEb379G4JeJJGdkXR +p7VYXUo079YSA60TqhWH01dlJdvRmY6sBpYahAOag3f3d7L8eYd9Jv3S6pHxzf/5 +/TqMbYr7m4iPH+cXg/sDNMll66rax9Ei2dk/Za1GKQ1AUvlfto0qKaRg/2FUKhqP +DGV5uJDbYxlZjD+2s8HSrlSPS70FAgMBAAGjgYAwfjAMBgNVHRMBAf8EAjAAMB0G +A1UdJQQWMBQGCCsGAQUFBwMCBggrBgEFBQcDATAPBgNVHQ8BAf8EBQMDB6AAMB0G +A1UdDgQWBBTKFNJvJb22tIrAxnqkVRDvFqukcTAfBgNVHSMEGDAWgBSwn2czLIiI +iR9EYnSdJf/ABhNd1jANBgkqhkiG9w0BAQsFAAOCAYEAXV+3oTx+/LEL8yHUbRS2 +wQ+kuXuuGJT4nkOFD+m5vNWtM1jGoj1trV/MxC697JlKB4wmBebKvIXcdKTVy2CB +MqPoKTHSJ4vqfAWYAP9i0nNrxcvi0mHVxlRqPnizPLUkcPCYvnPtnSOCELmWk0mC +i9K2QUy9e9HulRayaVU8KdPwopy6aJJQyl981T/h/m+q0FcKOIC27nn0VW0ZGHtl +1PnUTVOP479HNhMg6zmPKxV0Y/WVQDB0Cpok3uuo0V1I9BuQk7Rn6DQqSnNI7/vH +Ot/5fPEk/SU4OitCH7yV8XnkrPfAhpPrsUrVUd54PQg/KZu9qVTfMAM+j55aDCs7 +HlfrkSB+Jv4YOdlgrSMnstG45WIAYGD32sCPog5F9mJl6BFREcgscQ1BF7Tr/LX2 +d8PaePwRfdHuRDsY4Ydq+F89cP23QNIlxf9r8ODe13v1mfCXpzxksZ8zhxEzPm46 +efGuPdwdb+u6ZRiOqoaAavV9raKCEX5CrvqKeDnZ66WA +-----END CERTIFICATE----- diff --git a/tests/testsuites/x.509/client-expired-key.pem b/tests/testsuites/x.509/client-expired-key.pem new file mode 100644 index 0000000..b53d6f3 --- /dev/null +++ b/tests/testsuites/x.509/client-expired-key.pem @@ -0,0 +1,134 @@ +Public Key Info: + Public Key Algorithm: RSA + Key Security Level: Medium (2048 bits) + +modulus: + 00:b6:e2:ab:09:17:6c:9a:c7:b2:5a:e3:1b:0f:43:b9 + 43:b6:41:0c:c7:79:e2:ea:4d:31:87:b5:6b:cd:98:91 + 16:97:a0:77:3d:42:55:ea:d5:f1:b0:2c:be:84:f3:9f + 56:93:58:4d:65:10:b4:4e:ee:2e:10:4c:05:36:b2:7f + e4:c8:1d:f8:a0:db:90:59:df:11:d4:3e:c9:dc:52:6c + 20:4d:fa:44:cd:79:5e:67:10:e1:b8:97:1f:a9:bd:2b + 1e:6e:10:07:dd:1d:54:8f:2e:0c:2e:42:54:0c:e8:8b + 21:9b:15:79:01:2f:90:ae:a2:ca:ee:c7:19:08:5a:41 + 11:bd:fb:f4:6e:09:78:92:46:76:45:d1:a7:b5:58:5d + 4a:34:ef:d6:12:03:ad:13:aa:15:87:d3:57:65:25:db + d1:99:8e:ac:06:96:1a:84:03:9a:83:77:f7:77:b2:fc + 79:87:7d:26:fd:d2:ea:91:f1:cd:ff:f9:fd:3a:8c:6d + 8a:fb:9b:88:8f:1f:e7:17:83:fb:03:34:c9:65:eb:aa + da:c7:d1:22:d9:d9:3f:65:ad:46:29:0d:40:52:f9:5f + b6:8d:2a:29:a4:60:ff:61:54:2a:1a:8f:0c:65:79:b8 + 90:db:63:19:59:8c:3f:b6:b3:c1:d2:ae:54:8f:4b:bd + 05: + +public exponent: + 01:00:01: + +private exponent: + 43:a8:45:67:fe:9f:71:ff:50:af:28:f7:58:c5:50:23 + 89:a8:35:07:12:c3:6c:b4:94:0f:45:81:95:34:cc:f0 + 13:b6:0c:86:c0:24:b2:d4:e5:2d:ac:cf:ea:b5:8a:0b + e8:44:b1:95:23:01:e1:75:61:db:2b:94:7e:30:b8:f9 + b5:42:c9:39:11:21:2c:ee:46:55:43:c9:3f:d5:ca:24 + 85:54:81:e1:95:f5:e3:a1:2e:30:30:d0:48:e6:2f:ae + 79:3f:3a:f9:85:21:44:3a:df:cc:b9:43:08:e7:7a:99 + 3b:1b:4d:81:af:cc:11:9f:2d:fd:f9:ef:fb:d4:0f:df + d4:fe:65:70:c9:d2:3c:08:7b:ad:d5:34:af:c6:13:cf + 15:b5:82:31:02:52:d2:73:a9:e5:d1:5f:67:c1:a5:72 + e1:e4:4f:14:c6:fb:70:db:b8:43:ba:25:ea:4a:57:d6 + 30:ec:e4:c0:8c:24:c5:83:d7:68:9b:96:e1:7c:57:1f + 4c:2f:e3:76:9b:bb:b8:e6:86:52:87:fe:d2:a3:b3:bd + 30:c0:0e:f6:d2:fe:6d:e9:5b:24:5c:f4:b8:ba:da:d4 + 47:eb:d5:30:da:3b:1d:03:1f:ad:49:a2:05:34:f0:a1 + a8:a2:08:e2:ed:ba:03:1c:60:4a:ea:fa:08:4c:88:5d + + +prime1: + 00:ca:bc:76:2f:11:58:28:51:bf:a2:a0:23:43:b3:25 + 1a:56:2c:2e:56:05:24:a7:4b:e0:75:d3:ba:e7:31:20 + 2b:a2:fc:91:13:6b:b6:5b:c6:21:71:2d:6d:aa:d7:1f + b8:d9:86:ea:00:49:19:e7:d0:c1:2e:43:50:83:fd:b9 + a3:1d:51:c7:ee:45:0b:a9:c0:26:70:da:a6:3b:ea:d8 + 2f:dc:98:ce:f7:95:84:24:a3:d8:54:57:90:64:63:f3 + f7:9f:75:02:d8:c7:4e:9f:7d:60:f3:dc:b1:83:bc:42 + 08:ae:5f:ac:94:b1:74:bf:57:fc:96:0a:44:14:7b:f5 + d3: + +prime2: + 00:e6:ef:17:e0:2d:ef:36:07:c3:c2:42:44:d0:fb:e6 + d6:f5:7d:c4:5d:54:17:e0:ec:1d:6c:84:52:cf:90:a4 + aa:a5:d0:7c:c6:e6:f0:56:aa:73:27:5c:c1:91:4d:d5 + 60:7d:9c:a3:96:1a:cb:b1:e7:8e:cb:53:52:2e:35:53 + 74:46:e9:ff:67:fb:93:5b:94:78:b0:0f:b9:a7:2f:08 + fe:84:d3:f5:3e:f0:b7:02:a8:41:4e:9c:65:d7:f8:95 + 7e:82:ef:5f:3c:60:12:2e:6f:3f:a8:df:b3:bf:3b:ed + ac:07:ef:0f:d7:35:c7:81:30:a2:18:05:14:72:6c:02 + c7: + +coefficient: + 60:35:5f:cb:5b:40:75:b3:57:b8:61:d8:5a:40:c1:91 + 01:3a:c1:17:35:94:4b:81:06:e9:75:56:8c:97:e3:bb + 5a:7d:f5:f1:ac:f8:6f:d0:a2:6c:89:a4:8a:0d:23:78 + 8a:92:b6:3f:7c:42:00:65:c8:d7:b4:77:19:fd:2f:75 + e8:99:c4:60:c5:48:f5:74:4d:09:63:a2:b5:cd:01:0e + 70:8d:69:03:f0:58:e6:7c:47:93:40:f3:53:9f:d5:97 + 3a:13:2e:10:aa:17:77:74:67:82:2a:20:5b:fa:96:51 + cf:58:c8:a4:c4:58:f4:5a:88:42:49:4a:ad:5c:6e:00 + + +exp1: + 57:8a:b7:91:ad:70:9e:c0:65:fa:88:21:92:1b:2a:1b + 4c:38:79:ad:a5:3c:e5:8c:8b:18:f5:db:4f:f7:53:87 + e4:32:21:46:fc:8c:da:e6:1c:0c:ad:ec:1c:08:16:67 + 90:6e:84:5e:a9:32:29:7a:67:e0:5d:2a:c8:43:e8:43 + f9:e6:15:69:da:a0:a5:a5:16:34:47:05:de:fb:92:6c + 60:5a:0f:8c:b3:20:43:5e:08:8c:aa:de:eb:aa:89:6f + 54:88:87:39:2a:1e:d6:19:a2:a2:ca:9a:50:63:1b:34 + 7a:6f:4f:ab:49:51:3b:4a:78:04:25:dc:ad:e7:b5:07 + + +exp2: + 19:ee:59:10:fc:37:73:2a:b6:09:97:25:61:0e:18:22 + a5:18:45:37:71:9c:e8:cd:ba:94:17:db:b0:a0:fe:4c + 87:27:fd:0a:dc:9d:ba:2d:93:96:a4:ec:bb:63:31:05 + 8f:b5:4a:0d:2d:df:17:8f:f7:d1:ce:fe:58:5f:f6:8a + 04:f8:7b:8c:72:8c:5e:69:32:90:1a:83:ef:48:f1:ca + 9a:a1:ae:55:2d:f4:6e:e0:f3:cc:5e:f5:74:a5:de:2b + 81:8a:5d:78:4b:15:5f:8f:70:67:87:0f:08:f7:32:bd + f1:7a:1f:9e:3b:d4:b6:25:fe:dd:91:9c:75:28:b9:bb + + + +Public Key PIN: + pin-sha256:ixzIAak4pRfFjtaG95FtWd+Iu8vB5m6nknYP5EGaAqg= +Public Key ID: + sha256:8b1cc801a938a517c58ed686f7916d59df88bbcbc1e66ea792760fe4419a02a8 + sha1:ca14d26f25bdb6b48ac0c67aa45510ef16aba471 + +-----BEGIN RSA PRIVATE KEY----- +MIIEogIBAAKCAQEAtuKrCRdsmseyWuMbD0O5Q7ZBDMd54upNMYe1a82YkRaXoHc9 +QlXq1fGwLL6E859Wk1hNZRC0Tu4uEEwFNrJ/5Mgd+KDbkFnfEdQ+ydxSbCBN+kTN +eV5nEOG4lx+pvSsebhAH3R1Ujy4MLkJUDOiLIZsVeQEvkK6iyu7HGQhaQRG9+/Ru +CXiSRnZF0ae1WF1KNO/WEgOtE6oVh9NXZSXb0ZmOrAaWGoQDmoN393ey/HmHfSb9 +0uqR8c3/+f06jG2K+5uIjx/nF4P7AzTJZeuq2sfRItnZP2WtRikNQFL5X7aNKimk +YP9hVCoajwxlebiQ22MZWYw/trPB0q5Uj0u9BQIDAQABAoIBAEOoRWf+n3H/UK8o +91jFUCOJqDUHEsNstJQPRYGVNMzwE7YMhsAkstTlLazP6rWKC+hEsZUjAeF1Ydsr +lH4wuPm1Qsk5ESEs7kZVQ8k/1cokhVSB4ZX146EuMDDQSOYvrnk/OvmFIUQ638y5 +Qwjnepk7G02Br8wRny39+e/71A/f1P5lcMnSPAh7rdU0r8YTzxW1gjECUtJzqeXR +X2fBpXLh5E8Uxvtw27hDuiXqSlfWMOzkwIwkxYPXaJuW4XxXH0wv43abu7jmhlKH +/tKjs70wwA720v5t6VskXPS4utrUR+vVMNo7HQMfrUmiBTTwoaiiCOLtugMcYErq ++ghMiF0CgYEAyrx2LxFYKFG/oqAjQ7MlGlYsLlYFJKdL4HXTuucxICui/JETa7Zb +xiFxLW2q1x+42YbqAEkZ59DBLkNQg/25ox1Rx+5FC6nAJnDapjvq2C/cmM73lYQk +o9hUV5BkY/P3n3UC2MdOn31g89yxg7xCCK5frJSxdL9X/JYKRBR79dMCgYEA5u8X +4C3vNgfDwkJE0Pvm1vV9xF1UF+DsHWyEUs+QpKql0HzG5vBWqnMnXMGRTdVgfZyj +lhrLseeOy1NSLjVTdEbp/2f7k1uUeLAPuacvCP6E0/U+8LcCqEFOnGXX+JV+gu9f +PGASLm8/qN+zvzvtrAfvD9c1x4EwohgFFHJsAscCgYBXireRrXCewGX6iCGSGyob +TDh5raU85YyLGPXbT/dTh+QyIUb8jNrmHAyt7BwIFmeQboReqTIpemfgXSrIQ+hD ++eYVadqgpaUWNEcF3vuSbGBaD4yzIENeCIyq3uuqiW9UiIc5Kh7WGaKiyppQYxs0 +em9Pq0lRO0p4BCXcree1BwKBgBnuWRD8N3MqtgmXJWEOGCKlGEU3cZzozbqUF9uw +oP5Mhyf9Ctydui2TlqTsu2MxBY+1Sg0t3xeP99HO/lhf9ooE+HuMcoxeaTKQGoPv +SPHKmqGuVS30buDzzF71dKXeK4GKXXhLFV+PcGeHDwj3Mr3xeh+eO9S2Jf7dkZx1 +KLm7AoGAYDVfy1tAdbNXuGHYWkDBkQE6wRc1lEuBBul1VoyX47taffXxrPhv0KJs +iaSKDSN4ipK2P3xCAGXI17R3Gf0vdeiZxGDFSPV0TQljorXNAQ5wjWkD8FjmfEeT +QPNTn9WXOhMuEKoXd3RngiogW/qWUc9YyKTEWPRaiEJJSq1cbgA= +-----END RSA PRIVATE KEY----- diff --git a/tests/testsuites/x.509/client-key.pem b/tests/testsuites/x.509/client-key.pem new file mode 100644 index 0000000..596fa27 --- /dev/null +++ b/tests/testsuites/x.509/client-key.pem @@ -0,0 +1,182 @@ +Public Key Info: + Public Key Algorithm: RSA + Key Security Level: High (3072 bits) + +modulus: + 00:9d:91:da:d8:2e:3d:9d:ae:85:c3:c5:a7:f6:a4:66 + f8:c8:91:91:b8:70:20:dc:ed:e8:23:ca:53:f7:b8:52 + 43:f3:a7:eb:fb:df:8a:3b:2c:b0:13:fa:62:d3:a1:53 + a4:51:71:1f:68:d9:fd:bc:39:4a:fb:c9:6a:df:f3:88 + 84:b0:80:bc:c0:f5:1b:42:11:f6:4c:1a:d8:2c:62:0b + 5d:50:64:30:9a:d3:db:c1:d5:7f:39:53:e4:bd:e8:1e + 04:9d:c9:12:e0:e4:57:29:29:01:b9:f1:e5:bc:74:a6 + e7:4b:61:e6:67:5c:6c:4e:ee:ee:22:0c:1b:14:6d:e8 + 0c:6f:ee:ee:c3:b8:dd:df:15:ed:7a:96:5b:cc:85:e5 + e3:50:c4:ce:2b:bf:b6:37:e6:20:fc:6e:45:7e:09:bd + 84:7a:af:07:27:f4:99:23:41:df:36:d8:29:31:a0:96 + 84:2f:fd:45:2e:d4:b4:f9:fa:dc:8f:23:c0:e0:06:ad + ad:0a:72:da:f4:3b:a1:cb:d6:a6:3b:ec:46:c4:95:f2 + 71:a5:ad:08:1f:e7:06:18:0e:db:80:51:96:ba:24:f6 + 64:02:6b:d3:f0:76:01:34:3a:72:02:e9:cb:d0:aa:62 + 51:0c:8f:83:be:c0:47:99:d2:92:72:ed:53:a5:49:05 + d4:c9:a1:f4:4d:de:12:9d:1a:c8:17:84:f3:a2:7c:67 + 47:82:4b:86:1e:73:86:e2:26:26:10:94:a3:99:9b:08 + 99:78:9d:3d:33:5d:85:c2:46:65:94:ab:70:b4:3b:c1 + 26:8b:11:b6:66:27:88:22:84:03:b5:08:45:32:8c:81 + 23:be:62:dc:6f:a0:aa:5e:9f:03:f7:a7:f5:03:70:3c + 78:09:d0:84:44:8c:19:af:76:f7:93:fc:af:c6:fd:db + d9:4c:cb:20:79:44:71:cb:e6:55:61:a9:7a:af:0b:a3 + a6:ed:e9:a9:11:af:fa:a3:5d:ac:97:e7:ef:2b:b6:a8 + 37: + +public exponent: + 01:00:01: + +private exponent: + 60:cd:c5:dc:80:74:1c:56:a7:19:82:6a:51:6d:e9:51 + 38:af:ae:0d:d8:dd:67:bd:c5:9b:8f:67:0c:ce:b1:c3 + cb:82:c3:c9:27:29:9e:77:32:e9:e3:2f:2a:03:78:06 + 80:7e:76:24:8d:a0:84:2d:d2:b2:63:a9:04:53:72:f0 + ca:1b:1d:5b:92:7a:1f:9a:37:6d:c4:24:41:08:2f:21 + 32:0d:8b:8a:e3:53:a4:7f:0c:bd:64:9c:28:4b:dd:7d + 4a:8e:c8:c9:5f:9f:68:cb:27:a3:5c:48:9f:02:2f:b3 + f3:ac:fe:c7:4b:91:c2:e0:a9:6e:43:6f:b3:9a:5e:30 + 9d:e7:f5:ca:4a:de:0c:7b:45:3d:c5:f8:39:eb:9d:33 + 8d:60:8b:a5:77:0f:74:c2:2e:4b:c7:57:6c:3a:81:b3 + 4d:48:10:a6:6c:70:54:a7:d8:81:b2:45:84:96:bb:42 + 14:d5:8d:d6:5a:99:a0:e6:8c:f0:67:af:cc:32:6e:29 + e5:4d:73:ec:4b:14:2e:a6:91:27:9e:d4:45:62:52:33 + 66:94:c8:29:29:4d:bd:62:7b:f7:67:ed:26:02:33:f4 + 70:79:43:ff:ec:0f:92:80:b2:a4:f0:a2:91:00:f9:0e + 51:22:53:f5:51:e2:97:e8:18:be:36:34:d2:c8:cd:0e + 3c:66:8e:2c:a8:4f:46:66:5e:01:4f:1e:03:6e:e0:63 + d4:15:f5:28:59:e4:e0:47:df:57:20:d0:39:09:d8:65 + 1c:3d:c9:2f:69:77:5c:4c:4f:90:ea:07:fc:51:0c:2b + 0c:f9:85:06:f8:08:04:37:86:45:ee:58:c9:4c:2b:ba + 00:bf:c2:a0:92:f7:c2:31:82:43:52:0f:63:4d:96:82 + 1c:60:70:63:ac:72:db:ea:b8:4a:b3:a7:15:7a:c4:71 + 4a:dd:7e:8b:40:b7:b1:78:7f:14:60:d1:89:cf:6a:41 + 58:b5:cf:80:58:63:ad:fe:1f:15:bb:b2:10:db:07:41 + + +prime1: + 00:d0:04:9a:29:56:25:fd:9b:53:c0:a0:2f:ee:a8:49 + b0:a3:f4:33:a7:f3:29:5f:63:2c:05:5e:75:16:b4:62 + 2a:64:ea:e0:a6:64:aa:ce:aa:49:9d:10:1b:e5:56:c5 + 60:a9:54:87:3b:f7:55:49:c0:58:65:fd:32:73:b3:e7 + 79:ad:d4:49:27:b3:bd:0f:00:11:60:6a:c1:98:3b:71 + c7:83:7c:59:a6:61:c5:29:da:4d:8a:e5:be:a7:76:71 + ce:0d:2d:99:07:80:ac:df:42:29:6d:19:93:f2:5f:6d + 27:6d:31:db:2c:6a:38:ab:3e:39:db:5d:d6:b8:b7:34 + eb:0b:9c:a7:7f:9d:52:75:4a:53:25:de:df:0f:64:18 + 01:8b:b5:20:c3:7d:52:b3:1f:b8:95:0f:18:b3:ca:50 + 5e:89:b7:ae:61:40:24:74:84:29:e1:9d:34:94:aa:f1 + f2:d4:d8:ce:73:cd:ee:c1:c7:80:f1:75:60:2f:c8:6e + 21: + +prime2: + 00:c1:ea:4c:cf:a8:a0:55:cb:e0:82:81:ec:ba:f7:41 + a0:33:27:e2:42:85:8f:94:51:c5:a2:07:23:19:ea:87 + 87:af:4e:fc:11:9c:e8:d0:e6:83:8d:1d:e5:09:b3:e0 + 30:13:92:23:37:27:bc:2c:90:09:e0:ff:31:27:1e:8a + 0c:fe:ca:d2:a1:d2:a4:74:ae:21:db:f7:63:7f:38:44 + b9:97:59:9f:31:bf:55:80:97:fe:72:e6:6c:b0:1b:35 + 3c:18:76:5a:53:75:16:da:f1:97:f7:29:39:e5:70:df + 1c:fc:91:0b:e8:3a:20:d3:b4:61:3a:c8:81:f2:6c:49 + 1f:ba:07:cb:a8:0c:17:15:0f:8f:be:c7:5e:f3:0e:42 + cb:1a:11:ec:3e:25:25:fc:ce:c0:dd:99:49:c7:10:1a + d1:7c:5f:ca:d2:f3:d2:6f:ad:4b:7b:92:8a:55:ce:dc + b7:dc:b8:1e:1e:e5:d7:93:85:9e:a0:58:53:6e:03:db + 57: + +coefficient: + 00:ce:59:bc:fc:f2:13:ba:d7:78:e2:d3:ec:10:28:ff + 9c:af:d1:8d:a0:d8:f3:ed:62:8d:15:b0:69:80:e8:ba + 8f:bc:34:ce:36:35:a1:16:18:f2:46:0f:64:a4:d6:3b + 5a:0c:0c:a0:2e:bf:c6:f2:75:1d:83:93:be:5c:14:8c + 02:32:84:7e:24:ea:7b:d3:52:74:1c:63:75:00:c1:04 + 44:bf:76:e3:67:34:ce:fe:e5:c3:7c:f1:59:c3:48:4b + 2f:b2:24:60:0c:7e:e1:f7:b1:af:f5:07:ed:81:08:ac + 4c:e0:d3:98:c3:fb:20:24:5d:88:6c:2e:dd:4b:b9:9d + ef:56:76:42:83:22:95:e2:23:e4:5a:b5:08:f7:02:e5 + b5:69:99:da:be:5f:1a:24:49:b4:5d:37:22:39:f6:23 + ed:66:40:de:50:9e:f4:6d:38:41:75:46:14:a3:35:51 + 2e:5e:84:db:1d:94:8c:df:47:83:02:cf:ec:21:4a:d5 + 48: + +exp1: + 00:c3:aa:f0:8f:dd:77:12:dc:9e:a5:5c:88:79:c7:56 + b9:8f:1f:4f:cf:b5:4c:bf:6a:fb:a7:79:38:4e:49:12 + e5:a9:d3:bd:c9:06:7c:1c:b5:d5:54:a6:28:77:4b:6d + 92:04:f5:7b:d7:8e:49:6d:7c:3e:2a:81:46:89:cb:39 + fb:1c:e5:c8:82:4d:f1:92:40:90:17:cf:93:96:ec:a3 + 93:f6:3c:6b:df:b3:ab:d0:38:86:24:17:03:85:66:46 + 9a:79:8e:e0:99:4c:12:50:57:5d:bc:40:09:08:3d:76 + e1:55:37:46:60:ba:f1:df:32:43:1d:f3:60:dc:93:88 + 75:67:90:cd:85:9e:a8:47:a7:c8:1a:a1:4f:d4:9c:64 + 70:5f:c7:da:af:c8:1c:98:5d:48:34:fd:e4:50:8a:07 + 9b:45:93:bf:b5:be:ae:0b:e3:9d:b9:99:34:32:7b:b1 + e6:a7:0b:e0:f6:d1:48:ba:82:3c:e9:e3:6c:bc:c5:9d + c1: + +exp2: + 00:a4:7e:05:24:4e:0d:9c:59:f2:9b:a2:6c:d6:f8:b1 + 41:9c:c3:63:6a:3c:73:dc:44:35:5a:c9:a5:1b:f1:d7 + 7f:e0:d5:26:7c:26:57:54:05:86:68:29:88:c5:5f:41 + 78:66:d1:9b:6f:c9:14:15:d5:25:9c:27:bd:61:4a:c5 + 9e:5a:70:60:96:86:e1:9c:5c:ae:3a:32:b3:c3:12:4f + 32:03:d2:31:79:78:ad:a6:04:c9:02:5c:b6:ab:f8:98 + 82:de:d9:5e:ab:d6:f2:49:4d:91:34:47:53:66:6f:05 + c4:47:f7:1e:5b:a3:1b:7f:9a:4e:b4:17:ac:2b:a1:71 + b2:29:13:3d:cd:d2:5b:ae:30:e2:25:da:67:8f:d4:74 + 12:67:8d:f6:91:8c:df:99:81:25:17:95:55:81:38:07 + 17:d6:e2:47:62:05:14:68:49:5f:73:76:8e:44:55:d2 + e3:60:a7:0a:5d:f9:68:92:2a:51:b2:00:da:dc:c3:06 + c7: + + +Public Key PIN: + pin-sha256:aKORpr08YK1r+ZlFwE2Jr4IWb89uVOwdRatfTSZzcZ8= +Public Key ID: + sha256:68a391a6bd3c60ad6bf99945c04d89af82166fcf6e54ec1d45ab5f4d2673719f + sha1:9417ae9d2157b87bc1ae107b08a921bca114008b + +-----BEGIN RSA PRIVATE KEY----- +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 +-----END RSA PRIVATE KEY----- diff --git a/tests/testsuites/x.509/client-new.csr b/tests/testsuites/x.509/client-new.csr new file mode 100644 index 0000000..e7aeecf --- /dev/null +++ b/tests/testsuites/x.509/client-new.csr @@ -0,0 +1,23 @@ +-----BEGIN CERTIFICATE REQUEST----- +MIID0DCCAjgCAQAwgYoxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJDQTERMA8GA1UE +BwwIU29tZUNpdHkxETAPBgNVBAoMCFNvbWVDb21wMREwDwYDVQQLDAhTb21lVW5p +dDEQMA4GA1UEAwwHcnN5c2xvZzEjMCEGCSqGSIb3DQEJARYUYWxvcmJhY2hAYWRp +c2Nvbi5jb20wggGiMA0GCSqGSIb3DQEBAQUAA4IBjwAwggGKAoIBgQCdkdrYLj2d +roXDxaf2pGb4yJGRuHAg3O3oI8pT97hSQ/On6/vfijsssBP6YtOhU6RRcR9o2f28 +OUr7yWrf84iEsIC8wPUbQhH2TBrYLGILXVBkMJrT28HVfzlT5L3oHgSdyRLg5Fcp +KQG58eW8dKbnS2HmZ1xsTu7uIgwbFG3oDG/u7sO43d8V7XqWW8yF5eNQxM4rv7Y3 +5iD8bkV+Cb2Eeq8HJ/SZI0HfNtgpMaCWhC/9RS7UtPn63I8jwOAGra0Kctr0O6HL +1qY77EbElfJxpa0IH+cGGA7bgFGWuiT2ZAJr0/B2ATQ6cgLpy9CqYlEMj4O+wEeZ +0pJy7VOlSQXUyaH0Td4SnRrIF4TzonxnR4JLhh5zhuImJhCUo5mbCJl4nT0zXYXC +RmWUq3C0O8EmixG2ZieIIoQDtQhFMoyBI75i3G+gql6fA/en9QNwPHgJ0IREjBmv +dveT/K/G/dvZTMsgeURxy+ZVYal6rwujpu3pqRGv+qNdrJfn7yu2qDcCAwEAAaAA +MA0GCSqGSIb3DQEBCwUAA4IBgQBhQ5VEn10CTlB6GSLwyHPfq5jAYaH+lUcIrN4C +cOPCGs/GDB6erAED/KYlKOseD/KYNH5PguecuVnS7ZndfzN+nlukd8dE6qTe/fTG +6zjPDhh7HuoVtjdh6tDqMUteBA8p7I3kSf/fmK2JYVp3nszYek8/RQoeBI7UZxEE +Y2X2GvwOJK0FdqJUJS288rRh+aqGNJ23CFGUV36YJ/oBIS+0FQjyPIM9uEI/O1lf +VLqlJ3uWKeb875QXey5IvgG7S37Wkf1IVEWxLXxv90Py515TsBeC4R8ttmo9jEUV +l+ihbs+fxgCN6YD4/saVeXhso59IZFy/rVjq6vDYX4PW/T4kZMHjP+Zq/zRXul1S +Ft0u25Pn4ffCtFuQ+lxLk5NID/uhSGznjFV/l4Q+uvQinNbFyoB/3VNQC1PvkSsg +90BTYQSyn59un1R6wt4dkR51B+Hxk7uMlQIL/xY4PYTJrUBBk+ovbQG1wZGmla+X +tZ1y+qWCh7Dh7NE6qulhdijgydE= +-----END CERTIFICATE REQUEST----- diff --git a/tests/testsuites/x.509/client-revoked-key.pem b/tests/testsuites/x.509/client-revoked-key.pem new file mode 100644 index 0000000..8806a6e --- /dev/null +++ b/tests/testsuites/x.509/client-revoked-key.pem @@ -0,0 +1,28 @@ +-----BEGIN PRIVATE KEY----- +MIIEvwIBADANBgkqhkiG9w0BAQEFAASCBKkwggSlAgEAAoIBAQC//hRd6ZxsZxU8 +1EmdWyrqQ8K8ntA6XlUvaAArC9rcz/fZpxugozHdqAcTntw2dbg06hca9h3bMx5F +NoCunJOmAk4m+AfeHM6e508l11kkSV40RFSHq+BtWiRBGb8zw6UR1lDA920tEgPM +C7nqsoVdka2Ezr6bC8LrAZe4OtwcuNJD6JZe8ITimBh7FcavDLuOmJYhe81vDZ+E +Wb+RqLpqybxfSvMSTTPn3LA46XHY79D9nh/QWrupOpHYHqee+qwTW6Ot6IcL9LX4 +qA2nsVlAJkJ6BeQxZvgF0f2XX66TCtlFbKPfMu4ReIMvujYXdpiD1gj7MQ6BfVeA +EDzeDUsNAgMBAAECggEAQWSXJ02Ue8+4ihl8YV5WBajCwWAOaHMM7LKtq/vDtgYX +00h5voMXTvoWPvaS5vG9pjg9Wm+Nx8VngAeKWO7300lhuSAt/dcuAS2j5a2trRBY +R9EmQXenX1eelZXhbA4tQSAQLUmZJArIxE0SLABWMIKX6W5JuaGN6GGIfbV+l0E9 +RjQoj+k/XmlrUm11/KcRoL83JqL6wNuxi+AiHnFYEpaxdi/+U9RpVegiRzfS4OH7 +COOm+WEbjJSqyON4BRLGwEJaTcyFOozumyCRNnQIJJx7XW1m5RV+eowDdLcfbdma +dqGDlPqKSwcr8kZhqXlmnOIgiuxUwGI6WhOjAMAOuQKBgQDe9QPX48Fvw5Yaenp4 +kvEU3lzb6JPYz07ECZ3yz7mfSbJmArj/nDqSiX1UdYInD2dMYw4gPdTX9iIMExXk +dRTo72ipuNzC3w97GkLDHMKNlCnPrSIFWrh0JqQBI+uQOTXqp0kU25SMzp1AtDlW +UhtXnt+FdKQDYwXyuFrYkfTnSwKBgQDcckTXY9YSfL4IauNG1mPsJM/+UvAmrKdp +PDAi7ODVT0zq6h7kn30RUg+4Ebtyag9APdH9W8ta4kZVxID2/r5tY9bHxPAGD6Yd +8cl0Bii6Rzd3NI5+xddqtZyz/A9PCPeKW3v0mLU16kemGq651bLHtwL5o6AEHXIn +1T3U6d3oBwKBgQCfJU2FAPHGkVnHtL1O67RiLQcjgbRnAjM7A5JXC6d35+cLoc3j +xuSYTMPFUcuBjiEyCVK/+OLA9NQAwm7SEDDIxHt1CpuqDgbC3E/jbdgBr0zZDMBI +CiW34w0WM0mmPPAbeyVTWhmDGMhuszZqQ1l5BdKPNF8Oe9R3GNjf1e92WQKBgQCd +I2cnEid6rijX3zl7OT+pCOSqqXw+VTxQq3K0sp3h79EocxLqbTW9rv09fIZdnHSa +mnahX1mpwznX0WcMqbIcT9q+NAfUijsjhULQzcMiZbmH45Lfky9nBWZadgaDlCTA +H05QoLorYIEKSmLaXRY/fplEUfqydDr3Ye3dY4em6QKBgQC0Heucqyw9THbnmHsr +wIIb/L0eagI8BReJ+CWRAuhid0BmsRtIZf6mmdQl+vwrt4+O8PtCyJoeiI3qrht6 +SL65po9ERpSijV5lL6TS7VI22xNPtzd1Xf/ACg6/An/qSJeqYKn1DEqznSai8zXx +PLz21hIcNxaxmTG34HMq+h4BGw== +-----END PRIVATE KEY----- diff --git a/tests/testsuites/x.509/client-revoked-valid.pem b/tests/testsuites/x.509/client-revoked-valid.pem new file mode 100644 index 0000000..8bc2b8a --- /dev/null +++ b/tests/testsuites/x.509/client-revoked-valid.pem @@ -0,0 +1,92 @@ +Certificate: + Data: + Version: 3 (0x2) + Serial Number: 3 (0x3) + Signature Algorithm: sha256WithRSAEncryption + Issuer: CN=someName, OU=rsyslog, O=SomeOrg, C=US + Validity + Not Before: Jul 6 13:38:06 2023 GMT + Not After : Jun 12 13:38:06 2123 GMT + Subject: C=DE, ST=NRW, O=Adiscon GmbH, OU=rsyslog, CN=rsyslog revoked certificate test/emailAddress=alorbach@adiscon.com + Subject Public Key Info: + Public Key Algorithm: rsaEncryption + RSA Public-Key: (2048 bit) + Modulus: + 00:bf:fe:14:5d:e9:9c:6c:67:15:3c:d4:49:9d:5b: + 2a:ea:43:c2:bc:9e:d0:3a:5e:55:2f:68:00:2b:0b: + da:dc:cf:f7:d9:a7:1b:a0:a3:31:dd:a8:07:13:9e: + dc:36:75:b8:34:ea:17:1a:f6:1d:db:33:1e:45:36: + 80:ae:9c:93:a6:02:4e:26:f8:07:de:1c:ce:9e:e7: + 4f:25:d7:59:24:49:5e:34:44:54:87:ab:e0:6d:5a: + 24:41:19:bf:33:c3:a5:11:d6:50:c0:f7:6d:2d:12: + 03:cc:0b:b9:ea:b2:85:5d:91:ad:84:ce:be:9b:0b: + c2:eb:01:97:b8:3a:dc:1c:b8:d2:43:e8:96:5e:f0: + 84:e2:98:18:7b:15:c6:af:0c:bb:8e:98:96:21:7b: + cd:6f:0d:9f:84:59:bf:91:a8:ba:6a:c9:bc:5f:4a: + f3:12:4d:33:e7:dc:b0:38:e9:71:d8:ef:d0:fd:9e: + 1f:d0:5a:bb:a9:3a:91:d8:1e:a7:9e:fa:ac:13:5b: + a3:ad:e8:87:0b:f4:b5:f8:a8:0d:a7:b1:59:40:26: + 42:7a:05:e4:31:66:f8:05:d1:fd:97:5f:ae:93:0a: + d9:45:6c:a3:df:32:ee:11:78:83:2f:ba:36:17:76: + 98:83:d6:08:fb:31:0e:81:7d:57:80:10:3c:de:0d: + 4b:0d + Exponent: 65537 (0x10001) + X509v3 extensions: + X509v3 Basic Constraints: + CA:FALSE + Netscape Comment: + OpenSSL Generated Certificate + X509v3 Subject Key Identifier: + 20:CE:A2:54:99:CF:22:9A:5C:BB:D4:1E:B0:1E:43:73:63:72:AA:DE + X509v3 Authority Key Identifier: + keyid:B0:9F:67:33:2C:88:88:89:1F:44:62:74:9D:25:FF:C0:06:13:5D:D6 + + Signature Algorithm: sha256WithRSAEncryption + 65:ac:7c:30:d0:01:ce:d7:ff:28:61:6c:8d:99:15:ce:45:22: + 8a:39:70:a4:a6:ce:48:94:e3:4b:8c:be:55:c4:66:96:49:49: + 4b:e0:4c:95:fd:73:02:54:3a:df:34:2f:96:16:48:ec:c2:23: + 3d:ee:b4:5a:dd:a0:c9:eb:85:f4:fd:e8:d5:8f:f3:dc:ce:4a: + 88:bb:be:19:81:3f:8b:0f:09:23:46:14:c9:f5:35:5a:cf:25: + 7c:92:df:b9:90:5d:ff:4f:21:40:9c:24:7c:0f:1f:3f:62:d1: + 7b:cc:40:7d:c6:61:49:f3:84:26:78:ed:87:70:06:9c:93:05: + a5:c4:7e:60:3d:d0:4a:2c:e4:d6:e5:33:f8:07:dd:5a:0e:9a: + 93:17:50:29:1a:ff:66:61:d9:40:a7:fb:cc:7b:62:b7:9d:29: + 1a:2a:3d:7b:93:87:eb:52:4e:00:19:19:3c:4d:73:fc:3d:ed: + eb:9d:92:30:bc:b0:ed:51:15:ce:b7:3c:00:09:0c:9d:6d:8b: + 2b:c9:f5:66:d4:49:44:58:3d:e7:61:3d:6b:21:05:ff:1d:55: + 59:dd:e4:a6:2f:e5:96:82:eb:24:33:2e:47:61:a5:f8:4d:ab: + ad:fc:64:f8:8b:9e:0e:62:8c:16:1d:79:18:74:18:9c:a2:19: + c3:24:0d:6e:45:63:f9:08:92:7d:44:0b:96:c7:48:84:72:97: + 22:23:bf:10:0a:d7:4e:43:8a:db:60:cd:5d:80:5e:71:fa:c2: + b6:68:10:ee:cc:29:86:15:d3:d9:93:2a:cc:73:88:be:9f:ad: + d0:c5:9c:a4:e4:86:38:e7:41:84:3a:d0:f3:67:1f:2c:40:d7: + 04:b1:ea:32:13:49:a5:82:1a:a5:6c:3f:5f:dc:fd:55:14:03: + 8b:d7:bd:01:9e:bc:c5:e4:a1:a8:a8:9d:bc:cd:1f:5b:fc:df: + 59:b7:0d:aa:47:a0:08:cd:6e:f7:c8:9d:d3:dd:4e:8b:aa:cc: + 54:20:a0:2b:63:96 +-----BEGIN CERTIFICATE----- +MIIEUTCCArmgAwIBAgIBAzANBgkqhkiG9w0BAQsFADBEMREwDwYDVQQDEwhzb21l +TmFtZTEQMA4GA1UECxMHcnN5c2xvZzEQMA4GA1UEChMHU29tZU9yZzELMAkGA1UE +BhMCVVMwIBcNMjMwNzA2MTMzODA2WhgPMjEyMzA2MTIxMzM4MDZaMIGUMQswCQYD +VQQGEwJERTEMMAoGA1UECAwDTlJXMRUwEwYDVQQKDAxBZGlzY29uIEdtYkgxEDAO +BgNVBAsMB3JzeXNsb2cxKTAnBgNVBAMMIHJzeXNsb2cgcmV2b2tlZCBjZXJ0aWZp +Y2F0ZSB0ZXN0MSMwIQYJKoZIhvcNAQkBFhRhbG9yYmFjaEBhZGlzY29uLmNvbTCC +ASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAL/+FF3pnGxnFTzUSZ1bKupD +wrye0DpeVS9oACsL2tzP99mnG6CjMd2oBxOe3DZ1uDTqFxr2HdszHkU2gK6ck6YC +Tib4B94czp7nTyXXWSRJXjREVIer4G1aJEEZvzPDpRHWUMD3bS0SA8wLueqyhV2R +rYTOvpsLwusBl7g63By40kPoll7whOKYGHsVxq8Mu46YliF7zW8Nn4RZv5GoumrJ +vF9K8xJNM+fcsDjpcdjv0P2eH9Bau6k6kdgep576rBNbo63ohwv0tfioDaexWUAm +QnoF5DFm+AXR/ZdfrpMK2UVso98y7hF4gy+6Nhd2mIPWCPsxDoF9V4AQPN4NSw0C +AwEAAaN7MHkwCQYDVR0TBAIwADAsBglghkgBhvhCAQ0EHxYdT3BlblNTTCBHZW5l +cmF0ZWQgQ2VydGlmaWNhdGUwHQYDVR0OBBYEFCDOolSZzyKaXLvUHrAeQ3Njcqre +MB8GA1UdIwQYMBaAFLCfZzMsiIiJH0RidJ0l/8AGE13WMA0GCSqGSIb3DQEBCwUA +A4IBgQBlrHww0AHO1/8oYWyNmRXORSKKOXCkps5IlONLjL5VxGaWSUlL4EyV/XMC +VDrfNC+WFkjswiM97rRa3aDJ64X0/ejVj/PczkqIu74ZgT+LDwkjRhTJ9TVazyV8 +kt+5kF3/TyFAnCR8Dx8/YtF7zEB9xmFJ84QmeO2HcAackwWlxH5gPdBKLOTW5TP4 +B91aDpqTF1ApGv9mYdlAp/vMe2K3nSkaKj17k4frUk4AGRk8TXP8Pe3rnZIwvLDt +URXOtzwACQydbYsryfVm1ElEWD3nYT1rIQX/HVVZ3eSmL+WWguskMy5HYaX4Taut +/GT4i54OYowWHXkYdBicohnDJA1uRWP5CJJ9RAuWx0iEcpciI78QCtdOQ4rbYM1d +gF5x+sK2aBDuzCmGFdPZkyrMc4i+n63QxZyk5IY450GEOtDzZx8sQNcEseoyE0ml +ghqlbD9f3P1VFAOL170BnrzF5KGoqJ28zR9b/N9Ztw2qR6AIzW73yJ3T3U6LqsxU +IKArY5Y= +-----END CERTIFICATE----- diff --git a/tests/testsuites/x.509/client-revoked.csr b/tests/testsuites/x.509/client-revoked.csr new file mode 100644 index 0000000..bc99a28 --- /dev/null +++ b/tests/testsuites/x.509/client-revoked.csr @@ -0,0 +1,18 @@ +-----BEGIN CERTIFICATE REQUEST----- +MIIC9DCCAdwCAQAwga4xCzAJBgNVBAYTAkRFMQwwCgYDVQQIDANOUlcxGDAWBgNV +BAcMD0dyb3NzcmluZGVyZmVsZDEVMBMGA1UECgwMQWRpc2NvbiBHbWJIMRAwDgYD +VQQLDAdyc3lzbG9nMSkwJwYDVQQDDCByc3lzbG9nIHJldm9rZWQgY2VydGlmaWNh +dGUgdGVzdDEjMCEGCSqGSIb3DQEJARYUYWxvcmJhY2hAYWRpc2Nvbi5jb20wggEi +MA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQC//hRd6ZxsZxU81EmdWyrqQ8K8 +ntA6XlUvaAArC9rcz/fZpxugozHdqAcTntw2dbg06hca9h3bMx5FNoCunJOmAk4m ++AfeHM6e508l11kkSV40RFSHq+BtWiRBGb8zw6UR1lDA920tEgPMC7nqsoVdka2E +zr6bC8LrAZe4OtwcuNJD6JZe8ITimBh7FcavDLuOmJYhe81vDZ+EWb+RqLpqybxf +SvMSTTPn3LA46XHY79D9nh/QWrupOpHYHqee+qwTW6Ot6IcL9LX4qA2nsVlAJkJ6 +BeQxZvgF0f2XX66TCtlFbKPfMu4ReIMvujYXdpiD1gj7MQ6BfVeAEDzeDUsNAgMB +AAGgADANBgkqhkiG9w0BAQsFAAOCAQEASfTlG7UDUb9bgIerIn2kUYTFxZOnvy/M +cfDM/iH5m3v7IjHV61mI7x7/P+COG6E9MOSS4+VLFjfc8YlQ67zkyrZxa4LMBqUF +i+oOvTGvTO4ocBlHcoZ53EE5q3sy/yu67ih8jlTbCjtJ6mUOdXDclJimwKir4e+b +GPpOvLENDfJ5RShJL5cdGXJqv+ZYuZnh4+zq8h4+EQI1BSzPudomSE6d+gf6Ysyg +lb1YvhlP2phApgHS+3QeLLW8rTgPheFJcQbg6Sc+m44jysqjOVKc0+RYCdhqI7a7 +Dk/V/eD1VFOoRrIY2WnpvzE39gpV1fl4bUrrcsMCIBe7F2svdFHMog== +-----END CERTIFICATE REQUEST----- diff --git a/tests/testsuites/x.509/client-revoked.pem b/tests/testsuites/x.509/client-revoked.pem new file mode 100644 index 0000000..b64b2a9 --- /dev/null +++ b/tests/testsuites/x.509/client-revoked.pem @@ -0,0 +1,92 @@ +Certificate: + Data: + Version: 3 (0x2) + Serial Number: 2 (0x2) + Signature Algorithm: sha256WithRSAEncryption + Issuer: CN=someName, OU=rsyslog, O=SomeOrg, C=US + Validity + Not Before: Jul 6 12:59:25 2023 GMT + Not After : Jun 12 12:59:25 2123 GMT + Subject: C=DE, ST=NRW, O=Adiscon GmbH, OU=rsyslog, CN=rsyslog revoked certificate test/emailAddress=alorbach@adiscon.com + Subject Public Key Info: + Public Key Algorithm: rsaEncryption + RSA Public-Key: (2048 bit) + Modulus: + 00:bf:fe:14:5d:e9:9c:6c:67:15:3c:d4:49:9d:5b: + 2a:ea:43:c2:bc:9e:d0:3a:5e:55:2f:68:00:2b:0b: + da:dc:cf:f7:d9:a7:1b:a0:a3:31:dd:a8:07:13:9e: + dc:36:75:b8:34:ea:17:1a:f6:1d:db:33:1e:45:36: + 80:ae:9c:93:a6:02:4e:26:f8:07:de:1c:ce:9e:e7: + 4f:25:d7:59:24:49:5e:34:44:54:87:ab:e0:6d:5a: + 24:41:19:bf:33:c3:a5:11:d6:50:c0:f7:6d:2d:12: + 03:cc:0b:b9:ea:b2:85:5d:91:ad:84:ce:be:9b:0b: + c2:eb:01:97:b8:3a:dc:1c:b8:d2:43:e8:96:5e:f0: + 84:e2:98:18:7b:15:c6:af:0c:bb:8e:98:96:21:7b: + cd:6f:0d:9f:84:59:bf:91:a8:ba:6a:c9:bc:5f:4a: + f3:12:4d:33:e7:dc:b0:38:e9:71:d8:ef:d0:fd:9e: + 1f:d0:5a:bb:a9:3a:91:d8:1e:a7:9e:fa:ac:13:5b: + a3:ad:e8:87:0b:f4:b5:f8:a8:0d:a7:b1:59:40:26: + 42:7a:05:e4:31:66:f8:05:d1:fd:97:5f:ae:93:0a: + d9:45:6c:a3:df:32:ee:11:78:83:2f:ba:36:17:76: + 98:83:d6:08:fb:31:0e:81:7d:57:80:10:3c:de:0d: + 4b:0d + Exponent: 65537 (0x10001) + X509v3 extensions: + X509v3 Basic Constraints: + CA:FALSE + Netscape Comment: + OpenSSL Generated Certificate + X509v3 Subject Key Identifier: + 20:CE:A2:54:99:CF:22:9A:5C:BB:D4:1E:B0:1E:43:73:63:72:AA:DE + X509v3 Authority Key Identifier: + keyid:B0:9F:67:33:2C:88:88:89:1F:44:62:74:9D:25:FF:C0:06:13:5D:D6 + + Signature Algorithm: sha256WithRSAEncryption + 33:65:28:98:94:9b:f5:57:0d:bf:02:c2:67:93:8e:8e:77:03: + 9b:c7:7a:47:53:29:a4:dd:a6:a1:5e:2a:0a:ed:19:02:80:90: + b3:97:1f:06:4c:9c:c5:5f:6c:16:f9:12:fb:dd:da:29:88:b7: + 2c:91:0b:ab:53:79:7a:6e:76:20:fe:fa:b1:99:c2:2b:50:26: + 7b:cc:8c:75:98:35:95:79:56:43:90:a0:95:5e:98:09:10:4d: + ea:c0:1c:bb:c0:7b:a7:8a:9b:21:70:85:65:83:4d:ee:65:ef: + 10:d3:63:95:fd:51:9d:6c:41:7b:af:af:9c:e7:34:74:a1:7a: + 86:0a:8e:f2:2a:06:68:77:76:fa:fc:64:bc:28:1d:8b:53:7a: + cf:62:0f:87:a9:85:54:8c:a5:41:c3:61:0b:cf:96:c1:fa:81: + a5:31:63:f3:cb:17:37:58:6e:d9:30:97:fb:57:2f:31:63:e8: + 26:0e:82:49:e2:a9:9b:ed:39:7b:24:4e:42:8d:34:74:3a:dc: + b7:c5:d6:15:e9:66:28:2d:3c:e0:26:44:76:66:4a:32:94:11: + c8:1f:1c:b2:dc:44:69:63:f7:2d:87:b5:89:4a:40:fb:e4:14: + 68:dc:8a:76:40:93:35:e2:ac:9a:4b:bc:af:c5:8a:8a:38:54: + ef:69:01:4c:92:af:c0:07:d0:2f:7a:3c:9e:40:ac:56:07:d0: + 2b:1f:5f:d0:44:f9:70:e1:44:44:34:ba:fb:3d:54:85:4b:1d: + ba:ea:ea:6a:91:0c:08:30:2d:bc:b8:ea:22:c1:16:7b:53:fe: + 40:2c:8d:f5:c6:c2:39:e6:11:1d:e2:2f:50:a6:76:9c:fd:b9: + fa:d5:10:79:0e:e5:02:87:7d:96:e3:81:05:79:c9:a3:d8:f2: + a0:b1:8b:0e:8d:33:73:15:6f:27:88:85:03:8a:c5:7a:77:f4: + 3f:7f:b8:65:97:5b:a0:a6:21:48:67:2c:a2:73:a2:ec:d6:6a: + bd:d6:f2:e2:b1:5b +-----BEGIN CERTIFICATE----- +MIIEUTCCArmgAwIBAgIBAjANBgkqhkiG9w0BAQsFADBEMREwDwYDVQQDEwhzb21l +TmFtZTEQMA4GA1UECxMHcnN5c2xvZzEQMA4GA1UEChMHU29tZU9yZzELMAkGA1UE +BhMCVVMwIBcNMjMwNzA2MTI1OTI1WhgPMjEyMzA2MTIxMjU5MjVaMIGUMQswCQYD +VQQGEwJERTEMMAoGA1UECAwDTlJXMRUwEwYDVQQKDAxBZGlzY29uIEdtYkgxEDAO +BgNVBAsMB3JzeXNsb2cxKTAnBgNVBAMMIHJzeXNsb2cgcmV2b2tlZCBjZXJ0aWZp +Y2F0ZSB0ZXN0MSMwIQYJKoZIhvcNAQkBFhRhbG9yYmFjaEBhZGlzY29uLmNvbTCC +ASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAL/+FF3pnGxnFTzUSZ1bKupD +wrye0DpeVS9oACsL2tzP99mnG6CjMd2oBxOe3DZ1uDTqFxr2HdszHkU2gK6ck6YC +Tib4B94czp7nTyXXWSRJXjREVIer4G1aJEEZvzPDpRHWUMD3bS0SA8wLueqyhV2R +rYTOvpsLwusBl7g63By40kPoll7whOKYGHsVxq8Mu46YliF7zW8Nn4RZv5GoumrJ +vF9K8xJNM+fcsDjpcdjv0P2eH9Bau6k6kdgep576rBNbo63ohwv0tfioDaexWUAm +QnoF5DFm+AXR/ZdfrpMK2UVso98y7hF4gy+6Nhd2mIPWCPsxDoF9V4AQPN4NSw0C +AwEAAaN7MHkwCQYDVR0TBAIwADAsBglghkgBhvhCAQ0EHxYdT3BlblNTTCBHZW5l +cmF0ZWQgQ2VydGlmaWNhdGUwHQYDVR0OBBYEFCDOolSZzyKaXLvUHrAeQ3Njcqre +MB8GA1UdIwQYMBaAFLCfZzMsiIiJH0RidJ0l/8AGE13WMA0GCSqGSIb3DQEBCwUA +A4IBgQAzZSiYlJv1Vw2/AsJnk46OdwObx3pHUymk3aahXioK7RkCgJCzlx8GTJzF +X2wW+RL73dopiLcskQurU3l6bnYg/vqxmcIrUCZ7zIx1mDWVeVZDkKCVXpgJEE3q +wBy7wHunipshcIVlg03uZe8Q02OV/VGdbEF7r6+c5zR0oXqGCo7yKgZod3b6/GS8 +KB2LU3rPYg+HqYVUjKVBw2ELz5bB+oGlMWPzyxc3WG7ZMJf7Vy8xY+gmDoJJ4qmb +7Tl7JE5CjTR0Oty3xdYV6WYoLTzgJkR2ZkoylBHIHxyy3ERpY/cth7WJSkD75BRo +3Ip2QJM14qyaS7yvxYqKOFTvaQFMkq/AB9AvejyeQKxWB9ArH1/QRPlw4URENLr7 +PVSFSx266upqkQwIMC28uOoiwRZ7U/5ALI31xsI55hEd4i9Qpnac/bn61RB5DuUC +h32W44EFecmj2PKgsYsOjTNzFW8niIUDisV6d/Q/f7hll1ugpiFIZyyic6Ls1mq9 +1vLisVs= +-----END CERTIFICATE----- diff --git a/tests/testsuites/x.509/crl.pem b/tests/testsuites/x.509/crl.pem new file mode 100644 index 0000000..23a1a83 --- /dev/null +++ b/tests/testsuites/x.509/crl.pem @@ -0,0 +1,14 @@ +-----BEGIN X509 CRL----- +MIICIjCBizANBgkqhkiG9w0BAQsFADBEMREwDwYDVQQDEwhzb21lTmFtZTEQMA4G +A1UECxMHcnN5c2xvZzEQMA4GA1UEChMHU29tZU9yZzELMAkGA1UEBhMCVVMXDTIz +MDcxMTA3NTEyM1oYDzIxMjMwNjE3MDc1MTIzWjAUMBICAQIXDTIzMDcwNjEzMDEw +MFowDQYJKoZIhvcNAQELBQADggGBAA4MRtKKvN+qIIULqf80EG3Zy+6BhPc+4GGD +bB6tHzBf/G+S931yxQB6yXgoHv9SdR0ZDj28gGG0c6YBYiBID6MecRreEZkBzbNg +3YsLpAQsE9ZO6pBancjbkhg3ikdACBaWrsQLFaVsZCGyAJN5kL0jzE/aoGmvKLpQ +NXmQo3+/IuJ+jes/vEcG6LyCyr0LKbbFNdj/VsF7KIRjY2BP995rz/X6mWoS8fP0 +hIE3G4NC+BeWBAi/txwlkxl8AXsQW+AZNCFR9/9k1LIBE/5MY4rEn60PoR4QIqja +cKdEkhvkBM8gNkthKplA1wfDMXzhXilwW4uRjF//Oiz97rBg4JYkNw1hEsK97SPT +E2dtXZ2I0mBR32twVRvRdp14VHGo/EHPnTPBwJZSuiKPCQjGX61xzJdHfu1oGpW+ +E3R4AWlfzpUnCeA3uERsukJbdJmgPYz4tkfSil2//9wHLxuJHokl3wrQ87Rt+YDB +CnYqvamCfmQQeXp1waXOE94lTLV0RA== +-----END X509 CRL----- diff --git a/tests/testsuites/x.509/index.txt b/tests/testsuites/x.509/index.txt new file mode 100644 index 0000000..ee97457 --- /dev/null +++ b/tests/testsuites/x.509/index.txt @@ -0,0 +1,3 @@ +R 21230612125925Z 230706130100Z 02 unknown /C=DE/ST=NRW/O=Adiscon GmbH/OU=rsyslog/CN=rsyslog revoked certificate test/emailAddress=alorbach@adiscon.com +V 21230612133806Z 03 unknown /C=DE/ST=NRW/O=Adiscon GmbH/OU=rsyslog/CN=rsyslog revoked certificate test/emailAddress=alorbach@adiscon.com +V 21230612135250Z 04 unknown /C=US/ST=CA/O=SomeComp/OU=SomeUnit/CN=rsyslog/emailAddress=alorbach@adiscon.com diff --git a/tests/testsuites/x.509/index.txt.attr b/tests/testsuites/x.509/index.txt.attr new file mode 100644 index 0000000..8f7e63a --- /dev/null +++ b/tests/testsuites/x.509/index.txt.attr @@ -0,0 +1 @@ +unique_subject = yes diff --git a/tests/testsuites/x.509/machine-cert.pem b/tests/testsuites/x.509/machine-cert.pem new file mode 100644 index 0000000..def6e7e --- /dev/null +++ b/tests/testsuites/x.509/machine-cert.pem @@ -0,0 +1,27 @@ +-----BEGIN CERTIFICATE----- +MIIEmjCCAwKgAwIBAgIIXBegQDWsgowwDQYJKoZIhvcNAQELBQAwRDERMA8GA1UE +AxMIc29tZU5hbWUxEDAOBgNVBAsTB3JzeXNsb2cxEDAOBgNVBAoTB1NvbWVPcmcx +CzAJBgNVBAYTAlVTMCAXDTE4MTIxNzEzMTAyNloYDzIxMTgxMTIzMTMxMDI4WjBR +MQ8wDQYDVQQLEwZTb21lT1UxEDAOBgNVBAoTB1NvbWVPcmcxEjAQBgNVBAcTCVNv +bWV3aGVyZTELMAkGA1UECBMCQ0ExCzAJBgNVBAYTAlVTMIIBojANBgkqhkiG9w0B +AQEFAAOCAY8AMIIBigKCAYEAvYhZDSdPcxBgjF+sgQZ10YPuIXIzoiq4G943OGFX +EdMc0kdaVQcCKkR4raPMR0wKs57akpiN5CrU1HvkwYZbTNB/BpyhUuZnx2qjTRyO +pB71k62z7HP3KAI/GYfEMX5DNPS0X3B7chkAT4Sk1Xdn3WjW3BVt3GK4XdWmG2M0 +cmsYaFvijFJDi6Fs8fy/5sG2x+WBwct1Kt8HnjfR+nh00YhgiqOdX1jOrDN29XHk +n4GIEm/BRQRQ0/PoOa6VWGVVxu+8sfmM7IJ8kC5/QII3PFZCplqPnxFYd3C0Wa6v +au+tYisJ9B5CB/fn9ars7H6nFMc1D38G/sVkspdJrFuFbQLElkH7ydxBZBv3O+fl +Iomav/+JL1PiNHFtXxoGsTOPHHFKbqauxLuTbv9B5D1tO/MaxOBTt9MVMx8rDpVB +y0spKhfWcxJ/0Hge7G9XrFGpN4joBPHPMghM8QjS9/EL8r98m8PNQk6OIG9TNeQC +gzglQIV3K+rhFwTeeyetxDozAgMBAAGjgYAwfjAMBgNVHRMBAf8EAjAAMB0GA1Ud +JQQWMBQGCCsGAQUFBwMCBggrBgEFBQcDATAPBgNVHQ8BAf8EBQMDB6AAMB0GA1Ud +DgQWBBQ3rDq/2kYOFskMD0lHFG+g2Ej/2zAfBgNVHSMEGDAWgBSwn2czLIiIiR9E +YnSdJf/ABhNd1jANBgkqhkiG9w0BAQsFAAOCAYEARbJDuWZiqwA/CU9Eh99POTOk +fnWdog8tLaOPLFS5mCiLNDmTXX14syAAjhbRrJ+43j1HWXbgovzDqzFtQzbztCMB +qpxQy3d3R9nUKv6NpNT/IO84OcYuiMtRGr/AaVqc2PZlFirBqlQkxFUxiDc2pIhy +h2orOJrPu3jSQdWI1PDT6oWKCwHdU+obqh+NmRWwjetpmeJ5r/kgAlZJ1krlNPJU +V3U/J9WTdOYMhLcn4RcNOTAyrmxOoTEIOcqkXzJOypbkMcZic+OHCaDohUsfdOkB +Xxz+6nP4xqnOcyHBLNTjVVrnr+wyqsWA18HoyLiCluf946S6mVoXcxwvWHzz7VVm +qHVppLVD/iOJxtl4bm8YEYjO4C1IPxWOCszG4N71Reyo/+p1UJ8Ww6IAgJj0jX2l +L7pqCwZKXhd8+LT05dZr7YJV/EjmGV/pL6IU3RAk6s2BqgtTkvy5nnmSPjBFuxG/ +gUBfaglsXC6w6R1aMVr9m3E1ht4vOPu9Qx7E21oG +-----END CERTIFICATE----- diff --git a/tests/testsuites/x.509/machine-key.pem b/tests/testsuites/x.509/machine-key.pem new file mode 100644 index 0000000..2958202 --- /dev/null +++ b/tests/testsuites/x.509/machine-key.pem @@ -0,0 +1,182 @@ +Public Key Info: + Public Key Algorithm: RSA + Key Security Level: High (3072 bits) + +modulus: + 00:bd:88:59:0d:27:4f:73:10:60:8c:5f:ac:81:06:75 + d1:83:ee:21:72:33:a2:2a:b8:1b:de:37:38:61:57:11 + d3:1c:d2:47:5a:55:07:02:2a:44:78:ad:a3:cc:47:4c + 0a:b3:9e:da:92:98:8d:e4:2a:d4:d4:7b:e4:c1:86:5b + 4c:d0:7f:06:9c:a1:52:e6:67:c7:6a:a3:4d:1c:8e:a4 + 1e:f5:93:ad:b3:ec:73:f7:28:02:3f:19:87:c4:31:7e + 43:34:f4:b4:5f:70:7b:72:19:00:4f:84:a4:d5:77:67 + dd:68:d6:dc:15:6d:dc:62:b8:5d:d5:a6:1b:63:34:72 + 6b:18:68:5b:e2:8c:52:43:8b:a1:6c:f1:fc:bf:e6:c1 + b6:c7:e5:81:c1:cb:75:2a:df:07:9e:37:d1:fa:78:74 + d1:88:60:8a:a3:9d:5f:58:ce:ac:33:76:f5:71:e4:9f + 81:88:12:6f:c1:45:04:50:d3:f3:e8:39:ae:95:58:65 + 55:c6:ef:bc:b1:f9:8c:ec:82:7c:90:2e:7f:40:82:37 + 3c:56:42:a6:5a:8f:9f:11:58:77:70:b4:59:ae:af:6a + ef:ad:62:2b:09:f4:1e:42:07:f7:e7:f5:aa:ec:ec:7e + a7:14:c7:35:0f:7f:06:fe:c5:64:b2:97:49:ac:5b:85 + 6d:02:c4:96:41:fb:c9:dc:41:64:1b:f7:3b:e7:e5:22 + 89:9a:bf:ff:89:2f:53:e2:34:71:6d:5f:1a:06:b1:33 + 8f:1c:71:4a:6e:a6:ae:c4:bb:93:6e:ff:41:e4:3d:6d + 3b:f3:1a:c4:e0:53:b7:d3:15:33:1f:2b:0e:95:41:cb + 4b:29:2a:17:d6:73:12:7f:d0:78:1e:ec:6f:57:ac:51 + a9:37:88:e8:04:f1:cf:32:08:4c:f1:08:d2:f7:f1:0b + f2:bf:7c:9b:c3:cd:42:4e:8e:20:6f:53:35:e4:02:83 + 38:25:40:85:77:2b:ea:e1:17:04:de:7b:27:ad:c4:3a + 33: + +public exponent: + 01:00:01: + +private exponent: + 19:dd:b1:c9:89:c3:de:00:2e:2c:fa:21:a0:ba:30:fa + 16:f7:38:b9:4d:32:a4:81:db:cb:c7:dd:79:eb:58:13 + 67:ab:8a:f1:59:09:4b:d2:58:e5:df:4c:ab:64:4f:8c + 66:57:17:9d:4a:14:93:3f:05:2c:ba:7b:cd:ad:78:68 + 53:4c:02:aa:fd:99:42:b8:87:0e:96:9a:bf:7a:f8:0b + 01:98:d5:eb:e8:29:2b:61:da:6c:a2:1f:55:37:2b:f4 + 20:16:05:47:c1:22:17:c0:31:ba:a8:6f:96:72:65:4a + 62:34:70:74:bc:39:87:7f:81:ce:d6:8c:86:4d:72:10 + 0b:94:b2:75:88:90:f1:86:ec:d0:e1:75:8c:fb:01:14 + e0:d3:01:92:61:21:ec:67:e3:b2:44:0b:f4:12:dc:5e + 7c:2e:30:bd:83:8c:af:a2:04:fe:41:0d:de:2d:45:57 + 78:2a:8b:f5:e4:65:62:62:8a:b6:f6:a8:4c:d9:73:7a + b5:15:d0:91:c7:89:a9:45:94:00:0c:1d:69:f0:48:f7 + 26:83:50:bd:b3:e7:7e:70:8b:21:bf:99:fd:04:d2:8a + d2:b1:be:9e:4b:a7:f1:57:8f:34:c0:b9:f0:22:d8:bf + 3f:fa:8c:77:47:7d:62:d4:5c:d8:08:1b:dd:3c:a2:c3 + 60:25:84:be:02:a2:79:00:e4:06:c8:48:49:43:ac:9f + 45:78:c9:46:0a:9a:1f:5b:70:d1:da:b6:e6:f1:fc:af + a5:85:c6:7b:78:f0:5c:2c:91:1b:ba:36:62:f8:31:ed + 21:87:15:49:3c:c1:bf:53:a4:11:9a:19:91:51:aa:49 + ea:d8:b3:a4:66:76:2a:ad:8e:61:38:f5:7a:ba:59:bb + 2e:48:f3:fc:14:a1:42:18:e7:c6:c6:41:03:d4:ca:d6 + 85:14:cc:8b:1d:57:38:6f:ef:9e:14:34:85:38:92:ab + f8:24:f4:5b:14:6b:6a:3c:22:29:bb:36:51:68:43:81 + + +prime1: + 00:cd:49:91:cb:0a:37:19:fe:50:c0:9a:a0:c3:53:9b + fb:3c:e0:dc:2d:55:69:0e:cd:ea:e7:0c:a5:c1:34:a0 + b5:8d:72:45:da:9c:56:15:8b:31:3f:fb:93:d7:b0:81 + de:d1:9f:d8:c4:c1:ff:5a:d6:a8:15:c1:b6:c5:11:39 + 4f:e9:16:06:fb:be:90:d4:a2:9d:23:0a:b3:52:81:07 + d5:ae:2c:f5:bb:7e:32:62:59:f9:65:1f:ab:9b:3c:67 + 94:b7:e2:49:69:3d:c6:98:e4:3e:56:f9:0f:02:e1:6c + c2:da:10:3b:9d:39:e7:55:40:6d:ae:46:f6:b8:cc:30 + 2c:26:02:4f:65:a8:7c:38:47:9c:d8:96:ce:31:89:a4 + 07:91:de:4d:46:35:b0:8e:01:fd:ca:11:c2:c8:8e:71 + 32:eb:a0:61:da:10:db:8b:4d:ac:29:73:d2:b1:7c:d4 + d3:0d:ce:a2:88:ef:3b:d0:b4:2b:50:1f:62:c8:e6:d2 + 7d: + +prime2: + 00:ec:5a:71:35:ee:17:84:3a:0f:41:9b:44:e6:1e:f3 + e2:c6:31:09:cd:d6:af:4d:6a:ac:fc:c1:03:40:67:91 + 73:38:4e:a7:d1:2a:b9:25:a1:da:e9:77:9b:dd:e9:c2 + 1a:72:0b:11:97:90:04:23:a7:4d:e3:ad:29:6b:65:c6 + 63:8b:00:65:0a:7e:3d:46:b8:f7:4b:eb:a4:ee:cf:19 + 3e:a0:52:80:72:e7:9f:9c:8b:b1:d0:0b:e3:9c:34:1e + d2:7c:ac:e2:c2:90:69:2b:78:9c:c1:9a:84:7a:5b:dc + 99:83:a0:18:22:fc:30:c6:7e:1e:97:de:bc:66:71:26 + ec:f2:98:06:ce:62:53:d7:af:86:21:07:95:98:2c:2a + f4:4e:fe:58:a7:97:19:de:5a:4a:94:ee:98:d3:a0:77 + 9e:db:52:55:64:a4:fa:84:c3:a8:89:8a:97:22:93:a6 + f0:00:85:38:91:7a:52:98:2f:34:10:7e:92:9d:76:ae + 6f: + +coefficient: + 00:94:fa:06:8f:7e:8a:1d:be:16:55:80:93:01:0d:ab + 77:4b:d3:a5:14:37:ef:04:28:b3:91:d9:5f:df:e8:56 + d5:1d:bd:c1:25:e8:bf:69:49:04:2f:c1:73:73:27:64 + 66:3e:61:20:d5:25:db:ad:da:3d:e8:a3:a5:20:16:38 + 6b:28:18:83:97:07:67:6a:16:4b:7f:2b:da:6a:a5:1b + ec:9a:c3:2a:4f:5d:9e:7e:9b:05:a5:a8:bb:ab:76:27 + 1a:07:27:be:c8:65:94:e8:54:41:ba:1f:b3:91:5d:b1 + 5a:13:2b:b3:11:60:52:26:47:35:a7:46:bd:16:f9:e5 + 1e:4b:e9:48:33:aa:33:30:77:8e:71:e4:88:1c:1a:57 + af:17:77:76:65:d2:2b:a3:33:b8:ec:34:f8:23:03:5b + 90:cb:eb:a4:c0:ee:98:0f:9c:5e:73:11:bd:9e:01:99 + 79:4f:98:1e:12:25:62:88:3a:65:12:8f:67:45:40:af + 4b: + +exp1: + 30:f9:93:39:a0:47:43:01:44:1c:9f:07:29:72:41:ed + 2f:39:e9:ed:3a:ca:24:89:05:b8:77:70:f7:e5:e9:4d + 46:e0:73:3f:d3:3a:4a:4b:79:c5:6c:ec:79:71:97:9a + 23:e2:81:a1:77:32:c7:66:1c:95:8c:30:61:55:59:99 + f1:de:9a:6d:e6:a9:c0:c0:c6:c2:3c:64:49:93:94:dd + ea:7e:b9:65:30:97:2e:95:8e:85:0c:88:31:31:b8:f8 + 66:e2:2a:67:5c:20:8c:0b:2f:c0:2a:0c:e5:c0:07:e5 + 78:86:94:e2:4e:95:1c:e6:91:04:19:d3:f4:84:6a:1d + ae:37:b0:df:6c:d1:ad:cf:8f:e0:b0:21:a2:f9:d6:53 + 23:fe:a7:ea:cf:16:3e:da:c4:c4:37:76:83:c8:4f:c3 + 39:29:7b:0e:be:24:d2:58:06:71:a1:3b:2b:b2:bf:47 + 56:ac:ec:63:c4:c7:3d:64:2e:4d:20:1f:be:14:2b:35 + + +exp2: + 11:dd:bc:55:11:4c:61:c8:69:c2:d1:d3:e1:79:51:82 + 40:ed:10:0a:a9:41:d3:1e:4f:39:43:f5:d4:f6:7f:3e + 30:71:71:aa:14:0a:ae:d7:8f:4e:ba:a5:e3:9e:79:f7 + b9:cb:30:67:3e:91:b1:88:42:11:05:d3:ed:b4:61:cc + c0:83:25:20:27:ee:c5:db:d1:85:c1:a8:54:0c:ff:a1 + 86:48:f6:40:b9:55:8d:65:d9:e9:1a:1c:f8:7f:d0:1c + a5:24:04:78:24:a6:6e:8c:cd:7c:ad:0b:7a:9c:5b:0e + 97:ae:90:64:84:9f:c3:41:61:5a:a5:91:a4:44:c5:66 + 7f:e8:12:0b:a3:cf:26:ac:b3:fc:e7:2f:dd:b2:e9:04 + 52:bc:53:43:47:de:c2:ba:1c:8d:29:84:0f:eb:3f:5f + 98:c0:9e:87:df:18:b8:d4:79:76:fc:2c:f4:86:28:c6 + 57:a3:ba:64:f4:d4:2d:80:d3:f4:b3:3c:ad:fe:7c:ad + + + +Public Key PIN: + pin-sha256:P26XjPq8H830hYvKjSgxiVfBDOiZNDGexDfrJkKWi9o= +Public Key ID: + sha256:3f6e978cfabc1fcdf4858bca8d28318957c10ce89934319ec437eb2642968bda + sha1:37ac3abfda460e16c90c0f4947146fa0d848ffdb + +-----BEGIN RSA PRIVATE KEY----- +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 +-----END RSA PRIVATE KEY----- diff --git a/tests/testsuites/x.509/newcerts/01.pem b/tests/testsuites/x.509/newcerts/01.pem new file mode 100644 index 0000000..b4bf169 --- /dev/null +++ b/tests/testsuites/x.509/newcerts/01.pem @@ -0,0 +1,92 @@ +Certificate: + Data: + Version: 3 (0x2) + Serial Number: 1 (0x1) + Signature Algorithm: sha256WithRSAEncryption + Issuer: CN=someName, OU=rsyslog, O=SomeOrg, C=US + Validity + Not Before: Jul 6 12:57:29 2023 GMT + Not After : Jun 12 12:57:29 2123 GMT + Subject: C=DE, ST=NRW, O=Adiscon GmbH, OU=rsyslog, CN=rsyslog revoked certificate test/emailAddress=alorbach@adiscon.com + Subject Public Key Info: + Public Key Algorithm: rsaEncryption + RSA Public-Key: (2048 bit) + Modulus: + 00:bf:fe:14:5d:e9:9c:6c:67:15:3c:d4:49:9d:5b: + 2a:ea:43:c2:bc:9e:d0:3a:5e:55:2f:68:00:2b:0b: + da:dc:cf:f7:d9:a7:1b:a0:a3:31:dd:a8:07:13:9e: + dc:36:75:b8:34:ea:17:1a:f6:1d:db:33:1e:45:36: + 80:ae:9c:93:a6:02:4e:26:f8:07:de:1c:ce:9e:e7: + 4f:25:d7:59:24:49:5e:34:44:54:87:ab:e0:6d:5a: + 24:41:19:bf:33:c3:a5:11:d6:50:c0:f7:6d:2d:12: + 03:cc:0b:b9:ea:b2:85:5d:91:ad:84:ce:be:9b:0b: + c2:eb:01:97:b8:3a:dc:1c:b8:d2:43:e8:96:5e:f0: + 84:e2:98:18:7b:15:c6:af:0c:bb:8e:98:96:21:7b: + cd:6f:0d:9f:84:59:bf:91:a8:ba:6a:c9:bc:5f:4a: + f3:12:4d:33:e7:dc:b0:38:e9:71:d8:ef:d0:fd:9e: + 1f:d0:5a:bb:a9:3a:91:d8:1e:a7:9e:fa:ac:13:5b: + a3:ad:e8:87:0b:f4:b5:f8:a8:0d:a7:b1:59:40:26: + 42:7a:05:e4:31:66:f8:05:d1:fd:97:5f:ae:93:0a: + d9:45:6c:a3:df:32:ee:11:78:83:2f:ba:36:17:76: + 98:83:d6:08:fb:31:0e:81:7d:57:80:10:3c:de:0d: + 4b:0d + Exponent: 65537 (0x10001) + X509v3 extensions: + X509v3 Basic Constraints: + CA:FALSE + Netscape Comment: + OpenSSL Generated Certificate + X509v3 Subject Key Identifier: + 20:CE:A2:54:99:CF:22:9A:5C:BB:D4:1E:B0:1E:43:73:63:72:AA:DE + X509v3 Authority Key Identifier: + keyid:B0:9F:67:33:2C:88:88:89:1F:44:62:74:9D:25:FF:C0:06:13:5D:D6 + + Signature Algorithm: sha256WithRSAEncryption + 60:37:92:c5:17:64:ed:64:a3:28:c2:81:60:a2:20:ac:e4:2d: + ce:bd:4b:4c:6e:ea:70:a1:2c:2d:d9:1c:94:cb:d1:81:ca:53: + c2:51:24:af:da:af:90:11:98:52:da:25:2b:19:59:82:58:d6: + 84:a5:63:d4:89:05:a9:12:bf:5d:8b:c8:1f:27:b0:a7:65:7e: + 0c:18:b7:3d:4e:ec:c5:34:b3:d3:92:f7:de:e5:19:1b:b9:e8: + 47:a7:ca:22:13:c4:63:4f:44:09:70:e2:90:f3:a7:5e:e0:5d: + 9c:f7:be:ea:1e:88:e7:c2:d3:b6:35:6d:b0:3b:84:8f:03:94: + a8:c0:c1:ed:27:17:9a:4d:f7:33:23:1e:76:3a:63:38:f0:59: + 39:98:ce:89:4b:2a:89:0e:12:bf:25:b5:d6:04:20:88:f0:65: + 9d:70:90:67:e8:28:8e:09:fa:d9:ab:c9:a9:0f:28:63:10:bb: + 24:2d:44:2f:6b:fb:7c:d2:38:01:ab:d2:33:2d:50:f4:75:80: + 9e:4f:d2:26:6c:31:23:44:8e:d5:a3:51:56:cf:d9:38:f6:d0: + 84:c0:fb:6f:c1:66:9c:e7:dd:51:4f:42:bb:d7:cc:ba:35:e1: + c6:a2:5c:4b:f2:1e:b7:e2:52:a5:83:97:ab:42:09:54:04:ed: + 4f:01:2d:cf:ee:44:b4:da:39:5c:da:30:d5:92:b6:04:11:8b: + 04:d7:6a:3a:28:6e:54:97:97:99:a3:ba:3a:48:1a:17:ef:49: + 05:fd:c5:e6:3f:c1:7c:ac:b0:45:62:ff:15:fd:13:1b:04:ba: + 72:23:32:0a:b8:4d:39:9a:31:15:4c:0a:d0:ef:a2:82:8f:2e: + ad:3c:23:dd:59:12:08:6f:e0:5b:5e:5c:29:db:74:ff:8c:08: + 43:59:6a:a1:57:df:37:02:53:16:14:f7:c5:4b:47:61:1e:86: + aa:2d:46:4d:b3:85:8a:ac:c3:8c:b5:87:90:01:4c:33:91:96: + 38:95:06:a7:36:90 +-----BEGIN CERTIFICATE----- +MIIEUTCCArmgAwIBAgIBATANBgkqhkiG9w0BAQsFADBEMREwDwYDVQQDEwhzb21l +TmFtZTEQMA4GA1UECxMHcnN5c2xvZzEQMA4GA1UEChMHU29tZU9yZzELMAkGA1UE +BhMCVVMwIBcNMjMwNzA2MTI1NzI5WhgPMjEyMzA2MTIxMjU3MjlaMIGUMQswCQYD +VQQGEwJERTEMMAoGA1UECAwDTlJXMRUwEwYDVQQKDAxBZGlzY29uIEdtYkgxEDAO +BgNVBAsMB3JzeXNsb2cxKTAnBgNVBAMMIHJzeXNsb2cgcmV2b2tlZCBjZXJ0aWZp +Y2F0ZSB0ZXN0MSMwIQYJKoZIhvcNAQkBFhRhbG9yYmFjaEBhZGlzY29uLmNvbTCC +ASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAL/+FF3pnGxnFTzUSZ1bKupD +wrye0DpeVS9oACsL2tzP99mnG6CjMd2oBxOe3DZ1uDTqFxr2HdszHkU2gK6ck6YC +Tib4B94czp7nTyXXWSRJXjREVIer4G1aJEEZvzPDpRHWUMD3bS0SA8wLueqyhV2R +rYTOvpsLwusBl7g63By40kPoll7whOKYGHsVxq8Mu46YliF7zW8Nn4RZv5GoumrJ +vF9K8xJNM+fcsDjpcdjv0P2eH9Bau6k6kdgep576rBNbo63ohwv0tfioDaexWUAm +QnoF5DFm+AXR/ZdfrpMK2UVso98y7hF4gy+6Nhd2mIPWCPsxDoF9V4AQPN4NSw0C +AwEAAaN7MHkwCQYDVR0TBAIwADAsBglghkgBhvhCAQ0EHxYdT3BlblNTTCBHZW5l +cmF0ZWQgQ2VydGlmaWNhdGUwHQYDVR0OBBYEFCDOolSZzyKaXLvUHrAeQ3Njcqre +MB8GA1UdIwQYMBaAFLCfZzMsiIiJH0RidJ0l/8AGE13WMA0GCSqGSIb3DQEBCwUA +A4IBgQBgN5LFF2TtZKMowoFgoiCs5C3OvUtMbupwoSwt2RyUy9GBylPCUSSv2q+Q +EZhS2iUrGVmCWNaEpWPUiQWpEr9di8gfJ7CnZX4MGLc9TuzFNLPTkvfe5RkbuehH +p8oiE8RjT0QJcOKQ86de4F2c977qHojnwtO2NW2wO4SPA5SowMHtJxeaTfczIx52 +OmM48Fk5mM6JSyqJDhK/JbXWBCCI8GWdcJBn6CiOCfrZq8mpDyhjELskLUQva/t8 +0jgBq9IzLVD0dYCeT9ImbDEjRI7Vo1FWz9k49tCEwPtvwWac591RT0K718y6NeHG +olxL8h634lKlg5erQglUBO1PAS3P7kS02jlc2jDVkrYEEYsE12o6KG5Ul5eZo7o6 +SBoX70kF/cXmP8F8rLBFYv8V/RMbBLpyIzIKuE05mjEVTArQ76KCjy6tPCPdWRII +b+BbXlwp23T/jAhDWWqhV983AlMWFPfFS0dhHoaqLUZNs4WKrMOMtYeQAUwzkZY4 +lQanNpA= +-----END CERTIFICATE----- diff --git a/tests/testsuites/x.509/newcerts/02.pem b/tests/testsuites/x.509/newcerts/02.pem new file mode 100644 index 0000000..b64b2a9 --- /dev/null +++ b/tests/testsuites/x.509/newcerts/02.pem @@ -0,0 +1,92 @@ +Certificate: + Data: + Version: 3 (0x2) + Serial Number: 2 (0x2) + Signature Algorithm: sha256WithRSAEncryption + Issuer: CN=someName, OU=rsyslog, O=SomeOrg, C=US + Validity + Not Before: Jul 6 12:59:25 2023 GMT + Not After : Jun 12 12:59:25 2123 GMT + Subject: C=DE, ST=NRW, O=Adiscon GmbH, OU=rsyslog, CN=rsyslog revoked certificate test/emailAddress=alorbach@adiscon.com + Subject Public Key Info: + Public Key Algorithm: rsaEncryption + RSA Public-Key: (2048 bit) + Modulus: + 00:bf:fe:14:5d:e9:9c:6c:67:15:3c:d4:49:9d:5b: + 2a:ea:43:c2:bc:9e:d0:3a:5e:55:2f:68:00:2b:0b: + da:dc:cf:f7:d9:a7:1b:a0:a3:31:dd:a8:07:13:9e: + dc:36:75:b8:34:ea:17:1a:f6:1d:db:33:1e:45:36: + 80:ae:9c:93:a6:02:4e:26:f8:07:de:1c:ce:9e:e7: + 4f:25:d7:59:24:49:5e:34:44:54:87:ab:e0:6d:5a: + 24:41:19:bf:33:c3:a5:11:d6:50:c0:f7:6d:2d:12: + 03:cc:0b:b9:ea:b2:85:5d:91:ad:84:ce:be:9b:0b: + c2:eb:01:97:b8:3a:dc:1c:b8:d2:43:e8:96:5e:f0: + 84:e2:98:18:7b:15:c6:af:0c:bb:8e:98:96:21:7b: + cd:6f:0d:9f:84:59:bf:91:a8:ba:6a:c9:bc:5f:4a: + f3:12:4d:33:e7:dc:b0:38:e9:71:d8:ef:d0:fd:9e: + 1f:d0:5a:bb:a9:3a:91:d8:1e:a7:9e:fa:ac:13:5b: + a3:ad:e8:87:0b:f4:b5:f8:a8:0d:a7:b1:59:40:26: + 42:7a:05:e4:31:66:f8:05:d1:fd:97:5f:ae:93:0a: + d9:45:6c:a3:df:32:ee:11:78:83:2f:ba:36:17:76: + 98:83:d6:08:fb:31:0e:81:7d:57:80:10:3c:de:0d: + 4b:0d + Exponent: 65537 (0x10001) + X509v3 extensions: + X509v3 Basic Constraints: + CA:FALSE + Netscape Comment: + OpenSSL Generated Certificate + X509v3 Subject Key Identifier: + 20:CE:A2:54:99:CF:22:9A:5C:BB:D4:1E:B0:1E:43:73:63:72:AA:DE + X509v3 Authority Key Identifier: + keyid:B0:9F:67:33:2C:88:88:89:1F:44:62:74:9D:25:FF:C0:06:13:5D:D6 + + Signature Algorithm: sha256WithRSAEncryption + 33:65:28:98:94:9b:f5:57:0d:bf:02:c2:67:93:8e:8e:77:03: + 9b:c7:7a:47:53:29:a4:dd:a6:a1:5e:2a:0a:ed:19:02:80:90: + b3:97:1f:06:4c:9c:c5:5f:6c:16:f9:12:fb:dd:da:29:88:b7: + 2c:91:0b:ab:53:79:7a:6e:76:20:fe:fa:b1:99:c2:2b:50:26: + 7b:cc:8c:75:98:35:95:79:56:43:90:a0:95:5e:98:09:10:4d: + ea:c0:1c:bb:c0:7b:a7:8a:9b:21:70:85:65:83:4d:ee:65:ef: + 10:d3:63:95:fd:51:9d:6c:41:7b:af:af:9c:e7:34:74:a1:7a: + 86:0a:8e:f2:2a:06:68:77:76:fa:fc:64:bc:28:1d:8b:53:7a: + cf:62:0f:87:a9:85:54:8c:a5:41:c3:61:0b:cf:96:c1:fa:81: + a5:31:63:f3:cb:17:37:58:6e:d9:30:97:fb:57:2f:31:63:e8: + 26:0e:82:49:e2:a9:9b:ed:39:7b:24:4e:42:8d:34:74:3a:dc: + b7:c5:d6:15:e9:66:28:2d:3c:e0:26:44:76:66:4a:32:94:11: + c8:1f:1c:b2:dc:44:69:63:f7:2d:87:b5:89:4a:40:fb:e4:14: + 68:dc:8a:76:40:93:35:e2:ac:9a:4b:bc:af:c5:8a:8a:38:54: + ef:69:01:4c:92:af:c0:07:d0:2f:7a:3c:9e:40:ac:56:07:d0: + 2b:1f:5f:d0:44:f9:70:e1:44:44:34:ba:fb:3d:54:85:4b:1d: + ba:ea:ea:6a:91:0c:08:30:2d:bc:b8:ea:22:c1:16:7b:53:fe: + 40:2c:8d:f5:c6:c2:39:e6:11:1d:e2:2f:50:a6:76:9c:fd:b9: + fa:d5:10:79:0e:e5:02:87:7d:96:e3:81:05:79:c9:a3:d8:f2: + a0:b1:8b:0e:8d:33:73:15:6f:27:88:85:03:8a:c5:7a:77:f4: + 3f:7f:b8:65:97:5b:a0:a6:21:48:67:2c:a2:73:a2:ec:d6:6a: + bd:d6:f2:e2:b1:5b +-----BEGIN CERTIFICATE----- +MIIEUTCCArmgAwIBAgIBAjANBgkqhkiG9w0BAQsFADBEMREwDwYDVQQDEwhzb21l +TmFtZTEQMA4GA1UECxMHcnN5c2xvZzEQMA4GA1UEChMHU29tZU9yZzELMAkGA1UE +BhMCVVMwIBcNMjMwNzA2MTI1OTI1WhgPMjEyMzA2MTIxMjU5MjVaMIGUMQswCQYD +VQQGEwJERTEMMAoGA1UECAwDTlJXMRUwEwYDVQQKDAxBZGlzY29uIEdtYkgxEDAO +BgNVBAsMB3JzeXNsb2cxKTAnBgNVBAMMIHJzeXNsb2cgcmV2b2tlZCBjZXJ0aWZp +Y2F0ZSB0ZXN0MSMwIQYJKoZIhvcNAQkBFhRhbG9yYmFjaEBhZGlzY29uLmNvbTCC +ASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAL/+FF3pnGxnFTzUSZ1bKupD +wrye0DpeVS9oACsL2tzP99mnG6CjMd2oBxOe3DZ1uDTqFxr2HdszHkU2gK6ck6YC +Tib4B94czp7nTyXXWSRJXjREVIer4G1aJEEZvzPDpRHWUMD3bS0SA8wLueqyhV2R +rYTOvpsLwusBl7g63By40kPoll7whOKYGHsVxq8Mu46YliF7zW8Nn4RZv5GoumrJ +vF9K8xJNM+fcsDjpcdjv0P2eH9Bau6k6kdgep576rBNbo63ohwv0tfioDaexWUAm +QnoF5DFm+AXR/ZdfrpMK2UVso98y7hF4gy+6Nhd2mIPWCPsxDoF9V4AQPN4NSw0C +AwEAAaN7MHkwCQYDVR0TBAIwADAsBglghkgBhvhCAQ0EHxYdT3BlblNTTCBHZW5l +cmF0ZWQgQ2VydGlmaWNhdGUwHQYDVR0OBBYEFCDOolSZzyKaXLvUHrAeQ3Njcqre +MB8GA1UdIwQYMBaAFLCfZzMsiIiJH0RidJ0l/8AGE13WMA0GCSqGSIb3DQEBCwUA +A4IBgQAzZSiYlJv1Vw2/AsJnk46OdwObx3pHUymk3aahXioK7RkCgJCzlx8GTJzF +X2wW+RL73dopiLcskQurU3l6bnYg/vqxmcIrUCZ7zIx1mDWVeVZDkKCVXpgJEE3q +wBy7wHunipshcIVlg03uZe8Q02OV/VGdbEF7r6+c5zR0oXqGCo7yKgZod3b6/GS8 +KB2LU3rPYg+HqYVUjKVBw2ELz5bB+oGlMWPzyxc3WG7ZMJf7Vy8xY+gmDoJJ4qmb +7Tl7JE5CjTR0Oty3xdYV6WYoLTzgJkR2ZkoylBHIHxyy3ERpY/cth7WJSkD75BRo +3Ip2QJM14qyaS7yvxYqKOFTvaQFMkq/AB9AvejyeQKxWB9ArH1/QRPlw4URENLr7 +PVSFSx266upqkQwIMC28uOoiwRZ7U/5ALI31xsI55hEd4i9Qpnac/bn61RB5DuUC +h32W44EFecmj2PKgsYsOjTNzFW8niIUDisV6d/Q/f7hll1ugpiFIZyyic6Ls1mq9 +1vLisVs= +-----END CERTIFICATE----- diff --git a/tests/testsuites/x.509/newcerts/03.pem b/tests/testsuites/x.509/newcerts/03.pem new file mode 100644 index 0000000..8bc2b8a --- /dev/null +++ b/tests/testsuites/x.509/newcerts/03.pem @@ -0,0 +1,92 @@ +Certificate: + Data: + Version: 3 (0x2) + Serial Number: 3 (0x3) + Signature Algorithm: sha256WithRSAEncryption + Issuer: CN=someName, OU=rsyslog, O=SomeOrg, C=US + Validity + Not Before: Jul 6 13:38:06 2023 GMT + Not After : Jun 12 13:38:06 2123 GMT + Subject: C=DE, ST=NRW, O=Adiscon GmbH, OU=rsyslog, CN=rsyslog revoked certificate test/emailAddress=alorbach@adiscon.com + Subject Public Key Info: + Public Key Algorithm: rsaEncryption + RSA Public-Key: (2048 bit) + Modulus: + 00:bf:fe:14:5d:e9:9c:6c:67:15:3c:d4:49:9d:5b: + 2a:ea:43:c2:bc:9e:d0:3a:5e:55:2f:68:00:2b:0b: + da:dc:cf:f7:d9:a7:1b:a0:a3:31:dd:a8:07:13:9e: + dc:36:75:b8:34:ea:17:1a:f6:1d:db:33:1e:45:36: + 80:ae:9c:93:a6:02:4e:26:f8:07:de:1c:ce:9e:e7: + 4f:25:d7:59:24:49:5e:34:44:54:87:ab:e0:6d:5a: + 24:41:19:bf:33:c3:a5:11:d6:50:c0:f7:6d:2d:12: + 03:cc:0b:b9:ea:b2:85:5d:91:ad:84:ce:be:9b:0b: + c2:eb:01:97:b8:3a:dc:1c:b8:d2:43:e8:96:5e:f0: + 84:e2:98:18:7b:15:c6:af:0c:bb:8e:98:96:21:7b: + cd:6f:0d:9f:84:59:bf:91:a8:ba:6a:c9:bc:5f:4a: + f3:12:4d:33:e7:dc:b0:38:e9:71:d8:ef:d0:fd:9e: + 1f:d0:5a:bb:a9:3a:91:d8:1e:a7:9e:fa:ac:13:5b: + a3:ad:e8:87:0b:f4:b5:f8:a8:0d:a7:b1:59:40:26: + 42:7a:05:e4:31:66:f8:05:d1:fd:97:5f:ae:93:0a: + d9:45:6c:a3:df:32:ee:11:78:83:2f:ba:36:17:76: + 98:83:d6:08:fb:31:0e:81:7d:57:80:10:3c:de:0d: + 4b:0d + Exponent: 65537 (0x10001) + X509v3 extensions: + X509v3 Basic Constraints: + CA:FALSE + Netscape Comment: + OpenSSL Generated Certificate + X509v3 Subject Key Identifier: + 20:CE:A2:54:99:CF:22:9A:5C:BB:D4:1E:B0:1E:43:73:63:72:AA:DE + X509v3 Authority Key Identifier: + keyid:B0:9F:67:33:2C:88:88:89:1F:44:62:74:9D:25:FF:C0:06:13:5D:D6 + + Signature Algorithm: sha256WithRSAEncryption + 65:ac:7c:30:d0:01:ce:d7:ff:28:61:6c:8d:99:15:ce:45:22: + 8a:39:70:a4:a6:ce:48:94:e3:4b:8c:be:55:c4:66:96:49:49: + 4b:e0:4c:95:fd:73:02:54:3a:df:34:2f:96:16:48:ec:c2:23: + 3d:ee:b4:5a:dd:a0:c9:eb:85:f4:fd:e8:d5:8f:f3:dc:ce:4a: + 88:bb:be:19:81:3f:8b:0f:09:23:46:14:c9:f5:35:5a:cf:25: + 7c:92:df:b9:90:5d:ff:4f:21:40:9c:24:7c:0f:1f:3f:62:d1: + 7b:cc:40:7d:c6:61:49:f3:84:26:78:ed:87:70:06:9c:93:05: + a5:c4:7e:60:3d:d0:4a:2c:e4:d6:e5:33:f8:07:dd:5a:0e:9a: + 93:17:50:29:1a:ff:66:61:d9:40:a7:fb:cc:7b:62:b7:9d:29: + 1a:2a:3d:7b:93:87:eb:52:4e:00:19:19:3c:4d:73:fc:3d:ed: + eb:9d:92:30:bc:b0:ed:51:15:ce:b7:3c:00:09:0c:9d:6d:8b: + 2b:c9:f5:66:d4:49:44:58:3d:e7:61:3d:6b:21:05:ff:1d:55: + 59:dd:e4:a6:2f:e5:96:82:eb:24:33:2e:47:61:a5:f8:4d:ab: + ad:fc:64:f8:8b:9e:0e:62:8c:16:1d:79:18:74:18:9c:a2:19: + c3:24:0d:6e:45:63:f9:08:92:7d:44:0b:96:c7:48:84:72:97: + 22:23:bf:10:0a:d7:4e:43:8a:db:60:cd:5d:80:5e:71:fa:c2: + b6:68:10:ee:cc:29:86:15:d3:d9:93:2a:cc:73:88:be:9f:ad: + d0:c5:9c:a4:e4:86:38:e7:41:84:3a:d0:f3:67:1f:2c:40:d7: + 04:b1:ea:32:13:49:a5:82:1a:a5:6c:3f:5f:dc:fd:55:14:03: + 8b:d7:bd:01:9e:bc:c5:e4:a1:a8:a8:9d:bc:cd:1f:5b:fc:df: + 59:b7:0d:aa:47:a0:08:cd:6e:f7:c8:9d:d3:dd:4e:8b:aa:cc: + 54:20:a0:2b:63:96 +-----BEGIN CERTIFICATE----- +MIIEUTCCArmgAwIBAgIBAzANBgkqhkiG9w0BAQsFADBEMREwDwYDVQQDEwhzb21l +TmFtZTEQMA4GA1UECxMHcnN5c2xvZzEQMA4GA1UEChMHU29tZU9yZzELMAkGA1UE +BhMCVVMwIBcNMjMwNzA2MTMzODA2WhgPMjEyMzA2MTIxMzM4MDZaMIGUMQswCQYD +VQQGEwJERTEMMAoGA1UECAwDTlJXMRUwEwYDVQQKDAxBZGlzY29uIEdtYkgxEDAO +BgNVBAsMB3JzeXNsb2cxKTAnBgNVBAMMIHJzeXNsb2cgcmV2b2tlZCBjZXJ0aWZp +Y2F0ZSB0ZXN0MSMwIQYJKoZIhvcNAQkBFhRhbG9yYmFjaEBhZGlzY29uLmNvbTCC +ASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAL/+FF3pnGxnFTzUSZ1bKupD +wrye0DpeVS9oACsL2tzP99mnG6CjMd2oBxOe3DZ1uDTqFxr2HdszHkU2gK6ck6YC +Tib4B94czp7nTyXXWSRJXjREVIer4G1aJEEZvzPDpRHWUMD3bS0SA8wLueqyhV2R +rYTOvpsLwusBl7g63By40kPoll7whOKYGHsVxq8Mu46YliF7zW8Nn4RZv5GoumrJ +vF9K8xJNM+fcsDjpcdjv0P2eH9Bau6k6kdgep576rBNbo63ohwv0tfioDaexWUAm +QnoF5DFm+AXR/ZdfrpMK2UVso98y7hF4gy+6Nhd2mIPWCPsxDoF9V4AQPN4NSw0C +AwEAAaN7MHkwCQYDVR0TBAIwADAsBglghkgBhvhCAQ0EHxYdT3BlblNTTCBHZW5l +cmF0ZWQgQ2VydGlmaWNhdGUwHQYDVR0OBBYEFCDOolSZzyKaXLvUHrAeQ3Njcqre +MB8GA1UdIwQYMBaAFLCfZzMsiIiJH0RidJ0l/8AGE13WMA0GCSqGSIb3DQEBCwUA +A4IBgQBlrHww0AHO1/8oYWyNmRXORSKKOXCkps5IlONLjL5VxGaWSUlL4EyV/XMC +VDrfNC+WFkjswiM97rRa3aDJ64X0/ejVj/PczkqIu74ZgT+LDwkjRhTJ9TVazyV8 +kt+5kF3/TyFAnCR8Dx8/YtF7zEB9xmFJ84QmeO2HcAackwWlxH5gPdBKLOTW5TP4 +B91aDpqTF1ApGv9mYdlAp/vMe2K3nSkaKj17k4frUk4AGRk8TXP8Pe3rnZIwvLDt +URXOtzwACQydbYsryfVm1ElEWD3nYT1rIQX/HVVZ3eSmL+WWguskMy5HYaX4Taut +/GT4i54OYowWHXkYdBicohnDJA1uRWP5CJJ9RAuWx0iEcpciI78QCtdOQ4rbYM1d +gF5x+sK2aBDuzCmGFdPZkyrMc4i+n63QxZyk5IY450GEOtDzZx8sQNcEseoyE0ml +ghqlbD9f3P1VFAOL170BnrzF5KGoqJ28zR9b/N9Ztw2qR6AIzW73yJ3T3U6LqsxU +IKArY5Y= +-----END CERTIFICATE----- diff --git a/tests/testsuites/x.509/newcerts/04.pem b/tests/testsuites/x.509/newcerts/04.pem new file mode 100644 index 0000000..e92ab86 --- /dev/null +++ b/tests/testsuites/x.509/newcerts/04.pem @@ -0,0 +1,102 @@ +Certificate: + Data: + Version: 3 (0x2) + Serial Number: 4 (0x4) + Signature Algorithm: sha256WithRSAEncryption + Issuer: CN=someName, OU=rsyslog, O=SomeOrg, C=US + Validity + Not Before: Jul 6 13:52:50 2023 GMT + Not After : Jun 12 13:52:50 2123 GMT + Subject: C=US, ST=CA, O=SomeComp, OU=SomeUnit, CN=rsyslog/emailAddress=alorbach@adiscon.com + Subject Public Key Info: + Public Key Algorithm: rsaEncryption + RSA Public-Key: (3072 bit) + Modulus: + 00:9d:91:da:d8:2e:3d:9d:ae:85:c3:c5:a7:f6:a4: + 66:f8:c8:91:91:b8:70:20:dc:ed:e8:23:ca:53:f7: + b8:52:43:f3:a7:eb:fb:df:8a:3b:2c:b0:13:fa:62: + d3:a1:53:a4:51:71:1f:68:d9:fd:bc:39:4a:fb:c9: + 6a:df:f3:88:84:b0:80:bc:c0:f5:1b:42:11:f6:4c: + 1a:d8:2c:62:0b:5d:50:64:30:9a:d3:db:c1:d5:7f: + 39:53:e4:bd:e8:1e:04:9d:c9:12:e0:e4:57:29:29: + 01:b9:f1:e5:bc:74:a6:e7:4b:61:e6:67:5c:6c:4e: + ee:ee:22:0c:1b:14:6d:e8:0c:6f:ee:ee:c3:b8:dd: + df:15:ed:7a:96:5b:cc:85:e5:e3:50:c4:ce:2b:bf: + b6:37:e6:20:fc:6e:45:7e:09:bd:84:7a:af:07:27: + f4:99:23:41:df:36:d8:29:31:a0:96:84:2f:fd:45: + 2e:d4:b4:f9:fa:dc:8f:23:c0:e0:06:ad:ad:0a:72: + da:f4:3b:a1:cb:d6:a6:3b:ec:46:c4:95:f2:71:a5: + ad:08:1f:e7:06:18:0e:db:80:51:96:ba:24:f6:64: + 02:6b:d3:f0:76:01:34:3a:72:02:e9:cb:d0:aa:62: + 51:0c:8f:83:be:c0:47:99:d2:92:72:ed:53:a5:49: + 05:d4:c9:a1:f4:4d:de:12:9d:1a:c8:17:84:f3:a2: + 7c:67:47:82:4b:86:1e:73:86:e2:26:26:10:94:a3: + 99:9b:08:99:78:9d:3d:33:5d:85:c2:46:65:94:ab: + 70:b4:3b:c1:26:8b:11:b6:66:27:88:22:84:03:b5: + 08:45:32:8c:81:23:be:62:dc:6f:a0:aa:5e:9f:03: + f7:a7:f5:03:70:3c:78:09:d0:84:44:8c:19:af:76: + f7:93:fc:af:c6:fd:db:d9:4c:cb:20:79:44:71:cb: + e6:55:61:a9:7a:af:0b:a3:a6:ed:e9:a9:11:af:fa: + a3:5d:ac:97:e7:ef:2b:b6:a8:37 + Exponent: 65537 (0x10001) + X509v3 extensions: + X509v3 Basic Constraints: + CA:FALSE + Netscape Comment: + OpenSSL Generated Certificate + X509v3 Subject Key Identifier: + 6E:15:7E:C4:62:2B:92:6D:22:EE:0C:E4:C5:36:29:38:16:62:BE:89 + X509v3 Authority Key Identifier: + keyid:B0:9F:67:33:2C:88:88:89:1F:44:62:74:9D:25:FF:C0:06:13:5D:D6 + + Signature Algorithm: sha256WithRSAEncryption + 64:b0:45:6b:0c:7c:2d:09:14:8e:78:93:85:ef:d2:31:aa:c3: + 59:2e:85:bf:29:e1:46:59:38:d4:fe:ea:c4:c1:83:a7:4a:1b: + 92:5e:e8:11:9c:21:48:9d:1e:cc:31:d8:31:00:72:fe:7b:c1: + 18:c4:f5:37:f3:3b:0e:1a:f6:3f:19:47:22:c9:87:01:e0:4c: + f4:5d:36:0a:87:46:42:fc:6c:ab:26:ff:7d:ca:2c:19:97:ca: + 25:fc:70:66:4e:49:86:3e:81:0f:ee:e2:5c:3b:69:07:8b:c2: + 52:09:46:d8:67:af:84:54:bb:4f:f3:e0:da:07:c5:64:56:2d: + fb:f9:55:13:53:1d:c6:78:63:40:22:23:4f:63:59:37:05:c7: + 46:b6:36:53:30:fe:9b:e6:01:0a:54:5b:be:1b:a4:72:c3:27: + 1b:c5:21:5d:d3:0c:06:56:d9:df:45:83:e7:06:6d:47:53:72: + ea:6c:e7:db:5e:bd:14:47:19:0c:18:13:73:6b:14:dc:29:6c: + c0:60:fa:4c:02:74:45:e7:8d:12:bd:1f:cb:77:2c:72:19:ef: + e8:85:5c:cf:77:04:b7:d4:08:a8:7e:d1:1d:20:7b:76:27:ca: + 8a:5a:2a:a5:e7:15:6c:2d:50:9c:c2:b4:83:45:c2:f7:a5:f0: + 6b:d5:45:6b:88:4c:db:00:26:2f:8e:0a:3c:42:4e:0c:64:18: + 41:a0:6b:4b:d0:78:89:b4:64:34:5b:76:cb:dd:b9:be:6e:28: + 82:ba:6e:11:99:86:88:b6:0d:22:2b:a6:eb:5f:0b:ca:77:5b: + 2e:28:b7:f3:96:c3:8c:9d:0d:2b:59:98:d4:20:87:3a:2e:f4: + e3:bf:a2:ff:67:4f:3f:1e:ce:ec:59:76:5a:67:81:ba:44:96: + 29:af:05:ce:55:02:b4:d6:68:f0:25:61:8c:91:83:03:fd:e4: + 2c:06:91:b4:32:d8:5b:47:d6:20:55:44:a6:0c:9b:97:bb:94: + 66:25:8c:35:e0:32 +-----BEGIN CERTIFICATE----- +MIIEszCCAxugAwIBAgIBBDANBgkqhkiG9w0BAQsFADBEMREwDwYDVQQDEwhzb21l +TmFtZTEQMA4GA1UECxMHcnN5c2xvZzEQMA4GA1UEChMHU29tZU9yZzELMAkGA1UE +BhMCVVMwIBcNMjMwNzA2MTM1MjUwWhgPMjEyMzA2MTIxMzUyNTBaMHcxCzAJBgNV +BAYTAlVTMQswCQYDVQQIDAJDQTERMA8GA1UECgwIU29tZUNvbXAxETAPBgNVBAsM +CFNvbWVVbml0MRAwDgYDVQQDDAdyc3lzbG9nMSMwIQYJKoZIhvcNAQkBFhRhbG9y +YmFjaEBhZGlzY29uLmNvbTCCAaIwDQYJKoZIhvcNAQEBBQADggGPADCCAYoCggGB +AJ2R2tguPZ2uhcPFp/akZvjIkZG4cCDc7egjylP3uFJD86fr+9+KOyywE/pi06FT +pFFxH2jZ/bw5SvvJat/ziISwgLzA9RtCEfZMGtgsYgtdUGQwmtPbwdV/OVPkvege +BJ3JEuDkVykpAbnx5bx0pudLYeZnXGxO7u4iDBsUbegMb+7uw7jd3xXtepZbzIXl +41DEziu/tjfmIPxuRX4JvYR6rwcn9JkjQd822CkxoJaEL/1FLtS0+frcjyPA4Aat +rQpy2vQ7ocvWpjvsRsSV8nGlrQgf5wYYDtuAUZa6JPZkAmvT8HYBNDpyAunL0Kpi +UQyPg77AR5nSknLtU6VJBdTJofRN3hKdGsgXhPOifGdHgkuGHnOG4iYmEJSjmZsI +mXidPTNdhcJGZZSrcLQ7wSaLEbZmJ4gihAO1CEUyjIEjvmLcb6CqXp8D96f1A3A8 +eAnQhESMGa9295P8r8b929lMyyB5RHHL5lVhqXqvC6Om7empEa/6o12sl+fvK7ao +NwIDAQABo3sweTAJBgNVHRMEAjAAMCwGCWCGSAGG+EIBDQQfFh1PcGVuU1NMIEdl +bmVyYXRlZCBDZXJ0aWZpY2F0ZTAdBgNVHQ4EFgQUbhV+xGIrkm0i7gzkxTYpOBZi +vokwHwYDVR0jBBgwFoAUsJ9nMyyIiIkfRGJ0nSX/wAYTXdYwDQYJKoZIhvcNAQEL +BQADggGBAGSwRWsMfC0JFI54k4Xv0jGqw1kuhb8p4UZZONT+6sTBg6dKG5Je6BGc +IUidHswx2DEAcv57wRjE9TfzOw4a9j8ZRyLJhwHgTPRdNgqHRkL8bKsm/33KLBmX +yiX8cGZOSYY+gQ/u4lw7aQeLwlIJRthnr4RUu0/z4NoHxWRWLfv5VRNTHcZ4Y0Ai +I09jWTcFx0a2NlMw/pvmAQpUW74bpHLDJxvFIV3TDAZW2d9Fg+cGbUdTcups59te +vRRHGQwYE3NrFNwpbMBg+kwCdEXnjRK9H8t3LHIZ7+iFXM93BLfUCKh+0R0ge3Yn +yopaKqXnFWwtUJzCtINFwvel8GvVRWuITNsAJi+OCjxCTgxkGEGga0vQeIm0ZDRb +dsvdub5uKIK6bhGZhoi2DSIrputfC8p3Wy4ot/OWw4ydDStZmNQghzou9OO/ov9n +Tz8ezuxZdlpngbpElimvBc5VArTWaPAlYYyRgwP95CwGkbQy2FtH1iBVRKYMm5e7 +lGYljDXgMg== +-----END CERTIFICATE----- diff --git a/tests/testsuites/x.509/openssl-cmds.sh b/tests/testsuites/x.509/openssl-cmds.sh new file mode 100644 index 0000000..5bcc382 --- /dev/null +++ b/tests/testsuites/x.509/openssl-cmds.sh @@ -0,0 +1,11 @@ +# CREATE KEY +# openssl genpkey -algorithm RSA -out client-revoked-key.pem +# CREATE REQEST +# openssl req -new -key client-revoked-key.pem -out client-revoked.csr +# CREATE A CERT +# openssl ca -config openssl.cnf -in client-revoked.csr -out client-revoked.pem -keyfile ca-key.pem -cert ca.pem +# REVOKE A CERT +# openssl ca -config openssl.cnf -revoke client-revoked.pem -keyfile ca-key.pem -cert ca.pem +# CREATE crl.pem +# openssl ca -config openssl.cnf -gencrl -out crl.pem -keyfile ca-key.pem -cert ca.pem + diff --git a/tests/testsuites/x.509/openssl.cnf b/tests/testsuites/x.509/openssl.cnf new file mode 100644 index 0000000..39eba57 --- /dev/null +++ b/tests/testsuites/x.509/openssl.cnf @@ -0,0 +1,41 @@ +[ ca ] +default_ca = CA_default + +[ CA_default ] +dir = ./ +certs = $dir/certs +crl_dir = $dir/crl +database = $dir/index.txt +new_certs_dir = $dir/newcerts + +certificate = $dir/ca.pem +serial = $dir/serial +crl = $dir/crl.pem +private_key = $dir/ca-key.pem + +x509_extensions = usr_cert +name_opt = ca_default +cert_opt = ca_default +default_days = 36500 +default_md = sha256 + +# How long before next CRL, default is 1 but for testing we need no expire, so 100 years is fine. +default_crl_days = 36500 + +preserve = no +policy = policy_match + +[ policy_match ] +countryName = supplied +stateOrProvinceName = supplied +organizationName = supplied +organizationalUnitName = optional +commonName = supplied +emailAddress = optional + +[ usr_cert ] +basicConstraints=CA:FALSE +nsComment="OpenSSL Generated Certificate" +subjectKeyIdentifier=hash +authorityKeyIdentifier=keyid,issuer + diff --git a/tests/testsuites/x.509/serial b/tests/testsuites/x.509/serial new file mode 100644 index 0000000..eeee65e --- /dev/null +++ b/tests/testsuites/x.509/serial @@ -0,0 +1 @@ +05 diff --git a/tests/testsuites/xlate.lkp_tbl b/tests/testsuites/xlate.lkp_tbl new file mode 100644 index 0000000..cc98de1 --- /dev/null +++ b/tests/testsuites/xlate.lkp_tbl @@ -0,0 +1,5 @@ +{ + "table":[ + {"index":" msgnum:00000001:", "value":"bar_old" }, + {"index":" msgnum:00000000:", "value":"foo_old" }] +} diff --git a/tests/testsuites/xlate_array.lkp_tbl b/tests/testsuites/xlate_array.lkp_tbl new file mode 100644 index 0000000..c2b327b --- /dev/null +++ b/tests/testsuites/xlate_array.lkp_tbl @@ -0,0 +1,6 @@ +{ + "type" : "array", + "table":[ + {"index": 1, "value":"bar_old" }, + {"index": 0, "value":"foo_old" }] +} diff --git a/tests/testsuites/xlate_array_empty_table.lkp_tbl b/tests/testsuites/xlate_array_empty_table.lkp_tbl new file mode 100644 index 0000000..e4912d0 --- /dev/null +++ b/tests/testsuites/xlate_array_empty_table.lkp_tbl @@ -0,0 +1,6 @@ +{ + "version": 1, + "nomatch": "baz_arr", + "type" : "array", + "table":[] +} diff --git a/tests/testsuites/xlate_array_misuse.lkp_tbl b/tests/testsuites/xlate_array_misuse.lkp_tbl new file mode 100644 index 0000000..8cc96c0 --- /dev/null +++ b/tests/testsuites/xlate_array_misuse.lkp_tbl @@ -0,0 +1,6 @@ +{ + "type" : "array", + "table":[ + {"index": 3, "value":"bar_old" }, + {"index": 1, "value":"foo_old" }] +} diff --git a/tests/testsuites/xlate_array_more.lkp_tbl b/tests/testsuites/xlate_array_more.lkp_tbl new file mode 100644 index 0000000..fa93014 --- /dev/null +++ b/tests/testsuites/xlate_array_more.lkp_tbl @@ -0,0 +1,7 @@ +{ + "type" : "array", + "table":[ + {"index": 2, "value":"baz" }, + {"index": 0, "value":"foo_new" }, + {"index": 1, "value":"bar_new" }] +} diff --git a/tests/testsuites/xlate_array_more_misuse.lkp_tbl b/tests/testsuites/xlate_array_more_misuse.lkp_tbl new file mode 100644 index 0000000..223d3de --- /dev/null +++ b/tests/testsuites/xlate_array_more_misuse.lkp_tbl @@ -0,0 +1,7 @@ +{ + "type" : "array", + "table":[ + {"index": 2, "value":"baz" }, + {"index": 1, "value":"foo_new" }, + {"index": 1, "value":"bar_new" }] +} diff --git a/tests/testsuites/xlate_array_more_with_duplicates_and_nomatch.lkp_tbl b/tests/testsuites/xlate_array_more_with_duplicates_and_nomatch.lkp_tbl new file mode 100644 index 0000000..d7730e6 --- /dev/null +++ b/tests/testsuites/xlate_array_more_with_duplicates_and_nomatch.lkp_tbl @@ -0,0 +1,13 @@ +{ + "nomatch": "quux", + "type" : "array", + "table":[ + {"index": 2, "value": "foo_latest" }, + {"index": 3, "value": "baz_latest" }, + {"index": 4, "value": "foo_latest" }, + {"index": 5, "value": "foo_latest" }, + {"index": 6, "value": "baz_latest" }, + {"index": 7, "value": "foo_latest" }, + {"index": 8, "value": "baz_latest" }, + {"index": 9, "value": "baz_latest" }] +} diff --git a/tests/testsuites/xlate_array_no_index.lkp_tbl b/tests/testsuites/xlate_array_no_index.lkp_tbl new file mode 100644 index 0000000..30dc209 --- /dev/null +++ b/tests/testsuites/xlate_array_no_index.lkp_tbl @@ -0,0 +1,8 @@ +{ + "version": 1, + "nomatch": "baz", + "type" : "array", + "table":[ + {"value":"foo" }, + {"value":"bar" }] +} diff --git a/tests/testsuites/xlate_array_no_table.lkp_tbl b/tests/testsuites/xlate_array_no_table.lkp_tbl new file mode 100644 index 0000000..df47606 --- /dev/null +++ b/tests/testsuites/xlate_array_no_table.lkp_tbl @@ -0,0 +1,5 @@ +{ + "version": 1, + "nomatch": "baz", + "type" : "array" +} diff --git a/tests/testsuites/xlate_array_no_value.lkp_tbl b/tests/testsuites/xlate_array_no_value.lkp_tbl new file mode 100644 index 0000000..176cafb --- /dev/null +++ b/tests/testsuites/xlate_array_no_value.lkp_tbl @@ -0,0 +1,8 @@ +{ + "version": 1, + "nomatch": "baz", + "type" : "array", + "table":[ + {"index":"00000000" }, + {"index":"00000001" }] +} diff --git a/tests/testsuites/xlate_empty_file.lkp_tbl b/tests/testsuites/xlate_empty_file.lkp_tbl new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/tests/testsuites/xlate_empty_file.lkp_tbl diff --git a/tests/testsuites/xlate_incorrect_type.lkp_tbl b/tests/testsuites/xlate_incorrect_type.lkp_tbl new file mode 100644 index 0000000..0180b6e --- /dev/null +++ b/tests/testsuites/xlate_incorrect_type.lkp_tbl @@ -0,0 +1,8 @@ +{ + "version": 1, + "nomatch": "baz", + "type" : "quux", + "table":[ + {"index":" 00000000", "value":"foo" }, + {"index":" 00000001", "value":"bar" }] +} diff --git a/tests/testsuites/xlate_incorrect_version.lkp_tbl b/tests/testsuites/xlate_incorrect_version.lkp_tbl new file mode 100644 index 0000000..ef2ce7b --- /dev/null +++ b/tests/testsuites/xlate_incorrect_version.lkp_tbl @@ -0,0 +1,8 @@ +{ + "version": 3, + "nomatch": "baz", + "type" : "string", + "table":[ + {"index": "00000000", "value":"foo" }, + {"index": "00000001", "value":"bar" }] +} diff --git a/tests/testsuites/xlate_invalid_json.lkp_tbl b/tests/testsuites/xlate_invalid_json.lkp_tbl new file mode 100644 index 0000000..0d1e247 --- /dev/null +++ b/tests/testsuites/xlate_invalid_json.lkp_tbl @@ -0,0 +1,4 @@ +{ + version": "baz_sparse_arr", + "type" : "sparseArray", + "table":[] diff --git a/tests/testsuites/xlate_more.lkp_tbl b/tests/testsuites/xlate_more.lkp_tbl new file mode 100644 index 0000000..2d3f452 --- /dev/null +++ b/tests/testsuites/xlate_more.lkp_tbl @@ -0,0 +1,6 @@ +{ + "table":[ + {"index":" msgnum:00000000:", "value":"foo_new" }, + {"index":" msgnum:00000001:", "value":"bar_new" }, + {"index":" msgnum:00000002:", "value":"baz" }] +} diff --git a/tests/testsuites/xlate_more_with_duplicates_and_nomatch.lkp_tbl b/tests/testsuites/xlate_more_with_duplicates_and_nomatch.lkp_tbl new file mode 100644 index 0000000..ac50664 --- /dev/null +++ b/tests/testsuites/xlate_more_with_duplicates_and_nomatch.lkp_tbl @@ -0,0 +1,12 @@ +{ + "nomatch": "quux", + "table":[ + {"index":" msgnum:00000000:", "value":"foo_latest" }, + {"index":" msgnum:00000002:", "value":"baz_latest" }, + {"index":" msgnum:00000003:", "value":"foo_latest" }, + {"index":" msgnum:00000004:", "value":"foo_latest" }, + {"index":" msgnum:00000005:", "value":"baz_latest" }, + {"index":" msgnum:00000006:", "value":"foo_latest" }, + {"index":" msgnum:00000007:", "value":"baz_latest" }, + {"index":" msgnum:00000008:", "value":"baz_latest" }] +} diff --git a/tests/testsuites/xlate_sparseArray_empty_table.lkp_tbl b/tests/testsuites/xlate_sparseArray_empty_table.lkp_tbl new file mode 100644 index 0000000..f33c7d7 --- /dev/null +++ b/tests/testsuites/xlate_sparseArray_empty_table.lkp_tbl @@ -0,0 +1,6 @@ +{ + "version": 1, + "nomatch": "baz_sparse_arr", + "type" : "sparseArray", + "table":[] +} diff --git a/tests/testsuites/xlate_sparseArray_no_index.lkp_tbl b/tests/testsuites/xlate_sparseArray_no_index.lkp_tbl new file mode 100644 index 0000000..29ba48c --- /dev/null +++ b/tests/testsuites/xlate_sparseArray_no_index.lkp_tbl @@ -0,0 +1,8 @@ +{ + "version": 1, + "nomatch": "baz", + "type" : "sparseArray", + "table":[ + {"value":"foo" }, + {"value":"bar" }] +} diff --git a/tests/testsuites/xlate_sparseArray_no_table.lkp_tbl b/tests/testsuites/xlate_sparseArray_no_table.lkp_tbl new file mode 100644 index 0000000..45fc9a9 --- /dev/null +++ b/tests/testsuites/xlate_sparseArray_no_table.lkp_tbl @@ -0,0 +1,5 @@ +{ + "version": 1, + "nomatch": "baz", + "type" : "sparseArray" +} diff --git a/tests/testsuites/xlate_sparseArray_no_value.lkp_tbl b/tests/testsuites/xlate_sparseArray_no_value.lkp_tbl new file mode 100644 index 0000000..e5c65ee --- /dev/null +++ b/tests/testsuites/xlate_sparseArray_no_value.lkp_tbl @@ -0,0 +1,8 @@ +{ + "version": 1, + "nomatch": "baz", + "type" : "sparseArray", + "table":[ + {"index":"00000000" }, + {"index":"00000001" }] +} diff --git a/tests/testsuites/xlate_sparse_array.lkp_tbl b/tests/testsuites/xlate_sparse_array.lkp_tbl new file mode 100644 index 0000000..84523f1 --- /dev/null +++ b/tests/testsuites/xlate_sparse_array.lkp_tbl @@ -0,0 +1,6 @@ +{ + "type" : "sparseArray", + "table":[ + {"index": 3, "value":"bar_old" }, + {"index": 1, "value":"foo_old" }] +} diff --git a/tests/testsuites/xlate_sparse_array_more.lkp_tbl b/tests/testsuites/xlate_sparse_array_more.lkp_tbl new file mode 100644 index 0000000..bf52153 --- /dev/null +++ b/tests/testsuites/xlate_sparse_array_more.lkp_tbl @@ -0,0 +1,7 @@ +{ + "type" : "sparseArray", + "table":[ + {"index": 4, "value":"baz" }, + {"index": 0, "value":"foo_new" }, + {"index": 2, "value":"bar_new" }] +} diff --git a/tests/testsuites/xlate_sparse_array_more_with_duplicates_and_nomatch.lkp_tbl b/tests/testsuites/xlate_sparse_array_more_with_duplicates_and_nomatch.lkp_tbl new file mode 100644 index 0000000..0dc9169 --- /dev/null +++ b/tests/testsuites/xlate_sparse_array_more_with_duplicates_and_nomatch.lkp_tbl @@ -0,0 +1,12 @@ +{ + "nomatch": "quux", + "type" : "sparseArray", + "table":[ + {"index": 2, "value": "foo_latest" }, + {"index": 3, "value": "baz_latest" }, + {"index": 4, "value": "foo_latest" }, + {"index": 5, "value": "foo_latest" }, + {"index": 8, "value": "baz_latest" }, + {"index": 10, "value": "baz_latest" }, + {"index": 12, "value": "foo_latest" }] +} diff --git a/tests/testsuites/xlate_string_empty_table.lkp_tbl b/tests/testsuites/xlate_string_empty_table.lkp_tbl new file mode 100644 index 0000000..81358da --- /dev/null +++ b/tests/testsuites/xlate_string_empty_table.lkp_tbl @@ -0,0 +1,6 @@ +{ + "version": 1, + "nomatch": "baz_str", + "type" : "string", + "table":[] +} diff --git a/tests/testsuites/xlate_string_no_index.lkp_tbl b/tests/testsuites/xlate_string_no_index.lkp_tbl new file mode 100644 index 0000000..c5a0eec --- /dev/null +++ b/tests/testsuites/xlate_string_no_index.lkp_tbl @@ -0,0 +1,8 @@ +{ + "version": 1, + "nomatch": "baz", + "type" : "string", + "table":[ + {"value":"foo" }, + {"value":"bar" }] +} diff --git a/tests/testsuites/xlate_string_no_table.lkp_tbl b/tests/testsuites/xlate_string_no_table.lkp_tbl new file mode 100644 index 0000000..d941488 --- /dev/null +++ b/tests/testsuites/xlate_string_no_table.lkp_tbl @@ -0,0 +1,5 @@ +{ + "version": 1, + "nomatch": "baz", + "type" : "string" +} diff --git a/tests/testsuites/xlate_string_no_value.lkp_tbl b/tests/testsuites/xlate_string_no_value.lkp_tbl new file mode 100644 index 0000000..d2280f2 --- /dev/null +++ b/tests/testsuites/xlate_string_no_value.lkp_tbl @@ -0,0 +1,8 @@ +{ + "version": 1, + "nomatch": "baz", + "type" : "string", + "table":[ + {"index":"00000000" }, + {"index":"00000001" }] +} diff --git a/tests/testsuites/zoo.cfg b/tests/testsuites/zoo.cfg new file mode 100644 index 0000000..b3a3cac --- /dev/null +++ b/tests/testsuites/zoo.cfg @@ -0,0 +1,5 @@ +tickTime=1000 +initLimit=5 +syncLimit=2 +dataDir=zk_data_dir +clientPort=22181 diff --git a/tests/testsuites/zoo.dep_wrk1.cfg b/tests/testsuites/zoo.dep_wrk1.cfg new file mode 100644 index 0000000..b3a3cac --- /dev/null +++ b/tests/testsuites/zoo.dep_wrk1.cfg @@ -0,0 +1,5 @@ +tickTime=1000 +initLimit=5 +syncLimit=2 +dataDir=zk_data_dir +clientPort=22181 diff --git a/tests/testsuites/zoo.dep_wrk2.cfg b/tests/testsuites/zoo.dep_wrk2.cfg new file mode 100644 index 0000000..a97d0ec --- /dev/null +++ b/tests/testsuites/zoo.dep_wrk2.cfg @@ -0,0 +1,5 @@ +tickTime=1000 +initLimit=5 +syncLimit=2 +dataDir=zk_data_dir +clientPort=22182 diff --git a/tests/testsuites/zoo.dep_wrk3.cfg b/tests/testsuites/zoo.dep_wrk3.cfg new file mode 100644 index 0000000..94d9667 --- /dev/null +++ b/tests/testsuites/zoo.dep_wrk3.cfg @@ -0,0 +1,5 @@ +tickTime=1000 +initLimit=5 +syncLimit=2 +dataDir=zk_data_dir +clientPort=22183 |