-etc/bird.conf
+/etc/bird.conf
#
# Certificates
#
-# -- Attribute -- -- type -- -- value --
-# CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
-# CKA_TOKEN CK_BBOOL CK_TRUE
-# CKA_PRIVATE CK_BBOOL CK_FALSE
-# CKA_MODIFIABLE CK_BBOOL CK_FALSE
-# CKA_LABEL UTF8 (varies)
-# CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
-# CKA_SUBJECT DER+base64 (varies)
-# CKA_ID byte array (varies)
-# CKA_ISSUER DER+base64 (varies)
-# CKA_SERIAL_NUMBER DER+base64 (varies)
-# CKA_VALUE DER+base64 (varies)
-# CKA_NSS_EMAIL ASCII7 (unused here)
+# -- Attribute -- -- type -- -- value --
+# CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+# CKA_TOKEN CK_BBOOL CK_TRUE
+# CKA_PRIVATE CK_BBOOL CK_FALSE
+# CKA_MODIFIABLE CK_BBOOL CK_FALSE
+# CKA_LABEL UTF8 (varies)
+# CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+# CKA_SUBJECT DER+base64 (varies)
+# CKA_ID byte array (varies)
+# CKA_ISSUER DER+base64 (varies)
+# CKA_SERIAL_NUMBER DER+base64 (varies)
+# CKA_VALUE DER+base64 (varies)
+# CKA_NSS_EMAIL ASCII7 (unused here)
+# CKA_NSS_SERVER_DISTRUST_AFTER DER+base64 (varies)
+# CKA_NSS_EMAIL_DISTRUST_AFTER DER+base64 (varies)
#
# Trust
#
\125\342\374\110\311\051\046\151\340
END
CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE
+CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE
+CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE
# Trust for Certificate "GlobalSign Root CA"
# Issuer: CN=GlobalSign Root CA,OU=Root CA,O=GlobalSign nv-sa,C=BE
\152\374\176\102\070\100\144\022\367\236\201\341\223\056
END
CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE
+CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE
+CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE
# Trust for Certificate "GlobalSign Root CA - R2"
# Issuer: CN=GlobalSign,O=GlobalSign,OU=GlobalSign Root CA - R2
\113\336\006\226\161\054\362\333\266\037\244\357\077\356
END
CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE
+CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE
+CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE
# Trust for Certificate "Verisign Class 1 Public Primary Certification Authority - G3"
# Issuer: CN=VeriSign Class 1 Public Primary Certification Authority - G3,OU="(c) 1999 VeriSign, Inc. - For authorized use only",OU=VeriSign Trust Network,O="VeriSign, Inc.",C=US
\311\130\020\371\252\357\132\266\317\113\113\337\052
END
CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE
+CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE
+CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE
# Trust for Certificate "Verisign Class 2 Public Primary Certification Authority - G3"
# Issuer: CN=VeriSign Class 2 Public Primary Certification Authority - G3,OU="(c) 1999 VeriSign, Inc. - For authorized use only",OU=VeriSign Trust Network,O="VeriSign, Inc.",C=US
\153\271\012\172\116\117\113\204\356\113\361\175\335\021
END
CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE
+CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE
+CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE
# Trust for Certificate "Verisign Class 3 Public Primary Certification Authority - G3"
# Issuer: CN=VeriSign Class 3 Public Primary Certification Authority - G3,OU="(c) 1999 VeriSign, Inc. - For authorized use only",OU=VeriSign Trust Network,O="VeriSign, Inc.",C=US
\174\136\232\166\351\131\220\305\174\203\065\021\145\121
END
CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE
+CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE
+CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE
# Trust for "Entrust.net Premium 2048 Secure Server CA"
# Issuer: CN=Entrust.net Certification Authority (2048),OU=(c) 1999 Entrust.net Limited,OU=www.entrust.net/CPS_2048 incorp. by ref. (limits liab.),O=Entrust.net
\347\201\035\031\303\044\102\352\143\071\251
END
CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE
+CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE
+CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE
# Trust for Certificate "Baltimore CyberTrust Root"
# Issuer: CN=Baltimore CyberTrust Root,OU=CyberTrust,O=Baltimore,C=IE
\065\341\035\026\034\320\274\053\216\326\161\331
END
CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE
+CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE
+CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE
# Trust for Certificate "AddTrust Low-Value Services Root"
# Issuer: CN=AddTrust Class 1 CA Root,OU=AddTrust TTP Network,O=AddTrust AB,C=SE
\027\132\173\320\274\307\217\116\206\004
END
CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE
+CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE
+CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE
# Trust for Certificate "AddTrust External Root"
# Issuer: CN=AddTrust External CA Root,OU=AddTrust External TTP Network,O=AddTrust AB,C=SE
\036\177\132\264\074
END
CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE
+CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE
+CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE
# Trust for Certificate "Entrust Root Certification Authority"
# Issuer: CN=Entrust Root Certification Authority,OU="(c) 2006 Entrust, Inc.",OU=www.entrust.net/CPS is incorporated by reference,O="Entrust, Inc.",C=US
\302\005\146\200\241\313\346\063
END
CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE
+CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE
+CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE
# Trust for Certificate "GeoTrust Global CA"
# Issuer: CN=GeoTrust Global CA,O=GeoTrust Inc.,C=US
\244\346\216\330\371\051\110\212\316\163\376\054
END
CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE
+CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE
+CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE
# Trust for Certificate "GeoTrust Universal CA"
# Issuer: CN=GeoTrust Universal CA,O=GeoTrust Inc.,C=US
\362\034\054\176\256\002\026\322\126\320\057\127\123\107\350\222
END
CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE
+CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE
+CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE
# Trust for Certificate "GeoTrust Universal CA 2"
# Issuer: CN=GeoTrust Universal CA 2,O=GeoTrust Inc.,C=US
\350\140\052\233\205\112\100\363\153\212\044\354\006\026\054\163
END
CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE
+CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE
+CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE
# Trust for Certificate "Certum Root CA"
# Issuer: CN=Certum CA,O=Unizeto Sp. z o.o.,C=PL
\225\351\066\226\230\156
END
CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE
+CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE
+CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE
# Trust for Certificate "Comodo AAA Services root"
# Issuer: CN=AAA Certificate Services,O=Comodo CA Limited,L=Salford,ST=Greater Manchester,C=GB
\112\164\066\371
END
CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE
+CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE
+CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE
# Trust for Certificate "QuoVadis Root CA"
# Issuer: CN=QuoVadis Root Certification Authority,OU=Root Certification Authority,O=QuoVadis Limited,C=BM
\020\005\145\325\202\020\352\302\061\315\056
END
CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE
+CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE
+CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE
# Trust for Certificate "QuoVadis Root CA 2"
# Issuer: CN=QuoVadis Root CA 2,O=QuoVadis Limited,C=BM
\332
END
CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE
+CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE
+CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE
# Trust for Certificate "QuoVadis Root CA 3"
# Issuer: CN=QuoVadis Root CA 3,O=QuoVadis Limited,C=BM
\057\317\246\356\311\160\042\024\275\375\276\154\013\003
END
CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE
+CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE
+CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE
# Trust for Certificate "Security Communication Root CA"
# Issuer: OU=Security Communication RootCA1,O=SECOM Trust.net,C=JP
\160\254\337\114
END
CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE
+CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE
+CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE
# Trust for Certificate "Sonera Class 2 Root CA"
# Issuer: CN=Sonera Class2 CA,O=Sonera,C=FI
CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
-#
-# Certificate "UTN USERFirst Email Root CA"
-#
-# Issuer: CN=UTN-USERFirst-Client Authentication and Email,OU=http://www.usertrust.com,O=The USERTRUST Network,L=Salt Lake City,ST=UT,C=US
-# Serial Number:44:be:0c:8b:50:00:24:b4:11:d3:36:25:25:67:c9:89
-# Subject: CN=UTN-USERFirst-Client Authentication and Email,OU=http://www.usertrust.com,O=The USERTRUST Network,L=Salt Lake City,ST=UT,C=US
-# Not Valid Before: Fri Jul 09 17:28:50 1999
-# Not Valid After : Tue Jul 09 17:36:58 2019
-# Fingerprint (MD5): D7:34:3D:EF:1D:27:09:28:E1:31:02:5B:13:2B:DD:F7
-# Fingerprint (SHA1): B1:72:B1:A5:6D:95:F9:1F:E5:02:87:E1:4D:37:EA:6A:44:63:76:8A
-CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
-CKA_TOKEN CK_BBOOL CK_TRUE
-CKA_PRIVATE CK_BBOOL CK_FALSE
-CKA_MODIFIABLE CK_BBOOL CK_FALSE
-CKA_LABEL UTF8 "UTN USERFirst Email Root CA"
-CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
-CKA_SUBJECT MULTILINE_OCTAL
-\060\201\256\061\013\060\011\006\003\125\004\006\023\002\125\123
-\061\013\060\011\006\003\125\004\010\023\002\125\124\061\027\060
-\025\006\003\125\004\007\023\016\123\141\154\164\040\114\141\153
-\145\040\103\151\164\171\061\036\060\034\006\003\125\004\012\023
-\025\124\150\145\040\125\123\105\122\124\122\125\123\124\040\116
-\145\164\167\157\162\153\061\041\060\037\006\003\125\004\013\023
-\030\150\164\164\160\072\057\057\167\167\167\056\165\163\145\162
-\164\162\165\163\164\056\143\157\155\061\066\060\064\006\003\125
-\004\003\023\055\125\124\116\055\125\123\105\122\106\151\162\163
-\164\055\103\154\151\145\156\164\040\101\165\164\150\145\156\164
-\151\143\141\164\151\157\156\040\141\156\144\040\105\155\141\151
-\154
-END
-CKA_ID UTF8 "0"
-CKA_ISSUER MULTILINE_OCTAL
-\060\201\256\061\013\060\011\006\003\125\004\006\023\002\125\123
-\061\013\060\011\006\003\125\004\010\023\002\125\124\061\027\060
-\025\006\003\125\004\007\023\016\123\141\154\164\040\114\141\153
-\145\040\103\151\164\171\061\036\060\034\006\003\125\004\012\023
-\025\124\150\145\040\125\123\105\122\124\122\125\123\124\040\116
-\145\164\167\157\162\153\061\041\060\037\006\003\125\004\013\023
-\030\150\164\164\160\072\057\057\167\167\167\056\165\163\145\162
-\164\162\165\163\164\056\143\157\155\061\066\060\064\006\003\125
-\004\003\023\055\125\124\116\055\125\123\105\122\106\151\162\163
-\164\055\103\154\151\145\156\164\040\101\165\164\150\145\156\164
-\151\143\141\164\151\157\156\040\141\156\144\040\105\155\141\151
-\154
-END
-CKA_SERIAL_NUMBER MULTILINE_OCTAL
-\002\020\104\276\014\213\120\000\044\264\021\323\066\045\045\147
-\311\211
-END
-CKA_VALUE MULTILINE_OCTAL
-\060\202\004\242\060\202\003\212\240\003\002\001\002\002\020\104
-\276\014\213\120\000\044\264\021\323\066\045\045\147\311\211\060
-\015\006\011\052\206\110\206\367\015\001\001\005\005\000\060\201
-\256\061\013\060\011\006\003\125\004\006\023\002\125\123\061\013
-\060\011\006\003\125\004\010\023\002\125\124\061\027\060\025\006
-\003\125\004\007\023\016\123\141\154\164\040\114\141\153\145\040
-\103\151\164\171\061\036\060\034\006\003\125\004\012\023\025\124
-\150\145\040\125\123\105\122\124\122\125\123\124\040\116\145\164
-\167\157\162\153\061\041\060\037\006\003\125\004\013\023\030\150
-\164\164\160\072\057\057\167\167\167\056\165\163\145\162\164\162
-\165\163\164\056\143\157\155\061\066\060\064\006\003\125\004\003
-\023\055\125\124\116\055\125\123\105\122\106\151\162\163\164\055
-\103\154\151\145\156\164\040\101\165\164\150\145\156\164\151\143
-\141\164\151\157\156\040\141\156\144\040\105\155\141\151\154\060
-\036\027\015\071\071\060\067\060\071\061\067\062\070\065\060\132
-\027\015\061\071\060\067\060\071\061\067\063\066\065\070\132\060
-\201\256\061\013\060\011\006\003\125\004\006\023\002\125\123\061
-\013\060\011\006\003\125\004\010\023\002\125\124\061\027\060\025
-\006\003\125\004\007\023\016\123\141\154\164\040\114\141\153\145
-\040\103\151\164\171\061\036\060\034\006\003\125\004\012\023\025
-\124\150\145\040\125\123\105\122\124\122\125\123\124\040\116\145
-\164\167\157\162\153\061\041\060\037\006\003\125\004\013\023\030
-\150\164\164\160\072\057\057\167\167\167\056\165\163\145\162\164
-\162\165\163\164\056\143\157\155\061\066\060\064\006\003\125\004
-\003\023\055\125\124\116\055\125\123\105\122\106\151\162\163\164
-\055\103\154\151\145\156\164\040\101\165\164\150\145\156\164\151
-\143\141\164\151\157\156\040\141\156\144\040\105\155\141\151\154
-\060\202\001\042\060\015\006\011\052\206\110\206\367\015\001\001
-\001\005\000\003\202\001\017\000\060\202\001\012\002\202\001\001
-\000\262\071\205\244\362\175\253\101\073\142\106\067\256\315\301
-\140\165\274\071\145\371\112\032\107\242\271\314\110\314\152\230
-\325\115\065\031\271\244\102\345\316\111\342\212\057\036\174\322
-\061\007\307\116\264\203\144\235\056\051\325\242\144\304\205\275
-\205\121\065\171\244\116\150\220\173\034\172\244\222\250\027\362
-\230\025\362\223\314\311\244\062\225\273\014\117\060\275\230\240
-\013\213\345\156\033\242\106\372\170\274\242\157\253\131\136\245
-\057\317\312\332\155\252\057\353\254\241\263\152\252\267\056\147
-\065\213\171\341\036\151\210\342\346\106\315\240\245\352\276\013
-\316\166\072\172\016\233\352\374\332\047\133\075\163\037\042\346
-\110\141\306\114\363\151\261\250\056\033\266\324\061\040\054\274
-\202\212\216\244\016\245\327\211\103\374\026\132\257\035\161\327
-\021\131\332\272\207\015\257\372\363\341\302\360\244\305\147\214
-\326\326\124\072\336\012\244\272\003\167\263\145\310\375\036\323
-\164\142\252\030\312\150\223\036\241\205\176\365\107\145\313\370
-\115\127\050\164\322\064\377\060\266\356\366\142\060\024\214\054
-\353\002\003\001\000\001\243\201\271\060\201\266\060\013\006\003
-\125\035\017\004\004\003\002\001\306\060\017\006\003\125\035\023
-\001\001\377\004\005\060\003\001\001\377\060\035\006\003\125\035
-\016\004\026\004\024\211\202\147\175\304\235\046\160\000\113\264
-\120\110\174\336\075\256\004\156\175\060\130\006\003\125\035\037
-\004\121\060\117\060\115\240\113\240\111\206\107\150\164\164\160
-\072\057\057\143\162\154\056\165\163\145\162\164\162\165\163\164
-\056\143\157\155\057\125\124\116\055\125\123\105\122\106\151\162
-\163\164\055\103\154\151\145\156\164\101\165\164\150\145\156\164
-\151\143\141\164\151\157\156\141\156\144\105\155\141\151\154\056
-\143\162\154\060\035\006\003\125\035\045\004\026\060\024\006\010
-\053\006\001\005\005\007\003\002\006\010\053\006\001\005\005\007
-\003\004\060\015\006\011\052\206\110\206\367\015\001\001\005\005
-\000\003\202\001\001\000\261\155\141\135\246\032\177\174\253\112
-\344\060\374\123\157\045\044\306\312\355\342\061\134\053\016\356
-\356\141\125\157\004\076\317\071\336\305\033\111\224\344\353\040
-\114\264\346\236\120\056\162\331\215\365\252\243\263\112\332\126
-\034\140\227\200\334\202\242\255\112\275\212\053\377\013\011\264
-\306\327\040\004\105\344\315\200\001\272\272\053\156\316\252\327
-\222\376\344\257\353\364\046\035\026\052\177\154\060\225\067\057
-\063\022\254\177\335\307\321\021\214\121\230\262\320\243\221\320
-\255\366\237\236\203\223\036\035\102\270\106\257\153\146\360\233
-\177\352\343\003\002\345\002\121\301\252\325\065\235\162\100\003
-\211\272\061\035\305\020\150\122\236\337\242\205\305\134\010\246
-\170\346\123\117\261\350\267\323\024\236\223\246\303\144\343\254
-\176\161\315\274\237\351\003\033\314\373\351\254\061\301\257\174
-\025\164\002\231\303\262\107\246\302\062\141\327\307\157\110\044
-\121\047\241\325\207\125\362\173\217\230\075\026\236\356\165\266
-\370\320\216\362\363\306\256\050\133\247\360\363\066\027\374\303
-\005\323\312\003\112\124
-END
-CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE
-
-# Trust for Certificate "UTN USERFirst Email Root CA"
-# Issuer: CN=UTN-USERFirst-Client Authentication and Email,OU=http://www.usertrust.com,O=The USERTRUST Network,L=Salt Lake City,ST=UT,C=US
-# Serial Number:44:be:0c:8b:50:00:24:b4:11:d3:36:25:25:67:c9:89
-# Subject: CN=UTN-USERFirst-Client Authentication and Email,OU=http://www.usertrust.com,O=The USERTRUST Network,L=Salt Lake City,ST=UT,C=US
-# Not Valid Before: Fri Jul 09 17:28:50 1999
-# Not Valid After : Tue Jul 09 17:36:58 2019
-# Fingerprint (MD5): D7:34:3D:EF:1D:27:09:28:E1:31:02:5B:13:2B:DD:F7
-# Fingerprint (SHA1): B1:72:B1:A5:6D:95:F9:1F:E5:02:87:E1:4D:37:EA:6A:44:63:76:8A
-CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
-CKA_TOKEN CK_BBOOL CK_TRUE
-CKA_PRIVATE CK_BBOOL CK_FALSE
-CKA_MODIFIABLE CK_BBOOL CK_FALSE
-CKA_LABEL UTF8 "UTN USERFirst Email Root CA"
-CKA_CERT_SHA1_HASH MULTILINE_OCTAL
-\261\162\261\245\155\225\371\037\345\002\207\341\115\067\352\152
-\104\143\166\212
-END
-CKA_CERT_MD5_HASH MULTILINE_OCTAL
-\327\064\075\357\035\047\011\050\341\061\002\133\023\053\335\367
-END
-CKA_ISSUER MULTILINE_OCTAL
-\060\201\256\061\013\060\011\006\003\125\004\006\023\002\125\123
-\061\013\060\011\006\003\125\004\010\023\002\125\124\061\027\060
-\025\006\003\125\004\007\023\016\123\141\154\164\040\114\141\153
-\145\040\103\151\164\171\061\036\060\034\006\003\125\004\012\023
-\025\124\150\145\040\125\123\105\122\124\122\125\123\124\040\116
-\145\164\167\157\162\153\061\041\060\037\006\003\125\004\013\023
-\030\150\164\164\160\072\057\057\167\167\167\056\165\163\145\162
-\164\162\165\163\164\056\143\157\155\061\066\060\064\006\003\125
-\004\003\023\055\125\124\116\055\125\123\105\122\106\151\162\163
-\164\055\103\154\151\145\156\164\040\101\165\164\150\145\156\164
-\151\143\141\164\151\157\156\040\141\156\144\040\105\155\141\151
-\154
-END
-CKA_SERIAL_NUMBER MULTILINE_OCTAL
-\002\020\104\276\014\213\120\000\044\264\021\323\066\045\045\147
-\311\211
-END
-CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
-CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
-CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
-CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
-
#
# Certificate "Camerfirma Chambers of Commerce Root"
#
\334
END
CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE
+CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE
+CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE
# Trust for Certificate "Camerfirma Chambers of Commerce Root"
# Issuer: CN=Chambers of Commerce Root,OU=http://www.chambersign.org,O=AC Camerfirma SA CIF A82743287,C=EU
\166\135\165\220\032\365\046\217\360
END
CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE
+CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE
+CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE
# Trust for Certificate "Camerfirma Global Chambersign Root"
# Issuer: CN=Global Chambersign Root,OU=http://www.chambersign.org,O=AC Camerfirma SA CIF A82743287,C=EU
\264\003\045\274
END
CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE
+CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE
+CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE
# Trust for Certificate "XRamp Global CA Root"
# Issuer: CN=XRamp Global Certification Authority,O=XRamp Security Services Inc,OU=www.xrampsecurity.com,C=US
\177\333\275\237
END
CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE
+CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE
+CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE
# Trust for Certificate "Go Daddy Class 2 CA"
# Issuer: OU=Go Daddy Class 2 Certification Authority,O="The Go Daddy Group, Inc.",C=US
\037\027\224
END
CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE
+CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE
+CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE
# Trust for Certificate "Starfield Class 2 CA"
# Issuer: OU=Starfield Class 2 Certification Authority,O="Starfield Technologies, Inc.",C=US
\245\206\054\174\364\022
END
CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE
+CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE
+CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE
# Trust for Certificate "Taiwan GRCA"
# Issuer: O=Government Root Certification Authority,C=TW
\346\120\262\247\372\012\105\057\242\360\362
END
CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE
+CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE
+CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE
# Trust for Certificate "DigiCert Assured ID Root CA"
# Issuer: CN=DigiCert Assured ID Root CA,OU=www.digicert.com,O=DigiCert Inc,C=US
\225\155\336
END
CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE
+CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE
+CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE
# Trust for Certificate "DigiCert Global Root CA"
# Issuer: CN=DigiCert Global Root CA,OU=www.digicert.com,O=DigiCert Inc,C=US
\370\351\056\023\243\167\350\037\112
END
CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE
+CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE
+CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE
# Trust for Certificate "DigiCert High Assurance EV Root CA"
# Issuer: CN=DigiCert High Assurance EV Root CA,OU=www.digicert.com,O=DigiCert Inc,C=US
CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
-#
-# Certificate "Certplus Class 2 Primary CA"
-#
-# Issuer: CN=Class 2 Primary CA,O=Certplus,C=FR
-# Serial Number:00:85:bd:4b:f3:d8:da:e3:69:f6:94:d7:5f:c3:a5:44:23
-# Subject: CN=Class 2 Primary CA,O=Certplus,C=FR
-# Not Valid Before: Wed Jul 07 17:05:00 1999
-# Not Valid After : Sat Jul 06 23:59:59 2019
-# Fingerprint (MD5): 88:2C:8C:52:B8:A2:3C:F3:F7:BB:03:EA:AE:AC:42:0B
-# Fingerprint (SHA1): 74:20:74:41:72:9C:DD:92:EC:79:31:D8:23:10:8D:C2:81:92:E2:BB
-CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
-CKA_TOKEN CK_BBOOL CK_TRUE
-CKA_PRIVATE CK_BBOOL CK_FALSE
-CKA_MODIFIABLE CK_BBOOL CK_FALSE
-CKA_LABEL UTF8 "Certplus Class 2 Primary CA"
-CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
-CKA_SUBJECT MULTILINE_OCTAL
-\060\075\061\013\060\011\006\003\125\004\006\023\002\106\122\061
-\021\060\017\006\003\125\004\012\023\010\103\145\162\164\160\154
-\165\163\061\033\060\031\006\003\125\004\003\023\022\103\154\141
-\163\163\040\062\040\120\162\151\155\141\162\171\040\103\101
-END
-CKA_ID UTF8 "0"
-CKA_ISSUER MULTILINE_OCTAL
-\060\075\061\013\060\011\006\003\125\004\006\023\002\106\122\061
-\021\060\017\006\003\125\004\012\023\010\103\145\162\164\160\154
-\165\163\061\033\060\031\006\003\125\004\003\023\022\103\154\141
-\163\163\040\062\040\120\162\151\155\141\162\171\040\103\101
-END
-CKA_SERIAL_NUMBER MULTILINE_OCTAL
-\002\021\000\205\275\113\363\330\332\343\151\366\224\327\137\303
-\245\104\043
-END
-CKA_VALUE MULTILINE_OCTAL
-\060\202\003\222\060\202\002\172\240\003\002\001\002\002\021\000
-\205\275\113\363\330\332\343\151\366\224\327\137\303\245\104\043
-\060\015\006\011\052\206\110\206\367\015\001\001\005\005\000\060
-\075\061\013\060\011\006\003\125\004\006\023\002\106\122\061\021
-\060\017\006\003\125\004\012\023\010\103\145\162\164\160\154\165
-\163\061\033\060\031\006\003\125\004\003\023\022\103\154\141\163
-\163\040\062\040\120\162\151\155\141\162\171\040\103\101\060\036
-\027\015\071\071\060\067\060\067\061\067\060\065\060\060\132\027
-\015\061\071\060\067\060\066\062\063\065\071\065\071\132\060\075
-\061\013\060\011\006\003\125\004\006\023\002\106\122\061\021\060
-\017\006\003\125\004\012\023\010\103\145\162\164\160\154\165\163
-\061\033\060\031\006\003\125\004\003\023\022\103\154\141\163\163
-\040\062\040\120\162\151\155\141\162\171\040\103\101\060\202\001
-\042\060\015\006\011\052\206\110\206\367\015\001\001\001\005\000
-\003\202\001\017\000\060\202\001\012\002\202\001\001\000\334\120
-\226\320\022\370\065\322\010\170\172\266\122\160\375\157\356\317
-\271\021\313\135\167\341\354\351\176\004\215\326\314\157\163\103
-\127\140\254\063\012\104\354\003\137\034\200\044\221\345\250\221
-\126\022\202\367\340\053\364\333\256\141\056\211\020\215\153\154
-\272\263\002\275\325\066\305\110\067\043\342\360\132\067\122\063
-\027\022\342\321\140\115\276\057\101\021\343\366\027\045\014\213
-\221\300\033\231\173\231\126\015\257\356\322\274\107\127\343\171
-\111\173\064\211\047\044\204\336\261\354\351\130\116\376\116\337
-\132\276\101\255\254\010\305\030\016\357\322\123\356\154\320\235
-\022\001\023\215\334\200\142\367\225\251\104\210\112\161\116\140
-\125\236\333\043\031\171\126\007\014\077\143\013\134\260\342\276
-\176\025\374\224\063\130\101\070\164\304\341\217\213\337\046\254
-\037\265\213\073\267\103\131\153\260\044\246\155\220\213\304\162
-\352\135\063\230\267\313\336\136\173\357\224\361\033\076\312\311
-\041\301\305\230\002\252\242\366\133\167\233\365\176\226\125\064
-\034\147\151\300\361\102\343\107\254\374\050\034\146\125\002\003
-\001\000\001\243\201\214\060\201\211\060\017\006\003\125\035\023
-\004\010\060\006\001\001\377\002\001\012\060\013\006\003\125\035
-\017\004\004\003\002\001\006\060\035\006\003\125\035\016\004\026
-\004\024\343\163\055\337\313\016\050\014\336\335\263\244\312\171
-\270\216\273\350\060\211\060\021\006\011\140\206\110\001\206\370
-\102\001\001\004\004\003\002\001\006\060\067\006\003\125\035\037
-\004\060\060\056\060\054\240\052\240\050\206\046\150\164\164\160
-\072\057\057\167\167\167\056\143\145\162\164\160\154\165\163\056
-\143\157\155\057\103\122\114\057\143\154\141\163\163\062\056\143
-\162\154\060\015\006\011\052\206\110\206\367\015\001\001\005\005
-\000\003\202\001\001\000\247\124\317\210\104\031\313\337\324\177
-\000\337\126\063\142\265\367\121\001\220\353\303\077\321\210\104
-\351\044\135\357\347\024\275\040\267\232\074\000\376\155\237\333
-\220\334\327\364\142\326\213\160\135\347\345\004\110\251\150\174
-\311\361\102\363\154\177\305\172\174\035\121\210\272\322\012\076
-\047\135\336\055\121\116\323\023\144\151\344\056\343\323\347\233
-\011\231\246\340\225\233\316\032\327\177\276\074\316\122\263\021
-\025\301\017\027\315\003\273\234\045\025\272\242\166\211\374\006
-\361\030\320\223\113\016\174\202\267\245\364\366\137\376\355\100
-\246\235\204\164\071\271\334\036\205\026\332\051\033\206\043\000
-\311\273\211\176\156\200\210\036\057\024\264\003\044\250\062\157
-\003\232\107\054\060\276\126\306\247\102\002\160\033\352\100\330
-\272\005\003\160\007\244\226\377\375\110\063\012\341\334\245\201
-\220\233\115\335\175\347\347\262\315\134\310\152\225\370\245\366
-\215\304\135\170\010\276\173\006\326\111\317\031\066\120\043\056
-\010\346\236\005\115\107\030\325\026\351\261\326\266\020\325\273
-\227\277\242\216\264\124
-END
-CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE
-
-# Trust for Certificate "Certplus Class 2 Primary CA"
-# Issuer: CN=Class 2 Primary CA,O=Certplus,C=FR
-# Serial Number:00:85:bd:4b:f3:d8:da:e3:69:f6:94:d7:5f:c3:a5:44:23
-# Subject: CN=Class 2 Primary CA,O=Certplus,C=FR
-# Not Valid Before: Wed Jul 07 17:05:00 1999
-# Not Valid After : Sat Jul 06 23:59:59 2019
-# Fingerprint (MD5): 88:2C:8C:52:B8:A2:3C:F3:F7:BB:03:EA:AE:AC:42:0B
-# Fingerprint (SHA1): 74:20:74:41:72:9C:DD:92:EC:79:31:D8:23:10:8D:C2:81:92:E2:BB
-CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
-CKA_TOKEN CK_BBOOL CK_TRUE
-CKA_PRIVATE CK_BBOOL CK_FALSE
-CKA_MODIFIABLE CK_BBOOL CK_FALSE
-CKA_LABEL UTF8 "Certplus Class 2 Primary CA"
-CKA_CERT_SHA1_HASH MULTILINE_OCTAL
-\164\040\164\101\162\234\335\222\354\171\061\330\043\020\215\302
-\201\222\342\273
-END
-CKA_CERT_MD5_HASH MULTILINE_OCTAL
-\210\054\214\122\270\242\074\363\367\273\003\352\256\254\102\013
-END
-CKA_ISSUER MULTILINE_OCTAL
-\060\075\061\013\060\011\006\003\125\004\006\023\002\106\122\061
-\021\060\017\006\003\125\004\012\023\010\103\145\162\164\160\154
-\165\163\061\033\060\031\006\003\125\004\003\023\022\103\154\141
-\163\163\040\062\040\120\162\151\155\141\162\171\040\103\101
-END
-CKA_SERIAL_NUMBER MULTILINE_OCTAL
-\002\021\000\205\275\113\363\330\332\343\151\366\224\327\137\303
-\245\104\043
-END
-CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
-CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
-CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
-CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
-
#
# Certificate "DST Root CA X3"
#
\013\004\216\007\333\051\266\012\356\235\202\065\065\020
END
CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE
+CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE
+CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE
# Trust for Certificate "DST Root CA X3"
# Issuer: CN=DST Root CA X3,O=Digital Signature Trust Co.
\205\206\171\145\322
END
CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE
+CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE
+CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE
# Trust for Certificate "SwissSign Platinum CA - G2"
# Issuer: CN=SwissSign Platinum CA - G2,O=SwissSign AG,C=CH
\111\044\133\311\260\320\127\301\372\076\172\341\227\311
END
CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE
+CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE
+CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE
# Trust for Certificate "SwissSign Gold CA - G2"
# Issuer: CN=SwissSign Gold CA - G2,O=SwissSign AG,C=CH
\156
END
CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE
+CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE
+CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE
# Trust for Certificate "SwissSign Silver CA - G2"
# Issuer: CN=SwissSign Silver CA - G2,O=SwissSign AG,C=CH
\253\022\350\263\336\132\345\240\174\350\017\042\035\132\351\131
END
CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE
+CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE
+CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE
# Trust for Certificate "GeoTrust Primary Certification Authority"
# Issuer: CN=GeoTrust Primary Certification Authority,O=GeoTrust Inc.,C=US
\215\126\214\150
END
CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE
+CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE
+CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE
# Trust for Certificate "thawte Primary Root CA"
# Issuer: CN=thawte Primary Root CA,OU="(c) 2006 thawte, Inc. - For authorized use only",OU=Certification Services Division,O="thawte, Inc.",C=US
\254\021\326\250\355\143\152
END
CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE
+CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE
+CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE
# Trust for Certificate "VeriSign Class 3 Public Primary Certification Authority - G5"
# Issuer: CN=VeriSign Class 3 Public Primary Certification Authority - G5,OU="(c) 2006 VeriSign, Inc. - For authorized use only",OU=VeriSign Trust Network,O="VeriSign, Inc.",C=US
\113\035\236\054\302\270\150\274\355\002\356\061
END
CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE
+CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE
+CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE
# Trust for Certificate "SecureTrust CA"
# Issuer: CN=SecureTrust CA,O=SecureTrust Corporation,C=US
\117\043\037\332\154\254\037\104\341\335\043\170\121\133\307\026
END
CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE
+CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE
+CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE
# Trust for Certificate "Secure Global CA"
# Issuer: CN=Secure Global CA,O=SecureTrust Corporation,C=US
\145
END
CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE
+CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE
+CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE
# Trust for Certificate "COMODO Certification Authority"
# Issuer: CN=COMODO Certification Authority,O=COMODO CA Limited,L=Salford,ST=Greater Manchester,C=GB
\244\140\114\260\125\240\240\173\127\262
END
CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE
+CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE
+CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE
# Trust for Certificate "Network Solutions Certificate Authority"
# Issuer: CN=Network Solutions Certificate Authority,O=Network Solutions L.L.C.,C=US
\334\335\363\377\035\054\072\026\127\331\222\071\326
END
CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE
+CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE
+CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE
# Trust for Certificate "COMODO ECC Certification Authority"
# Issuer: CN=COMODO ECC Certification Authority,O=COMODO CA Limited,L=Salford,ST=Greater Manchester,C=GB
\374\276\337\012\015
END
CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE
+CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE
+CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE
# Trust for Certificate "OISTE WISeKey Global Root GA CA"
# Issuer: CN=OISTE WISeKey Global Root GA CA,OU=OISTE Foundation Endorsed,OU=Copyright (c) 2005,O=WISeKey,C=CH
\300\226\130\057\352\273\106\327\273\344\331\056
END
CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE
+CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE
+CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE
# Trust for Certificate "Certigna"
# Issuer: CN=Certigna,O=Dhimyotis,C=FR
CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
-#
-# Certificate "Deutsche Telekom Root CA 2"
-#
-# Issuer: CN=Deutsche Telekom Root CA 2,OU=T-TeleSec Trust Center,O=Deutsche Telekom AG,C=DE
-# Serial Number: 38 (0x26)
-# Subject: CN=Deutsche Telekom Root CA 2,OU=T-TeleSec Trust Center,O=Deutsche Telekom AG,C=DE
-# Not Valid Before: Fri Jul 09 12:11:00 1999
-# Not Valid After : Tue Jul 09 23:59:00 2019
-# Fingerprint (MD5): 74:01:4A:91:B1:08:C4:58:CE:47:CD:F0:DD:11:53:08
-# Fingerprint (SHA1): 85:A4:08:C0:9C:19:3E:5D:51:58:7D:CD:D6:13:30:FD:8C:DE:37:BF
-CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
-CKA_TOKEN CK_BBOOL CK_TRUE
-CKA_PRIVATE CK_BBOOL CK_FALSE
-CKA_MODIFIABLE CK_BBOOL CK_FALSE
-CKA_LABEL UTF8 "Deutsche Telekom Root CA 2"
-CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
-CKA_SUBJECT MULTILINE_OCTAL
-\060\161\061\013\060\011\006\003\125\004\006\023\002\104\105\061
-\034\060\032\006\003\125\004\012\023\023\104\145\165\164\163\143
-\150\145\040\124\145\154\145\153\157\155\040\101\107\061\037\060
-\035\006\003\125\004\013\023\026\124\055\124\145\154\145\123\145
-\143\040\124\162\165\163\164\040\103\145\156\164\145\162\061\043
-\060\041\006\003\125\004\003\023\032\104\145\165\164\163\143\150
-\145\040\124\145\154\145\153\157\155\040\122\157\157\164\040\103
-\101\040\062
-END
-CKA_ID UTF8 "0"
-CKA_ISSUER MULTILINE_OCTAL
-\060\161\061\013\060\011\006\003\125\004\006\023\002\104\105\061
-\034\060\032\006\003\125\004\012\023\023\104\145\165\164\163\143
-\150\145\040\124\145\154\145\153\157\155\040\101\107\061\037\060
-\035\006\003\125\004\013\023\026\124\055\124\145\154\145\123\145
-\143\040\124\162\165\163\164\040\103\145\156\164\145\162\061\043
-\060\041\006\003\125\004\003\023\032\104\145\165\164\163\143\150
-\145\040\124\145\154\145\153\157\155\040\122\157\157\164\040\103
-\101\040\062
-END
-CKA_SERIAL_NUMBER MULTILINE_OCTAL
-\002\001\046
-END
-CKA_VALUE MULTILINE_OCTAL
-\060\202\003\237\060\202\002\207\240\003\002\001\002\002\001\046
-\060\015\006\011\052\206\110\206\367\015\001\001\005\005\000\060
-\161\061\013\060\011\006\003\125\004\006\023\002\104\105\061\034
-\060\032\006\003\125\004\012\023\023\104\145\165\164\163\143\150
-\145\040\124\145\154\145\153\157\155\040\101\107\061\037\060\035
-\006\003\125\004\013\023\026\124\055\124\145\154\145\123\145\143
-\040\124\162\165\163\164\040\103\145\156\164\145\162\061\043\060
-\041\006\003\125\004\003\023\032\104\145\165\164\163\143\150\145
-\040\124\145\154\145\153\157\155\040\122\157\157\164\040\103\101
-\040\062\060\036\027\015\071\071\060\067\060\071\061\062\061\061
-\060\060\132\027\015\061\071\060\067\060\071\062\063\065\071\060
-\060\132\060\161\061\013\060\011\006\003\125\004\006\023\002\104
-\105\061\034\060\032\006\003\125\004\012\023\023\104\145\165\164
-\163\143\150\145\040\124\145\154\145\153\157\155\040\101\107\061
-\037\060\035\006\003\125\004\013\023\026\124\055\124\145\154\145
-\123\145\143\040\124\162\165\163\164\040\103\145\156\164\145\162
-\061\043\060\041\006\003\125\004\003\023\032\104\145\165\164\163
-\143\150\145\040\124\145\154\145\153\157\155\040\122\157\157\164
-\040\103\101\040\062\060\202\001\042\060\015\006\011\052\206\110
-\206\367\015\001\001\001\005\000\003\202\001\017\000\060\202\001
-\012\002\202\001\001\000\253\013\243\065\340\213\051\024\261\024
-\205\257\074\020\344\071\157\065\135\112\256\335\352\141\215\225
-\111\364\157\144\243\032\140\146\244\251\100\042\204\331\324\245
-\345\170\223\016\150\001\255\271\115\134\072\316\323\270\250\102
-\100\337\317\243\272\202\131\152\222\033\254\034\232\332\010\053
-\045\047\371\151\043\107\361\340\353\054\172\233\365\023\002\320
-\176\064\174\302\236\074\000\131\253\365\332\014\365\062\074\053
-\254\120\332\326\303\336\203\224\312\250\014\231\062\016\010\110
-\126\133\152\373\332\341\130\130\001\111\137\162\101\074\025\006
-\001\216\135\255\252\270\223\264\315\236\353\247\350\152\055\122
-\064\333\072\357\134\165\121\332\333\363\061\371\356\161\230\062
-\304\124\025\104\014\371\233\125\355\255\337\030\010\240\243\206
-\212\111\356\123\005\217\031\114\325\336\130\171\233\322\152\034
-\102\253\305\325\247\317\150\017\226\344\341\141\230\166\141\310
-\221\174\326\076\000\342\221\120\207\341\235\012\346\255\227\322
-\035\306\072\175\313\274\332\003\064\325\216\133\001\365\152\007
-\267\026\266\156\112\177\002\003\001\000\001\243\102\060\100\060
-\035\006\003\125\035\016\004\026\004\024\061\303\171\033\272\365
-\123\327\027\340\211\172\055\027\154\012\263\053\235\063\060\017
-\006\003\125\035\023\004\010\060\006\001\001\377\002\001\005\060
-\016\006\003\125\035\017\001\001\377\004\004\003\002\001\006\060
-\015\006\011\052\206\110\206\367\015\001\001\005\005\000\003\202
-\001\001\000\224\144\131\255\071\144\347\051\353\023\376\132\303
-\213\023\127\310\004\044\360\164\167\300\140\343\147\373\351\211
-\246\203\277\226\202\174\156\324\303\075\357\236\200\156\273\051
-\264\230\172\261\073\124\353\071\027\107\176\032\216\013\374\037
-\061\131\061\004\262\316\027\363\054\307\142\066\125\342\042\330
-\211\125\264\230\110\252\144\372\326\034\066\330\104\170\132\132
-\043\072\127\227\365\172\060\117\256\237\152\114\113\053\216\240
-\003\343\076\340\251\324\322\173\322\263\250\342\162\074\255\236
-\377\200\131\344\233\105\264\366\073\260\315\071\031\230\062\345
-\352\041\141\220\344\061\041\216\064\261\367\057\065\112\205\020
-\332\347\212\067\041\276\131\143\340\362\205\210\061\123\324\124
-\024\205\160\171\364\056\006\167\047\165\057\037\270\212\371\376
-\305\272\330\066\344\203\354\347\145\267\277\143\132\363\106\257
-\201\224\067\324\101\214\326\043\326\036\317\365\150\033\104\143
-\242\132\272\247\065\131\241\345\160\005\233\016\043\127\231\224
-\012\155\272\071\143\050\206\222\363\030\204\330\373\321\317\005
-\126\144\127
-END
-CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE
-
-# Trust for Certificate "Deutsche Telekom Root CA 2"
-# Issuer: CN=Deutsche Telekom Root CA 2,OU=T-TeleSec Trust Center,O=Deutsche Telekom AG,C=DE
-# Serial Number: 38 (0x26)
-# Subject: CN=Deutsche Telekom Root CA 2,OU=T-TeleSec Trust Center,O=Deutsche Telekom AG,C=DE
-# Not Valid Before: Fri Jul 09 12:11:00 1999
-# Not Valid After : Tue Jul 09 23:59:00 2019
-# Fingerprint (MD5): 74:01:4A:91:B1:08:C4:58:CE:47:CD:F0:DD:11:53:08
-# Fingerprint (SHA1): 85:A4:08:C0:9C:19:3E:5D:51:58:7D:CD:D6:13:30:FD:8C:DE:37:BF
-CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
-CKA_TOKEN CK_BBOOL CK_TRUE
-CKA_PRIVATE CK_BBOOL CK_FALSE
-CKA_MODIFIABLE CK_BBOOL CK_FALSE
-CKA_LABEL UTF8 "Deutsche Telekom Root CA 2"
-CKA_CERT_SHA1_HASH MULTILINE_OCTAL
-\205\244\010\300\234\031\076\135\121\130\175\315\326\023\060\375
-\214\336\067\277
-END
-CKA_CERT_MD5_HASH MULTILINE_OCTAL
-\164\001\112\221\261\010\304\130\316\107\315\360\335\021\123\010
-END
-CKA_ISSUER MULTILINE_OCTAL
-\060\161\061\013\060\011\006\003\125\004\006\023\002\104\105\061
-\034\060\032\006\003\125\004\012\023\023\104\145\165\164\163\143
-\150\145\040\124\145\154\145\153\157\155\040\101\107\061\037\060
-\035\006\003\125\004\013\023\026\124\055\124\145\154\145\123\145
-\143\040\124\162\165\163\164\040\103\145\156\164\145\162\061\043
-\060\041\006\003\125\004\003\023\032\104\145\165\164\163\143\150
-\145\040\124\145\154\145\153\157\155\040\122\157\157\164\040\103
-\101\040\062
-END
-CKA_SERIAL_NUMBER MULTILINE_OCTAL
-\002\001\046
-END
-CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
-CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
-CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
-CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
-
#
# Certificate "Cybertrust Global Root"
#
\246\210\070\316\125
END
CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE
+CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE
+CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE
# Trust for Certificate "Cybertrust Global Root"
# Issuer: CN=Cybertrust Global Root,O="Cybertrust, Inc"
\201\370\021\234
END
CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE
+CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE
+CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE
# Trust for Certificate "ePKI Root Certification Authority"
# Issuer: OU=ePKI Root Certification Authority,O="Chunghwa Telecom Co., Ltd.",C=TW
\366\356\260\132\116\111\104\124\130\137\102\203
END
CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE
+CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE
+CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE
# Trust for Certificate "certSIGN ROOT CA"
# Issuer: OU=certSIGN ROOT CA,O=certSIGN,C=RO
\021\055
END
CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE
+CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE
+CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE
# Trust for Certificate "GeoTrust Primary Certification Authority - G3"
# Issuer: CN=GeoTrust Primary Certification Authority - G3,OU=(c) 2008 GeoTrust Inc. - For authorized use only,O=GeoTrust Inc.,C=US
\367\130\077\056\162\002\127\243\217\241\024\056
END
CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE
+CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE
+CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE
# Trust for Certificate "thawte Primary Root CA - G2"
# Issuer: CN=thawte Primary Root CA - G2,OU="(c) 2007 thawte, Inc. - For authorized use only",O="thawte, Inc.",C=US
\061\324\100\032\142\064\066\077\065\001\256\254\143\240
END
CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE
+CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE
+CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE
# Trust for Certificate "thawte Primary Root CA - G3"
# Issuer: CN=thawte Primary Root CA - G3,OU="(c) 2008 thawte, Inc. - For authorized use only",OU=Certification Services Division,O="thawte, Inc.",C=US
\017\212
END
CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE
+CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE
+CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE
# Trust for Certificate "GeoTrust Primary Certification Authority - G2"
# Issuer: CN=GeoTrust Primary Certification Authority - G2,OU=(c) 2007 GeoTrust Inc. - For authorized use only,O=GeoTrust Inc.,C=US
\354\315\202\141\361\070\346\117\227\230\052\132\215
END
CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE
+CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE
+CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE
# Trust for Certificate "VeriSign Universal Root Certification Authority"
# Issuer: CN=VeriSign Universal Root Certification Authority,OU="(c) 2008 VeriSign, Inc. - For authorized use only",OU=VeriSign Trust Network,O="VeriSign, Inc.",C=US
\055\247\330\206\052\335\056\020
END
CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE
+CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE
+CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE
# Trust for Certificate "VeriSign Class 3 Public Primary Certification Authority - G4"
# Issuer: CN=VeriSign Class 3 Public Primary Certification Authority - G4,OU="(c) 2007 VeriSign, Inc. - For authorized use only",OU=VeriSign Trust Network,O="VeriSign, Inc.",C=US
\330\316\304\143\165\077\131\107\261
END
CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE
+CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE
+CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE
# Trust for Certificate "NetLock Arany (Class Gold) FÅ‘tanúsÃtvány"
# Issuer: CN=NetLock Arany (Class Gold) F..tan..s..tv..ny,OU=Tan..s..tv..nykiad..k (Certification Services),O=NetLock Kft.,L=Budapest,C=HU
\370\161\012\334\271\374\175\062\140\346\353\257\212\001
END
CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE
+CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE
+CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE
# Trust for Certificate "Staat der Nederlanden Root CA - G2"
# Issuer: CN=Staat der Nederlanden Root CA - G2,O=Staat der Nederlanden,C=NL
\002\153\331\132
END
CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE
+CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE
+CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE
# Trust for Certificate "Hongkong Post Root CA 1"
# Issuer: CN=Hongkong Post Root CA 1,O=Hongkong Post,C=HK
\362
END
CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE
+CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE
+CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE
# Trust for Certificate "SecureSign RootCA11"
# Issuer: CN=SecureSign RootCA11,O="Japan Certification Services, Inc.",C=JP
\202\042\055\172\124\253\160\303\175\042\145\202\160\226
END
CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE
+CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE
+CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE
# Trust for Certificate "Microsec e-Szigno Root CA 2009"
# Issuer: E=info@e-szigno.hu,CN=Microsec e-Szigno Root CA 2009,O=Microsec Ltd.,L=Budapest,C=HU
\130\077\137
END
CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE
+CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE
+CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE
# Trust for Certificate "GlobalSign Root CA - R3"
# Issuer: CN=GlobalSign,O=GlobalSign,OU=GlobalSign Root CA - R3
\156\117\022\176\012\074\235\225
END
CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE
+CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE
+CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE
# Trust for Certificate "Autoridad de Certificacion Firmaprofesional CIF A62634068"
# Issuer: CN=Autoridad de Certificacion Firmaprofesional CIF A62634068,C=ES
\333\374\046\210\307
END
CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE
+CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE
+CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE
# Trust for Certificate "Izenpe.com"
# Issuer: CN=Izenpe.com,O=IZENPE S.A.,C=ES
\167\110\320
END
CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE
+CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE
+CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE
# Trust for Certificate "Chambers of Commerce Root - 2008"
# Issuer: CN=Chambers of Commerce Root - 2008,O=AC Camerfirma S.A.,serialNumber=A82743287,L=Madrid (see current address at www.camerfirma.com/address),C=EU
\351\233\256\325\124\300\164\200\321\013\102\237\301
END
CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE
+CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE
+CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE
# Trust for Certificate "Global Chambersign Root - 2008"
# Issuer: CN=Global Chambersign Root - 2008,O=AC Camerfirma S.A.,serialNumber=A82743287,L=Madrid (see current address at www.camerfirma.com/address),C=EU
\342\342\104\276\134\367\352\034\365
END
CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE
+CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE
+CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE
# Trust for Certificate "Go Daddy Root Certificate Authority - G2"
# Issuer: CN=Go Daddy Root Certificate Authority - G2,O="GoDaddy.com, Inc.",L=Scottsdale,ST=Arizona,C=US
\364
END
CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE
+CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE
+CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE
# Trust for Certificate "Starfield Root Certificate Authority - G2"
# Issuer: CN=Starfield Root Certificate Authority - G2,O="Starfield Technologies, Inc.",L=Scottsdale,ST=Arizona,C=US
\261\050\272
END
CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE
+CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE
+CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE
# Trust for Certificate "Starfield Services Root Certificate Authority - G2"
# Issuer: CN=Starfield Services Root Certificate Authority - G2,O="Starfield Technologies, Inc.",L=Scottsdale,ST=Arizona,C=US
\007\072\027\144\265\004\265\043\041\231\012\225\073\227\174\357
END
CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE
+CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE
+CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE
# Trust for Certificate "AffirmTrust Commercial"
# Issuer: CN=AffirmTrust Commercial,O=AffirmTrust,C=US
\355\132\000\124\205\034\026\066\222\014\134\372\246\255\277\333
END
CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE
+CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE
+CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE
# Trust for Certificate "AffirmTrust Networking"
# Issuer: CN=AffirmTrust Networking,O=AffirmTrust,C=US
\051\340\266\270\011\150\031\034\030\103
END
CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE
+CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE
+CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE
# Trust for Certificate "AffirmTrust Premium"
# Issuer: CN=AffirmTrust Premium,O=AffirmTrust,C=US
\214\171
END
CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE
+CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE
+CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE
# Trust for Certificate "AffirmTrust Premium ECC"
# Issuer: CN=AffirmTrust Premium ECC,O=AffirmTrust,C=US
\326\267\064\365\176\316\071\232\331\070\361\121\367\117\054
END
CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE
+CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE
+CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE
# Trust for Certificate "Certum Trusted Network CA"
# Issuer: CN=Certum Trusted Network CA,OU=Certum Certification Authority,O=Unizeto Technologies S.A.,C=PL
\274\060\376\173\016\063\220\373\355\322\024\221\037\007\257
END
CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE
+CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE
+CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE
# Trust for Certificate "TWCA Root Certification Authority"
# Issuer: CN=TWCA Root Certification Authority,OU=Root CA,O=TAIWAN-CA,C=TW
\201\050\174\247\175\047\353\000\256\215\067
END
CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE
+CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE
+CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE
# Trust for Certificate "Security Communication RootCA2"
# Issuer: OU=Security Communication RootCA2,O="SECOM Trust Systems CO.,LTD.",C=JP
\371\210\075\176\270\157\156\003\344\102
END
CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE
+CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE
+CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE
# Trust for Certificate "EC-ACC"
# Issuer: CN=EC-ACC,OU=Jerarquia Entitats de Certificacio Catalanes,OU=Vegeu https://www.catcert.net/verarrel (c)03,OU=Serveis Publics de Certificacio,O=Agencia Catalana de Certificacio (NIF Q-0801176-I),C=ES
\113\321\047\327\270
END
CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE
+CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE
+CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE
# Trust for Certificate "Hellenic Academic and Research Institutions RootCA 2011"
# Issuer: CN=Hellenic Academic and Research Institutions RootCA 2011,O=Hellenic Academic and Research Institutions Cert. Authority,C=GR
\216\362\024\212\314\351\265\174\373\154\235\014\245\341\226
END
CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE
+CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE
+CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE
# Trust for "Actalis Authentication Root CA"
# Issuer: CN=Actalis Authentication Root CA,O=Actalis S.p.A./03358520967,L=Milan,C=IT
\145\353\127\331\363\127\226\273\110\315\201
END
CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE
+CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE
+CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE
# Trust for "Trustis FPS Root CA"
# Issuer: OU=Trustis FPS Root CA,O=Trustis Limited,C=GB
\327\201\011\361\311\307\046\015\254\230\026\126\240
END
CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE
+CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE
+CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE
# Trust for "Buypass Class 2 Root CA"
# Issuer: CN=Buypass Class 2 Root CA,O=Buypass AS-983163327,C=NO
\061\356\006\274\163\277\023\142\012\237\307\271\227
END
CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE
+CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE
+CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE
# Trust for "Buypass Class 3 Root CA"
# Issuer: CN=Buypass Class 3 Root CA,O=Buypass AS-983163327,C=NO
\116\223\303\244\124\024\133
END
CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE
+CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE
+CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE
# Trust for "T-TeleSec GlobalRoot Class 3"
# Issuer: CN=T-TeleSec GlobalRoot Class 3,OU=T-Systems Trust Center,O=T-Systems Enterprise Services GmbH,C=DE
\307\314\165\301\226\305\235
END
CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE
+CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE
+CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE
# Trust for "EE Certification Centre Root CA"
# Issuer: E=pki@sk.ee,CN=EE Certification Centre Root CA,O=AS Sertifitseerimiskeskus,C=EE
\164\145\327\134\376\243\342
END
CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE
+CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE
+CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE
# Trust for "D-TRUST Root Class 3 CA 2 2009"
# Issuer: CN=D-TRUST Root Class 3 CA 2 2009,O=D-Trust GmbH,C=DE
\352\237\026\361\054\124\265
END
CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE
+CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE
+CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE
# Trust for "D-TRUST Root Class 3 CA 2 EV 2009"
# Issuer: CN=D-TRUST Root Class 3 CA 2 EV 2009,O=D-Trust GmbH,C=DE
CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
-#
-# Certificate "Swisscom Root CA 2"
-#
-# Issuer: CN=Swisscom Root CA 2,OU=Digital Certificate Services,O=Swisscom,C=ch
-# Serial Number:1e:9e:28:e8:48:f2:e5:ef:c3:7c:4a:1e:5a:18:67:b6
-# Subject: CN=Swisscom Root CA 2,OU=Digital Certificate Services,O=Swisscom,C=ch
-# Not Valid Before: Fri Jun 24 08:38:14 2011
-# Not Valid After : Wed Jun 25 07:38:14 2031
-# Fingerprint (MD5): 5B:04:69:EC:A5:83:94:63:18:A7:86:D0:E4:F2:6E:19
-# Fingerprint (SHA1): 77:47:4F:C6:30:E4:0F:4C:47:64:3F:84:BA:B8:C6:95:4A:8A:41:EC
-CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
-CKA_TOKEN CK_BBOOL CK_TRUE
-CKA_PRIVATE CK_BBOOL CK_FALSE
-CKA_MODIFIABLE CK_BBOOL CK_FALSE
-CKA_LABEL UTF8 "Swisscom Root CA 2"
-CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
-CKA_SUBJECT MULTILINE_OCTAL
-\060\144\061\013\060\011\006\003\125\004\006\023\002\143\150\061
-\021\060\017\006\003\125\004\012\023\010\123\167\151\163\163\143
-\157\155\061\045\060\043\006\003\125\004\013\023\034\104\151\147
-\151\164\141\154\040\103\145\162\164\151\146\151\143\141\164\145
-\040\123\145\162\166\151\143\145\163\061\033\060\031\006\003\125
-\004\003\023\022\123\167\151\163\163\143\157\155\040\122\157\157
-\164\040\103\101\040\062
-END
-CKA_ID UTF8 "0"
-CKA_ISSUER MULTILINE_OCTAL
-\060\144\061\013\060\011\006\003\125\004\006\023\002\143\150\061
-\021\060\017\006\003\125\004\012\023\010\123\167\151\163\163\143
-\157\155\061\045\060\043\006\003\125\004\013\023\034\104\151\147
-\151\164\141\154\040\103\145\162\164\151\146\151\143\141\164\145
-\040\123\145\162\166\151\143\145\163\061\033\060\031\006\003\125
-\004\003\023\022\123\167\151\163\163\143\157\155\040\122\157\157
-\164\040\103\101\040\062
-END
-CKA_SERIAL_NUMBER MULTILINE_OCTAL
-\002\020\036\236\050\350\110\362\345\357\303\174\112\036\132\030
-\147\266
-END
-CKA_VALUE MULTILINE_OCTAL
-\060\202\005\331\060\202\003\301\240\003\002\001\002\002\020\036
-\236\050\350\110\362\345\357\303\174\112\036\132\030\147\266\060
-\015\006\011\052\206\110\206\367\015\001\001\013\005\000\060\144
-\061\013\060\011\006\003\125\004\006\023\002\143\150\061\021\060
-\017\006\003\125\004\012\023\010\123\167\151\163\163\143\157\155
-\061\045\060\043\006\003\125\004\013\023\034\104\151\147\151\164
-\141\154\040\103\145\162\164\151\146\151\143\141\164\145\040\123
-\145\162\166\151\143\145\163\061\033\060\031\006\003\125\004\003
-\023\022\123\167\151\163\163\143\157\155\040\122\157\157\164\040
-\103\101\040\062\060\036\027\015\061\061\060\066\062\064\060\070
-\063\070\061\064\132\027\015\063\061\060\066\062\065\060\067\063
-\070\061\064\132\060\144\061\013\060\011\006\003\125\004\006\023
-\002\143\150\061\021\060\017\006\003\125\004\012\023\010\123\167
-\151\163\163\143\157\155\061\045\060\043\006\003\125\004\013\023
-\034\104\151\147\151\164\141\154\040\103\145\162\164\151\146\151
-\143\141\164\145\040\123\145\162\166\151\143\145\163\061\033\060
-\031\006\003\125\004\003\023\022\123\167\151\163\163\143\157\155
-\040\122\157\157\164\040\103\101\040\062\060\202\002\042\060\015
-\006\011\052\206\110\206\367\015\001\001\001\005\000\003\202\002
-\017\000\060\202\002\012\002\202\002\001\000\225\102\116\204\235
-\121\346\323\011\350\162\132\043\151\333\170\160\216\026\361\053
-\217\015\003\316\223\314\056\000\010\173\253\063\214\364\351\100
-\346\027\114\253\236\270\107\024\062\167\062\335\050\014\336\030
-\113\137\166\237\370\071\073\374\116\211\330\174\305\147\357\253
-\322\271\064\137\153\072\363\144\066\316\302\260\317\023\150\312
-\310\313\353\265\342\075\056\041\337\352\054\324\340\371\160\226
-\114\377\152\130\230\267\027\344\033\122\345\176\007\000\035\137
-\332\346\076\225\004\267\151\210\071\241\101\140\045\141\113\225
-\071\150\142\034\261\013\005\211\300\066\202\024\041\077\256\333
-\241\375\274\157\034\140\206\266\123\224\111\271\053\106\305\117
-\000\053\277\241\273\313\077\340\307\127\034\127\350\326\151\370
-\301\044\122\235\210\125\335\302\207\056\164\043\320\024\375\052
-\107\132\273\246\235\375\224\344\321\212\245\137\206\143\166\205
-\313\257\377\111\050\374\200\355\114\171\322\273\344\300\357\001
-\356\120\101\010\065\043\160\053\251\026\264\214\156\205\351\266
-\021\317\061\335\123\046\033\337\055\132\112\002\100\374\304\300
-\266\351\061\032\010\050\345\140\303\037\304\220\216\020\142\140
-\104\015\354\012\276\125\030\161\054\245\364\262\274\025\142\377
-\034\343\276\035\332\036\127\263\074\176\315\202\035\221\343\113
-\353\054\122\064\260\212\375\022\116\226\260\353\160\177\236\071
-\367\146\102\261\253\254\122\332\166\100\127\173\052\275\350\156
-\003\262\013\200\205\210\235\014\307\302\167\260\232\232\127\364
-\270\372\023\134\150\223\072\147\244\227\320\033\231\267\206\062
-\113\140\330\316\357\320\014\177\225\237\157\207\117\207\212\216
-\137\010\174\252\133\374\132\276\241\221\237\125\175\116\260\013
-\151\314\260\224\250\247\207\362\323\112\120\334\137\162\260\026
-\165\036\313\264\030\142\232\260\247\071\252\233\237\146\330\215
-\246\154\226\025\343\346\362\370\361\203\142\154\273\125\351\141
-\223\243\075\365\261\127\213\117\043\260\233\345\224\152\057\337
-\214\337\225\121\051\140\241\013\051\344\134\125\130\267\250\374
-\231\356\045\115\114\016\263\323\114\217\204\350\051\017\375\020
-\124\002\205\310\371\345\303\213\317\347\017\002\003\001\000\001
-\243\201\206\060\201\203\060\016\006\003\125\035\017\001\001\377
-\004\004\003\002\001\206\060\035\006\003\125\035\041\004\026\060
-\024\060\022\006\007\140\205\164\001\123\002\001\006\007\140\205
-\164\001\123\002\001\060\022\006\003\125\035\023\001\001\377\004
-\010\060\006\001\001\377\002\001\007\060\035\006\003\125\035\016
-\004\026\004\024\115\046\040\042\211\113\323\325\244\012\241\157
-\336\342\022\201\305\361\074\056\060\037\006\003\125\035\043\004
-\030\060\026\200\024\115\046\040\042\211\113\323\325\244\012\241
-\157\336\342\022\201\305\361\074\056\060\015\006\011\052\206\110
-\206\367\015\001\001\013\005\000\003\202\002\001\000\062\012\262
-\244\033\313\175\276\202\127\211\271\152\177\363\364\301\056\021
-\175\270\031\076\171\267\250\250\162\067\146\233\032\355\254\023
-\073\016\277\142\360\234\337\236\173\241\123\110\016\101\172\312
-\040\247\027\033\266\170\354\100\221\363\102\255\020\303\134\357
-\377\140\131\177\315\205\243\213\075\110\034\045\002\074\147\175
-\365\062\351\057\060\345\175\245\172\070\320\363\146\052\146\036
-\215\063\203\212\157\174\156\250\132\165\232\270\327\332\130\110
-\104\107\250\114\372\114\111\012\112\302\022\067\250\100\014\303
-\310\341\320\127\015\227\062\225\307\072\237\227\323\127\370\013
-\336\345\162\363\243\333\377\265\330\131\262\163\335\115\052\161
-\262\272\111\365\313\034\325\365\171\310\231\263\374\301\114\164
-\343\264\275\051\067\025\004\050\036\336\105\106\160\354\257\272
-\170\016\212\052\316\000\171\334\300\137\031\147\054\153\113\357
-\150\150\013\103\343\254\301\142\011\357\246\335\145\141\240\257
-\204\125\110\221\122\034\306\045\221\052\320\301\042\043\141\131
-\257\105\021\205\035\001\044\064\217\317\263\377\027\162\040\023
-\302\200\252\041\054\161\071\016\320\217\134\301\323\321\216\042
-\162\106\114\035\226\256\117\161\261\341\005\051\226\131\364\273
-\236\165\075\317\015\067\015\142\333\046\214\143\251\043\337\147
-\006\074\174\072\332\064\102\341\146\264\106\004\336\306\226\230
-\017\113\110\172\044\062\165\221\237\254\367\150\351\052\271\125
-\145\316\135\141\323\047\160\330\067\376\237\271\257\240\056\126
-\267\243\145\121\355\073\253\024\277\114\121\003\350\137\212\005
-\233\356\212\156\234\357\277\150\372\310\332\013\343\102\311\320
-\027\024\234\267\112\340\257\223\047\041\125\046\265\144\057\215
-\361\377\246\100\005\205\005\134\312\007\031\134\013\023\050\114
-\130\177\302\245\357\105\332\140\323\256\145\141\235\123\203\164
-\302\256\362\134\302\026\355\222\076\204\076\163\140\210\274\166
-\364\054\317\320\175\175\323\270\136\321\221\022\020\351\315\335
-\312\045\343\325\355\231\057\276\165\201\113\044\371\105\106\224
-\311\051\041\123\234\046\105\252\023\027\344\347\315\170\342\071
-\301\053\022\236\246\236\033\305\346\016\331\061\331
-END
-CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE
-
-# Trust for "Swisscom Root CA 2"
-# Issuer: CN=Swisscom Root CA 2,OU=Digital Certificate Services,O=Swisscom,C=ch
-# Serial Number:1e:9e:28:e8:48:f2:e5:ef:c3:7c:4a:1e:5a:18:67:b6
-# Subject: CN=Swisscom Root CA 2,OU=Digital Certificate Services,O=Swisscom,C=ch
-# Not Valid Before: Fri Jun 24 08:38:14 2011
-# Not Valid After : Wed Jun 25 07:38:14 2031
-# Fingerprint (MD5): 5B:04:69:EC:A5:83:94:63:18:A7:86:D0:E4:F2:6E:19
-# Fingerprint (SHA1): 77:47:4F:C6:30:E4:0F:4C:47:64:3F:84:BA:B8:C6:95:4A:8A:41:EC
-CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
-CKA_TOKEN CK_BBOOL CK_TRUE
-CKA_PRIVATE CK_BBOOL CK_FALSE
-CKA_MODIFIABLE CK_BBOOL CK_FALSE
-CKA_LABEL UTF8 "Swisscom Root CA 2"
-CKA_CERT_SHA1_HASH MULTILINE_OCTAL
-\167\107\117\306\060\344\017\114\107\144\077\204\272\270\306\225
-\112\212\101\354
-END
-CKA_CERT_MD5_HASH MULTILINE_OCTAL
-\133\004\151\354\245\203\224\143\030\247\206\320\344\362\156\031
-END
-CKA_ISSUER MULTILINE_OCTAL
-\060\144\061\013\060\011\006\003\125\004\006\023\002\143\150\061
-\021\060\017\006\003\125\004\012\023\010\123\167\151\163\163\143
-\157\155\061\045\060\043\006\003\125\004\013\023\034\104\151\147
-\151\164\141\154\040\103\145\162\164\151\146\151\143\141\164\145
-\040\123\145\162\166\151\143\145\163\061\033\060\031\006\003\125
-\004\003\023\022\123\167\151\163\163\143\157\155\040\122\157\157
-\164\040\103\101\040\062
-END
-CKA_SERIAL_NUMBER MULTILINE_OCTAL
-\002\020\036\236\050\350\110\362\345\357\303\174\112\036\132\030
-\147\266
-END
-CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
-CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
-CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
-CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
-
#
# Certificate "CA Disig Root R2"
#
\363\154\033\165\106\243\345\112\027\351\244\327\013
END
CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE
+CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE
+CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE
# Trust for "CA Disig Root R2"
# Issuer: CN=CA Disig Root R2,O=Disig a.s.,L=Bratislava,C=SK
\125\064\106\052\213\206\073
END
CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE
+CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE
+CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE
# Trust for "ACCVRAIZ1"
# Issuer: C=ES,O=ACCV,OU=PKIACCV,CN=ACCVRAIZ1
\053\006\320\004\315
END
CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE
+CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE
+CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE
# Trust for "TWCA Global Root CA"
# Issuer: CN=TWCA Global Root CA,OU=Root CA,O=TAIWAN-CA,C=TW
\245\240\314\277\323\366\165\244\165\226\155\126
END
CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE
+CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE
+CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE
# Trust for "TeliaSonera Root CA v1"
# Issuer: CN=TeliaSonera Root CA v1,O=TeliaSonera
\243\253\157\134\035\266\176\350\263\202\064\355\006\134\044
END
CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE
+CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE
+CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE
# Trust for "E-Tugra Certification Authority"
# Issuer: CN=E-Tugra Certification Authority,OU=E-Tugra Sertifikasyon Merkezi,O=E-Tu..ra EBG Bili..im Teknolojileri ve Hizmetleri A....,L=Ankara,C=TR
\005\047\216\023\241\156\302
END
CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE
+CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE
+CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE
# Trust for "T-TeleSec GlobalRoot Class 2"
# Issuer: CN=T-TeleSec GlobalRoot Class 2,OU=T-Systems Trust Center,O=T-Systems Enterprise Services GmbH,C=DE
\035\362\376\011\021\260\360\207\173\247\235
END
CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE
+CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE
+CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE
# Trust for "Atos TrustedRoot 2011"
# Issuer: C=DE,O=Atos,CN=Atos TrustedRoot 2011
\063\140\345\303
END
CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE
+CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE
+CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE
# Trust for "QuoVadis Root CA 1 G3"
# Issuer: CN=QuoVadis Root CA 1 G3,O=QuoVadis Limited,C=BM
\203\336\177\214
END
CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE
+CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE
+CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE
# Trust for "QuoVadis Root CA 2 G3"
# Issuer: CN=QuoVadis Root CA 2 G3,O=QuoVadis Limited,C=BM
\130\371\230\364
END
CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE
+CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE
+CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE
# Trust for "QuoVadis Root CA 3 G3"
# Issuer: CN=QuoVadis Root CA 3 G3,O=QuoVadis Limited,C=BM
\042\023\163\154\317\046\365\212\051\347
END
CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE
+CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE
+CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE
# Trust for "DigiCert Assured ID Root G2"
# Issuer: CN=DigiCert Assured ID Root G2,OU=www.digicert.com,O=DigiCert Inc,C=US
\352\226\143\152\145\105\222\225\001\264
END
CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE
+CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE
+CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE
# Trust for "DigiCert Assured ID Root G3"
# Issuer: CN=DigiCert Assured ID Root G3,OU=www.digicert.com,O=DigiCert Inc,C=US
\062\266
END
CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE
+CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE
+CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE
# Trust for "DigiCert Global Root G2"
# Issuer: CN=DigiCert Global Root G2,OU=www.digicert.com,O=DigiCert Inc,C=US
\263\047\027
END
CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE
+CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE
+CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE
# Trust for "DigiCert Global Root G3"
# Issuer: CN=DigiCert Global Root G3,OU=www.digicert.com,O=DigiCert Inc,C=US
\317\363\146\176
END
CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE
+CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE
+CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE
# Trust for "DigiCert Trusted Root G4"
# Issuer: CN=DigiCert Trusted Root G4,OU=www.digicert.com,O=DigiCert Inc,C=US
\065\123\205\006\112\135\237\255\273\033\137\164
END
CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE
+CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE
+CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE
# Trust for "COMODO RSA Certification Authority"
# Issuer: CN=COMODO RSA Certification Authority,O=COMODO CA Limited,L=Salford,ST=Greater Manchester,C=GB
\250\375
END
CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE
+CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE
+CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE
# Trust for "USERTrust RSA Certification Authority"
# Issuer: CN=USERTrust RSA Certification Authority,O=The USERTRUST Network,L=Jersey City,ST=New Jersey,C=US
\127\152\030
END
CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE
+CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE
+CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE
# Trust for "USERTrust ECC Certification Authority"
# Issuer: CN=USERTrust ECC Certification Authority,O=The USERTRUST Network,L=Jersey City,ST=New Jersey,C=US
\173\013\370\237\204
END
CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE
+CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE
+CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE
# Trust for "GlobalSign ECC Root CA - R4"
# Issuer: CN=GlobalSign,O=GlobalSign,OU=GlobalSign ECC Root CA - R4
\220\067
END
CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE
+CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE
+CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE
# Trust for "GlobalSign ECC Root CA - R5"
# Issuer: CN=GlobalSign,O=GlobalSign,OU=GlobalSign ECC Root CA - R5
\367\200\173\041\147\047\060\131
END
CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE
+CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE
+CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE
# Trust for "Staat der Nederlanden Root CA - G3"
# Issuer: CN=Staat der Nederlanden Root CA - G3,O=Staat der Nederlanden,C=NL
\356\354\327\056
END
CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE
+CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE
+CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE
# Trust for "Staat der Nederlanden EV Root CA"
# Issuer: CN=Staat der Nederlanden EV Root CA,O=Staat der Nederlanden,C=NL
\272\204\156\207
END
CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE
+CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE
+CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE
# Trust for "IdenTrust Commercial Root CA 1"
# Issuer: CN=IdenTrust Commercial Root CA 1,O=IdenTrust,C=US
\267\254\266\255\267\312\076\001\357\234
END
CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE
+CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE
+CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE
# Trust for "IdenTrust Public Sector Root CA 1"
# Issuer: CN=IdenTrust Public Sector Root CA 1,O=IdenTrust,C=US
\105\366
END
CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE
+CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE
+CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE
# Trust for "Entrust Root Certification Authority - G2"
# Issuer: CN=Entrust Root Certification Authority - G2,OU="(c) 2009 Entrust, Inc. - for authorized use only",OU=See www.entrust.net/legal-terms,O="Entrust, Inc.",C=US
\231\267\046\101\133\045\140\256\320\110\032\356\006
END
CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE
+CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE
+CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE
# Trust for "Entrust Root Certification Authority - EC1"
# Issuer: CN=Entrust Root Certification Authority - EC1,OU="(c) 2012 Entrust, Inc. - for authorized use only",OU=See www.entrust.net/legal-terms,O="Entrust, Inc.",C=US
\056
END
CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE
+CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE
+CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE
# Trust for "CFCA EV ROOT"
# Issuer: CN=CFCA EV ROOT,O=China Financial Certification Authority,C=CN
\065\255\201\307\116\161\272\210\023
END
CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE
+CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE
+CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE
# Trust for "OISTE WISeKey Global Root GB CA"
# Issuer: CN=OISTE WISeKey Global Root GB CA,OU=OISTE Foundation Endorsed,O=WISeKey,C=CH
\326\040\036\343\163\267
END
CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE
+CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE
+CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE
# Trust for "SZAFIR ROOT CA2"
# Issuer: CN=SZAFIR ROOT CA2,O=Krajowa Izba Rozliczeniowa S.A.,C=PL
\016\265\271\276\044\217
END
CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE
+CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE
+CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE
# Trust for "Certum Trusted Network CA 2"
# Issuer: CN=Certum Trusted Network CA 2,OU=Certum Certification Authority,O=Unizeto Technologies S.A.,C=PL
\276\157\152\247\365\054\102\355\062\255\266\041\236\276\274
END
CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE
+CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE
+CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE
# Trust for "Hellenic Academic and Research Institutions RootCA 2015"
# Issuer: CN=Hellenic Academic and Research Institutions RootCA 2015,O=Hellenic Academic and Research Institutions Cert. Authority,L=Athens,C=GR
\342\174\352\002\130\042\221
END
CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE
+CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE
+CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE
# Trust for "Hellenic Academic and Research Institutions ECC RootCA 2015"
# Issuer: CN=Hellenic Academic and Research Institutions ECC RootCA 2015,O=Hellenic Academic and Research Institutions Cert. Authority,L=Athens,C=GR
\376\216\036\127\242\315\100\235\176\142\042\332\336\030\047
END
CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE
+CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE
+CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE
# Trust for "ISRG Root X1"
# Issuer: CN=ISRG Root X1,O=Internet Security Research Group,C=US
\072\117\110\366\213\266\263
END
CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE
+CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE
+CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE
# Trust for "AC RAIZ FNMT-RCM"
# Issuer: OU=AC RAIZ FNMT-RCM,O=FNMT-RCM,C=ES
\304\220\276\361\271
END
CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE
+CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE
+CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE
# Trust for "Amazon Root CA 1"
# Issuer: CN=Amazon Root CA 1,O=Amazon,C=US
\340\373\011\140\154
END
CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE
+CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE
+CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE
# Trust for "Amazon Root CA 2"
# Issuer: CN=Amazon Root CA 2,O=Amazon,C=US
\143\044\110\034\337\060\175\325\150\073
END
CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE
+CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE
+CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE
# Trust for "Amazon Root CA 3"
# Issuer: CN=Amazon Root CA 3,O=Amazon,C=US
\012\166\324\245\274\020
END
CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE
+CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE
+CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE
# Trust for "Amazon Root CA 4"
# Issuer: CN=Amazon Root CA 4,O=Amazon,C=US
\045\307\043\200\203\012\353
END
CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE
+CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE
+CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE
# Trust for "LuxTrust Global Root 2"
# Issuer: CN=LuxTrust Global Root 2,O=LuxTrust S.A.,C=LU
\322\063\340\377\275\321\124\071\051\017
END
CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE
+CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE
+CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE
# Trust for "Symantec Class 1 Public Primary Certification Authority - G6"
# Issuer: CN=Symantec Class 1 Public Primary Certification Authority - G6,OU=Symantec Trust Network,O=Symantec Corporation,C=US
\157\374\132\344\202\125\131\257\061\251
END
CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE
+CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE
+CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE
# Trust for "Symantec Class 2 Public Primary Certification Authority - G6"
# Issuer: CN=Symantec Class 2 Public Primary Certification Authority - G6,OU=Symantec Trust Network,O=Symantec Corporation,C=US
\362\014\105\111\071\277\231\004\034\323\020\240
END
CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE
+CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE
+CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE
# Trust for "Symantec Class 1 Public Primary Certification Authority - G4"
# Issuer: CN=Symantec Class 1 Public Primary Certification Authority - G4,OU=Symantec Trust Network,O=Symantec Corporation,C=US
\051\246\330\107\331\240\226\030\333\362\105\263
END
CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE
+CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE
+CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE
# Trust for "Symantec Class 2 Public Primary Certification Authority - G4"
# Issuer: CN=Symantec Class 2 Public Primary Certification Authority - G4,OU=Symantec Trust Network,O=Symantec Corporation,C=US
\137\134
END
CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE
+CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE
+CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE
# Trust for "D-TRUST Root CA 3 2013"
# Issuer: CN=D-TRUST Root CA 3 2013,O=D-Trust GmbH,C=DE
\237\042\136\242\017\241\343
END
CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE
+CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE
+CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE
# Trust for "TUBITAK Kamu SM SSL Kok Sertifikasi - Surum 1"
# Issuer: CN=TUBITAK Kamu SM SSL Kok Sertifikasi - Surum 1,OU=Kamu Sertifikasyon Merkezi - Kamu SM,O=Turkiye Bilimsel ve Teknolojik Arastirma Kurumu - TUBITAK,L=Gebze - Kocaeli,C=TR
\250\267\101\154\007\335\275\074\206\227\057\322
END
CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE
+CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE
+CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE
# Trust for "GDCA TrustAUTH R5 ROOT"
# Issuer: CN=GDCA TrustAUTH R5 ROOT,O="GUANG DONG CERTIFICATE AUTHORITY CO.,LTD.",C=CN
\132\171\054\031
END
CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE
+CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE
+CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE
# Trust for "TrustCor RootCert CA-1"
# Issuer: CN=TrustCor RootCert CA-1,OU=TrustCor Certificate Authority,O=TrustCor Systems S. de R.L.,L=Panama City,ST=Panama,C=PA
\326\354\011
END
CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE
+CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE
+CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE
# Trust for "TrustCor RootCert CA-2"
# Issuer: CN=TrustCor RootCert CA-2,OU=TrustCor Certificate Authority,O=TrustCor Systems S. de R.L.,L=Panama City,ST=Panama,C=PA
\264\237\327\346
END
CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE
+CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE
+CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE
# Trust for "TrustCor ECA-1"
# Issuer: CN=TrustCor ECA-1,OU=TrustCor Certificate Authority,O=TrustCor Systems S. de R.L.,L=Panama City,ST=Panama,C=PA
\271
END
CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE
+CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE
+CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE
# Trust for "SSL.com Root Certification Authority RSA"
# Issuer: CN=SSL.com Root Certification Authority RSA,O=SSL Corporation,L=Houston,ST=Texas,C=US
\145
END
CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE
+CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE
+CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE
# Trust for "SSL.com Root Certification Authority ECC"
# Issuer: CN=SSL.com Root Certification Authority ECC,O=SSL Corporation,L=Houston,ST=Texas,C=US
\040\022\215\264\254\127\261\105\143\241\254\166\251\302\373
END
CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE
+CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE
+CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE
# Trust for "SSL.com EV Root Certification Authority RSA R2"
# Issuer: CN=SSL.com EV Root Certification Authority RSA R2,O=SSL Corporation,L=Houston,ST=Texas,C=US
\371\007\340\142\232\214\134\112
END
CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE
+CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE
+CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE
# Trust for "SSL.com EV Root Certification Authority ECC"
# Issuer: CN=SSL.com EV Root Certification Authority ECC,O=SSL Corporation,L=Houston,ST=Texas,C=US
\147\203\005\132\311\244\020
END
CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE
+CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE
+CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE
# Trust for "GlobalSign Root CA - R6"
# Issuer: CN=GlobalSign,O=GlobalSign,OU=GlobalSign Root CA - R6
\242\355\357\173\260\200\117\130\017\113\123\071\275
END
CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE
+CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE
+CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE
# Trust for "OISTE WISeKey Global Root GC CA"
# Issuer: CN=OISTE WISeKey Global Root GC CA,OU=OISTE Foundation Endorsed,O=WISeKey,C=CH
\361\306\143\107\125\034\272\245\010\121\165\246\110\045
END
CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE
+CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE
+CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE
# Trust for "GTS Root R1"
# Issuer: CN=GTS Root R1,O=Google Trust Services LLC,C=US
\267\375\054\010\122\117\202\335\243\360\324\206\011\002
END
CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE
+CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE
+CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE
# Trust for "GTS Root R2"
# Issuer: CN=GTS Root R2,O=Google Trust Services LLC,C=US
\232\051\252\226\323\203\043\311\244\173\141\263\314\002\350\135
END
CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE
+CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE
+CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE
# Trust for "GTS Root R3"
# Issuer: CN=GTS Root R3,O=Google Trust Services LLC,C=US
\161\314\362\260\115\326\376\231\310\224\251\165\242\343
END
CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE
+CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE
+CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE
# Trust for "GTS Root R4"
# Issuer: CN=GTS Root R4,O=Google Trust Services LLC,C=US
\120\037\212\373\006\365\302\031\360\320
END
CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE
+CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE
+CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE
# Trust for "UCA Global G2 Root"
# Issuer: CN=UCA Global G2 Root,O=UniTrust,C=CN
\177\275\145\040\262\311\301\053\166\030\166\237\126\261
END
CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE
+CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE
+CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE
# Trust for "UCA Extended Validation Root"
# Issuer: CN=UCA Extended Validation Root,O=UniTrust,C=CN
\045\124\377\242\332\117\212\141\071\136\256\075\112\214\275
END
CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE
+CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE
+CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE
# Trust for "Certigna Root CA"
# Issuer: CN=Certigna Root CA,OU=0002 48146308100036,O=Dhimyotis,C=FR
\210\336\272\314\037\200\176\112
END
CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE
+CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE
+CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE
# Trust for "emSign Root CA - G1"
# Issuer: CN=emSign Root CA - G1,O=eMudhra Technologies Limited,OU=emSign PKI,C=IN
\054\243
END
CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE
+CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE
+CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE
# Trust for "emSign ECC Root CA - G3"
# Issuer: CN=emSign ECC Root CA - G3,O=eMudhra Technologies Limited,OU=emSign PKI,C=IN
\361\337\312\276\203\015\102
END
CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE
+CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE
+CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE
# Trust for "emSign Root CA - C1"
# Issuer: CN=emSign Root CA - C1,O=eMudhra Inc,OU=emSign PKI,C=US
\276\201\007\125\060\120\040\024\365\127\070\012\250\061\121
END
CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE
+CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE
+CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE
# Trust for "emSign ECC Root CA - C3"
# Issuer: CN=emSign ECC Root CA - C3,O=eMudhra Inc,OU=emSign PKI,C=US
\232\233\364
END
CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE
+CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE
+CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE
# Trust for "Hongkong Post Root CA 3"
# Issuer: CN=Hongkong Post Root CA 3,O=Hongkong Post,L=Hong Kong,ST=Hong Kong,C=HK
CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
+
+#
+# Certificate "Entrust Root Certification Authority - G4"
+#
+# Issuer: CN=Entrust Root Certification Authority - G4,OU="(c) 2015 Entrust, Inc. - for authorized use only",OU=See www.entrust.net/legal-terms,O="Entrust, Inc.",C=US
+# Serial Number:00:d9:b5:43:7f:af:a9:39:0f:00:00:00:00:55:65:ad:58
+# Subject: CN=Entrust Root Certification Authority - G4,OU="(c) 2015 Entrust, Inc. - for authorized use only",OU=See www.entrust.net/legal-terms,O="Entrust, Inc.",C=US
+# Not Valid Before: Wed May 27 11:11:16 2015
+# Not Valid After : Sun Dec 27 11:41:16 2037
+# Fingerprint (SHA-256): DB:35:17:D1:F6:73:2A:2D:5A:B9:7C:53:3E:C7:07:79:EE:32:70:A6:2F:B4:AC:42:38:37:24:60:E6:F0:1E:88
+# Fingerprint (SHA1): 14:88:4E:86:26:37:B0:26:AF:59:62:5C:40:77:EC:35:29:BA:96:01
+CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Entrust Root Certification Authority - G4"
+CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509
+CKA_SUBJECT MULTILINE_OCTAL
+\060\201\276\061\013\060\011\006\003\125\004\006\023\002\125\123
+\061\026\060\024\006\003\125\004\012\023\015\105\156\164\162\165
+\163\164\054\040\111\156\143\056\061\050\060\046\006\003\125\004
+\013\023\037\123\145\145\040\167\167\167\056\145\156\164\162\165
+\163\164\056\156\145\164\057\154\145\147\141\154\055\164\145\162
+\155\163\061\071\060\067\006\003\125\004\013\023\060\050\143\051
+\040\062\060\061\065\040\105\156\164\162\165\163\164\054\040\111
+\156\143\056\040\055\040\146\157\162\040\141\165\164\150\157\162
+\151\172\145\144\040\165\163\145\040\157\156\154\171\061\062\060
+\060\006\003\125\004\003\023\051\105\156\164\162\165\163\164\040
+\122\157\157\164\040\103\145\162\164\151\146\151\143\141\164\151
+\157\156\040\101\165\164\150\157\162\151\164\171\040\055\040\107
+\064
+END
+CKA_ID UTF8 "0"
+CKA_ISSUER MULTILINE_OCTAL
+\060\201\276\061\013\060\011\006\003\125\004\006\023\002\125\123
+\061\026\060\024\006\003\125\004\012\023\015\105\156\164\162\165
+\163\164\054\040\111\156\143\056\061\050\060\046\006\003\125\004
+\013\023\037\123\145\145\040\167\167\167\056\145\156\164\162\165
+\163\164\056\156\145\164\057\154\145\147\141\154\055\164\145\162
+\155\163\061\071\060\067\006\003\125\004\013\023\060\050\143\051
+\040\062\060\061\065\040\105\156\164\162\165\163\164\054\040\111
+\156\143\056\040\055\040\146\157\162\040\141\165\164\150\157\162
+\151\172\145\144\040\165\163\145\040\157\156\154\171\061\062\060
+\060\006\003\125\004\003\023\051\105\156\164\162\165\163\164\040
+\122\157\157\164\040\103\145\162\164\151\146\151\143\141\164\151
+\157\156\040\101\165\164\150\157\162\151\164\171\040\055\040\107
+\064
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\021\000\331\265\103\177\257\251\071\017\000\000\000\000\125
+\145\255\130
+END
+CKA_VALUE MULTILINE_OCTAL
+\060\202\006\113\060\202\004\063\240\003\002\001\002\002\021\000
+\331\265\103\177\257\251\071\017\000\000\000\000\125\145\255\130
+\060\015\006\011\052\206\110\206\367\015\001\001\013\005\000\060
+\201\276\061\013\060\011\006\003\125\004\006\023\002\125\123\061
+\026\060\024\006\003\125\004\012\023\015\105\156\164\162\165\163
+\164\054\040\111\156\143\056\061\050\060\046\006\003\125\004\013
+\023\037\123\145\145\040\167\167\167\056\145\156\164\162\165\163
+\164\056\156\145\164\057\154\145\147\141\154\055\164\145\162\155
+\163\061\071\060\067\006\003\125\004\013\023\060\050\143\051\040
+\062\060\061\065\040\105\156\164\162\165\163\164\054\040\111\156
+\143\056\040\055\040\146\157\162\040\141\165\164\150\157\162\151
+\172\145\144\040\165\163\145\040\157\156\154\171\061\062\060\060
+\006\003\125\004\003\023\051\105\156\164\162\165\163\164\040\122
+\157\157\164\040\103\145\162\164\151\146\151\143\141\164\151\157
+\156\040\101\165\164\150\157\162\151\164\171\040\055\040\107\064
+\060\036\027\015\061\065\060\065\062\067\061\061\061\061\061\066
+\132\027\015\063\067\061\062\062\067\061\061\064\061\061\066\132
+\060\201\276\061\013\060\011\006\003\125\004\006\023\002\125\123
+\061\026\060\024\006\003\125\004\012\023\015\105\156\164\162\165
+\163\164\054\040\111\156\143\056\061\050\060\046\006\003\125\004
+\013\023\037\123\145\145\040\167\167\167\056\145\156\164\162\165
+\163\164\056\156\145\164\057\154\145\147\141\154\055\164\145\162
+\155\163\061\071\060\067\006\003\125\004\013\023\060\050\143\051
+\040\062\060\061\065\040\105\156\164\162\165\163\164\054\040\111
+\156\143\056\040\055\040\146\157\162\040\141\165\164\150\157\162
+\151\172\145\144\040\165\163\145\040\157\156\154\171\061\062\060
+\060\006\003\125\004\003\023\051\105\156\164\162\165\163\164\040
+\122\157\157\164\040\103\145\162\164\151\146\151\143\141\164\151
+\157\156\040\101\165\164\150\157\162\151\164\171\040\055\040\107
+\064\060\202\002\042\060\015\006\011\052\206\110\206\367\015\001
+\001\001\005\000\003\202\002\017\000\060\202\002\012\002\202\002
+\001\000\261\354\054\102\356\342\321\060\377\245\222\107\342\055
+\303\272\144\227\155\312\367\015\265\131\301\263\313\250\150\031
+\330\257\204\155\060\160\135\176\363\056\322\123\231\341\376\037
+\136\331\110\257\135\023\215\333\377\143\063\115\323\000\002\274
+\304\370\321\006\010\224\171\130\212\025\336\051\263\375\375\304
+\117\350\252\342\240\073\171\315\277\153\103\062\335\331\164\020
+\271\367\364\150\324\273\320\207\325\252\113\212\052\157\052\004
+\265\262\246\307\240\172\346\110\253\322\321\131\314\326\176\043
+\346\227\154\360\102\345\334\121\113\025\101\355\111\112\311\336
+\020\227\326\166\301\357\245\265\066\024\227\065\330\170\042\065
+\122\357\103\275\333\047\333\141\126\202\064\334\313\210\140\014
+\013\132\345\054\001\306\124\257\327\252\301\020\173\322\005\132
+\270\100\236\206\247\303\220\206\002\126\122\011\172\234\322\047
+\202\123\112\145\122\152\365\074\347\250\362\234\257\213\275\323
+\016\324\324\136\156\207\236\152\075\105\035\321\135\033\364\351
+\012\254\140\231\373\211\264\377\230\054\317\174\035\351\002\252
+\004\232\036\270\334\210\156\045\263\154\146\367\074\220\363\127
+\301\263\057\365\155\362\373\312\241\370\051\235\106\213\263\152
+\366\346\147\007\276\054\147\012\052\037\132\262\076\127\304\323
+\041\041\143\145\122\221\033\261\231\216\171\176\346\353\215\000
+\331\132\252\352\163\350\244\202\002\107\226\376\133\216\124\141
+\243\353\057\113\060\260\213\043\165\162\174\041\074\310\366\361
+\164\324\034\173\243\005\125\356\273\115\073\062\276\232\167\146
+\236\254\151\220\042\007\037\141\072\226\276\345\232\117\314\005
+\074\050\131\323\301\014\124\250\131\141\275\310\162\114\350\334
+\237\207\177\275\234\110\066\136\225\243\016\271\070\044\125\374
+\165\146\353\002\343\010\064\051\112\306\343\053\057\063\240\332
+\243\206\245\022\227\375\200\053\332\024\102\343\222\275\076\362
+\135\136\147\164\056\034\210\107\051\064\137\342\062\250\234\045
+\067\214\272\230\000\227\213\111\226\036\375\045\212\254\334\332
+\330\135\164\156\146\260\377\104\337\241\030\306\276\110\057\067
+\224\170\370\225\112\077\177\023\136\135\131\375\164\206\103\143
+\163\111\002\003\001\000\001\243\102\060\100\060\017\006\003\125
+\035\023\001\001\377\004\005\060\003\001\001\377\060\016\006\003
+\125\035\017\001\001\377\004\004\003\002\001\006\060\035\006\003
+\125\035\016\004\026\004\024\237\070\304\126\043\303\071\350\240
+\161\154\350\124\114\344\350\072\261\277\147\060\015\006\011\052
+\206\110\206\367\015\001\001\013\005\000\003\202\002\001\000\022
+\345\102\246\173\213\017\014\344\106\245\266\140\100\207\214\045
+\176\255\270\150\056\133\306\100\166\074\003\370\311\131\364\363
+\253\142\316\020\215\264\132\144\214\150\300\260\162\103\064\322
+\033\013\366\054\123\322\312\220\113\206\146\374\252\203\042\364
+\213\032\157\046\110\254\166\167\010\277\305\230\134\364\046\211
+\236\173\303\271\144\062\001\177\323\303\335\130\155\354\261\253
+\204\125\164\167\204\004\047\122\153\206\114\316\335\271\145\377
+\326\306\136\237\232\020\231\113\165\152\376\152\351\227\040\344
+\344\166\172\306\320\044\252\220\315\040\220\272\107\144\373\177
+\007\263\123\170\265\012\142\362\163\103\316\101\053\201\152\056
+\205\026\224\123\324\153\137\162\042\253\121\055\102\325\000\234
+\231\277\336\273\224\073\127\375\232\365\206\313\126\073\133\210
+\001\345\174\050\113\003\371\111\203\174\262\177\174\343\355\216
+\241\177\140\123\216\125\235\120\064\022\017\267\227\173\154\207
+\112\104\347\365\155\354\200\067\360\130\031\156\112\150\166\360
+\037\222\344\352\265\222\323\141\121\020\013\255\247\331\137\307
+\137\334\037\243\134\214\241\176\233\267\236\323\126\157\146\136
+\007\226\040\355\013\164\373\146\116\213\021\025\351\201\111\176
+\157\260\324\120\177\042\327\137\145\002\015\246\364\205\036\330
+\256\006\113\112\247\322\061\146\302\370\316\345\010\246\244\002
+\226\104\150\127\304\325\063\317\031\057\024\304\224\034\173\244
+\331\360\237\016\261\200\342\321\236\021\144\251\210\021\072\166
+\202\345\142\302\200\330\244\203\355\223\357\174\057\220\260\062
+\114\226\025\150\110\122\324\231\010\300\044\350\034\343\263\245
+\041\016\222\300\220\037\317\040\137\312\073\070\307\267\155\072
+\363\346\104\270\016\061\153\210\216\160\353\234\027\122\250\101
+\224\056\207\266\347\246\022\305\165\337\133\300\012\156\173\244
+\344\136\206\371\066\224\337\167\303\351\015\300\071\361\171\273
+\106\216\253\103\131\047\267\040\273\043\351\126\100\041\354\061
+\075\145\252\103\362\075\337\160\104\341\272\115\046\020\073\230
+\237\363\310\216\033\070\126\041\152\121\223\323\221\312\106\332
+\211\267\075\123\203\054\010\037\213\217\123\335\377\254\037
+END
+CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE
+
+# Trust for "Entrust Root Certification Authority - G4"
+# Issuer: CN=Entrust Root Certification Authority - G4,OU="(c) 2015 Entrust, Inc. - for authorized use only",OU=See www.entrust.net/legal-terms,O="Entrust, Inc.",C=US
+# Serial Number:00:d9:b5:43:7f:af:a9:39:0f:00:00:00:00:55:65:ad:58
+# Subject: CN=Entrust Root Certification Authority - G4,OU="(c) 2015 Entrust, Inc. - for authorized use only",OU=See www.entrust.net/legal-terms,O="Entrust, Inc.",C=US
+# Not Valid Before: Wed May 27 11:11:16 2015
+# Not Valid After : Sun Dec 27 11:41:16 2037
+# Fingerprint (SHA-256): DB:35:17:D1:F6:73:2A:2D:5A:B9:7C:53:3E:C7:07:79:EE:32:70:A6:2F:B4:AC:42:38:37:24:60:E6:F0:1E:88
+# Fingerprint (SHA1): 14:88:4E:86:26:37:B0:26:AF:59:62:5C:40:77:EC:35:29:BA:96:01
+CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST
+CKA_TOKEN CK_BBOOL CK_TRUE
+CKA_PRIVATE CK_BBOOL CK_FALSE
+CKA_MODIFIABLE CK_BBOOL CK_FALSE
+CKA_LABEL UTF8 "Entrust Root Certification Authority - G4"
+CKA_CERT_SHA1_HASH MULTILINE_OCTAL
+\024\210\116\206\046\067\260\046\257\131\142\134\100\167\354\065
+\051\272\226\001
+END
+CKA_CERT_MD5_HASH MULTILINE_OCTAL
+\211\123\361\203\043\267\174\216\005\361\214\161\070\116\037\210
+END
+CKA_ISSUER MULTILINE_OCTAL
+\060\201\276\061\013\060\011\006\003\125\004\006\023\002\125\123
+\061\026\060\024\006\003\125\004\012\023\015\105\156\164\162\165
+\163\164\054\040\111\156\143\056\061\050\060\046\006\003\125\004
+\013\023\037\123\145\145\040\167\167\167\056\145\156\164\162\165
+\163\164\056\156\145\164\057\154\145\147\141\154\055\164\145\162
+\155\163\061\071\060\067\006\003\125\004\013\023\060\050\143\051
+\040\062\060\061\065\040\105\156\164\162\165\163\164\054\040\111
+\156\143\056\040\055\040\146\157\162\040\141\165\164\150\157\162
+\151\172\145\144\040\165\163\145\040\157\156\154\171\061\062\060
+\060\006\003\125\004\003\023\051\105\156\164\162\165\163\164\040
+\122\157\157\164\040\103\145\162\164\151\146\151\143\141\164\151
+\157\156\040\101\165\164\150\157\162\151\164\171\040\055\040\107
+\064
+END
+CKA_SERIAL_NUMBER MULTILINE_OCTAL
+\002\021\000\331\265\103\177\257\251\071\017\000\000\000\000\125
+\145\255\130
+END
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
+CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
# File where the addresses of the homenet are stored.
our $homenet_file = "$settingsdir/suricata-homenet.yaml";
+# File where the addresses of the used DNS servers are stored.
+our $dns_servers_file = "$settingsdir/suricata-dns-servers.yaml";
+
# File which contains the enabled sids.
our $enabled_sids_file = "$settingsdir/oinkmaster-enabled-sids.conf";
close(FILE);
}
+#
+# Function to generate and write the file which contains the configured and used DNS servers.
+#
+sub generate_dns_servers_file() {
+ # Open file which contains the current used DNS configuration.
+ open (FILE, "${General::swroot}/red/dns") or die "Could not read DNS configuration from ${General::swroot}/red/dns. $!\n";
+
+ # Read-in whole file content and store it in a temporary array.
+ my @file_content = <FILE>;
+
+ # Close file handle.
+ close(FILE);
+
+ # Format dns servers declaration.
+ my $line = "\"\[";
+
+ # Loop through the array which contains the file content.
+ foreach my $server (@file_content) {
+ # Remove newlines.
+ chomp($server);
+
+ # Check if the current DNS configuration is using the local recursor mode.
+ if ($server eq "local recursor") {
+ # The responsible DNS servers on red are directly used, and because we are not able
+ # to specify each single DNS server address here, we currently have to thread each
+ # address which is not part of the HOME_NET as possible DNS server.
+ $line = "$line" . "!\$HOME_NET";
+ } else {
+ # Add the DNS server to the line.
+ $line = "$line" . "$server";
+ }
+
+ # Check if the current DNS server was the last in the array.
+ if ($server eq $file_content[-1]) {
+ # Close the line.
+ $line = "$line" . "\]\"";
+ } else {
+ # Add "," for the next DNS server.
+ $line = "$line" . "\,";
+ }
+ }
+
+ # Open file to store the used DNS server addresses.
+ open(FILE, ">$dns_servers_file") or die "Could not open $dns_servers_file. $!\n";
+
+ # Print yaml header.
+ print FILE "%YAML 1.1\n";
+ print FILE "---\n\n";
+
+ # Print notice about autogenerated file.
+ print FILE "#Autogenerated file. Any custom changes will be overwritten!\n";
+
+ # Print the generated DNS declaration to the file.
+ print FILE "DNS_SERVERS:\t$line\n";
+
+ # Close file handle.
+ close(FILE);
+}
+
#
## Function to generate and write the file for used rulefiles.
#
PidFile /var/run/clamav/freshclam.pid
DatabaseMirror database.clamav.net
+ReceiveTimeout 600
ScriptedUpdates yes
# test for buggy nic that lose link at mtu set...
carrier=`cat /sys/class/net/$interface/carrier`
if [ "$carrier" == "0" ]; then
- syslog info "Warning! Carrier loss after MTU set. Reinit ..."
+ syslog info "Warning! Carrier loss after MTU set. Reinit needed..."
ip link set "$interface" down
ip link set "$interface" up
+ exit 1
fi
}
+
if [ -n "$new_interface_mtu" ] && $if_up; then
if [ $RED_DHCP_FORCE_MTU -ge 576 ]; then
new_interface_mtu=$RED_DHCP_FORCE_MTU
&General::readhasharray("$configsrvgrp", \%customservicegrp);
&General::get_aliases(\%aliases);
+# Get all available GeoIP locations.
+my @available_geoip_locations = &get_geoip_locations();
+
sub get_srv_prot
{
my $val=shift;
# Handle rule options with GeoIP as source.
} elsif ($key eq "cust_geoip_src") {
- # Get external interface.
- my $external_interface = &get_external_interface();
+ # Check if the given GeoIP location is available.
+ if(&geoip_location_is_available($value)) {
+ # Get external interface.
+ my $external_interface = &get_external_interface();
- push(@ret, ["-m geoip --src-cc $value", "$external_interface"]);
+ push(@ret, ["-m geoip --src-cc $value", "$external_interface"]);
+ }
# Handle rule options with GeoIP as target.
} elsif ($key eq "cust_geoip_tgt") {
- # Get external interface.
- my $external_interface = &get_external_interface();
+ # Check if the given GeoIP location is available.
+ if(&geoip_location_is_available($value)) {
+ # Get external interface.
+ my $external_interface = &get_external_interface();
- push(@ret, ["-m geoip --dst-cc $value", "$external_interface"]);
+ push(@ret, ["-m geoip --dst-cc $value", "$external_interface"]);
+ }
# If nothing was selected, we assume "any".
} else {
return &GeoIP::get_geoip_locations();
}
+# Function to check if a database of a given GeoIP location is
+# available.
+sub geoip_location_is_available($) {
+ my ($location) = @_;
+
+ # Loop through the global array of available GeoIP locations.
+ foreach my $geoip_location (@available_geoip_locations) {
+ # Check if the current processed location is the searched one.
+ if($location eq $geoip_location) {
+ # If it is part of the array, return "1" - True.
+ return 1;
+ }
+ }
+
+ # If we got here, the given location is not part of the array of available
+ # zones. Return nothing.
+ return;
+}
+
return 1;
SSLEngine on
SSLProtocol all -SSLv3 -TLSv1 -TLSv1.1
- SSLCipherSuite TLS_CHACHA20_POLY1305_SHA256:TLS_AES_256_GCM_SHA384:TLS_AES_128_GCM_SHA256:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES256-SHA384:ECDHE-RSA-AES128-SHA256
+ SSLCipherSuite AESGCM+EECDH:CHACHA20+EECDH:@STRENGTH:+aRSA
SSLHonorCipherOrder on
SSLCompression off
SSLSessionTickets off
Header always set X-Content-Type-Options nosniff
Header always set Content-Security-Policy "default-src 'self'; script-src 'self' 'unsafe-inline' 'unsafe-eval'; style-src 'self' 'unsafe-inline'"
+ Header always set Referrer-Policy strict-origin
+ Header always set X-Frame-Options sameorigin
<Directory /srv/web/ipfire/html>
Options ExecCGI
Header always set X-Content-Type-Options nosniff
Header always set Content-Security-Policy "default-src 'self'; script-src 'self' 'unsafe-inline' 'unsafe-eval'; style-src 'self' 'unsafe-inline'"
+ Header always set Referrer-Policy strict-origin
+ Header always set X-Frame-Options sameorigin
<Directory /srv/web/ipfire/html>
Options ExecCGI
--- /dev/null
+# Master libvirt daemon configuration file
+#
+
+#################################################################
+#
+# Network connectivity controls
+#
+
+# Flag listening for secure TLS connections on the public TCP/IP port.
+# NB, must pass the --listen flag to the libvirtd process for this to
+# have any effect.
+#
+# This setting is not required or honoured if using systemd socket
+# activation.
+#
+# It is necessary to setup a CA and issue server certificates before
+# using this capability.
+#
+# This is enabled by default, uncomment this to disable it
+listen_tls = 0
+
+# Listen for unencrypted TCP connections on the public TCP/IP port.
+# NB, must pass the --listen flag to the libvirtd process for this to
+# have any effect.
+#
+# This setting is not required or honoured if using systemd socket
+# activation.
+#
+# Using the TCP socket requires SASL authentication by default. Only
+# SASL mechanisms which support data encryption are allowed. This is
+# DIGEST_MD5 and GSSAPI (Kerberos5)
+#
+# This is disabled by default, uncomment this to enable it.
+#listen_tcp = 1
+
+
+
+# Override the port for accepting secure TLS connections
+# This can be a port number, or service name
+#
+# This setting is not required or honoured if using systemd socket
+# activation with systemd version >= 227
+#
+#tls_port = "16514"
+
+# Override the port for accepting insecure TCP connections
+# This can be a port number, or service name
+#
+# This setting is not required or honoured if using systemd socket
+# activation with systemd version >= 227
+#
+#tcp_port = "16509"
+
+
+# Override the default configuration which binds to all network
+# interfaces. This can be a numeric IPv4/6 address, or hostname
+#
+# This setting is not required or honoured if using systemd socket
+# activation.
+#
+# If the libvirtd service is started in parallel with network
+# startup (e.g. with systemd), binding to addresses other than
+# the wildcards (0.0.0.0/::) might not be available yet.
+#
+listen_addr = "127.0.0.1"
+
+
+#################################################################
+#
+# UNIX socket access controls
+#
+
+# Set the UNIX domain socket group ownership. This can be used to
+# allow a 'trusted' set of users access to management capabilities
+# without becoming root.
+#
+# This setting is not required or honoured if using systemd socket
+# activation.
+#
+# This is restricted to 'root' by default.
+unix_sock_group = "libvirt-remote"
+
+# Set the UNIX socket permissions for the R/O socket. This is used
+# for monitoring VM status only
+#
+# This setting is not required or honoured if using systemd socket
+# activation.
+#
+# Default allows any user. If setting group ownership, you may want to
+# restrict this too.
+unix_sock_ro_perms = "0770"
+
+# Set the UNIX socket permissions for the R/W socket. This is used
+# for full management of VMs
+#
+# This setting is not required or honoured if using systemd socket
+# activation.
+#
+# Default allows only root. If PolicyKit is enabled on the socket,
+# the default will change to allow everyone (eg, 0777)
+#
+# If not using PolicyKit and setting group ownership for access
+# control, then you may want to relax this too.
+unix_sock_rw_perms = "0770"
+
+# Set the UNIX socket permissions for the admin interface socket.
+#
+# This setting is not required or honoured if using systemd socket
+# activation.
+#
+# Default allows only owner (root), do not change it unless you are
+# sure to whom you are exposing the access to.
+#unix_sock_admin_perms = "0700"
+
+# Set the name of the directory in which sockets will be found/created.
+#
+# This setting is not required or honoured if using systemd socket
+# activation with systemd version >= 227
+#
+#unix_sock_dir = "/var/run/libvirt"
+
+
+
+#################################################################
+#
+# Authentication.
+#
+# - none: do not perform auth checks. If you can connect to the
+# socket you are allowed. This is suitable if there are
+# restrictions on connecting to the socket (eg, UNIX
+# socket permissions), or if there is a lower layer in
+# the network providing auth (eg, TLS/x509 certificates)
+#
+# - sasl: use SASL infrastructure. The actual auth scheme is then
+# controlled from /etc/sasl2/libvirt.conf. For the TCP
+# socket only GSSAPI & DIGEST-MD5 mechanisms will be used.
+# For non-TCP or TLS sockets, any scheme is allowed.
+#
+# - polkit: use PolicyKit to authenticate. This is only suitable
+# for use on the UNIX sockets. The default policy will
+# require a user to supply their own password to gain
+# full read/write access (aka sudo like), while anyone
+# is allowed read/only access.
+#
+# Set an authentication scheme for UNIX read-only sockets
+# By default socket permissions allow anyone to connect
+#
+# To restrict monitoring of domains you may wish to enable
+# an authentication mechanism here
+#auth_unix_ro = "none"
+
+# Set an authentication scheme for UNIX read-write sockets
+# By default socket permissions only allow root. If PolicyKit
+# support was compiled into libvirt, the default will be to
+# use 'polkit' auth.
+#
+# If the unix_sock_rw_perms are changed you may wish to enable
+# an authentication mechanism here
+#auth_unix_rw = "none"
+
+# Change the authentication scheme for TCP sockets.
+#
+# If you don't enable SASL, then all TCP traffic is cleartext.
+# Don't do this outside of a dev/test scenario. For real world
+# use, always enable SASL and use the GSSAPI or DIGEST-MD5
+# mechanism in /etc/sasl2/libvirt.conf
+#auth_tcp = "sasl"
+
+# Change the authentication scheme for TLS sockets.
+#
+# TLS sockets already have encryption provided by the TLS
+# layer, and limited authentication is done by certificates
+#
+# It is possible to make use of any SASL authentication
+# mechanism as well, by using 'sasl' for this option
+#auth_tls = "none"
+
+
+# Change the API access control scheme
+#
+# By default an authenticated user is allowed access
+# to all APIs. Access drivers can place restrictions
+# on this. By default the 'nop' driver is enabled,
+# meaning no access control checks are done once a
+# client has authenticated with libvirtd
+#
+#access_drivers = [ "polkit" ]
+
+#################################################################
+#
+# TLS x509 certificate configuration
+#
+
+# Use of TLS requires that x509 certificates be issued. The default locations
+# for the certificate files is as follows:
+#
+# /etc/pki/CA/cacert.pem - The CA master certificate
+# /etc/pki/libvirt/servercert.pem - The server certificate signed with
+# the cacert.pem
+# /etc/pki/libvirt/private/serverkey.pem - The server private key
+#
+# It is possible to override the default locations by altering the 'key_file',
+# 'cert_file', and 'ca_file' values and uncommenting them below.
+#
+# NB, overriding the default of one location requires uncommenting and
+# possibly additionally overriding the other settings.
+#
+
+# Override the default server key file path
+#
+#key_file = "/etc/pki/libvirt/private/serverkey.pem"
+
+# Override the default server certificate file path
+#
+#cert_file = "/etc/pki/libvirt/servercert.pem"
+
+# Override the default CA certificate path
+#
+#ca_file = "/etc/pki/CA/cacert.pem"
+
+# Specify a certificate revocation list.
+#
+# Defaults to not using a CRL, uncomment to enable it
+#crl_file = "/etc/pki/CA/crl.pem"
+
+
+
+#################################################################
+#
+# Authorization controls
+#
+
+
+# Flag to disable verification of our own server certificates
+#
+# When libvirtd starts it performs some sanity checks against
+# its own certificates.
+#
+# Default is to always run sanity checks. Uncommenting this
+# will disable sanity checks which is not a good idea
+#tls_no_sanity_certificate = 1
+
+# Flag to disable verification of client certificates
+#
+# Client certificate verification is the primary authentication mechanism.
+# Any client which does not present a certificate signed by the CA
+# will be rejected.
+#
+# Default is to always verify. Uncommenting this will disable
+# verification - make sure an IP whitelist is set
+#tls_no_verify_certificate = 1
+
+
+# A whitelist of allowed x509 Distinguished Names
+# This list may contain wildcards such as
+#
+# "C=GB,ST=London,L=London,O=Red Hat,CN=*"
+#
+# See the POSIX fnmatch function for the format of the wildcards.
+#
+# NB If this is an empty list, no client can connect, so comment out
+# entirely rather than using empty list to disable these checks
+#
+# By default, no DN's are checked
+#tls_allowed_dn_list = ["DN1", "DN2"]
+
+
+# A whitelist of allowed SASL usernames. The format for username
+# depends on the SASL authentication mechanism. Kerberos usernames
+# look like username@REALM
+#
+# This list may contain wildcards such as
+#
+# "*@EXAMPLE.COM"
+#
+# See the POSIX fnmatch function for the format of the wildcards.
+#
+# NB If this is an empty list, no client can connect, so comment out
+# entirely rather than using empty list to disable these checks
+#
+# By default, no Username's are checked
+#sasl_allowed_username_list = ["joe@EXAMPLE.COM", "fred@EXAMPLE.COM" ]
+
+
+# Override the compile time default TLS priority string. The
+# default is usually "NORMAL" unless overridden at build time.
+# Only set this is it is desired for libvirt to deviate from
+# the global default settings.
+#
+#tls_priority="NORMAL"
+
+
+#################################################################
+#
+# Processing controls
+#
+
+# The maximum number of concurrent client connections to allow
+# over all sockets combined.
+#max_clients = 5000
+
+# The maximum length of queue of connections waiting to be
+# accepted by the daemon. Note, that some protocols supporting
+# retransmission may obey this so that a later reattempt at
+# connection succeeds.
+#max_queued_clients = 1000
+
+# The maximum length of queue of accepted but not yet
+# authenticated clients. The default value is 20. Set this to
+# zero to turn this feature off.
+#max_anonymous_clients = 20
+
+# The minimum limit sets the number of workers to start up
+# initially. If the number of active clients exceeds this,
+# then more threads are spawned, up to max_workers limit.
+# Typically you'd want max_workers to equal maximum number
+# of clients allowed
+#min_workers = 5
+#max_workers = 20
+
+
+# The number of priority workers. If all workers from above
+# pool are stuck, some calls marked as high priority
+# (notably domainDestroy) can be executed in this pool.
+#prio_workers = 5
+
+# Limit on concurrent requests from a single client
+# connection. To avoid one client monopolizing the server
+# this should be a small fraction of the global max_workers
+# parameter.
+#max_client_requests = 5
+
+# Same processing controls, but this time for the admin interface.
+# For description of each option, be so kind to scroll few lines
+# upwards.
+
+#admin_min_workers = 1
+#admin_max_workers = 5
+#admin_max_clients = 5
+#admin_max_queued_clients = 5
+#admin_max_client_requests = 5
+
+#################################################################
+#
+# Logging controls
+#
+
+# Logging level: 4 errors, 3 warnings, 2 information, 1 debug
+# basically 1 will log everything possible
+#
+# WARNING: USE OF THIS IS STRONGLY DISCOURAGED.
+#
+# WARNING: It outputs too much information to practically read.
+# WARNING: The "log_filters" setting is recommended instead.
+#
+# WARNING: Journald applies rate limiting of messages and so libvirt
+# WARNING: will limit "log_level" to only allow values 3 or 4 if
+# WARNING: journald is the current output.
+#
+# WARNING: USE OF THIS IS STRONGLY DISCOURAGED.
+#log_level = 3
+
+# Logging filters:
+# A filter allows to select a different logging level for a given category
+# of logs. The format for a filter is one of:
+#
+# level:match
+# level:+match
+#
+# where 'match' is a string which is matched against the category
+# given in the VIR_LOG_INIT() at the top of each libvirt source
+# file, e.g., "remote", "qemu", or "util.json". The 'match' in the
+# filter matches using shell wildcard syntax (see 'man glob(7)').
+# The 'match' is always treated as a substring match. IOW a match
+# string 'foo' is equivalent to '*foo*'.
+#
+# If 'match' contains the optional "+" prefix, it tells libvirt
+# to log stack trace for each message matching name.
+#
+# 'level' is the minimal level where matching messages should
+# be logged:
+#
+# 1: DEBUG
+# 2: INFO
+# 3: WARNING
+# 4: ERROR
+#
+# Multiple filters can be defined in a single @log_filters, they just need
+# to be separated by spaces. Note that libvirt performs "first" match, i.e.
+# if there are concurrent filters, the first one that matches will be applied,
+# given the order in @log_filters.
+#
+# A typical need is to capture information from a hypervisor driver,
+# public API entrypoints and some of the utility code. Some utility
+# code is very verbose and is generally not desired. Taking the QEMU
+# hypervisor as an example, a suitable filter string for debugging
+# might be to turn off object, json & event logging, but enable the
+# rest of the util code:
+#
+#log_filters="1:qemu 1:libvirt 4:object 4:json 4:event 1:util"
+
+# Logging outputs:
+# An output is one of the places to save logging information
+# The format for an output can be:
+# level:stderr
+# output goes to stderr
+# level:syslog:name
+# use syslog for the output and use the given name as the ident
+# level:file:file_path
+# output to a file, with the given filepath
+# level:journald
+# output to journald logging system
+# In all cases 'level' is the minimal priority, acting as a filter
+# 1: DEBUG
+# 2: INFO
+# 3: WARNING
+# 4: ERROR
+#
+# Multiple outputs can be defined, they just need to be separated by spaces.
+# e.g. to log all warnings and errors to syslog under the libvirtd ident:
+#log_outputs="3:syslog:libvirtd"
+
+
+##################################################################
+#
+# Auditing
+#
+# This setting allows usage of the auditing subsystem to be altered:
+#
+# audit_level == 0 -> disable all auditing
+# audit_level == 1 -> enable auditing, only if enabled on host (default)
+# audit_level == 2 -> enable auditing, and exit if disabled on host
+#
+#audit_level = 2
+#
+# If set to 1, then audit messages will also be sent
+# via libvirt logging infrastructure. Defaults to 0
+#
+#audit_logging = 1
+
+###################################################################
+# UUID of the host:
+# Host UUID is read from one of the sources specified in host_uuid_source.
+#
+# - 'smbios': fetch the UUID from 'dmidecode -s system-uuid'
+# - 'machine-id': fetch the UUID from /etc/machine-id
+#
+# The host_uuid_source default is 'smbios'. If 'dmidecode' does not provide
+# a valid UUID a temporary UUID will be generated.
+#
+# Another option is to specify host UUID in host_uuid.
+#
+# Keep the format of the example UUID below. UUID must not have all digits
+# be the same.
+
+# NB This default all-zeros UUID will not work. Replace
+# it with the output of the 'uuidgen' command and then
+# uncomment this entry
+#host_uuid = "00000000-0000-0000-0000-000000000000"
+#host_uuid_source = "smbios"
+
+###################################################################
+# Keepalive protocol:
+# This allows libvirtd to detect broken client connections or even
+# dead clients. A keepalive message is sent to a client after
+# keepalive_interval seconds of inactivity to check if the client is
+# still responding; keepalive_count is a maximum number of keepalive
+# messages that are allowed to be sent to the client without getting
+# any response before the connection is considered broken. In other
+# words, the connection is automatically closed approximately after
+# keepalive_interval * (keepalive_count + 1) seconds since the last
+# message received from the client. If keepalive_interval is set to
+# -1, libvirtd will never send keepalive requests; however clients
+# can still send them and the daemon will send responses. When
+# keepalive_count is set to 0, connections will be automatically
+# closed after keepalive_interval seconds of inactivity without
+# sending any keepalive messages.
+#
+#keepalive_interval = 5
+#keepalive_count = 5
+
+#
+# These configuration options are no longer used. There is no way to
+# restrict such clients from connecting since they first need to
+# connect in order to ask for keepalive.
+#
+#keepalive_required = 1
+#admin_keepalive_required = 1
+
+# Keepalive settings for the admin interface
+#admin_keepalive_interval = 5
+#admin_keepalive_count = 5
+
+###################################################################
+# Open vSwitch:
+# This allows to specify a timeout for openvswitch calls made by
+# libvirt. The ovs-vsctl utility is used for the configuration and
+# its timeout option is set by default to 5 seconds to avoid
+# potential infinite waits blocking libvirt.
+#
+#ovs_timeout = 5
etc/rc.d/init.d/networking/red.down/10-ovpn
etc/rc.d/init.d/networking/red.down/10-static-routes
etc/rc.d/init.d/networking/red.down/20-firewall
+etc/rc.d/init.d/networking/red.down/99-beep
#etc/rc.d/init.d/networking/red.up
etc/rc.d/init.d/networking/red.up/01-conntrack-cleanup
etc/rc.d/init.d/networking/red.up/05-update-dns-forwarders
etc/rc.d/init.d/networking/red.up/50-ipsec
etc/rc.d/init.d/networking/red.up/50-ovpn
etc/rc.d/init.d/networking/red.up/98-leds
+etc/rc.d/init.d/networking/red.up/99-beep
etc/rc.d/init.d/networking/red.up/99-fireinfo
etc/rc.d/init.d/networking/red.up/99-geoip-database
etc/rc.d/init.d/networking/red.up/99-pakfire-update
#usr/lib/python2.7/distutils/tests/__init__.py
#usr/lib/python2.7/distutils/tests/__init__.pyc
#usr/lib/python2.7/distutils/tests/__init__.pyo
+#usr/lib/python2.7/distutils/tests/includetest.rst
#usr/lib/python2.7/distutils/tests/setuptools_build_ext.py
#usr/lib/python2.7/distutils/tests/setuptools_build_ext.pyc
#usr/lib/python2.7/distutils/tests/setuptools_build_ext.pyo
#usr/lib/python2.7/ensurepip/__main__.pyc
#usr/lib/python2.7/ensurepip/__main__.pyo
#usr/lib/python2.7/ensurepip/_bundled
-#usr/lib/python2.7/ensurepip/_bundled/pip-9.0.3-py2.py3-none-any.whl
-#usr/lib/python2.7/ensurepip/_bundled/setuptools-39.0.1-py2.py3-none-any.whl
+#usr/lib/python2.7/ensurepip/_bundled/pip-19.2.3-py2.py3-none-any.whl
+#usr/lib/python2.7/ensurepip/_bundled/setuptools-41.2.0-py2.py3-none-any.whl
#usr/lib/python2.7/ensurepip/_uninstall.py
#usr/lib/python2.7/ensurepip/_uninstall.pyc
#usr/lib/python2.7/ensurepip/_uninstall.pyo
usr/lib/python2.7/keyword.pyc
#usr/lib/python2.7/keyword.pyo
#usr/lib/python2.7/lib-dynload
-#usr/lib/python2.7/lib-dynload/Python-2.7.15-py2.7.egg-info
+#usr/lib/python2.7/lib-dynload/Python-2.7.17-py2.7.egg-info
usr/lib/python2.7/lib-dynload/_bisect.so
usr/lib/python2.7/lib-dynload/_bsddb.so
usr/lib/python2.7/lib-dynload/_codecs_cn.so
#usr/lib/python2.7/lib-tk/test/test_tkinter/test_loadtk.py
#usr/lib/python2.7/lib-tk/test/test_tkinter/test_loadtk.pyc
#usr/lib/python2.7/lib-tk/test/test_tkinter/test_loadtk.pyo
+#usr/lib/python2.7/lib-tk/test/test_tkinter/test_misc.py
+#usr/lib/python2.7/lib-tk/test/test_tkinter/test_misc.pyc
+#usr/lib/python2.7/lib-tk/test/test_tkinter/test_misc.pyo
#usr/lib/python2.7/lib-tk/test/test_tkinter/test_text.py
#usr/lib/python2.7/lib-tk/test/test_tkinter/test_text.pyc
#usr/lib/python2.7/lib-tk/test/test_tkinter/test_text.pyo
#usr/lib/python2.7/lib-tk/turtle.pyo
#usr/lib/python2.7/lib2to3
#usr/lib/python2.7/lib2to3/Grammar.txt
-#usr/lib/python2.7/lib2to3/Grammar2.7.15.final.0.pickle
+#usr/lib/python2.7/lib2to3/Grammar2.7.17.final.0.pickle
#usr/lib/python2.7/lib2to3/PatternGrammar.txt
-#usr/lib/python2.7/lib2to3/PatternGrammar2.7.15.final.0.pickle
+#usr/lib/python2.7/lib2to3/PatternGrammar2.7.17.final.0.pickle
#usr/lib/python2.7/lib2to3/__init__.py
#usr/lib/python2.7/lib2to3/__init__.pyc
#usr/lib/python2.7/lib2to3/__init__.pyo
#usr/lib/python2.7/test/badsyntax_future8.py
#usr/lib/python2.7/test/badsyntax_future9.py
#usr/lib/python2.7/test/badsyntax_nocaret.py
-#usr/lib/python2.7/test/bisect.py
-#usr/lib/python2.7/test/bisect.pyc
-#usr/lib/python2.7/test/bisect.pyo
+#usr/lib/python2.7/test/bisect_cmd.py
+#usr/lib/python2.7/test/bisect_cmd.pyc
+#usr/lib/python2.7/test/bisect_cmd.pyo
#usr/lib/python2.7/test/capath
#usr/lib/python2.7/test/capath/0e4015b9.0
#usr/lib/python2.7/test/capath/4e1295a3.0
#usr/lib/python2.7/test/capath/6e88d7b8.0
#usr/lib/python2.7/test/capath/99d0fa06.0
#usr/lib/python2.7/test/capath/ce7b8643.0
+#usr/lib/python2.7/test/capath/efa5f9c3.0
#usr/lib/python2.7/test/cfgparser.1
#usr/lib/python2.7/test/cjkencodings
#usr/lib/python2.7/test/cjkencodings/big5-utf8.txt
#usr/lib/python2.7/test/decimaltestdata/tointegral.decTest
#usr/lib/python2.7/test/decimaltestdata/tointegralx.decTest
#usr/lib/python2.7/test/decimaltestdata/xor.decTest
-#usr/lib/python2.7/test/dh1024.pem
#usr/lib/python2.7/test/doctest_aliases.py
#usr/lib/python2.7/test/doctest_aliases.pyc
#usr/lib/python2.7/test/doctest_aliases.pyo
#usr/lib/python2.7/test/double_const.pyo
#usr/lib/python2.7/test/empty.vbs
#usr/lib/python2.7/test/exception_hierarchy.txt
+#usr/lib/python2.7/test/ffdh3072.pem
#usr/lib/python2.7/test/floating_points.txt
#usr/lib/python2.7/test/fork_wait.py
#usr/lib/python2.7/test/fork_wait.pyc
#usr/lib/python2.7/test/symlink_support.py
#usr/lib/python2.7/test/symlink_support.pyc
#usr/lib/python2.7/test/symlink_support.pyo
+#usr/lib/python2.7/test/talos-2019-0758.pem
#usr/lib/python2.7/test/test_MimeWriter.py
#usr/lib/python2.7/test/test_MimeWriter.pyc
#usr/lib/python2.7/test/test_MimeWriter.pyo
#usr/lib/python2.7/test/test_bastion.py
#usr/lib/python2.7/test/test_bastion.pyc
#usr/lib/python2.7/test/test_bastion.pyo
+#usr/lib/python2.7/test/test_bdb.py
+#usr/lib/python2.7/test/test_bdb.pyc
+#usr/lib/python2.7/test/test_bdb.pyo
#usr/lib/python2.7/test/test_bigaddrspace.py
#usr/lib/python2.7/test/test_bigaddrspace.pyc
#usr/lib/python2.7/test/test_bigaddrspace.pyo
#usr/lib/python2.7/test/win_console_handler.py
#usr/lib/python2.7/test/win_console_handler.pyc
#usr/lib/python2.7/test/win_console_handler.pyo
-#usr/lib/python2.7/test/wrongcert.pem
#usr/lib/python2.7/test/xmltestdata
#usr/lib/python2.7/test/xmltestdata/expat224_utf8_bug.xml
#usr/lib/python2.7/test/xmltestdata/simple-ns.xml
etc/rc.d/init.d/networking/red.down/10-ovpn
etc/rc.d/init.d/networking/red.down/10-static-routes
etc/rc.d/init.d/networking/red.down/20-firewall
+etc/rc.d/init.d/networking/red.down/99-beep
#etc/rc.d/init.d/networking/red.up
etc/rc.d/init.d/networking/red.up/01-conntrack-cleanup
etc/rc.d/init.d/networking/red.up/05-update-dns-forwarders
etc/rc.d/init.d/networking/red.up/50-ipsec
etc/rc.d/init.d/networking/red.up/50-ovpn
etc/rc.d/init.d/networking/red.up/98-leds
+etc/rc.d/init.d/networking/red.up/99-beep
etc/rc.d/init.d/networking/red.up/99-fireinfo
etc/rc.d/init.d/networking/red.up/99-geoip-database
etc/rc.d/init.d/networking/red.up/99-pakfire-update
#usr/lib/python2.7/distutils/tests/__init__.py
#usr/lib/python2.7/distutils/tests/__init__.pyc
#usr/lib/python2.7/distutils/tests/__init__.pyo
+#usr/lib/python2.7/distutils/tests/includetest.rst
#usr/lib/python2.7/distutils/tests/setuptools_build_ext.py
#usr/lib/python2.7/distutils/tests/setuptools_build_ext.pyc
#usr/lib/python2.7/distutils/tests/setuptools_build_ext.pyo
#usr/lib/python2.7/ensurepip/__main__.pyc
#usr/lib/python2.7/ensurepip/__main__.pyo
#usr/lib/python2.7/ensurepip/_bundled
-#usr/lib/python2.7/ensurepip/_bundled/pip-9.0.3-py2.py3-none-any.whl
-#usr/lib/python2.7/ensurepip/_bundled/setuptools-39.0.1-py2.py3-none-any.whl
+#usr/lib/python2.7/ensurepip/_bundled/pip-19.2.3-py2.py3-none-any.whl
+#usr/lib/python2.7/ensurepip/_bundled/setuptools-41.2.0-py2.py3-none-any.whl
#usr/lib/python2.7/ensurepip/_uninstall.py
#usr/lib/python2.7/ensurepip/_uninstall.pyc
#usr/lib/python2.7/ensurepip/_uninstall.pyo
usr/lib/python2.7/keyword.pyc
#usr/lib/python2.7/keyword.pyo
#usr/lib/python2.7/lib-dynload
-#usr/lib/python2.7/lib-dynload/Python-2.7.15-py2.7.egg-info
+#usr/lib/python2.7/lib-dynload/Python-2.7.17-py2.7.egg-info
usr/lib/python2.7/lib-dynload/_bisect.so
usr/lib/python2.7/lib-dynload/_bsddb.so
usr/lib/python2.7/lib-dynload/_codecs_cn.so
#usr/lib/python2.7/lib-tk/test/test_tkinter/test_loadtk.py
#usr/lib/python2.7/lib-tk/test/test_tkinter/test_loadtk.pyc
#usr/lib/python2.7/lib-tk/test/test_tkinter/test_loadtk.pyo
+#usr/lib/python2.7/lib-tk/test/test_tkinter/test_misc.py
+#usr/lib/python2.7/lib-tk/test/test_tkinter/test_misc.pyc
+#usr/lib/python2.7/lib-tk/test/test_tkinter/test_misc.pyo
#usr/lib/python2.7/lib-tk/test/test_tkinter/test_text.py
#usr/lib/python2.7/lib-tk/test/test_tkinter/test_text.pyc
#usr/lib/python2.7/lib-tk/test/test_tkinter/test_text.pyo
#usr/lib/python2.7/lib-tk/turtle.pyo
#usr/lib/python2.7/lib2to3
#usr/lib/python2.7/lib2to3/Grammar.txt
-#usr/lib/python2.7/lib2to3/Grammar2.7.15.final.0.pickle
+#usr/lib/python2.7/lib2to3/Grammar2.7.17.final.0.pickle
#usr/lib/python2.7/lib2to3/PatternGrammar.txt
-#usr/lib/python2.7/lib2to3/PatternGrammar2.7.15.final.0.pickle
+#usr/lib/python2.7/lib2to3/PatternGrammar2.7.17.final.0.pickle
#usr/lib/python2.7/lib2to3/__init__.py
#usr/lib/python2.7/lib2to3/__init__.pyc
#usr/lib/python2.7/lib2to3/__init__.pyo
#usr/lib/python2.7/test/badsyntax_future8.py
#usr/lib/python2.7/test/badsyntax_future9.py
#usr/lib/python2.7/test/badsyntax_nocaret.py
-#usr/lib/python2.7/test/bisect.py
-#usr/lib/python2.7/test/bisect.pyc
-#usr/lib/python2.7/test/bisect.pyo
+#usr/lib/python2.7/test/bisect_cmd.py
+#usr/lib/python2.7/test/bisect_cmd.pyc
+#usr/lib/python2.7/test/bisect_cmd.pyo
#usr/lib/python2.7/test/capath
#usr/lib/python2.7/test/capath/0e4015b9.0
#usr/lib/python2.7/test/capath/4e1295a3.0
#usr/lib/python2.7/test/capath/6e88d7b8.0
#usr/lib/python2.7/test/capath/99d0fa06.0
#usr/lib/python2.7/test/capath/ce7b8643.0
+#usr/lib/python2.7/test/capath/efa5f9c3.0
#usr/lib/python2.7/test/cfgparser.1
#usr/lib/python2.7/test/cjkencodings
#usr/lib/python2.7/test/cjkencodings/big5-utf8.txt
#usr/lib/python2.7/test/decimaltestdata/tointegral.decTest
#usr/lib/python2.7/test/decimaltestdata/tointegralx.decTest
#usr/lib/python2.7/test/decimaltestdata/xor.decTest
-#usr/lib/python2.7/test/dh1024.pem
#usr/lib/python2.7/test/doctest_aliases.py
#usr/lib/python2.7/test/doctest_aliases.pyc
#usr/lib/python2.7/test/doctest_aliases.pyo
#usr/lib/python2.7/test/double_const.pyo
#usr/lib/python2.7/test/empty.vbs
#usr/lib/python2.7/test/exception_hierarchy.txt
+#usr/lib/python2.7/test/ffdh3072.pem
#usr/lib/python2.7/test/floating_points.txt
#usr/lib/python2.7/test/fork_wait.py
#usr/lib/python2.7/test/fork_wait.pyc
#usr/lib/python2.7/test/symlink_support.py
#usr/lib/python2.7/test/symlink_support.pyc
#usr/lib/python2.7/test/symlink_support.pyo
+#usr/lib/python2.7/test/talos-2019-0758.pem
#usr/lib/python2.7/test/test_MimeWriter.py
#usr/lib/python2.7/test/test_MimeWriter.pyc
#usr/lib/python2.7/test/test_MimeWriter.pyo
#usr/lib/python2.7/test/test_bastion.py
#usr/lib/python2.7/test/test_bastion.pyc
#usr/lib/python2.7/test/test_bastion.pyo
+#usr/lib/python2.7/test/test_bdb.py
+#usr/lib/python2.7/test/test_bdb.pyc
+#usr/lib/python2.7/test/test_bdb.pyo
#usr/lib/python2.7/test/test_bigaddrspace.py
#usr/lib/python2.7/test/test_bigaddrspace.pyc
#usr/lib/python2.7/test/test_bigaddrspace.pyo
#usr/lib/python2.7/test/win_console_handler.py
#usr/lib/python2.7/test/win_console_handler.pyc
#usr/lib/python2.7/test/win_console_handler.pyo
-#usr/lib/python2.7/test/wrongcert.pem
#usr/lib/python2.7/test/xmltestdata
#usr/lib/python2.7/test/xmltestdata/expat224_utf8_bug.xml
#usr/lib/python2.7/test/xmltestdata/simple-ns.xml
-bin/sh
-bin/bash
#bin/bashbug
+#usr/include/bash
+#usr/include/bash/alias.h
+#usr/include/bash/array.h
+#usr/include/bash/arrayfunc.h
+#usr/include/bash/assoc.h
+#usr/include/bash/bashansi.h
+#usr/include/bash/bashintl.h
+#usr/include/bash/bashjmp.h
+#usr/include/bash/bashtypes.h
+#usr/include/bash/builtins
+#usr/include/bash/builtins.h
+#usr/include/bash/builtins/bashgetopt.h
+#usr/include/bash/builtins/builtext.h
+#usr/include/bash/builtins/common.h
+#usr/include/bash/builtins/getopt.h
+#usr/include/bash/command.h
+#usr/include/bash/config-bot.h
+#usr/include/bash/config-top.h
+#usr/include/bash/config.h
+#usr/include/bash/conftypes.h
+#usr/include/bash/dispose_cmd.h
+#usr/include/bash/error.h
+#usr/include/bash/externs.h
+#usr/include/bash/general.h
+#usr/include/bash/hashlib.h
+#usr/include/bash/include
+#usr/include/bash/include/ansi_stdlib.h
+#usr/include/bash/include/chartypes.h
+#usr/include/bash/include/filecntl.h
+#usr/include/bash/include/gettext.h
+#usr/include/bash/include/maxpath.h
+#usr/include/bash/include/memalloc.h
+#usr/include/bash/include/ocache.h
+#usr/include/bash/include/posixdir.h
+#usr/include/bash/include/posixjmp.h
+#usr/include/bash/include/posixstat.h
+#usr/include/bash/include/posixtime.h
+#usr/include/bash/include/posixwait.h
+#usr/include/bash/include/shmbchar.h
+#usr/include/bash/include/shmbutil.h
+#usr/include/bash/include/shtty.h
+#usr/include/bash/include/stat-time.h
+#usr/include/bash/include/stdc.h
+#usr/include/bash/include/systimes.h
+#usr/include/bash/include/typemax.h
+#usr/include/bash/include/unionwait.h
+#usr/include/bash/jobs.h
+#usr/include/bash/make_cmd.h
+#usr/include/bash/pathnames.h
+#usr/include/bash/quit.h
+#usr/include/bash/shell.h
+#usr/include/bash/sig.h
+#usr/include/bash/siglist.h
+#usr/include/bash/signames.h
+#usr/include/bash/subst.h
+#usr/include/bash/syntax.h
+#usr/include/bash/unwind_prot.h
+#usr/include/bash/variables.h
+#usr/include/bash/version.h
+#usr/include/bash/xmalloc.h
+#usr/include/bash/y.tab.h
+#usr/lib/bash
+usr/lib/bash/Makefile.inc
+usr/lib/bash/basename
+usr/lib/bash/dirname
+usr/lib/bash/fdflags
+usr/lib/bash/finfo
+usr/lib/bash/head
+usr/lib/bash/id
+usr/lib/bash/ln
+usr/lib/bash/loadables.h
+usr/lib/bash/logname
+usr/lib/bash/mkdir
+usr/lib/bash/mypid
+usr/lib/bash/pathchk
+usr/lib/bash/print
+usr/lib/bash/printenv
+usr/lib/bash/push
+usr/lib/bash/realpath
+usr/lib/bash/rmdir
+usr/lib/bash/seq
+usr/lib/bash/setpgid
+usr/lib/bash/sleep
+usr/lib/bash/strftime
+usr/lib/bash/sync
+usr/lib/bash/tee
+usr/lib/bash/truefalse
+usr/lib/bash/tty
+usr/lib/bash/uname
+usr/lib/bash/unlink
+usr/lib/bash/whoami
+#usr/lib/pkgconfig/bash.pc
#usr/share/doc/bash
#usr/share/doc/bash/CHANGES
#usr/share/doc/bash/COMPAT
#usr/share/locale/it/LC_MESSAGES/bash.mo
#usr/share/locale/ja/LC_MESSAGES/bash.mo
#usr/share/locale/lt/LC_MESSAGES/bash.mo
+#usr/share/locale/nb/LC_MESSAGES/bash.mo
#usr/share/locale/nl/LC_MESSAGES/bash.mo
#usr/share/locale/pl/LC_MESSAGES/bash.mo
+#usr/share/locale/pt/LC_MESSAGES/bash.mo
#usr/share/locale/pt_BR/LC_MESSAGES/bash.mo
#usr/share/locale/ro/LC_MESSAGES/bash.mo
#usr/share/locale/ru/LC_MESSAGES/bash.mo
#usr/share/locale/sk/LC_MESSAGES/bash.mo
#usr/share/locale/sl/LC_MESSAGES/bash.mo
-#usr/share/locale/sr
-#usr/share/locale/sr/LC_MESSAGES
#usr/share/locale/sr/LC_MESSAGES/bash.mo
#usr/share/locale/sv/LC_MESSAGES/bash.mo
#usr/share/locale/tr/LC_MESSAGES/bash.mo
#usr/share/locale/zh_TW/LC_MESSAGES/bash.mo
#usr/share/man/man1/bash.1
#usr/share/man/man1/bashbug.1
+bin/sh
+bin/bash
#usr/lib/libbind9.la
#usr/lib/libbind9.so
usr/lib/libbind9.so.161
-usr/lib/libbind9.so.161.0.3
+usr/lib/libbind9.so.161.0.4
#usr/lib/libdns.la
#usr/lib/libdns.so
usr/lib/libdns.so.1107
-usr/lib/libdns.so.1107.0.2
+usr/lib/libdns.so.1107.1.0
#usr/lib/libisc.la
#usr/lib/libisc.so
-usr/lib/libisc.so.1100
-usr/lib/libisc.so.1100.3.2
+usr/lib/libisc.so.1104
+usr/lib/libisc.so.1104.0.0
#usr/lib/libisccc.la
#usr/lib/libisccc.so
usr/lib/libisccc.so.161
#usr/lib/libisccfg.la
#usr/lib/libisccfg.so
usr/lib/libisccfg.so.163
-usr/lib/libisccfg.so.163.0.3
+usr/lib/libisccfg.so.163.0.4
#usr/lib/liblwres.la
#usr/lib/liblwres.so
usr/lib/liblwres.so.161
-usr/lib/liblwres.so.161.0.2
+usr/lib/liblwres.so.161.0.3
#usr/share/man/man1/dig.1
#usr/share/man/man1/host.1
#usr/share/man/man1/nslookup.1
#usr/share/locale/ko/LC_MESSAGES/cpio.mo
#usr/share/locale/nl/LC_MESSAGES/cpio.mo
#usr/share/locale/pl/LC_MESSAGES/cpio.mo
+#usr/share/locale/pt/LC_MESSAGES/cpio.mo
#usr/share/locale/pt_BR/LC_MESSAGES/cpio.mo
#usr/share/locale/ro/LC_MESSAGES/cpio.mo
#usr/share/locale/ru/LC_MESSAGES/cpio.mo
etc/rc.d/init.d/networking/red.down/10-ovpn
etc/rc.d/init.d/networking/red.down/10-static-routes
etc/rc.d/init.d/networking/red.down/20-firewall
+etc/rc.d/init.d/networking/red.down/99-beep
#etc/rc.d/init.d/networking/red.up
etc/rc.d/init.d/networking/red.up/01-conntrack-cleanup
etc/rc.d/init.d/networking/red.up/05-update-dns-forwarders
etc/rc.d/init.d/networking/red.up/50-ipsec
etc/rc.d/init.d/networking/red.up/50-ovpn
etc/rc.d/init.d/networking/red.up/98-leds
+etc/rc.d/init.d/networking/red.up/99-beep
etc/rc.d/init.d/networking/red.up/99-fireinfo
etc/rc.d/init.d/networking/red.up/99-geoip-database
etc/rc.d/init.d/networking/red.up/99-pakfire-update
#usr/lib/python2.7/distutils/tests/__init__.py
#usr/lib/python2.7/distutils/tests/__init__.pyc
#usr/lib/python2.7/distutils/tests/__init__.pyo
+#usr/lib/python2.7/distutils/tests/includetest.rst
#usr/lib/python2.7/distutils/tests/setuptools_build_ext.py
#usr/lib/python2.7/distutils/tests/setuptools_build_ext.pyc
#usr/lib/python2.7/distutils/tests/setuptools_build_ext.pyo
#usr/lib/python2.7/ensurepip/__main__.pyc
#usr/lib/python2.7/ensurepip/__main__.pyo
#usr/lib/python2.7/ensurepip/_bundled
-#usr/lib/python2.7/ensurepip/_bundled/pip-9.0.3-py2.py3-none-any.whl
-#usr/lib/python2.7/ensurepip/_bundled/setuptools-39.0.1-py2.py3-none-any.whl
+#usr/lib/python2.7/ensurepip/_bundled/pip-19.2.3-py2.py3-none-any.whl
+#usr/lib/python2.7/ensurepip/_bundled/setuptools-41.2.0-py2.py3-none-any.whl
#usr/lib/python2.7/ensurepip/_uninstall.py
#usr/lib/python2.7/ensurepip/_uninstall.pyc
#usr/lib/python2.7/ensurepip/_uninstall.pyo
usr/lib/python2.7/keyword.pyc
#usr/lib/python2.7/keyword.pyo
#usr/lib/python2.7/lib-dynload
-#usr/lib/python2.7/lib-dynload/Python-2.7.15-py2.7.egg-info
+#usr/lib/python2.7/lib-dynload/Python-2.7.17-py2.7.egg-info
usr/lib/python2.7/lib-dynload/_bisect.so
usr/lib/python2.7/lib-dynload/_bsddb.so
usr/lib/python2.7/lib-dynload/_codecs_cn.so
#usr/lib/python2.7/lib-tk/test/test_tkinter/test_loadtk.py
#usr/lib/python2.7/lib-tk/test/test_tkinter/test_loadtk.pyc
#usr/lib/python2.7/lib-tk/test/test_tkinter/test_loadtk.pyo
+#usr/lib/python2.7/lib-tk/test/test_tkinter/test_misc.py
+#usr/lib/python2.7/lib-tk/test/test_tkinter/test_misc.pyc
+#usr/lib/python2.7/lib-tk/test/test_tkinter/test_misc.pyo
#usr/lib/python2.7/lib-tk/test/test_tkinter/test_text.py
#usr/lib/python2.7/lib-tk/test/test_tkinter/test_text.pyc
#usr/lib/python2.7/lib-tk/test/test_tkinter/test_text.pyo
#usr/lib/python2.7/lib-tk/turtle.pyo
#usr/lib/python2.7/lib2to3
#usr/lib/python2.7/lib2to3/Grammar.txt
-#usr/lib/python2.7/lib2to3/Grammar2.7.15.final.0.pickle
+#usr/lib/python2.7/lib2to3/Grammar2.7.17.final.0.pickle
#usr/lib/python2.7/lib2to3/PatternGrammar.txt
-#usr/lib/python2.7/lib2to3/PatternGrammar2.7.15.final.0.pickle
+#usr/lib/python2.7/lib2to3/PatternGrammar2.7.17.final.0.pickle
#usr/lib/python2.7/lib2to3/__init__.py
#usr/lib/python2.7/lib2to3/__init__.pyc
#usr/lib/python2.7/lib2to3/__init__.pyo
#usr/lib/python2.7/test/badsyntax_future8.py
#usr/lib/python2.7/test/badsyntax_future9.py
#usr/lib/python2.7/test/badsyntax_nocaret.py
-#usr/lib/python2.7/test/bisect.py
-#usr/lib/python2.7/test/bisect.pyc
-#usr/lib/python2.7/test/bisect.pyo
+#usr/lib/python2.7/test/bisect_cmd.py
+#usr/lib/python2.7/test/bisect_cmd.pyc
+#usr/lib/python2.7/test/bisect_cmd.pyo
#usr/lib/python2.7/test/capath
#usr/lib/python2.7/test/capath/0e4015b9.0
#usr/lib/python2.7/test/capath/4e1295a3.0
#usr/lib/python2.7/test/capath/6e88d7b8.0
#usr/lib/python2.7/test/capath/99d0fa06.0
#usr/lib/python2.7/test/capath/ce7b8643.0
+#usr/lib/python2.7/test/capath/efa5f9c3.0
#usr/lib/python2.7/test/cfgparser.1
#usr/lib/python2.7/test/cjkencodings
#usr/lib/python2.7/test/cjkencodings/big5-utf8.txt
#usr/lib/python2.7/test/decimaltestdata/tointegral.decTest
#usr/lib/python2.7/test/decimaltestdata/tointegralx.decTest
#usr/lib/python2.7/test/decimaltestdata/xor.decTest
-#usr/lib/python2.7/test/dh1024.pem
#usr/lib/python2.7/test/doctest_aliases.py
#usr/lib/python2.7/test/doctest_aliases.pyc
#usr/lib/python2.7/test/doctest_aliases.pyo
#usr/lib/python2.7/test/double_const.pyo
#usr/lib/python2.7/test/empty.vbs
#usr/lib/python2.7/test/exception_hierarchy.txt
+#usr/lib/python2.7/test/ffdh3072.pem
#usr/lib/python2.7/test/floating_points.txt
#usr/lib/python2.7/test/fork_wait.py
#usr/lib/python2.7/test/fork_wait.pyc
#usr/lib/python2.7/test/symlink_support.py
#usr/lib/python2.7/test/symlink_support.pyc
#usr/lib/python2.7/test/symlink_support.pyo
+#usr/lib/python2.7/test/talos-2019-0758.pem
#usr/lib/python2.7/test/test_MimeWriter.py
#usr/lib/python2.7/test/test_MimeWriter.pyc
#usr/lib/python2.7/test/test_MimeWriter.pyo
#usr/lib/python2.7/test/test_bastion.py
#usr/lib/python2.7/test/test_bastion.pyc
#usr/lib/python2.7/test/test_bastion.pyo
+#usr/lib/python2.7/test/test_bdb.py
+#usr/lib/python2.7/test/test_bdb.pyc
+#usr/lib/python2.7/test/test_bdb.pyo
#usr/lib/python2.7/test/test_bigaddrspace.py
#usr/lib/python2.7/test/test_bigaddrspace.pyc
#usr/lib/python2.7/test/test_bigaddrspace.pyo
#usr/lib/python2.7/test/win_console_handler.py
#usr/lib/python2.7/test/win_console_handler.pyc
#usr/lib/python2.7/test/win_console_handler.pyo
-#usr/lib/python2.7/test/wrongcert.pem
#usr/lib/python2.7/test/xmltestdata
#usr/lib/python2.7/test/xmltestdata/expat224_utf8_bug.xml
#usr/lib/python2.7/test/xmltestdata/simple-ns.xml
#usr/lib/libarchive.la
#usr/lib/libarchive.so
#usr/lib/libarchive.so.13
-#usr/lib/libarchive.so.13.3.1
+#usr/lib/libarchive.so.13.4.0
#usr/lib/pkgconfig/libarchive.pc
#usr/share/man/man1/bsdcat.1
#usr/share/man/man1/bsdcpio.1
#usr/share/man/man3/archive_entry.3
#usr/share/man/man3/archive_entry_acl.3
#usr/share/man/man3/archive_entry_linkify.3
+#usr/share/man/man3/archive_entry_misc.3
#usr/share/man/man3/archive_entry_paths.3
#usr/share/man/man3/archive_entry_perms.3
#usr/share/man/man3/archive_entry_stat.3
lib/firmware/LICENCE.atheros_firmware
lib/firmware/LICENCE.broadcom_bcm43xx
lib/firmware/LICENCE.ca0132
+lib/firmware/LICENCE.cadence
lib/firmware/LICENCE.cavium
+lib/firmware/LICENCE.cavium_liquidio
lib/firmware/LICENCE.chelsio_firmware
lib/firmware/LICENCE.cw1200
lib/firmware/LICENCE.cypress
lib/firmware/LICENCE.iwlwifi_firmware
lib/firmware/LICENCE.kaweth
lib/firmware/LICENCE.mediatek
+lib/firmware/LICENCE.microchip
lib/firmware/LICENCE.moxa
lib/firmware/LICENCE.myri10ge_firmware
lib/firmware/LICENCE.nvidia
lib/firmware/LICENCE.xc5000c
lib/firmware/LICENSE.QualcommAtheros_ar3k
lib/firmware/LICENSE.QualcommAtheros_ath10k
+lib/firmware/LICENSE.amd-sev
lib/firmware/LICENSE.amd-ucode
lib/firmware/LICENSE.amdgpu
+lib/firmware/LICENSE.amlogic_vdec
lib/firmware/LICENSE.atmel
lib/firmware/LICENSE.dib0700
lib/firmware/LICENSE.hfi1_firmware
lib/firmware/LICENSE.i915
+lib/firmware/LICENSE.ice
lib/firmware/LICENSE.ipu3_firmware
+lib/firmware/LICENSE.nxp_mc_firmware
lib/firmware/LICENSE.qcom
lib/firmware/LICENSE.radeon
lib/firmware/LICENSE.sdma_firmware
lib/firmware/TDA7706_OM_v2.5.1_boot.txt
lib/firmware/TDA7706_OM_v3.0.2_boot.txt
lib/firmware/WHENCE
-lib/firmware/a300_pfp.fw
-lib/firmware/a300_pm4.fw
#lib/firmware/acenic
lib/firmware/acenic/tg1.bin
lib/firmware/acenic/tg2.bin
lib/firmware/advansys/mcode.bin
lib/firmware/agere_ap_fw.bin
lib/firmware/agere_sta_fw.bin
+#lib/firmware/amd
#lib/firmware/amd-ucode
lib/firmware/amd-ucode/microcode_amd.bin
lib/firmware/amd-ucode/microcode_amd.bin.asc
lib/firmware/amd-ucode/microcode_amd_fam16h.bin.asc
lib/firmware/amd-ucode/microcode_amd_fam17h.bin
lib/firmware/amd-ucode/microcode_amd_fam17h.bin.asc
+lib/firmware/amd/amd_sev_fam17h_model0xh.sbin
#lib/firmware/amdgpu
lib/firmware/amdgpu/banks_k_2_smc.bin
lib/firmware/amdgpu/bonaire_ce.bin
lib/firmware/amdgpu/mullins_sdma1.bin
lib/firmware/amdgpu/mullins_uvd.bin
lib/firmware/amdgpu/mullins_vce.bin
+lib/firmware/amdgpu/navi10_asd.bin
+lib/firmware/amdgpu/navi10_ce.bin
+lib/firmware/amdgpu/navi10_gpu_info.bin
+lib/firmware/amdgpu/navi10_me.bin
+lib/firmware/amdgpu/navi10_mec.bin
+lib/firmware/amdgpu/navi10_mec2.bin
+lib/firmware/amdgpu/navi10_pfp.bin
+lib/firmware/amdgpu/navi10_rlc.bin
+lib/firmware/amdgpu/navi10_sdma.bin
+lib/firmware/amdgpu/navi10_sdma1.bin
+lib/firmware/amdgpu/navi10_smc.bin
+lib/firmware/amdgpu/navi10_sos.bin
+lib/firmware/amdgpu/navi10_vcn.bin
+lib/firmware/amdgpu/navi14_asd.bin
+lib/firmware/amdgpu/navi14_ce.bin
+lib/firmware/amdgpu/navi14_gpu_info.bin
+lib/firmware/amdgpu/navi14_me.bin
+lib/firmware/amdgpu/navi14_mec.bin
+lib/firmware/amdgpu/navi14_mec2.bin
+lib/firmware/amdgpu/navi14_pfp.bin
+lib/firmware/amdgpu/navi14_rlc.bin
+lib/firmware/amdgpu/navi14_sdma.bin
+lib/firmware/amdgpu/navi14_sdma1.bin
+lib/firmware/amdgpu/navi14_smc.bin
+lib/firmware/amdgpu/navi14_sos.bin
+lib/firmware/amdgpu/navi14_vcn.bin
lib/firmware/amdgpu/oland_ce.bin
lib/firmware/amdgpu/oland_k_smc.bin
lib/firmware/amdgpu/oland_mc.bin
lib/firmware/amdgpu/oland_pfp.bin
lib/firmware/amdgpu/oland_rlc.bin
lib/firmware/amdgpu/oland_smc.bin
+lib/firmware/amdgpu/picasso_asd.bin
+lib/firmware/amdgpu/picasso_ce.bin
+lib/firmware/amdgpu/picasso_gpu_info.bin
+lib/firmware/amdgpu/picasso_me.bin
+lib/firmware/amdgpu/picasso_mec.bin
+lib/firmware/amdgpu/picasso_mec2.bin
+lib/firmware/amdgpu/picasso_pfp.bin
+lib/firmware/amdgpu/picasso_rlc.bin
+lib/firmware/amdgpu/picasso_rlc_am4.bin
+lib/firmware/amdgpu/picasso_sdma.bin
+lib/firmware/amdgpu/picasso_vcn.bin
lib/firmware/amdgpu/pitcairn_ce.bin
lib/firmware/amdgpu/pitcairn_k_smc.bin
lib/firmware/amdgpu/pitcairn_mc.bin
lib/firmware/amdgpu/pitcairn_smc.bin
lib/firmware/amdgpu/polaris10_ce.bin
lib/firmware/amdgpu/polaris10_ce_2.bin
+lib/firmware/amdgpu/polaris10_k2_smc.bin
+lib/firmware/amdgpu/polaris10_k_mc.bin
lib/firmware/amdgpu/polaris10_k_smc.bin
lib/firmware/amdgpu/polaris10_mc.bin
lib/firmware/amdgpu/polaris10_me.bin
lib/firmware/amdgpu/polaris10_vce.bin
lib/firmware/amdgpu/polaris11_ce.bin
lib/firmware/amdgpu/polaris11_ce_2.bin
+lib/firmware/amdgpu/polaris11_k2_smc.bin
+lib/firmware/amdgpu/polaris11_k_mc.bin
lib/firmware/amdgpu/polaris11_k_smc.bin
lib/firmware/amdgpu/polaris11_mc.bin
lib/firmware/amdgpu/polaris11_me.bin
lib/firmware/amdgpu/polaris11_vce.bin
lib/firmware/amdgpu/polaris12_ce.bin
lib/firmware/amdgpu/polaris12_ce_2.bin
+lib/firmware/amdgpu/polaris12_k_mc.bin
+lib/firmware/amdgpu/polaris12_k_smc.bin
lib/firmware/amdgpu/polaris12_mc.bin
lib/firmware/amdgpu/polaris12_me.bin
lib/firmware/amdgpu/polaris12_me_2.bin
lib/firmware/amdgpu/polaris12_smc.bin
lib/firmware/amdgpu/polaris12_uvd.bin
lib/firmware/amdgpu/polaris12_vce.bin
+lib/firmware/amdgpu/raven2_asd.bin
+lib/firmware/amdgpu/raven2_ce.bin
+lib/firmware/amdgpu/raven2_gpu_info.bin
+lib/firmware/amdgpu/raven2_me.bin
+lib/firmware/amdgpu/raven2_mec.bin
+lib/firmware/amdgpu/raven2_mec2.bin
+lib/firmware/amdgpu/raven2_pfp.bin
+lib/firmware/amdgpu/raven2_rlc.bin
+lib/firmware/amdgpu/raven2_sdma.bin
+lib/firmware/amdgpu/raven2_vcn.bin
lib/firmware/amdgpu/raven_asd.bin
lib/firmware/amdgpu/raven_ce.bin
+lib/firmware/amdgpu/raven_dmcu.bin
lib/firmware/amdgpu/raven_gpu_info.bin
+lib/firmware/amdgpu/raven_kicker_rlc.bin
lib/firmware/amdgpu/raven_me.bin
lib/firmware/amdgpu/raven_mec.bin
lib/firmware/amdgpu/raven_mec2.bin
lib/firmware/amdgpu/vega10_sos.bin
lib/firmware/amdgpu/vega10_uvd.bin
lib/firmware/amdgpu/vega10_vce.bin
+lib/firmware/amdgpu/vega12_asd.bin
+lib/firmware/amdgpu/vega12_ce.bin
+lib/firmware/amdgpu/vega12_gpu_info.bin
+lib/firmware/amdgpu/vega12_me.bin
+lib/firmware/amdgpu/vega12_mec.bin
+lib/firmware/amdgpu/vega12_mec2.bin
+lib/firmware/amdgpu/vega12_pfp.bin
+lib/firmware/amdgpu/vega12_rlc.bin
+lib/firmware/amdgpu/vega12_sdma.bin
+lib/firmware/amdgpu/vega12_sdma1.bin
+lib/firmware/amdgpu/vega12_smc.bin
+lib/firmware/amdgpu/vega12_sos.bin
+lib/firmware/amdgpu/vega12_uvd.bin
+lib/firmware/amdgpu/vega12_vce.bin
+lib/firmware/amdgpu/vega20_asd.bin
+lib/firmware/amdgpu/vega20_ce.bin
+lib/firmware/amdgpu/vega20_me.bin
+lib/firmware/amdgpu/vega20_mec.bin
+lib/firmware/amdgpu/vega20_mec2.bin
+lib/firmware/amdgpu/vega20_pfp.bin
+lib/firmware/amdgpu/vega20_rlc.bin
+lib/firmware/amdgpu/vega20_sdma.bin
+lib/firmware/amdgpu/vega20_sdma1.bin
+lib/firmware/amdgpu/vega20_smc.bin
+lib/firmware/amdgpu/vega20_sos.bin
+lib/firmware/amdgpu/vega20_uvd.bin
+lib/firmware/amdgpu/vega20_vce.bin
lib/firmware/amdgpu/vegam_ce.bin
lib/firmware/amdgpu/vegam_me.bin
lib/firmware/amdgpu/vegam_mec.bin
lib/firmware/ath10k/QCA9377/hw1.0/board-2.bin
lib/firmware/ath10k/QCA9377/hw1.0/board.bin
lib/firmware/ath10k/QCA9377/hw1.0/firmware-5.bin
+lib/firmware/ath10k/QCA9377/hw1.0/firmware-6.bin
lib/firmware/ath10k/QCA9377/hw1.0/notice_ath10k_firmware-5.txt
+lib/firmware/ath10k/QCA9377/hw1.0/notice_ath10k_firmware-6.txt
#lib/firmware/ath10k/QCA9887
#lib/firmware/ath10k/QCA9887/hw1.0
lib/firmware/ath10k/QCA9887/hw1.0/board.bin
lib/firmware/bnx2x/bnx2x-e1-7.10.51.0.fw
lib/firmware/bnx2x/bnx2x-e1-7.12.30.0.fw
lib/firmware/bnx2x/bnx2x-e1-7.13.1.0.fw
+lib/firmware/bnx2x/bnx2x-e1-7.13.11.0.fw
lib/firmware/bnx2x/bnx2x-e1-7.2.16.0.fw
lib/firmware/bnx2x/bnx2x-e1-7.2.51.0.fw
lib/firmware/bnx2x/bnx2x-e1-7.8.17.0.fw
lib/firmware/bnx2x/bnx2x-e1h-7.10.51.0.fw
lib/firmware/bnx2x/bnx2x-e1h-7.12.30.0.fw
lib/firmware/bnx2x/bnx2x-e1h-7.13.1.0.fw
+lib/firmware/bnx2x/bnx2x-e1h-7.13.11.0.fw
lib/firmware/bnx2x/bnx2x-e1h-7.2.16.0.fw
lib/firmware/bnx2x/bnx2x-e1h-7.2.51.0.fw
lib/firmware/bnx2x/bnx2x-e1h-7.8.17.0.fw
lib/firmware/bnx2x/bnx2x-e2-7.10.51.0.fw
lib/firmware/bnx2x/bnx2x-e2-7.12.30.0.fw
lib/firmware/bnx2x/bnx2x-e2-7.13.1.0.fw
+lib/firmware/bnx2x/bnx2x-e2-7.13.11.0.fw
lib/firmware/bnx2x/bnx2x-e2-7.2.16.0.fw
lib/firmware/bnx2x/bnx2x-e2-7.2.51.0.fw
lib/firmware/bnx2x/bnx2x-e2-7.8.17.0.fw
lib/firmware/brcm/brcmfmac43241b5-sdio.bin
lib/firmware/brcm/brcmfmac43242a.bin
lib/firmware/brcm/brcmfmac4329-sdio.bin
+lib/firmware/brcm/brcmfmac4330-sdio.Prowise-PT301.txt
lib/firmware/brcm/brcmfmac4330-sdio.bin
lib/firmware/brcm/brcmfmac4334-sdio.bin
lib/firmware/brcm/brcmfmac43340-sdio.bin
+lib/firmware/brcm/brcmfmac43340-sdio.meegopad-t08.txt
+lib/firmware/brcm/brcmfmac43340-sdio.pov-tab-p1006w-data.txt
lib/firmware/brcm/brcmfmac4335-sdio.bin
lib/firmware/brcm/brcmfmac43362-sdio.bin
+lib/firmware/brcm/brcmfmac43362-sdio.cubietech,cubietruck.txt
+lib/firmware/brcm/brcmfmac43362-sdio.lemaker,bananapro.txt
lib/firmware/brcm/brcmfmac4339-sdio.bin
lib/firmware/brcm/brcmfmac43430-sdio.AP6212.txt
+lib/firmware/brcm/brcmfmac43430-sdio.Hampoo-D2D3_Vi8A1.txt
lib/firmware/brcm/brcmfmac43430-sdio.MUR1DX.txt
lib/firmware/brcm/brcmfmac43430-sdio.bin
+lib/firmware/brcm/brcmfmac43430-sdio.raspberrypi,3-model-b.txt
+lib/firmware/brcm/brcmfmac43430a0-sdio.ONDA-V80_PLUS.txt
lib/firmware/brcm/brcmfmac43430a0-sdio.bin
+lib/firmware/brcm/brcmfmac43430a0-sdio.jumper-ezpad-mini3.txt
+lib/firmware/brcm/brcmfmac43455-sdio.MINIX-NEO_Z83-4.txt
lib/firmware/brcm/brcmfmac43455-sdio.bin
+lib/firmware/brcm/brcmfmac43455-sdio.raspberrypi,3-model-b-plus.txt
lib/firmware/brcm/brcmfmac4350-pcie.bin
lib/firmware/brcm/brcmfmac4350c2-pcie.bin
lib/firmware/brcm/brcmfmac4354-sdio.bin
lib/firmware/brcm/brcmfmac4356-pcie.bin
+lib/firmware/brcm/brcmfmac4356-pcie.gpd-win-pocket.txt
lib/firmware/brcm/brcmfmac4356-sdio.bin
lib/firmware/brcm/brcmfmac43569.bin
lib/firmware/brcm/brcmfmac43570-pcie.bin
lib/firmware/brcm/brcmfmac43602-pcie.ap.bin
lib/firmware/brcm/brcmfmac43602-pcie.bin
lib/firmware/brcm/brcmfmac4366b-pcie.bin
+lib/firmware/brcm/brcmfmac4366c-pcie.bin
lib/firmware/brcm/brcmfmac4371-pcie.bin
lib/firmware/brcm/brcmfmac4373-sdio.bin
lib/firmware/brcm/brcmfmac4373.bin
+#lib/firmware/cadence
+lib/firmware/cadence/mhdp8546.bin
lib/firmware/carl9170-1.fw
#lib/firmware/carl9170fw
#lib/firmware/carl9170fw/CMakeLists.txt
#lib/firmware/carl9170fw/tools/src/miniboot.c
#lib/firmware/carl9170fw/tools/src/wol.c
#lib/firmware/cavium
+lib/firmware/cavium/cnn55xx_ae.fw
lib/firmware/cavium/cnn55xx_se.fw
lib/firmware/cbfw-3.2.1.1.bin
lib/firmware/cbfw-3.2.3.0.bin
lib/firmware/cmmb_vega_12mhz.inp
lib/firmware/cmmb_venice_12mhz.inp
#lib/firmware/configure
+#lib/firmware/copy-firmware.sh
#lib/firmware/cpia2
lib/firmware/cpia2/stv0672_vp4.bin
lib/firmware/ct2fw-3.2.1.1.bin
#lib/firmware/cxgb4
lib/firmware/cxgb4/aq1202_fw.cld
lib/firmware/cxgb4/bcm8483.bin
+#lib/firmware/cxgb4/configs
+lib/firmware/cxgb4/configs/t4-config-default.txt
+lib/firmware/cxgb4/configs/t5-config-default.txt
+lib/firmware/cxgb4/configs/t5-config-hashfilter.txt
+lib/firmware/cxgb4/configs/t6-config-default.txt
+lib/firmware/cxgb4/configs/t6-config-hashfilter.txt
lib/firmware/cxgb4/t4fw-1.14.4.0.bin
lib/firmware/cxgb4/t4fw-1.15.37.0.bin
-lib/firmware/cxgb4/t4fw-1.20.8.0.bin
-lib/firmware/cxgb4/t4fw.bin
+lib/firmware/cxgb4/t4fw-1.24.3.0.bin
lib/firmware/cxgb4/t5fw-1.14.4.0.bin
lib/firmware/cxgb4/t5fw-1.15.37.0.bin
-lib/firmware/cxgb4/t5fw-1.20.8.0.bin
-lib/firmware/cxgb4/t5fw.bin
-lib/firmware/cxgb4/t6fw-1.20.8.0.bin
-lib/firmware/cxgb4/t6fw.bin
+lib/firmware/cxgb4/t5fw-1.24.3.0.bin
+lib/firmware/cxgb4/t6fw-1.24.3.0.bin
#lib/firmware/dabusb
lib/firmware/dabusb/bitstream.bin
lib/firmware/dabusb/firmware.fw
+#lib/firmware/dpaa2
+#lib/firmware/dpaa2/mc
+lib/firmware/dpaa2/mc/mc_10.10.0_ls1088a.itb
+lib/firmware/dpaa2/mc/mc_10.10.0_ls2088a.itb
+lib/firmware/dpaa2/mc/mc_10.10.0_lx2160a.itb
+lib/firmware/dpaa2/mc/mc_10.14.3_ls1088a.itb
+lib/firmware/dpaa2/mc/mc_10.14.3_ls2088a.itb
+lib/firmware/dpaa2/mc/mc_10.14.3_lx2160a.itb
+lib/firmware/dpaa2/mc/mc_10.16.2_ls1088a.itb
+lib/firmware/dpaa2/mc/mc_10.16.2_ls2088a.itb
+lib/firmware/dpaa2/mc/mc_10.16.2_lx2160a.itb
#lib/firmware/dsp56k
#lib/firmware/dsp56k/Makefile
#lib/firmware/dsp56k/bootstrap.asm
#lib/firmware/i915
lib/firmware/i915/bxt_dmc_ver1.bin
lib/firmware/i915/bxt_dmc_ver1_07.bin
+lib/firmware/i915/bxt_guc_32.0.3.bin
+lib/firmware/i915/bxt_guc_33.0.0.bin
lib/firmware/i915/bxt_guc_ver8_7.bin
lib/firmware/i915/bxt_guc_ver9_29.bin
+lib/firmware/i915/bxt_huc_2.0.0.bin
lib/firmware/i915/bxt_huc_ver01_07_1398.bin
+lib/firmware/i915/bxt_huc_ver01_8_2893.bin
+lib/firmware/i915/cml_guc_33.0.0.bin
+lib/firmware/i915/cml_huc_4.0.0.bin
lib/firmware/i915/cnl_dmc_ver1_06.bin
lib/firmware/i915/cnl_dmc_ver1_07.bin
lib/firmware/i915/glk_dmc_ver1_04.bin
+lib/firmware/i915/glk_guc_32.0.3.bin
+lib/firmware/i915/glk_guc_33.0.0.bin
+lib/firmware/i915/glk_huc_4.0.0.bin
+lib/firmware/i915/glk_huc_ver03_01_2893.bin
+lib/firmware/i915/icl_dmc_ver1_07.bin
+lib/firmware/i915/icl_dmc_ver1_09.bin
+lib/firmware/i915/icl_guc_32.0.3.bin
+lib/firmware/i915/icl_guc_33.0.0.bin
+lib/firmware/i915/icl_huc_9.0.0.bin
+lib/firmware/i915/icl_huc_ver8_4_3238.bin
lib/firmware/i915/kbl_dmc_ver1.bin
lib/firmware/i915/kbl_dmc_ver1_01.bin
lib/firmware/i915/kbl_dmc_ver1_04.bin
+lib/firmware/i915/kbl_guc_32.0.3.bin
+lib/firmware/i915/kbl_guc_33.0.0.bin
lib/firmware/i915/kbl_guc_ver9_14.bin
lib/firmware/i915/kbl_guc_ver9_39.bin
+lib/firmware/i915/kbl_huc_4.0.0.bin
lib/firmware/i915/kbl_huc_ver02_00_1810.bin
lib/firmware/i915/skl_dmc_ver1.bin
lib/firmware/i915/skl_dmc_ver1_23.bin
lib/firmware/i915/skl_dmc_ver1_26.bin
lib/firmware/i915/skl_dmc_ver1_27.bin
+lib/firmware/i915/skl_guc_32.0.3.bin
+lib/firmware/i915/skl_guc_33.0.0.bin
lib/firmware/i915/skl_guc_ver1.bin
lib/firmware/i915/skl_guc_ver4.bin
lib/firmware/i915/skl_guc_ver6.bin
lib/firmware/i915/skl_guc_ver6_1.bin
lib/firmware/i915/skl_guc_ver9_33.bin
+lib/firmware/i915/skl_huc_2.0.0.bin
lib/firmware/i915/skl_huc_ver01_07_1398.bin
+lib/firmware/i915/tgl_dmc_ver2_04.bin
#lib/firmware/imx
#lib/firmware/imx/sdma
lib/firmware/imx/sdma/sdma-imx6q.bin
lib/firmware/imx/sdma/sdma-imx7d.bin
#lib/firmware/intel
lib/firmware/intel/IntcSST2.bin
-lib/firmware/intel/dsp_fw_bxtn.bin
lib/firmware/intel/dsp_fw_bxtn_v2219.bin
lib/firmware/intel/dsp_fw_bxtn_v3366.bin
-lib/firmware/intel/dsp_fw_cnl.bin
lib/firmware/intel/dsp_fw_cnl_v1191.bin
-lib/firmware/intel/dsp_fw_glk.bin
+lib/firmware/intel/dsp_fw_cnl_v1858.bin
lib/firmware/intel/dsp_fw_glk_v1814.bin
lib/firmware/intel/dsp_fw_glk_v2768.bin
lib/firmware/intel/dsp_fw_glk_v2880.bin
lib/firmware/intel/dsp_fw_glk_v3366.bin
-lib/firmware/intel/dsp_fw_kbl.bin
lib/firmware/intel/dsp_fw_kbl_v1037.bin
lib/firmware/intel/dsp_fw_kbl_v2042.bin
lib/firmware/intel/dsp_fw_kbl_v2630.bin
lib/firmware/intel/dsp_fw_kbl_v3402.bin
lib/firmware/intel/dsp_fw_kbl_v3420.bin
lib/firmware/intel/dsp_fw_kbl_v701.bin
-lib/firmware/intel/dsp_fw_release.bin
lib/firmware/intel/dsp_fw_release_v3402.bin
lib/firmware/intel/dsp_fw_release_v969.bin
lib/firmware/intel/fw_sst_0f28.bin
lib/firmware/intel/ibt-18-16-1.sfi
lib/firmware/intel/ibt-18-2.ddc
lib/firmware/intel/ibt-18-2.sfi
+lib/firmware/intel/ibt-19-0-0.ddc
+lib/firmware/intel/ibt-19-0-0.sfi
+lib/firmware/intel/ibt-19-0-1.ddc
+lib/firmware/intel/ibt-19-0-1.sfi
+lib/firmware/intel/ibt-19-0-4.ddc
+lib/firmware/intel/ibt-19-0-4.sfi
+lib/firmware/intel/ibt-19-16-4.ddc
+lib/firmware/intel/ibt-19-16-4.sfi
+lib/firmware/intel/ibt-19-32-0.ddc
+lib/firmware/intel/ibt-19-32-0.sfi
+lib/firmware/intel/ibt-19-32-1.ddc
+lib/firmware/intel/ibt-19-32-1.sfi
+lib/firmware/intel/ibt-19-32-4.ddc
+lib/firmware/intel/ibt-19-32-4.sfi
+lib/firmware/intel/ibt-20-0-3.ddc
+lib/firmware/intel/ibt-20-0-3.sfi
+lib/firmware/intel/ibt-20-1-3.ddc
+lib/firmware/intel/ibt-20-1-3.sfi
+lib/firmware/intel/ibt-20-1-4.ddc
+lib/firmware/intel/ibt-20-1-4.sfi
lib/firmware/intel/ibt-hw-37.7.10-fw-1.0.1.2d.d.bseq
lib/firmware/intel/ibt-hw-37.7.10-fw-1.0.2.3.d.bseq
lib/firmware/intel/ibt-hw-37.7.10-fw-1.80.1.2d.d.bseq
lib/firmware/intel/ibt-hw-37.8.10-fw-1.10.3.11.e.bseq
lib/firmware/intel/ibt-hw-37.8.10-fw-22.50.19.14.f.bseq
lib/firmware/intel/ibt-hw-37.8.bseq
-lib/firmware/intel/ipu3-fw.bin
+#lib/firmware/intel/ice
+#lib/firmware/intel/ice/ddp
+lib/firmware/intel/ice/ddp/ice-1.3.4.0.pkg
lib/firmware/intel/irci_irci_ecr-master_20161208_0213_20170112_1500.bin
lib/firmware/intelliport2.bin
#lib/firmware/isci
lib/firmware/iwlwifi-9000-pu-b0-jf-b0-33.ucode
lib/firmware/iwlwifi-9000-pu-b0-jf-b0-34.ucode
lib/firmware/iwlwifi-9000-pu-b0-jf-b0-38.ucode
+lib/firmware/iwlwifi-9000-pu-b0-jf-b0-41.ucode
+lib/firmware/iwlwifi-9000-pu-b0-jf-b0-43.ucode
+lib/firmware/iwlwifi-9000-pu-b0-jf-b0-46.ucode
lib/firmware/iwlwifi-9260-th-b0-jf-b0-33.ucode
lib/firmware/iwlwifi-9260-th-b0-jf-b0-34.ucode
lib/firmware/iwlwifi-9260-th-b0-jf-b0-38.ucode
+lib/firmware/iwlwifi-9260-th-b0-jf-b0-41.ucode
+lib/firmware/iwlwifi-9260-th-b0-jf-b0-43.ucode
+lib/firmware/iwlwifi-9260-th-b0-jf-b0-46.ucode
+lib/firmware/iwlwifi-Qu-b0-hr-b0-48.ucode
+lib/firmware/iwlwifi-Qu-b0-jf-b0-48.ucode
+lib/firmware/iwlwifi-Qu-c0-hr-b0-48.ucode
+lib/firmware/iwlwifi-Qu-c0-jf-b0-48.ucode
+lib/firmware/iwlwifi-QuZ-a0-hr-b0-48.ucode
+lib/firmware/iwlwifi-QuZ-a0-jf-b0-48.ucode
+lib/firmware/iwlwifi-cc-a0-46.ucode
+lib/firmware/iwlwifi-cc-a0-48.ucode
#lib/firmware/kaweth
lib/firmware/kaweth/new_code.bin
lib/firmware/kaweth/new_code_fix.bin
lib/firmware/libertas/sd8686_v8_helper.bin
lib/firmware/libertas/sd8686_v9.bin
lib/firmware/libertas/sd8686_v9_helper.bin
-lib/firmware/libertas/sd8688.bin
-lib/firmware/libertas/sd8688_helper.bin
lib/firmware/libertas/usb8388_olpc.bin
lib/firmware/libertas/usb8388_v5.bin
lib/firmware/libertas/usb8388_v9.bin
lib/firmware/matrox/g200_warp.fw
lib/firmware/matrox/g400_warp.fw
#lib/firmware/mediatek
+lib/firmware/mediatek/mt7610e.bin
+lib/firmware/mediatek/mt7610u.bin
+lib/firmware/mediatek/mt7615_cr4.bin
+lib/firmware/mediatek/mt7615_n9.bin
+lib/firmware/mediatek/mt7615_rom_patch.bin
lib/firmware/mediatek/mt7622pr2h.bin
+lib/firmware/mediatek/mt7650e.bin
lib/firmware/mediatek/mt7662u.bin
lib/firmware/mediatek/mt7662u_rom_patch.bin
+lib/firmware/mediatek/mt7668pr2h.bin
#lib/firmware/mellanox
lib/firmware/mellanox/mlxsw_spectrum-13.1420.122.mfa2
lib/firmware/mellanox/mlxsw_spectrum-13.1530.152.mfa2
lib/firmware/mellanox/mlxsw_spectrum-13.1620.192.mfa2
lib/firmware/mellanox/mlxsw_spectrum-13.1702.6.mfa2
+lib/firmware/mellanox/mlxsw_spectrum-13.1703.4.mfa2
+lib/firmware/mellanox/mlxsw_spectrum-13.1910.622.mfa2
+lib/firmware/mellanox/mlxsw_spectrum-13.2000.1122.mfa2
+lib/firmware/mellanox/mlxsw_spectrum-13.2000.1886.mfa2
+#lib/firmware/meson
+#lib/firmware/meson/vdec
+lib/firmware/meson/vdec/g12a_h264.bin
+lib/firmware/meson/vdec/g12a_vp9.bin
+lib/firmware/meson/vdec/gxbb_h264.bin
+lib/firmware/meson/vdec/gxl_h263.bin
+lib/firmware/meson/vdec/gxl_h264.bin
+lib/firmware/meson/vdec/gxl_hevc.bin
+lib/firmware/meson/vdec/gxl_hevc_mmu.bin
+lib/firmware/meson/vdec/gxl_mjpeg.bin
+lib/firmware/meson/vdec/gxl_mpeg12.bin
+lib/firmware/meson/vdec/gxl_mpeg4_5.bin
+lib/firmware/meson/vdec/gxm_h264.bin
+#lib/firmware/microchip
+lib/firmware/microchip/mscc_vsc8574_revb_int8051_29e8.bin
+lib/firmware/microchip/mscc_vsc8584_revb_int8051_fb48.bin
#lib/firmware/moxa
lib/firmware/moxa/moxa-1110.fw
lib/firmware/moxa/moxa-1130.fw
lib/firmware/mrvl/sd8801_uapsta.bin
lib/firmware/mrvl/sd8887_uapsta.bin
lib/firmware/mrvl/sd8897_uapsta.bin
+lib/firmware/mrvl/sdsd8977_combo_v2.bin
+lib/firmware/mrvl/sdsd8997_combo_v4.bin
lib/firmware/mrvl/usb8766_uapsta.bin
lib/firmware/mrvl/usb8797_uapsta.bin
lib/firmware/mrvl/usb8801_uapsta.bin
#lib/firmware/myricom
lib/firmware/myricom/lanai.bin
#lib/firmware/netronome
+#lib/firmware/netronome/bpf
+lib/firmware/netronome/bpf/nic_AMDA0058-0011_2x40.nffw
+lib/firmware/netronome/bpf/nic_AMDA0058-0012_2x40.nffw
+lib/firmware/netronome/bpf/nic_AMDA0078-0011_1x100.nffw
+lib/firmware/netronome/bpf/nic_AMDA0081-0001_1x40.nffw
+lib/firmware/netronome/bpf/nic_AMDA0081-0001_4x10.nffw
+lib/firmware/netronome/bpf/nic_AMDA0096-0001_2x10.nffw
+lib/firmware/netronome/bpf/nic_AMDA0097-0001_2x40.nffw
+lib/firmware/netronome/bpf/nic_AMDA0097-0001_4x10_1x40.nffw
+lib/firmware/netronome/bpf/nic_AMDA0097-0001_8x10.nffw
+lib/firmware/netronome/bpf/nic_AMDA0099-0001_1x10_1x25.nffw
+lib/firmware/netronome/bpf/nic_AMDA0099-0001_2x10.nffw
+lib/firmware/netronome/bpf/nic_AMDA0099-0001_2x25.nffw
#lib/firmware/netronome/flower
-lib/firmware/netronome/flower/nic_AMDA0081-0001_1x40.nffw
-lib/firmware/netronome/flower/nic_AMDA0081-0001_4x10.nffw
-lib/firmware/netronome/flower/nic_AMDA0081.nffw
-lib/firmware/netronome/flower/nic_AMDA0096-0001_2x10.nffw
+lib/firmware/netronome/flower/nic_AMDA0058.nffw
lib/firmware/netronome/flower/nic_AMDA0096.nffw
-lib/firmware/netronome/flower/nic_AMDA0097-0001_2x40.nffw
-lib/firmware/netronome/flower/nic_AMDA0097-0001_4x10_1x40.nffw
-lib/firmware/netronome/flower/nic_AMDA0097-0001_8x10.nffw
lib/firmware/netronome/flower/nic_AMDA0097.nffw
-lib/firmware/netronome/flower/nic_AMDA0099-0001_1x10_1x25.nffw
-lib/firmware/netronome/flower/nic_AMDA0099-0001_2x10.nffw
-lib/firmware/netronome/flower/nic_AMDA0099-0001_2x25.nffw
lib/firmware/netronome/flower/nic_AMDA0099.nffw
#lib/firmware/netronome/nic
+#lib/firmware/netronome/nic-sriov
+lib/firmware/netronome/nic-sriov/nic_AMDA0058-0011_2x40.nffw
+lib/firmware/netronome/nic-sriov/nic_AMDA0058-0012_2x40.nffw
+lib/firmware/netronome/nic-sriov/nic_AMDA0078-0011_1x100.nffw
+lib/firmware/netronome/nic-sriov/nic_AMDA0081-0001_1x40.nffw
+lib/firmware/netronome/nic-sriov/nic_AMDA0081-0001_4x10.nffw
+lib/firmware/netronome/nic-sriov/nic_AMDA0096-0001_2x10.nffw
+lib/firmware/netronome/nic-sriov/nic_AMDA0097-0001_2x40.nffw
+lib/firmware/netronome/nic-sriov/nic_AMDA0097-0001_4x10_1x40.nffw
+lib/firmware/netronome/nic-sriov/nic_AMDA0097-0001_8x10.nffw
+lib/firmware/netronome/nic-sriov/nic_AMDA0099-0001_1x10_1x25.nffw
+lib/firmware/netronome/nic-sriov/nic_AMDA0099-0001_2x10.nffw
+lib/firmware/netronome/nic-sriov/nic_AMDA0099-0001_2x25.nffw
lib/firmware/netronome/nic/nic_AMDA0058-0011_2x40.nffw
lib/firmware/netronome/nic/nic_AMDA0058-0012_2x40.nffw
lib/firmware/netronome/nic/nic_AMDA0078-0011_1x100.nffw
lib/firmware/netronome/nic/nic_AMDA0099-0001_1x10_1x25.nffw
lib/firmware/netronome/nic/nic_AMDA0099-0001_2x10.nffw
lib/firmware/netronome/nic/nic_AMDA0099-0001_2x25.nffw
-lib/firmware/netronome/nic_AMDA0058-0011_2x40.nffw
-lib/firmware/netronome/nic_AMDA0058-0012_2x40.nffw
-lib/firmware/netronome/nic_AMDA0078-0011_1x100.nffw
-lib/firmware/netronome/nic_AMDA0081-0001_1x40.nffw
-lib/firmware/netronome/nic_AMDA0081-0001_4x10.nffw
-lib/firmware/netronome/nic_AMDA0096-0001_2x10.nffw
-lib/firmware/netronome/nic_AMDA0097-0001_2x40.nffw
-lib/firmware/netronome/nic_AMDA0097-0001_4x10_1x40.nffw
-lib/firmware/netronome/nic_AMDA0097-0001_8x10.nffw
-lib/firmware/netronome/nic_AMDA0099-0001_1x10_1x25.nffw
-lib/firmware/netronome/nic_AMDA0099-0001_2x10.nffw
-lib/firmware/netronome/nic_AMDA0099-0001_2x25.nffw
#lib/firmware/nvidia
#lib/firmware/nvidia/gk20a
lib/firmware/nvidia/gk20a/fecs_data.bin
#lib/firmware/nvidia/gp102/nvdec
lib/firmware/nvidia/gp102/nvdec/scrubber.bin
#lib/firmware/nvidia/gp102/sec2
+lib/firmware/nvidia/gp102/sec2/desc-1.bin
lib/firmware/nvidia/gp102/sec2/desc.bin
+lib/firmware/nvidia/gp102/sec2/image-1.bin
lib/firmware/nvidia/gp102/sec2/image.bin
+lib/firmware/nvidia/gp102/sec2/sig-1.bin
lib/firmware/nvidia/gp102/sec2/sig.bin
#lib/firmware/nvidia/gp104
#lib/firmware/nvidia/gp104/acr
#lib/firmware/nvidia/gp104/nvdec
lib/firmware/nvidia/gp104/nvdec/scrubber.bin
#lib/firmware/nvidia/gp104/sec2
+lib/firmware/nvidia/gp104/sec2/desc-1.bin
lib/firmware/nvidia/gp104/sec2/desc.bin
+lib/firmware/nvidia/gp104/sec2/image-1.bin
lib/firmware/nvidia/gp104/sec2/image.bin
+lib/firmware/nvidia/gp104/sec2/sig-1.bin
lib/firmware/nvidia/gp104/sec2/sig.bin
#lib/firmware/nvidia/gp106
#lib/firmware/nvidia/gp106/acr
#lib/firmware/nvidia/gp106/nvdec
lib/firmware/nvidia/gp106/nvdec/scrubber.bin
#lib/firmware/nvidia/gp106/sec2
+lib/firmware/nvidia/gp106/sec2/desc-1.bin
lib/firmware/nvidia/gp106/sec2/desc.bin
+lib/firmware/nvidia/gp106/sec2/image-1.bin
lib/firmware/nvidia/gp106/sec2/image.bin
+lib/firmware/nvidia/gp106/sec2/sig-1.bin
lib/firmware/nvidia/gp106/sec2/sig.bin
#lib/firmware/nvidia/gp107
#lib/firmware/nvidia/gp107/acr
#lib/firmware/nvidia/gp107/nvdec
lib/firmware/nvidia/gp107/nvdec/scrubber.bin
#lib/firmware/nvidia/gp107/sec2
+lib/firmware/nvidia/gp107/sec2/desc-1.bin
lib/firmware/nvidia/gp107/sec2/desc.bin
+lib/firmware/nvidia/gp107/sec2/image-1.bin
lib/firmware/nvidia/gp107/sec2/image.bin
+lib/firmware/nvidia/gp107/sec2/sig-1.bin
lib/firmware/nvidia/gp107/sec2/sig.bin
#lib/firmware/nvidia/gp108
#lib/firmware/nvidia/gp108/acr
lib/firmware/nvidia/gp10b/pmu/desc.bin
lib/firmware/nvidia/gp10b/pmu/image.bin
lib/firmware/nvidia/gp10b/pmu/sig.bin
+#lib/firmware/nvidia/gv100
+#lib/firmware/nvidia/gv100/acr
+lib/firmware/nvidia/gv100/acr/bl.bin
+lib/firmware/nvidia/gv100/acr/ucode_load.bin
+lib/firmware/nvidia/gv100/acr/ucode_unload.bin
+lib/firmware/nvidia/gv100/acr/unload_bl.bin
+#lib/firmware/nvidia/gv100/gr
+lib/firmware/nvidia/gv100/gr/fecs_bl.bin
+lib/firmware/nvidia/gv100/gr/fecs_data.bin
+lib/firmware/nvidia/gv100/gr/fecs_inst.bin
+lib/firmware/nvidia/gv100/gr/fecs_sig.bin
+lib/firmware/nvidia/gv100/gr/gpccs_bl.bin
+lib/firmware/nvidia/gv100/gr/gpccs_data.bin
+lib/firmware/nvidia/gv100/gr/gpccs_inst.bin
+lib/firmware/nvidia/gv100/gr/gpccs_sig.bin
+lib/firmware/nvidia/gv100/gr/sw_bundle_init.bin
+lib/firmware/nvidia/gv100/gr/sw_ctx.bin
+lib/firmware/nvidia/gv100/gr/sw_method_init.bin
+lib/firmware/nvidia/gv100/gr/sw_nonctx.bin
+#lib/firmware/nvidia/gv100/nvdec
+lib/firmware/nvidia/gv100/nvdec/scrubber.bin
+#lib/firmware/nvidia/gv100/sec2
+lib/firmware/nvidia/gv100/sec2/desc.bin
+lib/firmware/nvidia/gv100/sec2/image.bin
+lib/firmware/nvidia/gv100/sec2/sig.bin
#lib/firmware/nvidia/tegra124
lib/firmware/nvidia/tegra124/vic03_ucode.bin
lib/firmware/nvidia/tegra124/xusb.bin
#lib/firmware/nvidia/tegra186
lib/firmware/nvidia/tegra186/vic04_ucode.bin
+lib/firmware/nvidia/tegra186/xusb.bin
+#lib/firmware/nvidia/tegra194
+lib/firmware/nvidia/tegra194/xusb.bin
#lib/firmware/nvidia/tegra210
lib/firmware/nvidia/tegra210/vic04_ucode.bin
lib/firmware/nvidia/tegra210/xusb.bin
+#lib/firmware/nvidia/tu10x
+#lib/firmware/nvidia/tu10x/typec
+lib/firmware/nvidia/tu10x/typec/ccg_boot.cyacd
+lib/firmware/nvidia/tu10x/typec/ccg_primary.cyacd
+lib/firmware/nvidia/tu10x/typec/ccg_secondary.cyacd
#lib/firmware/ositech
lib/firmware/ositech/Xilinx7OD.bin
lib/firmware/phanfw.bin
lib/firmware/qat_c3xxx_mmp.bin
lib/firmware/qat_c62x.bin
lib/firmware/qat_c62x_mmp.bin
-lib/firmware/qat_mmp.bin
#lib/firmware/qca
lib/firmware/qca/NOTICE.txt
+lib/firmware/qca/crbtfw21.tlv
+lib/firmware/qca/crnv21.bin
lib/firmware/qca/nvm_00130300.bin
lib/firmware/qca/nvm_00130302.bin
+lib/firmware/qca/nvm_00440302.bin
lib/firmware/qca/nvm_usb_00000200.bin
lib/firmware/qca/nvm_usb_00000201.bin
lib/firmware/qca/nvm_usb_00000300.bin
lib/firmware/qca/nvm_usb_00000302.bin
lib/firmware/qca/rampatch_00130300.bin
lib/firmware/qca/rampatch_00130302.bin
+lib/firmware/qca/rampatch_00440302.bin
lib/firmware/qca/rampatch_usb_00000200.bin
lib/firmware/qca/rampatch_usb_00000201.bin
lib/firmware/qca/rampatch_usb_00000300.bin
lib/firmware/qcom/a530_zap.b02
lib/firmware/qcom/a530_zap.mdt
lib/firmware/qcom/a530v3_gpmu.fw2
+lib/firmware/qcom/a630_gmu.bin
+lib/firmware/qcom/a630_sqe.fw
#lib/firmware/qcom/venus-1.8
lib/firmware/qcom/venus-1.8/venus.b00
lib/firmware/qcom/venus-1.8/venus.b01
lib/firmware/qed/qed_init_values-8.20.0.0.bin
lib/firmware/qed/qed_init_values-8.30.12.0.bin
lib/firmware/qed/qed_init_values-8.33.12.0.bin
+lib/firmware/qed/qed_init_values-8.37.7.0.bin
lib/firmware/qed/qed_init_values_zipped-8.10.10.0.bin
lib/firmware/qed/qed_init_values_zipped-8.10.5.0.bin
lib/firmware/qed/qed_init_values_zipped-8.15.3.0.bin
lib/firmware/qed/qed_init_values_zipped-8.33.1.0.bin
lib/firmware/qed/qed_init_values_zipped-8.33.11.0.bin
lib/firmware/qed/qed_init_values_zipped-8.37.2.0.bin
+lib/firmware/qed/qed_init_values_zipped-8.37.7.0.bin
lib/firmware/qed/qed_init_values_zipped-8.4.2.0.bin
lib/firmware/qed/qed_init_values_zipped-8.7.3.0.bin
lib/firmware/ql2100_fw.bin
lib/firmware/rsi/rs9113_ap_bt_dual_mode.rps
lib/firmware/rsi/rs9113_wlan_bt_dual_mode.rps
lib/firmware/rsi/rs9113_wlan_qspi.rps
+lib/firmware/rsi/rs9116_wlan.rps
+lib/firmware/rsi/rs9116_wlan_bt_classic.rps
lib/firmware/rsi_91x.fw
lib/firmware/rt2561.bin
lib/firmware/rt2561s.bin
lib/firmware/rt2661.bin
lib/firmware/rt2860.bin
lib/firmware/rt2870.bin
-lib/firmware/rt3070.bin
lib/firmware/rt3071.bin
-lib/firmware/rt3090.bin
lib/firmware/rt3290.bin
lib/firmware/rt73.bin
#lib/firmware/rtl_bt
lib/firmware/rtl_bt/rtl8192eu_fw.bin
lib/firmware/rtl_bt/rtl8723a_fw.bin
lib/firmware/rtl_bt/rtl8723b_fw.bin
+lib/firmware/rtl_bt/rtl8723bs_config-OBDA8723.bin
+lib/firmware/rtl_bt/rtl8723bs_fw.bin
lib/firmware/rtl_bt/rtl8723d_config.bin
lib/firmware/rtl_bt/rtl8723d_fw.bin
lib/firmware/rtl_bt/rtl8761a_fw.bin
lib/firmware/rtl_bt/rtl8821c_fw.bin
lib/firmware/rtl_bt/rtl8822b_config.bin
lib/firmware/rtl_bt/rtl8822b_fw.bin
+lib/firmware/rtl_bt/rtl8822cu_fw.bin
#lib/firmware/rtl_nic
lib/firmware/rtl_nic/rtl8105e-1.fw
lib/firmware/rtl_nic/rtl8106e-1.fw
lib/firmware/rtl_nic/rtl8106e-2.fw
lib/firmware/rtl_nic/rtl8107e-1.fw
lib/firmware/rtl_nic/rtl8107e-2.fw
+lib/firmware/rtl_nic/rtl8125a-3.fw
lib/firmware/rtl_nic/rtl8168d-1.fw
lib/firmware/rtl_nic/rtl8168d-2.fw
lib/firmware/rtl_nic/rtl8168e-1.fw
lib/firmware/rtlwifi/rtl8723defw.bin
lib/firmware/rtlwifi/rtl8723fw.bin
lib/firmware/rtlwifi/rtl8723fw_B.bin
+lib/firmware/rtlwifi/rtl8812aefw.bin
+lib/firmware/rtlwifi/rtl8812aefw_wowlan.bin
lib/firmware/rtlwifi/rtl8821aefw.bin
lib/firmware/rtlwifi/rtl8821aefw_29.bin
lib/firmware/rtlwifi/rtl8821aefw_wowlan.bin
lib/firmware/rtlwifi/rtl8822befw.bin
-lib/firmware/s2250.fw
-lib/firmware/s2250_loader.fw
+#lib/firmware/rtw88
+lib/firmware/rtw88/README
+lib/firmware/rtw88/rtw8822b_fw.bin
+lib/firmware/rtw88/rtw8822c_fw.bin
+lib/firmware/rtw88/rtw8822c_wow_fw.bin
lib/firmware/s5p-mfc-v6-v2.fw
lib/firmware/s5p-mfc-v6.fw
lib/firmware/s5p-mfc-v7.fw
#lib/firmware/tehuti
lib/firmware/tehuti/bdx.bin
#lib/firmware/ti-connectivity
+lib/firmware/ti-connectivity/TIInit_6.2.31.bts
+lib/firmware/ti-connectivity/TIInit_6.6.15.bts
lib/firmware/ti-connectivity/TIInit_7.2.31.bts
lib/firmware/ti-connectivity/wl1251-fw.bin
lib/firmware/ti-connectivity/wl1251-nvs.bin
lib/firmware/ti-connectivity/wl1271-fw-2.bin
lib/firmware/ti-connectivity/wl1271-fw-ap.bin
lib/firmware/ti-connectivity/wl1271-fw.bin
-lib/firmware/ti-connectivity/wl1271-nvs.bin
lib/firmware/ti-connectivity/wl127x-fw-3.bin
lib/firmware/ti-connectivity/wl127x-fw-4-mr.bin
lib/firmware/ti-connectivity/wl127x-fw-4-plt.bin
lib/firmware/ti-connectivity/wl128x-fw-plt-3.bin
lib/firmware/ti-connectivity/wl128x-fw.bin
lib/firmware/ti-connectivity/wl128x-nvs.bin
-lib/firmware/ti-connectivity/wl12xx-nvs.bin
lib/firmware/ti-connectivity/wl18xx-fw-2.bin
lib/firmware/ti-connectivity/wl18xx-fw-3.bin
lib/firmware/ti-connectivity/wl18xx-fw-4.bin
#usr/share/logwatch/default.conf/logfiles/daemon.conf
#usr/share/logwatch/default.conf/logfiles/denyhosts.conf
#usr/share/logwatch/default.conf/logfiles/dirsrv.conf
+#usr/share/logwatch/default.conf/logfiles/dnf-rpm.conf
#usr/share/logwatch/default.conf/logfiles/dnssec.conf
+#usr/share/logwatch/default.conf/logfiles/dovecot.conf
#usr/share/logwatch/default.conf/logfiles/dpkg.conf
#usr/share/logwatch/default.conf/logfiles/emerge.conf
#usr/share/logwatch/default.conf/logfiles/eventlog.conf
#usr/share/logwatch/default.conf/logfiles/qmail-send-current.conf
#usr/share/logwatch/default.conf/logfiles/qmail-smtpd-current.conf
usr/share/logwatch/default.conf/logfiles/resolver.conf
+#usr/share/logwatch/default.conf/logfiles/rsnapshot.conf
#usr/share/logwatch/default.conf/logfiles/rt314.conf
usr/share/logwatch/default.conf/logfiles/samba.conf
#usr/share/logwatch/default.conf/logfiles/secure.conf
#usr/share/logwatch/default.conf/services/denyhosts.conf
usr/share/logwatch/default.conf/services/dhcpd.conf
#usr/share/logwatch/default.conf/services/dirsrv.conf
+#usr/share/logwatch/default.conf/services/dnf-rpm.conf
#usr/share/logwatch/default.conf/services/dnssec.conf
#usr/share/logwatch/default.conf/services/dovecot.conf
#usr/share/logwatch/default.conf/services/dpkg.conf
#usr/share/logwatch/default.conf/services/qmail.conf
#usr/share/logwatch/default.conf/services/raid.conf
usr/share/logwatch/default.conf/services/resolver.conf
+#usr/share/logwatch/default.conf/services/rsnapshot.conf
#usr/share/logwatch/default.conf/services/rsyslogd.conf
#usr/share/logwatch/default.conf/services/rt314.conf
usr/share/logwatch/default.conf/services/samba.conf
#usr/share/logwatch/default.conf/services/yum.conf
#usr/share/logwatch/default.conf/services/zypp.conf
usr/share/logwatch/default.conf/services/zz-disk_space.conf
-#usr/share/logwatch/default.conf/services/zz-fortune.conf
usr/share/logwatch/default.conf/services/zz-lm_sensors.conf
usr/share/logwatch/default.conf/services/zz-network.conf
usr/share/logwatch/default.conf/services/zz-runtime.conf
usr/share/logwatch/scripts/services/dhcpd
usr/share/logwatch/scripts/services/dialup
#usr/share/logwatch/scripts/services/dirsrv
+#usr/share/logwatch/scripts/services/dnf-rpm
#usr/share/logwatch/scripts/services/dnssec
#usr/share/logwatch/scripts/services/dovecot
#usr/share/logwatch/scripts/services/dpkg
#usr/share/logwatch/scripts/services/qmail-smtpd
#usr/share/logwatch/scripts/services/raid
usr/share/logwatch/scripts/services/resolver
+#usr/share/logwatch/scripts/services/rsnapshot
#usr/share/logwatch/scripts/services/rsyslogd
#usr/share/logwatch/scripts/services/rt314
usr/share/logwatch/scripts/services/samba
#usr/share/logwatch/scripts/services/yum
#usr/share/logwatch/scripts/services/zypp
usr/share/logwatch/scripts/services/zz-disk_space
-#usr/share/logwatch/scripts/services/zz-fortune
usr/share/logwatch/scripts/services/zz-lm_sensors
usr/share/logwatch/scripts/services/zz-network
usr/share/logwatch/scripts/services/zz-runtime
usr/share/logwatch/scripts/shared/expandrepeats
usr/share/logwatch/scripts/shared/hosthash
usr/share/logwatch/scripts/shared/hostlist
+usr/share/logwatch/scripts/shared/journalctl
usr/share/logwatch/scripts/shared/multiservice
usr/share/logwatch/scripts/shared/onlycontains
usr/share/logwatch/scripts/shared/onlyhost
#usr/lib/liblz4.a
#usr/lib/liblz4.so
usr/lib/liblz4.so.1
-usr/lib/liblz4.so.1.8.1
+usr/lib/liblz4.so.1.9.2
#usr/lib/pkgconfig/liblz4.pc
#usr/share/man/man1/lz4.1
#usr/share/man/man1/lz4c.1
#usr/bin/pcre-config
-#usr/bin/pcregrep
+usr/bin/pcregrep
#usr/bin/pcretest
#usr/include/pcre.h
#usr/include/pcre_scanner.h
#usr/include/readline/rltypedefs.h
#usr/include/readline/tilde.h
#usr/lib/libhistory.so
-usr/lib/libhistory.so.6
-usr/lib/libhistory.so.6.3
+usr/lib/libhistory.so.8
+usr/lib/libhistory.so.8.0
#usr/lib/libreadline.so
-usr/lib/libreadline.so.6
-usr/lib/libreadline.so.6.3
+usr/lib/libreadline.so.8
+usr/lib/libreadline.so.8.0
+#usr/lib/pkgconfig/readline.pc
#usr/share/doc/readline
#usr/share/doc/readline/CHANGES
#usr/share/doc/readline/INSTALL
-lib/libhistory.so.5
-lib/libhistory.so.5.2
-lib/libreadline.so.5
-lib/libreadline.so.5.2
+lib/libhistory.so.6
+lib/libhistory.so.6.3
+lib/libreadline.so.6
+lib/libreadline.so.6.3
#usr/lib/libunbound.la
#usr/lib/libunbound.so
usr/lib/libunbound.so.8
-usr/lib/libunbound.so.8.1.4
+usr/lib/libunbound.so.8.1.5
#usr/lib/pkgconfig/libunbound.pc
usr/sbin/unbound
usr/sbin/unbound-anchor
etc/rc.d/init.d/networking/red.down/10-ovpn
etc/rc.d/init.d/networking/red.down/10-static-routes
etc/rc.d/init.d/networking/red.down/20-firewall
+etc/rc.d/init.d/networking/red.down/99-beep
#etc/rc.d/init.d/networking/red.up
etc/rc.d/init.d/networking/red.up/01-conntrack-cleanup
etc/rc.d/init.d/networking/red.up/05-update-dns-forwarders
etc/rc.d/init.d/networking/red.up/50-ipsec
etc/rc.d/init.d/networking/red.up/50-ovpn
etc/rc.d/init.d/networking/red.up/98-leds
+etc/rc.d/init.d/networking/red.up/99-beep
etc/rc.d/init.d/networking/red.up/99-fireinfo
etc/rc.d/init.d/networking/red.up/99-geoip-database
etc/rc.d/init.d/networking/red.up/99-pakfire-update
lib/firmware/intel-ucode/06-9e-09
lib/firmware/intel-ucode/06-9e-0a
lib/firmware/intel-ucode/06-9e-0b
+lib/firmware/intel-ucode/06-9e-0c
lib/firmware/intel-ucode/06-9e-0d
lib/firmware/intel-ucode/06-a6-00
lib/firmware/intel-ucode/0f-00-07
#lib/modules/KVER-ipfire/build/include/config/x86/intel/pstate.h
#lib/modules/KVER-ipfire/build/include/config/x86/intel/tsx
#lib/modules/KVER-ipfire/build/include/config/x86/intel/tsx/mode
-#lib/modules/KVER-ipfire/build/include/config/x86/intel/tsx/mode/auto.h
+#lib/modules/KVER-ipfire/build/include/config/x86/intel/tsx/mode/off.h
#lib/modules/KVER-ipfire/build/include/config/x86/internode
#lib/modules/KVER-ipfire/build/include/config/x86/internode/cache
#lib/modules/KVER-ipfire/build/include/config/x86/internode/cache/shift.h
#usr/lib/python2.7/distutils/tests/__init__.py
#usr/lib/python2.7/distutils/tests/__init__.pyc
#usr/lib/python2.7/distutils/tests/__init__.pyo
+#usr/lib/python2.7/distutils/tests/includetest.rst
#usr/lib/python2.7/distutils/tests/setuptools_build_ext.py
#usr/lib/python2.7/distutils/tests/setuptools_build_ext.pyc
#usr/lib/python2.7/distutils/tests/setuptools_build_ext.pyo
#usr/lib/python2.7/ensurepip/__main__.pyc
#usr/lib/python2.7/ensurepip/__main__.pyo
#usr/lib/python2.7/ensurepip/_bundled
-#usr/lib/python2.7/ensurepip/_bundled/pip-9.0.3-py2.py3-none-any.whl
-#usr/lib/python2.7/ensurepip/_bundled/setuptools-39.0.1-py2.py3-none-any.whl
+#usr/lib/python2.7/ensurepip/_bundled/pip-19.2.3-py2.py3-none-any.whl
+#usr/lib/python2.7/ensurepip/_bundled/setuptools-41.2.0-py2.py3-none-any.whl
#usr/lib/python2.7/ensurepip/_uninstall.py
#usr/lib/python2.7/ensurepip/_uninstall.pyc
#usr/lib/python2.7/ensurepip/_uninstall.pyo
usr/lib/python2.7/keyword.pyc
#usr/lib/python2.7/keyword.pyo
#usr/lib/python2.7/lib-dynload
-#usr/lib/python2.7/lib-dynload/Python-2.7.15-py2.7.egg-info
+#usr/lib/python2.7/lib-dynload/Python-2.7.17-py2.7.egg-info
usr/lib/python2.7/lib-dynload/_bisect.so
usr/lib/python2.7/lib-dynload/_bsddb.so
usr/lib/python2.7/lib-dynload/_codecs_cn.so
#usr/lib/python2.7/lib-tk/test/test_tkinter/test_loadtk.py
#usr/lib/python2.7/lib-tk/test/test_tkinter/test_loadtk.pyc
#usr/lib/python2.7/lib-tk/test/test_tkinter/test_loadtk.pyo
+#usr/lib/python2.7/lib-tk/test/test_tkinter/test_misc.py
+#usr/lib/python2.7/lib-tk/test/test_tkinter/test_misc.pyc
+#usr/lib/python2.7/lib-tk/test/test_tkinter/test_misc.pyo
#usr/lib/python2.7/lib-tk/test/test_tkinter/test_text.py
#usr/lib/python2.7/lib-tk/test/test_tkinter/test_text.pyc
#usr/lib/python2.7/lib-tk/test/test_tkinter/test_text.pyo
#usr/lib/python2.7/lib-tk/turtle.pyo
#usr/lib/python2.7/lib2to3
#usr/lib/python2.7/lib2to3/Grammar.txt
-#usr/lib/python2.7/lib2to3/Grammar2.7.15.final.0.pickle
+#usr/lib/python2.7/lib2to3/Grammar2.7.17.final.0.pickle
#usr/lib/python2.7/lib2to3/PatternGrammar.txt
-#usr/lib/python2.7/lib2to3/PatternGrammar2.7.15.final.0.pickle
+#usr/lib/python2.7/lib2to3/PatternGrammar2.7.17.final.0.pickle
#usr/lib/python2.7/lib2to3/__init__.py
#usr/lib/python2.7/lib2to3/__init__.pyc
#usr/lib/python2.7/lib2to3/__init__.pyo
#usr/lib/python2.7/test/badsyntax_future8.py
#usr/lib/python2.7/test/badsyntax_future9.py
#usr/lib/python2.7/test/badsyntax_nocaret.py
-#usr/lib/python2.7/test/bisect.py
-#usr/lib/python2.7/test/bisect.pyc
-#usr/lib/python2.7/test/bisect.pyo
+#usr/lib/python2.7/test/bisect_cmd.py
+#usr/lib/python2.7/test/bisect_cmd.pyc
+#usr/lib/python2.7/test/bisect_cmd.pyo
#usr/lib/python2.7/test/capath
#usr/lib/python2.7/test/capath/0e4015b9.0
#usr/lib/python2.7/test/capath/4e1295a3.0
#usr/lib/python2.7/test/capath/6e88d7b8.0
#usr/lib/python2.7/test/capath/99d0fa06.0
#usr/lib/python2.7/test/capath/ce7b8643.0
+#usr/lib/python2.7/test/capath/efa5f9c3.0
#usr/lib/python2.7/test/cfgparser.1
#usr/lib/python2.7/test/cjkencodings
#usr/lib/python2.7/test/cjkencodings/big5-utf8.txt
#usr/lib/python2.7/test/decimaltestdata/tointegral.decTest
#usr/lib/python2.7/test/decimaltestdata/tointegralx.decTest
#usr/lib/python2.7/test/decimaltestdata/xor.decTest
-#usr/lib/python2.7/test/dh1024.pem
#usr/lib/python2.7/test/doctest_aliases.py
#usr/lib/python2.7/test/doctest_aliases.pyc
#usr/lib/python2.7/test/doctest_aliases.pyo
#usr/lib/python2.7/test/double_const.pyo
#usr/lib/python2.7/test/empty.vbs
#usr/lib/python2.7/test/exception_hierarchy.txt
+#usr/lib/python2.7/test/ffdh3072.pem
#usr/lib/python2.7/test/floating_points.txt
#usr/lib/python2.7/test/fork_wait.py
#usr/lib/python2.7/test/fork_wait.pyc
#usr/lib/python2.7/test/symlink_support.py
#usr/lib/python2.7/test/symlink_support.pyc
#usr/lib/python2.7/test/symlink_support.pyo
+#usr/lib/python2.7/test/talos-2019-0758.pem
#usr/lib/python2.7/test/test_MimeWriter.py
#usr/lib/python2.7/test/test_MimeWriter.pyc
#usr/lib/python2.7/test/test_MimeWriter.pyo
#usr/lib/python2.7/test/test_bastion.py
#usr/lib/python2.7/test/test_bastion.pyc
#usr/lib/python2.7/test/test_bastion.pyo
+#usr/lib/python2.7/test/test_bdb.py
+#usr/lib/python2.7/test/test_bdb.pyc
+#usr/lib/python2.7/test/test_bdb.pyo
#usr/lib/python2.7/test/test_bigaddrspace.py
#usr/lib/python2.7/test/test_bigaddrspace.pyc
#usr/lib/python2.7/test/test_bigaddrspace.pyo
#usr/lib/python2.7/test/win_console_handler.py
#usr/lib/python2.7/test/win_console_handler.pyc
#usr/lib/python2.7/test/win_console_handler.pyo
-#usr/lib/python2.7/test/wrongcert.pem
#usr/lib/python2.7/test/xmltestdata
#usr/lib/python2.7/test/xmltestdata/expat224_utf8_bug.xml
#usr/lib/python2.7/test/xmltestdata/simple-ns.xml
+++ /dev/null
-etc/system-release
-etc/issue
-srv/web/ipfire/cgi-bin/credits.cgi
-var/ipfire/langs
-srv/web/ipfire/cgi-bin/vulnerabilities.cgi
+++ /dev/null
-../../../../common/i586/intel-microcode
\ No newline at end of file
+++ /dev/null
-../../../../common/x86_64/intel-microcode
\ No newline at end of file
--- /dev/null
+../../../../common/aarch64/python
\ No newline at end of file
--- /dev/null
+../../../../common/armv5tel/python
\ No newline at end of file
--- /dev/null
+../../../common/cpio
\ No newline at end of file
etc/httpd/conf/vhosts.d/ipfire-interface.conf
etc/httpd/conf/vhosts.d/ipfire-interface-ssl.conf
etc/rc.d/init.d/functions
+etc/rc.d/init.d/leds
+etc/rc.d/init.d/networking/dhcpcd.exe
+etc/rc.d/init.d/networking/red
+etc/rc.d/init.d/networking/functions.network
+etc/rc.d/init.d/networking/red.down/99-beep
etc/rc.d/init.d/networking/red.up/23-suricata
+etc/rc.d/init.d/networking/red.up/99-beep
etc/rc.d/init.d/unbound
etc/suricata/suricata.yaml
+etc/ppp/ip-down
+etc/ppp/ip-up
+srv/web/ipfire/cgi-bin/captive.cgi
srv/web/ipfire/cgi-bin/ids.cgi
srv/web/ipfire/cgi-bin/mail.cgi
srv/web/ipfire/cgi-bin/ovpnmain.cgi
+usr/bin/pcregrep
usr/sbin/convert-snort
usr/lib/firewall/firewall-lib.pl
+var/ipfire/dhcpc/dhcpcd-hooks/10-mtu
var/ipfire/ids-functions.pl
+var/ipfire/proxy/calamaris/bin/mkreport
--- /dev/null
+../../../common/hwdata
\ No newline at end of file
--- /dev/null
+../../../../common/i586/python
\ No newline at end of file
--- /dev/null
+lib/firmware/amd
+lib/firmware/amdgpu/carrizo_ce.bin
+lib/firmware/amdgpu/carrizo_me.bin
+lib/firmware/amdgpu/carrizo_mec2.bin
+lib/firmware/amdgpu/carrizo_mec.bin
+lib/firmware/amdgpu/carrizo_pfp.bin
+lib/firmware/amdgpu/fiji_ce.bin
+lib/firmware/amdgpu/fiji_me.bin
+lib/firmware/amdgpu/fiji_mec2.bin
+lib/firmware/amdgpu/fiji_mec.bin
+lib/firmware/amdgpu/fiji_pfp.bin
+lib/firmware/amdgpu/fiji_vce.bin
+lib/firmware/amdgpu/navi10_asd.bin
+lib/firmware/amdgpu/navi10_ce.bin
+lib/firmware/amdgpu/navi10_gpu_info.bin
+lib/firmware/amdgpu/navi10_me.bin
+lib/firmware/amdgpu/navi10_mec2.bin
+lib/firmware/amdgpu/navi10_mec.bin
+lib/firmware/amdgpu/navi10_pfp.bin
+lib/firmware/amdgpu/navi10_rlc.bin
+lib/firmware/amdgpu/navi10_sdma1.bin
+lib/firmware/amdgpu/navi10_sdma.bin
+lib/firmware/amdgpu/navi10_smc.bin
+lib/firmware/amdgpu/navi10_sos.bin
+lib/firmware/amdgpu/navi10_vcn.bin
+lib/firmware/amdgpu/navi14_asd.bin
+lib/firmware/amdgpu/navi14_ce.bin
+lib/firmware/amdgpu/navi14_gpu_info.bin
+lib/firmware/amdgpu/navi14_me.bin
+lib/firmware/amdgpu/navi14_mec2.bin
+lib/firmware/amdgpu/navi14_mec.bin
+lib/firmware/amdgpu/navi14_pfp.bin
+lib/firmware/amdgpu/navi14_rlc.bin
+lib/firmware/amdgpu/navi14_sdma1.bin
+lib/firmware/amdgpu/navi14_sdma.bin
+lib/firmware/amdgpu/navi14_smc.bin
+lib/firmware/amdgpu/navi14_sos.bin
+lib/firmware/amdgpu/navi14_vcn.bin
+lib/firmware/amdgpu/picasso_asd.bin
+lib/firmware/amdgpu/picasso_ce.bin
+lib/firmware/amdgpu/picasso_gpu_info.bin
+lib/firmware/amdgpu/picasso_me.bin
+lib/firmware/amdgpu/picasso_mec2.bin
+lib/firmware/amdgpu/picasso_mec.bin
+lib/firmware/amdgpu/picasso_pfp.bin
+lib/firmware/amdgpu/picasso_rlc_am4.bin
+lib/firmware/amdgpu/picasso_rlc.bin
+lib/firmware/amdgpu/picasso_sdma.bin
+lib/firmware/amdgpu/picasso_vcn.bin
+lib/firmware/amdgpu/polaris10_k2_smc.bin
+lib/firmware/amdgpu/polaris10_k_mc.bin
+lib/firmware/amdgpu/polaris10_k_smc.bin
+lib/firmware/amdgpu/polaris10_mc.bin
+lib/firmware/amdgpu/polaris10_me_2.bin
+lib/firmware/amdgpu/polaris10_mec2_2.bin
+lib/firmware/amdgpu/polaris10_mec_2.bin
+lib/firmware/amdgpu/polaris10_pfp_2.bin
+lib/firmware/amdgpu/polaris10_smc.bin
+lib/firmware/amdgpu/polaris10_smc_sk.bin
+lib/firmware/amdgpu/polaris11_k2_smc.bin
+lib/firmware/amdgpu/polaris11_k_mc.bin
+lib/firmware/amdgpu/polaris11_k_smc.bin
+lib/firmware/amdgpu/polaris11_me_2.bin
+lib/firmware/amdgpu/polaris11_mec2_2.bin
+lib/firmware/amdgpu/polaris11_mec_2.bin
+lib/firmware/amdgpu/polaris11_pfp_2.bin
+lib/firmware/amdgpu/polaris11_smc.bin
+lib/firmware/amdgpu/polaris11_smc_sk.bin
+lib/firmware/amdgpu/polaris12_k_mc.bin
+lib/firmware/amdgpu/polaris12_k_smc.bin
+lib/firmware/amdgpu/polaris12_me_2.bin
+lib/firmware/amdgpu/polaris12_mec2_2.bin
+lib/firmware/amdgpu/polaris12_mec_2.bin
+lib/firmware/amdgpu/polaris12_pfp_2.bin
+lib/firmware/amdgpu/raven2_asd.bin
+lib/firmware/amdgpu/raven2_ce.bin
+lib/firmware/amdgpu/raven2_gpu_info.bin
+lib/firmware/amdgpu/raven2_me.bin
+lib/firmware/amdgpu/raven2_mec2.bin
+lib/firmware/amdgpu/raven2_mec.bin
+lib/firmware/amdgpu/raven2_pfp.bin
+lib/firmware/amdgpu/raven2_rlc.bin
+lib/firmware/amdgpu/raven2_sdma.bin
+lib/firmware/amdgpu/raven2_vcn.bin
+lib/firmware/amdgpu/raven_asd.bin
+lib/firmware/amdgpu/raven_dmcu.bin
+lib/firmware/amdgpu/raven_kicker_rlc.bin
+lib/firmware/amdgpu/raven_rlc.bin
+lib/firmware/amdgpu/raven_sdma.bin
+lib/firmware/amdgpu/tonga_k_smc.bin
+lib/firmware/amdgpu/vega10_acg_smc.bin
+lib/firmware/amdgpu/vega10_asd.bin
+lib/firmware/amdgpu/vega10_ce.bin
+lib/firmware/amdgpu/vega10_me.bin
+lib/firmware/amdgpu/vega10_mec2.bin
+lib/firmware/amdgpu/vega10_mec.bin
+lib/firmware/amdgpu/vega10_pfp.bin
+lib/firmware/amdgpu/vega10_rlc.bin
+lib/firmware/amdgpu/vega10_sdma1.bin
+lib/firmware/amdgpu/vega10_sdma.bin
+lib/firmware/amdgpu/vega10_smc.bin
+lib/firmware/amdgpu/vega10_sos.bin
+lib/firmware/amdgpu/vega10_uvd.bin
+lib/firmware/amdgpu/vega10_vce.bin
+lib/firmware/amdgpu/vega12_asd.bin
+lib/firmware/amdgpu/vega12_ce.bin
+lib/firmware/amdgpu/vega12_gpu_info.bin
+lib/firmware/amdgpu/vega12_me.bin
+lib/firmware/amdgpu/vega12_mec2.bin
+lib/firmware/amdgpu/vega12_mec.bin
+lib/firmware/amdgpu/vega12_pfp.bin
+lib/firmware/amdgpu/vega12_rlc.bin
+lib/firmware/amdgpu/vega12_sdma1.bin
+lib/firmware/amdgpu/vega12_sdma.bin
+lib/firmware/amdgpu/vega12_smc.bin
+lib/firmware/amdgpu/vega12_sos.bin
+lib/firmware/amdgpu/vega12_uvd.bin
+lib/firmware/amdgpu/vega12_vce.bin
+lib/firmware/amdgpu/vega20_asd.bin
+lib/firmware/amdgpu/vega20_ce.bin
+lib/firmware/amdgpu/vega20_me.bin
+lib/firmware/amdgpu/vega20_mec2.bin
+lib/firmware/amdgpu/vega20_mec.bin
+lib/firmware/amdgpu/vega20_pfp.bin
+lib/firmware/amdgpu/vega20_rlc.bin
+lib/firmware/amdgpu/vega20_sdma1.bin
+lib/firmware/amdgpu/vega20_sdma.bin
+lib/firmware/amdgpu/vega20_smc.bin
+lib/firmware/amdgpu/vega20_sos.bin
+lib/firmware/amdgpu/vega20_uvd.bin
+lib/firmware/amdgpu/vega20_vce.bin
+lib/firmware/amd-ucode/microcode_amd_fam17h.bin
+lib/firmware/amd-ucode/microcode_amd_fam17h.bin.asc
+lib/firmware/ath10k/QCA4019/hw1.0/board-2.bin
+lib/firmware/ath10k/QCA4019/hw1.0/firmware-5.bin
+lib/firmware/ath10k/QCA6174/hw3.0/board-2.bin
+lib/firmware/ath10k/QCA6174/hw3.0/firmware-6.bin
+lib/firmware/ath10k/QCA6174/hw3.0/notice_ath10k_firmware-6.txt
+lib/firmware/ath10k/QCA9377/hw1.0/firmware-6.bin
+lib/firmware/ath10k/QCA9377/hw1.0/notice_ath10k_firmware-6.txt
+lib/firmware/ath10k/QCA9887/hw1.0/firmware-5.bin
+lib/firmware/ath10k/QCA9888/hw2.0/board-2.bin
+lib/firmware/ath10k/QCA9888/hw2.0/firmware-5.bin
+lib/firmware/ath10k/QCA988X/hw2.0/firmware-5.bin
+lib/firmware/ath10k/QCA9984/hw1.0/board-2.bin
+lib/firmware/ath10k/QCA9984/hw1.0/firmware-5.bin
+lib/firmware/bnx2x/bnx2x-e1-7.13.11.0.fw
+lib/firmware/bnx2x/bnx2x-e1h-7.13.11.0.fw
+lib/firmware/bnx2x/bnx2x-e2-7.13.11.0.fw
+lib/firmware/brcm/brcmfmac4330-sdio.Prowise-PT301.txt
+lib/firmware/brcm/brcmfmac43340-sdio.meegopad-t08.txt
+lib/firmware/brcm/brcmfmac43340-sdio.pov-tab-p1006w-data.txt
+lib/firmware/brcm/brcmfmac43362-sdio.bin
+lib/firmware/brcm/brcmfmac43362-sdio.cubietech,cubietruck.txt
+lib/firmware/brcm/brcmfmac43362-sdio.lemaker,bananapro.txt
+lib/firmware/brcm/brcmfmac43430a0-sdio.jumper-ezpad-mini3.txt
+lib/firmware/brcm/brcmfmac43430a0-sdio.ONDA-V80_PLUS.txt
+lib/firmware/brcm/brcmfmac43430-sdio.Hampoo-D2D3_Vi8A1.txt
+lib/firmware/brcm/brcmfmac43430-sdio.raspberrypi,3-model-b.txt
+lib/firmware/brcm/brcmfmac43455-sdio.MINIX-NEO_Z83-4.txt
+lib/firmware/brcm/brcmfmac43455-sdio.raspberrypi,3-model-b-plus.txt
+lib/firmware/brcm/brcmfmac4356-pcie.gpd-win-pocket.txt
+lib/firmware/brcm/brcmfmac4366b-pcie.bin
+lib/firmware/brcm/brcmfmac4366c-pcie.bin
+lib/firmware/cadence
+lib/firmware/cavium/cnn55xx_ae.fw
+lib/firmware/cavium/cnn55xx_se.fw
+lib/firmware/check_whence.py
+lib/firmware/copy-firmware.sh
+lib/firmware/cxgb4/configs
+lib/firmware/cxgb4/t4fw-1.24.3.0.bin
+lib/firmware/cxgb4/t5fw-1.24.3.0.bin
+lib/firmware/cxgb4/t6fw-1.24.3.0.bin
+lib/firmware/dpaa2
+lib/firmware/hfi1_dc8051.fw
+lib/firmware/i915/bxt_guc_32.0.3.bin
+lib/firmware/i915/bxt_guc_33.0.0.bin
+lib/firmware/i915/bxt_huc_2.0.0.bin
+lib/firmware/i915/bxt_huc_ver01_8_2893.bin
+lib/firmware/i915/cml_guc_33.0.0.bin
+lib/firmware/i915/cml_huc_4.0.0.bin
+lib/firmware/i915/glk_guc_32.0.3.bin
+lib/firmware/i915/glk_guc_33.0.0.bin
+lib/firmware/i915/glk_huc_4.0.0.bin
+lib/firmware/i915/glk_huc_ver03_01_2893.bin
+lib/firmware/i915/icl_dmc_ver1_07.bin
+lib/firmware/i915/icl_dmc_ver1_09.bin
+lib/firmware/i915/icl_guc_32.0.3.bin
+lib/firmware/i915/icl_guc_33.0.0.bin
+lib/firmware/i915/icl_huc_9.0.0.bin
+lib/firmware/i915/icl_huc_ver8_4_3238.bin
+lib/firmware/i915/kbl_guc_32.0.3.bin
+lib/firmware/i915/kbl_guc_33.0.0.bin
+lib/firmware/i915/kbl_huc_4.0.0.bin
+lib/firmware/i915/skl_guc_32.0.3.bin
+lib/firmware/i915/skl_guc_33.0.0.bin
+lib/firmware/i915/skl_huc_2.0.0.bin
+lib/firmware/i915/tgl_dmc_ver2_04.bin
+lib/firmware/imx/sdma/sdma-imx6q.bin
+lib/firmware/imx/sdma/sdma-imx7d.bin
+lib/firmware/intel/dsp_fw_cnl_v1858.bin
+lib/firmware/intel/ibt-11-5.sfi
+lib/firmware/intel/ibt-12-16.sfi
+lib/firmware/intel/ibt-17-16-1.ddc
+lib/firmware/intel/ibt-17-16-1.sfi
+lib/firmware/intel/ibt-17-2.ddc
+lib/firmware/intel/ibt-17-2.sfi
+lib/firmware/intel/ibt-18-16-1.ddc
+lib/firmware/intel/ibt-18-16-1.sfi
+lib/firmware/intel/ibt-18-2.ddc
+lib/firmware/intel/ibt-18-2.sfi
+lib/firmware/intel/ibt-19-0-0.ddc
+lib/firmware/intel/ibt-19-0-0.sfi
+lib/firmware/intel/ibt-19-0-1.ddc
+lib/firmware/intel/ibt-19-0-1.sfi
+lib/firmware/intel/ibt-19-0-4.ddc
+lib/firmware/intel/ibt-19-0-4.sfi
+lib/firmware/intel/ibt-19-16-4.ddc
+lib/firmware/intel/ibt-19-16-4.sfi
+lib/firmware/intel/ibt-19-32-0.ddc
+lib/firmware/intel/ibt-19-32-0.sfi
+lib/firmware/intel/ibt-19-32-1.ddc
+lib/firmware/intel/ibt-19-32-1.sfi
+lib/firmware/intel/ibt-19-32-4.ddc
+lib/firmware/intel/ibt-19-32-4.sfi
+lib/firmware/intel/ibt-20-0-3.ddc
+lib/firmware/intel/ibt-20-0-3.sfi
+lib/firmware/intel/ibt-20-1-3.ddc
+lib/firmware/intel/ibt-20-1-3.sfi
+lib/firmware/intel/ibt-20-1-4.ddc
+lib/firmware/intel/ibt-20-1-4.sfi
+lib/firmware/intel/ibt-hw-37.8.10-fw-22.50.19.14.f.bseq
+lib/firmware/intel/ice
+lib/firmware/iwlwifi-3160-17.ucode
+lib/firmware/iwlwifi-3168-29.ucode
+lib/firmware/iwlwifi-7260-17.ucode
+lib/firmware/iwlwifi-7265-17.ucode
+lib/firmware/iwlwifi-7265D-29.ucode
+lib/firmware/iwlwifi-8000C-36.ucode
+lib/firmware/iwlwifi-8265-36.ucode
+lib/firmware/iwlwifi-9000-pu-b0-jf-b0-38.ucode
+lib/firmware/iwlwifi-9000-pu-b0-jf-b0-41.ucode
+lib/firmware/iwlwifi-9000-pu-b0-jf-b0-43.ucode
+lib/firmware/iwlwifi-9000-pu-b0-jf-b0-46.ucode
+lib/firmware/iwlwifi-9260-th-b0-jf-b0-38.ucode
+lib/firmware/iwlwifi-9260-th-b0-jf-b0-41.ucode
+lib/firmware/iwlwifi-9260-th-b0-jf-b0-43.ucode
+lib/firmware/iwlwifi-9260-th-b0-jf-b0-46.ucode
+lib/firmware/iwlwifi-cc-a0-46.ucode
+lib/firmware/iwlwifi-cc-a0-48.ucode
+lib/firmware/iwlwifi-Qu-b0-hr-b0-48.ucode
+lib/firmware/iwlwifi-Qu-b0-jf-b0-48.ucode
+lib/firmware/iwlwifi-Qu-c0-hr-b0-48.ucode
+lib/firmware/iwlwifi-Qu-c0-jf-b0-48.ucode
+lib/firmware/iwlwifi-QuZ-a0-hr-b0-48.ucode
+lib/firmware/iwlwifi-QuZ-a0-jf-b0-48.ucode
+lib/firmware/LICENCE.cadence
+lib/firmware/LICENCE.cavium_liquidio
+lib/firmware/LICENCE.Marvell
+lib/firmware/LICENCE.microchip
+lib/firmware/LICENSE.amdgpu
+lib/firmware/LICENSE.amd-sev
+lib/firmware/LICENSE.amlogic_vdec
+lib/firmware/LICENSE.ice
+lib/firmware/LICENSE.nxp_mc_firmware
+lib/firmware/Makefile
+lib/firmware/mediatek/mt7610e.bin
+lib/firmware/mediatek/mt7610u.bin
+lib/firmware/mediatek/mt7615_cr4.bin
+lib/firmware/mediatek/mt7615_n9.bin
+lib/firmware/mediatek/mt7615_rom_patch.bin
+lib/firmware/mediatek/mt7650e.bin
+lib/firmware/mediatek/mt7668pr2h.bin
+lib/firmware/mellanox/mlxsw_spectrum-13.1703.4.mfa2
+lib/firmware/mellanox/mlxsw_spectrum-13.1910.622.mfa2
+lib/firmware/mellanox/mlxsw_spectrum-13.2000.1122.mfa2
+lib/firmware/mellanox/mlxsw_spectrum-13.2000.1886.mfa2
+lib/firmware/meson
+lib/firmware/microchip
+lib/firmware/mrvl/pcie8897_uapsta.bin
+lib/firmware/mrvl/pcie8997_wlan_v4.bin
+lib/firmware/mrvl/pcieuart8997_combo_v4.bin
+lib/firmware/mrvl/pcieusb8997_combo_v4.bin
+lib/firmware/mrvl/sd8787_uapsta.bin
+lib/firmware/mrvl/sd8797_uapsta.bin
+lib/firmware/mrvl/sd8801_uapsta.bin
+lib/firmware/mrvl/sd8887_uapsta.bin
+lib/firmware/mrvl/sd8897_uapsta.bin
+lib/firmware/mrvl/sdsd8977_combo_v2.bin
+lib/firmware/mrvl/sdsd8997_combo_v4.bin
+lib/firmware/mrvl/usb8797_uapsta.bin
+lib/firmware/mrvl/usb8801_uapsta.bin
+lib/firmware/mrvl/usbusb8997_combo_v4.bin
+lib/firmware/netronome/bpf
+lib/firmware/netronome/flower/nic_AMDA0058.nffw
+lib/firmware/netronome/flower/nic_AMDA0096.nffw
+lib/firmware/netronome/flower/nic_AMDA0097.nffw
+lib/firmware/netronome/flower/nic_AMDA0099.nffw
+lib/firmware/netronome/nic/nic_AMDA0058-0011_2x40.nffw
+lib/firmware/netronome/nic/nic_AMDA0058-0012_2x40.nffw
+lib/firmware/netronome/nic/nic_AMDA0078-0011_1x100.nffw
+lib/firmware/netronome/nic/nic_AMDA0081-0001_1x40.nffw
+lib/firmware/netronome/nic/nic_AMDA0081-0001_4x10.nffw
+lib/firmware/netronome/nic/nic_AMDA0096-0001_2x10.nffw
+lib/firmware/netronome/nic/nic_AMDA0097-0001_2x40.nffw
+lib/firmware/netronome/nic/nic_AMDA0097-0001_4x10_1x40.nffw
+lib/firmware/netronome/nic/nic_AMDA0097-0001_8x10.nffw
+lib/firmware/netronome/nic/nic_AMDA0099-0001_1x10_1x25.nffw
+lib/firmware/netronome/nic/nic_AMDA0099-0001_2x10.nffw
+lib/firmware/netronome/nic/nic_AMDA0099-0001_2x25.nffw
+lib/firmware/netronome/nic-sriov
+lib/firmware/nvidia/gp102/acr/bl.bin
+lib/firmware/nvidia/gp102/acr/ucode_load.bin
+lib/firmware/nvidia/gp102/acr/ucode_unload.bin
+lib/firmware/nvidia/gp102/acr/unload_bl.bin
+lib/firmware/nvidia/gp102/nvdec/scrubber.bin
+lib/firmware/nvidia/gp102/sec2/desc-1.bin
+lib/firmware/nvidia/gp102/sec2/image-1.bin
+lib/firmware/nvidia/gp102/sec2/sig-1.bin
+lib/firmware/nvidia/gp104/acr/bl.bin
+lib/firmware/nvidia/gp104/acr/ucode_load.bin
+lib/firmware/nvidia/gp104/acr/ucode_unload.bin
+lib/firmware/nvidia/gp104/acr/unload_bl.bin
+lib/firmware/nvidia/gp104/nvdec/scrubber.bin
+lib/firmware/nvidia/gp104/sec2/desc-1.bin
+lib/firmware/nvidia/gp104/sec2/image-1.bin
+lib/firmware/nvidia/gp104/sec2/sig-1.bin
+lib/firmware/nvidia/gp106/acr/bl.bin
+lib/firmware/nvidia/gp106/acr/ucode_load.bin
+lib/firmware/nvidia/gp106/acr/ucode_unload.bin
+lib/firmware/nvidia/gp106/acr/unload_bl.bin
+lib/firmware/nvidia/gp106/nvdec/scrubber.bin
+lib/firmware/nvidia/gp106/sec2/desc-1.bin
+lib/firmware/nvidia/gp106/sec2/image-1.bin
+lib/firmware/nvidia/gp106/sec2/sig-1.bin
+lib/firmware/nvidia/gp107/acr/bl.bin
+lib/firmware/nvidia/gp107/acr/ucode_load.bin
+lib/firmware/nvidia/gp107/acr/ucode_unload.bin
+lib/firmware/nvidia/gp107/acr/unload_bl.bin
+lib/firmware/nvidia/gp107/nvdec/scrubber.bin
+lib/firmware/nvidia/gp107/sec2/desc-1.bin
+lib/firmware/nvidia/gp107/sec2/image-1.bin
+lib/firmware/nvidia/gp107/sec2/sig-1.bin
+lib/firmware/nvidia/gv100
+lib/firmware/nvidia/tegra186/xusb.bin
+lib/firmware/nvidia/tegra194
+lib/firmware/nvidia/tegra210/xusb.bin
+lib/firmware/nvidia/tu10x
+lib/firmware/qat_895xcc.bin
+lib/firmware/qat_c3xxx.bin
+lib/firmware/qat_c62x.bin
+lib/firmware/qca/crbtfw21.tlv
+lib/firmware/qca/crnv21.bin
+lib/firmware/qca/NOTICE.txt
+lib/firmware/qca/nvm_00440302.bin
+lib/firmware/qca/nvm_usb_00000302.bin
+lib/firmware/qca/rampatch_00440302.bin
+lib/firmware/qca/rampatch_usb_00000302.bin
+lib/firmware/qcom/a630_gmu.bin
+lib/firmware/qcom/a630_sqe.fw
+lib/firmware/qcom/venus-5.2/venus.b00
+lib/firmware/qcom/venus-5.2/venus.b01
+lib/firmware/qcom/venus-5.2/venus.b02
+lib/firmware/qcom/venus-5.2/venus.b03
+lib/firmware/qcom/venus-5.2/venus.mbn
+lib/firmware/qcom/venus-5.2/venus.mdt
+lib/firmware/qed/qed_init_values-8.37.7.0.bin
+lib/firmware/qed/qed_init_values_zipped-8.37.7.0.bin
+lib/firmware/rsi/rs9113_ap_bt_dual_mode.rps
+lib/firmware/rsi/rs9113_wlan_bt_dual_mode.rps
+lib/firmware/rsi/rs9113_wlan_qspi.rps
+lib/firmware/rsi/rs9116_wlan_bt_classic.rps
+lib/firmware/rsi/rs9116_wlan.rps
+lib/firmware/rtl_bt/rtl8723bs_config-OBDA8723.bin
+lib/firmware/rtl_bt/rtl8723bs_fw.bin
+lib/firmware/rtl_bt/rtl8723d_fw.bin
+lib/firmware/rtl_bt/rtl8822cu_fw.bin
+lib/firmware/rtl_nic/rtl8125a-3.fw
+lib/firmware/rtlwifi/rtl8812aefw.bin
+lib/firmware/rtlwifi/rtl8812aefw_wowlan.bin
+lib/firmware/rtw88
+lib/firmware/ti-connectivity/TIInit_6.2.31.bts
+lib/firmware/ti-connectivity/TIInit_6.6.15.bts
+lib/firmware/vpu_d.bin
+lib/firmware/vpu_p.bin
+lib/firmware/WHENCE
--- /dev/null
+../../../common/openssh
\ No newline at end of file
--- /dev/null
+../../../common/unbound
\ No newline at end of file
--- /dev/null
+../../../../common/x86_64/python
\ No newline at end of file
# Extract files
extract_files
+# move nobeeps if exist
+[ -e "/var/ipfire/ppp/nobeeps" ] mv /var/ipfire/ppp/nobeeps /var/ipfire/red/nobeeps
+
# update linker config
ldconfig
--- /dev/null
+../../../common/IO-Socket-SSL
\ No newline at end of file
--- /dev/null
+../../../common/Net_SSLeay
\ No newline at end of file
--- /dev/null
+../../../common/bind
\ No newline at end of file
--- /dev/null
+../../../common/collectd
\ No newline at end of file
--- /dev/null
+../../../common/dhcpcd
\ No newline at end of file
--- /dev/null
+etc/system-release
+etc/issue
+srv/web/ipfire/cgi-bin/credits.cgi
+usr/lib/firewall/rules.pl
+usr/sbin/firewall-policy
+var/ipfire/langs
+etc/logrotate.conf
+etc/rc.d/init.d/firewall
+etc/rc.d/init.d/unbound
+etc/rc.d/init.d/networking/red.up/99-geoip-database
+etc/sysctl.conf
+srv/web/ipfire/cgi-bin/dns.cgi
+srv/web/ipfire/cgi-bin/ovpnmain.cgi
+srv/web/ipfire/cgi-bin/qos.cgi
+srv/web/ipfire/cgi-bin/vpnmain.cgi
+usr/lib/firewall/rules.pl
+usr/sbin/firewall-policy
+usr/local/bin/xt_geoip_update
+var/ipfire/backup/bin/backup.pl
+var/ipfire/qos/bin/makeqosscripts.pl
+var/ipfire/suricata/ruleset-sources
+srv/web/ipfire/cgi-bin/ovpnmain.cgi
--- /dev/null
+../../../common/iproute2
\ No newline at end of file
--- /dev/null
+../../../common/ipset
\ No newline at end of file
--- /dev/null
+../../../common/iptables
\ No newline at end of file
--- /dev/null
+../../../common/knot
\ No newline at end of file
--- /dev/null
+../../../common/libhtp
\ No newline at end of file
--- /dev/null
+../../../common/libnetfilter_queue
\ No newline at end of file
--- /dev/null
+../../../common/libpcap
\ No newline at end of file
--- /dev/null
+../../../common/libssh
\ No newline at end of file
--- /dev/null
+../../../common/pcre
\ No newline at end of file
--- /dev/null
+../../../common/strongswan
\ No newline at end of file
--- /dev/null
+../../../common/suricata
\ No newline at end of file
--- /dev/null
+../../../common/tzdata
\ No newline at end of file
--- /dev/null
+../../../common/unbound
\ No newline at end of file
--- /dev/null
+../../../common/wpa_supplicant
\ No newline at end of file
. /opt/pakfire/lib/functions.sh
/usr/local/bin/backupctrl exclude >/dev/null 2>&1
-core=138
+core=137
exit_with_error() {
# Set last succesfull installed core.
rm -rf /boot/uInit-*-ipfire-*
rm -rf /boot/dtb-*-ipfire-*
rm -rf /lib/modules
-rm -f /etc/sysconfig/lm_sensors
# Remove files
# Extract files
extract_files
-# update dhcpcd.conf
-
# update linker config
ldconfig
/usr/local/bin/update-lang-cache
# Start services
+/usr/local/bin/ipsecctrl S
+/etc/init.d/suricata restart
+/etc/init.d/unbound restart
+/etc/init.d/collectd restart
+
+# remove lm_sensor config after collectd was started
+# to reserch sensors at next boot with updated kernel
+rm -f /etc/sysconfig/lm_sensors
+
+# generate new qos script
+/usr/local/bin/qosctrl generate
# Search sensors again after reboot into the new kernel
rm -f /etc/sysconfig/lm_sensors
etc/logrotate.d/libvirtd.libxl
#etc/logrotate.d/libvirtd.lxc
etc/logrotate.d/libvirtd.qemu
-#etc/logrotate.d/libvirtd.uml
etc/rc.d/init.d/libvirt-guests
etc/rc.d/init.d/libvirtd
etc/rc.d/init.d/virtlogd
#usr/include/libvirt
#usr/include/libvirt/libvirt-admin.h
#usr/include/libvirt/libvirt-common.h
+#usr/include/libvirt/libvirt-domain-checkpoint.h
#usr/include/libvirt/libvirt-domain-snapshot.h
#usr/include/libvirt/libvirt-domain.h
#usr/include/libvirt/libvirt-event.h
#usr/lib/libvirt-admin.la
#usr/lib/libvirt-admin.so
usr/lib/libvirt-admin.so.0
-usr/lib/libvirt-admin.so.0.4010.0
+usr/lib/libvirt-admin.so.0.5006.0
#usr/lib/libvirt-lxc.la
#usr/lib/libvirt-lxc.so
usr/lib/libvirt-lxc.so.0
-usr/lib/libvirt-lxc.so.0.4010.0
+usr/lib/libvirt-lxc.so.0.5006.0
#usr/lib/libvirt-qemu.la
#usr/lib/libvirt-qemu.so
usr/lib/libvirt-qemu.so.0
-usr/lib/libvirt-qemu.so.0.4010.0
+usr/lib/libvirt-qemu.so.0.5006.0
#usr/lib/libvirt.la
#usr/lib/libvirt.so
usr/lib/libvirt.so.0
-usr/lib/libvirt.so.0.4010.0
+usr/lib/libvirt.so.0.5006.0
#usr/lib/libvirt/connection-driver
#usr/lib/libvirt/connection-driver/libvirt_driver_interface.la
usr/lib/libvirt/connection-driver/libvirt_driver_interface.so
#usr/lib/libvirt/storage-backend
#usr/lib/libvirt/storage-backend/libvirt_storage_backend_fs.la
usr/lib/libvirt/storage-backend/libvirt_storage_backend_fs.so
+#usr/lib/libvirt/storage-backend/libvirt_storage_backend_logical.la
+usr/lib/libvirt/storage-backend/libvirt_storage_backend_logical.so
#usr/lib/libvirt/storage-file
#usr/lib/libvirt/storage-file/libvirt_storage_file_fs.la
usr/lib/libvirt/storage-file/libvirt_storage_file_fs.so
#usr/share/augeas/lenses/tests/test_virtlogd.aug
#usr/share/augeas/lenses/virtlockd.aug
#usr/share/augeas/lenses/virtlogd.aug
-#usr/share/doc/libvirt-4.10.0
-#usr/share/doc/libvirt-4.10.0/html
-#usr/share/doc/libvirt-4.10.0/html/32favicon.png
-#usr/share/doc/libvirt-4.10.0/html/404.html
-#usr/share/doc/libvirt-4.10.0/html/acl.html
-#usr/share/doc/libvirt-4.10.0/html/aclpolkit.html
-#usr/share/doc/libvirt-4.10.0/html/api.html
-#usr/share/doc/libvirt-4.10.0/html/api_extension.html
-#usr/share/doc/libvirt-4.10.0/html/apps.html
-#usr/share/doc/libvirt-4.10.0/html/architecture.gif
-#usr/share/doc/libvirt-4.10.0/html/architecture.html
-#usr/share/doc/libvirt-4.10.0/html/auditlog.html
-#usr/share/doc/libvirt-4.10.0/html/auth.html
-#usr/share/doc/libvirt-4.10.0/html/bindings.html
-#usr/share/doc/libvirt-4.10.0/html/bugs.html
-#usr/share/doc/libvirt-4.10.0/html/cgroups.html
-#usr/share/doc/libvirt-4.10.0/html/compiling.html
-#usr/share/doc/libvirt-4.10.0/html/contact.html
-#usr/share/doc/libvirt-4.10.0/html/contribute.html
-#usr/share/doc/libvirt-4.10.0/html/csharp.html
-#usr/share/doc/libvirt-4.10.0/html/dbus.html
-#usr/share/doc/libvirt-4.10.0/html/devguide.html
-#usr/share/doc/libvirt-4.10.0/html/docs.html
-#usr/share/doc/libvirt-4.10.0/html/downloads.html
-#usr/share/doc/libvirt-4.10.0/html/drivers.html
-#usr/share/doc/libvirt-4.10.0/html/drvbhyve.html
-#usr/share/doc/libvirt-4.10.0/html/drvesx.html
-#usr/share/doc/libvirt-4.10.0/html/drvhyperv.html
-#usr/share/doc/libvirt-4.10.0/html/drvlxc.html
-#usr/share/doc/libvirt-4.10.0/html/drvnodedev.html
-#usr/share/doc/libvirt-4.10.0/html/drvopenvz.html
-#usr/share/doc/libvirt-4.10.0/html/drvphyp.html
-#usr/share/doc/libvirt-4.10.0/html/drvqemu.html
-#usr/share/doc/libvirt-4.10.0/html/drvremote.html
-#usr/share/doc/libvirt-4.10.0/html/drvtest.html
-#usr/share/doc/libvirt-4.10.0/html/drvuml.html
-#usr/share/doc/libvirt-4.10.0/html/drvvbox.html
-#usr/share/doc/libvirt-4.10.0/html/drvvirtuozzo.html
-#usr/share/doc/libvirt-4.10.0/html/drvvmware.html
-#usr/share/doc/libvirt-4.10.0/html/drvxen.html
-#usr/share/doc/libvirt-4.10.0/html/errors.html
-#usr/share/doc/libvirt-4.10.0/html/firewall.html
-#usr/share/doc/libvirt-4.10.0/html/fonts
-#usr/share/doc/libvirt-4.10.0/html/fonts/LICENSE.md
-#usr/share/doc/libvirt-4.10.0/html/fonts/overpass-bold-italic.woff
-#usr/share/doc/libvirt-4.10.0/html/fonts/overpass-bold.woff
-#usr/share/doc/libvirt-4.10.0/html/fonts/overpass-italic.woff
-#usr/share/doc/libvirt-4.10.0/html/fonts/overpass-light-italic.woff
-#usr/share/doc/libvirt-4.10.0/html/fonts/overpass-light.woff
-#usr/share/doc/libvirt-4.10.0/html/fonts/overpass-mono-bold.woff
-#usr/share/doc/libvirt-4.10.0/html/fonts/overpass-mono-light.woff
-#usr/share/doc/libvirt-4.10.0/html/fonts/overpass-mono-regular.woff
-#usr/share/doc/libvirt-4.10.0/html/fonts/overpass-mono-semibold.woff
-#usr/share/doc/libvirt-4.10.0/html/fonts/overpass-regular.woff
-#usr/share/doc/libvirt-4.10.0/html/fonts/stylesheet.css
-#usr/share/doc/libvirt-4.10.0/html/format.html
-#usr/share/doc/libvirt-4.10.0/html/formatcaps.html
-#usr/share/doc/libvirt-4.10.0/html/formatdomain.html
-#usr/share/doc/libvirt-4.10.0/html/formatdomaincaps.html
-#usr/share/doc/libvirt-4.10.0/html/formatnetwork.html
-#usr/share/doc/libvirt-4.10.0/html/formatnode.html
-#usr/share/doc/libvirt-4.10.0/html/formatnwfilter.html
-#usr/share/doc/libvirt-4.10.0/html/formatsecret.html
-#usr/share/doc/libvirt-4.10.0/html/formatsnapshot.html
-#usr/share/doc/libvirt-4.10.0/html/formatstorage.html
-#usr/share/doc/libvirt-4.10.0/html/formatstorageencryption.html
-#usr/share/doc/libvirt-4.10.0/html/generic.css
-#usr/share/doc/libvirt-4.10.0/html/goals.html
-#usr/share/doc/libvirt-4.10.0/html/governance.html
-#usr/share/doc/libvirt-4.10.0/html/hacking.html
-#usr/share/doc/libvirt-4.10.0/html/hooks.html
-#usr/share/doc/libvirt-4.10.0/html/html
-#usr/share/doc/libvirt-4.10.0/html/html/home.png
-#usr/share/doc/libvirt-4.10.0/html/html/index.html
-#usr/share/doc/libvirt-4.10.0/html/html/left.png
-#usr/share/doc/libvirt-4.10.0/html/html/libvirt-libvirt-common.html
-#usr/share/doc/libvirt-4.10.0/html/html/libvirt-libvirt-domain-snapshot.html
-#usr/share/doc/libvirt-4.10.0/html/html/libvirt-libvirt-domain.html
-#usr/share/doc/libvirt-4.10.0/html/html/libvirt-libvirt-event.html
-#usr/share/doc/libvirt-4.10.0/html/html/libvirt-libvirt-host.html
-#usr/share/doc/libvirt-4.10.0/html/html/libvirt-libvirt-interface.html
-#usr/share/doc/libvirt-4.10.0/html/html/libvirt-libvirt-network.html
-#usr/share/doc/libvirt-4.10.0/html/html/libvirt-libvirt-nodedev.html
-#usr/share/doc/libvirt-4.10.0/html/html/libvirt-libvirt-nwfilter.html
-#usr/share/doc/libvirt-4.10.0/html/html/libvirt-libvirt-secret.html
-#usr/share/doc/libvirt-4.10.0/html/html/libvirt-libvirt-storage.html
-#usr/share/doc/libvirt-4.10.0/html/html/libvirt-libvirt-stream.html
-#usr/share/doc/libvirt-4.10.0/html/html/libvirt-virterror.html
-#usr/share/doc/libvirt-4.10.0/html/html/right.png
-#usr/share/doc/libvirt-4.10.0/html/html/up.png
-#usr/share/doc/libvirt-4.10.0/html/hvsupport.html
-#usr/share/doc/libvirt-4.10.0/html/index.html
-#usr/share/doc/libvirt-4.10.0/html/internals
-#usr/share/doc/libvirt-4.10.0/html/internals.html
-#usr/share/doc/libvirt-4.10.0/html/internals/command.html
-#usr/share/doc/libvirt-4.10.0/html/internals/eventloop.html
-#usr/share/doc/libvirt-4.10.0/html/internals/locking.html
-#usr/share/doc/libvirt-4.10.0/html/internals/oomtesting.html
-#usr/share/doc/libvirt-4.10.0/html/internals/rpc.html
-#usr/share/doc/libvirt-4.10.0/html/java.html
-#usr/share/doc/libvirt-4.10.0/html/libvirt-daemon-arch.png
-#usr/share/doc/libvirt-4.10.0/html/libvirt-driver-arch.png
-#usr/share/doc/libvirt-4.10.0/html/libvirt-object-model.png
-#usr/share/doc/libvirt-4.10.0/html/libvirt.css
-#usr/share/doc/libvirt-4.10.0/html/locking-lockd.html
-#usr/share/doc/libvirt-4.10.0/html/locking-sanlock.html
-#usr/share/doc/libvirt-4.10.0/html/locking.html
-#usr/share/doc/libvirt-4.10.0/html/logging.html
-#usr/share/doc/libvirt-4.10.0/html/logos
-#usr/share/doc/libvirt-4.10.0/html/logos/logo-banner-dark-256.png
-#usr/share/doc/libvirt-4.10.0/html/logos/logo-banner-dark-800.png
-#usr/share/doc/libvirt-4.10.0/html/logos/logo-banner-dark.svg
-#usr/share/doc/libvirt-4.10.0/html/logos/logo-banner-light-256.png
-#usr/share/doc/libvirt-4.10.0/html/logos/logo-banner-light-800.png
-#usr/share/doc/libvirt-4.10.0/html/logos/logo-banner-light.svg
-#usr/share/doc/libvirt-4.10.0/html/logos/logo-base.svg
-#usr/share/doc/libvirt-4.10.0/html/logos/logo-square-128.png
-#usr/share/doc/libvirt-4.10.0/html/logos/logo-square-192.png
-#usr/share/doc/libvirt-4.10.0/html/logos/logo-square-256.png
-#usr/share/doc/libvirt-4.10.0/html/logos/logo-square-96.png
-#usr/share/doc/libvirt-4.10.0/html/logos/logo-square-powered-128.png
-#usr/share/doc/libvirt-4.10.0/html/logos/logo-square-powered-192.png
-#usr/share/doc/libvirt-4.10.0/html/logos/logo-square-powered-256.png
-#usr/share/doc/libvirt-4.10.0/html/logos/logo-square-powered-96.png
-#usr/share/doc/libvirt-4.10.0/html/logos/logo-square-powered.svg
-#usr/share/doc/libvirt-4.10.0/html/logos/logo-square.svg
-#usr/share/doc/libvirt-4.10.0/html/main.css
-#usr/share/doc/libvirt-4.10.0/html/migration-managed-direct.png
-#usr/share/doc/libvirt-4.10.0/html/migration-managed-p2p.png
-#usr/share/doc/libvirt-4.10.0/html/migration-native.png
-#usr/share/doc/libvirt-4.10.0/html/migration-tunnel.png
-#usr/share/doc/libvirt-4.10.0/html/migration-unmanaged-direct.png
-#usr/share/doc/libvirt-4.10.0/html/migration.html
-#usr/share/doc/libvirt-4.10.0/html/mobile.css
-#usr/share/doc/libvirt-4.10.0/html/news-2005.html
-#usr/share/doc/libvirt-4.10.0/html/news-2006.html
-#usr/share/doc/libvirt-4.10.0/html/news-2007.html
-#usr/share/doc/libvirt-4.10.0/html/news-2008.html
-#usr/share/doc/libvirt-4.10.0/html/news-2009.html
-#usr/share/doc/libvirt-4.10.0/html/news-2010.html
-#usr/share/doc/libvirt-4.10.0/html/news-2011.html
-#usr/share/doc/libvirt-4.10.0/html/news-2012.html
-#usr/share/doc/libvirt-4.10.0/html/news-2013.html
-#usr/share/doc/libvirt-4.10.0/html/news-2014.html
-#usr/share/doc/libvirt-4.10.0/html/news-2015.html
-#usr/share/doc/libvirt-4.10.0/html/news-2016.html
-#usr/share/doc/libvirt-4.10.0/html/news.html
-#usr/share/doc/libvirt-4.10.0/html/node.gif
-#usr/share/doc/libvirt-4.10.0/html/nss.html
-#usr/share/doc/libvirt-4.10.0/html/pci-hotplug.html
-#usr/share/doc/libvirt-4.10.0/html/php.html
-#usr/share/doc/libvirt-4.10.0/html/platforms.html
-#usr/share/doc/libvirt-4.10.0/html/python.html
-#usr/share/doc/libvirt-4.10.0/html/remote.html
-#usr/share/doc/libvirt-4.10.0/html/secureusage.html
-#usr/share/doc/libvirt-4.10.0/html/securityprocess.html
-#usr/share/doc/libvirt-4.10.0/html/storage.html
-#usr/share/doc/libvirt-4.10.0/html/support.html
-#usr/share/doc/libvirt-4.10.0/html/testapi.html
-#usr/share/doc/libvirt-4.10.0/html/testsuites.html
-#usr/share/doc/libvirt-4.10.0/html/testtck.html
-#usr/share/doc/libvirt-4.10.0/html/todo.html
-#usr/share/doc/libvirt-4.10.0/html/uri.html
-#usr/share/doc/libvirt-4.10.0/html/virshcmdref.html
-#usr/share/doc/libvirt-4.10.0/html/windows.html
+#usr/share/doc/libvirt
+#usr/share/doc/libvirt/examples
+#usr/share/doc/libvirt/examples/c
+#usr/share/doc/libvirt/examples/c/admin
+#usr/share/doc/libvirt/examples/c/admin/client_close.c
+#usr/share/doc/libvirt/examples/c/admin/client_info.c
+#usr/share/doc/libvirt/examples/c/admin/client_limits.c
+#usr/share/doc/libvirt/examples/c/admin/list_clients.c
+#usr/share/doc/libvirt/examples/c/admin/list_servers.c
+#usr/share/doc/libvirt/examples/c/admin/logging.c
+#usr/share/doc/libvirt/examples/c/admin/threadpool_params.c
+#usr/share/doc/libvirt/examples/c/domain
+#usr/share/doc/libvirt/examples/c/domain/dommigrate.c
+#usr/share/doc/libvirt/examples/c/domain/domtop.c
+#usr/share/doc/libvirt/examples/c/domain/info1.c
+#usr/share/doc/libvirt/examples/c/domain/rename.c
+#usr/share/doc/libvirt/examples/c/domain/suspend.c
+#usr/share/doc/libvirt/examples/c/misc
+#usr/share/doc/libvirt/examples/c/misc/event-test.c
+#usr/share/doc/libvirt/examples/c/misc/hellolibvirt.c
+#usr/share/doc/libvirt/examples/c/misc/openauth.c
+#usr/share/doc/libvirt/examples/polkit
+#usr/share/doc/libvirt/examples/polkit/libvirt-acl.rules
+#usr/share/doc/libvirt/examples/sh
+#usr/share/doc/libvirt/examples/sh/virt-lxc-convert
+#usr/share/doc/libvirt/examples/systemtap
+#usr/share/doc/libvirt/examples/systemtap/events.stp
+#usr/share/doc/libvirt/examples/systemtap/lock-debug.stp
+#usr/share/doc/libvirt/examples/systemtap/qemu-monitor.stp
+#usr/share/doc/libvirt/examples/systemtap/rpc-monitor.stp
+#usr/share/doc/libvirt/examples/xml
+#usr/share/doc/libvirt/examples/xml/storage
+#usr/share/doc/libvirt/examples/xml/storage/pool-dir.xml
+#usr/share/doc/libvirt/examples/xml/storage/pool-fs.xml
+#usr/share/doc/libvirt/examples/xml/storage/pool-logical.xml
+#usr/share/doc/libvirt/examples/xml/storage/pool-netfs.xml
+#usr/share/doc/libvirt/examples/xml/storage/vol-cow.xml
+#usr/share/doc/libvirt/examples/xml/storage/vol-qcow.xml
+#usr/share/doc/libvirt/examples/xml/storage/vol-qcow2.xml
+#usr/share/doc/libvirt/examples/xml/storage/vol-raw.xml
+#usr/share/doc/libvirt/examples/xml/storage/vol-sparse.xml
+#usr/share/doc/libvirt/examples/xml/storage/vol-vmdk.xml
+#usr/share/doc/libvirt/examples/xml/test
+#usr/share/doc/libvirt/examples/xml/test/testdev.xml
+#usr/share/doc/libvirt/examples/xml/test/testdomfc4.xml
+#usr/share/doc/libvirt/examples/xml/test/testdomfv0.xml
+#usr/share/doc/libvirt/examples/xml/test/testnetdef.xml
+#usr/share/doc/libvirt/examples/xml/test/testnetpriv.xml
+#usr/share/doc/libvirt/examples/xml/test/testnode.xml
+#usr/share/doc/libvirt/examples/xml/test/testnodeinline.xml
+#usr/share/doc/libvirt/examples/xml/test/testpool.xml
+#usr/share/doc/libvirt/examples/xml/test/testvol.xml
+#usr/share/doc/libvirt/html
+#usr/share/doc/libvirt/html/32favicon.png
+#usr/share/doc/libvirt/html/404.html
+#usr/share/doc/libvirt/html/acl.html
+#usr/share/doc/libvirt/html/aclpolkit.html
+#usr/share/doc/libvirt/html/api.html
+#usr/share/doc/libvirt/html/api_extension.html
+#usr/share/doc/libvirt/html/apps.html
+#usr/share/doc/libvirt/html/architecture.gif
+#usr/share/doc/libvirt/html/architecture.html
+#usr/share/doc/libvirt/html/auditlog.html
+#usr/share/doc/libvirt/html/auth.html
+#usr/share/doc/libvirt/html/bindings.html
+#usr/share/doc/libvirt/html/bugs.html
+#usr/share/doc/libvirt/html/cgroups.html
+#usr/share/doc/libvirt/html/compiling.html
+#usr/share/doc/libvirt/html/contact.html
+#usr/share/doc/libvirt/html/contribute.html
+#usr/share/doc/libvirt/html/csharp.html
+#usr/share/doc/libvirt/html/dbus.html
+#usr/share/doc/libvirt/html/devguide.html
+#usr/share/doc/libvirt/html/docs.html
+#usr/share/doc/libvirt/html/downloads.html
+#usr/share/doc/libvirt/html/drivers.html
+#usr/share/doc/libvirt/html/drvbhyve.html
+#usr/share/doc/libvirt/html/drvesx.html
+#usr/share/doc/libvirt/html/drvhyperv.html
+#usr/share/doc/libvirt/html/drvlxc.html
+#usr/share/doc/libvirt/html/drvnodedev.html
+#usr/share/doc/libvirt/html/drvopenvz.html
+#usr/share/doc/libvirt/html/drvphyp.html
+#usr/share/doc/libvirt/html/drvqemu.html
+#usr/share/doc/libvirt/html/drvremote.html
+#usr/share/doc/libvirt/html/drvtest.html
+#usr/share/doc/libvirt/html/drvvbox.html
+#usr/share/doc/libvirt/html/drvvirtuozzo.html
+#usr/share/doc/libvirt/html/drvvmware.html
+#usr/share/doc/libvirt/html/drvxen.html
+#usr/share/doc/libvirt/html/errors.html
+#usr/share/doc/libvirt/html/firewall.html
+#usr/share/doc/libvirt/html/fonts
+#usr/share/doc/libvirt/html/fonts/LICENSE.md
+#usr/share/doc/libvirt/html/fonts/overpass-bold-italic.woff
+#usr/share/doc/libvirt/html/fonts/overpass-bold.woff
+#usr/share/doc/libvirt/html/fonts/overpass-italic.woff
+#usr/share/doc/libvirt/html/fonts/overpass-light-italic.woff
+#usr/share/doc/libvirt/html/fonts/overpass-light.woff
+#usr/share/doc/libvirt/html/fonts/overpass-mono-bold.woff
+#usr/share/doc/libvirt/html/fonts/overpass-mono-light.woff
+#usr/share/doc/libvirt/html/fonts/overpass-mono-regular.woff
+#usr/share/doc/libvirt/html/fonts/overpass-mono-semibold.woff
+#usr/share/doc/libvirt/html/fonts/overpass-regular.woff
+#usr/share/doc/libvirt/html/fonts/stylesheet.css
+#usr/share/doc/libvirt/html/format.html
+#usr/share/doc/libvirt/html/formatcaps.html
+#usr/share/doc/libvirt/html/formatcheckpoint.html
+#usr/share/doc/libvirt/html/formatdomain.html
+#usr/share/doc/libvirt/html/formatdomaincaps.html
+#usr/share/doc/libvirt/html/formatnetwork.html
+#usr/share/doc/libvirt/html/formatnetworkport.html
+#usr/share/doc/libvirt/html/formatnode.html
+#usr/share/doc/libvirt/html/formatnwfilter.html
+#usr/share/doc/libvirt/html/formatsecret.html
+#usr/share/doc/libvirt/html/formatsnapshot.html
+#usr/share/doc/libvirt/html/formatstorage.html
+#usr/share/doc/libvirt/html/formatstoragecaps.html
+#usr/share/doc/libvirt/html/formatstorageencryption.html
+#usr/share/doc/libvirt/html/generic.css
+#usr/share/doc/libvirt/html/goals.html
+#usr/share/doc/libvirt/html/governance.html
+#usr/share/doc/libvirt/html/hacking.html
+#usr/share/doc/libvirt/html/hooks.html
+#usr/share/doc/libvirt/html/html
+#usr/share/doc/libvirt/html/html/home.png
+#usr/share/doc/libvirt/html/html/index.html
+#usr/share/doc/libvirt/html/html/left.png
+#usr/share/doc/libvirt/html/html/libvirt-libvirt-common.html
+#usr/share/doc/libvirt/html/html/libvirt-libvirt-domain-checkpoint.html
+#usr/share/doc/libvirt/html/html/libvirt-libvirt-domain-snapshot.html
+#usr/share/doc/libvirt/html/html/libvirt-libvirt-domain.html
+#usr/share/doc/libvirt/html/html/libvirt-libvirt-event.html
+#usr/share/doc/libvirt/html/html/libvirt-libvirt-host.html
+#usr/share/doc/libvirt/html/html/libvirt-libvirt-interface.html
+#usr/share/doc/libvirt/html/html/libvirt-libvirt-network.html
+#usr/share/doc/libvirt/html/html/libvirt-libvirt-nodedev.html
+#usr/share/doc/libvirt/html/html/libvirt-libvirt-nwfilter.html
+#usr/share/doc/libvirt/html/html/libvirt-libvirt-secret.html
+#usr/share/doc/libvirt/html/html/libvirt-libvirt-storage.html
+#usr/share/doc/libvirt/html/html/libvirt-libvirt-stream.html
+#usr/share/doc/libvirt/html/html/libvirt-virterror.html
+#usr/share/doc/libvirt/html/html/right.png
+#usr/share/doc/libvirt/html/html/up.png
+#usr/share/doc/libvirt/html/hvsupport.html
+#usr/share/doc/libvirt/html/index.html
+#usr/share/doc/libvirt/html/internals
+#usr/share/doc/libvirt/html/internals.html
+#usr/share/doc/libvirt/html/internals/command.html
+#usr/share/doc/libvirt/html/internals/eventloop.html
+#usr/share/doc/libvirt/html/internals/locking.html
+#usr/share/doc/libvirt/html/internals/oomtesting.html
+#usr/share/doc/libvirt/html/internals/rpc.html
+#usr/share/doc/libvirt/html/java.html
+#usr/share/doc/libvirt/html/js
+#usr/share/doc/libvirt/html/js/main.js
+#usr/share/doc/libvirt/html/kbase
+#usr/share/doc/libvirt/html/kbase.html
+#usr/share/doc/libvirt/html/kbase/domainstatecapture.html
+#usr/share/doc/libvirt/html/kbase/launch_security_sev.html
+#usr/share/doc/libvirt/html/kbase/locking-lockd.html
+#usr/share/doc/libvirt/html/kbase/locking-sanlock.html
+#usr/share/doc/libvirt/html/kbase/locking.html
+#usr/share/doc/libvirt/html/kbase/secureusage.html
+#usr/share/doc/libvirt/html/libvirt-daemon-arch.png
+#usr/share/doc/libvirt/html/libvirt-driver-arch.png
+#usr/share/doc/libvirt/html/libvirt-object-model.png
+#usr/share/doc/libvirt/html/libvirt.css
+#usr/share/doc/libvirt/html/logging.html
+#usr/share/doc/libvirt/html/logos
+#usr/share/doc/libvirt/html/logos/logo-banner-dark-256.png
+#usr/share/doc/libvirt/html/logos/logo-banner-dark-800.png
+#usr/share/doc/libvirt/html/logos/logo-banner-dark.svg
+#usr/share/doc/libvirt/html/logos/logo-banner-light-256.png
+#usr/share/doc/libvirt/html/logos/logo-banner-light-800.png
+#usr/share/doc/libvirt/html/logos/logo-banner-light.svg
+#usr/share/doc/libvirt/html/logos/logo-base.svg
+#usr/share/doc/libvirt/html/logos/logo-square-128.png
+#usr/share/doc/libvirt/html/logos/logo-square-192.png
+#usr/share/doc/libvirt/html/logos/logo-square-256.png
+#usr/share/doc/libvirt/html/logos/logo-square-96.png
+#usr/share/doc/libvirt/html/logos/logo-square-powered-128.png
+#usr/share/doc/libvirt/html/logos/logo-square-powered-192.png
+#usr/share/doc/libvirt/html/logos/logo-square-powered-256.png
+#usr/share/doc/libvirt/html/logos/logo-square-powered-96.png
+#usr/share/doc/libvirt/html/logos/logo-square-powered.svg
+#usr/share/doc/libvirt/html/logos/logo-square.svg
+#usr/share/doc/libvirt/html/main.css
+#usr/share/doc/libvirt/html/migration-managed-direct.png
+#usr/share/doc/libvirt/html/migration-managed-p2p.png
+#usr/share/doc/libvirt/html/migration-native.png
+#usr/share/doc/libvirt/html/migration-tunnel.png
+#usr/share/doc/libvirt/html/migration-unmanaged-direct.png
+#usr/share/doc/libvirt/html/migration.html
+#usr/share/doc/libvirt/html/mobile.css
+#usr/share/doc/libvirt/html/news-2005.html
+#usr/share/doc/libvirt/html/news-2006.html
+#usr/share/doc/libvirt/html/news-2007.html
+#usr/share/doc/libvirt/html/news-2008.html
+#usr/share/doc/libvirt/html/news-2009.html
+#usr/share/doc/libvirt/html/news-2010.html
+#usr/share/doc/libvirt/html/news-2011.html
+#usr/share/doc/libvirt/html/news-2012.html
+#usr/share/doc/libvirt/html/news-2013.html
+#usr/share/doc/libvirt/html/news-2014.html
+#usr/share/doc/libvirt/html/news-2015.html
+#usr/share/doc/libvirt/html/news-2016.html
+#usr/share/doc/libvirt/html/news.html
+#usr/share/doc/libvirt/html/node.gif
+#usr/share/doc/libvirt/html/nss.html
+#usr/share/doc/libvirt/html/pci-hotplug.html
+#usr/share/doc/libvirt/html/php.html
+#usr/share/doc/libvirt/html/platforms.html
+#usr/share/doc/libvirt/html/python.html
+#usr/share/doc/libvirt/html/remote.html
+#usr/share/doc/libvirt/html/securityprocess.html
+#usr/share/doc/libvirt/html/storage.html
+#usr/share/doc/libvirt/html/support.html
+#usr/share/doc/libvirt/html/testapi.html
+#usr/share/doc/libvirt/html/testsuites.html
+#usr/share/doc/libvirt/html/testtck.html
+#usr/share/doc/libvirt/html/todo.html
+#usr/share/doc/libvirt/html/uri.html
+#usr/share/doc/libvirt/html/virshcmdref.html
+#usr/share/doc/libvirt/html/windows.html
#usr/share/gtk-doc/html/libvirt
#usr/share/gtk-doc/html/libvirt/general.html
#usr/share/gtk-doc/html/libvirt/home.png
#usr/share/gtk-doc/html/libvirt/index.html
#usr/share/gtk-doc/html/libvirt/left.png
+#usr/share/gtk-doc/html/libvirt/libvirt-libvirt-common.html
+#usr/share/gtk-doc/html/libvirt/libvirt-libvirt-domain-checkpoint.html
+#usr/share/gtk-doc/html/libvirt/libvirt-libvirt-domain-snapshot.html
+#usr/share/gtk-doc/html/libvirt/libvirt-libvirt-domain.html
+#usr/share/gtk-doc/html/libvirt/libvirt-libvirt-event.html
+#usr/share/gtk-doc/html/libvirt/libvirt-libvirt-host.html
+#usr/share/gtk-doc/html/libvirt/libvirt-libvirt-interface.html
+#usr/share/gtk-doc/html/libvirt/libvirt-libvirt-network.html
+#usr/share/gtk-doc/html/libvirt/libvirt-libvirt-nodedev.html
+#usr/share/gtk-doc/html/libvirt/libvirt-libvirt-nwfilter.html
+#usr/share/gtk-doc/html/libvirt/libvirt-libvirt-secret.html
+#usr/share/gtk-doc/html/libvirt/libvirt-libvirt-storage.html
+#usr/share/gtk-doc/html/libvirt/libvirt-libvirt-stream.html
#usr/share/gtk-doc/html/libvirt/libvirt-virterror.html
#usr/share/gtk-doc/html/libvirt/libvirt.devhelp
#usr/share/gtk-doc/html/libvirt/right.png
usr/share/libvirt/cpu_map/x86_Broadwell-noTSX-IBRS.xml
usr/share/libvirt/cpu_map/x86_Broadwell-noTSX.xml
usr/share/libvirt/cpu_map/x86_Broadwell.xml
+usr/share/libvirt/cpu_map/x86_Cascadelake-Server.xml
usr/share/libvirt/cpu_map/x86_Conroe.xml
-usr/share/libvirt/cpu_map/x86_EPYC-IBRS.xml
+usr/share/libvirt/cpu_map/x86_EPYC-IBPB.xml
usr/share/libvirt/cpu_map/x86_EPYC.xml
usr/share/libvirt/cpu_map/x86_Haswell-IBRS.xml
usr/share/libvirt/cpu_map/x86_Haswell-noTSX-IBRS.xml
usr/share/libvirt/schemas/cputypes.rng
usr/share/libvirt/schemas/domain.rng
usr/share/libvirt/schemas/domaincaps.rng
+usr/share/libvirt/schemas/domaincheckpoint.rng
usr/share/libvirt/schemas/domaincommon.rng
usr/share/libvirt/schemas/domainsnapshot.rng
usr/share/libvirt/schemas/interface.rng
usr/share/libvirt/schemas/network.rng
usr/share/libvirt/schemas/networkcommon.rng
+usr/share/libvirt/schemas/networkport.rng
usr/share/libvirt/schemas/nodedev.rng
usr/share/libvirt/schemas/nwfilter.rng
usr/share/libvirt/schemas/nwfilter_params.rng
usr/share/libvirt/schemas/secret.rng
usr/share/libvirt/schemas/storagecommon.rng
usr/share/libvirt/schemas/storagepool.rng
+usr/share/libvirt/schemas/storagepoolcaps.rng
usr/share/libvirt/schemas/storagevol.rng
#usr/share/libvirt/test-screenshot.png
#usr/share/man/man1/virsh.1
#lib/firmware/pcengines
#lib/firmware/pcengines/apu
-lib/firmware/pcengines/apu/apu1_v4.10.0.0.rom
-lib/firmware/pcengines/apu/apu2_v4.10.0.0.rom
-lib/firmware/pcengines/apu/apu3_v4.10.0.0.rom
-lib/firmware/pcengines/apu/apu4_v4.10.0.0.rom
-lib/firmware/pcengines/apu/apu5_v4.10.0.0.rom
+lib/firmware/pcengines/apu/apu1_v4.10.0.3.rom
+lib/firmware/pcengines/apu/apu2_v4.10.0.3.rom
+lib/firmware/pcengines/apu/apu3_v4.10.0.3.rom
+lib/firmware/pcengines/apu/apu4_v4.10.0.3.rom
+lib/firmware/pcengines/apu/apu5_v4.10.0.3.rom
lib/udev/rules.d/65-kvm.rules
+usr/bin/elf2dmp
usr/bin/ivshmem-client
usr/bin/ivshmem-server
usr/bin/qemu
usr/bin/qemu-arm
+usr/bin/qemu-edid
usr/bin/qemu-ga
usr/bin/qemu-i386
usr/bin/qemu-img
usr/bin/qemu-system-x86_64
usr/bin/qemu-x86_64
usr/libexec/qemu-bridge-helper
-#usr/share/doc/qemu
-#usr/share/doc/qemu/qemu-doc.html
-#usr/share/doc/qemu/qemu-doc.txt
-#usr/share/doc/qemu/qemu-ga-ref.html
-#usr/share/doc/qemu/qemu-ga-ref.txt
-#usr/share/doc/qemu/qemu-qmp-ref.html
-#usr/share/doc/qemu/qemu-qmp-ref.txt
-#usr/share/man/man1/qemu-img.1
-#usr/share/man/man1/qemu.1
-#usr/share/man/man7/qemu-block-drivers.7
-#usr/share/man/man7/qemu-ga-ref.7
-#usr/share/man/man7/qemu-qmp-ref.7
-#usr/share/man/man8/qemu-ga.8
-#usr/share/man/man8/qemu-nbd.8
+#usr/share/applications/qemu.desktop
+#usr/share/icons
+#usr/share/icons/hicolor
+#usr/share/icons/hicolor/128x128
+#usr/share/icons/hicolor/128x128/apps
+#usr/share/icons/hicolor/128x128/apps/qemu.png
+#usr/share/icons/hicolor/16x16
+#usr/share/icons/hicolor/16x16/apps
+#usr/share/icons/hicolor/16x16/apps/qemu.png
+#usr/share/icons/hicolor/24x24
+#usr/share/icons/hicolor/24x24/apps
+#usr/share/icons/hicolor/24x24/apps/qemu.png
+#usr/share/icons/hicolor/256x256
+#usr/share/icons/hicolor/256x256/apps
+#usr/share/icons/hicolor/256x256/apps/qemu.png
+#usr/share/icons/hicolor/32x32
+#usr/share/icons/hicolor/32x32/apps
+#usr/share/icons/hicolor/32x32/apps/qemu.bmp
+#usr/share/icons/hicolor/32x32/apps/qemu.png
+#usr/share/icons/hicolor/48x48
+#usr/share/icons/hicolor/48x48/apps
+#usr/share/icons/hicolor/48x48/apps/qemu.png
+#usr/share/icons/hicolor/512x512
+#usr/share/icons/hicolor/512x512/apps
+#usr/share/icons/hicolor/512x512/apps/qemu.png
+#usr/share/icons/hicolor/64x64
+#usr/share/icons/hicolor/64x64/apps
+#usr/share/icons/hicolor/64x64/apps/qemu.png
+#usr/share/icons/hicolor/scalable
+#usr/share/icons/hicolor/scalable/apps
+#usr/share/icons/hicolor/scalable/apps/qemu.svg
#usr/share/qemu
usr/share/qemu/QEMU,cgthree.bin
usr/share/qemu/QEMU,tcx.bin
-usr/share/qemu/acpi-dsdt.aml
usr/share/qemu/bamboo.dtb
usr/share/qemu/bios-256k.bin
usr/share/qemu/bios.bin
+usr/share/qemu/canyonlands.dtb
+usr/share/qemu/edk2-aarch64-code.fd
+usr/share/qemu/edk2-arm-code.fd
+usr/share/qemu/edk2-arm-vars.fd
+usr/share/qemu/edk2-i386-code.fd
+usr/share/qemu/edk2-i386-secure-code.fd
+usr/share/qemu/edk2-i386-vars.fd
+usr/share/qemu/edk2-licenses.txt
+usr/share/qemu/edk2-x86_64-code.fd
+usr/share/qemu/edk2-x86_64-secure-code.fd
usr/share/qemu/efi-e1000.rom
usr/share/qemu/efi-e1000e.rom
usr/share/qemu/efi-eepro100.rom
usr/share/qemu/efi-rtl8139.rom
usr/share/qemu/efi-virtio.rom
usr/share/qemu/efi-vmxnet3.rom
+usr/share/qemu/firmware
+usr/share/qemu/firmware/50-edk2-i386-secure.json
+usr/share/qemu/firmware/50-edk2-x86_64-secure.json
+usr/share/qemu/firmware/60-edk2-aarch64.json
+usr/share/qemu/firmware/60-edk2-arm.json
+usr/share/qemu/firmware/60-edk2-i386.json
+usr/share/qemu/firmware/60-edk2-x86_64.json
+usr/share/qemu/hppa-firmware.img
usr/share/qemu/keymaps
usr/share/qemu/keymaps/ar
usr/share/qemu/keymaps/bepo
-usr/share/qemu/keymaps/common
usr/share/qemu/keymaps/cz
usr/share/qemu/keymaps/da
usr/share/qemu/keymaps/de
usr/share/qemu/keymaps/lt
usr/share/qemu/keymaps/lv
usr/share/qemu/keymaps/mk
-usr/share/qemu/keymaps/modifiers
usr/share/qemu/keymaps/nl
-usr/share/qemu/keymaps/nl-be
usr/share/qemu/keymaps/no
usr/share/qemu/keymaps/pl
usr/share/qemu/keymaps/pt
usr/share/qemu/openbios-ppc
usr/share/qemu/openbios-sparc32
usr/share/qemu/openbios-sparc64
+usr/share/qemu/opensbi-riscv32-virt-fw_jump.bin
+usr/share/qemu/opensbi-riscv64-sifive_u-fw_jump.bin
+usr/share/qemu/opensbi-riscv64-virt-fw_jump.bin
usr/share/qemu/palcode-clipper
usr/share/qemu/petalogix-ml605.dtb
usr/share/qemu/petalogix-s3adsp1800.dtb
usr/share/qemu/ppc_rom.bin
+usr/share/qemu/pvh.bin
usr/share/qemu/pxe-e1000.rom
usr/share/qemu/pxe-eepro100.rom
usr/share/qemu/pxe-ne2k_pci.rom
usr/share/qemu/pxe-pcnet.rom
usr/share/qemu/pxe-rtl8139.rom
usr/share/qemu/pxe-virtio.rom
-usr/share/qemu/qemu-icon.bmp
-usr/share/qemu/qemu_logo_no_text.svg
+usr/share/qemu/qemu-nsis.bmp
usr/share/qemu/qemu_vga.ndrv
usr/share/qemu/s390-ccw.img
usr/share/qemu/s390-netboot.img
usr/share/qemu/slof.bin
usr/share/qemu/spapr-rtas.bin
usr/share/qemu/trace-events-all
+usr/share/qemu/u-boot-sam460-20100605.bin
usr/share/qemu/u-boot.e500
+usr/share/qemu/vgabios-ati.bin
+usr/share/qemu/vgabios-bochs-display.bin
usr/share/qemu/vgabios-cirrus.bin
usr/share/qemu/vgabios-qxl.bin
+usr/share/qemu/vgabios-ramfb.bin
usr/share/qemu/vgabios-stdvga.bin
usr/share/qemu/vgabios-virtio.bin
usr/share/qemu/vgabios-vmware.bin
&IDS::set_ownership("$IDS::homenet_file");
#
-## Step 9: Setup automatic ruleset updates.
+## Step 9: Generate file for the DNS servers.
+#
+
+# Call subfunction to generate the file.
+&IDS::generate_dns_servers_file();
+
+# Set correct ownership for the dns_servers_file.
+&IDS::set_ownership("$IDS::dns_servers_file");
+
+#
+## Step 10: Setup automatic ruleset updates.
#
# Check if a ruleset is configured.
}
#
-## Step 10: Grab used ruleset files from snort config file and convert
+## Step 11: Grab used ruleset files from snort config file and convert
## them into the new format.
#
&IDS::write_used_rulefiles_file(@enabled_rule_files);
#
-## Step 11: Start the IDS if enabled.
+## Step 12: Start the IDS if enabled.
#
# Check if the IDS should be started.
# Include HOME_NET declaration from external file.
include: /var/ipfire/suricata/suricata-homenet.yaml
+ # Include DNS_SERVERS declaration from external file.
+ include: /var/ipfire/suricata/suricata-dns-servers.yaml
+
EXTERNAL_NET: "any"
HTTP_SERVERS: "$HOME_NET"
SMTP_SERVERS: "$HOME_NET"
SQL_SERVERS: "$HOME_NET"
- DNS_SERVERS: "$HOME_NET"
TELNET_SERVERS: "$HOME_NET"
AIM_SERVERS: "$EXTERNAL_NET"
DC_SERVERS: "$HOME_NET"
}
}
+sub cleanup_expired_coupons
+{
+ my $acttime=time();
+ &General::readhasharray($clients, \%clientshash) if (-e $clients);
+ foreach my $key (keys %clientshash) {
+
+ #calculate endtime from clientshash
+ my $endtime;
+ if ($clientshash{$key}[3] > '0'){
+ $endtime = $clientshash{$key}[2]+$clientshash{$key}[3];
+ if ($acttime > $endtime) {
+ delete $clientshash{$key};
+ }
+ }
+ }
+ #write back hash
+ &General::writehasharray("$clients", \%clientshash);
+}
+
sub show_coupons() {
&General::readhasharray($coupons, \%couponhash) if (-e $coupons);
<th align='center' width='5%'>$Lang::tr{'delete'}</th>
</tr>
END
-
+ &cleanup_expired_coupons();
&General::readhasharray($clients, \%clientshash) if (-e $clients);
- foreach my $key (keys %clientshash) {
+ foreach my $key (sort {$clientshash{$a}[2] <=> $clientshash{$b}[2]} keys %clientshash) {
#calculate time from clientshash (starttime)
my $starttime = sub{sprintf '%02d.%02d.%04d %02d:%02d', $_[3], $_[4]+1, $_[5]+1900, $_[2], $_[1] }->(localtime($clientshash{$key}[2]));
Ben Schweikert,
Peter Pfeiffer,
Daniel Glanzmann,
-Heiner Schmeling,
Daniel Weismüller,
+Heiner Schmeling,
Timo Eissler,
Jan Lentfer,
Marcus Scholz,
Ersan Yildirim,
+Stephan Feddersen,
Joern-Ingo Weigert,
Alexander Koch,
-Stephan Feddersen,
Wolfgang Apolinarski,
Alfred Haas,
Lars Schuhmacher,
Dominik Hassler,
Larsen,
Gabriel Rolland,
+Tim FitzGeorge,
Anton D. Seliverstov,
Bernhard Bittner,
David Kleuker,
Jörn-Ingo Weigert,
Przemek Zdroik,
Ramax Lo,
-Tim FitzGeorge,
Alexander Rudolf Gruber,
Andrew Bellows,
Axel Gembe,
# Beep on ip-up or ip-down. Default is ON.
if ($cgiparams{'PPPUPDOWNBEEP'} ne 'on') {
$cgiparams{'PPPUPDOWNBEEP'} = 'off';
- system ('/usr/bin/touch', "${General::swroot}/ppp/nobeeps");
+ system ('/usr/bin/touch', "${General::swroot}/red/nobeeps");
} else {
- unlink "${General::swroot}/ppp/nobeeps";
+ unlink "${General::swroot}/red/nobeeps";
}
# write cgi vars to the file.
# Generate file to store the home net.
&IDS::generate_home_net_file();
+ # Generate file to the store the DNS servers.
+ &IDS::generate_dns_servers_file();
+
# Write the modify sid's file and pass the taken ruleaction.
&IDS::write_modify_sids_file();
#ACTIONS
if ($cgiparams{'ACTION'} eq "$Lang::tr{'save'}"){ #SaveButton on configsite
- #Check fields
- if ($cgiparams{'USEMAIL'} eq 'on'){
- $errormessage=&checkmailsettings;
- }else{
- $cgiparams{'txt_mailserver'}='';
- $cgiparams{'txt_mailport'}='';
- $cgiparams{'txt_mailuser'}='';
- $cgiparams{'txt_mailpass'}='';
- $cgiparams{'mail_tls'}='';
- $cgiparams{'txt_mailsender'}='';
- $cgiparams{'txt_recipient'}='';
- }
- if(!$errormessage){
+ # Check fields
+ $errormessage = &checkmailsettings();
+
+ if (!$errormessage) {
#clear hashes
%auth=();
%dma=();
#Check if mailserver is an ip address or a domain
if ($cgiparams{'txt_mailserver'} =~ /^(\d+)\.(\d+)\.(\d+)\.(\d+)$/){
if (! &General::validip($cgiparams{'txt_mailserver'})){
- $errormessage.="$Lang::tr{'email invalid mailip'} $cgiparams{'txt_mailserver'}<br>";
+ $errormessage .= $Lang::tr{'email invalid mailip'} . "<br>";
}
}elsif(! &General::validfqdn($cgiparams{'txt_mailserver'})){
- $errormessage.="$Lang::tr{'email invalid mailfqdn'} $cgiparams{'txt_mailserver'}<br>";
+ $errormessage .= $Lang::tr{'email invalid mailfqdn'} . "<br>";
}
#Check valid mailserverport
if($cgiparams{'txt_mailport'} < 1 || $cgiparams{'txt_mailport'} > 65535){
- $errormessage.="$Lang::tr{'email invalid mailport'} $cgiparams{'txt_mailport'}<br>";
+ $errormessage .= $Lang::tr{'email invalid mailport'} . "<br>";
}
#Check valid sender
if(! $cgiparams{'txt_mailsender'}){
- $errormessage.="$Lang::tr{'email empty field'} $Lang::tr{'email mailsender'}<br>";
+ $errormessage .= $Lang::tr{'email empty field'} . "<br>";
}else{
if (! &General::validemail($cgiparams{'txt_mailsender'})){
- $errormessage.="<br>$Lang::tr{'email invalid'} $Lang::tr{'email mailsender'}<br>";
+ $errormessage .= "$Lang::tr{'email invalid'} $Lang::tr{'email mailsender'}<br>";
}
}
return $errormessage;
print CONF "push \"dhcp-option WINS $sovpnsettings{DHCP_WINS}\"\n";
}
- if ($sovpnsettings{DHCP_WINS} eq '') {
+ if ($sovpnsettings{MAX_CLIENTS} eq '') {
print CONF "max-clients 100\n";
}
- if ($sovpnsettings{DHCP_WINS} ne '') {
+ if ($sovpnsettings{MAX_CLIENTS} ne '') {
print CONF "max-clients $sovpnsettings{MAX_CLIENTS}\n";
}
print CONF "tls-verify /usr/lib/openvpn/verify\n";
$vpnsettings{'MAX_CLIENTS'} = $cgiparams{'MAX_CLIENTS'};
$vpnsettings{'REDIRECT_GW_DEF1'} = $cgiparams{'REDIRECT_GW_DEF1'};
$vpnsettings{'CLIENT2CLIENT'} = $cgiparams{'CLIENT2CLIENT'};
- $vpnsettings{'COMPLZO'} = $cgiparams{'DCOMPLZO'};
+ $vpnsettings{'DCOMPLZO'} = $cgiparams{'DCOMPLZO'};
$vpnsettings{'ADDITIONAL_CONFIGS'} = $cgiparams{'ADDITIONAL_CONFIGS'};
$vpnsettings{'DHCP_DOMAIN'} = $cgiparams{'DHCP_DOMAIN'};
$vpnsettings{'DHCP_DNS'} = $cgiparams{'DHCP_DNS'};
###############################################################################
# #
# IPFire.org - A linux based firewall #
-# Copyright (C) 2007-2018 IPFire Team <info@ipfire.org> #
+# Copyright (C) 2007-2019 IPFire Team <info@ipfire.org> #
# #
# This program is free software: you can redistribute it and/or modify #
# it under the terms of the GNU General Public License as published by #
include Config
-VER = 4.3
+VER = 5.0
THISAPP = bash-$(VER)
DL_FILE = $(THISAPP).tar.gz
$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
-$(DL_FILE)_MD5 = 81348932d5da294953e15d4814c74dd1
+$(DL_FILE)_MD5 = 2b44b47b905be16f45709648f671820b
install : $(TARGET)
sed -e "s/filename, RTLD_LAZY/filename, RTLD_NOW/" \
-i $(DIR_APP)/builtins/enable.def
- for i in $$(seq 1 30); do \
- cd $(DIR_APP) && patch -Np0 < $(DIR_SRC)/src/patches/bash/bash43-$$(printf "%03d" "$${i}") || exit 1; \
+ for i in $$(seq 1 11); do \
+ cd $(DIR_APP) && patch -Np0 < $(DIR_SRC)/src/patches/bash/bash50-$$(printf "%03d" "$${i}") || exit 1; \
done
cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/bash-4.0-paths-1.patch
include Config
-VER = 9.11.12
+VER = 9.11.13
THISAPP = bind-$(VER)
DL_FILE = $(THISAPP).tar.gz
$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
-$(DL_FILE)_MD5 = e6a55dcacc852bad9c5970c405383ea0
+$(DL_FILE)_MD5 = 17de0d024ab1eac377f1c2854dc25057
install : $(TARGET)
DIR_APP = $(DIR_SRC)/$(THISAPP)
TARGET = $(DIR_INFO)/$(THISAPP)
PROG = bird
-PAK_VER = 5
+PAK_VER = 6
DEPS = ""
include Config
-VER = 20190730
+VER = 20191128
THISAPP = ca-certificates
DIR_APP = $(DIR_SRC)/$(THISAPP)
###############################################################################
# #
# IPFire.org - A linux based firewall #
-# Copyright (C) 2007-2018 IPFire Team <info@ipfire.org> #
+# Copyright (C) 2007-2019 IPFire Team <info@ipfire.org> #
# #
# This program is free software: you can redistribute it and/or modify #
# it under the terms of the GNU General Public License as published by #
$(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
@$(PREBUILD)
@rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar zxf $(DIR_DL)/$(DL_FILE)
+
+ cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/calamaris/01_calamaris_cant_use_defined_hash.patch
+
cd $(DIR_APP) && cp -f calamaris $(DIR_SRC)/config/calamaris/mkreport \
/var/ipfire/proxy/calamaris/bin/
chmod 755 /var/ipfire/proxy/calamaris/bin/{calamaris,mkreport}
include Config
-VER = 0.102.0
+VER = 0.102.1
THISAPP = clamav-$(VER)
DL_FILE = $(THISAPP).tar.gz
DIR_APP = $(DIR_SRC)/$(THISAPP)
TARGET = $(DIR_INFO)/$(THISAPP)
PROG = clamav
-PAK_VER = 47
+PAK_VER = 48
DEPS = ""
$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
-$(DL_FILE)_MD5 = 51e1dff512350284b4b11c3dc2d00da0
+$(DL_FILE)_MD5 = 3d5f5f10a1bea212823050286c8c5b96
install : $(TARGET)
###############################################################################
# #
# IPFire.org - A linux based firewall #
-# Copyright (C) 2007-2018 IPFire Team <info@ipfire.org> #
+# Copyright (C) 2007-2019 IPFire Team <info@ipfire.org> #
# #
# This program is free software: you can redistribute it and/or modify #
# it under the terms of the GNU General Public License as published by #
include Config
-VER = 2.12
+VER = 2.13
THISAPP = cpio-$(VER)
DL_FILE = $(THISAPP).tar.gz
$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
-$(DL_FILE)_MD5 = fc207561a86b63862eea4b8300313e86
+$(DL_FILE)_MD5 = 389c5452d667c23b5eceb206f5000810
install : $(TARGET)
include Config
-VER = 011
+VER = 012
THISAPP = ddns-$(VER)
DL_FILE = $(THISAPP).tar.xz
$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
-$(DL_FILE)_MD5 = f0399ba5bad3272f32e539c45cd1abe9
+$(DL_FILE)_MD5 = 00e70e8bf619148e14b6f6836314bbb7
install : $(TARGET)
@$(PREBUILD)
@rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar axf $(DIR_DL)/$(DL_FILE)
+ # Add upstream patch for fixing noip.com
+ cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/ddns-012-noip-rename-provider.patch
+ cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/ddns-012-noip-fix-handle-name.patch
+
cd $(DIR_APP) && [ -x "configure" ] || sh ./autogen.sh
cd $(DIR_APP) && ./configure \
--prefix=/usr \
###############################################################################
# #
# IPFire.org - A linux based firewall #
-# Copyright (C) 2007-2018 IPFire Team <info@ipfire.org> #
+# Copyright (C) 2007-2019 IPFire Team <info@ipfire.org> #
# #
# This program is free software: you can redistribute it and/or modify #
# it under the terms of the GNU General Public License as published by #
endif
# /boot: 128MB - OFFSET
-# / : 1200 MB
+# / : 1300 MB
S_BOOT := $(shell echo $$(( 262144 - $(S_OFFSET) )))
-S_ROOT := 2476032
+S_ROOT := 2672640
ifeq "$(EFI)" "1"
S_EFI = 65536 # 32 MB
###############################################################################
# #
# IPFire.org - A linux based firewall #
-# Copyright (C) 2007-2018 IPFire Team <info@ipfire.org> #
+# Copyright (C) 2007-2019 IPFire Team <info@ipfire.org> #
# #
# This program is free software: you can redistribute it and/or modify #
# it under the terms of the GNU General Public License as published by #
include Config
-VER = 20191112
+VER = 20191115
THISAPP = Intel-Linux-Processor-Microcode-Data-Files-microcode-$(VER)
DL_FILE = $(THISAPP).tar.gz
$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
-$(DL_FILE)_MD5 = b215c5a8fd438afd867d8a42d01e27f6
+$(DL_FILE)_MD5 = 49cc3595934772b54b6218f8dbe64a94
install : $(TARGET)
###############################################################################
# #
# IPFire.org - A linux based firewall #
-# Copyright (C) 2007-2018 IPFire Team <info@ipfire.org> #
+# Copyright (C) 2007-2019 IPFire Team <info@ipfire.org> #
# #
# This program is free software: you can redistribute it and/or modify #
# it under the terms of the GNU General Public License as published by #
include Config
-VER = 3.3.1
+VER = 3.4.0
THISAPP = libarchive-$(VER)
DL_FILE = $(THISAPP).tar.gz
$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
-$(DL_FILE)_MD5 = d2af45480aa5b0db5b5f3919cd0ea65e
+$(DL_FILE)_MD5 = 6046396255bd7cf6d0f6603a9bda39ac
install : $(TARGET)
include Config
-VER = 4.10.0
+VER = 5.6.0
THISAPP = libvirt-$(VER)
DL_FILE = $(THISAPP).tar.xz
TARGET = $(DIR_INFO)/$(THISAPP)
SUP_ARCH = i586 x86_64
PROG = libvirt
-PAK_VER = 19
+PAK_VER = 20
DEPS = "libpciaccess libyajl ncat qemu"
$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
-$(DL_FILE)_MD5 = f85067e830bd89db08b7b7ffa75db6ef
+$(DL_FILE)_MD5 = e818bb25ead24119925781b7519a8401
install : $(TARGET)
check : $(patsubst %,$(DIR_CHK)/%,$(objects))
@$(PREBUILD)
@rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar Jxf $(DIR_DL)/$(DL_FILE)
cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/libvirt/0001-Change-default-behavior-of-libvirt-guests.sh-for-IPF.patch
- cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/libvirt/0002-Change-options-in-libvirtd.conf-for-IPFire.patch
cd $(DIR_APP) && ./configure --prefix=/usr --localstatedir=/var --sysconfdir=/etc \
--with-openssl --without-sasl \
--without-uml --without-vbox --without-lxc --without-esx --without-vmware --without-openvz \
- --without-firewalld --without-network --with-interface --with-virtualport --with-macvtap \
+ --without-firewalld --without-network --with-interface --with-virtualport --with-macvtap --without-wireshark-dissector \
--disable-nls --without-avahi --without-test-suite --without-dbus \
--with-qemu-user=nobody --with-qemu-group=kvm \
- --with-storage-dir --with-storage-fs --without-storage-lvm --without-storage-iscsi \
+ --with-storage-dir --with-storage-fs --with-storage-lvm --without-storage-iscsi \
--without-storage-scsi --without-storage-mpath --without-storage-disk --without-storage-rbd --without-storage-sheepdog --without-storage-gluster --without-storage-zfs
cd $(DIR_APP) && make $(MAKETUNING) $(EXTRA_MAKE)
cd $(DIR_APP) && make install
mv /usr/libexec/libvirt-guests.sh /etc/rc.d/init.d/libvirt-guests
# Backup
install -v -m 644 $(DIR_SRC)/config/backup/includes/libvirt /var/ipfire/backup/addons/includes/libvirt
+ # Install libvirtd.conf
+ cp -fv $(DIR_SRC)/config/libvirt/libvirtd.conf /etc/libvirt
@rm -rf $(DIR_APP)
@$(POSTBUILD)
###############################################################################
# #
# IPFire.org - A linux based firewall #
-# Copyright (C) 2007-2018 IPFire Team <info@ipfire.org> #
+# Copyright (C) 2007-2019 IPFire Team <info@ipfire.org> #
# #
# This program is free software: you can redistribute it and/or modify #
# it under the terms of the GNU General Public License as published by #
include Config
-VER = 7b5835fd37630d18ac0c755329172f6a17c1af29
+VER = 20191022
THISAPP = linux-firmware-$(VER)
DL_FILE = $(THISAPP).tar.xz
$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
-$(DL_FILE)_MD5 = 09fc172e36a431c44ecb8171c4c07a3c
+$(DL_FILE)_MD5 = a9fa049840931f37469a8035b9c06318
install : $(TARGET)
@rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar axf $(DIR_DL)/$(DL_FILE)
mkdir -p /lib/firmware
cd $(DIR_APP) && cp -vr * /lib/firmware
+ # Remove Space from Filenames
+ mv "/lib/firmware/brcm/brcmfmac43430a0-sdio.ONDA-V80 PLUS.txt" \
+ "/lib/firmware/brcm/brcmfmac43430a0-sdio.ONDA-V80_PLUS.txt"
+ mv "/lib/firmware/brcm/brcmfmac43455-sdio.MINIX-NEO Z83-4.txt" \
+ "/lib/firmware/brcm/brcmfmac43455-sdio.MINIX-NEO_Z83-4.txt"
@rm -rf $(DIR_APP)
@$(POSTBUILD)
###############################################################################
# #
# IPFire.org - A linux based firewall #
-# Copyright (C) 2007-2018 IPFire Team <info@ipfire.org> #
+# Copyright (C) 2007-2019 IPFire Team <info@ipfire.org> #
# #
# This program is free software: you can redistribute it and/or modify #
# it under the terms of the GNU General Public License as published by #
include Config
-VER = 7.4.3
+VER = 7.5.2
THISAPP = logwatch-$(VER)
DL_FILE = $(THISAPP).tar.gz
$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
-$(DL_FILE)_MD5 = 22bd22841caa45f12c605abc3e0c2b09
+$(DL_FILE)_MD5 = 634b2ac423b77b809d400cc6085db49d
install : $(TARGET)
###############################################################################
# #
# IPFire.org - A linux based firewall #
-# Copyright (C) 2007-2018 IPFire Team <info@ipfire.org> #
+# Copyright (C) 2007-2019 IPFire Team <info@ipfire.org> #
# #
# This program is free software: you can redistribute it and/or modify #
# it under the terms of the GNU General Public License as published by #
include Config
-VER = 1.8.1.2
+VER = 1.9.2
THISAPP = lz4-$(VER)
DL_FILE = $(THISAPP).tar.gz
$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
-$(DL_FILE)_MD5 = 343538e69ba752a386c669b1a28111e2
+$(DL_FILE)_MD5 = 3898c56c82fb3d9455aefd48db48eaad
install : $(TARGET)
$(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
@$(PREBUILD)
@rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar zxf $(DIR_DL)/$(DL_FILE)
- cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/lz4-1.8.1.2_mod_install_path.patch
+ cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/lz4-1.9.2_mod_install_path.patch
cd $(DIR_APP) && make $(MAKETUNING)
cd $(DIR_APP) && make install
include Config
-VER = 4.5
+VER = 4.6
THISAPP = nano-$(VER)
DL_FILE = $(THISAPP).tar.xz
DIR_APP = $(DIR_SRC)/$(THISAPP)
TARGET = $(DIR_INFO)/$(THISAPP)
PROG = nano
-PAK_VER = 26
+PAK_VER = 27
DEPS = ""
$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
-$(DL_FILE)_MD5 = 686a169b6e5e1f76fe79570f07934001
+$(DL_FILE)_MD5 = 9e87ae93cc7a5c7f5e64f97db089ae1b
install : $(TARGET)
include Config
-VER = 8.0p1
+VER = 8.1p1
THISAPP = openssh-$(VER)
DL_FILE = $(THISAPP).tar.gz
$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
-$(DL_FILE)_MD5 = bf050f002fe510e1daecd39044e1122d
+$(DL_FILE)_MD5 = 513694343631a99841e815306806edf0
install : $(TARGET)
$(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
@$(PREBUILD)
@rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar zxf $(DIR_DL)/$(DL_FILE)
- cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/openssl-1.1.1c-default-cipherlist.patch
+ cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/openssl-1.1.1d-default-cipherlist.patch
# Apply our CFLAGS
cd $(DIR_APP) && sed -i Configure \
include Config
-VER = 2.4.7
+VER = 2.4.8
THISAPP = openvpn-$(VER)
DL_FILE = $(THISAPP).tar.xz
$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
-$(DL_FILE)_MD5 = 4ad8a008e1e7f261b3aa0024e79e7fb7
+$(DL_FILE)_MD5 = 03a4a077945c157703681a06935bc3f9
install : $(TARGET)
include Config
-VER = 4.10.0.0
+VER = 4.10.0.3
THISAPP = pcengines-apu-firmware-$(VER)
DL_FROM = $(URL_IPFIRE)
DIR_APP = $(DIR_SRC)/$(THISAPP)
TARGET = $(DIR_INFO)/$(THISAPP)
PROG = pcengines-apu-firmware
-PAK_VER = 3
+PAK_VER = 4
SUP_ARCH = i586 x86_64
DEPS = "firmware-update"
apu4_v$(VER).rom = $(DL_FROM)/apu4_v$(VER).rom
apu5_v$(VER).rom = $(DL_FROM)/apu5_v$(VER).rom
-apu1_v$(VER).rom_MD5 = 21c754ae5390722e04aa7ea55e339478
-apu2_v$(VER).rom_MD5 = a509bc0384ba4f368bda267b8ed1761d
-apu3_v$(VER).rom_MD5 = 6951e3c8742dab67c84ef467c69edd66
-apu4_v$(VER).rom_MD5 = 0b30b739fccd22c43a13023c2bb7e867
-apu5_v$(VER).rom_MD5 = c1b5b9f393a099f0952b4138bc71901e
+apu1_v$(VER).rom_MD5 = f996d2272685683b1bf8be1f27b44f18
+apu2_v$(VER).rom_MD5 = 1ec2df4c0f9be2443192fead8e3b49e9
+apu3_v$(VER).rom_MD5 = 4a5cee9b621432627d7f3dcbb6191904
+apu4_v$(VER).rom_MD5 = a4a8bd06ebfa88907f5a4ddb6d7c3edc
+apu5_v$(VER).rom_MD5 = c389d490d02810bf65f0f3abb461070e
install : $(TARGET)
include Config
-VER = 3.4.6
+VER = 3.4.8
THISAPP = postfix-$(VER)
DL_FILE = $(THISAPP).tar.gz
DIR_APP = $(DIR_SRC)/$(THISAPP)
TARGET = $(DIR_INFO)/$(THISAPP)
PROG = postfix
-PAK_VER = 21
+PAK_VER = 22
DEPS = ""
$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
-$(DL_FILE)_MD5 = 5aa930a8ce3cc6f82247dbd9f536380c
+$(DL_FILE)_MD5 = 6944b946887077a28e3dcb375ff53701
install : $(TARGET)
# If you update this make sure that you also change the VER and PAK_VER of
# python-optional-src !
-VER = 2.7.15
+VER = 2.7.17
THISAPP = Python-$(VER)
DL_FILE = $(THISAPP).tar.xz
$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
-$(DL_FILE)_MD5 = a80ae3cc478460b922242f43a1b4094d
+$(DL_FILE)_MD5 = b3b6d2c92f42a60667814358ab9f0cfd
install : $(TARGET)
include Config
-VER = 2.7.15
+VER = 2.7.17
include python
PROG = python-optional-src
-PAK_VER = 5
+PAK_VER = 6
DEPS =
dist:
###############################################################################
# #
# IPFire.org - A linux based firewall #
-# Copyright (C) 2007-2018 IPFire Team <info@ipfire.org> #
+# Copyright (C) 2007-2019 IPFire Team <info@ipfire.org> #
# #
# This program is free software: you can redistribute it and/or modify #
# it under the terms of the GNU General Public License as published by #
include Config
-VER = 2.11.0
+VER = 4.1.0
THISAPP = qemu-$(VER)
-DL_FILE = $(THISAPP).tar.bz2
+DL_FILE = $(THISAPP).tar.xz
DL_FROM = $(URL_IPFIRE)
DIR_APP = $(DIR_SRC)/$(THISAPP)
TARGET = $(DIR_INFO)/$(THISAPP)
SUP_ARCH = i586 x86_64
PROG = qemu
-PAK_VER = 24
+PAK_VER = 25
-DEPS = "libusbredir sdl spice libseccomp"
+DEPS = "libusbredir spice libseccomp"
###############################################################################
# Top-level Rules
$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
-$(DL_FILE)_MD5 = 335994a755bc655e88a87aeb36bfc0b9
+$(DL_FILE)_MD5 = cdf2b5ca52b9abac9bacb5842fa420f8
install : $(TARGET)
$(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
@$(PREBUILD)
@rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar axf $(DIR_DL)/$(DL_FILE)
- cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/qemu-2.11.0-memfd-collision.patch
cd $(DIR_APP) && ./configure --prefix=/usr --sysconfdir=/etc \
--localstatedir=/var --enable-kvm --disable-bluez --disable-attr \
--target-list="i386-linux-user x86_64-linux-user arm-linux-user i386-softmmu x86_64-softmmu arm-softmmu" \
- --extra-cflags="$(CFLAGS)" --enable-spice --enable-usb-redir --enable-seccomp
+ --extra-cflags="$(CFLAGS)" --enable-spice --enable-usb-redir --enable-seccomp \
+ --disable-docs --disable-sdl
cd $(DIR_APP) && make $(MAKETUNING)
cd $(DIR_APP) && make install
###############################################################################
# #
# IPFire.org - A linux based firewall #
-# Copyright (C) 2007-2018 IPFire Team <info@ipfire.org> #
+# Copyright (C) 2007-2019 IPFire Team <info@ipfire.org> #
# #
# This program is free software: you can redistribute it and/or modify #
# it under the terms of the GNU General Public License as published by #
include Config
-VER = 6.3
+VER = 8.0
THISAPP = readline-$(VER)
DL_FILE = $(THISAPP).tar.gz
$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
-$(DL_FILE)_MD5 = 33c8fb279e981274f485fd91da77e94a
+$(DL_FILE)_MD5 = 7e6c1f16aee3244a69aba6e438295ca3
install : $(TARGET)
@$(PREBUILD)
@rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar zxf $(DIR_DL)/$(DL_FILE)
- for i in $$(seq 1 6); do \
- cd $(DIR_APP) && patch -Np0 < $(DIR_SRC)/src/patches/readline/readline63-$$(printf "%03d" "$${i}") || exit 1; \
+ for i in $$(seq 1 1); do \
+ cd $(DIR_APP) && patch -Np0 < $(DIR_SRC)/src/patches/readline/readline80-$$(printf "%03d" "$${i}") || exit 1; \
done
cd $(DIR_APP) && ./configure --prefix=/usr --disable-static
###############################################################################
# #
# IPFire.org - A linux based firewall #
-# Copyright (C) 2007-2018 IPFire Team <info@ipfire.org> #
+# Copyright (C) 2007-2019 IPFire Team <info@ipfire.org> #
# #
# This program is free software: you can redistribute it and/or modify #
# it under the terms of the GNU General Public License as published by #
include Config
-VER = 5.2
+VER = 6.3
THISAPP = readline-$(VER)
DL_FILE = $(THISAPP).tar.gz
$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
-$(DL_FILE)_MD5 = e39331f32ad14009b9ff49cc10c5e751
+$(DL_FILE)_MD5 = 33c8fb279e981274f485fd91da77e94a
install : $(TARGET)
@rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar zxf $(DIR_DL)/$(DL_FILE)
$(UPDATE_AUTOMAKE)
- for i in $$(seq 1 14); do \
- cd $(DIR_APP) && patch -Np0 < $(DIR_SRC)/src/patches/readline/readline52-$$(printf "%03d" "$${i}") || exit 1; \
+ for i in $$(seq 1 6); do \
+ cd $(DIR_APP) && patch -Np0 < $(DIR_SRC)/src/patches/readline/readline63-$$(printf "%03d" "$${i}") || exit 1; \
done
cd $(DIR_APP) && ./configure --prefix=/usr --libdir=/lib --disable-static
cd $(DIR_APP)/shlib && install -m 755 libreadline.so.$(VER) /lib
cd $(DIR_APP)/shlib && install -m 755 libhistory.so.$(VER) /lib
- ln -svf libreadline.so.$(VER) /lib/libreadline.so.5
- ln -svf libhistory.so.$(VER) /lib/libhistory.so.5
+ ln -svf libreadline.so.$(VER) /lib/libreadline.so.6
+ ln -svf libhistory.so.$(VER) /lib/libhistory.so.6
@rm -rf $(DIR_APP)
@$(POSTBUILD)
###############################################################################
# #
# IPFire.org - A linux based firewall #
-# Copyright (C) 2007-2018 IPFire Team <info@ipfire.org> #
+# Copyright (C) 2007-2019 IPFire Team <info@ipfire.org> #
# #
# This program is free software: you can redistribute it and/or modify #
# it under the terms of the GNU General Public License as published by #
include Config
-VER = 0.41
+VER = 0.42
THISAPP = spectre-meltdown-checker-$(VER)
DL_FILE = $(THISAPP).tar.gz
DIR_APP = $(DIR_SRC)/$(THISAPP)
TARGET = $(DIR_INFO)/$(THISAPP)
PROG = spectre-meltdown-checker
-PAK_VER = 2
+PAK_VER = 3
DEPS = ""
$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
-$(DL_FILE)_MD5 = d3adcb3ac32e226dc18ab7f6ef6f7617
+$(DL_FILE)_MD5 = c8aca684284d604adb67cb6d9d07ce70
install : $(TARGET)
include Config
-VER = 4.8
+VER = 4.9
THISAPP = squid-$(VER)
DL_FILE = $(THISAPP).tar.xz
$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
-$(DL_FILE)_MD5 = 08e018f2d8db4911ee90591284fa1ca5
+$(DL_FILE)_MD5 = 5c2e335dd1e8ced9dda6e0e11894b344
install : $(TARGET)
include Config
-VER = 1.9.4
+VER = 1.9.5
THISAPP = unbound-$(VER)
DL_FILE = $(THISAPP).tar.gz
$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
-$(DL_FILE)_MD5 = c4d6305f6187deca9e579d4cc5abeaea
+$(DL_FILE)_MD5 = deb7a3c52fec66323b508c0be4be4849
install : $(TARGET)
###############################################################################
# IPFire.org - An Open Source Firewall Solution #
-# Copyright (C) 2007-2018 IPFire Team <info@ipfire.org> #
+# Copyright (C) 2007-2019 IPFire Team <info@ipfire.org> #
###############################################################################
###############################################################################
DIR_APP = $(DIR_SRC)/$(THISAPP)
TARGET = $(DIR_INFO)/$(THISAPP)
PROG = wio
-PAK_VER = 6
+PAK_VER = 7
###############################################################################
# Top-level Rules
SNAME="ipfire" # Short name
# If you update the version don't forget to update backupiso and add it to core update
VERSION="2.23" # Version number
-CORE="138" # Core Level (Filename)
-PAKFIRE_CORE="138" # Core Level (PAKFIRE)
+CORE="139" # Core Level (Filename)
+PAKFIRE_CORE="139" # Core Level (PAKFIRE)
GIT_BRANCH=`git rev-parse --abbrev-ref HEAD` # Git Branch
SLOGAN="www.ipfire.org" # Software slogan
CONFIG_ROOT=/var/ipfire # Configuration rootdir
#
# List of PCI ID's
#
-# Version: 2019.07.25
-# Date: 2019-07-25 03:15:02
+# Version: 2019.11.26
+# Date: 2019-11-26 03:15:03
#
# Maintained by Albert Pool, Martin Mares, and other volunteers from
# the PCI ID Project at https://pci-ids.ucw.cz/.
# This file can be distributed under either the GNU General Public License
# (version 2 or higher) or the 3-clause BSD License.
#
+# The database is a compilation of factual data, and as such the copyright
+# only covers the aggregation and formatting. The copyright is held by
+# Martin Mares and Albert Pool.
+#
# Vendors, devices and subsystems. Please keep sorted.
006e SAS2308 PCI-Express Fusion-MPT SAS-2
0070 SAS2004 PCI-Express Fusion-MPT SAS-2 [Spitfire]
1000 3010 SAS9211-4i
+ 1014 040e ServeRAID H1110
0071 MR SAS HBA 2004
0072 SAS2008 PCI-Express Fusion-MPT SAS-2 [Falcon]
1000 3040 9210-8i
1000 3060 SAS9217-4i4e
1014 0472 N2125 External Host Bus Adapter
1590 0041 H220i
+ 1590 0042 H221 / 9207-8e
1590 0044 H220i
8086 3000 RS25GB008 RAID Controller
8086 3060 RS25FB044 RAID Controller
15d9 0808 AOC-S3008L-L8e
1bd4 0011 Inspur 12Gb 8i-3008 IT SAS HBA
00ab SAS3516 Fusion-MPT Tri-Mode RAID On Chip (ROC)
+# 8 Internal and 8 External port channel 9400 HBA
+ 1000 3040 HBA 9400-8i8e
8086 3530 Integrated RAID Module RMSP3JD160J
00ac SAS3416 Fusion-MPT Tri-Mode I/O Controller Chip (IOC)
+# Channel 16 internal port HBA
+ 1000 3000 HBA 9400-16i
+# Channel 16 external port HBA
+ 1000 3020 HBA 9400-16e
1028 1fe3 HBA345 Adapter
1028 1fe4 HBA345 Front
1d49 0201 ThinkSystem 430-16i SAS/SATA 12Gb HBA
00ae SAS3508 Fusion-MPT Tri-Mode RAID On Chip (ROC)
00af SAS3408 Fusion-MPT Tri-Mode I/O Controller Chip (IOC)
1000 3010 HBA 9400-8i
+# 9400 Channel 8 external port HBA
+ 1000 3030 HBA 9400-8e
1d49 0200 ThinkSystem 430-8i SAS/SATA 12Gb HBA
1d49 0202 ThinkSystem 430-8e SAS/SATA 12Gb HBA
1d49 0204 ThinkSystem 430-8i SAS/SATA 12Gb Dense HBA
00cf MegaRAID SAS-3 3324 [Intruder]
1000 9370 MegaRAID SAS 9361-24i
00d0 SAS3716 Fusion-MPT Tri-Mode RAID Controller Chip (ROC)
+# 9405W 16 internal port channel HBA
+ 1000 3050 HBA 9405W-16i
+# 9405W 8 internal and 8 external port channel HBA
+ 1000 3070 HBA 9405W-8i8e
00d1 SAS3616 Fusion-MPT Tri-Mode I/O Controller Chip (IOC)
+# 9405W 16 external port Channel HBA
+ 1000 3080 HBA 9405W-16e
+# 9405W 16 internal port Channel HBA
+ 1000 3090 HBA 9405W-16i
00d3 MegaRAID Tri-Mode SAS3716W
00e0 Fusion-MPT 12GSAS/PCIe Unsupported SAS39xx
00e1 Fusion-MPT 12GSAS/PCIe SAS39xx
00e2 Fusion-MPT 12GSAS/PCIe Secure SAS39xx
00e3 Fusion-MPT 12GSAS/PCIe Unsupported SAS39xx
00e4 Fusion-MPT 12GSAS/PCIe Unsupported SAS38xx
+# Invalid part
+ 1028 200b HBA355i Adapter Invalid
+# Invalid part
+ 1028 200c HBA355i Front Invalid
+# Invalid part
+ 1028 200d HBA355e Adapter Invalid
+# Invalid part
+ 1028 200e HBA350i MX Invalid
+# Soft Secure
00e5 Fusion-MPT 12GSAS/PCIe SAS38xx
+# Soft Secure
1028 200b HBA355i Adapter
+# Soft Secure
1028 200c HBA355i Front
+# Soft Secure
1028 200d HBA355e Adapter
- 1028 200e HBA355i MX
+# Soft Secure
+ 1028 200e HBA350i MX
+ 1d49 0205 ThinkSystem 440-16i SAS/SATA PCIe Gen4 12Gb Internal HBA
+ 1d49 0206 ThinkSystem 440-16e SAS/SATA PCIe Gen4 12Gb HBA
00e6 Fusion-MPT 12GSAS/PCIe Secure SAS38xx
+ 1028 200b HBA355i Adapter
+ 1028 200c HBA355i Front
+ 1028 200d HBA355e Adapter
+ 1028 200e HBA355i MX
+ 1d49 0205 ThinkSystem 440-16i SAS/SATA PCIe Gen4 12Gb Internal HBA
+ 1d49 0206 ThinkSystem 440-16e SAS/SATA PCIe Gen4 12Gb HBA
00e7 Fusion-MPT 12GSAS/PCIe Unsupported SAS38xx
+# Tampered part
+ 1028 200b HBA355i Adapter Tampered
+# Tampered part
+ 1028 200c HBA355i Front Tampered
+# Tampered part
+ 1028 200d HBA355e Adapter Tampered
+# Tampered part
+ 1028 200e HBA350i MX Tampered
02b0 Virtual Endpoint on PCIe Switch
1d49 0001 ThinkSystem 1610-4P NVMe Switch Adapter
1d49 0002 ThinkSystem 810-4P NVMe Switch Adapter
0901 61C102
1000 63C815
10e0 MegaRAID 12GSAS/PCIe Unsupported SAS39xx
+ 1028 1ae0 PERC H755 Adapter - Invalid Device
+ 1028 1ae1 PERC H755 Front - Invalid Device
+ 1028 1ae2 PERC H755N Front - Invalid Device
+ 1028 1ae3 PERC H755 MX - Invalid Device
10e1 MegaRAID 12GSAS/PCIe SAS39xx
1028 1ae0 PERC H755 Adapter
1028 1ae1 PERC H755 Front
1028 1ae2 PERC H755N Front
1028 1ae3 PERC H755 MX
+ 1d49 060a ThinkSystem RAID 940-8i 4GB Flash PCIe Gen4 12Gb Adapter
+ 1d49 060b ThinkSystem RAID 940-8i 8GB Flash PCIe Gen4 12Gb Adapter
+ 1d49 060c ThinkSystem RAID 940-16i 8GB Flash PCIe Gen4 12Gb Adapter
+ 1d49 060d ThinkSystem RAID 940-16i 8GB Flash PCIe Gen4 12Gb Internal Adapter
+ 1d49 060e ThinkSystem RAID 940-32i 8GB Flash PCIe Gen4 12Gb Adapter
+ 1d49 060f ThinkSystem RAID 940-8e 4GB Flash PCIe Gen4 12Gb Adapter
10e2 MegaRAID 12GSAS/PCIe Secure SAS39xx
1028 1ae0 PERC H755 Adapter
1028 1ae1 PERC H755 Front
1028 1ae2 PERC H755N Front
1028 1ae3 PERC H755 MX
+ 1d49 060a ThinkSystem RAID 940-8i 4GB Flash PCIe Gen4 12Gb Adapter
+ 1d49 060b ThinkSystem RAID 940-8i 8GB Flash PCIe Gen4 12Gb Adapter
+ 1d49 060c ThinkSystem RAID 940-16i 8GB Flash PCIe Gen4 12Gb Adapter
+ 1d49 060d ThinkSystem RAID 940-16i 8GB Flash PCIe Gen4 12Gb Internal Adapter
+ 1d49 060e ThinkSystem RAID 940-32i 8GB Flash PCIe Gen4 12Gb Adapter
+ 1d49 060f ThinkSystem RAID 940-8e 4GB Flash PCIe Gen4 12Gb Adapter
10e3 MegaRAID 12GSAS/PCIe Unsupported SAS39xx
+ 1028 1ae0 PERC H755 Adapter - Tampered Device
+ 1028 1ae1 PERC H755 Front - Tampered Device
+ 1028 1ae2 PERC H755N Front - Tampered Device
+ 1028 1ae3 PERC H755 MX - Tampered Device
10e4 MegaRAID 12GSAS/PCIe Unsupported SAS38xx
10e5 MegaRAID 12GSAS/PCIe SAS38xx
10e6 MegaRAID 12GSAS/PCIe Secure SAS38xx
131c Kaveri [Radeon R7 Graphics]
131d Kaveri [Radeon R6 Graphics]
13e9 Ariel
+ 1478 Navi 10 XL Upstream Port of PCI Express Switch
+ 1479 Navi 10 XL Downstream Port of PCI Express Switch
154c Kryptos
154e Garfield
1551 Arlene
1552 Pooky
1561 Anubis
15d8 Picasso
+ 103c 8615 Pavilion Laptop 15-cw1xxx
15dd Raven Ridge [Radeon Vega Series / Radeon Vega Mobile Series]
103c 83c6 Radeon Vega 8 Mobile
1458 d000 Radeon RX Vega 11
15de Raven/Raven2/Fenghuang HDMI/DP Audio Controller
+ 103c 8615 Pavilion Laptop 15-cw1xxx
15df Raven/Raven2/Fenghuang/Renoir Cryptographic Coprocessor
+ 103c 8615 Pavilion Laptop 15-cw1xxx
15ff Fenghuang [Zhongshan Subor Z+]
1607 Arden
1636 Renoir
1787 a480 Radeon RX 480
1849 5001 Phantom Gaming X RX 580 OC
1da2 e353 Radeon RX 570 Pulse 4GB
- 1da2 e366 Nitro+ Radeon RX 570/580
+ 1da2 e366 Nitro+ Radeon RX 570/580/590
67e0 Baffin [Radeon Pro WX 4170]
103c 8270 Radeon Pro WX 4170
103c 8272 Radeon Pro WX 4170
67e9 Baffin [Polaris11]
67eb Baffin [Radeon Pro V5300X]
67ef Baffin [Radeon RX 460/560D / Pro 450/455/460/555/555X/560/560X]
+ 1028 1703 RX 560D OEM OC 2 GB
103c 3421 Radeon RX 460
106b 0160 Radeon Pro 460
106b 0166 Radeon Pro 455
1028 1726 Radeon RX 560DX
103c 8479 Radeon RX 560X Mobile
1043 04bc Radeon RX 560
+ 1043 052f Radeon RX 560
1458 22ed Radeon RX 560
148c 2381 Radeon RX 560
1682 9560 Radeon RX 560
174b e180 Radeon HD 7350
17af 3015 Radeon HD 7350
68fe Cedar LE
- 6900 Topaz XT [Radeon R7 M260/M265 / M340/M360 / M440/M445]
+ 6900 Topaz XT [Radeon R7 M260/M265 / M340/M360 / M440/M445 / 530/535 / 620/625 Mobile]
1025 1056 Radeon R7 M360 / R8 M365DX
1028 0640 Radeon R7 M260/M265
1028 0643 Radeon R7 M260/M265
174b e329 Radeon R9 FURY
7310 Navi 10
731f Navi 10 [Radeon RX 5700 / 5700 XT]
+ 7340 Navi 14 [Radeon RX 5500 / 5500M]
7833 RS350 Host Bridge
7834 RS350 [Radeon 9100 PRO/XT IGP]
7835 RS350M [Mobility Radeon 9000 IGP]
15bc Stoney PCIe [GFX,GPP] Bridge [4:0]
15be Stoney Audio Processor
15d0 Raven/Raven2 Root Complex
+ 103c 8615 Pavilion Laptop 15-cw1xxx
15d1 Raven/Raven2 IOMMU
+ 103c 8615 Pavilion Laptop 15-cw1xxx
15d2 Raven/Raven2 PCIe Dummy Host Bridge
15d3 Raven/Raven2 PCIe GPP Bridge [6:0]
15d4 FireFlight USB 3.1
15de Raven/Raven2/FireFlight HD Audio Controller
15df Family 17h (Models 10h-1fh) Platform Security Processor
15e0 Raven USB 3.1
+ 103c 8615 Pavilion Laptop 15-cw1xxx
15e1 Raven USB 3.1
+ 103c 8615 Pavilion Laptop 15-cw1xxx
15e2 Raven/Raven2/FireFlight/Renoir Audio Processor
15e3 Family 17h (Models 10h-1fh) HD Audio Controller
+ 103c 8615 Pavilion Laptop 15-cw1xxx
15e4 Raven/Raven2/Renoir Sensor Fusion Hub
15e5 Raven2 USB 3.1
15e6 Raven/Raven2/Renoir Non-Sensor Fusion Hub KMDF driver
+ 1022 15e4 Raven/Raven2/Renoir Sensor Fusion Hub
15e8 Raven/Raven2 Device 24: Function 0
15e9 Raven/Raven2 Device 24: Function 1
15ea Raven/Raven2 Device 24: Function 2
103c 1985 Pavilion 17-e163sg Notebook PC
7900 FCH SATA Controller [IDE mode]
7901 FCH SATA Controller [AHCI mode]
+ 103c 8615 Pavilion Laptop 15-cw1xxx
7902 FCH SATA Controller [RAID mode]
7903 FCH SATA Controller [RAID mode]
7904 FCH SATA Controller [AHCI mode]
7906 FCH SD Flash Controller
7908 FCH USB EHCI Controller
790b FCH SMBus Controller
+ 103c 8615 Pavilion Laptop 15-cw1xxx
790e FCH LPC Bridge
+ 103c 8615 Pavilion Laptop 15-cw1xxx
790f FCH PCI Bridge
7914 FCH USB XHCI Controller
9600 RS780 Host Bridge
81c3 VO-4 [PSP TOOL Video Output Device]
81ce SxS Pro memory card
81ff PS3 TOOL MRP
+ 8200 PS3 TOOL RSX Tracing FPGA
820e CXD9208GP [PS3 PS2 emulation subsystem adapter]
# 2nd ID
905c SxS Pro memory card
1654 FastLinQ QL45000 Series 50GbE Controller
1077 0032 QL45212 Flex 50Gb 2-port Ethernet Adapter
1590 0223 Synergy 6810C 25/50Gb Ethernet Adapter
+ 1590 0287 Synergy 6820C 25/50Gb CNA
1656 FastLinQ QL45000 Series 25GbE Controller
1077 0033 QL45214 Flex 25Gb 4-port Ethernet Adapter
1077 02a7 QL45212-DE 25GbE Adapter
1077 02e4 QLE2772 Dual Port 32GFC PCIe Gen4 x8 Adapter
1077 02ee QLE2870 Single Port 64GFC PCIe Gen4 x8 Adapter
1077 02f0 QLE2770 Single Port 32GFC PCIe Gen4 x8 Adapter
+ 1590 02d3 SN1610Q - 1P Enhanced 32GFC Single Port Fibre Channel Host Bus Adapter
+ 1590 02d4 SN1610Q – 2P Enhanced 32GFC Dual Port Fibre Channel Host Bus Adapter
2300 QLA2300 64-bit Fibre Channel Adapter
2312 ISP2312-based 2Gb Fibre Channel to PCI-X HBA
103c 0131 2Gb Fibre Channel - Single port [A7538A]
1077 0012 FastLinQ QL41112H 10GbE Adapter
1077 0019 QL41232HOCU - Dual Port 25/10GbE SFP28 OCP Adapter
1077 0039 QLogic QL41262 PCIe 25Gb 2-Port SFP28 Ethernet Adapter
+ 1077 0053 QLogic 2x25GE QL41232HQCU NIC
+ 1077 0054 2x10GE QL41132HQRJ NIC
+ 1077 0055 QLogic 2x10GE QL41132HQCU NIC
+ 1077 0056 2x10GE QL41132HxRJ NIC
+ 1077 0057 2x25GE QL41232HxCU NIC
1590 021a 10GbE 2P QL41162HLRJ-HP Adapter
1590 021b 10GbE 2P QL41162HLRJ-HP Adapter
1590 021d 10/25GbE 2P QL41222HLCU-HP Adapter
1077 0010 2x25GE QL41232HMKR NIC
1077 0011 FastLinQ QL41212H 25GbE Adapter (SR-IOV VF)
1077 0012 FastLinQ QL41112H 10GbE Adapter (SR-IOV VF)
+ 1077 0053 QLogic 2x25GE QL41232HQCU NIC
+ 1077 0054 QLogic 2x10GE QL41132HQRJ NIC
+ 1077 0055 QLogic 2x10GE QL41132HQCU NIC
+ 1077 0056 2x10GE QL41132HxRJ NIC
+ 1077 0057 2x25GE QL41232HxCU NIC
1590 021a 10GbE 2P QL41162HLRJ-HP Adapter
1590 021b 10GbE 2P QL41162HLRJ-HP Adapter
1590 021e 10/25GbE 2P QL41162HMRJ-HP Adapter
1093 7802 PXIe-4302
1093 7803 PXIe-4303
1093 7805 PXIe-4305
+ 1093 786f PXIe-4163
1093 788e PXIe-4304
1093 78f8 NI FlexRIO Module (KU035)
1093 78f9 NI FlexRIO Module (KU040)
1093 78fa NI FlexRIO Module (KU060)
+ 1093 78ff PXIe-4162
1093 7995 PXIe-7911R
1093 7996 PXIe-7912R
1093 7997 PXIe-7915R
0e0f GK208 HDMI/DP Audio Controller
0e12 TegraK1 PCIe x4 Bridge
0e13 TegraK1 PCIe x1 Bridge
- 0e1a GK110 HDMI Audio
+ 0e1a GK110 High Definition Audio Controller
0e1b GK107 HDMI Audio Controller
103c 197b ZBook 15
1043 8428 GTX650-DC-1GD5
0fc0 GK107 [GeForce GT 640 OEM]
0fc1 GK107 [GeForce GT 640]
0fc2 GK107 [GeForce GT 630 OEM]
- 0fc5 GK107
+ 0fc5 GK107 [GeForce GT 1030]
0fc6 GK107 [GeForce GTX 650]
1043 8428 GTX650-DC-1GD5
0fc8 GK107 [GeForce GT 740]
106b 010d iMac 13,2
11a7 GK104M [GeForce GTX 675MX]
11af GK104GLM [GRID IceCube]
-# GRID K2 Quadro USM
- 11b0 GK104GL [GRID K240Q\K260Q vGPU]
+ 11b0 GK104GL [GRID K240Q / K260Q vGPU]
10de 101a GRID K240Q
10de 101b GRID K260Q
11b1 GK104GL [GRID K2 Tesla USM]
17c2 GM200 [GeForce GTX TITAN X]
17c8 GM200 [GeForce GTX 980 Ti]
17f0 GM200GL [Quadro M6000]
+ 10de 1141 VCA 6000
17f1 GM200GL [Quadro M6000 24GB]
17fd GM200GL [Tesla M40]
- 1ad6 TU102 USB 3.1 Controller
- 1ad7 TU102 UCSI Controller
+ 1ad6 TU102 USB 3.1 Host Controller
+ 1ad7 TU102 USB Type-C UCSI Controller
+ 1ad8 TU104 USB 3.1 Host Controller
+ 1ad9 TU104 USB Type-C UCSI Controller
1ada TU106 USB 3.1 Host Controller
1043 8673 TURBO-RTX2070-8G
- 1adb TU106 USB Type-C Port Policy Controller
+ 1adb TU106 USB Type-C UCSI Controller
1043 8673 TURBO-RTX2070-8G
+ 1aeb TU116 High Definition Audio Controller
1b00 GP102 [TITAN X]
1b01 GP102 [GeForce GTX 1080 Ti 10GB]
1b02 GP102 [TITAN Xp]
e100 Proteus-X: LightPulse IOV Fibre Channel Host Adapter
e131 LightPulse 8Gb/s PCIe Shared I/O Fibre Channel Adapter
e180 Proteus-X: LightPulse IOV Fibre Channel Host Adapter
- e200 Lancer: LPe16000 Fibre Channel Host Adapter
- 1014 03f1 PCIe2 16 Gb 2-port Fibre Channel Adapter (FC EL5B; CCIN 577F)
+ e200 LPe15000/LPe16000 Series 8Gb/16Gb Fibre Channel Adapter
+ 1014 03f1 PCIe2 2-Port 16Gb Fibre Channel Adapter for POWER (FC EL5B; CCIN 577F)
+ 1014 04e3 PCIe3 4-Port 10GbE SR Adapter for POWER (FC EN15/EN16; CCIN 2CE3)
+ 1014 04e4 PCIe3 4-Port 10GbE SFP+ Adapter for POWER (FC EN18; CCIN 2CE4)
+ 10df e280 LPe16002B-M6 2-Port 16Gb Fibre Channel Adapter
+ 10df e281 LPe16000B-M6 1-Port 16Gb Fibre Channel Adapter
10df e282 Flex System FC5054 4-port 16Gb FC Adapter
e208 LightPulse 16Gb Fibre Channel Host Adapter (Lancer-VF)
e220 OneConnect NIC (Lancer)
e240 OneConnect iSCSI Initiator (Lancer)
e260 OneConnect FCoE Initiator (Lancer)
e268 OneConnect 10Gb FCoE Converged Network Adapter (Lancer-VF)
- e300 Lancer Gen6: LPe32000 Fibre Channel Host Adapter
- 10df e310 Lancer Gen6: LPe31000 Fibre Channel Host Adapter
- 10df e311 Lancer Gen6: LPe31000 Fibre Channel Host Adapter
- 10df e312 Lancer Gen6: LPe31000 Fibre Channel Host Adapter
- 10df e322 Lancer Gen6: LPe31000 Fibre Channel Host Adapter
- 10df e323 Lancer Gen6: LPe31000 Fibre Channel Host Adapter
- 10df e325 Lancer Gen6: LPe31000 Fibre Channel Host Adapter
- 10df e332 Lancer Gen6: LPe31000 Fibre Channel Host Adapter
- 10df e333 Lancer Gen6: LPe31000 Fibre Channel Host Adapter
+ e300 LPe31000/LPe32000 Series 16Gb/32Gb Fibre Channel Adapter
+ 1014 0614 PCIe3 4-Port 16Gb Fibre Channel Adapter for POWER (FC EN1C/EN1D; CCIN 578E)
+ 1014 0615 PCIe3 2-Port 32Gb Fibre Channel Adapter for POWER (FC EN1A/EN1B; CCIN 578F)
+ 10df e300 LPe32002-M2 2-Port 32Gb Fibre Channel Adapter
+ 10df e301 LPe32000-M2 1-Port 32Gb Fibre Channel Adapter
+ 10df e310 LPe31002-M6 2-Port 16Gb Fibre Channel Adapter
+ 10df e311 LPe31000-M6 1-Port 16Gb Fibre Channel Adapter
+ 10df e312 LPe31004-M6 4-Port 16Gb Fibre Channel Adapter
+ 10df e320 LPe32002-M2-D 2-Port 32Gb Fibre Channel Adapter
+ 10df e321 LPe32000-M2-D 1-Port 32Gb Fibre Channel Adapter
+ 10df e322 LPe31002-M6-D 2-Port 16Gb Fibre Channel Adapter
+ 10df e323 LPe31000-M6-D 1-Port 16Gb Fibre Channel Adapter
+ 10df e324 LPm32002-D 2-Port 32Gb Fibre Channel Mezz Card
+ 10df e325 LPm31002-D 2-Port 16Gb Fibre Channel Mezz Card
+ 10df e330 LPe32002-M2-L 2-Port 32Gb PCIe Fibre Channel Adapter
+ 10df e331 LPe32000-M2-L 1-Port 32Gb PCIe Fibre Channel Adapter
+ 10df e332 LPe31002-M6-L 2-Port 16Gb PCIe Fibre Channel Adapter
+ 10df e333 LPe31000-M6-L 1-Port 16Gb PCIe Fibre Channel Adapter
+ 1590 0201 StoreFabric SN1600E 1-Port 32Gb Fibre Channel Adapter
+ 1590 0202 StoreFabric SN1600E 2-Port 32Gb Fibre Channel Adapter
+ 1590 0213 StoreFabric SN1200E 1-Port 16Gb Fibre Channel Adapter
+ 1590 0214 StoreFabric SN1200E 2-Port 16Gb Fibre Channel Adapter
+ 1590 022e Synergy 5330C 2-Port 32Gb Fibre Channel Mezz Card
f011 Saturn: LightPulse Fibre Channel Host Adapter
f015 Saturn: LightPulse Fibre Channel Host Adapter
f085 LP850 Fibre Channel Host Adapter
f0e1 Zephyr LightPulse Fibre Channel Host Adapter
f0e5 Zephyr LightPulse Fibre Channel Host Adapter
f0f5 Neptune LightPulse Fibre Channel Host Adapter
- f100 Saturn-X: LightPulse Fibre Channel Host Adapter
+ f100 LPe12000 Series 8Gb Fibre Channel Adapter
1014 038a 8Gb PCI Express Dual Port FC Adapter for POWER
103c 3282 8Gb Dual-port PCI-e FC HBA
+ 10df f140 LPe12000-M8-L 1-Port 8Gb PCIe Fibre Channel Adapter
+ 10df f141 LPe12002-M8-L 2-Port 8Gb PCIe Fibre Channel Adapter
f111 Saturn-X LightPulse Fibre Channel Host Adapter
f112 Saturn-X LightPulse Fibre Channel Host Adapter
f180 LPSe12002 EmulexSecure Fibre Channel Adapter
- f400 LPe36000 Fibre Channel Host Adapter [Prism]
- 10df f401 LPe35000 Fibre Channel Host Adapter [Prism]
- 10df f402 LPe35000 Fibre Channel Host Adapter [Prism]
- 10df f405 LPe35000 Fibre Channel Host Adapter [Prism]
+ f400 LPe35000/LPe36000 Series 32Gb/64Gb Fibre Channel Adapter
+ 10df f401 LPe35000-M2 1-Port 32Gb Fibre Channel Adapter
+ 10df f402 LPe35002-M2 2-Port 32Gb Fibre Channel Adapter
+ 10df f403 LPe36000-M64 1-Port 64Gb Fibre Channel Adapter
+ 10df f404 LPe36002-M64 2-Port 64Gb Fibre Channel Adapter
+ 10df f405 LPe35004-M2 4-Port 32Gb Fibre Channel Adapter
+ 10df f406 LPe35004-X6 4-Port Fibre Channel Adapter
10df f410 LPe35002-M2-D 2-Port 32Gb Fibre Channel Adapter
10df f411 LPe35000-M2-D 1-Port 32Gb Fibre Channel Adapter
- 10df f418 LPe35000 Fibre Channel Host Adapter [Prism]
- 10df f419 LPe35000 Fibre Channel Host Adapter [Prism]
+ 10df f418 LPe35000-M2-L 1-Port 32Gb PCIe Fibre Channel Adapter
+ 10df f419 LPe35002-M2-L 2-Port 32Gb PCIe Fibre Channel Adapter
+ 1590 02d5 StoreFabric SN1610E 1-Port 32Gb Fibre Channel Adapter
+ 1590 02d6 StoreFabric SN1610E 2-Port 32Gb Fibre Channel Adapter
f700 LP7000 Fibre Channel Host Adapter
f701 LP7000 Fibre Channel Host Adapter Alternate ID (JX1:2-3, JX2:1-2)
f800 LP8000 Fibre Channel Host Adapter
1186 0300 DE-528
1259 2400 AT-2400
1af4 1100 QEMU Virtual Machine
+ 8125 RTL8125 2.5GbE Controller
8129 RTL-8129
10ec 8129 RT8129 Fast Ethernet Adapter
11ec 8129 RTL8111/8168 PCIe Gigabit Ethernet (misconfigured)
1028 0283 Vostro 220
1028 04b2 Vostro 3350
1028 04da Vostro 3750
+ 1028 06f2 Latitude 3470
1028 06f3 Latitude 3570
103c 1611 Pavilion DM1Z-3000
103c 1950 ProBook 450/455
103c 2a6f Asus IPIBL-LB Motherboard
+ 103c 8615 Pavilion Laptop 15-cw1xxx
+ 1043 11f5 Notebook motherboard (one of many models)
1043 16d5 U6V/U31J laptop
1043 81aa P5B
1043 82c6 M3A78 Series Motherboard
b723 RTL8723BE PCIe Wireless Network Adapter
10ec 8739 Dell Wireless 1801
b822 RTL8822BE 802.11a/b/g/n/ac WiFi adapter
+ 103c 831b Realtek RTL8822BE 802.11ac 2 × 2 Wi-Fi + Bluetooth 4.2 Combo Adapter (MU-MIMO supported)
c821 RTL8821CE 802.11ac PCIe Wireless Network Adapter
d723 RTL8723DE 802.11b/g/n PCIe Adapter
10ed Ascii Corporation
1177 Silicon Engineering
1178 Alfa, Inc.
afa1 Fast Ethernet Adapter
-1179 Toshiba America Info Systems
+1179 Toshiba Corporation
0102 Extended IDE Controller
0103 EX-IDE Type-B
010f NVMe Controller
1028 1ffc Express Flash NVMe 1.92T (RI) U.2 (CD5)
1028 1ffd Express Flash NVMe 3.84T (RI) U.2 (CD5)
1028 1ffe Express Flash NVMe 7.68T (RI) U.2 (CD5)
+ 1179 0001 KIOXIA CM5-R series SSD
+ 1179 0021 KIOXIA CD5 series SSD
1d49 4039 Thinksystem U.2 CM5 NVMe SSD
1d49 403a Thinksystem AIC CM5 NVMe SSD
0113 BG3 NVMe SSD Controller
103c 30cf Pavilion dv95xx/96xx/97xx/98xx series
1043 1237 A6J-Q008
1043 1967 V6800V
+ 104d 9035 VAIO VGN-FW11ZRU
144d c018 X20 IV
17aa 20ca ThinkPad T61/T400
0811 R5C811
11fb Datel Inc
11fc Silicon Magic
11fd High Street Consultants
-11fe Comtrol Corporation
+11fe Pepperl+Fuchs Comtrol, Inc.
0001 RocketPort PCI 32-port w/external I/F
0002 RocketPort PCI 8-port w/external I/F
0003 RocketPort PCI 16-port w/external I/F
12b4 FutureTel Inc
12b5 Granite Systems Inc.
12b6 Natural Microsystems
-12b7 Cognex Modular Vision Systems Div. - Acumen Inc.
+12b7 Cognex Corporation
12b8 Korg
# Nee US Robotics
12b9 3Com Corp, Modem Division
12d8 Pericom Semiconductor
01a7 7C21P100 2-port PCI-X to PCI-X Bridge
2304 PI7C9X2G304 EL/SL PCIe2 3-Port/4-Lane Packet Switch
+ 2404 PI7C9X2G404 EL/SL PCIe2 4-Port/4-Lane Packet Switch
2608 PI7C9X2G608GP PCIe2 6-Port/8-Lane Packet Switch
400a PI7C9X442SL PCI Express Bridge Port
400e PI7C9X442SL USB OHCI Controller
10cf 1279 LifeBook E8010D
165f NetXtreme BCM5720 2-port Gigabit Ethernet PCIe
1028 04f7 PowerEdge R320 server
+ 1028 08ff PowerEdge Rx5xx LOM Board
+ 1028 0900 PowerEdge C6525 LOM
103c 1786 NC332T Adapter
103c 193d NC332i Adapter
103c 2133 NC332i Adapter
1028 0179 Optiplex GX280
1028 0182 Latitude D610
1028 0187 Precision M70
+ 1028 01a3 Latitude X1
1028 01a8 Precision 380
1028 01ad OptiPlex GX620
103c 3006 DC7100 SFF(DX878AV)
14e4 1202 BCM957412M4122C OCP 1x25G Type1 wRoCE
14e4 1402 BCM957414A4142CC 10Gb/25Gb Ethernet PCIe
14e4 1404 BCM957414M4142C OCP 2x25G Type1 wRoCE
+ 14e4 4140 NetXtreme E-Series Advanced Dual-port 25Gb SFP28 Network Daughter Card
1590 020e Ethernet 25Gb 2-port 631SFP28 Adapter
1590 0211 Ethernet 25Gb 2-port 631FLR-SFP28 Adapter
16d8 BCM57416 NetXtreme-E Dual-Media 10G RDMA Ethernet Controller
1028 0209 XPS M1330
103c 30c0 Compaq 6710b
17aa 3a23 IdeaPad S10e
+ 1750 BCM57508 NetXtreme-E 10Gb/25Gb/40Gb/50Gb/100Gb/200Gb Ethernet
+ 1751 BCM57504 NetXtreme-E 10Gb/25Gb/40Gb/50Gb/100Gb/200Gb Ethernet
+ 1752 BCM57502 NetXtreme-E 10Gb/25Gb/40Gb/50Gb Ethernet
+ 1806 BCM5750X NetXtreme-E Ethernet Virtual Function
+ 1807 BCM5750X NetXtreme-E RDMA Virtual Function
3352 BCM3352
3360 BCM3360
4210 BCM4210 iLine10 HomePNA 2.0
43bc BCM43602 802.11ac Wireless LAN SoC
43d3 BCM43567 802.11ac Wireless Network Adapter
43d9 BCM43570 802.11ac Wireless Network Adapter
+ 43dc BCM4355 802.11ac Wireless LAN SoC
43df BCM4354 802.11ac Wireless LAN SoC
43e9 BCM4358 802.11ac Wireless LAN SoC
43ec BCM4356 802.11ac Wireless Network Adapter
4412 BCM4412 10/100BaseT
4430 BCM44xx CardBus iLine32 HomePNA 2.0
4432 BCM4432 CardBus 10/100BaseT
+ 4464 BCM4364 802.11ac Wireless Network Adapter
4610 BCM4610 Sentry5 PCI to SB Bridge
4611 BCM4610 Sentry5 iLine32 HomePNA 1.0
4612 BCM4610 Sentry5 V.90 56k Modem
5841 BCM5841 Crypto Accelerator
5850 BCM5850 Crypto Accelerator
5e87 Valkyrie offload engine
+ 5e88 Viper Offload Engine
8602 BCM7400/BCM7405 Serial ATA Controller
9026 CN99xx [ThunderX2] Integrated USB 3.0 xHCI Host Controller
9027 CN99xx [ThunderX2] Integrated AHCI/SATA 3 Host Controller
b880 BCM56880 Switch ASIC
# Tomahawk
b960 Broadcom BCM56960 Switch ASIC
+# Tomahawk4
+ b990 BCM56990 Switch ASIC
d802 BCM58802 Stingray 50Gb Ethernet SoC
14e4 8021 Stingray Dual-Port 25Gb Ethernet PCIe SmartNIC w16GB DRAM (Part No BCM958802A8046C)
14e4 8023 PS410T-H04 NetXtreme-S 4x10G 10GBaseT PCIe SmartNIC
14e4 8024 Stingray Dual-Port 25Gb Ethernet PCIe SmartNIC w4GB DRAM (Part No BCM958802A8044C)
14e4 8028 Stingray Dual-Port 25Gb Ethernet PCIe SmartNIC w8GB DRAM (Part No BCM958802A8048C)
+ 1bb0 0021 HPE SimpliVity Accelerator
d804 BCM58804 Stingray 100Gb Ethernet SoC
14e5 Pixelfusion Ltd
14e6 SHINING Technology Inc
0070 2259 WinTV HVR-1250
0070 6a18 WinTV-quadHD
0070 c108 WinTV-HVR-4400-HD model 1278
+ 1461 3100 CE310B SD PCIe Video Capture Card
5654 2389 GoTView X5 DVD Hybrid PCI-E
5654 2390 GoTView X5 3D HYBRID PCI-E
14f2 MOBILITY Electronics
110f PCI Express Core Reference Design Virtual Function
1110 XpressRich Reference Design
1113 XpressSwitch
+ be00 PCI Express Bridge
1557 MEDIASTAR Co Ltd
1558 CLEVO/KAPOK Computer
1559 SI LOGIC Ltd
0213 MT2892 Family [ConnectX-6 Dx Secure Flash Recovery]
0214 MT42822 Family [BlueField-2 SoC Flash Recovery]
0215 MT42822 Family [BlueField-2 Secure Flash Recovery]
+ 0216 MT2894 Family [ConnectX-6 Lx Flash Recovery]
+ 0217 MT2894 Family [ConnectX-6 Lx Secure Flash Recovery]
024e MT53100 [Spectrum-2, Flash recovery mode]
024f MT53100 [Spectrum-2, Secure Flash recovery mode]
0250 Spectrum-3, Flash recovery mode
0251 Spectrum-3, Secure Flash recovery mode
0252 Amos chiplet
+ 0254 Spectrum-4, Flash recovery mode
+ 0255 Spectrum-4, Secure Flash recovery mode
+ 0256 Ofek chiplet
+ 0257 Quantum-2 in Flash Recovery Mode
0262 MT27710 [ConnectX-4 Lx Programmable] EN
0263 MT27710 [ConnectX-4 Lx Programmable Virtual Function] EN
0264 Innova-2 Flex Burn image
15b3 0003 Mellanox Technologies ConnectX-4 Stand-up single-port 40GbE MCX413A-BCAT
15b3 0005 Mellanox Technologies ConnectX-4 Stand-up single-port 40GbE MCX415A-BCAT
15b3 0006 MCX416A-BCAT, ConnectX-4 EN, 40/56GbE 2P, PCIe3.0 x16
+ 15b3 0007 ConnectX-4 EN network interface card, 40/56GbE dual-port QSFP28, PCIe3.0 x16, tall bracket
15b3 0008 ConnectX-4 Stand-up dual-port 100GbE MCX416A-CCAT
15b3 0033 ConnectX-4 VPI IB EDR/100 GbE Single Port QSFP28 Adapter
15b3 0034 ConnectX-4 VPI IB EDR/100 GbE Dual Port QSFP28 Adapter
101c MT28908 Family [ConnectX-6 Virtual Function]
101d MT2892 Family [ConnectX-6 Dx]
101e ConnectX Family mlx5Gen Virtual Function
- 101f MT28851
+ 101f MT2894 Family [ConnectX-6 Lx]
1020 MT28860
1021 MT28861
1974 MT28800 Family [ConnectX-5 PCIe Bridge]
cf08 Switch-IB2
cf6c MT53100 [Spectrum-2]
cf70 Spectrum-3
+ cf80 Spectrum-4
d2f0 Quantum HDR (200Gbps) switch
+ d2f2 Quantum-2 NDR (400Gbps) switch
15b4 CCI/TRIAD
15b5 Cimetrics Inc
15b6 Texas Memory Systems Inc
1a32 0303 EM303 802.11bgn Wireless Mini PCIe Card [AR9281]
1a32 0306 EM306 802.11bgn Wireless Half-size Mini PCIe Card [AR9283]
1a3b 1067 AW-NE771 802.11bgn Wireless Mini PCIe Card [AR9281]
+ 1a3b 1071 AW-NE772 802.11abgn Wireless Mini PCIe Card [AR9280]
1a3b 1081 AW-NE773 802.11abgn Wireless Half-size Mini PCIe Card [AR9280]
002b AR9285 Wireless Network Adapter (PCI-Express)
1028 0204 Wireless 1502 802.11bgn Half-size Mini PCIe Card
16b8 Sonnet Technologies, Inc.
16be Creatix Polymedia GmbH
16c3 Synopsys, Inc.
- abcd DWC_usb3
+ abcd DWC_usb3 / PCIe bridge
abce DWC_usb3
abcf DWC_usb31
edda EPMockUp
# HT1000 uses 3 IDs 1166:024a (Native SATA Mode), 1166:024b (PATA/IDE Mode), 182f:000b (RAID Mode) depends on SATA BIOS setting
000b BCM5785 [HT1000] SATA (RAID Mode)
1830 Credence Systems Corporation
+ 8000 CPIn
+ 8001 CPId
+ 8002 CPIx
+ 8003 CPIq
183b MikroM GmbH
08a7 MVC100 DVI
08a8 MVC101 SDI
0202 Hi1822 Family (2*32G FC)
0203 Hi1822 Family (2*16G FC)
0205 Hi1822 Family (2*100GE)
+ 0206 Hi1822 Family (2*25GE)
0210 Hi1822 Family (4*25GE)
+ 0211 Hi1822 Family (4*25GE)
0212 Hi1822 Family (2*8G FC)
1710 iBMA Virtual Network Adapter
1711 Hi1710 [iBMC Intelligent Management system chip w/VGA support]
1822 Hi1822 Family (4*25GE)
371e Hi1822 Family Virtual Bridge
+ 375e Hi1822 Family Virtual Function
+ 379e Hi1822 Family Virtual Function
a120 HiSilicon PCIe Root Port with Gen4
a121 HiSilicon PCI-PCI Bridge
a122 HiSilicon Embedded DMA Engine
1a29 Fortinet, Inc.
4338 CP8 Content Processor ASIC
4e36 NP6 Network Processor
+ 4e37 NP7 Network Processor
1a2b Ascom AG
0000 GESP v1.2
0001 GESP v1.3
5001 25G-PCIE3-8B-2S Security Intelligent Adapter
1c1c Symphony
0001 82C101
+1c1f SoftLab-NSK
1c28 Lite-On IT Corp. / Plextor
0122 M6e PCI Express SSD [Marvell 88SS9183]
# previously Fiberblaze
1c2c Silicom Denmark
000a Capture
000f SmartNIC
- 00a0 FBC4G Capture 4x1Gb
- 00a1 FBC4XG Capture 4x10Gb
- 00a2 FBC8XG Capture 8x10Gb
- 00a3 FBC2XG Capture 2x10Gb
- 00a4 FBC4XGG3 Capture 4x10Gb
- 00a5 FBC2XLG Capture 2x40Gb
+ 00a0 FBC4G Capture 4x1Gb [Herculaneum]
+ 00a1 FBC4XG Capture 4x10Gb [Ancona]
+ 00a2 FBC8XG Capture 8x10Gb [Livorno]
+ 00a3 FBC2XG Capture 2x10Gb [Genoa]
+ 00a4 FBC4XGG3 Capture 4x10Gb [Livigno]
+ 00a5 FBC2XLG Capture 2x40Gb [Livorno]
00a6 FBC1CG Capture 1x100Gb
00a9 FBC2XGHH Capture 2x10Gb
00ad FBC2CGG3HL Capture 2x100Gb [Padua]
00af Capture slave device
00e0 PacketMover 2x100Gb [Savona]
00e1 PacketMover 2x100Gb [Tivoli]
- a001 FBC2CGG3 Capture 2x100Gb [Mango]
+ 00e3 PacketMover 2x10Gb [Tivoli]
+ 00e5 PacketMover 2x10Gb [Corfu]
+ a000 FBC2CGG3 Capture 2x40Gb [Mango_02]
+ a001 FBC2CGG3 Capture 2x100Gb [Mango_02]
+ a003 FBC2CGG3 Capture 16x10Gb [Mango]
+ a007 FBC2CGG3 Capture 2x40Gb [Mango]
+ a008 FBC2CGG3 Capture 2x25Gb [Mango]
+ a009 FBC2CGG3 Capture 16x10Gb [Mango]
+ a00a FBC2CGG3 Capture 8x10Gb [Mango]
a00e FB2CG Capture 2x100Gb [Savona]
a00f FB2CG Capture 2x40Gb [Savona]
a011 FB2CG Capture 2x25Gb [Savona]
1c5c SK hynix
1283 PC300 NVMe Solid State Drive 256GB
1284 PC300 NVMe Solid State Drive 512GB
+ 1285 PC300 NVMe Solid State Drive 1TB
1504 SC300 512GB M.2 2280 SATA Solid State Drive
1c5f Beijing Memblaze Technology Co. Ltd.
0540 PBlaze4 NVMe SSD
1c8c Mobiveil, Inc.
1cb0 Shannon Systems
d000 Venice NVMe SSD
+ 1cb0 2f10 Venice-E Series U.2 SSD
+ 1cb0 2f11 Venice Series U.2 SSD
+ 1cb0 2f12 Venice-X Series U.2 SSD
+ 1cb0 af10 Venice-E Series AIC SSD
+ 1cb0 af11 Venice Series AIC SSD
+ 1cb0 af12 Venice-X Series AIC SSD
1cb1 Collion UG & Co.KG
1cb5 Focusrite Audio Engineering Ltd
0002 Clarett
1cb8 Dawning Information Industry Co., Ltd.
+1cc1 ADATA Technology Co., Ltd.
+ 8201 XPG SX8200 Pro PCIe Gen3x4 M.2 2280 Solid State Drive
1cc4 Union Memory (Shenzhen)
17ab NVMe 256G SSD device
1cc5 Embedded Intelligence, Inc.
0303 Simulyzer-RT CompactPCI Serial PSI5-SIM-1 card
0304 Simulyzer-RT CompactPCI Serial PWR-ANA-1 card
0305 Simulyzer-RT CompactPCI Serial CAN-1 card
+# supports 8x CAN (-FD) interfaces
+ 0306 Simulyzer-RT CompactPCI Serial CAN-2 card (CAN-FD)
1cd7 Nanjing Magewell Electronics Co., Ltd.
0010 Pro Capture Endpoint
0014 PRO CAPTURE AIO 4K PLUS
0722 ZX-200 PCIE P2C bridge
1000 ZX-D Standard Host Bridge
1001 ZX-D/ZX-E Miscellaneous Bus
+ 1003 ZX-E Standard Host Bridge
3001 ZX-100 Standard Host Bridge
300a ZX-100 Miscellaneous Bus
3038 ZX-100/ZX-200/ZX-E Standard Universal PCI to USB Host Controller
345b ZX-100/ZX-D/ZX-E Miscellaneous Bus
3a02 ZX-100 C-320 GPU
3a03 ZX-D C-860 GPU
+ 3a04 ZX-E C-960 GPU
9002 ZX-100/ZX-200 EIDE Controller
9003 ZX-100/ZX-E EIDE Controller
9045 ZX-100/ZX-D/ZX-E RAID Accelerator 0
9101 ZX-200 Traffic Controller
9141 ZX-100 High Definition Audio Controller
9142 ZX-D High Definition Audio Controller
+ 9144 ZX-E High Definition Audio Controller
9180 ZX-200 Networking Gigabit Ethernet Adapter
9202 ZX-100 USB eXtensible Host Controller
9203 ZX-200 USB eXtensible Host Controller
1d6c 2001 DPDK-Aware Virtual Function [Arkville VF]
100e AR-ARKA-FX1 [Arkville 64B DPDK Data Mover]
1d6c 2001 DPDK-Aware Virtual Function [Arkville VF]
+ 100f AR-ARKA-FX1 [Arkville 64B DPDK Data Mover for Versal]
+ 1010 AR-ARKA-FX1 [Arkville 64B DPDK Data Mover for Agilex]
+ 1011 AR-MAN-U50 [Manitou Class Accelerator for U50]
+ 1012 AR-MAN-U200 [Manitou Class Accelerator for U200]
+ 1013 AR-MAN-U250 [Manitou Class Accelerator for U250]
+ 1014 AR-MAN-U280 [Manitou Class Accelerator for U280]
4200 A5PL-E1-10GETI [10 GbE Ethernet Traffic Instrument]
1d72 Xiaomi
1d78 DERA
1d7c Aerotech, Inc.
1d82 NETINT Technologies Inc.
0101 Codensity D400 SSD
+ 0102 Codensity D408 PCIe Gen4 NVMe SSD
0202 Codensity T408 Video Encoding-Decoding Accelerator
1d87 Fuzhou Rockchip Electronics Co., Ltd
0100 RK3399 PCI Express Root Port
1da2 Sapphire Technology Limited
1da3 Habana Labs Ltd.
0001 HL-1000 AI Inference Accelerator [Goya]
+# PCIe accelerator card for Deep Learning training tasks
+ 1000 HL-2000 AI Training Accelerator [Gaudi]
1dbb NGD Systems, Inc.
1dbf Guizhou Huaxintong Semiconductor Technology Co., Ltd
0401 StarDragon4800 PCI Express Root Port
+1dd8 Pensando Systems Inc
+ 1000 DSC Capri Upstream Port
+ 1dd8 4000 Naples 100Gb 2-port QSFP28 x16 8GB
+ 1dd8 4001 Naples 100Gb 2-port QSFP28 x16 4GB
+ 1dd8 4002 Naples 25Gb 2-port SFP28 x8 4GB
+ 1001 DSC Virtual Downstream Port
+ 1dd8 4000 Naples 100Gb 2-port QSFP28 x16 8GB
+ 1dd8 4001 Naples 100Gb 2-port QSFP28 x16 4GB
+ 1dd8 4002 Naples 25Gb 2-port SFP28 x8 4GB
+ 1002 DSC Ethernet Controller
+ 1dd8 4000 Naples 100Gb 2-port QSFP28 x16 8GB
+ 1dd8 4001 Naples 100Gb 2-port QSFP28 x16 4GB
+ 1dd8 4002 Naples 25Gb 2-port SFP28 x8 4GB
+ 1003 DSC Ethernet Controller VF
+ 1dd8 4000 Naples 100Gb 2-port QSFP28 x16 8GB
+ 1dd8 4001 Naples 100Gb 2-port QSFP28 x16 4GB
+ 1dd8 4002 Naples 25Gb 2-port SFP28 x8 4GB
+ 1004 DSC Management Controller
+ 1dd8 4000 Naples 100Gb 2-port QSFP28 x16 8GB
+ 1dd8 4001 Naples 100Gb 2-port QSFP28 x16 4GB
+ 1dd8 4002 Naples 25Gb 2-port SFP28 x8 4GB
+ 1007 DSC Storage Accelerator
+ 1dd8 4000 Naples 100Gb 2-port QSFP28 x16 8GB
+ 1dd8 4001 Naples 100Gb 2-port QSFP28 x16 4GB
+ 1dd8 4002 Naples 25Gb 2-port SFP28 x8 4GB
+1de0 Groq
+ 0000 Q100 Tensor Streaming Processor
1de1 Tekram Technology Co.,Ltd.
0391 TRM-S1040 [DC-315 / DC-395 series]
2020 DC-390
0215 Acorn CLE-215
021f Acorn CLE-215+
1525 Xilinx BCU-1525
+# VU33P FPGA Accelerator
+ 1533 ForestKitten 33
+# JungleCat VU33P Module
+ 1633 JCM33
+# JungleCat VU35P Module
+ 1635 JCM35
1e26 Fujitsu Client Computing Limited
1e38 Thinci, Inc
1e3d Burlywood, Inc
+1e49 Yangtze Memory Technologies Co.,Ltd
1e4c GSI Technology
# Associative Processing Unit chip
0010 Gemini [ Lida ]
1e4c 0120 SE120
1e57 Beijing Panyi Technology Co., Ltd
- 0001 PY8800
- 0100 PY8800
- 0000 0100 PY8800 64GB Accelerator
+1e6b Axiado Corp.
# nee Tumsan Oy
1fc0 Ascom (Finland) Oy
0300 E2200 Dual E1/Rawpipe Card
20f4 TRENDnet
2116 ZyDAS Technology Corp.
21c3 21st Century Computer Corp.
+22b8 Flex-Logix Technologies
+ 22a0 Flex Logix InferX X1 Inference Accelerator
22db Missing Link Electronics, Inc.
2304 Colorgraphic Communications Corp.
2348 Racore
0030 [mvHYPERION-HD-SDI-Merger] HD-SDI PCI Express x4 Frame Grabber
4ddc ILC Data Device Corp
0100 DD-42924I5-300 (ARINC 429 Data Bus)
+ 0300 SB-3620 Motion Feedback Device
+ 0340 SB-3623 Motion Feedback Device
+ 0400 SB-3622 Motion Feedback Device
+ 0500 SB-3621 Motion Feedback Device
+ 0510 SB-3624 Motion Feedback Device
0801 BU-65570I1 MIL-STD-1553 Test and Simulation
0802 BU-65570I2 MIL-STD-1553 Test and Simulation
0811 BU-65572I1 MIL-STD-1553 Test and Simulation
0b02 BU-65569I2 MIL-STD-1553 Data Bus
0b03 BU-65569I3 MIL-STD-1553 Data Bus
0b04 BU-65569I4 MIL-STD-1553 Data Bus
+ 0d01 SB-3641 Motion Feedback Device
+ 0d10 SB-365x Motion Feedback Device
+ 2f00 SB-3642 Motion Feedback Device
+ 3000 SB-3644 Motion Feedback Device
5045 University of Toronto
4243 BLASTbus PCI Interface Card v1
5046 GemTek Technology Corporation
1043 844d P8B WS Motherboard
0172 Xeon E3-1200 v2/3rd Gen Core processor Graphics Controller
0176 3rd Gen Core processor Graphics Controller
+ 02a4 Comet Lake SPI (flash) Controller
+ 02a6 Comet Lake North Peak
+ 02d3 Comet Lake SATA AHCI Controller
+ 02e0 Comet Lake Management Engine Interface
+ 02e8 Serial IO I2C Host Controller
+ 02f0 Wireless-AC 9462
+ 02f9 Comet Lake Thermal Subsytem
+ 02fc Comet Lake Integrated Sensor Solution
0309 80303 I/O Processor PCI-to-PCI Bridge
030d 80312 I/O Companion Chip PCI-to-PCI Bridge
0326 6700/6702PXH I/OxAPIC Interrupt Controller A
1590 0264 NVMe Datacenter SSD [3DNAND] 3.2TB 2.5" U.2 (P4600)
1590 0265 NVMe Datacenter SSD [3DNAND] 6.4TB 2.5" U.2 (P4600)
1590 026c NVMe Datacenter SSD [3DNAND] 4.0TB AIC (P4500)
+ 1d49 4702 Thinksystem Intel P4500 NVMe U.2
+ 1d49 4704 Thinksystem Intel P4500 NVMe AIC
+ 1d49 4712 Thinksystem Intel P4600 NVMe U.2
+ 1d49 4714 Thinksystem Intel P4600 NVMe AIC
1d49 4802 Thinksystem U.2 P4510 NVMe SSD
1d49 4812 Thinksystem U.2 P4610 NVMe SSD
8086 4308 Intel SSD D5-P4320 and D5-P4326
1043 849c P8P67 Deluxe Motherboard
1507 Ethernet Express Module X520-P2
1508 82598EB Gigabit BX Network Connection
+ 1509 82580 Gigabit Network Connection
150a 82576NS Gigabit Network Connection
150b 82598EB 10-Gigabit AT2 Server Adapter
8086 a10c 82598EB 10-Gigabit AT2 Server Adapter
8086 00a1 Ethernet Server Adapter I350-T4
8086 00a2 Ethernet Server Adapter I350-T2
8086 00a3 Ethernet Network Adapter I350-T4 for OCP NIC 3.0
+ 8086 00aa Ethernet Network Adapter I350-T4 for OCP NIC 3.0
8086 5001 Ethernet Server Adapter I350-T4
8086 5002 Ethernet Server Adapter I350-T2
8086 5003 Ethernet 1G 4P I350-t OCP
1531 I210 Gigabit Unprogrammed
1533 I210 Gigabit Network Connection
103c 0003 Ethernet I210-T1 GbE NIC
+ 1059 0180 RD10019 1GbE interface
1093 7706 Compact Vision System Ethernet Adapter
10a9 802c UV300 BaseIO single-port GbE
10a9 802d UV3000 BaseIO GbE Network
1563 Ethernet Controller 10G X550T
1028 1fa8 Ethernet 10G 4P X550/I350 rNDC
1028 1fa9 Ethernet 10G 4P X550 rNDC
+ 1137 02b2 X550-TX 10 Gig LOM
+ 1137 02b3 X550-TX 10 Gig LOM
1170 0001 Intel Ethernet Controller X550-T2 OCP card
14c0 1201 X550 10Gb 2P RJ45 OCP Mezz
1590 00d1 Ethernet 10Gb 2-port 562T Adapter
8086 4005 Ethernet Controller X710 for 10GbE SFP+
8086 4006 Ethernet Controller X710 for 10GbE SFP+
8086 4007 Ethernet Controller X710 for 10GbE SFP+
+ 1574 Ethernet Controller XL710 Emulation
1575 DSL6340 Thunderbolt 3 NHI [Alpine Ridge 2C 2015]
1576 DSL6340 Thunderbolt 3 Bridge [Alpine Ridge 2C 2015]
1577 DSL6540 Thunderbolt 3 NHI [Alpine Ridge 4C 2015]
1028 1f9f Ethernet 40G 2P XL710 QSFP+ rNDC
108e 0000 10 Gb/40 Gb Ethernet Adapter
108e 7b1b 10 Gb/40 Gb Ethernet Adapter
+ 108e 7b1d 10Gb/40Gb Ethernet Adapter
1137 0000 Ethernet Converged NIC XL710-QDA2
1137 013c Ethernet Converged NIC XL710-QDA2
8086 0000 Ethernet Converged Network Adapter XL710-Q2
158a Ethernet Controller XXV710 for 25GbE backplane
1590 0000 10/25Gb Ethernet Adapter
1590 0286 Synergy 4610C 10/25Gb Ethernet Adapter
+ 8086 0000 Ethernet Controller XXV710 for 25GbE backplane
8086 000a Ethernet 25G 2P XXV710 Mezz
158b Ethernet Controller XXV710 for 25GbE SFP28
1137 0000 Ethernet Network Adapter XXV710
1137 0225 Ethernet Network Adapter XXV710
1137 02b4 Ethernet Network Adapter XXV710 OCP 2.0
+ 1590 0000 Ethernet Network Adapter XXV710-2
+ 1590 0253 Ethernet 10/25/Gb 2-port 661SFP28 Adapter
8086 0000 Ethernet Network Adapter XXV710
8086 0001 Ethernet Network Adapter XXV710-2
8086 0002 Ethernet Network Adapter XXV710-2
8086 4001 Ethernet Network Adapter XXV710-2
1591 Ethernet Controller E810-C for backplane
1592 Ethernet Controller E810-C for QSFP
+ 8086 0002 Ethernet Network Adapter E810-C-Q2
+ 8086 0004 Ethernet Network Adapter E810-C-Q2
+ 8086 0005 Ethernet Network Adapter E810-C-Q1 for OCP3.0
+ 8086 0006 Ethernet Network Adapter E810-C-Q2 for OCP3.0
+ 8086 0009 Ethernet Network Adapter E810-C-Q1
1593 Ethernet Controller E810-C for SFP
+ 8086 0002 Ethernet Network Adapter E810-L-2
+ 8086 0005 Ethernet Network Adapter E810-XXV-4
+ 8086 0006 Ethernet Network Adapter E810-XXV-4
+ 8086 0007 Ethernet Network Adapter E810-XXV-4
+ 8086 0008 Ethernet Network Adapter E810-XXV-2
+ 8086 0009 Ethernet Network Adapter E810-XXV-2 for OCP 2.0
15a0 Ethernet Connection (2) I218-LM
15a1 Ethernet Connection (2) I218-V
15a2 Ethernet Connection (3) I218-LM
15f0 JHL7540 Thunderbolt 3 USB Controller [Titan Ridge DD 2018]
15f6 I210 Gigabit Ethernet Connection
15ff Ethernet Controller X710 for 10GBASE-T
+ 1137 0000 X710TLG GbE RJ45 PCIe NIC
+ 1137 02c1 X710T2LG 2x10 GbE RJ45 PCIe NIC
+ 1137 02c2 X710T4LG 4x10 GbE RJ45 PCIe NIC
8086 0000 Ethernet Network Adapter X710-TL
8086 0001 Ethernet Network Adapter X710-T4L
8086 0002 Ethernet Network Adapter X710-T4L
8086 0006 Ethernet 10G 4P X710-T4L-t Adapter
8086 0007 Ethernet 10G 2P X710-T2L-t OCP
8086 0008 Ethernet 10G 4P X710-T4L-t OCP
+ 8086 0009 Ethernet Network Adapter X710-T4L for OCP 3.0
+ 8086 000a Ethernet Network Adapter X710-T4L for OCP 3.0
+ 8086 000b Ethernet Network Adapter X710-T2L for OCP 3.0
+ 8086 000c Ethernet Network Adapter X710-T2L for OCP 3.0
+ 8086 000f Ethernet Network Adapter X710-T2L for OCP 3.0
1600 Broadwell-U Host Bridge -OPI
1601 Broadwell-U PCI Express x16 Controller
1602 Broadwell-U Integrated Graphics
163d Broadwell-U Integrated Graphics
163e Broadwell-U Integrated Graphics
1889 Ethernet Adaptive Virtual Function
+ 18a0 C4xxx Series QAT
+ 18a1 C4XXX Series QAT Virtual Function
1900 Xeon E3-1200 v5/E3-1500 v5/6th Gen Core Processor Host Bridge/DRAM Registers
1901 Xeon E3-1200 v5/E3-1500 v5/6th Gen Core Processor PCIe Controller (x16)
1902 HD Graphics 510
190f Xeon E3-1200 v5/E3-1500 v5/6th Gen Core Processor Host Bridge/DRAM Registers
1910 Xeon E3-1200 v5/E3-1500 v5/6th Gen Core Processor Host Bridge/DRAM Registers
1028 06e4 XPS 15 9550
- 1911 Xeon E3-1200 v5/v6 / E3-1500 v5 / 6th/7th Gen Core Processor Gaussian Mixture Model
+ 1911 Xeon E3-1200 v5/v6 / E3-1500 v5 / 6th/7th/8th Gen Core Processor Gaussian Mixture Model
17aa 2247 ThinkPad T570
17aa 224f ThinkPad X1 Carbon 5th Gen
17aa 225d ThinkPad T480
2018 Sky Lake-E M2PCI Registers
201a Sky Lake-E Non-Transparent Bridge Registers
201c Sky Lake-E Non-Transparent Bridge Registers
+ 201d Volume Management Device NVMe RAID Controller
2020 Sky Lake-E DMI3 Registers
15d9 095d X11SPM-TF
2021 Sky Lake-E CBDMA Registers
2084 Sky Lake-E PCU Registers
2085 Sky Lake-E PCU Registers
2086 Sky Lake-E PCU Registers
+ 2088 Sky Lake-E DDRIO Registers
208d Sky Lake-E CHA Registers
208e Sky Lake-E CHA Registers
2241 Larrabee
2250 Xeon Phi coprocessor 5100 series
225c Xeon Phi coprocessor SE10/7120 series
- 225d Xeon Phi coprocessor 3120 series
+ 225d Xeon Phi coprocessor 3120 series
225e Xeon Phi coprocessor 31S1
2262 Xeon Phi coprocessor 7220
2280 Atom/Celeron/Pentium Processor x5-E8000/J3xxx/N3xxx Series SoC Transaction Register
# same ID possibly also on other ASUS boards
1043 8277 P5K PRO Motherboard
1043 844d P8 series motherboard
+ 1043 8534 ASUS B85-PLUS
1458 5000 Motherboard
1462 7345 MS-7345 Motherboard: Intel 82801I/IR [ICH9/ICH9R]
1462 7418 Wind PC MS-7418
8086 4210 Dual Band Wireless AC 3165
3166 Dual Band Wireless-AC 3165 Plus Bluetooth
3184 UHD Graphics 605
+ 3185 UHD Graphics 605
318c Celeron/Pentium Silver Processor Dynamic Platform and Thermal Framework Processor Participant
318e Celeron/Pentium Silver Processor NorthPeak
+ 3192 Gemini Lake P2SB
3197 Celeron/Pentium Silver Processor PCI-default ISA-bridge
319a Celeron/Pentium Silver Processor Trusted Execution Engine Interface
+ 31a2 Celeron/Pentium Silver Processor Integrated Sensor Solution
31ac Celeron/Pentium Silver Processor Serial IO I2C Host Controller
31ae Celeron/Pentium Silver Processor Serial IO I2C Host Controller
31bc Celeron/Pentium Silver Processor Serial IO UART Host Controller
31c6 Celeron/Pentium Silver Processor Serial IO SPI Host Controller
31cc Celeron/Pentium Silver Processor SDA Standard Compliant SD Host Controller
31d4 Celeron/Pentium Silver Processor Gaussian Mixture Model
+ 31d6 Gemini Lake PCI Express Root Port
+ 31d7 Gemini Lake PCI Express Root Port
+ 31d8 Gemini Lake PCI Express Root Port
+ 31d9 Gemini Lake PCI Express Root Port
+ 31da Gemini Lake PCI Express Root Port
+ 31db Gemini Lake PCI Express Root Port
31ee Celeron/Pentium Silver Processor Serial IO UART Host Controller
+ 31f0 Gemini Lake Host Bridge
3200 GD31244 PCI-X SATA HBA
1775 c200 C2K onboard SATA host bus adapter
3310 IOP348 I/O Processor
34bc Ice Lake-LP PCI Express Root Port #5
34c5 Ice Lake-LP Serial IO I2c Controller #4
34c6 Ice Lake-LP Serial IO I2c Controller #5
+ 34c8 Smart Sound Technology Audio Controller
34d3 Ice Lake-LP SATA Controller [AHCI mode]
+ 34e0 Management Engine Interface
34e8 Ice Lake-LP Serial IO I2C Controller #0
34e9 Ice Lake-LP Serial IO I2C Controller #1
34ea Ice Lake-LP Serial IO I2C Controller #2
34eb Ice Lake-LP Serial IO I2C Controller #3
34ed Ice Lake-LP USB 3.1 xHCI Host Controller
+ 34f0 Killer Wi-Fi 6 AX1650i 160MHz Wireless Network Adapter (201NGW)
34f8 Ice Lake-LP SD Controller
3500 6311ESB/6321ESB PCI Express Upstream Port
103c 31fe ProLiant DL140 G3
17aa 4020 Ethernet Connection X722 for 1GbE
17aa 4021 Ethernet Connection X722 for 1GbE
17aa 4022 Ethernet Connection X722 for 1GbE
+ 17aa 4024 Ethernet Connection X722 for 1GbE
37d2 Ethernet Connection X722 for 10GBASE-T
+ 1059 0180 RD10019 10GbE interface
1170 37d2 Ethernet Connection X722 for 10GBASE-T
14cd 0030 Ethernet OCP 2x10G RJ45 Phy Card [USI-X557-10GbaseT]
1590 0218 Ethernet 10Gb 2-port 568FLR-MMT Adapter
17aa 4020 Ethernet Connection X722 for 10GBASE-T
17aa 4021 Ethernet Connection X722 for 10GBASE-T
17aa 4022 Ethernet Connection X722 for 10GBASE-T
+ 17aa 4024 Ethernet Connection X722 for 10GBASE-T
17aa 4025 Ethernet Connection X722 for 10GBASE-T
37d3 Ethernet Connection X722 for 10GbE SFP+
1590 0219 Ethernet 10Gb 2-port 568FLR-MMSFP+ Adapter
3e1f 8th Gen Core 4-core Desktop Processor Host Bridge/DRAM Registers [Coffee Lake S]
1458 5000 Z370 AORUS Gaming K3-CF
3e30 8th Gen Core 8-core Desktop Processor Host Bridge/DRAM Registers [Coffee Lake S]
+ 3e34 Coffee Lake HOST and DRAM Controller
3e81 8th Gen Core Processor PCIe Controller (x16)
3e85 8th Gen Core Processor PCIe Controller (x8)
3e89 8th Gen Core Processor PCIe Controller (x4)
3e91 8th Gen Core Processor Gaussian Mixture Model
3e92 UHD Graphics 630 (Desktop)
3e93 UHD Graphics 610
+ 3e96 HD Graphics P630
3e98 UHD Graphics 630 (Desktop 9 Series)
3e9b UHD Graphics 630 (Mobile)
3ea0 UHD Graphics 620 (Whiskey Lake)
5926 Iris Plus Graphics 640
5927 Iris Plus Graphics 650
5a84 Celeron N3350/Pentium N4200/Atom E3900 Series Integrated Graphics Controller
+ 5a85 HD Graphics 500
5a88 Celeron N3350/Pentium N4200/Atom E3900 Series Imaging Unit
5a98 Celeron N3350/Pentium N4200/Atom E3900 Series Audio Cluster
5a9a Celeron N3350/Pentium N4200/Atom E3900 Series Trusted Execution Engine
6f52 Xeon Processor D Family QuickData Technology Register DMA Channel 2
6f53 Xeon Processor D Family QuickData Technology Register DMA Channel 3
6f54 Xeon Processor D Family QuickAssist Technology
+ 6f55 Xeon Processor D Family QuickAssist Technology Virtual Fuction
6f60 Xeon E7 v4/Xeon E5 v4/Xeon E3 v4/Xeon D Home Agent 1
6f68 Xeon E7 v4/Xeon E5 v4/Xeon E3 v4/Xeon D Target Address/Thermal/RAS
6f6a Xeon E7 v4/Xeon E5 v4/Xeon E3 v4/Xeon D Channel Target Address Decoder
8817 Platform Controller Hub EG20T I2C Controller
8818 Platform Controller Hub EG20T Controller Area Network (CAN) Controller
8819 Platform Controller Hub EG20T IEEE 1588 Hardware Assist
+ 8a0d Ice Lake Thunderbolt 3 NHI #1
+ 8a13 Ice Lake Thunderbolt 3 USB Controller
+ 8a17 Ice Lake Thunderbolt 3 NHI #0
+ 8a1d Ice Lake Thunderbolt 3 PCI Express Root Port #0
+ 8a1f Ice Lake Thunderbolt 3 PCI Express Root Port #1
+ 8a21 Ice Lake Thunderbolt 3 PCI Express Root Port #2
+ 8a23 Ice Lake Thunderbolt 3 PCI Express Root Port #3
+ 8a52 Iris Plus Graphics G7
8c00 8 Series/C220 Series Chipset Family 4-port SATA Controller 1 [IDE mode]
8c01 8 Series Chipset Family 4-port SATA Controller 1 [IDE mode] - Mobile
8c02 8 Series/C220 Series Chipset Family 6-port SATA Controller 1 [AHCI mode]
9622 Integrated RAID
9641 Integrated RAID
96a1 Integrated RAID
+ 9b41 UHD Graphics
9c00 8 Series SATA Controller 1 [IDE mode]
9c01 8 Series SATA Controller 1 [IDE mode]
9c02 8 Series SATA Controller 1 [AHCI mode]
9da3 Cannon Point-LP SMBus Controller
9da4 Cannon Point-LP SPI Controller
9db0 Cannon Point-LP PCI Express Root Port #9
+ 9db1 Cannon Point-LP PCI Express Root Port #10
9db4 Cannon Point-LP PCI Express Root Port #13
1028 089e Inspiron 5482
9db6 Cannon Point-LP PCI Express Root Port #15
9db8 Cannon Point-LP PCI Express Root Port #1
9dbc Cannon Point-LP PCI Express Root Port #5
+ 9dbe Cannon Point-LP PCI Express Root Port #7
+ 9dbf Cannon Point PCI Express Root Port #8
+ 9dc5 Cannon Point-LP Serial IO I2C Host Controller
9dc8 Cannon Point-LP High Definition Audio Controller
1028 089e Inspiron 5482
9dd3 Cannon Point-LP SATA Controller [AHCI Mode]
9ded Cannon Point-LP USB 3.1 xHCI Controller
9def Cannon Point-LP Shared SRAM
9df0 Cannon Point-LP CNVi [Wireless-AC]
+ 9df5 BayHubTech Integrated SD controller
9df9 Cannon Point-LP Thermal Controller
9dfc Cannon Point-LP Integrated Sensor Hub
a000 Atom Processor D4xx/D5xx/N4xx/N5xx DMI Bridge
a304 H370 Chipset LPC/eSPI Controller
a305 Z390 Chipset LPC/eSPI Controller
a306 Q370 Chipset LPC/eSPI Controller
+ a309 Cannon Point-LP LPC Controller
a30c QM370 Chipset LPC/eSPI Controller
a323 Cannon Lake PCH SMBus Controller
a324 Cannon Lake PCH SPI Controller
d158 Core Processor Miscellaneous Registers
f1a5 SSD 600P Series
f1a6 SSD Pro 7600p/760p/E 6100p Series
- f1a8 SSDPEKNW020T8 [660p, 2TB]
- 8086 390d SSDPEKNW020T8 [660p, 2TB]
+ f1a8 SSD 660P Series
8088 Beijing Wangxun Technology Co., Ltd.
1001 Ethernet Controller RP1000 for 10GbE SFP+
8088 0000 Ethernet Network Adaptor RP1000 for 10GbE SFP+
a1ff eGPU RX580
c001 TSI Telsys
c0a9 Micron/Crucial Technology
+ 2263 P1 NVMe PCIe SSD
c0de Motorola
c0fe Motion Engineering, Inc.
ca3b Cambrionix Ltd.
80 Signal processing controller
C 12 Processing accelerators
00 Processing accelerators
+# For the class of PCI attached devices which perform a function of Deep Learning Neural Network inference acceleration
+ 01 AI Inference Accelerator
C 13 Non-Essential Instrumentation
C 40 Coprocessor
C ff Unassigned class
# The latest version can be obtained from
# http://www.linux-usb.org/usb.ids
#
-# Version: 2019.07.27
-# Date: 2019-07-27 20:34:05
+# Version: 2019.11.05
+# Date: 2019-11-05 20:34:06
#
# Vendors, devices and interfaces. Please keep sorted.
03e7 Intel
2150 Myriad VPU [Movidius Neural Compute Stick]
2485 Movidius MyriadX
+ f63b Myriad VPU [Movidius Neural Compute Stick]
03e8 EndPoints, Inc.
0004 SE401 Webcam
0008 101 Ethernet [klsi]
0601 ScanJet 6300c
0604 DeskJet 840c
0605 ScanJet 2200c
+ 0610 Z24i Monitor Hub
0611 OfficeJet K60xi
0612 business inkjet 3000
0624 Bluetooth Dongle
0912 Printing Support
0917 LaserJet 3330
0924 Modular Smartcard Keyboard
+ 0941 X500 Optical Mouse
094a Optical Mouse [672662-001]
0a01 ScanJet 2400c
0a17 color LaserJet 3700
1030 FV TouchCam N1 (Video)
3000 Optical dual-touch panel
3001 Optical Touch Screen
+ a060 HD Webcam
0409 NEC Corp.
0011 PC98 Series Layout Keyboard Mouse
0012 ATerm IT75DSU ISDN TA
402b Photo Printer 6850
402e 605 Photo Printer
4034 805 Photo Printer
+ 4035 7000 Photo Printer
+ 4037 7010 Photo Printer
+ 4038 7015 Photo Printer
+ 404d 8810 Photo Printer
404f 305 Photo Printer
4056 ESP 7200 Series AiO
4109 EasyShare Printer Dock Series 3
7721 Memory Stick Reader/Writer
7722 Memory Stick Reader/Writer
7723 SD Card Reader
+ c141 Barcode Scanner
0417 Symbios Logic
0418 AST Research
0419 Samsung Info. Systems America, Inc.
0301 2500H Tracer Trainer
030a PETracer x1
1237 Andromeda Hub
-0424 Standard Microsystems Corp.
+0424 Microchip Technology, Inc. (formerly SMSC)
0001 Integrated Hub
0140 LPC47M14x hub
0acd Sitecom Internal Multi Memory reader/writer MD-005
4041 Hub and media card controller
4060 Ultra Fast Media Reader
4064 Ultra Fast Media Reader
+ 4712 USB4712 high-speed hub
+ 4713 USB4715 high-speed hub (2 ports disabled)
+ 4714 USB4715 high-speed hub (1 port disabled)
+ 4715 USB4715 high-speed hub
+ 4910 USB491x hub integrated functions (primary)
+ 4912 USB4912 high-speed hub (1 port disabled)
+ 4914 USB4914 high-speed hub
+ 4916 USB4916 high-speed hub
+ 4920 USB491x hub integrated functions (secondary)
+ 4925 USB4925 high-speed hub (primary upstream)
+ 4927 USB4927 high-speed hub (primary upstream)
+ 4931 USB4925/4927 high-speed hub (secondary upstream)
+ 4940 USB47xx/49xx hub integrated WinUSB
+ 4942 USB47xx/49xx hub integrated I2S audio port
+ 4943 USB47xx/49xx hub integrated I2S audio + HID port
+ 4944 USB47xx/49xx hub integrated serial port
+ 4946 USB47xx/49xx hub integrated serial + I2S audio port
+ 4947 USB47xx/49xx hub integrated serial + I2S audio + HID port
+ 494a USB47xx/49xx hub integrated WinUSB + I2S audio port
+ 494b USB47xx/49xx hub integrated WinUSB + I2S audio + HID port
+ 494c USB47xx/49xx hub integrated WinUSB + serial port
+ 494e USB47xx/49xx hub integrated WinUSB + serial + I2S audio port
+ 494f USB47xx/49xx hub integrated WinUSB + serial + I2S audio + HID port
5434 Hub
5534 Hub
5744 Hub
0083 109 Japanese Keyboard
00a2 Type 7 Keyboard
0100 3-button Mouse
+ 0502 Panasonic CF-19 HID Touch Panel
100e 24.1" LCD Monitor v4 / FID-638 Mouse
36ba Bus Powered Hub
a101 remote key/mouse for P3 chip
0005 CameraMate (DPCM_USB)
0437 Framatome Connectors USA
0438 Advanced Micro Devices, Inc.
+ 7900 Root Hub
0439 Voice Technologies Group
043d Lexmark International, Inc.
0001 Laser Printer
008c to CF/SM/SD/MS Card Reader
008e InkJet Color Printer
008f X422
+ 0091 Laser Printer E232
0093 X5250
0095 E220 Printer
0096 2200 series
e003 TI-84 Plus Calculator
e004 TI-89 Titanium Calculator
e008 TI-84 Plus Silver Calculator
+ e00e TI-89 Titanium Presentation Link
+ e00f TI-84 Plus Presentation Link
+ e010 TI SmartPad Keyboard
+ e011 Nspire CAS+ prototype
e012 TI-Nspire Calculator
+ e013 Network Bridge
+ e01c Data Collection Sled [Nspire Lab Cradle, Nspire Datatracker Cradle]
+ e01f Python Adapter (firmware install mode)
+ e020 Python Adapter
+ e022 Nspire CX II
f430 MSP-FET430UIF JTAG Tool
f432 eZ430 Development Tool
ffff Bluetooth Device
0100 EasyPen Tablet
0101 CueCat
011b NetScroll T220
+ 0186 Genius DX-120 Mouse
1001 Joystick
1002 Game Pad
1003 Genius VideoCam
3018 Wireless 2.4Ghz Game Pad
3019 10-Button USB Joystick with Vibration
301a MaxFire G-12U Vibration
+ 301c Genius MaxFighter F-16U
301d Genius MaxFire MiniPad
400f Genius TVGo DVB-T02Q MCE
4012 TVGo DVB-T03 [AF9015]
5003 G-pen 560 Tablet
5004 G-pen Tablet
+ 5005 Genius EasyPen M406
+ 5012 Genius EasyPen M406W
+ 5014 Genius EasyPen 340
505e Genius iSlim 330
6001 GF3000F Ethernet Adapter
7004 VideoCAM Express V2
0002 CVA122 Cable Voice Adapter (WDM)
0003 CVA124E Cable Voice Adapter (WDM)
0004 CVA122E Cable Voice Adapter (WDM)
+ 0a00 Integrated Management Controller Hub
+ 0a01 Virtual Keyboard/Mouse
+ 0a02 Virtual Mass Storage
+ 0a03 Virtual Ethernet/RNDIS
05a7 Bose Corp.
4000 Bluetooth Headset
4001 Bluetooth Headset in DFU mode
10c3 Universal Laser Systems, Inc.
00a4 ULS PLS Series Laser Engraver Firmware Loader
00a5 ULS Print Support
-10c4 Cygnal Integrated Products, Inc.
+10c4 Silicon Labs
0002 F32x USBXpress Device
0003 CommandIR
800a SPORTident
8973 C8051F38x HDMI Extender [UHBX-8X]
89c6 SPORTident HID device
89e1 C8051F38x HDMI Extender [UHBX-SW3-WP]
- ea60 CP2102/CP2109 UART Bridge Controller [CP210x family]
+ 89fb Qivicon ZigBee Stick
+ 8a3c C8051F38x HDBaseT Receiver [UHBX-R-XT]
+ 8a6c C8051F38x 4K HDMI Audio Extractor [EMX-AMP]
+ 8acb C8051F38x HDBaseT Wall Plate Receiver with IR, RS-232, and PoH [UHBX-R-WP]
+ 8af8 C8051F38x 4K HDMI Audio Extractor w/Audio Amplifier, HDBT Input, Line Audio Input RS-232 Ports and IP Control [VSA-X21]
+ 8b8c C8051F38x 4K HDMI Audio Extractor w/Audio Amplifier, HDBT Input, Line Audio Input RS-232 Ports and IP Control [SC-3H]
+ 8db5 C8051F38x CATx HDMI Receiver with USB [EX-HDU-R]
+ 8db6 C8051F38x CATx HDMI Receiver
+ ea60 CP210x UART Bridge
ea61 CP210x UART Bridge
- ea70 CP210x UART Bridge
- ea80 CP210x UART Bridge
+ ea63 CP210x UART Bridge
+ ea70 CP2105 Dual UART Bridge
+ ea71 CP2108 Quad UART Bridge
+ ea80 CP2110 HID UART Bridge
+ ea90 CP2112 HID I2C Bridge
+ ea91 CP2112 HID SMBus/I2C Bridge for CP2614 Evaluation Kit
+ ea93 CP2112 HID SMBus/I2C Bridge for CP2615 Evaluation Kit
+ eab0 CP2114 I2S Audio Bridge
+ eac0 CP2614 MFi Accessory Digital Audio Bridge
+ eac1 CP2615 I2S Audio Bridge
eac9 EFM8UB1 Bootloader
eaca EFM8UB2 Bootloader
+ eacb EFM8UB3 Bootloader
10c5 Sanei Electric, Inc.
819a FM Radio
10c6 Intec, Inc.
001b Emu [Ambit3 Peak]
001c Finch [Ambit3 Sport]
001d Greentit [Ambit2 R]
+ 001e Ibisbill [Ambit3 Run]
1497 Panstrong Company Ltd.
1498 Microtek International Inc.
a090 DVB-T Tuner
2cf6 Pyra Mouse (wireless)
2d50 Kova+ Mouse
2d51 Kone+ Mouse
+ 2e22 Kone XTD Mouse
30d4 Arvo Keyboard
1ea7 SHARKOON Technologies GmbH
0066 [Mediatrack Edge Mini Keyboard]
930c CCD Webcam(PC370R)
27b8 ThingM
01ed blink(1)
+27c6 Shenzhen Goodix Technology Co.,Ltd.
+ 5117 Fingerprint Reader
+ 5201 Fingerprint Reader
+ 5301 Fingerprint Reader
+ 530c Fingerprint Reader
+ 5385 Fingerprint Reader
+ 538c Fingerprint Reader
+ 5395 Fingerprint Reader
+ 5584 Fingerprint Reader
+ 55b4 Fingerprint Reader
+ 5740 Fingerprint Reader
2821 ASUSTek Computer Inc.
0161 WL-161 802.11b Wireless Adapter [SiS 162U]
160f WL-160g 802.11g Wireless Adapter [Envara WiND512]
0296 BG96 CAT-M1/NB-IoT modem
0306 EG06/EP06/EM06 LTE-A modem
0435 AG35 LTE modem
+2cdc Sea & Sun Technology GmbH
+ f232 CTD48Mc CTD Probe
2dcf Dialog Semiconductor
c952 Audio Class 2.0 Devices
2fb2 Fujitsu, Ltd
0001 Nitrogen Bootloader
30a4 Blues Wireless
0001 Notecard
+30c2 UNPARALLEL Innovation, Lda
+ 1388 SPL Meter
30ee Fujitsu Connected Technologies Limited
1001 F-01L
3125 Eagletron
#
# Authors : Arne Fitzenreiter - arne_f@ipfire.org
#
-# Version : 02.00
+# Version : 02.10
#
# Notes :
#
# Only if RED_TYPE=DHCP update /var/ipfire/red
if [ "$RED_TYPE" == "DHCP" ]; then
- logger -p local0.info -t dhcpcd.exe[$$] "${interface} has been brought down"
rm -f /var/ipfire/red/active
- run_subdir ${rc_base}/init.d/networking/red.down/
+ if [ ! $reason == "PREINIT" ]; then
+ logger -p local0.info -t dhcpcd.exe[$$] "${interface} has been brought down ($reason)"
+ run_subdir ${rc_base}/init.d/networking/red.down/
+ fi
fi
}
case "$reason" in
BOUND|INFORM|REBIND|REBOOT|RENEW|TIMEOUT|STATIC) dhcpcd_up;;
-PREINIT|EXPIRE|FAIL|IPV4LL|NAK|NOCARRIER|RELEASE|STOP) dhcpcd_down;;
+PREINIT|EXPIRE|FAIL|IPV4LL|NAK|RELEASE|STOP) dhcpcd_down;;
esac
if [ "${ret}" -eq 0 ]; then
. /var/ipfire/dhcpc/dhcpcd-"${device}".info
- echo ""
- echo_ok
- boot_mesg " DHCP Assigned Settings for ${device}:"
- boot_mesg_flush
- boot_mesg " IP Address: $ip_address"
- boot_mesg_flush
- if [ -n "${RED_DHCP_HOSTNAME}" ]; then
- boot_mesg " Hostname: $RED_DHCP_HOSTNAME"
+ if [ $ip_address ]; then
+ echo ""
+ echo_ok
+ boot_mesg " DHCP Assigned Settings for ${device}:"
boot_mesg_flush
- fi
+ boot_mesg " IP Address: $ip_address"
+ boot_mesg_flush
+
+ if [ -n "${RED_DHCP_HOSTNAME}" ]; then
+ boot_mesg " Hostname: $RED_DHCP_HOSTNAME"
+ boot_mesg_flush
+ fi
- boot_mesg " Subnet Mask: $subnet_mask"
- boot_mesg_flush
- boot_mesg " Default Gateway: $routers"
- boot_mesg_flush
- boot_mesg " DNS Server: $domain_name_servers"
- boot_mesg_flush
+ boot_mesg " Subnet Mask: $subnet_mask"
+ boot_mesg_flush
+ boot_mesg " Default Gateway: $routers"
+ boot_mesg_flush
+ boot_mesg " DNS Server: $domain_name_servers"
+ boot_mesg_flush
+ else
+ echo ""
+ echo_ok
+ boot_mesg "DHCP for ${device} still running..."
+ boot_mesg_flush
+ fi
else
echo ""
$(exit "${ret}")
ip route add default via ${GATEWAY} dev ${DEVICE}
evaluate_retval
+ # has carrier ?
+ if [ ! "$(</sys/class/net/${DEVICE}/carrier)" = "1" ]; then
+ boot_mesg -n "Wait for carrier on ${DEVICE} "
+ for (( i=30; i>1; i-- )) do
+ if [ "$(</sys/class/net/${DEVICE}/carrier)" = "1" ]; then
+ break;
+ fi
+ boot_mesg -n "."
+ sleep 2
+ done
+ boot_mesg ""
+ if [ ! "$(</sys/class/net/${DEVICE}/carrier)" = "1" ]; then
+ echo_failure
+ else
+ echo_ok
+ fi
+ fi
+
run_subdir ${rc_base}/init.d/networking/red.up/
# Configure aliases only if red static
--- /dev/null
+#!/bin/bash
+[ -e /var/ipfire/red/nobeeps ] || /etc/rc.d/init.d/beep down
# Regenerate the file with HOME_NET details.
&IDS::generate_home_net_file();
- # Set correct ownership.
+ # Regenerate the file with DNS_SERVERS details.
+ &IDS::generate_dns_servers_file();
+
+ # Set correct ownerships.
&IDS::set_ownership("$IDS::homenet_file");
+ &IDS::set_ownership("$IDS::dns_servers_file");
# Check if suricata is running.
if(&IDS::ids_is_running()) {
--- /dev/null
+#!/bin/bash
+[ -e /var/ipfire/red/nobeeps ] || /etc/rc.d/init.d/beep up
boot_mesg -n "If you're able to track this"
boot_mesg -n " error down to a bug in one of the files provided by"
boot_mesg -n " ipfire, please be so kind to inform us at"
- boot_mesg " info@ipfire.org.\n"
+ boot_mesg " https://bugzilla.ipfire.org.\n"
boot_mesg_flush
boot_mesg -n "Press Enter to continue or wait a minute..." ${INFO}
boot_mesg "" ${NORMAL}
fi
}
+#Handle new APU ACPI Leds introduced on APU2 with bios 4.10.0.0
+if [ -e /sys/class/leds/apu1:green:led1 ]; then
+ APULED="apu1:green:led";
+else if [ -e /sys/class/leds/apu2:green:led1 ]; then
+ APULED="apu2:green:led";
+else if [ -e /sys/class/leds/apu3:green:led1 ]; then
+ APULED="apu3:green:led";
+else if [ -e /sys/class/leds/apu4:green:led1 ]; then
+ APULED="apu4:green:led";
+else if [ -e /sys/class/leds/apu5:green:led1 ]; then
+ APULED="apu5:green:led";
+else
+ APULED="apu:";
+fi
+fi
+fi
+fi
+fi
+
case "${1}" in
start)
# Alix LED start
setup_netdev_trigger alix:3 ${RED_DEV} tx
# Apu LED start
- setup_heartbeat_trigger apu:1
- setup_netdev_trigger apu:2 ${RED_DEV} rx
- setup_netdev_trigger apu:3 ${RED_DEV} tx
+ setup_heartbeat_trigger ${APULED}1
+ setup_netdev_trigger ${APULED}2 ${RED_DEV} rx
+ setup_netdev_trigger ${APULED}3 ${RED_DEV} tx
# Geos LED start
setup_heartbeat_trigger geos:1
disable_led_trigger alix:3
# Apu LED stop
- disable_led_trigger apu:1
- enable_led apu:1
- disable_led_trigger apu:2
- disable_led_trigger apu:3
+ disable_led_trigger ${APULED}1
+ enable_led ${APULED}1
+ disable_led_trigger ${APULED}2
+ disable_led_trigger ${APULED}3
# Geos LED stop
disable_led_trigger geos:1
shift
# If TCP is forced we know by now if the server responds to it
- if [Â "${FORCE_TCP}" = "on" ]; then
+ if [ "${FORCE_TCP}" = "on" ]; then
return 0
fi
+++ /dev/null
- BASH PATCH REPORT
- =================
-
-Bash-Release: 4.3
-Patch-ID: bash43-001
-
-Bug-Reported-by: NBaH <nbah@sfr.fr>
-Bug-Reference-ID: <ler0b5$iu9$1@speranza.aioe.org>
-Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2014-02/msg00092.html
-
-Bug-Description:
-
-A missing check for a valid option prevented `test -R' from working. There
-is another problem that causes bash to look up the wrong variable name when
-processing the argument to `test -R'.
-
-Patch (apply with `patch -p0'):
-
-*** ../bash-4.3/test.c 2014-02-04 16:52:58.000000000 -0500
---- test.c 2014-02-28 21:22:44.000000000 -0500
-***************
-*** 647,652 ****
-
- case 'R':
-! v = find_variable (arg);
-! return (v && invisible_p (v) == 0 && var_isset (v) && nameref_p (v) ? TRUE : FALSE);
- }
-
---- 647,652 ----
-
- case 'R':
-! v = find_variable_noref (arg);
-! return ((v && invisible_p (v) == 0 && var_isset (v) && nameref_p (v)) ? TRUE : FALSE);
- }
-
-***************
-*** 724,727 ****
---- 724,728 ----
- case 'u': case 'v': case 'w': case 'x': case 'z':
- case 'G': case 'L': case 'O': case 'S': case 'N':
-+ case 'R':
- return (1);
- }
-*** ../bash-4.3/patchlevel.h 2012-12-29 10:47:57.000000000 -0500
---- patchlevel.h 2014-03-20 20:01:28.000000000 -0400
-***************
-*** 26,30 ****
- looks for to find the patch level (for the sccs version string). */
-
-! #define PATCHLEVEL 0
-
- #endif /* _PATCHLEVEL_H_ */
---- 26,30 ----
- looks for to find the patch level (for the sccs version string). */
-
-! #define PATCHLEVEL 1
-
- #endif /* _PATCHLEVEL_H_ */
+++ /dev/null
- BASH PATCH REPORT
- =================
-
-Bash-Release: 4.3
-Patch-ID: bash43-002
-
-Bug-Reported-by: Moe Tunes <moetunes42@gmail.com>
-Bug-Reference-ID: <53103F49.3070100@gmail.com>
-Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2014-02/msg00086.html
-
-Bug-Description:
-
-A change to save state while running the DEBUG trap caused pipelines to hang
-on systems which need process group synchronization while building pipelines.
-
-Patch (apply with `patch -p0'):
-
-*** ../bash-4.3/trap.c 2014-02-05 10:03:21.000000000 -0500
---- trap.c 2014-02-28 09:51:43.000000000 -0500
-***************
-*** 921,925 ****
-
- #if defined (JOB_CONTROL)
-! save_pipeline (1); /* XXX only provides one save level */
- #endif
-
---- 921,926 ----
-
- #if defined (JOB_CONTROL)
-! if (sig != DEBUG_TRAP) /* run_debug_trap does this */
-! save_pipeline (1); /* XXX only provides one save level */
- #endif
-
-***************
-*** 941,945 ****
-
- #if defined (JOB_CONTROL)
-! restore_pipeline (1);
- #endif
-
---- 942,947 ----
-
- #if defined (JOB_CONTROL)
-! if (sig != DEBUG_TRAP) /* run_debug_trap does this */
-! restore_pipeline (1);
- #endif
-
-*** ../bash-4.3/patchlevel.h 2012-12-29 10:47:57.000000000 -0500
---- patchlevel.h 2014-03-20 20:01:28.000000000 -0400
-***************
-*** 26,30 ****
- looks for to find the patch level (for the sccs version string). */
-
-! #define PATCHLEVEL 1
-
- #endif /* _PATCHLEVEL_H_ */
---- 26,30 ----
- looks for to find the patch level (for the sccs version string). */
-
-! #define PATCHLEVEL 2
-
- #endif /* _PATCHLEVEL_H_ */
+++ /dev/null
- BASH PATCH REPORT
- =================
-
-Bash-Release: 4.3
-Patch-ID: bash43-003
-
-Bug-Reported-by: Anatol Pomozov <anatol.pomozov@gmail.com>
-Bug-Reference-ID: <CAOMFOmXy3mT2So5GQ5F-smCVArQuAeBwZ2QKzgCtMeXJoDeYOQ@mail.gmail.com>
-Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-readline/2014-03/msg00010.html
-
-Bug-Description:
-
-When in callback mode, some readline commands can cause readline to seg
-fault by passing invalid contexts to callback functions.
-
-Patch (apply with `patch -p0'):
-
-*** ../bash-4.3/lib/readline/readline.c 2013-10-28 14:58:06.000000000 -0400
---- lib/readline/readline.c 2014-03-10 14:15:02.000000000 -0400
-***************
-*** 745,749 ****
-
- RL_CHECK_SIGNALS ();
-! if (r == 0) /* success! */
- {
- _rl_keyseq_chain_dispose ();
---- 745,750 ----
-
- RL_CHECK_SIGNALS ();
-! /* We only treat values < 0 specially to simulate recursion. */
-! if (r >= 0 || (r == -1 && (cxt->flags & KSEQ_SUBSEQ) == 0)) /* success! or failure! */
- {
- _rl_keyseq_chain_dispose ();
-*** ../bash-4.3/patchlevel.h 2012-12-29 10:47:57.000000000 -0500
---- patchlevel.h 2014-03-20 20:01:28.000000000 -0400
-***************
-*** 26,30 ****
- looks for to find the patch level (for the sccs version string). */
-
-! #define PATCHLEVEL 2
-
- #endif /* _PATCHLEVEL_H_ */
---- 26,30 ----
- looks for to find the patch level (for the sccs version string). */
-
-! #define PATCHLEVEL 3
-
- #endif /* _PATCHLEVEL_H_ */
+++ /dev/null
- BASH PATCH REPORT
- =================
-
-Bash-Release: 4.3
-Patch-ID: bash43-004
-
-Bug-Reported-by: Daan van Rossum <daan@flash.uchicago.edu>
-Bug-Reference-ID: <20140307072523.GA14250@flash.uchicago.edu>
-Bug-Reference-URL:
-
-Bug-Description:
-
-The `.' command in vi mode cannot undo multi-key commands beginning with
-`c', `d', and `y' (command plus motion specifier).
-
-Patch (apply with `patch -p0'):
-
-*** ../bash-4.3/lib/readline/readline.c 2013-10-28 14:58:06.000000000 -0400
---- lib/readline/readline.c 2014-03-07 15:20:33.000000000 -0500
-***************
-*** 965,969 ****
- if (rl_editing_mode == vi_mode && _rl_keymap == vi_movement_keymap &&
- key != ANYOTHERKEY &&
-! rl_key_sequence_length == 1 && /* XXX */
- _rl_vi_textmod_command (key))
- _rl_vi_set_last (key, rl_numeric_arg, rl_arg_sign);
---- 965,969 ----
- if (rl_editing_mode == vi_mode && _rl_keymap == vi_movement_keymap &&
- key != ANYOTHERKEY &&
-! _rl_dispatching_keymap == vi_movement_keymap &&
- _rl_vi_textmod_command (key))
- _rl_vi_set_last (key, rl_numeric_arg, rl_arg_sign);
-*** ../bash-4.3/patchlevel.h 2012-12-29 10:47:57.000000000 -0500
---- patchlevel.h 2014-03-20 20:01:28.000000000 -0400
-***************
-*** 26,30 ****
- looks for to find the patch level (for the sccs version string). */
-
-! #define PATCHLEVEL 3
-
- #endif /* _PATCHLEVEL_H_ */
---- 26,30 ----
- looks for to find the patch level (for the sccs version string). */
-
-! #define PATCHLEVEL 4
-
- #endif /* _PATCHLEVEL_H_ */
+++ /dev/null
- BASH PATCH REPORT
- =================
-
-Bash-Release: 4.3
-Patch-ID: bash43-005
-
-Bug-Reported-by: David Sines <dave.gma@googlemail.com>
-Bug-Reference-ID: <CAO3BAa_CK_Rgkhdfzs+NJ4KFYdB9qW3pvXQK0xLCi6GMmDU8bw@mail.gmail.com>
-Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2014-03/msg00037.html
-
-Bug-Description:
-
-When in Posix mode, bash did not correctly interpret the ANSI-C-style
-$'...' quoting mechanism when performing pattern substitution word
-expansions within double quotes.
-
-Patch (apply with `patch -p0'):
-
-*** ../bash-4.3/parse.y 2014-02-11 09:42:10.000000000 -0500
---- parse.y 2014-03-07 20:57:15.000000000 -0500
-***************
-*** 3399,3403 ****
- unescaped double-quotes or single-quotes, if any, shall occur." */
- /* This was changed in Austin Group Interp 221 */
-! if MBTEST(posixly_correct && shell_compatibility_level > 41 && dolbrace_state != DOLBRACE_QUOTE && (flags & P_DQUOTE) && (flags & P_DOLBRACE) && ch == '\'')
- continue;
-
---- 3399,3403 ----
- unescaped double-quotes or single-quotes, if any, shall occur." */
- /* This was changed in Austin Group Interp 221 */
-! if MBTEST(posixly_correct && shell_compatibility_level > 41 && dolbrace_state != DOLBRACE_QUOTE && dolbrace_state != DOLBRACE_QUOTE2 && (flags & P_DQUOTE) && (flags & P_DOLBRACE) && ch == '\'')
- continue;
-
-*** ../bash-4.3/y.tab.c 2014-02-11 10:57:47.000000000 -0500
---- y.tab.c 2014-03-28 10:41:15.000000000 -0400
-***************
-*** 5711,5715 ****
- unescaped double-quotes or single-quotes, if any, shall occur." */
- /* This was changed in Austin Group Interp 221 */
-! if MBTEST(posixly_correct && shell_compatibility_level > 41 && dolbrace_state != DOLBRACE_QUOTE && (flags & P_DQUOTE) && (flags & P_DOLBRACE) && ch == '\'')
- continue;
-
---- 5711,5715 ----
- unescaped double-quotes or single-quotes, if any, shall occur." */
- /* This was changed in Austin Group Interp 221 */
-! if MBTEST(posixly_correct && shell_compatibility_level > 41 && dolbrace_state != DOLBRACE_QUOTE && dolbrace_state != DOLBRACE_QUOTE2 && (flags & P_DQUOTE) && (flags & P_DOLBRACE) && ch == '\'')
- continue;
-
-*** ../bash-4.3/patchlevel.h 2012-12-29 10:47:57.000000000 -0500
---- patchlevel.h 2014-03-20 20:01:28.000000000 -0400
-***************
-*** 26,30 ****
- looks for to find the patch level (for the sccs version string). */
-
-! #define PATCHLEVEL 4
-
- #endif /* _PATCHLEVEL_H_ */
---- 26,30 ----
- looks for to find the patch level (for the sccs version string). */
-
-! #define PATCHLEVEL 5
-
- #endif /* _PATCHLEVEL_H_ */
+++ /dev/null
- BASH PATCH REPORT
- =================
-
-Bash-Release: 4.3
-Patch-ID: bash43-006
-
-Bug-Reported-by: Eduardo A . Bustamante Lopez <dualbus@gmail.com>
-Bug-Reference-ID: <20140228170013.GA16015@dualbus.me>
-Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2014-02/msg00091.html
-
-Bug-Description:
-
-A shell that started with job control active but was not interactive left
-the terminal in the wrong process group when exiting, causing its parent
-shell to get a stop signal when it attempted to read from the terminal.
-
-Patch (apply with `patch -p0'):
-
-*** ../bash-4.3/jobs.c 2014-01-10 09:05:34.000000000 -0500
---- jobs.c 2014-03-02 18:05:09.000000000 -0500
-***************
-*** 4375,4379 ****
- end_job_control ()
- {
-! if (interactive_shell) /* XXX - should it be interactive? */
- {
- terminate_stopped_jobs ();
---- 4375,4379 ----
- end_job_control ()
- {
-! if (interactive_shell || job_control) /* XXX - should it be just job_control? */
- {
- terminate_stopped_jobs ();
-*** ../bash-4.3/patchlevel.h 2012-12-29 10:47:57.000000000 -0500
---- patchlevel.h 2014-03-20 20:01:28.000000000 -0400
-***************
-*** 26,30 ****
- looks for to find the patch level (for the sccs version string). */
-
-! #define PATCHLEVEL 5
-
- #endif /* _PATCHLEVEL_H_ */
---- 26,30 ----
- looks for to find the patch level (for the sccs version string). */
-
-! #define PATCHLEVEL 6
-
- #endif /* _PATCHLEVEL_H_ */
+++ /dev/null
- BASH PATCH REPORT
- =================
-
-Bash-Release: 4.3
-Patch-ID: bash43-007
-
-Bug-Reported-by: geir.hauge@gmail.com
-Bug-Reference-ID: <20140318093650.B181C1C5B0B@gina.itea.ntnu.no>
-Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2014-03/msg00095.html
-
-Bug-Description:
-
-Using compound assignments for associative arrays like
-
-assoc=( [x]= [y]=bar )
-
-left the value corresponding to the key `x' NULL. This caused subsequent
-lookups to interpret it as unset.
-
-Patch (apply with `patch -p0'):
-
-*** ../bash-4.3/arrayfunc.c 2013-08-02 16:19:59.000000000 -0400
---- arrayfunc.c 2014-03-18 11:08:15.000000000 -0400
-***************
-*** 598,601 ****
---- 598,606 ----
- {
- val = expand_assignment_string_to_string (val, 0);
-+ if (val == 0)
-+ {
-+ val = (char *)xmalloc (1);
-+ val[0] = '\0'; /* like do_assignment_internal */
-+ }
- free_val = 1;
- }
-*** ../bash-4.3/patchlevel.h 2012-12-29 10:47:57.000000000 -0500
---- patchlevel.h 2014-03-20 20:01:28.000000000 -0400
-***************
-*** 26,30 ****
- looks for to find the patch level (for the sccs version string). */
-
-! #define PATCHLEVEL 6
-
- #endif /* _PATCHLEVEL_H_ */
---- 26,30 ----
- looks for to find the patch level (for the sccs version string). */
-
-! #define PATCHLEVEL 7
-
- #endif /* _PATCHLEVEL_H_ */
+++ /dev/null
- BASH PATCH REPORT
- =================
-
-Bash-Release: 4.3
-Patch-ID: bash43-008
-
-Bug-Reported-by: Stephane Chazelas <stephane.chazelas@gmail.com>
-Bug-Reference-ID: <20140318135901.GB22158@chaz.gmail.com>
-Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2014-03/msg00098.html
-
-Bug-Description:
-
-Some extended glob patterns incorrectly matched filenames with a leading
-dot, regardless of the setting of the `dotglob' option.
-
-Patch (apply with `patch -p0'):
-
-*** ../bash-4.3/lib/glob/gmisc.c 2013-10-28 14:45:25.000000000 -0400
---- lib/glob/gmisc.c 2014-03-19 09:16:08.000000000 -0400
-***************
-*** 211,214 ****
---- 211,215 ----
- case '!':
- case '@':
-+ case '?':
- return (pat[1] == LPAREN);
- default:
-*** ../bash-4.3/lib/glob/glob.c 2014-01-31 21:43:51.000000000 -0500
---- lib/glob/glob.c 2014-03-20 09:01:26.000000000 -0400
-***************
-*** 180,202 ****
- int flags;
- {
-! char *pp, *pe, *t;
-! int n, r;
-
- pp = pat + 2;
-! pe = pp + strlen (pp) - 1; /*(*/
-! if (*pe != ')')
-! return 0;
-! if ((t = strchr (pp, '|')) == 0) /* easy case first */
- {
- *pe = '\0';
- r = skipname (pp, dname, flags); /*(*/
- *pe = ')';
- return r;
- }
- while (t = glob_patscan (pp, pe, '|'))
- {
- n = t[-1];
- t[-1] = '\0';
- r = skipname (pp, dname, flags);
- t[-1] = n;
- if (r == 0) /* if any pattern says not skip, we don't skip */
---- 180,215 ----
- int flags;
- {
-! char *pp, *pe, *t, *se;
-! int n, r, negate;
-
-+ negate = *pat == '!';
- pp = pat + 2;
-! se = pp + strlen (pp) - 1; /* end of string */
-! pe = glob_patscan (pp, se, 0); /* end of extglob pattern (( */
-! /* we should check for invalid extglob pattern here */
-! /* if pe != se we have more of the pattern at the end of the extglob
-! pattern. Check the easy case first ( */
-! if (pe == se && *pe == ')' && (t = strchr (pp, '|')) == 0)
- {
- *pe = '\0';
-+ #if defined (HANDLE_MULTIBYTE)
-+ r = mbskipname (pp, dname, flags);
-+ #else
- r = skipname (pp, dname, flags); /*(*/
-+ #endif
- *pe = ')';
- return r;
- }
-+
-+ /* check every subpattern */
- while (t = glob_patscan (pp, pe, '|'))
- {
- n = t[-1];
- t[-1] = '\0';
-+ #if defined (HANDLE_MULTIBYTE)
-+ r = mbskipname (pp, dname, flags);
-+ #else
- r = skipname (pp, dname, flags);
-+ #endif
- t[-1] = n;
- if (r == 0) /* if any pattern says not skip, we don't skip */
-***************
-*** 205,219 ****
- } /*(*/
-
-! if (pp == pe) /* glob_patscan might find end of pattern */
- return r;
-
-! *pe = '\0';
-! # if defined (HANDLE_MULTIBYTE)
-! r = mbskipname (pp, dname, flags); /*(*/
-! # else
-! r = skipname (pp, dname, flags); /*(*/
-! # endif
-! *pe = ')';
-! return r;
- }
- #endif
---- 218,227 ----
- } /*(*/
-
-! /* glob_patscan might find end of pattern */
-! if (pp == se)
- return r;
-
-! /* but if it doesn't then we didn't match a leading dot */
-! return 0;
- }
- #endif
-***************
-*** 278,289 ****
- {
- #if EXTENDED_GLOB
-! wchar_t *pp, *pe, *t, n;
-! int r;
-
- pp = pat + 2;
-! pe = pp + wcslen (pp) - 1; /*(*/
-! if (*pe != L')')
-! return 0;
-! if ((t = wcschr (pp, L'|')) == 0)
- {
- *pe = L'\0';
---- 286,298 ----
- {
- #if EXTENDED_GLOB
-! wchar_t *pp, *pe, *t, n, *se;
-! int r, negate;
-
-+ negate = *pat == L'!';
- pp = pat + 2;
-! se = pp + wcslen (pp) - 1; /*(*/
-! pe = glob_patscan_wc (pp, se, 0);
-!
-! if (pe == se && *pe == ')' && (t = wcschr (pp, L'|')) == 0)
- {
- *pe = L'\0';
-***************
-*** 292,295 ****
---- 301,306 ----
- return r;
- }
-+
-+ /* check every subpattern */
- while (t = glob_patscan_wc (pp, pe, '|'))
- {
-***************
-*** 306,313 ****
- return r;
-
-! *pe = L'\0';
-! r = wchkname (pp, dname); /*(*/
-! *pe = L')';
-! return r;
- #else
- return (wchkname (pat, dname));
---- 317,322 ----
- return r;
-
-! /* but if it doesn't then we didn't match a leading dot */
-! return 0;
- #else
- return (wchkname (pat, dname));
-*** ../bash-4.3/patchlevel.h 2012-12-29 10:47:57.000000000 -0500
---- patchlevel.h 2014-03-20 20:01:28.000000000 -0400
-***************
-*** 26,30 ****
- looks for to find the patch level (for the sccs version string). */
-
-! #define PATCHLEVEL 7
-
- #endif /* _PATCHLEVEL_H_ */
---- 26,30 ----
- looks for to find the patch level (for the sccs version string). */
-
-! #define PATCHLEVEL 8
-
- #endif /* _PATCHLEVEL_H_ */
+++ /dev/null
- BASH PATCH REPORT
- =================
-
-Bash-Release: 4.3
-Patch-ID: bash43-009
-
-Bug-Reported-by: Matthias Klose <doko@debian.org>
-Bug-Reference-ID: <53346FC8.6090005@debian.org>
-Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2014-03/msg00171.html
-
-Bug-Description:
-
-There is a problem with unsigned sign extension when attempting to reallocate
-the input line when it is fewer than 3 characters long and there has been a
-history expansion. The sign extension causes the shell to not reallocate the
-line, which results in a segmentation fault when it writes past the end.
-
-Patch (apply with `patch -p0'):
-
-*** ../bash-4.3-patched/parse.y 2014-02-11 09:42:10.000000000 -0500
---- parse.y 2014-03-27 16:33:29.000000000 -0400
-***************
-*** 2425,2429 ****
- if (shell_input_line_terminator != EOF)
- {
-! if (shell_input_line_size < SIZE_MAX && shell_input_line_len > shell_input_line_size - 3)
- shell_input_line = (char *)xrealloc (shell_input_line,
- 1 + (shell_input_line_size += 2));
---- 2425,2429 ----
- if (shell_input_line_terminator != EOF)
- {
-! if (shell_input_line_size < SIZE_MAX-3 && (shell_input_line_len+3 > shell_input_line_size))
- shell_input_line = (char *)xrealloc (shell_input_line,
- 1 + (shell_input_line_size += 2));
-*** ../bash-4.3-patched/y.tab.c 2014-03-28 11:17:06.000000000 -0400
---- y.tab.c 2014-04-07 11:48:31.000000000 -0400
-***************
-*** 4737,4741 ****
- if (shell_input_line_terminator != EOF)
- {
-! if (shell_input_line_size < SIZE_MAX && shell_input_line_len > shell_input_line_size - 3)
- shell_input_line = (char *)xrealloc (shell_input_line,
- 1 + (shell_input_line_size += 2));
---- 4737,4741 ----
- if (shell_input_line_terminator != EOF)
- {
-! if (shell_input_line_size < SIZE_MAX-3 && (shell_input_line_len+3 > shell_input_line_size))
- shell_input_line = (char *)xrealloc (shell_input_line,
- 1 + (shell_input_line_size += 2));
-*** ../bash-4.3/patchlevel.h 2012-12-29 10:47:57.000000000 -0500
---- patchlevel.h 2014-03-20 20:01:28.000000000 -0400
-***************
-*** 26,30 ****
- looks for to find the patch level (for the sccs version string). */
-
-! #define PATCHLEVEL 8
-
- #endif /* _PATCHLEVEL_H_ */
---- 26,30 ----
- looks for to find the patch level (for the sccs version string). */
-
-! #define PATCHLEVEL 9
-
- #endif /* _PATCHLEVEL_H_ */
+++ /dev/null
- BASH PATCH REPORT
- =================
-
-Bash-Release: 4.3
-Patch-ID: bash43-010
-
-Bug-Reported-by: Albert Shih <Albert.Shih@obspm.fr>
-Bug-Reference-ID: Wed, 5 Mar 2014 23:01:40 +0100
-Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2014-03/msg00028.html
-
-Bug-Description:
-
-Patch (apply with `patch -p0'):
-
-This patch changes the behavior of programmable completion to compensate
-for two assumptions made by the bash-completion package. Bash-4.3 changed
-to dequote the argument to programmable completion only under certain
-circumstances, to make the behavior of compgen more consistent when run
-from the command line -- closer to the behavior when run by a shell function
-run as part of programmable completion. Bash-completion can pass quoted
-arguments to compgen when the original word to be completed was not quoted,
-expecting programmable completion to dequote the word before attempting
-completion.
-
-This patch fixes two cases:
-
-1. An empty string that bash-completion passes to compgen as a quoted null
- string ('').
-
-2. An unquoted word that bash-completion quotes using single quotes or
- backslashes before passing it to compgen.
-
-In these cases, since readline did not detect a quote character in the original
-word to be completed, bash-4.3
-
-*** ../bash-4.3/externs.h 2014-01-02 14:58:20.000000000 -0500
---- externs.h 2014-03-13 14:42:57.000000000 -0400
-***************
-*** 325,328 ****
---- 325,329 ----
- extern char *sh_backslash_quote_for_double_quotes __P((char *));
- extern int sh_contains_shell_metas __P((char *));
-+ extern int sh_contains_quotes __P((char *));
-
- /* declarations for functions defined in lib/sh/spell.c */
-*** ../bash-4.3/lib/sh/shquote.c 2013-03-31 21:53:32.000000000 -0400
---- lib/sh/shquote.c 2014-03-13 14:42:57.000000000 -0400
-***************
-*** 312,313 ****
---- 312,327 ----
- return (0);
- }
-+
-+ int
-+ sh_contains_quotes (string)
-+ char *string;
-+ {
-+ char *s;
-+
-+ for (s = string; s && *s; s++)
-+ {
-+ if (*s == '\'' || *s == '"' || *s == '\\')
-+ return 1;
-+ }
-+ return 0;
-+ }
-*** ../bash-4.3/pcomplete.c 2013-08-26 15:23:45.000000000 -0400
---- pcomplete.c 2014-03-25 17:23:23.000000000 -0400
-***************
-*** 184,187 ****
---- 184,188 ----
- COMPSPEC *pcomp_curcs;
- const char *pcomp_curcmd;
-+ const char *pcomp_curtxt;
-
- #ifdef DEBUG
-***************
-*** 754,757 ****
---- 755,784 ----
- dfn = (*rl_filename_dequoting_function) ((char *)text, rl_completion_quote_character);
- }
-+ /* Intended to solve a mismatched assumption by bash-completion. If
-+ the text to be completed is empty, but bash-completion turns it into
-+ a quoted string ('') assuming that this code will dequote it before
-+ calling readline, do the dequoting. */
-+ else if (iscompgen && iscompleting &&
-+ pcomp_curtxt && *pcomp_curtxt == 0 &&
-+ text && (*text == '\'' || *text == '"') && text[1] == text[0] && text[2] == 0 &&
-+ rl_filename_dequoting_function)
-+ dfn = (*rl_filename_dequoting_function) ((char *)text, rl_completion_quote_character);
-+ /* Another mismatched assumption by bash-completion. If compgen is being
-+ run as part of bash-completion, and the argument to compgen is not
-+ the same as the word originally passed to the programmable completion
-+ code, dequote the argument if it has quote characters. It's an
-+ attempt to detect when bash-completion is quoting its filename
-+ argument before calling compgen. */
-+ /* We could check whether gen_shell_function_matches is in the call
-+ stack by checking whether the gen-shell-function-matches tag is in
-+ the unwind-protect stack, but there's no function to do that yet.
-+ We could simply check whether we're executing in a function by
-+ checking variable_context, and may end up doing that. */
-+ else if (iscompgen && iscompleting && rl_filename_dequoting_function &&
-+ pcomp_curtxt && text &&
-+ STREQ (pcomp_curtxt, text) == 0 &&
-+ variable_context &&
-+ sh_contains_quotes (text)) /* guess */
-+ dfn = (*rl_filename_dequoting_function) ((char *)text, rl_completion_quote_character);
- else
- dfn = savestring (text);
-***************
-*** 1523,1527 ****
- {
- COMPSPEC *cs, *oldcs;
-! const char *oldcmd;
- STRINGLIST *ret;
-
---- 1550,1554 ----
- {
- COMPSPEC *cs, *oldcs;
-! const char *oldcmd, *oldtxt;
- STRINGLIST *ret;
-
-***************
-*** 1546,1552 ****
---- 1573,1581 ----
- oldcs = pcomp_curcs;
- oldcmd = pcomp_curcmd;
-+ oldtxt = pcomp_curtxt;
-
- pcomp_curcs = cs;
- pcomp_curcmd = cmd;
-+ pcomp_curtxt = word;
-
- ret = gen_compspec_completions (cs, cmd, word, start, end, foundp);
-***************
-*** 1554,1557 ****
---- 1583,1587 ----
- pcomp_curcs = oldcs;
- pcomp_curcmd = oldcmd;
-+ pcomp_curtxt = oldtxt;
-
- /* We need to conditionally handle setting *retryp here */
-*** ../bash-4.3/patchlevel.h 2012-12-29 10:47:57.000000000 -0500
---- patchlevel.h 2014-03-20 20:01:28.000000000 -0400
-***************
-*** 26,30 ****
- looks for to find the patch level (for the sccs version string). */
-
-! #define PATCHLEVEL 9
-
- #endif /* _PATCHLEVEL_H_ */
---- 26,30 ----
- looks for to find the patch level (for the sccs version string). */
-
-! #define PATCHLEVEL 10
-
- #endif /* _PATCHLEVEL_H_ */
+++ /dev/null
- BASH PATCH REPORT
- =================
-
-Bash-Release: 4.3
-Patch-ID: bash43-011
-
-Bug-Reported-by: Egmont Koblinger <egmont@gmail.com>
-Bug-Reference-ID: <CAGWcZk+bU5Jo1M+tutGvL-250UBE9DXjpeJVofYJSFcqFEVfMg@mail.gmail.com>
-Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2014-03/msg00153.html
-
-Bug-Description:
-
-The signal handling changes to bash and readline (to avoid running any code
-in a signal handler context) cause the cursor to be placed on the wrong
-line of a multi-line command after a ^C interrupts editing.
-
-Patch (apply with `patch -p0'):
-
-*** ../bash-4.3-patched/lib/readline/display.c 2013-12-27 13:10:56.000000000 -0500
---- lib/readline/display.c 2014-03-27 11:52:45.000000000 -0400
-***************
-*** 2678,2682 ****
- if (_rl_echoing_p)
- {
-! _rl_move_vert (_rl_vis_botlin);
- _rl_vis_botlin = 0;
- fflush (rl_outstream);
---- 2678,2683 ----
- if (_rl_echoing_p)
- {
-! if (_rl_vis_botlin > 0) /* minor optimization plus bug fix */
-! _rl_move_vert (_rl_vis_botlin);
- _rl_vis_botlin = 0;
- fflush (rl_outstream);
-*** ../bash-4.3/patchlevel.h 2012-12-29 10:47:57.000000000 -0500
---- patchlevel.h 2014-03-20 20:01:28.000000000 -0400
-***************
-*** 26,30 ****
- looks for to find the patch level (for the sccs version string). */
-
-! #define PATCHLEVEL 10
-
- #endif /* _PATCHLEVEL_H_ */
---- 26,30 ----
- looks for to find the patch level (for the sccs version string). */
-
-! #define PATCHLEVEL 11
-
- #endif /* _PATCHLEVEL_H_ */
+++ /dev/null
- BASH PATCH REPORT
- =================
-
-Bash-Release: 4.3
-Patch-ID: bash43-012
-
-Bug-Reported-by: Eduardo A. Bustamante López<dualbus@gmail.com>
-Bug-Reference-ID: <5346B54C.4070205@case.edu>
-Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2014-04/msg00051.html
-
-Bug-Description:
-
-When a SIGCHLD trap runs a command containing a shell builtin while
-a script is running `wait' to wait for all running children to complete,
-the SIGCHLD trap will not be run once for each child that terminates.
-
-Patch (apply with `patch -p0'):
-
-*** ../bash-4.3-patched/jobs.c 2014-03-28 10:54:19.000000000 -0400
---- jobs.c 2014-04-15 08:47:03.000000000 -0400
-***************
-*** 3598,3601 ****
---- 3598,3602 ----
- unwind_protect_pointer (the_pipeline);
- unwind_protect_pointer (subst_assign_varlist);
-+ unwind_protect_pointer (this_shell_builtin);
-
- /* We have to add the commands this way because they will be run
-*** ../bash-4.3/patchlevel.h 2012-12-29 10:47:57.000000000 -0500
---- patchlevel.h 2014-03-20 20:01:28.000000000 -0400
-***************
-*** 26,30 ****
- looks for to find the patch level (for the sccs version string). */
-
-! #define PATCHLEVEL 11
-
- #endif /* _PATCHLEVEL_H_ */
---- 26,30 ----
- looks for to find the patch level (for the sccs version string). */
-
-! #define PATCHLEVEL 12
-
- #endif /* _PATCHLEVEL_H_ */
+++ /dev/null
- BASH PATCH REPORT
- =================
-
-Bash-Release: 4.3
-Patch-ID: bash43-013
-
-Bug-Reported-by: <Trond.Endrestol@ximalas.info>
-Bug-Reference-ID: <alpine.BSF.2.03.1404192114310.1973@enterprise.ximalas.info>
-Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2014-04/msg00069.html
-
-Bug-Description:
-
-Using reverse-i-search when horizontal scrolling is enabled does not redisplay
-the entire line containing the successful search results.
-
-Patch (apply with `patch -p0'):
-*** ../bash-4.3-patched/lib/readline/display.c 2014-04-08 18:19:36.000000000 -0400
---- lib/readline/display.c 2014-04-20 18:32:52.000000000 -0400
-***************
-*** 1638,1642 ****
- the spot of first difference is before the end of the invisible chars,
- lendiff needs to be adjusted. */
-! if (current_line == 0 && !_rl_horizontal_scroll_mode &&
- current_invis_chars != visible_wrap_offset)
- {
---- 1638,1642 ----
- the spot of first difference is before the end of the invisible chars,
- lendiff needs to be adjusted. */
-! if (current_line == 0 && /* !_rl_horizontal_scroll_mode && */
- current_invis_chars != visible_wrap_offset)
- {
-***************
-*** 1826,1831 ****
- _rl_last_c_pos += bytes_to_insert;
-
- if (_rl_horizontal_scroll_mode && ((oe-old) > (ne-new)))
-! goto clear_rest_of_line;
- }
- }
---- 1826,1836 ----
- _rl_last_c_pos += bytes_to_insert;
-
-+ /* XXX - we only want to do this if we are at the end of the line
-+ so we move there with _rl_move_cursor_relative */
- if (_rl_horizontal_scroll_mode && ((oe-old) > (ne-new)))
-! {
-! _rl_move_cursor_relative (ne-new, new);
-! goto clear_rest_of_line;
-! }
- }
- }
-*** ../bash-4.3/patchlevel.h 2012-12-29 10:47:57.000000000 -0500
---- patchlevel.h 2014-03-20 20:01:28.000000000 -0400
-***************
-*** 26,30 ****
- looks for to find the patch level (for the sccs version string). */
-
-! #define PATCHLEVEL 12
-
- #endif /* _PATCHLEVEL_H_ */
---- 26,30 ----
- looks for to find the patch level (for the sccs version string). */
-
-! #define PATCHLEVEL 13
-
- #endif /* _PATCHLEVEL_H_ */
+++ /dev/null
- BASH PATCH REPORT
- =================
-
-Bash-Release: 4.3
-Patch-ID: bash43-014
-
-Bug-Reported-by: Greg Wooledge <wooledg@eeg.ccf.org>
-Bug-Reference-ID: <20140418202123.GB7660@eeg.ccf.org>
-Bug-Reference-URL: http://lists.gnu.org/archive/html/help-bash/2014-04/msg00004.html
-
-Bug-Description:
-
-Under certain circumstances, $@ is expanded incorrectly in contexts where
-word splitting is not performed.
-
-Patch (apply with `patch -p0'):
-*** ../bash-4.3-patched/subst.c 2014-01-23 16:26:37.000000000 -0500
---- subst.c 2014-04-19 15:41:26.000000000 -0400
-***************
-*** 3249,3254 ****
---- 3249,3256 ----
- return ((char *)NULL);
-
-+ expand_no_split_dollar_star = 1;
- w->flags |= W_NOSPLIT2;
- l = call_expand_word_internal (w, 0, 0, (int *)0, (int *)0);
-+ expand_no_split_dollar_star = 0;
- if (l)
- {
-***************
-*** 7848,7851 ****
---- 7850,7857 ----
- according to POSIX.2, this expands to a list of the positional
- parameters no matter what IFS is set to. */
-+ /* XXX - what to do when in a context where word splitting is not
-+ performed? Even when IFS is not the default, posix seems to imply
-+ that we behave like unquoted $* ? Maybe we should use PF_NOSPLIT2
-+ here. */
- temp = string_list_dollar_at (list, (pflags & PF_ASSIGNRHS) ? (quoted|Q_DOUBLE_QUOTES) : quoted);
-
-***************
-*** 8817,8820 ****
---- 8823,8827 ----
- {
- char *ifs_chars;
-+ char *tstring;
-
- ifs_chars = (quoted_dollar_at || has_dollar_at) ? ifs_value : (char *)NULL;
-***************
-*** 8831,8834 ****
---- 8838,8865 ----
- if (split_on_spaces)
- list = list_string (istring, " ", 1); /* XXX quoted == 1? */
-+ /* If we have $@ (has_dollar_at != 0) and we are in a context where we
-+ don't want to split the result (W_NOSPLIT2), and we are not quoted,
-+ we have already separated the arguments with the first character of
-+ $IFS. In this case, we want to return a list with a single word
-+ with the separator possibly replaced with a space (it's what other
-+ shells seem to do).
-+ quoted_dollar_at is internal to this function and is set if we are
-+ passed an argument that is unquoted (quoted == 0) but we encounter a
-+ double-quoted $@ while expanding it. */
-+ else if (has_dollar_at && quoted_dollar_at == 0 && ifs_chars && quoted == 0 && (word->flags & W_NOSPLIT2))
-+ {
-+ /* Only split and rejoin if we have to */
-+ if (*ifs_chars && *ifs_chars != ' ')
-+ {
-+ list = list_string (istring, *ifs_chars ? ifs_chars : " ", 1);
-+ tstring = string_list (list);
-+ }
-+ else
-+ tstring = istring;
-+ tword = make_bare_word (tstring);
-+ if (tstring != istring)
-+ free (tstring);
-+ goto set_word_flags;
-+ }
- else if (has_dollar_at && ifs_chars)
- list = list_string (istring, *ifs_chars ? ifs_chars : " ", 1);
-***************
-*** 8836,8839 ****
---- 8867,8871 ----
- {
- tword = make_bare_word (istring);
-+ set_word_flags:
- if ((quoted & (Q_DOUBLE_QUOTES|Q_HERE_DOCUMENT)) || (quoted_state == WHOLLY_QUOTED))
- tword->flags |= W_QUOTED;
-*** ../bash-4.3/patchlevel.h 2012-12-29 10:47:57.000000000 -0500
---- patchlevel.h 2014-03-20 20:01:28.000000000 -0400
-***************
-*** 26,30 ****
- looks for to find the patch level (for the sccs version string). */
-
-! #define PATCHLEVEL 13
-
- #endif /* _PATCHLEVEL_H_ */
---- 26,30 ----
- looks for to find the patch level (for the sccs version string). */
-
-! #define PATCHLEVEL 14
-
- #endif /* _PATCHLEVEL_H_ */
+++ /dev/null
- BASH PATCH REPORT
- =================
-
-Bash-Release: 4.3
-Patch-ID: bash43-015
-
-Bug-Reported-by: Clark Wang <dearvoid@gmail.com>
-Bug-Reference-ID: <CADv8-og2TOSoabXeNVXVGaXN3tEMHnYVq1rwOLe5meaRPSGRig@mail.gmail.com>
-Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2014-04/msg00095.html
-
-Bug-Description:
-
-When completing directory names, the directory name is dequoted twice.
-This causes problems for directories with single and double quotes in
-their names.
-
-Patch (apply with `patch -p0'):
-*** ../bash-4.3-patched/bashline.c 2014-02-09 19:56:58.000000000 -0500
---- bashline.c 2014-04-25 14:57:52.000000000 -0400
-***************
-*** 4168,4174 ****
-
- qc = rl_dispatching ? rl_completion_quote_character : 0;
-! dfn = bash_dequote_filename ((char *)text, qc);
- m1 = rl_completion_matches (dfn, rl_filename_completion_function);
-! free (dfn);
-
- if (m1 == 0 || m1[0] == 0)
---- 4209,4222 ----
-
- qc = rl_dispatching ? rl_completion_quote_character : 0;
-! /* If rl_completion_found_quote != 0, rl_completion_matches will call the
-! filename dequoting function, causing the directory name to be dequoted
-! twice. */
-! if (rl_dispatching && rl_completion_found_quote == 0)
-! dfn = bash_dequote_filename ((char *)text, qc);
-! else
-! dfn = (char *)text;
- m1 = rl_completion_matches (dfn, rl_filename_completion_function);
-! if (dfn != text)
-! free (dfn);
-
- if (m1 == 0 || m1[0] == 0)
-*** ../bash-4.3/patchlevel.h 2012-12-29 10:47:57.000000000 -0500
---- patchlevel.h 2014-03-20 20:01:28.000000000 -0400
-***************
-*** 26,30 ****
- looks for to find the patch level (for the sccs version string). */
-
-! #define PATCHLEVEL 14
-
- #endif /* _PATCHLEVEL_H_ */
---- 26,30 ----
- looks for to find the patch level (for the sccs version string). */
-
-! #define PATCHLEVEL 15
-
- #endif /* _PATCHLEVEL_H_ */
+++ /dev/null
- BASH PATCH REPORT
- =================
-
-Bash-Release: 4.3
-Patch-ID: bash43-016
-
-Bug-Reported-by: Pierre Gaston <pierre.gaston@gmail.com>
-Bug-Reference-ID: <CAPSX3sTCD61k1VQLJ5r-LWzEt+e7Xc-fxXmwn2u8EA5gJJej8Q@mail.gmail.com>
-Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2014-04/msg00100.html
-
-Bug-Description:
-
-An extended glob pattern containing a slash (`/') causes the globbing code
-to misinterpret it as a directory separator.
-
-Patch (apply with `patch -p0'):
-*** ../bash-4.3-patched/lib/glob/glob.c 2014-03-28 10:54:23.000000000 -0400
---- lib/glob/glob.c 2014-05-02 10:24:28.000000000 -0400
-***************
-*** 124,127 ****
---- 124,129 ----
- extern wchar_t *glob_patscan_wc __P((wchar_t *, wchar_t *, int));
-
-+ extern char *glob_dirscan __P((char *, int));
-+
- /* Compile `glob_loop.c' for single-byte characters. */
- #define CHAR unsigned char
-***************
-*** 188,191 ****
---- 190,196 ----
- pe = glob_patscan (pp, se, 0); /* end of extglob pattern (( */
- /* we should check for invalid extglob pattern here */
-+ if (pe == 0)
-+ return 0;
-+
- /* if pe != se we have more of the pattern at the end of the extglob
- pattern. Check the easy case first ( */
-***************
-*** 1016,1020 ****
- char **result;
- unsigned int result_size;
-! char *directory_name, *filename, *dname;
- unsigned int directory_len;
- int free_dirname; /* flag */
---- 1021,1025 ----
- char **result;
- unsigned int result_size;
-! char *directory_name, *filename, *dname, *fn;
- unsigned int directory_len;
- int free_dirname; /* flag */
-***************
-*** 1032,1035 ****
---- 1037,1052 ----
- /* Find the filename. */
- filename = strrchr (pathname, '/');
-+ #if defined (EXTENDED_GLOB)
-+ if (filename && extended_glob)
-+ {
-+ fn = glob_dirscan (pathname, '/');
-+ #if DEBUG_MATCHING
-+ if (fn != filename)
-+ fprintf (stderr, "glob_filename: glob_dirscan: fn (%s) != filename (%s)\n", fn ? fn : "(null)", filename);
-+ #endif
-+ filename = fn;
-+ }
-+ #endif
-+
- if (filename == NULL)
- {
-*** ../bash-4.3-patched/lib/glob/gmisc.c 2014-03-28 10:54:23.000000000 -0400
---- lib/glob/gmisc.c 2014-05-02 09:35:57.000000000 -0400
-***************
-*** 43,46 ****
---- 43,48 ----
- #define WRPAREN L')'
-
-+ extern char *glob_patscan __P((char *, char *, int));
-+
- /* Return 1 of the first character of WSTRING could match the first
- character of pattern WPAT. Wide character version. */
-***************
-*** 376,377 ****
---- 378,410 ----
- return matlen;
- }
-+
-+ /* Skip characters in PAT and return the final occurrence of DIRSEP. This
-+ is only called when extended_glob is set, so we have to skip over extglob
-+ patterns x(...) */
-+ char *
-+ glob_dirscan (pat, dirsep)
-+ char *pat;
-+ int dirsep;
-+ {
-+ char *p, *d, *pe, *se;
-+
-+ d = pe = se = 0;
-+ for (p = pat; p && *p; p++)
-+ {
-+ if (extglob_pattern_p (p))
-+ {
-+ if (se == 0)
-+ se = p + strlen (p) - 1;
-+ pe = glob_patscan (p + 2, se, 0);
-+ if (pe == 0)
-+ continue;
-+ else if (*pe == 0)
-+ break;
-+ p = pe - 1; /* will do increment above */
-+ continue;
-+ }
-+ if (*p == dirsep)
-+ d = p;
-+ }
-+ return d;
-+ }
-
-*** ../bash-4.3/patchlevel.h 2012-12-29 10:47:57.000000000 -0500
---- patchlevel.h 2014-03-20 20:01:28.000000000 -0400
-***************
-*** 26,30 ****
- looks for to find the patch level (for the sccs version string). */
-
-! #define PATCHLEVEL 15
-
- #endif /* _PATCHLEVEL_H_ */
---- 26,30 ----
- looks for to find the patch level (for the sccs version string). */
-
-! #define PATCHLEVEL 16
-
- #endif /* _PATCHLEVEL_H_ */
+++ /dev/null
- BASH PATCH REPORT
- =================
-
-Bash-Release: 4.3
-Patch-ID: bash43-017
-
-Bug-Reported-by: Dan Douglas <ormaaj@gmail.com>
-Bug-Reference-ID: <7781746.RhfoTROLxF@smorgbox>
-Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2014-05/msg00026.html
-
-Bug-Description:
-
-The code that creates local variables should not clear the `invisible'
-attribute when returning an existing local variable. Let the code that
-actually assigns a value clear it.
-
-Patch (apply with `patch -p0'):
-*** ../bash-4.3-patched/variables.c 2014-02-14 11:55:12.000000000 -0500
---- variables.c 2014-05-07 10:53:57.000000000 -0400
-***************
-*** 2198,2205 ****
- old_var = find_variable (name);
- if (old_var && local_p (old_var) && old_var->context == variable_context)
-! {
-! VUNSETATTR (old_var, att_invisible); /* XXX */
-! return (old_var);
-! }
-
- was_tmpvar = old_var && tempvar_p (old_var);
---- 2260,2264 ----
- old_var = find_variable (name);
- if (old_var && local_p (old_var) && old_var->context == variable_context)
-! return (old_var);
-
- was_tmpvar = old_var && tempvar_p (old_var);
-
-*** ../bash-4.3/patchlevel.h 2012-12-29 10:47:57.000000000 -0500
---- patchlevel.h 2014-03-20 20:01:28.000000000 -0400
-***************
-*** 26,30 ****
- looks for to find the patch level (for the sccs version string). */
-
-! #define PATCHLEVEL 16
-
- #endif /* _PATCHLEVEL_H_ */
---- 26,30 ----
- looks for to find the patch level (for the sccs version string). */
-
-! #define PATCHLEVEL 17
-
- #endif /* _PATCHLEVEL_H_ */
+++ /dev/null
- BASH PATCH REPORT
- =================
-
-Bash-Release: 4.3
-Patch-ID: bash43-018
-
-Bug-Reported-by: Geir Hauge <geir.hauge@gmail.com>
-Bug-Reference-ID: <CAO-BiTLOvfPXDypg61jcBausADrxUKJejakV2WTWP26cW0=rgA@mail.gmail.com>
-Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2014-05/msg00040.html
-
-Bug-Description:
-
-When assigning an array variable using the compound assignment syntax,
-but using `declare' with the rhs of the compound assignment quoted, the
-shell did not mark the variable as visible after successfully performing
-the assignment.
-
-Patch (apply with `patch -p0'):
-*** ../bash-4.3-patched/arrayfunc.c 2014-03-28 10:54:21.000000000 -0400
---- arrayfunc.c 2014-05-12 11:19:00.000000000 -0400
-***************
-*** 180,183 ****
---- 180,184 ----
- FREE (newval);
-
-+ VUNSETATTR (entry, att_invisible); /* no longer invisible */
- return (entry);
- }
-
-*** ../bash-4.3/patchlevel.h 2012-12-29 10:47:57.000000000 -0500
---- patchlevel.h 2014-03-20 20:01:28.000000000 -0400
-***************
-*** 26,30 ****
- looks for to find the patch level (for the sccs version string). */
-
-! #define PATCHLEVEL 17
-
- #endif /* _PATCHLEVEL_H_ */
---- 26,30 ----
- looks for to find the patch level (for the sccs version string). */
-
-! #define PATCHLEVEL 18
-
- #endif /* _PATCHLEVEL_H_ */
+++ /dev/null
- BASH PATCH REPORT
- =================
-
-Bash-Release: 4.3
-Patch-ID: bash43-019
-
-Bug-Reported-by: John Lenton
-Bug-Reference-ID:
-Bug-Reference-URL: https://bugs.launchpad.net/ubuntu/+source/bash/+bug/1317476
-
-Bug-Description:
-
-The -t timeout option to `read' does not work when the -e option is used.
-
-Patch (apply with `patch -p0'):
-
-*** ../bash-4.3-patched/lib/readline/input.c 2014-01-10 15:07:08.000000000 -0500
---- lib/readline/input.c 2014-05-22 18:40:59.000000000 -0400
-***************
-*** 535,540 ****
---- 538,551 ----
- else if (_rl_caught_signal == SIGHUP || _rl_caught_signal == SIGTERM)
- return (RL_ISSTATE (RL_STATE_READCMD) ? READERR : EOF);
-+ /* keyboard-generated signals of interest */
- else if (_rl_caught_signal == SIGINT || _rl_caught_signal == SIGQUIT)
- RL_CHECK_SIGNALS ();
-+ /* non-keyboard-generated signals of interest */
-+ else if (_rl_caught_signal == SIGALRM
-+ #if defined (SIGVTALRM)
-+ || _rl_caught_signal == SIGVTALRM
-+ #endif
-+ )
-+ RL_CHECK_SIGNALS ();
-
- if (rl_signal_event_hook)
-*** ../bash-4.3-patched/builtins/read.def 2013-09-02 11:54:00.000000000 -0400
---- builtins/read.def 2014-05-08 11:43:35.000000000 -0400
-***************
-*** 443,447 ****
- #if defined (READLINE)
- if (edit)
-! add_unwind_protect (reset_attempted_completion_function, (char *)NULL);
- #endif
- falarm (tmsec, tmusec);
---- 443,450 ----
- #if defined (READLINE)
- if (edit)
-! {
-! add_unwind_protect (reset_attempted_completion_function, (char *)NULL);
-! add_unwind_protect (bashline_reset_event_hook, (char *)NULL);
-! }
- #endif
- falarm (tmsec, tmusec);
-***************
-*** 1022,1025 ****
---- 1025,1029 ----
- old_attempted_completion_function = rl_attempted_completion_function;
- rl_attempted_completion_function = (rl_completion_func_t *)NULL;
-+ bashline_set_event_hook ();
- if (itext)
- {
-***************
-*** 1033,1036 ****
---- 1037,1041 ----
- rl_attempted_completion_function = old_attempted_completion_function;
- old_attempted_completion_function = (rl_completion_func_t *)NULL;
-+ bashline_reset_event_hook ();
-
- if (ret == 0)
-*** ../bash-4.3/patchlevel.h 2012-12-29 10:47:57.000000000 -0500
---- patchlevel.h 2014-03-20 20:01:28.000000000 -0400
-***************
-*** 26,30 ****
- looks for to find the patch level (for the sccs version string). */
-
-! #define PATCHLEVEL 18
-
- #endif /* _PATCHLEVEL_H_ */
---- 26,30 ----
- looks for to find the patch level (for the sccs version string). */
-
-! #define PATCHLEVEL 19
-
- #endif /* _PATCHLEVEL_H_ */
+++ /dev/null
- BASH PATCH REPORT
- =================
-
-Bash-Release: 4.3
-Patch-ID: bash43-020
-
-Bug-Reported-by: Jared Yanovich <slovichon@gmail.com>
-Bug-Reference-ID: <20140417073654.GB26875@nightderanger.psc.edu>
-Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2014-04/msg00065.html
-
-Bug-Description:
-
-When PS2 contains a command substitution, here-documents entered in an
-interactive shell can sometimes cause a segmentation fault.
-
-Patch (apply with `patch -p0'):
-
-*** ../bash-4.3-patched/shell.h 2012-12-25 21:11:01.000000000 -0500
---- shell.h 2014-06-03 09:24:28.000000000 -0400
-***************
-*** 169,173 ****
- int expand_aliases;
- int echo_input_at_read;
-!
- } sh_parser_state_t;
-
---- 169,174 ----
- int expand_aliases;
- int echo_input_at_read;
-! int need_here_doc;
-!
- } sh_parser_state_t;
-
-*** ../bash-4.3-patched/parse.y 2014-05-14 09:16:40.000000000 -0400
---- parse.y 2014-04-30 09:27:59.000000000 -0400
-***************
-*** 2643,2647 ****
-
- r = 0;
-! while (need_here_doc)
- {
- parser_state |= PST_HEREDOC;
---- 2643,2647 ----
-
- r = 0;
-! while (need_here_doc > 0)
- {
- parser_state |= PST_HEREDOC;
-***************
-*** 6076,6079 ****
---- 6076,6080 ----
- ps->expand_aliases = expand_aliases;
- ps->echo_input_at_read = echo_input_at_read;
-+ ps->need_here_doc = need_here_doc;
-
- ps->token = token;
-***************
-*** 6124,6127 ****
---- 6125,6129 ----
- expand_aliases = ps->expand_aliases;
- echo_input_at_read = ps->echo_input_at_read;
-+ need_here_doc = ps->need_here_doc;
-
- FREE (token);
-*** ../bash-4.3-patched/y.tab.c 2014-04-07 11:56:12.000000000 -0400
---- y.tab.c 2014-07-30 09:55:57.000000000 -0400
-***************
-*** 4955,4959 ****
-
- r = 0;
-! while (need_here_doc)
- {
- parser_state |= PST_HEREDOC;
---- 5151,5155 ----
-
- r = 0;
-! while (need_here_doc > 0)
- {
- parser_state |= PST_HEREDOC;
-***************
-*** 8388,8391 ****
---- 8584,8588 ----
- ps->expand_aliases = expand_aliases;
- ps->echo_input_at_read = echo_input_at_read;
-+ ps->need_here_doc = need_here_doc;
-
- ps->token = token;
-***************
-*** 8436,8439 ****
---- 8633,8637 ----
- expand_aliases = ps->expand_aliases;
- echo_input_at_read = ps->echo_input_at_read;
-+ need_here_doc = ps->need_here_doc;
-
- FREE (token);
-*** ../bash-4.3/patchlevel.h 2012-12-29 10:47:57.000000000 -0500
---- patchlevel.h 2014-03-20 20:01:28.000000000 -0400
-***************
-*** 26,30 ****
- looks for to find the patch level (for the sccs version string). */
-
-! #define PATCHLEVEL 19
-
- #endif /* _PATCHLEVEL_H_ */
---- 26,30 ----
- looks for to find the patch level (for the sccs version string). */
-
-! #define PATCHLEVEL 20
-
- #endif /* _PATCHLEVEL_H_ */
+++ /dev/null
- BASH PATCH REPORT
- =================
-
-Bash-Release: 4.3
-Patch-ID: bash43-021
-
-Bug-Reported-by: Jared Yanovich <slovichon@gmail.com>
-Bug-Reference-ID: <20140625225019.GJ17044@nightderanger.psc.edu>
-Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2014-06/msg00070.html
-
-Bug-Description:
-
-When the readline `revert-all-at-newline' option is set, pressing newline
-when the current line is one retrieved from history results in a double free
-and a segmentation fault.
-
-Patch (apply with `patch -p0'):
-
-*** ../bash-4.3-patched/lib/readline/misc.c 2012-09-01 18:03:11.000000000 -0400
---- lib/readline/misc.c 2014-06-30 13:41:19.000000000 -0400
-***************
-*** 462,465 ****
---- 462,466 ----
- /* Set up rl_line_buffer and other variables from history entry */
- rl_replace_from_history (entry, 0); /* entry->line is now current */
-+ entry->data = 0; /* entry->data is now current undo list */
- /* Undo all changes to this history entry */
- while (rl_undo_list)
-***************
-*** 469,473 ****
- FREE (entry->line);
- entry->line = savestring (rl_line_buffer);
-- entry->data = 0;
- }
- entry = previous_history ();
---- 470,473 ----
-
-*** ../bash-4.3/patchlevel.h 2012-12-29 10:47:57.000000000 -0500
---- patchlevel.h 2014-03-20 20:01:28.000000000 -0400
-***************
-*** 26,30 ****
- looks for to find the patch level (for the sccs version string). */
-
-! #define PATCHLEVEL 20
-
- #endif /* _PATCHLEVEL_H_ */
---- 26,30 ----
- looks for to find the patch level (for the sccs version string). */
-
-! #define PATCHLEVEL 21
-
- #endif /* _PATCHLEVEL_H_ */
+++ /dev/null
- BASH PATCH REPORT
- =================
-
-Bash-Release: 4.3
-Patch-ID: bash43-022
-
-Bug-Reported-by: scorp.dev.null@gmail.com
-Bug-Reference-ID: <E1WxXw8-0007iE-Bi@pcm14>
-Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2014-06/msg00061.html
-
-Bug-Description:
-
-Using nested pipelines within loops with the `lastpipe' option set can result
-in a segmentation fault.
-
-Patch (apply with `patch -p0'):
-
-*** ../bash-4.3-patched/execute_cmd.c 2014-01-31 10:54:52.000000000 -0500
---- execute_cmd.c 2014-06-19 08:05:49.000000000 -0400
-***************
-*** 2410,2414 ****
- lstdin = wait_for (lastpid);
- #if defined (JOB_CONTROL)
-! exec_result = job_exit_status (lastpipe_jid);
- #endif
- unfreeze_jobs_list ();
---- 2425,2438 ----
- lstdin = wait_for (lastpid);
- #if defined (JOB_CONTROL)
-! /* If wait_for removes the job from the jobs table, use result of last
-! command as pipeline's exit status as usual. The jobs list can get
-! frozen and unfrozen at inconvenient times if there are multiple pipelines
-! running simultaneously. */
-! if (INVALID_JOB (lastpipe_jid) == 0)
-! exec_result = job_exit_status (lastpipe_jid);
-! else if (pipefail_opt)
-! exec_result = exec_result | lstdin; /* XXX */
-! /* otherwise we use exec_result */
-!
- #endif
- unfreeze_jobs_list ();
-*** ../bash-4.3/patchlevel.h 2012-12-29 10:47:57.000000000 -0500
---- patchlevel.h 2014-03-20 20:01:28.000000000 -0400
-***************
-*** 26,30 ****
- looks for to find the patch level (for the sccs version string). */
-
-! #define PATCHLEVEL 21
-
- #endif /* _PATCHLEVEL_H_ */
---- 26,30 ----
- looks for to find the patch level (for the sccs version string). */
-
-! #define PATCHLEVEL 22
-
- #endif /* _PATCHLEVEL_H_ */
+++ /dev/null
- BASH PATCH REPORT
- =================
-
-Bash-Release: 4.3
-Patch-ID: bash43-023
-
-Bug-Reported-by: Tim Friske <me@timfriske.com>
-Bug-Reference-ID: <CAM1RzOcOR9zzC2i+aeES6LtbHNHoOV+0pZEYPrqxv_QAii-RXA@mail.gmail.com>
-Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2014-06/msg00056.html
-
-Bug-Description:
-
-Bash does not correctly parse process substitution constructs that contain
-unbalanced parentheses as part of the contained command.
-
-Patch (apply with `patch -p0'):
-
-*** ../bash-4.3-patched/subst.h 2014-01-11 21:02:27.000000000 -0500
---- subst.h 2014-07-20 17:25:01.000000000 -0400
-***************
-*** 83,87 ****
- Start extracting at (SINDEX) as if we had just seen "<(".
- Make (SINDEX) get the position just after the matching ")". */
-! extern char *extract_process_subst __P((char *, char *, int *));
- #endif /* PROCESS_SUBSTITUTION */
-
---- 83,87 ----
- Start extracting at (SINDEX) as if we had just seen "<(".
- Make (SINDEX) get the position just after the matching ")". */
-! extern char *extract_process_subst __P((char *, char *, int *, int));
- #endif /* PROCESS_SUBSTITUTION */
-
-*** ../bash-4.3-patched/subst.c 2014-05-15 08:26:45.000000000 -0400
---- subst.c 2014-07-20 17:26:44.000000000 -0400
-***************
-*** 1193,1202 ****
- Make (SINDEX) get the position of the matching ")". */ /*))*/
- char *
-! extract_process_subst (string, starter, sindex)
- char *string;
- char *starter;
- int *sindex;
- {
- return (extract_delimited_string (string, sindex, starter, "(", ")", SX_COMMAND));
- }
- #endif /* PROCESS_SUBSTITUTION */
---- 1193,1208 ----
- Make (SINDEX) get the position of the matching ")". */ /*))*/
- char *
-! extract_process_subst (string, starter, sindex, xflags)
- char *string;
- char *starter;
- int *sindex;
-+ int xflags;
- {
-+ #if 0
- return (extract_delimited_string (string, sindex, starter, "(", ")", SX_COMMAND));
-+ #else
-+ xflags |= (no_longjmp_on_fatal_error ? SX_NOLONGJMP : 0);
-+ return (xparse_dolparen (string, string+*sindex, sindex, xflags));
-+ #endif
- }
- #endif /* PROCESS_SUBSTITUTION */
-***************
-*** 1786,1790 ****
- if (string[si] == '\0')
- CQ_RETURN(si);
-! temp = extract_process_subst (string, (c == '<') ? "<(" : ">(", &si);
- free (temp); /* no SX_ALLOC here */
- i = si;
---- 1792,1796 ----
- if (string[si] == '\0')
- CQ_RETURN(si);
-! temp = extract_process_subst (string, (c == '<') ? "<(" : ">(", &si, 0);
- free (temp); /* no SX_ALLOC here */
- i = si;
-***************
-*** 8250,8254 ****
- t_index = sindex + 1; /* skip past both '<' and LPAREN */
-
-! temp1 = extract_process_subst (string, (c == '<') ? "<(" : ">(", &t_index); /*))*/
- sindex = t_index;
-
---- 8256,8260 ----
- t_index = sindex + 1; /* skip past both '<' and LPAREN */
-
-! temp1 = extract_process_subst (string, (c == '<') ? "<(" : ">(", &t_index, 0); /*))*/
- sindex = t_index;
-
-*** ../bash-4.3/patchlevel.h 2012-12-29 10:47:57.000000000 -0500
---- patchlevel.h 2014-03-20 20:01:28.000000000 -0400
-***************
-*** 26,30 ****
- looks for to find the patch level (for the sccs version string). */
-
-! #define PATCHLEVEL 22
-
- #endif /* _PATCHLEVEL_H_ */
---- 26,30 ----
- looks for to find the patch level (for the sccs version string). */
-
-! #define PATCHLEVEL 23
-
- #endif /* _PATCHLEVEL_H_ */
+++ /dev/null
- BASH PATCH REPORT
- =================
-
-Bash-Release: 4.3
-Patch-ID: bash43-024
-
-Bug-Reported-by: Corentin Peuvrel <cpeuvrel@pom-monitoring.com>
-Bug-Reference-ID: <53CE9E5D.6050203@pom-monitoring.com>
-Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2014-07/msg00021.html
-
-Bug-Description:
-
-Indirect variable references do not work correctly if the reference
-variable expands to an array reference using a subscript other than 0
-(e.g., foo='bar[1]' ; echo ${!foo}).
-
-Patch (apply with `patch -p0'):
-
-*** ../bash-4.3-patched/subst.c 2014-06-03 09:32:44.000000000 -0400
---- subst.c 2014-07-23 09:58:19.000000000 -0400
-***************
-*** 7375,7379 ****
-
- if (want_indir)
-! tdesc = parameter_brace_expand_indir (name + 1, var_is_special, quoted, quoted_dollar_atp, contains_dollar_at);
- else
- tdesc = parameter_brace_expand_word (name, var_is_special, quoted, PF_IGNUNBOUND|(pflags&(PF_NOSPLIT2|PF_ASSIGNRHS)), &ind);
---- 7445,7455 ----
-
- if (want_indir)
-! {
-! tdesc = parameter_brace_expand_indir (name + 1, var_is_special, quoted, quoted_dollar_atp, contains_dollar_at);
-! /* Turn off the W_ARRAYIND flag because there is no way for this function
-! to return the index we're supposed to be using. */
-! if (tdesc && tdesc->flags)
-! tdesc->flags &= ~W_ARRAYIND;
-! }
- else
- tdesc = parameter_brace_expand_word (name, var_is_special, quoted, PF_IGNUNBOUND|(pflags&(PF_NOSPLIT2|PF_ASSIGNRHS)), &ind);
-*** ../bash-4.3/patchlevel.h 2012-12-29 10:47:57.000000000 -0500
---- patchlevel.h 2014-03-20 20:01:28.000000000 -0400
-***************
-*** 26,30 ****
- looks for to find the patch level (for the sccs version string). */
-
-! #define PATCHLEVEL 23
-
- #endif /* _PATCHLEVEL_H_ */
---- 26,30 ----
- looks for to find the patch level (for the sccs version string). */
-
-! #define PATCHLEVEL 24
-
- #endif /* _PATCHLEVEL_H_ */
+++ /dev/null
- BASH PATCH REPORT
- =================
-
-Bash-Release: 4.3
-Patch-ID: bash43-025
-
-Bug-Reported-by: Stephane Chazelas <stephane.chazelas@gmail.com>
-Bug-Reference-ID:
-Bug-Reference-URL:
-
-Bug-Description:
-
-Under certain circumstances, bash will execute user code while processing the
-environment for exported function definitions.
-
-Patch (apply with `patch -p0'):
-
-*** ../bash-4.3-patched/builtins/common.h 2013-07-08 16:54:47.000000000 -0400
---- builtins/common.h 2014-09-12 14:25:47.000000000 -0400
-***************
-*** 34,37 ****
---- 49,54 ----
- #define SEVAL_PARSEONLY 0x020
- #define SEVAL_NOLONGJMP 0x040
-+ #define SEVAL_FUNCDEF 0x080 /* only allow function definitions */
-+ #define SEVAL_ONECMD 0x100 /* only allow a single command */
-
- /* Flags for describe_command, shared between type.def and command.def */
-*** ../bash-4.3-patched/builtins/evalstring.c 2014-02-11 09:42:10.000000000 -0500
---- builtins/evalstring.c 2014-09-14 14:15:13.000000000 -0400
-***************
-*** 309,312 ****
---- 313,324 ----
- struct fd_bitmap *bitmap;
-
-+ if ((flags & SEVAL_FUNCDEF) && command->type != cm_function_def)
-+ {
-+ internal_warning ("%s: ignoring function definition attempt", from_file);
-+ should_jump_to_top_level = 0;
-+ last_result = last_command_exit_value = EX_BADUSAGE;
-+ break;
-+ }
-+
- bitmap = new_fd_bitmap (FD_BITMAP_SIZE);
- begin_unwind_frame ("pe_dispose");
-***************
-*** 369,372 ****
---- 381,387 ----
- dispose_fd_bitmap (bitmap);
- discard_unwind_frame ("pe_dispose");
-+
-+ if (flags & SEVAL_ONECMD)
-+ break;
- }
- }
-*** ../bash-4.3-patched/variables.c 2014-05-15 08:26:50.000000000 -0400
---- variables.c 2014-09-14 14:23:35.000000000 -0400
-***************
-*** 359,369 ****
- strcpy (temp_string + char_index + 1, string);
-
-! if (posixly_correct == 0 || legal_identifier (name))
-! parse_and_execute (temp_string, name, SEVAL_NONINT|SEVAL_NOHIST);
-!
-! /* Ancient backwards compatibility. Old versions of bash exported
-! functions like name()=() {...} */
-! if (name[char_index - 1] == ')' && name[char_index - 2] == '(')
-! name[char_index - 2] = '\0';
-
- if (temp_var = find_function (name))
---- 364,372 ----
- strcpy (temp_string + char_index + 1, string);
-
-! /* Don't import function names that are invalid identifiers from the
-! environment, though we still allow them to be defined as shell
-! variables. */
-! if (legal_identifier (name))
-! parse_and_execute (temp_string, name, SEVAL_NONINT|SEVAL_NOHIST|SEVAL_FUNCDEF|SEVAL_ONECMD);
-
- if (temp_var = find_function (name))
-***************
-*** 382,389 ****
- report_error (_("error importing function definition for `%s'"), name);
- }
--
-- /* ( */
-- if (name[char_index - 1] == ')' && name[char_index - 2] == '\0')
-- name[char_index - 2] = '('; /* ) */
- }
- #if defined (ARRAY_VARS)
---- 385,388 ----
-*** ../bash-4.3-patched/subst.c 2014-08-11 11:16:35.000000000 -0400
---- subst.c 2014-09-12 15:31:04.000000000 -0400
-***************
-*** 8048,8052 ****
- goto return0;
- }
-! else if (var = find_variable_last_nameref (temp1))
- {
- temp = nameref_cell (var);
---- 8118,8124 ----
- goto return0;
- }
-! else if (var && (invisible_p (var) || var_isset (var) == 0))
-! temp = (char *)NULL;
-! else if ((var = find_variable_last_nameref (temp1)) && var_isset (var) && invisible_p (var) == 0)
- {
- temp = nameref_cell (var);
-*** ../bash-4.3/patchlevel.h 2012-12-29 10:47:57.000000000 -0500
---- patchlevel.h 2014-03-20 20:01:28.000000000 -0400
-***************
-*** 26,30 ****
- looks for to find the patch level (for the sccs version string). */
-
-! #define PATCHLEVEL 24
-
- #endif /* _PATCHLEVEL_H_ */
---- 26,30 ----
- looks for to find the patch level (for the sccs version string). */
-
-! #define PATCHLEVEL 25
-
- #endif /* _PATCHLEVEL_H_ */
+++ /dev/null
- BASH PATCH REPORT
- =================
-
-Bash-Release: 4.3
-Patch-ID: bash43-026
-
-Bug-Reported-by: Tavis Ormandy <taviso () cmpxchg8b com>
-Bug-Reference-ID:
-Bug-Reference-URL: http://twitter.com/taviso/statuses/514887394294652929
-
-Bug-Description:
-
-Under certain circumstances, bash can incorrectly save a lookahead character and
-return it on a subsequent call, even when reading a new line.
-
-Patch (apply with `patch -p0'):
-
-*** ../bash-4.3.25/parse.y 2014-07-30 10:14:31.000000000 -0400
---- parse.y 2014-09-25 20:20:21.000000000 -0400
-***************
-*** 2954,2957 ****
---- 2954,2959 ----
- word_desc_to_read = (WORD_DESC *)NULL;
-
-+ eol_ungetc_lookahead = 0;
-+
- current_token = '\n'; /* XXX */
- last_read_token = '\n';
-*** ../bash-4.3.25/y.tab.c 2014-07-30 10:14:32.000000000 -0400
---- y.tab.c 2014-09-25 20:21:48.000000000 -0400
-***************
-*** 5266,5269 ****
---- 5266,5271 ----
- word_desc_to_read = (WORD_DESC *)NULL;
-
-+ eol_ungetc_lookahead = 0;
-+
- current_token = '\n'; /* XXX */
- last_read_token = '\n';
-***************
-*** 8540,8542 ****
- }
- #endif /* HANDLE_MULTIBYTE */
--
---- 8542,8543 ----
-*** ../bash-4.3/patchlevel.h 2012-12-29 10:47:57.000000000 -0500
---- patchlevel.h 2014-03-20 20:01:28.000000000 -0400
-***************
-*** 26,30 ****
- looks for to find the patch level (for the sccs version string). */
-
-! #define PATCHLEVEL 25
-
- #endif /* _PATCHLEVEL_H_ */
---- 26,30 ----
- looks for to find the patch level (for the sccs version string). */
-
-! #define PATCHLEVEL 26
-
- #endif /* _PATCHLEVEL_H_ */
+++ /dev/null
- BASH PATCH REPORT
- =================
-
-Bash-Release: 4.3
-Patch-ID: bash43-027
-
-Bug-Reported-by: Florian Weimer <fweimer@redhat.com>
-Bug-Reference-ID:
-Bug-Reference-URL:
-
-Bug-Description:
-
-This patch changes the encoding bash uses for exported functions to avoid
-clashes with shell variables and to avoid depending only on an environment
-variable's contents to determine whether or not to interpret it as a shell
-function.
-
-Patch (apply with `patch -p0'):
-
-*** ../bash-4.3.26/variables.c 2014-09-25 23:02:18.000000000 -0400
---- variables.c 2014-09-27 20:52:04.000000000 -0400
-***************
-*** 84,87 ****
---- 84,92 ----
- #define ifsname(s) ((s)[0] == 'I' && (s)[1] == 'F' && (s)[2] == 'S' && (s)[3] == '\0')
-
-+ #define BASHFUNC_PREFIX "BASH_FUNC_"
-+ #define BASHFUNC_PREFLEN 10 /* == strlen(BASHFUNC_PREFIX */
-+ #define BASHFUNC_SUFFIX "%%"
-+ #define BASHFUNC_SUFFLEN 2 /* == strlen(BASHFUNC_SUFFIX) */
-+
- extern char **environ;
-
-***************
-*** 280,284 ****
- static void dispose_temporary_env __P((sh_free_func_t *));
-
-! static inline char *mk_env_string __P((const char *, const char *));
- static char **make_env_array_from_var_list __P((SHELL_VAR **));
- static char **make_var_export_array __P((VAR_CONTEXT *));
---- 285,289 ----
- static void dispose_temporary_env __P((sh_free_func_t *));
-
-! static inline char *mk_env_string __P((const char *, const char *, int));
- static char **make_env_array_from_var_list __P((SHELL_VAR **));
- static char **make_var_export_array __P((VAR_CONTEXT *));
-***************
-*** 350,369 ****
- /* If exported function, define it now. Don't import functions from
- the environment in privileged mode. */
-! if (privmode == 0 && read_but_dont_execute == 0 && STREQN ("() {", string, 4))
- {
- string_length = strlen (string);
-! temp_string = (char *)xmalloc (3 + string_length + char_index);
-
-! strcpy (temp_string, name);
-! temp_string[char_index] = ' ';
-! strcpy (temp_string + char_index + 1, string);
-
- /* Don't import function names that are invalid identifiers from the
- environment, though we still allow them to be defined as shell
- variables. */
-! if (legal_identifier (name))
-! parse_and_execute (temp_string, name, SEVAL_NONINT|SEVAL_NOHIST|SEVAL_FUNCDEF|SEVAL_ONECMD);
-
-! if (temp_var = find_function (name))
- {
- VSETATTR (temp_var, (att_exported|att_imported));
---- 355,385 ----
- /* If exported function, define it now. Don't import functions from
- the environment in privileged mode. */
-! if (privmode == 0 && read_but_dont_execute == 0 &&
-! STREQN (BASHFUNC_PREFIX, name, BASHFUNC_PREFLEN) &&
-! STREQ (BASHFUNC_SUFFIX, name + char_index - BASHFUNC_SUFFLEN) &&
-! STREQN ("() {", string, 4))
- {
-+ size_t namelen;
-+ char *tname; /* desired imported function name */
-+
-+ namelen = char_index - BASHFUNC_PREFLEN - BASHFUNC_SUFFLEN;
-+
-+ tname = name + BASHFUNC_PREFLEN; /* start of func name */
-+ tname[namelen] = '\0'; /* now tname == func name */
-+
- string_length = strlen (string);
-! temp_string = (char *)xmalloc (namelen + string_length + 2);
-
-! memcpy (temp_string, tname, namelen);
-! temp_string[namelen] = ' ';
-! memcpy (temp_string + namelen + 1, string, string_length + 1);
-
- /* Don't import function names that are invalid identifiers from the
- environment, though we still allow them to be defined as shell
- variables. */
-! if (absolute_program (tname) == 0 && (posixly_correct == 0 || legal_identifier (tname)))
-! parse_and_execute (temp_string, tname, SEVAL_NONINT|SEVAL_NOHIST|SEVAL_FUNCDEF|SEVAL_ONECMD);
-
-! if (temp_var = find_function (tname))
- {
- VSETATTR (temp_var, (att_exported|att_imported));
-***************
-*** 378,383 ****
- }
- last_command_exit_value = 1;
-! report_error (_("error importing function definition for `%s'"), name);
- }
- }
- #if defined (ARRAY_VARS)
---- 394,402 ----
- }
- last_command_exit_value = 1;
-! report_error (_("error importing function definition for `%s'"), tname);
- }
-+
-+ /* Restore original suffix */
-+ tname[namelen] = BASHFUNC_SUFFIX[0];
- }
- #if defined (ARRAY_VARS)
-***************
-*** 2955,2959 ****
-
- INVALIDATE_EXPORTSTR (var);
-! var->exportstr = mk_env_string (name, value);
-
- array_needs_making = 1;
---- 2974,2978 ----
-
- INVALIDATE_EXPORTSTR (var);
-! var->exportstr = mk_env_string (name, value, 0);
-
- array_needs_making = 1;
-***************
-*** 3853,3871 ****
-
- static inline char *
-! mk_env_string (name, value)
- const char *name, *value;
- {
-! int name_len, value_len;
-! char *p;
-
- name_len = strlen (name);
- value_len = STRLEN (value);
-! p = (char *)xmalloc (2 + name_len + value_len);
-! strcpy (p, name);
-! p[name_len] = '=';
- if (value && *value)
-! strcpy (p + name_len + 1, value);
- else
-! p[name_len + 1] = '\0';
- return (p);
- }
---- 3872,3911 ----
-
- static inline char *
-! mk_env_string (name, value, isfunc)
- const char *name, *value;
-+ int isfunc;
- {
-! size_t name_len, value_len;
-! char *p, *q;
-
- name_len = strlen (name);
- value_len = STRLEN (value);
-!
-! /* If we are exporting a shell function, construct the encoded function
-! name. */
-! if (isfunc && value)
-! {
-! p = (char *)xmalloc (BASHFUNC_PREFLEN + name_len + BASHFUNC_SUFFLEN + value_len + 2);
-! q = p;
-! memcpy (q, BASHFUNC_PREFIX, BASHFUNC_PREFLEN);
-! q += BASHFUNC_PREFLEN;
-! memcpy (q, name, name_len);
-! q += name_len;
-! memcpy (q, BASHFUNC_SUFFIX, BASHFUNC_SUFFLEN);
-! q += BASHFUNC_SUFFLEN;
-! }
-! else
-! {
-! p = (char *)xmalloc (2 + name_len + value_len);
-! memcpy (p, name, name_len);
-! q = p + name_len;
-! }
-!
-! q[0] = '=';
- if (value && *value)
-! memcpy (q + 1, value, value_len + 1);
- else
-! q[1] = '\0';
-!
- return (p);
- }
-***************
-*** 3953,3957 ****
- using the cached exportstr... */
- list[list_index] = USE_EXPORTSTR ? savestring (value)
-! : mk_env_string (var->name, value);
-
- if (USE_EXPORTSTR == 0)
---- 3993,3997 ----
- using the cached exportstr... */
- list[list_index] = USE_EXPORTSTR ? savestring (value)
-! : mk_env_string (var->name, value, function_p (var));
-
- if (USE_EXPORTSTR == 0)
-*** ../bash-4.3/patchlevel.h 2012-12-29 10:47:57.000000000 -0500
---- patchlevel.h 2014-03-20 20:01:28.000000000 -0400
-***************
-*** 26,30 ****
- looks for to find the patch level (for the sccs version string). */
-
-! #define PATCHLEVEL 26
-
- #endif /* _PATCHLEVEL_H_ */
---- 26,30 ----
- looks for to find the patch level (for the sccs version string). */
-
-! #define PATCHLEVEL 27
-
- #endif /* _PATCHLEVEL_H_ */
+++ /dev/null
- BASH PATCH REPORT
- =================
-
-Bash-Release: 4.3
-Patch-ID: bash43-028
-
-Bug-Reported-by: Florian Weimer <fweimer@redhat.com>
-Bug-Reference-ID:
-Bug-Reference-URL:
-
-Bug-Description:
-
-There are two local buffer overflows in parse.y that can cause the shell
-to dump core when given many here-documents attached to a single command
-or many nested loops.
-
-Patch (apply with `patch -p0'):
-
-*** ../bash-4.3-patched/parse.y 2014-09-25 23:02:35.000000000 -0400
---- parse.y 2014-09-29 16:47:03.000000000 -0400
-***************
-*** 169,172 ****
---- 169,175 ----
- static int reserved_word_acceptable __P((int));
- static int yylex __P((void));
-+
-+ static void push_heredoc __P((REDIRECT *));
-+ static char *mk_alexpansion __P((char *));
- static int alias_expand_token __P((char *));
- static int time_command_acceptable __P((void));
-***************
-*** 266,270 ****
- /* Variables to manage the task of reading here documents, because we need to
- defer the reading until after a complete command has been collected. */
-! static REDIRECT *redir_stack[10];
- int need_here_doc;
-
---- 269,275 ----
- /* Variables to manage the task of reading here documents, because we need to
- defer the reading until after a complete command has been collected. */
-! #define HEREDOC_MAX 16
-!
-! static REDIRECT *redir_stack[HEREDOC_MAX];
- int need_here_doc;
-
-***************
-*** 308,312 ****
- index is decremented after a case, select, or for command is parsed. */
- #define MAX_CASE_NEST 128
-! static int word_lineno[MAX_CASE_NEST];
- static int word_top = -1;
-
---- 313,317 ----
- index is decremented after a case, select, or for command is parsed. */
- #define MAX_CASE_NEST 128
-! static int word_lineno[MAX_CASE_NEST+1];
- static int word_top = -1;
-
-***************
-*** 521,525 ****
- redir.filename = $2;
- $$ = make_redirection (source, r_reading_until, redir, 0);
-! redir_stack[need_here_doc++] = $$;
- }
- | NUMBER LESS_LESS WORD
---- 526,530 ----
- redir.filename = $2;
- $$ = make_redirection (source, r_reading_until, redir, 0);
-! push_heredoc ($$);
- }
- | NUMBER LESS_LESS WORD
-***************
-*** 528,532 ****
- redir.filename = $3;
- $$ = make_redirection (source, r_reading_until, redir, 0);
-! redir_stack[need_here_doc++] = $$;
- }
- | REDIR_WORD LESS_LESS WORD
---- 533,537 ----
- redir.filename = $3;
- $$ = make_redirection (source, r_reading_until, redir, 0);
-! push_heredoc ($$);
- }
- | REDIR_WORD LESS_LESS WORD
-***************
-*** 535,539 ****
- redir.filename = $3;
- $$ = make_redirection (source, r_reading_until, redir, REDIR_VARASSIGN);
-! redir_stack[need_here_doc++] = $$;
- }
- | LESS_LESS_MINUS WORD
---- 540,544 ----
- redir.filename = $3;
- $$ = make_redirection (source, r_reading_until, redir, REDIR_VARASSIGN);
-! push_heredoc ($$);
- }
- | LESS_LESS_MINUS WORD
-***************
-*** 542,546 ****
- redir.filename = $2;
- $$ = make_redirection (source, r_deblank_reading_until, redir, 0);
-! redir_stack[need_here_doc++] = $$;
- }
- | NUMBER LESS_LESS_MINUS WORD
---- 547,551 ----
- redir.filename = $2;
- $$ = make_redirection (source, r_deblank_reading_until, redir, 0);
-! push_heredoc ($$);
- }
- | NUMBER LESS_LESS_MINUS WORD
-***************
-*** 549,553 ****
- redir.filename = $3;
- $$ = make_redirection (source, r_deblank_reading_until, redir, 0);
-! redir_stack[need_here_doc++] = $$;
- }
- | REDIR_WORD LESS_LESS_MINUS WORD
---- 554,558 ----
- redir.filename = $3;
- $$ = make_redirection (source, r_deblank_reading_until, redir, 0);
-! push_heredoc ($$);
- }
- | REDIR_WORD LESS_LESS_MINUS WORD
-***************
-*** 556,560 ****
- redir.filename = $3;
- $$ = make_redirection (source, r_deblank_reading_until, redir, REDIR_VARASSIGN);
-! redir_stack[need_here_doc++] = $$;
- }
- | LESS_LESS_LESS WORD
---- 561,565 ----
- redir.filename = $3;
- $$ = make_redirection (source, r_deblank_reading_until, redir, REDIR_VARASSIGN);
-! push_heredoc ($$);
- }
- | LESS_LESS_LESS WORD
-***************
-*** 2637,2640 ****
---- 2642,2660 ----
- static int esacs_needed_count;
-
-+ static void
-+ push_heredoc (r)
-+ REDIRECT *r;
-+ {
-+ if (need_here_doc >= HEREDOC_MAX)
-+ {
-+ last_command_exit_value = EX_BADUSAGE;
-+ need_here_doc = 0;
-+ report_syntax_error (_("maximum here-document count exceeded"));
-+ reset_parser ();
-+ exit_shell (last_command_exit_value);
-+ }
-+ redir_stack[need_here_doc++] = r;
-+ }
-+
- void
- gather_here_documents ()
-*** ../bash-4.3.27/y.tab.c 2014-10-01 11:38:24.000000000 -0400
---- y.tab.c 2014-10-01 12:46:11.000000000 -0400
-***************
-*** 169,173 ****
-
- /* Copy the first part of user declarations. */
-! #line 21 "/usr/homes/chet/src/bash/src/parse.y"
-
- #include "config.h"
---- 169,173 ----
-
- /* Copy the first part of user declarations. */
-! #line 21 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
-
- #include "config.h"
-***************
-*** 320,323 ****
---- 320,326 ----
- static int reserved_word_acceptable __P((int));
- static int yylex __P((void));
-+
-+ static void push_heredoc __P((REDIRECT *));
-+ static char *mk_alexpansion __P((char *));
- static int alias_expand_token __P((char *));
- static int time_command_acceptable __P((void));
-***************
-*** 417,421 ****
- /* Variables to manage the task of reading here documents, because we need to
- defer the reading until after a complete command has been collected. */
-! static REDIRECT *redir_stack[10];
- int need_here_doc;
-
---- 420,426 ----
- /* Variables to manage the task of reading here documents, because we need to
- defer the reading until after a complete command has been collected. */
-! #define HEREDOC_MAX 16
-!
-! static REDIRECT *redir_stack[HEREDOC_MAX];
- int need_here_doc;
-
-***************
-*** 459,463 ****
- index is decremented after a case, select, or for command is parsed. */
- #define MAX_CASE_NEST 128
-! static int word_lineno[MAX_CASE_NEST];
- static int word_top = -1;
-
---- 464,468 ----
- index is decremented after a case, select, or for command is parsed. */
- #define MAX_CASE_NEST 128
-! static int word_lineno[MAX_CASE_NEST+1];
- static int word_top = -1;
-
-***************
-*** 493,497 ****
- #if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED
- typedef union YYSTYPE
-! #line 324 "/usr/homes/chet/src/bash/src/parse.y"
- {
- WORD_DESC *word; /* the word that we read. */
---- 498,502 ----
- #if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED
- typedef union YYSTYPE
-! #line 329 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- WORD_DESC *word; /* the word that we read. */
-***************
-*** 504,508 ****
- }
- /* Line 193 of yacc.c. */
-! #line 507 "y.tab.c"
- YYSTYPE;
- # define yystype YYSTYPE /* obsolescent; will be withdrawn */
---- 509,513 ----
- }
- /* Line 193 of yacc.c. */
-! #line 512 "y.tab.c"
- YYSTYPE;
- # define yystype YYSTYPE /* obsolescent; will be withdrawn */
-***************
-*** 517,521 ****
-
- /* Line 216 of yacc.c. */
-! #line 520 "y.tab.c"
-
- #ifdef short
---- 522,526 ----
-
- /* Line 216 of yacc.c. */
-! #line 525 "y.tab.c"
-
- #ifdef short
-***************
-*** 887,907 ****
- static const yytype_uint16 yyrline[] =
- {
-! 0, 377, 377, 388, 397, 412, 422, 424, 428, 434,
-! 440, 446, 452, 458, 464, 470, 476, 482, 488, 494,
-! 500, 506, 512, 518, 525, 532, 539, 546, 553, 560,
-! 566, 572, 578, 584, 590, 596, 602, 608, 614, 620,
-! 626, 632, 638, 644, 650, 656, 662, 668, 674, 680,
-! 686, 692, 700, 702, 704, 708, 712, 723, 725, 729,
-! 731, 733, 749, 751, 755, 757, 759, 761, 763, 765,
-! 767, 769, 771, 773, 775, 779, 784, 789, 794, 799,
-! 804, 809, 814, 821, 826, 831, 836, 843, 848, 853,
-! 858, 863, 868, 875, 880, 885, 892, 895, 898, 902,
-! 904, 935, 942, 947, 964, 969, 986, 993, 995, 997,
-! 1002, 1006, 1010, 1014, 1016, 1018, 1022, 1023, 1027, 1029,
-! 1031, 1033, 1037, 1039, 1041, 1043, 1045, 1047, 1051, 1053,
-! 1062, 1070, 1071, 1077, 1078, 1085, 1089, 1091, 1093, 1100,
-! 1102, 1104, 1108, 1109, 1112, 1114, 1116, 1120, 1121, 1130,
-! 1143, 1159, 1174, 1176, 1178, 1185, 1188, 1192, 1194, 1200,
-! 1206, 1223, 1243, 1245, 1268, 1272, 1274, 1276
- };
- #endif
---- 892,912 ----
- static const yytype_uint16 yyrline[] =
- {
-! 0, 382, 382, 393, 402, 417, 427, 429, 433, 439,
-! 445, 451, 457, 463, 469, 475, 481, 487, 493, 499,
-! 505, 511, 517, 523, 530, 537, 544, 551, 558, 565,
-! 571, 577, 583, 589, 595, 601, 607, 613, 619, 625,
-! 631, 637, 643, 649, 655, 661, 667, 673, 679, 685,
-! 691, 697, 705, 707, 709, 713, 717, 728, 730, 734,
-! 736, 738, 754, 756, 760, 762, 764, 766, 768, 770,
-! 772, 774, 776, 778, 780, 784, 789, 794, 799, 804,
-! 809, 814, 819, 826, 831, 836, 841, 848, 853, 858,
-! 863, 868, 873, 880, 885, 890, 897, 900, 903, 907,
-! 909, 940, 947, 952, 969, 974, 991, 998, 1000, 1002,
-! 1007, 1011, 1015, 1019, 1021, 1023, 1027, 1028, 1032, 1034,
-! 1036, 1038, 1042, 1044, 1046, 1048, 1050, 1052, 1056, 1058,
-! 1067, 1075, 1076, 1082, 1083, 1090, 1094, 1096, 1098, 1105,
-! 1107, 1109, 1113, 1114, 1117, 1119, 1121, 1125, 1126, 1135,
-! 1148, 1164, 1179, 1181, 1183, 1190, 1193, 1197, 1199, 1205,
-! 1211, 1228, 1248, 1250, 1273, 1277, 1279, 1281
- };
- #endif
-***************
-*** 2094,2098 ****
- {
- case 2:
-! #line 378 "/usr/homes/chet/src/bash/src/parse.y"
- {
- /* Case of regular command. Discard the error
---- 2099,2103 ----
- {
- case 2:
-! #line 383 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- /* Case of regular command. Discard the error
-***************
-*** 2108,2112 ****
-
- case 3:
-! #line 389 "/usr/homes/chet/src/bash/src/parse.y"
- {
- /* Case of regular command, but not a very
---- 2113,2117 ----
-
- case 3:
-! #line 394 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- /* Case of regular command, but not a very
-***************
-*** 2120,2124 ****
-
- case 4:
-! #line 398 "/usr/homes/chet/src/bash/src/parse.y"
- {
- /* Error during parsing. Return NULL command. */
---- 2125,2129 ----
-
- case 4:
-! #line 403 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- /* Error during parsing. Return NULL command. */
-***************
-*** 2138,2142 ****
-
- case 5:
-! #line 413 "/usr/homes/chet/src/bash/src/parse.y"
- {
- /* Case of EOF seen by itself. Do ignoreeof or
---- 2143,2147 ----
-
- case 5:
-! #line 418 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- /* Case of EOF seen by itself. Do ignoreeof or
-***************
-*** 2149,2163 ****
-
- case 6:
-! #line 423 "/usr/homes/chet/src/bash/src/parse.y"
- { (yyval.word_list) = make_word_list ((yyvsp[(1) - (1)].word), (WORD_LIST *)NULL); }
- break;
-
- case 7:
-! #line 425 "/usr/homes/chet/src/bash/src/parse.y"
- { (yyval.word_list) = make_word_list ((yyvsp[(2) - (2)].word), (yyvsp[(1) - (2)].word_list)); }
- break;
-
- case 8:
-! #line 429 "/usr/homes/chet/src/bash/src/parse.y"
- {
- source.dest = 1;
---- 2154,2168 ----
-
- case 6:
-! #line 428 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- { (yyval.word_list) = make_word_list ((yyvsp[(1) - (1)].word), (WORD_LIST *)NULL); }
- break;
-
- case 7:
-! #line 430 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- { (yyval.word_list) = make_word_list ((yyvsp[(2) - (2)].word), (yyvsp[(1) - (2)].word_list)); }
- break;
-
- case 8:
-! #line 434 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- source.dest = 1;
-***************
-*** 2168,2172 ****
-
- case 9:
-! #line 435 "/usr/homes/chet/src/bash/src/parse.y"
- {
- source.dest = 0;
---- 2173,2177 ----
-
- case 9:
-! #line 440 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- source.dest = 0;
-***************
-*** 2177,2181 ****
-
- case 10:
-! #line 441 "/usr/homes/chet/src/bash/src/parse.y"
- {
- source.dest = (yyvsp[(1) - (3)].number);
---- 2182,2186 ----
-
- case 10:
-! #line 446 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- source.dest = (yyvsp[(1) - (3)].number);
-***************
-*** 2186,2190 ****
-
- case 11:
-! #line 447 "/usr/homes/chet/src/bash/src/parse.y"
- {
- source.dest = (yyvsp[(1) - (3)].number);
---- 2191,2195 ----
-
- case 11:
-! #line 452 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- source.dest = (yyvsp[(1) - (3)].number);
-***************
-*** 2195,2199 ****
-
- case 12:
-! #line 453 "/usr/homes/chet/src/bash/src/parse.y"
- {
- source.filename = (yyvsp[(1) - (3)].word);
---- 2200,2204 ----
-
- case 12:
-! #line 458 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- source.filename = (yyvsp[(1) - (3)].word);
-***************
-*** 2204,2208 ****
-
- case 13:
-! #line 459 "/usr/homes/chet/src/bash/src/parse.y"
- {
- source.filename = (yyvsp[(1) - (3)].word);
---- 2209,2213 ----
-
- case 13:
-! #line 464 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- source.filename = (yyvsp[(1) - (3)].word);
-***************
-*** 2213,2217 ****
-
- case 14:
-! #line 465 "/usr/homes/chet/src/bash/src/parse.y"
- {
- source.dest = 1;
---- 2218,2222 ----
-
- case 14:
-! #line 470 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- source.dest = 1;
-***************
-*** 2222,2226 ****
-
- case 15:
-! #line 471 "/usr/homes/chet/src/bash/src/parse.y"
- {
- source.dest = (yyvsp[(1) - (3)].number);
---- 2227,2231 ----
-
- case 15:
-! #line 476 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- source.dest = (yyvsp[(1) - (3)].number);
-***************
-*** 2231,2235 ****
-
- case 16:
-! #line 477 "/usr/homes/chet/src/bash/src/parse.y"
- {
- source.filename = (yyvsp[(1) - (3)].word);
---- 2236,2240 ----
-
- case 16:
-! #line 482 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- source.filename = (yyvsp[(1) - (3)].word);
-***************
-*** 2240,2244 ****
-
- case 17:
-! #line 483 "/usr/homes/chet/src/bash/src/parse.y"
- {
- source.dest = 1;
---- 2245,2249 ----
-
- case 17:
-! #line 488 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- source.dest = 1;
-***************
-*** 2249,2253 ****
-
- case 18:
-! #line 489 "/usr/homes/chet/src/bash/src/parse.y"
- {
- source.dest = (yyvsp[(1) - (3)].number);
---- 2254,2258 ----
-
- case 18:
-! #line 494 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- source.dest = (yyvsp[(1) - (3)].number);
-***************
-*** 2258,2262 ****
-
- case 19:
-! #line 495 "/usr/homes/chet/src/bash/src/parse.y"
- {
- source.filename = (yyvsp[(1) - (3)].word);
---- 2263,2267 ----
-
- case 19:
-! #line 500 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- source.filename = (yyvsp[(1) - (3)].word);
-***************
-*** 2267,2271 ****
-
- case 20:
-! #line 501 "/usr/homes/chet/src/bash/src/parse.y"
- {
- source.dest = 0;
---- 2272,2276 ----
-
- case 20:
-! #line 506 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- source.dest = 0;
-***************
-*** 2276,2280 ****
-
- case 21:
-! #line 507 "/usr/homes/chet/src/bash/src/parse.y"
- {
- source.dest = (yyvsp[(1) - (3)].number);
---- 2281,2285 ----
-
- case 21:
-! #line 512 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- source.dest = (yyvsp[(1) - (3)].number);
-***************
-*** 2285,2289 ****
-
- case 22:
-! #line 513 "/usr/homes/chet/src/bash/src/parse.y"
- {
- source.filename = (yyvsp[(1) - (3)].word);
---- 2290,2294 ----
-
- case 22:
-! #line 518 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- source.filename = (yyvsp[(1) - (3)].word);
-***************
-*** 2294,2358 ****
-
- case 23:
-! #line 519 "/usr/homes/chet/src/bash/src/parse.y"
- {
- source.dest = 0;
- redir.filename = (yyvsp[(2) - (2)].word);
- (yyval.redirect) = make_redirection (source, r_reading_until, redir, 0);
-! redir_stack[need_here_doc++] = (yyval.redirect);
- }
- break;
-
- case 24:
-! #line 526 "/usr/homes/chet/src/bash/src/parse.y"
- {
- source.dest = (yyvsp[(1) - (3)].number);
- redir.filename = (yyvsp[(3) - (3)].word);
- (yyval.redirect) = make_redirection (source, r_reading_until, redir, 0);
-! redir_stack[need_here_doc++] = (yyval.redirect);
- }
- break;
-
- case 25:
-! #line 533 "/usr/homes/chet/src/bash/src/parse.y"
- {
- source.filename = (yyvsp[(1) - (3)].word);
- redir.filename = (yyvsp[(3) - (3)].word);
- (yyval.redirect) = make_redirection (source, r_reading_until, redir, REDIR_VARASSIGN);
-! redir_stack[need_here_doc++] = (yyval.redirect);
- }
- break;
-
- case 26:
-! #line 540 "/usr/homes/chet/src/bash/src/parse.y"
- {
- source.dest = 0;
- redir.filename = (yyvsp[(2) - (2)].word);
- (yyval.redirect) = make_redirection (source, r_deblank_reading_until, redir, 0);
-! redir_stack[need_here_doc++] = (yyval.redirect);
- }
- break;
-
- case 27:
-! #line 547 "/usr/homes/chet/src/bash/src/parse.y"
- {
- source.dest = (yyvsp[(1) - (3)].number);
- redir.filename = (yyvsp[(3) - (3)].word);
- (yyval.redirect) = make_redirection (source, r_deblank_reading_until, redir, 0);
-! redir_stack[need_here_doc++] = (yyval.redirect);
- }
- break;
-
- case 28:
-! #line 554 "/usr/homes/chet/src/bash/src/parse.y"
- {
- source.filename = (yyvsp[(1) - (3)].word);
- redir.filename = (yyvsp[(3) - (3)].word);
- (yyval.redirect) = make_redirection (source, r_deblank_reading_until, redir, REDIR_VARASSIGN);
-! redir_stack[need_here_doc++] = (yyval.redirect);
- }
- break;
-
- case 29:
-! #line 561 "/usr/homes/chet/src/bash/src/parse.y"
- {
- source.dest = 0;
---- 2299,2363 ----
-
- case 23:
-! #line 524 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- source.dest = 0;
- redir.filename = (yyvsp[(2) - (2)].word);
- (yyval.redirect) = make_redirection (source, r_reading_until, redir, 0);
-! push_heredoc ((yyval.redirect));
- }
- break;
-
- case 24:
-! #line 531 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- source.dest = (yyvsp[(1) - (3)].number);
- redir.filename = (yyvsp[(3) - (3)].word);
- (yyval.redirect) = make_redirection (source, r_reading_until, redir, 0);
-! push_heredoc ((yyval.redirect));
- }
- break;
-
- case 25:
-! #line 538 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- source.filename = (yyvsp[(1) - (3)].word);
- redir.filename = (yyvsp[(3) - (3)].word);
- (yyval.redirect) = make_redirection (source, r_reading_until, redir, REDIR_VARASSIGN);
-! push_heredoc ((yyval.redirect));
- }
- break;
-
- case 26:
-! #line 545 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- source.dest = 0;
- redir.filename = (yyvsp[(2) - (2)].word);
- (yyval.redirect) = make_redirection (source, r_deblank_reading_until, redir, 0);
-! push_heredoc ((yyval.redirect));
- }
- break;
-
- case 27:
-! #line 552 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- source.dest = (yyvsp[(1) - (3)].number);
- redir.filename = (yyvsp[(3) - (3)].word);
- (yyval.redirect) = make_redirection (source, r_deblank_reading_until, redir, 0);
-! push_heredoc ((yyval.redirect));
- }
- break;
-
- case 28:
-! #line 559 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- source.filename = (yyvsp[(1) - (3)].word);
- redir.filename = (yyvsp[(3) - (3)].word);
- (yyval.redirect) = make_redirection (source, r_deblank_reading_until, redir, REDIR_VARASSIGN);
-! push_heredoc ((yyval.redirect));
- }
- break;
-
- case 29:
-! #line 566 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- source.dest = 0;
-***************
-*** 2363,2367 ****
-
- case 30:
-! #line 567 "/usr/homes/chet/src/bash/src/parse.y"
- {
- source.dest = (yyvsp[(1) - (3)].number);
---- 2368,2372 ----
-
- case 30:
-! #line 572 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- source.dest = (yyvsp[(1) - (3)].number);
-***************
-*** 2372,2376 ****
-
- case 31:
-! #line 573 "/usr/homes/chet/src/bash/src/parse.y"
- {
- source.filename = (yyvsp[(1) - (3)].word);
---- 2377,2381 ----
-
- case 31:
-! #line 578 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- source.filename = (yyvsp[(1) - (3)].word);
-***************
-*** 2381,2385 ****
-
- case 32:
-! #line 579 "/usr/homes/chet/src/bash/src/parse.y"
- {
- source.dest = 0;
---- 2386,2390 ----
-
- case 32:
-! #line 584 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- source.dest = 0;
-***************
-*** 2390,2394 ****
-
- case 33:
-! #line 585 "/usr/homes/chet/src/bash/src/parse.y"
- {
- source.dest = (yyvsp[(1) - (3)].number);
---- 2395,2399 ----
-
- case 33:
-! #line 590 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- source.dest = (yyvsp[(1) - (3)].number);
-***************
-*** 2399,2403 ****
-
- case 34:
-! #line 591 "/usr/homes/chet/src/bash/src/parse.y"
- {
- source.filename = (yyvsp[(1) - (3)].word);
---- 2404,2408 ----
-
- case 34:
-! #line 596 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- source.filename = (yyvsp[(1) - (3)].word);
-***************
-*** 2408,2412 ****
-
- case 35:
-! #line 597 "/usr/homes/chet/src/bash/src/parse.y"
- {
- source.dest = 1;
---- 2413,2417 ----
-
- case 35:
-! #line 602 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- source.dest = 1;
-***************
-*** 2417,2421 ****
-
- case 36:
-! #line 603 "/usr/homes/chet/src/bash/src/parse.y"
- {
- source.dest = (yyvsp[(1) - (3)].number);
---- 2422,2426 ----
-
- case 36:
-! #line 608 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- source.dest = (yyvsp[(1) - (3)].number);
-***************
-*** 2426,2430 ****
-
- case 37:
-! #line 609 "/usr/homes/chet/src/bash/src/parse.y"
- {
- source.filename = (yyvsp[(1) - (3)].word);
---- 2431,2435 ----
-
- case 37:
-! #line 614 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- source.filename = (yyvsp[(1) - (3)].word);
-***************
-*** 2435,2439 ****
-
- case 38:
-! #line 615 "/usr/homes/chet/src/bash/src/parse.y"
- {
- source.dest = 0;
---- 2440,2444 ----
-
- case 38:
-! #line 620 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- source.dest = 0;
-***************
-*** 2444,2448 ****
-
- case 39:
-! #line 621 "/usr/homes/chet/src/bash/src/parse.y"
- {
- source.dest = (yyvsp[(1) - (3)].number);
---- 2449,2453 ----
-
- case 39:
-! #line 626 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- source.dest = (yyvsp[(1) - (3)].number);
-***************
-*** 2453,2457 ****
-
- case 40:
-! #line 627 "/usr/homes/chet/src/bash/src/parse.y"
- {
- source.filename = (yyvsp[(1) - (3)].word);
---- 2458,2462 ----
-
- case 40:
-! #line 632 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- source.filename = (yyvsp[(1) - (3)].word);
-***************
-*** 2462,2466 ****
-
- case 41:
-! #line 633 "/usr/homes/chet/src/bash/src/parse.y"
- {
- source.dest = 1;
---- 2467,2471 ----
-
- case 41:
-! #line 638 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- source.dest = 1;
-***************
-*** 2471,2475 ****
-
- case 42:
-! #line 639 "/usr/homes/chet/src/bash/src/parse.y"
- {
- source.dest = (yyvsp[(1) - (3)].number);
---- 2476,2480 ----
-
- case 42:
-! #line 644 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- source.dest = (yyvsp[(1) - (3)].number);
-***************
-*** 2480,2484 ****
-
- case 43:
-! #line 645 "/usr/homes/chet/src/bash/src/parse.y"
- {
- source.filename = (yyvsp[(1) - (3)].word);
---- 2485,2489 ----
-
- case 43:
-! #line 650 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- source.filename = (yyvsp[(1) - (3)].word);
-***************
-*** 2489,2493 ****
-
- case 44:
-! #line 651 "/usr/homes/chet/src/bash/src/parse.y"
- {
- source.dest = 1;
---- 2494,2498 ----
-
- case 44:
-! #line 656 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- source.dest = 1;
-***************
-*** 2498,2502 ****
-
- case 45:
-! #line 657 "/usr/homes/chet/src/bash/src/parse.y"
- {
- source.dest = (yyvsp[(1) - (3)].number);
---- 2503,2507 ----
-
- case 45:
-! #line 662 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- source.dest = (yyvsp[(1) - (3)].number);
-***************
-*** 2507,2511 ****
-
- case 46:
-! #line 663 "/usr/homes/chet/src/bash/src/parse.y"
- {
- source.filename = (yyvsp[(1) - (3)].word);
---- 2512,2516 ----
-
- case 46:
-! #line 668 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- source.filename = (yyvsp[(1) - (3)].word);
-***************
-*** 2516,2520 ****
-
- case 47:
-! #line 669 "/usr/homes/chet/src/bash/src/parse.y"
- {
- source.dest = 0;
---- 2521,2525 ----
-
- case 47:
-! #line 674 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- source.dest = 0;
-***************
-*** 2525,2529 ****
-
- case 48:
-! #line 675 "/usr/homes/chet/src/bash/src/parse.y"
- {
- source.dest = (yyvsp[(1) - (3)].number);
---- 2530,2534 ----
-
- case 48:
-! #line 680 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- source.dest = (yyvsp[(1) - (3)].number);
-***************
-*** 2534,2538 ****
-
- case 49:
-! #line 681 "/usr/homes/chet/src/bash/src/parse.y"
- {
- source.filename = (yyvsp[(1) - (3)].word);
---- 2539,2543 ----
-
- case 49:
-! #line 686 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- source.filename = (yyvsp[(1) - (3)].word);
-***************
-*** 2543,2547 ****
-
- case 50:
-! #line 687 "/usr/homes/chet/src/bash/src/parse.y"
- {
- source.dest = 1;
---- 2548,2552 ----
-
- case 50:
-! #line 692 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- source.dest = 1;
-***************
-*** 2552,2556 ****
-
- case 51:
-! #line 693 "/usr/homes/chet/src/bash/src/parse.y"
- {
- source.dest = 1;
---- 2557,2561 ----
-
- case 51:
-! #line 698 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- source.dest = 1;
-***************
-*** 2561,2580 ****
-
- case 52:
-! #line 701 "/usr/homes/chet/src/bash/src/parse.y"
- { (yyval.element).word = (yyvsp[(1) - (1)].word); (yyval.element).redirect = 0; }
- break;
-
- case 53:
-! #line 703 "/usr/homes/chet/src/bash/src/parse.y"
- { (yyval.element).word = (yyvsp[(1) - (1)].word); (yyval.element).redirect = 0; }
- break;
-
- case 54:
-! #line 705 "/usr/homes/chet/src/bash/src/parse.y"
- { (yyval.element).redirect = (yyvsp[(1) - (1)].redirect); (yyval.element).word = 0; }
- break;
-
- case 55:
-! #line 709 "/usr/homes/chet/src/bash/src/parse.y"
- {
- (yyval.redirect) = (yyvsp[(1) - (1)].redirect);
---- 2566,2585 ----
-
- case 52:
-! #line 706 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- { (yyval.element).word = (yyvsp[(1) - (1)].word); (yyval.element).redirect = 0; }
- break;
-
- case 53:
-! #line 708 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- { (yyval.element).word = (yyvsp[(1) - (1)].word); (yyval.element).redirect = 0; }
- break;
-
- case 54:
-! #line 710 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- { (yyval.element).redirect = (yyvsp[(1) - (1)].redirect); (yyval.element).word = 0; }
- break;
-
- case 55:
-! #line 714 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- (yyval.redirect) = (yyvsp[(1) - (1)].redirect);
-***************
-*** 2583,2587 ****
-
- case 56:
-! #line 713 "/usr/homes/chet/src/bash/src/parse.y"
- {
- register REDIRECT *t;
---- 2588,2592 ----
-
- case 56:
-! #line 718 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- register REDIRECT *t;
-***************
-*** 2595,2619 ****
-
- case 57:
-! #line 724 "/usr/homes/chet/src/bash/src/parse.y"
- { (yyval.command) = make_simple_command ((yyvsp[(1) - (1)].element), (COMMAND *)NULL); }
- break;
-
- case 58:
-! #line 726 "/usr/homes/chet/src/bash/src/parse.y"
- { (yyval.command) = make_simple_command ((yyvsp[(2) - (2)].element), (yyvsp[(1) - (2)].command)); }
- break;
-
- case 59:
-! #line 730 "/usr/homes/chet/src/bash/src/parse.y"
- { (yyval.command) = clean_simple_command ((yyvsp[(1) - (1)].command)); }
- break;
-
- case 60:
-! #line 732 "/usr/homes/chet/src/bash/src/parse.y"
- { (yyval.command) = (yyvsp[(1) - (1)].command); }
- break;
-
- case 61:
-! #line 734 "/usr/homes/chet/src/bash/src/parse.y"
- {
- COMMAND *tc;
---- 2600,2624 ----
-
- case 57:
-! #line 729 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- { (yyval.command) = make_simple_command ((yyvsp[(1) - (1)].element), (COMMAND *)NULL); }
- break;
-
- case 58:
-! #line 731 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- { (yyval.command) = make_simple_command ((yyvsp[(2) - (2)].element), (yyvsp[(1) - (2)].command)); }
- break;
-
- case 59:
-! #line 735 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- { (yyval.command) = clean_simple_command ((yyvsp[(1) - (1)].command)); }
- break;
-
- case 60:
-! #line 737 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- { (yyval.command) = (yyvsp[(1) - (1)].command); }
- break;
-
- case 61:
-! #line 739 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- COMMAND *tc;
-***************
-*** 2634,2703 ****
-
- case 62:
-! #line 750 "/usr/homes/chet/src/bash/src/parse.y"
- { (yyval.command) = (yyvsp[(1) - (1)].command); }
- break;
-
- case 63:
-! #line 752 "/usr/homes/chet/src/bash/src/parse.y"
- { (yyval.command) = (yyvsp[(1) - (1)].command); }
- break;
-
- case 64:
-! #line 756 "/usr/homes/chet/src/bash/src/parse.y"
- { (yyval.command) = (yyvsp[(1) - (1)].command); }
- break;
-
- case 65:
-! #line 758 "/usr/homes/chet/src/bash/src/parse.y"
- { (yyval.command) = (yyvsp[(1) - (1)].command); }
- break;
-
- case 66:
-! #line 760 "/usr/homes/chet/src/bash/src/parse.y"
- { (yyval.command) = make_while_command ((yyvsp[(2) - (5)].command), (yyvsp[(4) - (5)].command)); }
- break;
-
- case 67:
-! #line 762 "/usr/homes/chet/src/bash/src/parse.y"
- { (yyval.command) = make_until_command ((yyvsp[(2) - (5)].command), (yyvsp[(4) - (5)].command)); }
- break;
-
- case 68:
-! #line 764 "/usr/homes/chet/src/bash/src/parse.y"
- { (yyval.command) = (yyvsp[(1) - (1)].command); }
- break;
-
- case 69:
-! #line 766 "/usr/homes/chet/src/bash/src/parse.y"
- { (yyval.command) = (yyvsp[(1) - (1)].command); }
- break;
-
- case 70:
-! #line 768 "/usr/homes/chet/src/bash/src/parse.y"
- { (yyval.command) = (yyvsp[(1) - (1)].command); }
- break;
-
- case 71:
-! #line 770 "/usr/homes/chet/src/bash/src/parse.y"
- { (yyval.command) = (yyvsp[(1) - (1)].command); }
- break;
-
- case 72:
-! #line 772 "/usr/homes/chet/src/bash/src/parse.y"
- { (yyval.command) = (yyvsp[(1) - (1)].command); }
- break;
-
- case 73:
-! #line 774 "/usr/homes/chet/src/bash/src/parse.y"
- { (yyval.command) = (yyvsp[(1) - (1)].command); }
- break;
-
- case 74:
-! #line 776 "/usr/homes/chet/src/bash/src/parse.y"
- { (yyval.command) = (yyvsp[(1) - (1)].command); }
- break;
-
- case 75:
-! #line 780 "/usr/homes/chet/src/bash/src/parse.y"
- {
- (yyval.command) = make_for_command ((yyvsp[(2) - (6)].word), add_string_to_list ("\"$@\"", (WORD_LIST *)NULL), (yyvsp[(5) - (6)].command), word_lineno[word_top]);
---- 2639,2708 ----
-
- case 62:
-! #line 755 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- { (yyval.command) = (yyvsp[(1) - (1)].command); }
- break;
-
- case 63:
-! #line 757 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- { (yyval.command) = (yyvsp[(1) - (1)].command); }
- break;
-
- case 64:
-! #line 761 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- { (yyval.command) = (yyvsp[(1) - (1)].command); }
- break;
-
- case 65:
-! #line 763 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- { (yyval.command) = (yyvsp[(1) - (1)].command); }
- break;
-
- case 66:
-! #line 765 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- { (yyval.command) = make_while_command ((yyvsp[(2) - (5)].command), (yyvsp[(4) - (5)].command)); }
- break;
-
- case 67:
-! #line 767 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- { (yyval.command) = make_until_command ((yyvsp[(2) - (5)].command), (yyvsp[(4) - (5)].command)); }
- break;
-
- case 68:
-! #line 769 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- { (yyval.command) = (yyvsp[(1) - (1)].command); }
- break;
-
- case 69:
-! #line 771 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- { (yyval.command) = (yyvsp[(1) - (1)].command); }
- break;
-
- case 70:
-! #line 773 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- { (yyval.command) = (yyvsp[(1) - (1)].command); }
- break;
-
- case 71:
-! #line 775 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- { (yyval.command) = (yyvsp[(1) - (1)].command); }
- break;
-
- case 72:
-! #line 777 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- { (yyval.command) = (yyvsp[(1) - (1)].command); }
- break;
-
- case 73:
-! #line 779 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- { (yyval.command) = (yyvsp[(1) - (1)].command); }
- break;
-
- case 74:
-! #line 781 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- { (yyval.command) = (yyvsp[(1) - (1)].command); }
- break;
-
- case 75:
-! #line 785 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- (yyval.command) = make_for_command ((yyvsp[(2) - (6)].word), add_string_to_list ("\"$@\"", (WORD_LIST *)NULL), (yyvsp[(5) - (6)].command), word_lineno[word_top]);
-***************
-*** 2707,2711 ****
-
- case 76:
-! #line 785 "/usr/homes/chet/src/bash/src/parse.y"
- {
- (yyval.command) = make_for_command ((yyvsp[(2) - (6)].word), add_string_to_list ("\"$@\"", (WORD_LIST *)NULL), (yyvsp[(5) - (6)].command), word_lineno[word_top]);
---- 2712,2716 ----
-
- case 76:
-! #line 790 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- (yyval.command) = make_for_command ((yyvsp[(2) - (6)].word), add_string_to_list ("\"$@\"", (WORD_LIST *)NULL), (yyvsp[(5) - (6)].command), word_lineno[word_top]);
-***************
-*** 2715,2719 ****
-
- case 77:
-! #line 790 "/usr/homes/chet/src/bash/src/parse.y"
- {
- (yyval.command) = make_for_command ((yyvsp[(2) - (7)].word), add_string_to_list ("\"$@\"", (WORD_LIST *)NULL), (yyvsp[(6) - (7)].command), word_lineno[word_top]);
---- 2720,2724 ----
-
- case 77:
-! #line 795 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- (yyval.command) = make_for_command ((yyvsp[(2) - (7)].word), add_string_to_list ("\"$@\"", (WORD_LIST *)NULL), (yyvsp[(6) - (7)].command), word_lineno[word_top]);
-***************
-*** 2723,2727 ****
-
- case 78:
-! #line 795 "/usr/homes/chet/src/bash/src/parse.y"
- {
- (yyval.command) = make_for_command ((yyvsp[(2) - (7)].word), add_string_to_list ("\"$@\"", (WORD_LIST *)NULL), (yyvsp[(6) - (7)].command), word_lineno[word_top]);
---- 2728,2732 ----
-
- case 78:
-! #line 800 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- (yyval.command) = make_for_command ((yyvsp[(2) - (7)].word), add_string_to_list ("\"$@\"", (WORD_LIST *)NULL), (yyvsp[(6) - (7)].command), word_lineno[word_top]);
-***************
-*** 2731,2735 ****
-
- case 79:
-! #line 800 "/usr/homes/chet/src/bash/src/parse.y"
- {
- (yyval.command) = make_for_command ((yyvsp[(2) - (10)].word), REVERSE_LIST ((yyvsp[(5) - (10)].word_list), WORD_LIST *), (yyvsp[(9) - (10)].command), word_lineno[word_top]);
---- 2736,2740 ----
-
- case 79:
-! #line 805 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- (yyval.command) = make_for_command ((yyvsp[(2) - (10)].word), REVERSE_LIST ((yyvsp[(5) - (10)].word_list), WORD_LIST *), (yyvsp[(9) - (10)].command), word_lineno[word_top]);
-***************
-*** 2739,2743 ****
-
- case 80:
-! #line 805 "/usr/homes/chet/src/bash/src/parse.y"
- {
- (yyval.command) = make_for_command ((yyvsp[(2) - (10)].word), REVERSE_LIST ((yyvsp[(5) - (10)].word_list), WORD_LIST *), (yyvsp[(9) - (10)].command), word_lineno[word_top]);
---- 2744,2748 ----
-
- case 80:
-! #line 810 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- (yyval.command) = make_for_command ((yyvsp[(2) - (10)].word), REVERSE_LIST ((yyvsp[(5) - (10)].word_list), WORD_LIST *), (yyvsp[(9) - (10)].command), word_lineno[word_top]);
-***************
-*** 2747,2751 ****
-
- case 81:
-! #line 810 "/usr/homes/chet/src/bash/src/parse.y"
- {
- (yyval.command) = make_for_command ((yyvsp[(2) - (9)].word), (WORD_LIST *)NULL, (yyvsp[(8) - (9)].command), word_lineno[word_top]);
---- 2752,2756 ----
-
- case 81:
-! #line 815 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- (yyval.command) = make_for_command ((yyvsp[(2) - (9)].word), (WORD_LIST *)NULL, (yyvsp[(8) - (9)].command), word_lineno[word_top]);
-***************
-*** 2755,2759 ****
-
- case 82:
-! #line 815 "/usr/homes/chet/src/bash/src/parse.y"
- {
- (yyval.command) = make_for_command ((yyvsp[(2) - (9)].word), (WORD_LIST *)NULL, (yyvsp[(8) - (9)].command), word_lineno[word_top]);
---- 2760,2764 ----
-
- case 82:
-! #line 820 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- (yyval.command) = make_for_command ((yyvsp[(2) - (9)].word), (WORD_LIST *)NULL, (yyvsp[(8) - (9)].command), word_lineno[word_top]);
-***************
-*** 2763,2767 ****
-
- case 83:
-! #line 822 "/usr/homes/chet/src/bash/src/parse.y"
- {
- (yyval.command) = make_arith_for_command ((yyvsp[(2) - (7)].word_list), (yyvsp[(6) - (7)].command), arith_for_lineno);
---- 2768,2772 ----
-
- case 83:
-! #line 827 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- (yyval.command) = make_arith_for_command ((yyvsp[(2) - (7)].word_list), (yyvsp[(6) - (7)].command), arith_for_lineno);
-***************
-*** 2771,2775 ****
-
- case 84:
-! #line 827 "/usr/homes/chet/src/bash/src/parse.y"
- {
- (yyval.command) = make_arith_for_command ((yyvsp[(2) - (7)].word_list), (yyvsp[(6) - (7)].command), arith_for_lineno);
---- 2776,2780 ----
-
- case 84:
-! #line 832 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- (yyval.command) = make_arith_for_command ((yyvsp[(2) - (7)].word_list), (yyvsp[(6) - (7)].command), arith_for_lineno);
-***************
-*** 2779,2783 ****
-
- case 85:
-! #line 832 "/usr/homes/chet/src/bash/src/parse.y"
- {
- (yyval.command) = make_arith_for_command ((yyvsp[(2) - (5)].word_list), (yyvsp[(4) - (5)].command), arith_for_lineno);
---- 2784,2788 ----
-
- case 85:
-! #line 837 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- (yyval.command) = make_arith_for_command ((yyvsp[(2) - (5)].word_list), (yyvsp[(4) - (5)].command), arith_for_lineno);
-***************
-*** 2787,2791 ****
-
- case 86:
-! #line 837 "/usr/homes/chet/src/bash/src/parse.y"
- {
- (yyval.command) = make_arith_for_command ((yyvsp[(2) - (5)].word_list), (yyvsp[(4) - (5)].command), arith_for_lineno);
---- 2792,2796 ----
-
- case 86:
-! #line 842 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- (yyval.command) = make_arith_for_command ((yyvsp[(2) - (5)].word_list), (yyvsp[(4) - (5)].command), arith_for_lineno);
-***************
-*** 2795,2799 ****
-
- case 87:
-! #line 844 "/usr/homes/chet/src/bash/src/parse.y"
- {
- (yyval.command) = make_select_command ((yyvsp[(2) - (6)].word), add_string_to_list ("\"$@\"", (WORD_LIST *)NULL), (yyvsp[(5) - (6)].command), word_lineno[word_top]);
---- 2800,2804 ----
-
- case 87:
-! #line 849 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- (yyval.command) = make_select_command ((yyvsp[(2) - (6)].word), add_string_to_list ("\"$@\"", (WORD_LIST *)NULL), (yyvsp[(5) - (6)].command), word_lineno[word_top]);
-***************
-*** 2803,2807 ****
-
- case 88:
-! #line 849 "/usr/homes/chet/src/bash/src/parse.y"
- {
- (yyval.command) = make_select_command ((yyvsp[(2) - (6)].word), add_string_to_list ("\"$@\"", (WORD_LIST *)NULL), (yyvsp[(5) - (6)].command), word_lineno[word_top]);
---- 2808,2812 ----
-
- case 88:
-! #line 854 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- (yyval.command) = make_select_command ((yyvsp[(2) - (6)].word), add_string_to_list ("\"$@\"", (WORD_LIST *)NULL), (yyvsp[(5) - (6)].command), word_lineno[word_top]);
-***************
-*** 2811,2815 ****
-
- case 89:
-! #line 854 "/usr/homes/chet/src/bash/src/parse.y"
- {
- (yyval.command) = make_select_command ((yyvsp[(2) - (7)].word), add_string_to_list ("\"$@\"", (WORD_LIST *)NULL), (yyvsp[(6) - (7)].command), word_lineno[word_top]);
---- 2816,2820 ----
-
- case 89:
-! #line 859 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- (yyval.command) = make_select_command ((yyvsp[(2) - (7)].word), add_string_to_list ("\"$@\"", (WORD_LIST *)NULL), (yyvsp[(6) - (7)].command), word_lineno[word_top]);
-***************
-*** 2819,2823 ****
-
- case 90:
-! #line 859 "/usr/homes/chet/src/bash/src/parse.y"
- {
- (yyval.command) = make_select_command ((yyvsp[(2) - (7)].word), add_string_to_list ("\"$@\"", (WORD_LIST *)NULL), (yyvsp[(6) - (7)].command), word_lineno[word_top]);
---- 2824,2828 ----
-
- case 90:
-! #line 864 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- (yyval.command) = make_select_command ((yyvsp[(2) - (7)].word), add_string_to_list ("\"$@\"", (WORD_LIST *)NULL), (yyvsp[(6) - (7)].command), word_lineno[word_top]);
-***************
-*** 2827,2831 ****
-
- case 91:
-! #line 864 "/usr/homes/chet/src/bash/src/parse.y"
- {
- (yyval.command) = make_select_command ((yyvsp[(2) - (10)].word), REVERSE_LIST ((yyvsp[(5) - (10)].word_list), WORD_LIST *), (yyvsp[(9) - (10)].command), word_lineno[word_top]);
---- 2832,2836 ----
-
- case 91:
-! #line 869 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- (yyval.command) = make_select_command ((yyvsp[(2) - (10)].word), REVERSE_LIST ((yyvsp[(5) - (10)].word_list), WORD_LIST *), (yyvsp[(9) - (10)].command), word_lineno[word_top]);
-***************
-*** 2835,2839 ****
-
- case 92:
-! #line 869 "/usr/homes/chet/src/bash/src/parse.y"
- {
- (yyval.command) = make_select_command ((yyvsp[(2) - (10)].word), REVERSE_LIST ((yyvsp[(5) - (10)].word_list), WORD_LIST *), (yyvsp[(9) - (10)].command), word_lineno[word_top]);
---- 2840,2844 ----
-
- case 92:
-! #line 874 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- (yyval.command) = make_select_command ((yyvsp[(2) - (10)].word), REVERSE_LIST ((yyvsp[(5) - (10)].word_list), WORD_LIST *), (yyvsp[(9) - (10)].command), word_lineno[word_top]);
-***************
-*** 2843,2847 ****
-
- case 93:
-! #line 876 "/usr/homes/chet/src/bash/src/parse.y"
- {
- (yyval.command) = make_case_command ((yyvsp[(2) - (6)].word), (PATTERN_LIST *)NULL, word_lineno[word_top]);
---- 2848,2852 ----
-
- case 93:
-! #line 881 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- (yyval.command) = make_case_command ((yyvsp[(2) - (6)].word), (PATTERN_LIST *)NULL, word_lineno[word_top]);
-***************
-*** 2851,2855 ****
-
- case 94:
-! #line 881 "/usr/homes/chet/src/bash/src/parse.y"
- {
- (yyval.command) = make_case_command ((yyvsp[(2) - (7)].word), (yyvsp[(5) - (7)].pattern), word_lineno[word_top]);
---- 2856,2860 ----
-
- case 94:
-! #line 886 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- (yyval.command) = make_case_command ((yyvsp[(2) - (7)].word), (yyvsp[(5) - (7)].pattern), word_lineno[word_top]);
-***************
-*** 2859,2863 ****
-
- case 95:
-! #line 886 "/usr/homes/chet/src/bash/src/parse.y"
- {
- (yyval.command) = make_case_command ((yyvsp[(2) - (6)].word), (yyvsp[(5) - (6)].pattern), word_lineno[word_top]);
---- 2864,2868 ----
-
- case 95:
-! #line 891 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- (yyval.command) = make_case_command ((yyvsp[(2) - (6)].word), (yyvsp[(5) - (6)].pattern), word_lineno[word_top]);
-***************
-*** 2867,2891 ****
-
- case 96:
-! #line 893 "/usr/homes/chet/src/bash/src/parse.y"
- { (yyval.command) = make_function_def ((yyvsp[(1) - (5)].word), (yyvsp[(5) - (5)].command), function_dstart, function_bstart); }
- break;
-
- case 97:
-! #line 896 "/usr/homes/chet/src/bash/src/parse.y"
- { (yyval.command) = make_function_def ((yyvsp[(2) - (6)].word), (yyvsp[(6) - (6)].command), function_dstart, function_bstart); }
- break;
-
- case 98:
-! #line 899 "/usr/homes/chet/src/bash/src/parse.y"
- { (yyval.command) = make_function_def ((yyvsp[(2) - (4)].word), (yyvsp[(4) - (4)].command), function_dstart, function_bstart); }
- break;
-
- case 99:
-! #line 903 "/usr/homes/chet/src/bash/src/parse.y"
- { (yyval.command) = (yyvsp[(1) - (1)].command); }
- break;
-
- case 100:
-! #line 905 "/usr/homes/chet/src/bash/src/parse.y"
- {
- COMMAND *tc;
---- 2872,2896 ----
-
- case 96:
-! #line 898 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- { (yyval.command) = make_function_def ((yyvsp[(1) - (5)].word), (yyvsp[(5) - (5)].command), function_dstart, function_bstart); }
- break;
-
- case 97:
-! #line 901 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- { (yyval.command) = make_function_def ((yyvsp[(2) - (6)].word), (yyvsp[(6) - (6)].command), function_dstart, function_bstart); }
- break;
-
- case 98:
-! #line 904 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- { (yyval.command) = make_function_def ((yyvsp[(2) - (4)].word), (yyvsp[(4) - (4)].command), function_dstart, function_bstart); }
- break;
-
- case 99:
-! #line 908 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- { (yyval.command) = (yyvsp[(1) - (1)].command); }
- break;
-
- case 100:
-! #line 910 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- COMMAND *tc;
-***************
-*** 2919,2923 ****
-
- case 101:
-! #line 936 "/usr/homes/chet/src/bash/src/parse.y"
- {
- (yyval.command) = make_subshell_command ((yyvsp[(2) - (3)].command));
---- 2924,2928 ----
-
- case 101:
-! #line 941 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- (yyval.command) = make_subshell_command ((yyvsp[(2) - (3)].command));
-***************
-*** 2927,2931 ****
-
- case 102:
-! #line 943 "/usr/homes/chet/src/bash/src/parse.y"
- {
- (yyval.command) = make_coproc_command ("COPROC", (yyvsp[(2) - (2)].command));
---- 2932,2936 ----
-
- case 102:
-! #line 948 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- (yyval.command) = make_coproc_command ("COPROC", (yyvsp[(2) - (2)].command));
-***************
-*** 2935,2939 ****
-
- case 103:
-! #line 948 "/usr/homes/chet/src/bash/src/parse.y"
- {
- COMMAND *tc;
---- 2940,2944 ----
-
- case 103:
-! #line 953 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- COMMAND *tc;
-***************
-*** 2955,2959 ****
-
- case 104:
-! #line 965 "/usr/homes/chet/src/bash/src/parse.y"
- {
- (yyval.command) = make_coproc_command ((yyvsp[(2) - (3)].word)->word, (yyvsp[(3) - (3)].command));
---- 2960,2964 ----
-
- case 104:
-! #line 970 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- (yyval.command) = make_coproc_command ((yyvsp[(2) - (3)].word)->word, (yyvsp[(3) - (3)].command));
-***************
-*** 2963,2967 ****
-
- case 105:
-! #line 970 "/usr/homes/chet/src/bash/src/parse.y"
- {
- COMMAND *tc;
---- 2968,2972 ----
-
- case 105:
-! #line 975 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- COMMAND *tc;
-***************
-*** 2983,2987 ****
-
- case 106:
-! #line 987 "/usr/homes/chet/src/bash/src/parse.y"
- {
- (yyval.command) = make_coproc_command ("COPROC", clean_simple_command ((yyvsp[(2) - (2)].command)));
---- 2988,2992 ----
-
- case 106:
-! #line 992 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- (yyval.command) = make_coproc_command ("COPROC", clean_simple_command ((yyvsp[(2) - (2)].command)));
-***************
-*** 2991,3105 ****
-
- case 107:
-! #line 994 "/usr/homes/chet/src/bash/src/parse.y"
- { (yyval.command) = make_if_command ((yyvsp[(2) - (5)].command), (yyvsp[(4) - (5)].command), (COMMAND *)NULL); }
- break;
-
- case 108:
-! #line 996 "/usr/homes/chet/src/bash/src/parse.y"
- { (yyval.command) = make_if_command ((yyvsp[(2) - (7)].command), (yyvsp[(4) - (7)].command), (yyvsp[(6) - (7)].command)); }
- break;
-
- case 109:
-! #line 998 "/usr/homes/chet/src/bash/src/parse.y"
- { (yyval.command) = make_if_command ((yyvsp[(2) - (6)].command), (yyvsp[(4) - (6)].command), (yyvsp[(5) - (6)].command)); }
- break;
-
- case 110:
-! #line 1003 "/usr/homes/chet/src/bash/src/parse.y"
- { (yyval.command) = make_group_command ((yyvsp[(2) - (3)].command)); }
- break;
-
- case 111:
-! #line 1007 "/usr/homes/chet/src/bash/src/parse.y"
- { (yyval.command) = make_arith_command ((yyvsp[(1) - (1)].word_list)); }
- break;
-
- case 112:
-! #line 1011 "/usr/homes/chet/src/bash/src/parse.y"
- { (yyval.command) = (yyvsp[(2) - (3)].command); }
- break;
-
- case 113:
-! #line 1015 "/usr/homes/chet/src/bash/src/parse.y"
- { (yyval.command) = make_if_command ((yyvsp[(2) - (4)].command), (yyvsp[(4) - (4)].command), (COMMAND *)NULL); }
- break;
-
- case 114:
-! #line 1017 "/usr/homes/chet/src/bash/src/parse.y"
- { (yyval.command) = make_if_command ((yyvsp[(2) - (6)].command), (yyvsp[(4) - (6)].command), (yyvsp[(6) - (6)].command)); }
- break;
-
- case 115:
-! #line 1019 "/usr/homes/chet/src/bash/src/parse.y"
- { (yyval.command) = make_if_command ((yyvsp[(2) - (5)].command), (yyvsp[(4) - (5)].command), (yyvsp[(5) - (5)].command)); }
- break;
-
- case 117:
-! #line 1024 "/usr/homes/chet/src/bash/src/parse.y"
- { (yyvsp[(2) - (2)].pattern)->next = (yyvsp[(1) - (2)].pattern); (yyval.pattern) = (yyvsp[(2) - (2)].pattern); }
- break;
-
- case 118:
-! #line 1028 "/usr/homes/chet/src/bash/src/parse.y"
- { (yyval.pattern) = make_pattern_list ((yyvsp[(2) - (4)].word_list), (yyvsp[(4) - (4)].command)); }
- break;
-
- case 119:
-! #line 1030 "/usr/homes/chet/src/bash/src/parse.y"
- { (yyval.pattern) = make_pattern_list ((yyvsp[(2) - (4)].word_list), (COMMAND *)NULL); }
- break;
-
- case 120:
-! #line 1032 "/usr/homes/chet/src/bash/src/parse.y"
- { (yyval.pattern) = make_pattern_list ((yyvsp[(3) - (5)].word_list), (yyvsp[(5) - (5)].command)); }
- break;
-
- case 121:
-! #line 1034 "/usr/homes/chet/src/bash/src/parse.y"
- { (yyval.pattern) = make_pattern_list ((yyvsp[(3) - (5)].word_list), (COMMAND *)NULL); }
- break;
-
- case 122:
-! #line 1038 "/usr/homes/chet/src/bash/src/parse.y"
- { (yyval.pattern) = (yyvsp[(1) - (2)].pattern); }
- break;
-
- case 123:
-! #line 1040 "/usr/homes/chet/src/bash/src/parse.y"
- { (yyvsp[(2) - (3)].pattern)->next = (yyvsp[(1) - (3)].pattern); (yyval.pattern) = (yyvsp[(2) - (3)].pattern); }
- break;
-
- case 124:
-! #line 1042 "/usr/homes/chet/src/bash/src/parse.y"
- { (yyvsp[(1) - (2)].pattern)->flags |= CASEPAT_FALLTHROUGH; (yyval.pattern) = (yyvsp[(1) - (2)].pattern); }
- break;
-
- case 125:
-! #line 1044 "/usr/homes/chet/src/bash/src/parse.y"
- { (yyvsp[(2) - (3)].pattern)->flags |= CASEPAT_FALLTHROUGH; (yyvsp[(2) - (3)].pattern)->next = (yyvsp[(1) - (3)].pattern); (yyval.pattern) = (yyvsp[(2) - (3)].pattern); }
- break;
-
- case 126:
-! #line 1046 "/usr/homes/chet/src/bash/src/parse.y"
- { (yyvsp[(1) - (2)].pattern)->flags |= CASEPAT_TESTNEXT; (yyval.pattern) = (yyvsp[(1) - (2)].pattern); }
- break;
-
- case 127:
-! #line 1048 "/usr/homes/chet/src/bash/src/parse.y"
- { (yyvsp[(2) - (3)].pattern)->flags |= CASEPAT_TESTNEXT; (yyvsp[(2) - (3)].pattern)->next = (yyvsp[(1) - (3)].pattern); (yyval.pattern) = (yyvsp[(2) - (3)].pattern); }
- break;
-
- case 128:
-! #line 1052 "/usr/homes/chet/src/bash/src/parse.y"
- { (yyval.word_list) = make_word_list ((yyvsp[(1) - (1)].word), (WORD_LIST *)NULL); }
- break;
-
- case 129:
-! #line 1054 "/usr/homes/chet/src/bash/src/parse.y"
- { (yyval.word_list) = make_word_list ((yyvsp[(3) - (3)].word), (yyvsp[(1) - (3)].word_list)); }
- break;
-
- case 130:
-! #line 1063 "/usr/homes/chet/src/bash/src/parse.y"
- {
- (yyval.command) = (yyvsp[(2) - (2)].command);
---- 2996,3110 ----
-
- case 107:
-! #line 999 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- { (yyval.command) = make_if_command ((yyvsp[(2) - (5)].command), (yyvsp[(4) - (5)].command), (COMMAND *)NULL); }
- break;
-
- case 108:
-! #line 1001 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- { (yyval.command) = make_if_command ((yyvsp[(2) - (7)].command), (yyvsp[(4) - (7)].command), (yyvsp[(6) - (7)].command)); }
- break;
-
- case 109:
-! #line 1003 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- { (yyval.command) = make_if_command ((yyvsp[(2) - (6)].command), (yyvsp[(4) - (6)].command), (yyvsp[(5) - (6)].command)); }
- break;
-
- case 110:
-! #line 1008 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- { (yyval.command) = make_group_command ((yyvsp[(2) - (3)].command)); }
- break;
-
- case 111:
-! #line 1012 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- { (yyval.command) = make_arith_command ((yyvsp[(1) - (1)].word_list)); }
- break;
-
- case 112:
-! #line 1016 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- { (yyval.command) = (yyvsp[(2) - (3)].command); }
- break;
-
- case 113:
-! #line 1020 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- { (yyval.command) = make_if_command ((yyvsp[(2) - (4)].command), (yyvsp[(4) - (4)].command), (COMMAND *)NULL); }
- break;
-
- case 114:
-! #line 1022 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- { (yyval.command) = make_if_command ((yyvsp[(2) - (6)].command), (yyvsp[(4) - (6)].command), (yyvsp[(6) - (6)].command)); }
- break;
-
- case 115:
-! #line 1024 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- { (yyval.command) = make_if_command ((yyvsp[(2) - (5)].command), (yyvsp[(4) - (5)].command), (yyvsp[(5) - (5)].command)); }
- break;
-
- case 117:
-! #line 1029 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- { (yyvsp[(2) - (2)].pattern)->next = (yyvsp[(1) - (2)].pattern); (yyval.pattern) = (yyvsp[(2) - (2)].pattern); }
- break;
-
- case 118:
-! #line 1033 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- { (yyval.pattern) = make_pattern_list ((yyvsp[(2) - (4)].word_list), (yyvsp[(4) - (4)].command)); }
- break;
-
- case 119:
-! #line 1035 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- { (yyval.pattern) = make_pattern_list ((yyvsp[(2) - (4)].word_list), (COMMAND *)NULL); }
- break;
-
- case 120:
-! #line 1037 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- { (yyval.pattern) = make_pattern_list ((yyvsp[(3) - (5)].word_list), (yyvsp[(5) - (5)].command)); }
- break;
-
- case 121:
-! #line 1039 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- { (yyval.pattern) = make_pattern_list ((yyvsp[(3) - (5)].word_list), (COMMAND *)NULL); }
- break;
-
- case 122:
-! #line 1043 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- { (yyval.pattern) = (yyvsp[(1) - (2)].pattern); }
- break;
-
- case 123:
-! #line 1045 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- { (yyvsp[(2) - (3)].pattern)->next = (yyvsp[(1) - (3)].pattern); (yyval.pattern) = (yyvsp[(2) - (3)].pattern); }
- break;
-
- case 124:
-! #line 1047 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- { (yyvsp[(1) - (2)].pattern)->flags |= CASEPAT_FALLTHROUGH; (yyval.pattern) = (yyvsp[(1) - (2)].pattern); }
- break;
-
- case 125:
-! #line 1049 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- { (yyvsp[(2) - (3)].pattern)->flags |= CASEPAT_FALLTHROUGH; (yyvsp[(2) - (3)].pattern)->next = (yyvsp[(1) - (3)].pattern); (yyval.pattern) = (yyvsp[(2) - (3)].pattern); }
- break;
-
- case 126:
-! #line 1051 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- { (yyvsp[(1) - (2)].pattern)->flags |= CASEPAT_TESTNEXT; (yyval.pattern) = (yyvsp[(1) - (2)].pattern); }
- break;
-
- case 127:
-! #line 1053 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- { (yyvsp[(2) - (3)].pattern)->flags |= CASEPAT_TESTNEXT; (yyvsp[(2) - (3)].pattern)->next = (yyvsp[(1) - (3)].pattern); (yyval.pattern) = (yyvsp[(2) - (3)].pattern); }
- break;
-
- case 128:
-! #line 1057 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- { (yyval.word_list) = make_word_list ((yyvsp[(1) - (1)].word), (WORD_LIST *)NULL); }
- break;
-
- case 129:
-! #line 1059 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- { (yyval.word_list) = make_word_list ((yyvsp[(3) - (3)].word), (yyvsp[(1) - (3)].word_list)); }
- break;
-
- case 130:
-! #line 1068 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- (yyval.command) = (yyvsp[(2) - (2)].command);
-***************
-*** 3110,3114 ****
-
- case 132:
-! #line 1072 "/usr/homes/chet/src/bash/src/parse.y"
- {
- (yyval.command) = (yyvsp[(2) - (2)].command);
---- 3115,3119 ----
-
- case 132:
-! #line 1077 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- (yyval.command) = (yyvsp[(2) - (2)].command);
-***************
-*** 3117,3121 ****
-
- case 134:
-! #line 1079 "/usr/homes/chet/src/bash/src/parse.y"
- {
- if ((yyvsp[(1) - (3)].command)->type == cm_connection)
---- 3122,3126 ----
-
- case 134:
-! #line 1084 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- if ((yyvsp[(1) - (3)].command)->type == cm_connection)
-***************
-*** 3127,3141 ****
-
- case 136:
-! #line 1090 "/usr/homes/chet/src/bash/src/parse.y"
- { (yyval.command) = command_connect ((yyvsp[(1) - (4)].command), (yyvsp[(4) - (4)].command), AND_AND); }
- break;
-
- case 137:
-! #line 1092 "/usr/homes/chet/src/bash/src/parse.y"
- { (yyval.command) = command_connect ((yyvsp[(1) - (4)].command), (yyvsp[(4) - (4)].command), OR_OR); }
- break;
-
- case 138:
-! #line 1094 "/usr/homes/chet/src/bash/src/parse.y"
- {
- if ((yyvsp[(1) - (4)].command)->type == cm_connection)
---- 3132,3146 ----
-
- case 136:
-! #line 1095 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- { (yyval.command) = command_connect ((yyvsp[(1) - (4)].command), (yyvsp[(4) - (4)].command), AND_AND); }
- break;
-
- case 137:
-! #line 1097 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- { (yyval.command) = command_connect ((yyvsp[(1) - (4)].command), (yyvsp[(4) - (4)].command), OR_OR); }
- break;
-
- case 138:
-! #line 1099 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- if ((yyvsp[(1) - (4)].command)->type == cm_connection)
-***************
-*** 3147,3181 ****
-
- case 139:
-! #line 1101 "/usr/homes/chet/src/bash/src/parse.y"
- { (yyval.command) = command_connect ((yyvsp[(1) - (4)].command), (yyvsp[(4) - (4)].command), ';'); }
- break;
-
- case 140:
-! #line 1103 "/usr/homes/chet/src/bash/src/parse.y"
- { (yyval.command) = command_connect ((yyvsp[(1) - (4)].command), (yyvsp[(4) - (4)].command), ';'); }
- break;
-
- case 141:
-! #line 1105 "/usr/homes/chet/src/bash/src/parse.y"
- { (yyval.command) = (yyvsp[(1) - (1)].command); }
- break;
-
- case 144:
-! #line 1113 "/usr/homes/chet/src/bash/src/parse.y"
- { (yyval.number) = '\n'; }
- break;
-
- case 145:
-! #line 1115 "/usr/homes/chet/src/bash/src/parse.y"
- { (yyval.number) = ';'; }
- break;
-
- case 146:
-! #line 1117 "/usr/homes/chet/src/bash/src/parse.y"
- { (yyval.number) = yacc_EOF; }
- break;
-
- case 149:
-! #line 1131 "/usr/homes/chet/src/bash/src/parse.y"
- {
- (yyval.command) = (yyvsp[(1) - (1)].command);
---- 3152,3186 ----
-
- case 139:
-! #line 1106 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- { (yyval.command) = command_connect ((yyvsp[(1) - (4)].command), (yyvsp[(4) - (4)].command), ';'); }
- break;
-
- case 140:
-! #line 1108 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- { (yyval.command) = command_connect ((yyvsp[(1) - (4)].command), (yyvsp[(4) - (4)].command), ';'); }
- break;
-
- case 141:
-! #line 1110 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- { (yyval.command) = (yyvsp[(1) - (1)].command); }
- break;
-
- case 144:
-! #line 1118 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- { (yyval.number) = '\n'; }
- break;
-
- case 145:
-! #line 1120 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- { (yyval.number) = ';'; }
- break;
-
- case 146:
-! #line 1122 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- { (yyval.number) = yacc_EOF; }
- break;
-
- case 149:
-! #line 1136 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- (yyval.command) = (yyvsp[(1) - (1)].command);
-***************
-*** 3193,3197 ****
-
- case 150:
-! #line 1144 "/usr/homes/chet/src/bash/src/parse.y"
- {
- if ((yyvsp[(1) - (2)].command)->type == cm_connection)
---- 3198,3202 ----
-
- case 150:
-! #line 1149 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- if ((yyvsp[(1) - (2)].command)->type == cm_connection)
-***************
-*** 3212,3216 ****
-
- case 151:
-! #line 1160 "/usr/homes/chet/src/bash/src/parse.y"
- {
- (yyval.command) = (yyvsp[(1) - (2)].command);
---- 3217,3221 ----
-
- case 151:
-! #line 1165 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- (yyval.command) = (yyvsp[(1) - (2)].command);
-***************
-*** 3228,3242 ****
-
- case 152:
-! #line 1175 "/usr/homes/chet/src/bash/src/parse.y"
- { (yyval.command) = command_connect ((yyvsp[(1) - (4)].command), (yyvsp[(4) - (4)].command), AND_AND); }
- break;
-
- case 153:
-! #line 1177 "/usr/homes/chet/src/bash/src/parse.y"
- { (yyval.command) = command_connect ((yyvsp[(1) - (4)].command), (yyvsp[(4) - (4)].command), OR_OR); }
- break;
-
- case 154:
-! #line 1179 "/usr/homes/chet/src/bash/src/parse.y"
- {
- if ((yyvsp[(1) - (3)].command)->type == cm_connection)
---- 3233,3247 ----
-
- case 152:
-! #line 1180 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- { (yyval.command) = command_connect ((yyvsp[(1) - (4)].command), (yyvsp[(4) - (4)].command), AND_AND); }
- break;
-
- case 153:
-! #line 1182 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- { (yyval.command) = command_connect ((yyvsp[(1) - (4)].command), (yyvsp[(4) - (4)].command), OR_OR); }
- break;
-
- case 154:
-! #line 1184 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- if ((yyvsp[(1) - (3)].command)->type == cm_connection)
-***************
-*** 3248,3267 ****
-
- case 155:
-! #line 1186 "/usr/homes/chet/src/bash/src/parse.y"
- { (yyval.command) = command_connect ((yyvsp[(1) - (3)].command), (yyvsp[(3) - (3)].command), ';'); }
- break;
-
- case 156:
-! #line 1189 "/usr/homes/chet/src/bash/src/parse.y"
- { (yyval.command) = (yyvsp[(1) - (1)].command); }
- break;
-
- case 157:
-! #line 1193 "/usr/homes/chet/src/bash/src/parse.y"
- { (yyval.command) = (yyvsp[(1) - (1)].command); }
- break;
-
- case 158:
-! #line 1195 "/usr/homes/chet/src/bash/src/parse.y"
- {
- if ((yyvsp[(2) - (2)].command))
---- 3253,3272 ----
-
- case 155:
-! #line 1191 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- { (yyval.command) = command_connect ((yyvsp[(1) - (3)].command), (yyvsp[(3) - (3)].command), ';'); }
- break;
-
- case 156:
-! #line 1194 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- { (yyval.command) = (yyvsp[(1) - (1)].command); }
- break;
-
- case 157:
-! #line 1198 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- { (yyval.command) = (yyvsp[(1) - (1)].command); }
- break;
-
- case 158:
-! #line 1200 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- if ((yyvsp[(2) - (2)].command))
-***************
-*** 3272,3276 ****
-
- case 159:
-! #line 1201 "/usr/homes/chet/src/bash/src/parse.y"
- {
- if ((yyvsp[(2) - (2)].command))
---- 3277,3281 ----
-
- case 159:
-! #line 1206 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- if ((yyvsp[(2) - (2)].command))
-***************
-*** 3281,3285 ****
-
- case 160:
-! #line 1207 "/usr/homes/chet/src/bash/src/parse.y"
- {
- ELEMENT x;
---- 3286,3290 ----
-
- case 160:
-! #line 1212 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- ELEMENT x;
-***************
-*** 3301,3305 ****
-
- case 161:
-! #line 1224 "/usr/homes/chet/src/bash/src/parse.y"
- {
- ELEMENT x;
---- 3306,3310 ----
-
- case 161:
-! #line 1229 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- ELEMENT x;
-***************
-*** 3322,3331 ****
-
- case 162:
-! #line 1244 "/usr/homes/chet/src/bash/src/parse.y"
- { (yyval.command) = command_connect ((yyvsp[(1) - (4)].command), (yyvsp[(4) - (4)].command), '|'); }
- break;
-
- case 163:
-! #line 1246 "/usr/homes/chet/src/bash/src/parse.y"
- {
- /* Make cmd1 |& cmd2 equivalent to cmd1 2>&1 | cmd2 */
---- 3327,3336 ----
-
- case 162:
-! #line 1249 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- { (yyval.command) = command_connect ((yyvsp[(1) - (4)].command), (yyvsp[(4) - (4)].command), '|'); }
- break;
-
- case 163:
-! #line 1251 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- /* Make cmd1 |& cmd2 equivalent to cmd1 2>&1 | cmd2 */
-***************
-*** 3353,3372 ****
-
- case 164:
-! #line 1269 "/usr/homes/chet/src/bash/src/parse.y"
- { (yyval.command) = (yyvsp[(1) - (1)].command); }
- break;
-
- case 165:
-! #line 1273 "/usr/homes/chet/src/bash/src/parse.y"
- { (yyval.number) = CMD_TIME_PIPELINE; }
- break;
-
- case 166:
-! #line 1275 "/usr/homes/chet/src/bash/src/parse.y"
- { (yyval.number) = CMD_TIME_PIPELINE|CMD_TIME_POSIX; }
- break;
-
- case 167:
-! #line 1277 "/usr/homes/chet/src/bash/src/parse.y"
- { (yyval.number) = CMD_TIME_PIPELINE|CMD_TIME_POSIX; }
- break;
---- 3358,3377 ----
-
- case 164:
-! #line 1274 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- { (yyval.command) = (yyvsp[(1) - (1)].command); }
- break;
-
- case 165:
-! #line 1278 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- { (yyval.number) = CMD_TIME_PIPELINE; }
- break;
-
- case 166:
-! #line 1280 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- { (yyval.number) = CMD_TIME_PIPELINE|CMD_TIME_POSIX; }
- break;
-
- case 167:
-! #line 1282 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- { (yyval.number) = CMD_TIME_PIPELINE|CMD_TIME_POSIX; }
- break;
-***************
-*** 3374,3378 ****
-
- /* Line 1267 of yacc.c. */
-! #line 3377 "y.tab.c"
- default: break;
- }
---- 3379,3383 ----
-
- /* Line 1267 of yacc.c. */
-! #line 3382 "y.tab.c"
- default: break;
- }
-***************
-*** 3588,3592 ****
-
-
-! #line 1279 "/usr/homes/chet/src/bash/src/parse.y"
-
-
---- 3593,3597 ----
-
-
-! #line 1284 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
-
-
-***************
-*** 4949,4952 ****
---- 4954,4972 ----
- static int esacs_needed_count;
-
-+ static void
-+ push_heredoc (r)
-+ REDIRECT *r;
-+ {
-+ if (need_here_doc >= HEREDOC_MAX)
-+ {
-+ last_command_exit_value = EX_BADUSAGE;
-+ need_here_doc = 0;
-+ report_syntax_error (_("maximum here-document count exceeded"));
-+ reset_parser ();
-+ exit_shell (last_command_exit_value);
-+ }
-+ redir_stack[need_here_doc++] = r;
-+ }
-+
- void
- gather_here_documents ()
-***************
-*** 8542,8543 ****
---- 8562,8564 ----
- }
- #endif /* HANDLE_MULTIBYTE */
-+
-*** ../bash-4.3/patchlevel.h 2012-12-29 10:47:57.000000000 -0500
---- patchlevel.h 2014-03-20 20:01:28.000000000 -0400
-***************
-*** 26,30 ****
- looks for to find the patch level (for the sccs version string). */
-
-! #define PATCHLEVEL 27
-
- #endif /* _PATCHLEVEL_H_ */
---- 26,30 ----
- looks for to find the patch level (for the sccs version string). */
-
-! #define PATCHLEVEL 28
-
- #endif /* _PATCHLEVEL_H_ */
+++ /dev/null
- BASH PATCH REPORT
- =================
-
-Bash-Release: 4.3
-Patch-ID: bash43-029
-
-Bug-Reported-by: Michal Zalewski <lcamtuf@coredump.cx>
-Bug-Reference-ID:
-Bug-Reference-URL:
-
-Bug-Description:
-
-When bash is parsing a function definition that contains a here-document
-delimited by end-of-file (or end-of-string), it leaves the closing delimiter
-uninitialized. This can result in an invalid memory access when the parsed
-function is later copied.
-
-Patch (apply with `patch -p0'):
-
-*** ../bash-4.3.28/make_cmd.c 2011-12-16 08:08:01.000000000 -0500
---- make_cmd.c 2014-10-02 11:24:23.000000000 -0400
-***************
-*** 693,696 ****
---- 693,697 ----
- temp->redirector = source;
- temp->redirectee = dest_and_filename;
-+ temp->here_doc_eof = 0;
- temp->instruction = instruction;
- temp->flags = 0;
-*** ../bash-4.3.28/copy_cmd.c 2009-09-11 16:28:02.000000000 -0400
---- copy_cmd.c 2014-10-02 11:24:23.000000000 -0400
-***************
-*** 127,131 ****
- case r_reading_until:
- case r_deblank_reading_until:
-! new_redirect->here_doc_eof = savestring (redirect->here_doc_eof);
- /*FALLTHROUGH*/
- case r_reading_string:
---- 127,131 ----
- case r_reading_until:
- case r_deblank_reading_until:
-! new_redirect->here_doc_eof = redirect->here_doc_eof ? savestring (redirect->here_doc_eof) : 0;
- /*FALLTHROUGH*/
- case r_reading_string:
-*** ../bash-4.3/patchlevel.h 2012-12-29 10:47:57.000000000 -0500
---- patchlevel.h 2014-03-20 20:01:28.000000000 -0400
-***************
-*** 26,30 ****
- looks for to find the patch level (for the sccs version string). */
-
-! #define PATCHLEVEL 28
-
- #endif /* _PATCHLEVEL_H_ */
---- 26,30 ----
- looks for to find the patch level (for the sccs version string). */
-
-! #define PATCHLEVEL 29
-
- #endif /* _PATCHLEVEL_H_ */
+++ /dev/null
- BASH PATCH REPORT
- =================
-
-Bash-Release: 4.3
-Patch-ID: bash43-030
-
-Bug-Reported-by: Michal Zalewski <lcamtuf@coredump.cx>
-Bug-Reference-ID:
-Bug-Reference-URL:
-
-Bug-Description:
-
-A combination of nested command substitutions and function importing from
-the environment can cause bash to execute code appearing in the environment
-variable value following the function definition.
-
-Patch (apply with `patch -p0'):
-
-*** ../bash-4.3.29/builtins/evalstring.c 2014-10-01 12:57:47.000000000 -0400
---- builtins/evalstring.c 2014-10-03 11:57:04.000000000 -0400
-***************
-*** 309,318 ****
- struct fd_bitmap *bitmap;
-
-! if ((flags & SEVAL_FUNCDEF) && command->type != cm_function_def)
- {
-! internal_warning ("%s: ignoring function definition attempt", from_file);
-! should_jump_to_top_level = 0;
-! last_result = last_command_exit_value = EX_BADUSAGE;
-! break;
- }
-
---- 313,335 ----
- struct fd_bitmap *bitmap;
-
-! if (flags & SEVAL_FUNCDEF)
- {
-! char *x;
-!
-! /* If the command parses to something other than a straight
-! function definition, or if we have not consumed the entire
-! string, or if the parser has transformed the function
-! name (as parsing will if it begins or ends with shell
-! whitespace, for example), reject the attempt */
-! if (command->type != cm_function_def ||
-! ((x = parser_remaining_input ()) && *x) ||
-! (STREQ (from_file, command->value.Function_def->name->word) == 0))
-! {
-! internal_warning (_("%s: ignoring function definition attempt"), from_file);
-! should_jump_to_top_level = 0;
-! last_result = last_command_exit_value = EX_BADUSAGE;
-! reset_parser ();
-! break;
-! }
- }
-
-***************
-*** 379,383 ****
-
- if (flags & SEVAL_ONECMD)
-! break;
- }
- }
---- 396,403 ----
-
- if (flags & SEVAL_ONECMD)
-! {
-! reset_parser ();
-! break;
-! }
- }
- }
-*** ../bash-4.3.29/parse.y 2014-10-01 12:58:43.000000000 -0400
---- parse.y 2014-10-03 14:48:59.000000000 -0400
-***************
-*** 2539,2542 ****
---- 2539,2552 ----
- }
-
-+ char *
-+ parser_remaining_input ()
-+ {
-+ if (shell_input_line == 0)
-+ return 0;
-+ if (shell_input_line_index < 0 || shell_input_line_index >= shell_input_line_len)
-+ return '\0'; /* XXX */
-+ return (shell_input_line + shell_input_line_index);
-+ }
-+
- #ifdef INCLUDE_UNUSED
- /* Back the input pointer up by one, effectively `ungetting' a character. */
-***************
-*** 4028,4033 ****
- /* reset_parser clears shell_input_line and associated variables */
- restore_input_line_state (&ls);
-! if (interactive)
-! token_to_read = 0;
-
- /* Need to find how many characters parse_and_execute consumed, update
---- 4053,4058 ----
- /* reset_parser clears shell_input_line and associated variables */
- restore_input_line_state (&ls);
-!
-! token_to_read = 0;
-
- /* Need to find how many characters parse_and_execute consumed, update
-*** ../bash-4.3.29/shell.h 2014-10-01 12:57:39.000000000 -0400
---- shell.h 2014-10-03 14:49:12.000000000 -0400
-***************
-*** 181,184 ****
---- 181,186 ----
-
- /* Let's try declaring these here. */
-+ extern char *parser_remaining_input __P((void));
-+
- extern sh_parser_state_t *save_parser_state __P((sh_parser_state_t *));
- extern void restore_parser_state __P((sh_parser_state_t *));
-*** ../bash-4.3.28/y.tab.c 2014-10-01 13:09:46.000000000 -0400
---- y.tab.c 2014-10-04 19:26:22.000000000 -0400
-***************
-*** 169,173 ****
-
- /* Copy the first part of user declarations. */
-! #line 21 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
-
- #include "config.h"
---- 169,173 ----
-
- /* Copy the first part of user declarations. */
-! #line 21 "/usr/src/local/bash/bash-4.3-patched/parse.y"
-
- #include "config.h"
-***************
-*** 498,502 ****
- #if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED
- typedef union YYSTYPE
-! #line 329 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- WORD_DESC *word; /* the word that we read. */
---- 498,502 ----
- #if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED
- typedef union YYSTYPE
-! #line 329 "/usr/src/local/bash/bash-4.3-patched/parse.y"
- {
- WORD_DESC *word; /* the word that we read. */
-***************
-*** 2099,2103 ****
- {
- case 2:
-! #line 383 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- /* Case of regular command. Discard the error
---- 2099,2103 ----
- {
- case 2:
-! #line 383 "/usr/src/local/bash/bash-4.3-patched/parse.y"
- {
- /* Case of regular command. Discard the error
-***************
-*** 2113,2117 ****
-
- case 3:
-! #line 394 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- /* Case of regular command, but not a very
---- 2113,2117 ----
-
- case 3:
-! #line 394 "/usr/src/local/bash/bash-4.3-patched/parse.y"
- {
- /* Case of regular command, but not a very
-***************
-*** 2125,2129 ****
-
- case 4:
-! #line 403 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- /* Error during parsing. Return NULL command. */
---- 2125,2129 ----
-
- case 4:
-! #line 403 "/usr/src/local/bash/bash-4.3-patched/parse.y"
- {
- /* Error during parsing. Return NULL command. */
-***************
-*** 2143,2147 ****
-
- case 5:
-! #line 418 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- /* Case of EOF seen by itself. Do ignoreeof or
---- 2143,2147 ----
-
- case 5:
-! #line 418 "/usr/src/local/bash/bash-4.3-patched/parse.y"
- {
- /* Case of EOF seen by itself. Do ignoreeof or
-***************
-*** 2154,2168 ****
-
- case 6:
-! #line 428 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- { (yyval.word_list) = make_word_list ((yyvsp[(1) - (1)].word), (WORD_LIST *)NULL); }
- break;
-
- case 7:
-! #line 430 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- { (yyval.word_list) = make_word_list ((yyvsp[(2) - (2)].word), (yyvsp[(1) - (2)].word_list)); }
- break;
-
- case 8:
-! #line 434 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- source.dest = 1;
---- 2154,2168 ----
-
- case 6:
-! #line 428 "/usr/src/local/bash/bash-4.3-patched/parse.y"
- { (yyval.word_list) = make_word_list ((yyvsp[(1) - (1)].word), (WORD_LIST *)NULL); }
- break;
-
- case 7:
-! #line 430 "/usr/src/local/bash/bash-4.3-patched/parse.y"
- { (yyval.word_list) = make_word_list ((yyvsp[(2) - (2)].word), (yyvsp[(1) - (2)].word_list)); }
- break;
-
- case 8:
-! #line 434 "/usr/src/local/bash/bash-4.3-patched/parse.y"
- {
- source.dest = 1;
-***************
-*** 2173,2177 ****
-
- case 9:
-! #line 440 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- source.dest = 0;
---- 2173,2177 ----
-
- case 9:
-! #line 440 "/usr/src/local/bash/bash-4.3-patched/parse.y"
- {
- source.dest = 0;
-***************
-*** 2182,2186 ****
-
- case 10:
-! #line 446 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- source.dest = (yyvsp[(1) - (3)].number);
---- 2182,2186 ----
-
- case 10:
-! #line 446 "/usr/src/local/bash/bash-4.3-patched/parse.y"
- {
- source.dest = (yyvsp[(1) - (3)].number);
-***************
-*** 2191,2195 ****
-
- case 11:
-! #line 452 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- source.dest = (yyvsp[(1) - (3)].number);
---- 2191,2195 ----
-
- case 11:
-! #line 452 "/usr/src/local/bash/bash-4.3-patched/parse.y"
- {
- source.dest = (yyvsp[(1) - (3)].number);
-***************
-*** 2200,2204 ****
-
- case 12:
-! #line 458 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- source.filename = (yyvsp[(1) - (3)].word);
---- 2200,2204 ----
-
- case 12:
-! #line 458 "/usr/src/local/bash/bash-4.3-patched/parse.y"
- {
- source.filename = (yyvsp[(1) - (3)].word);
-***************
-*** 2209,2213 ****
-
- case 13:
-! #line 464 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- source.filename = (yyvsp[(1) - (3)].word);
---- 2209,2213 ----
-
- case 13:
-! #line 464 "/usr/src/local/bash/bash-4.3-patched/parse.y"
- {
- source.filename = (yyvsp[(1) - (3)].word);
-***************
-*** 2218,2222 ****
-
- case 14:
-! #line 470 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- source.dest = 1;
---- 2218,2222 ----
-
- case 14:
-! #line 470 "/usr/src/local/bash/bash-4.3-patched/parse.y"
- {
- source.dest = 1;
-***************
-*** 2227,2231 ****
-
- case 15:
-! #line 476 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- source.dest = (yyvsp[(1) - (3)].number);
---- 2227,2231 ----
-
- case 15:
-! #line 476 "/usr/src/local/bash/bash-4.3-patched/parse.y"
- {
- source.dest = (yyvsp[(1) - (3)].number);
-***************
-*** 2236,2240 ****
-
- case 16:
-! #line 482 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- source.filename = (yyvsp[(1) - (3)].word);
---- 2236,2240 ----
-
- case 16:
-! #line 482 "/usr/src/local/bash/bash-4.3-patched/parse.y"
- {
- source.filename = (yyvsp[(1) - (3)].word);
-***************
-*** 2245,2249 ****
-
- case 17:
-! #line 488 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- source.dest = 1;
---- 2245,2249 ----
-
- case 17:
-! #line 488 "/usr/src/local/bash/bash-4.3-patched/parse.y"
- {
- source.dest = 1;
-***************
-*** 2254,2258 ****
-
- case 18:
-! #line 494 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- source.dest = (yyvsp[(1) - (3)].number);
---- 2254,2258 ----
-
- case 18:
-! #line 494 "/usr/src/local/bash/bash-4.3-patched/parse.y"
- {
- source.dest = (yyvsp[(1) - (3)].number);
-***************
-*** 2263,2267 ****
-
- case 19:
-! #line 500 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- source.filename = (yyvsp[(1) - (3)].word);
---- 2263,2267 ----
-
- case 19:
-! #line 500 "/usr/src/local/bash/bash-4.3-patched/parse.y"
- {
- source.filename = (yyvsp[(1) - (3)].word);
-***************
-*** 2272,2276 ****
-
- case 20:
-! #line 506 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- source.dest = 0;
---- 2272,2276 ----
-
- case 20:
-! #line 506 "/usr/src/local/bash/bash-4.3-patched/parse.y"
- {
- source.dest = 0;
-***************
-*** 2281,2285 ****
-
- case 21:
-! #line 512 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- source.dest = (yyvsp[(1) - (3)].number);
---- 2281,2285 ----
-
- case 21:
-! #line 512 "/usr/src/local/bash/bash-4.3-patched/parse.y"
- {
- source.dest = (yyvsp[(1) - (3)].number);
-***************
-*** 2290,2294 ****
-
- case 22:
-! #line 518 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- source.filename = (yyvsp[(1) - (3)].word);
---- 2290,2294 ----
-
- case 22:
-! #line 518 "/usr/src/local/bash/bash-4.3-patched/parse.y"
- {
- source.filename = (yyvsp[(1) - (3)].word);
-***************
-*** 2299,2303 ****
-
- case 23:
-! #line 524 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- source.dest = 0;
---- 2299,2303 ----
-
- case 23:
-! #line 524 "/usr/src/local/bash/bash-4.3-patched/parse.y"
- {
- source.dest = 0;
-***************
-*** 2309,2313 ****
-
- case 24:
-! #line 531 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- source.dest = (yyvsp[(1) - (3)].number);
---- 2309,2313 ----
-
- case 24:
-! #line 531 "/usr/src/local/bash/bash-4.3-patched/parse.y"
- {
- source.dest = (yyvsp[(1) - (3)].number);
-***************
-*** 2319,2323 ****
-
- case 25:
-! #line 538 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- source.filename = (yyvsp[(1) - (3)].word);
---- 2319,2323 ----
-
- case 25:
-! #line 538 "/usr/src/local/bash/bash-4.3-patched/parse.y"
- {
- source.filename = (yyvsp[(1) - (3)].word);
-***************
-*** 2329,2333 ****
-
- case 26:
-! #line 545 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- source.dest = 0;
---- 2329,2333 ----
-
- case 26:
-! #line 545 "/usr/src/local/bash/bash-4.3-patched/parse.y"
- {
- source.dest = 0;
-***************
-*** 2339,2343 ****
-
- case 27:
-! #line 552 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- source.dest = (yyvsp[(1) - (3)].number);
---- 2339,2343 ----
-
- case 27:
-! #line 552 "/usr/src/local/bash/bash-4.3-patched/parse.y"
- {
- source.dest = (yyvsp[(1) - (3)].number);
-***************
-*** 2349,2353 ****
-
- case 28:
-! #line 559 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- source.filename = (yyvsp[(1) - (3)].word);
---- 2349,2353 ----
-
- case 28:
-! #line 559 "/usr/src/local/bash/bash-4.3-patched/parse.y"
- {
- source.filename = (yyvsp[(1) - (3)].word);
-***************
-*** 2359,2363 ****
-
- case 29:
-! #line 566 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- source.dest = 0;
---- 2359,2363 ----
-
- case 29:
-! #line 566 "/usr/src/local/bash/bash-4.3-patched/parse.y"
- {
- source.dest = 0;
-***************
-*** 2368,2372 ****
-
- case 30:
-! #line 572 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- source.dest = (yyvsp[(1) - (3)].number);
---- 2368,2372 ----
-
- case 30:
-! #line 572 "/usr/src/local/bash/bash-4.3-patched/parse.y"
- {
- source.dest = (yyvsp[(1) - (3)].number);
-***************
-*** 2377,2381 ****
-
- case 31:
-! #line 578 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- source.filename = (yyvsp[(1) - (3)].word);
---- 2377,2381 ----
-
- case 31:
-! #line 578 "/usr/src/local/bash/bash-4.3-patched/parse.y"
- {
- source.filename = (yyvsp[(1) - (3)].word);
-***************
-*** 2386,2390 ****
-
- case 32:
-! #line 584 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- source.dest = 0;
---- 2386,2390 ----
-
- case 32:
-! #line 584 "/usr/src/local/bash/bash-4.3-patched/parse.y"
- {
- source.dest = 0;
-***************
-*** 2395,2399 ****
-
- case 33:
-! #line 590 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- source.dest = (yyvsp[(1) - (3)].number);
---- 2395,2399 ----
-
- case 33:
-! #line 590 "/usr/src/local/bash/bash-4.3-patched/parse.y"
- {
- source.dest = (yyvsp[(1) - (3)].number);
-***************
-*** 2404,2408 ****
-
- case 34:
-! #line 596 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- source.filename = (yyvsp[(1) - (3)].word);
---- 2404,2408 ----
-
- case 34:
-! #line 596 "/usr/src/local/bash/bash-4.3-patched/parse.y"
- {
- source.filename = (yyvsp[(1) - (3)].word);
-***************
-*** 2413,2417 ****
-
- case 35:
-! #line 602 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- source.dest = 1;
---- 2413,2417 ----
-
- case 35:
-! #line 602 "/usr/src/local/bash/bash-4.3-patched/parse.y"
- {
- source.dest = 1;
-***************
-*** 2422,2426 ****
-
- case 36:
-! #line 608 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- source.dest = (yyvsp[(1) - (3)].number);
---- 2422,2426 ----
-
- case 36:
-! #line 608 "/usr/src/local/bash/bash-4.3-patched/parse.y"
- {
- source.dest = (yyvsp[(1) - (3)].number);
-***************
-*** 2431,2435 ****
-
- case 37:
-! #line 614 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- source.filename = (yyvsp[(1) - (3)].word);
---- 2431,2435 ----
-
- case 37:
-! #line 614 "/usr/src/local/bash/bash-4.3-patched/parse.y"
- {
- source.filename = (yyvsp[(1) - (3)].word);
-***************
-*** 2440,2444 ****
-
- case 38:
-! #line 620 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- source.dest = 0;
---- 2440,2444 ----
-
- case 38:
-! #line 620 "/usr/src/local/bash/bash-4.3-patched/parse.y"
- {
- source.dest = 0;
-***************
-*** 2449,2453 ****
-
- case 39:
-! #line 626 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- source.dest = (yyvsp[(1) - (3)].number);
---- 2449,2453 ----
-
- case 39:
-! #line 626 "/usr/src/local/bash/bash-4.3-patched/parse.y"
- {
- source.dest = (yyvsp[(1) - (3)].number);
-***************
-*** 2458,2462 ****
-
- case 40:
-! #line 632 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- source.filename = (yyvsp[(1) - (3)].word);
---- 2458,2462 ----
-
- case 40:
-! #line 632 "/usr/src/local/bash/bash-4.3-patched/parse.y"
- {
- source.filename = (yyvsp[(1) - (3)].word);
-***************
-*** 2467,2471 ****
-
- case 41:
-! #line 638 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- source.dest = 1;
---- 2467,2471 ----
-
- case 41:
-! #line 638 "/usr/src/local/bash/bash-4.3-patched/parse.y"
- {
- source.dest = 1;
-***************
-*** 2476,2480 ****
-
- case 42:
-! #line 644 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- source.dest = (yyvsp[(1) - (3)].number);
---- 2476,2480 ----
-
- case 42:
-! #line 644 "/usr/src/local/bash/bash-4.3-patched/parse.y"
- {
- source.dest = (yyvsp[(1) - (3)].number);
-***************
-*** 2485,2489 ****
-
- case 43:
-! #line 650 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- source.filename = (yyvsp[(1) - (3)].word);
---- 2485,2489 ----
-
- case 43:
-! #line 650 "/usr/src/local/bash/bash-4.3-patched/parse.y"
- {
- source.filename = (yyvsp[(1) - (3)].word);
-***************
-*** 2494,2498 ****
-
- case 44:
-! #line 656 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- source.dest = 1;
---- 2494,2498 ----
-
- case 44:
-! #line 656 "/usr/src/local/bash/bash-4.3-patched/parse.y"
- {
- source.dest = 1;
-***************
-*** 2503,2507 ****
-
- case 45:
-! #line 662 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- source.dest = (yyvsp[(1) - (3)].number);
---- 2503,2507 ----
-
- case 45:
-! #line 662 "/usr/src/local/bash/bash-4.3-patched/parse.y"
- {
- source.dest = (yyvsp[(1) - (3)].number);
-***************
-*** 2512,2516 ****
-
- case 46:
-! #line 668 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- source.filename = (yyvsp[(1) - (3)].word);
---- 2512,2516 ----
-
- case 46:
-! #line 668 "/usr/src/local/bash/bash-4.3-patched/parse.y"
- {
- source.filename = (yyvsp[(1) - (3)].word);
-***************
-*** 2521,2525 ****
-
- case 47:
-! #line 674 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- source.dest = 0;
---- 2521,2525 ----
-
- case 47:
-! #line 674 "/usr/src/local/bash/bash-4.3-patched/parse.y"
- {
- source.dest = 0;
-***************
-*** 2530,2534 ****
-
- case 48:
-! #line 680 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- source.dest = (yyvsp[(1) - (3)].number);
---- 2530,2534 ----
-
- case 48:
-! #line 680 "/usr/src/local/bash/bash-4.3-patched/parse.y"
- {
- source.dest = (yyvsp[(1) - (3)].number);
-***************
-*** 2539,2543 ****
-
- case 49:
-! #line 686 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- source.filename = (yyvsp[(1) - (3)].word);
---- 2539,2543 ----
-
- case 49:
-! #line 686 "/usr/src/local/bash/bash-4.3-patched/parse.y"
- {
- source.filename = (yyvsp[(1) - (3)].word);
-***************
-*** 2548,2552 ****
-
- case 50:
-! #line 692 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- source.dest = 1;
---- 2548,2552 ----
-
- case 50:
-! #line 692 "/usr/src/local/bash/bash-4.3-patched/parse.y"
- {
- source.dest = 1;
-***************
-*** 2557,2561 ****
-
- case 51:
-! #line 698 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- source.dest = 1;
---- 2557,2561 ----
-
- case 51:
-! #line 698 "/usr/src/local/bash/bash-4.3-patched/parse.y"
- {
- source.dest = 1;
-***************
-*** 2566,2585 ****
-
- case 52:
-! #line 706 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- { (yyval.element).word = (yyvsp[(1) - (1)].word); (yyval.element).redirect = 0; }
- break;
-
- case 53:
-! #line 708 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- { (yyval.element).word = (yyvsp[(1) - (1)].word); (yyval.element).redirect = 0; }
- break;
-
- case 54:
-! #line 710 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- { (yyval.element).redirect = (yyvsp[(1) - (1)].redirect); (yyval.element).word = 0; }
- break;
-
- case 55:
-! #line 714 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- (yyval.redirect) = (yyvsp[(1) - (1)].redirect);
---- 2566,2585 ----
-
- case 52:
-! #line 706 "/usr/src/local/bash/bash-4.3-patched/parse.y"
- { (yyval.element).word = (yyvsp[(1) - (1)].word); (yyval.element).redirect = 0; }
- break;
-
- case 53:
-! #line 708 "/usr/src/local/bash/bash-4.3-patched/parse.y"
- { (yyval.element).word = (yyvsp[(1) - (1)].word); (yyval.element).redirect = 0; }
- break;
-
- case 54:
-! #line 710 "/usr/src/local/bash/bash-4.3-patched/parse.y"
- { (yyval.element).redirect = (yyvsp[(1) - (1)].redirect); (yyval.element).word = 0; }
- break;
-
- case 55:
-! #line 714 "/usr/src/local/bash/bash-4.3-patched/parse.y"
- {
- (yyval.redirect) = (yyvsp[(1) - (1)].redirect);
-***************
-*** 2588,2592 ****
-
- case 56:
-! #line 718 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- register REDIRECT *t;
---- 2588,2592 ----
-
- case 56:
-! #line 718 "/usr/src/local/bash/bash-4.3-patched/parse.y"
- {
- register REDIRECT *t;
-***************
-*** 2600,2624 ****
-
- case 57:
-! #line 729 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- { (yyval.command) = make_simple_command ((yyvsp[(1) - (1)].element), (COMMAND *)NULL); }
- break;
-
- case 58:
-! #line 731 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- { (yyval.command) = make_simple_command ((yyvsp[(2) - (2)].element), (yyvsp[(1) - (2)].command)); }
- break;
-
- case 59:
-! #line 735 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- { (yyval.command) = clean_simple_command ((yyvsp[(1) - (1)].command)); }
- break;
-
- case 60:
-! #line 737 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- { (yyval.command) = (yyvsp[(1) - (1)].command); }
- break;
-
- case 61:
-! #line 739 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- COMMAND *tc;
---- 2600,2624 ----
-
- case 57:
-! #line 729 "/usr/src/local/bash/bash-4.3-patched/parse.y"
- { (yyval.command) = make_simple_command ((yyvsp[(1) - (1)].element), (COMMAND *)NULL); }
- break;
-
- case 58:
-! #line 731 "/usr/src/local/bash/bash-4.3-patched/parse.y"
- { (yyval.command) = make_simple_command ((yyvsp[(2) - (2)].element), (yyvsp[(1) - (2)].command)); }
- break;
-
- case 59:
-! #line 735 "/usr/src/local/bash/bash-4.3-patched/parse.y"
- { (yyval.command) = clean_simple_command ((yyvsp[(1) - (1)].command)); }
- break;
-
- case 60:
-! #line 737 "/usr/src/local/bash/bash-4.3-patched/parse.y"
- { (yyval.command) = (yyvsp[(1) - (1)].command); }
- break;
-
- case 61:
-! #line 739 "/usr/src/local/bash/bash-4.3-patched/parse.y"
- {
- COMMAND *tc;
-***************
-*** 2639,2708 ****
-
- case 62:
-! #line 755 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- { (yyval.command) = (yyvsp[(1) - (1)].command); }
- break;
-
- case 63:
-! #line 757 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- { (yyval.command) = (yyvsp[(1) - (1)].command); }
- break;
-
- case 64:
-! #line 761 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- { (yyval.command) = (yyvsp[(1) - (1)].command); }
- break;
-
- case 65:
-! #line 763 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- { (yyval.command) = (yyvsp[(1) - (1)].command); }
- break;
-
- case 66:
-! #line 765 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- { (yyval.command) = make_while_command ((yyvsp[(2) - (5)].command), (yyvsp[(4) - (5)].command)); }
- break;
-
- case 67:
-! #line 767 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- { (yyval.command) = make_until_command ((yyvsp[(2) - (5)].command), (yyvsp[(4) - (5)].command)); }
- break;
-
- case 68:
-! #line 769 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- { (yyval.command) = (yyvsp[(1) - (1)].command); }
- break;
-
- case 69:
-! #line 771 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- { (yyval.command) = (yyvsp[(1) - (1)].command); }
- break;
-
- case 70:
-! #line 773 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- { (yyval.command) = (yyvsp[(1) - (1)].command); }
- break;
-
- case 71:
-! #line 775 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- { (yyval.command) = (yyvsp[(1) - (1)].command); }
- break;
-
- case 72:
-! #line 777 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- { (yyval.command) = (yyvsp[(1) - (1)].command); }
- break;
-
- case 73:
-! #line 779 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- { (yyval.command) = (yyvsp[(1) - (1)].command); }
- break;
-
- case 74:
-! #line 781 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- { (yyval.command) = (yyvsp[(1) - (1)].command); }
- break;
-
- case 75:
-! #line 785 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- (yyval.command) = make_for_command ((yyvsp[(2) - (6)].word), add_string_to_list ("\"$@\"", (WORD_LIST *)NULL), (yyvsp[(5) - (6)].command), word_lineno[word_top]);
---- 2639,2708 ----
-
- case 62:
-! #line 755 "/usr/src/local/bash/bash-4.3-patched/parse.y"
- { (yyval.command) = (yyvsp[(1) - (1)].command); }
- break;
-
- case 63:
-! #line 757 "/usr/src/local/bash/bash-4.3-patched/parse.y"
- { (yyval.command) = (yyvsp[(1) - (1)].command); }
- break;
-
- case 64:
-! #line 761 "/usr/src/local/bash/bash-4.3-patched/parse.y"
- { (yyval.command) = (yyvsp[(1) - (1)].command); }
- break;
-
- case 65:
-! #line 763 "/usr/src/local/bash/bash-4.3-patched/parse.y"
- { (yyval.command) = (yyvsp[(1) - (1)].command); }
- break;
-
- case 66:
-! #line 765 "/usr/src/local/bash/bash-4.3-patched/parse.y"
- { (yyval.command) = make_while_command ((yyvsp[(2) - (5)].command), (yyvsp[(4) - (5)].command)); }
- break;
-
- case 67:
-! #line 767 "/usr/src/local/bash/bash-4.3-patched/parse.y"
- { (yyval.command) = make_until_command ((yyvsp[(2) - (5)].command), (yyvsp[(4) - (5)].command)); }
- break;
-
- case 68:
-! #line 769 "/usr/src/local/bash/bash-4.3-patched/parse.y"
- { (yyval.command) = (yyvsp[(1) - (1)].command); }
- break;
-
- case 69:
-! #line 771 "/usr/src/local/bash/bash-4.3-patched/parse.y"
- { (yyval.command) = (yyvsp[(1) - (1)].command); }
- break;
-
- case 70:
-! #line 773 "/usr/src/local/bash/bash-4.3-patched/parse.y"
- { (yyval.command) = (yyvsp[(1) - (1)].command); }
- break;
-
- case 71:
-! #line 775 "/usr/src/local/bash/bash-4.3-patched/parse.y"
- { (yyval.command) = (yyvsp[(1) - (1)].command); }
- break;
-
- case 72:
-! #line 777 "/usr/src/local/bash/bash-4.3-patched/parse.y"
- { (yyval.command) = (yyvsp[(1) - (1)].command); }
- break;
-
- case 73:
-! #line 779 "/usr/src/local/bash/bash-4.3-patched/parse.y"
- { (yyval.command) = (yyvsp[(1) - (1)].command); }
- break;
-
- case 74:
-! #line 781 "/usr/src/local/bash/bash-4.3-patched/parse.y"
- { (yyval.command) = (yyvsp[(1) - (1)].command); }
- break;
-
- case 75:
-! #line 785 "/usr/src/local/bash/bash-4.3-patched/parse.y"
- {
- (yyval.command) = make_for_command ((yyvsp[(2) - (6)].word), add_string_to_list ("\"$@\"", (WORD_LIST *)NULL), (yyvsp[(5) - (6)].command), word_lineno[word_top]);
-***************
-*** 2712,2716 ****
-
- case 76:
-! #line 790 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- (yyval.command) = make_for_command ((yyvsp[(2) - (6)].word), add_string_to_list ("\"$@\"", (WORD_LIST *)NULL), (yyvsp[(5) - (6)].command), word_lineno[word_top]);
---- 2712,2716 ----
-
- case 76:
-! #line 790 "/usr/src/local/bash/bash-4.3-patched/parse.y"
- {
- (yyval.command) = make_for_command ((yyvsp[(2) - (6)].word), add_string_to_list ("\"$@\"", (WORD_LIST *)NULL), (yyvsp[(5) - (6)].command), word_lineno[word_top]);
-***************
-*** 2720,2724 ****
-
- case 77:
-! #line 795 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- (yyval.command) = make_for_command ((yyvsp[(2) - (7)].word), add_string_to_list ("\"$@\"", (WORD_LIST *)NULL), (yyvsp[(6) - (7)].command), word_lineno[word_top]);
---- 2720,2724 ----
-
- case 77:
-! #line 795 "/usr/src/local/bash/bash-4.3-patched/parse.y"
- {
- (yyval.command) = make_for_command ((yyvsp[(2) - (7)].word), add_string_to_list ("\"$@\"", (WORD_LIST *)NULL), (yyvsp[(6) - (7)].command), word_lineno[word_top]);
-***************
-*** 2728,2732 ****
-
- case 78:
-! #line 800 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- (yyval.command) = make_for_command ((yyvsp[(2) - (7)].word), add_string_to_list ("\"$@\"", (WORD_LIST *)NULL), (yyvsp[(6) - (7)].command), word_lineno[word_top]);
---- 2728,2732 ----
-
- case 78:
-! #line 800 "/usr/src/local/bash/bash-4.3-patched/parse.y"
- {
- (yyval.command) = make_for_command ((yyvsp[(2) - (7)].word), add_string_to_list ("\"$@\"", (WORD_LIST *)NULL), (yyvsp[(6) - (7)].command), word_lineno[word_top]);
-***************
-*** 2736,2740 ****
-
- case 79:
-! #line 805 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- (yyval.command) = make_for_command ((yyvsp[(2) - (10)].word), REVERSE_LIST ((yyvsp[(5) - (10)].word_list), WORD_LIST *), (yyvsp[(9) - (10)].command), word_lineno[word_top]);
---- 2736,2740 ----
-
- case 79:
-! #line 805 "/usr/src/local/bash/bash-4.3-patched/parse.y"
- {
- (yyval.command) = make_for_command ((yyvsp[(2) - (10)].word), REVERSE_LIST ((yyvsp[(5) - (10)].word_list), WORD_LIST *), (yyvsp[(9) - (10)].command), word_lineno[word_top]);
-***************
-*** 2744,2748 ****
-
- case 80:
-! #line 810 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- (yyval.command) = make_for_command ((yyvsp[(2) - (10)].word), REVERSE_LIST ((yyvsp[(5) - (10)].word_list), WORD_LIST *), (yyvsp[(9) - (10)].command), word_lineno[word_top]);
---- 2744,2748 ----
-
- case 80:
-! #line 810 "/usr/src/local/bash/bash-4.3-patched/parse.y"
- {
- (yyval.command) = make_for_command ((yyvsp[(2) - (10)].word), REVERSE_LIST ((yyvsp[(5) - (10)].word_list), WORD_LIST *), (yyvsp[(9) - (10)].command), word_lineno[word_top]);
-***************
-*** 2752,2756 ****
-
- case 81:
-! #line 815 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- (yyval.command) = make_for_command ((yyvsp[(2) - (9)].word), (WORD_LIST *)NULL, (yyvsp[(8) - (9)].command), word_lineno[word_top]);
---- 2752,2756 ----
-
- case 81:
-! #line 815 "/usr/src/local/bash/bash-4.3-patched/parse.y"
- {
- (yyval.command) = make_for_command ((yyvsp[(2) - (9)].word), (WORD_LIST *)NULL, (yyvsp[(8) - (9)].command), word_lineno[word_top]);
-***************
-*** 2760,2764 ****
-
- case 82:
-! #line 820 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- (yyval.command) = make_for_command ((yyvsp[(2) - (9)].word), (WORD_LIST *)NULL, (yyvsp[(8) - (9)].command), word_lineno[word_top]);
---- 2760,2764 ----
-
- case 82:
-! #line 820 "/usr/src/local/bash/bash-4.3-patched/parse.y"
- {
- (yyval.command) = make_for_command ((yyvsp[(2) - (9)].word), (WORD_LIST *)NULL, (yyvsp[(8) - (9)].command), word_lineno[word_top]);
-***************
-*** 2768,2772 ****
-
- case 83:
-! #line 827 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- (yyval.command) = make_arith_for_command ((yyvsp[(2) - (7)].word_list), (yyvsp[(6) - (7)].command), arith_for_lineno);
---- 2768,2772 ----
-
- case 83:
-! #line 827 "/usr/src/local/bash/bash-4.3-patched/parse.y"
- {
- (yyval.command) = make_arith_for_command ((yyvsp[(2) - (7)].word_list), (yyvsp[(6) - (7)].command), arith_for_lineno);
-***************
-*** 2776,2780 ****
-
- case 84:
-! #line 832 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- (yyval.command) = make_arith_for_command ((yyvsp[(2) - (7)].word_list), (yyvsp[(6) - (7)].command), arith_for_lineno);
---- 2776,2780 ----
-
- case 84:
-! #line 832 "/usr/src/local/bash/bash-4.3-patched/parse.y"
- {
- (yyval.command) = make_arith_for_command ((yyvsp[(2) - (7)].word_list), (yyvsp[(6) - (7)].command), arith_for_lineno);
-***************
-*** 2784,2788 ****
-
- case 85:
-! #line 837 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- (yyval.command) = make_arith_for_command ((yyvsp[(2) - (5)].word_list), (yyvsp[(4) - (5)].command), arith_for_lineno);
---- 2784,2788 ----
-
- case 85:
-! #line 837 "/usr/src/local/bash/bash-4.3-patched/parse.y"
- {
- (yyval.command) = make_arith_for_command ((yyvsp[(2) - (5)].word_list), (yyvsp[(4) - (5)].command), arith_for_lineno);
-***************
-*** 2792,2796 ****
-
- case 86:
-! #line 842 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- (yyval.command) = make_arith_for_command ((yyvsp[(2) - (5)].word_list), (yyvsp[(4) - (5)].command), arith_for_lineno);
---- 2792,2796 ----
-
- case 86:
-! #line 842 "/usr/src/local/bash/bash-4.3-patched/parse.y"
- {
- (yyval.command) = make_arith_for_command ((yyvsp[(2) - (5)].word_list), (yyvsp[(4) - (5)].command), arith_for_lineno);
-***************
-*** 2800,2804 ****
-
- case 87:
-! #line 849 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- (yyval.command) = make_select_command ((yyvsp[(2) - (6)].word), add_string_to_list ("\"$@\"", (WORD_LIST *)NULL), (yyvsp[(5) - (6)].command), word_lineno[word_top]);
---- 2800,2804 ----
-
- case 87:
-! #line 849 "/usr/src/local/bash/bash-4.3-patched/parse.y"
- {
- (yyval.command) = make_select_command ((yyvsp[(2) - (6)].word), add_string_to_list ("\"$@\"", (WORD_LIST *)NULL), (yyvsp[(5) - (6)].command), word_lineno[word_top]);
-***************
-*** 2808,2812 ****
-
- case 88:
-! #line 854 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- (yyval.command) = make_select_command ((yyvsp[(2) - (6)].word), add_string_to_list ("\"$@\"", (WORD_LIST *)NULL), (yyvsp[(5) - (6)].command), word_lineno[word_top]);
---- 2808,2812 ----
-
- case 88:
-! #line 854 "/usr/src/local/bash/bash-4.3-patched/parse.y"
- {
- (yyval.command) = make_select_command ((yyvsp[(2) - (6)].word), add_string_to_list ("\"$@\"", (WORD_LIST *)NULL), (yyvsp[(5) - (6)].command), word_lineno[word_top]);
-***************
-*** 2816,2820 ****
-
- case 89:
-! #line 859 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- (yyval.command) = make_select_command ((yyvsp[(2) - (7)].word), add_string_to_list ("\"$@\"", (WORD_LIST *)NULL), (yyvsp[(6) - (7)].command), word_lineno[word_top]);
---- 2816,2820 ----
-
- case 89:
-! #line 859 "/usr/src/local/bash/bash-4.3-patched/parse.y"
- {
- (yyval.command) = make_select_command ((yyvsp[(2) - (7)].word), add_string_to_list ("\"$@\"", (WORD_LIST *)NULL), (yyvsp[(6) - (7)].command), word_lineno[word_top]);
-***************
-*** 2824,2828 ****
-
- case 90:
-! #line 864 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- (yyval.command) = make_select_command ((yyvsp[(2) - (7)].word), add_string_to_list ("\"$@\"", (WORD_LIST *)NULL), (yyvsp[(6) - (7)].command), word_lineno[word_top]);
---- 2824,2828 ----
-
- case 90:
-! #line 864 "/usr/src/local/bash/bash-4.3-patched/parse.y"
- {
- (yyval.command) = make_select_command ((yyvsp[(2) - (7)].word), add_string_to_list ("\"$@\"", (WORD_LIST *)NULL), (yyvsp[(6) - (7)].command), word_lineno[word_top]);
-***************
-*** 2832,2836 ****
-
- case 91:
-! #line 869 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- (yyval.command) = make_select_command ((yyvsp[(2) - (10)].word), REVERSE_LIST ((yyvsp[(5) - (10)].word_list), WORD_LIST *), (yyvsp[(9) - (10)].command), word_lineno[word_top]);
---- 2832,2836 ----
-
- case 91:
-! #line 869 "/usr/src/local/bash/bash-4.3-patched/parse.y"
- {
- (yyval.command) = make_select_command ((yyvsp[(2) - (10)].word), REVERSE_LIST ((yyvsp[(5) - (10)].word_list), WORD_LIST *), (yyvsp[(9) - (10)].command), word_lineno[word_top]);
-***************
-*** 2840,2844 ****
-
- case 92:
-! #line 874 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- (yyval.command) = make_select_command ((yyvsp[(2) - (10)].word), REVERSE_LIST ((yyvsp[(5) - (10)].word_list), WORD_LIST *), (yyvsp[(9) - (10)].command), word_lineno[word_top]);
---- 2840,2844 ----
-
- case 92:
-! #line 874 "/usr/src/local/bash/bash-4.3-patched/parse.y"
- {
- (yyval.command) = make_select_command ((yyvsp[(2) - (10)].word), REVERSE_LIST ((yyvsp[(5) - (10)].word_list), WORD_LIST *), (yyvsp[(9) - (10)].command), word_lineno[word_top]);
-***************
-*** 2848,2852 ****
-
- case 93:
-! #line 881 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- (yyval.command) = make_case_command ((yyvsp[(2) - (6)].word), (PATTERN_LIST *)NULL, word_lineno[word_top]);
---- 2848,2852 ----
-
- case 93:
-! #line 881 "/usr/src/local/bash/bash-4.3-patched/parse.y"
- {
- (yyval.command) = make_case_command ((yyvsp[(2) - (6)].word), (PATTERN_LIST *)NULL, word_lineno[word_top]);
-***************
-*** 2856,2860 ****
-
- case 94:
-! #line 886 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- (yyval.command) = make_case_command ((yyvsp[(2) - (7)].word), (yyvsp[(5) - (7)].pattern), word_lineno[word_top]);
---- 2856,2860 ----
-
- case 94:
-! #line 886 "/usr/src/local/bash/bash-4.3-patched/parse.y"
- {
- (yyval.command) = make_case_command ((yyvsp[(2) - (7)].word), (yyvsp[(5) - (7)].pattern), word_lineno[word_top]);
-***************
-*** 2864,2868 ****
-
- case 95:
-! #line 891 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- (yyval.command) = make_case_command ((yyvsp[(2) - (6)].word), (yyvsp[(5) - (6)].pattern), word_lineno[word_top]);
---- 2864,2868 ----
-
- case 95:
-! #line 891 "/usr/src/local/bash/bash-4.3-patched/parse.y"
- {
- (yyval.command) = make_case_command ((yyvsp[(2) - (6)].word), (yyvsp[(5) - (6)].pattern), word_lineno[word_top]);
-***************
-*** 2872,2896 ****
-
- case 96:
-! #line 898 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- { (yyval.command) = make_function_def ((yyvsp[(1) - (5)].word), (yyvsp[(5) - (5)].command), function_dstart, function_bstart); }
- break;
-
- case 97:
-! #line 901 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- { (yyval.command) = make_function_def ((yyvsp[(2) - (6)].word), (yyvsp[(6) - (6)].command), function_dstart, function_bstart); }
- break;
-
- case 98:
-! #line 904 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- { (yyval.command) = make_function_def ((yyvsp[(2) - (4)].word), (yyvsp[(4) - (4)].command), function_dstart, function_bstart); }
- break;
-
- case 99:
-! #line 908 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- { (yyval.command) = (yyvsp[(1) - (1)].command); }
- break;
-
- case 100:
-! #line 910 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- COMMAND *tc;
---- 2872,2896 ----
-
- case 96:
-! #line 898 "/usr/src/local/bash/bash-4.3-patched/parse.y"
- { (yyval.command) = make_function_def ((yyvsp[(1) - (5)].word), (yyvsp[(5) - (5)].command), function_dstart, function_bstart); }
- break;
-
- case 97:
-! #line 901 "/usr/src/local/bash/bash-4.3-patched/parse.y"
- { (yyval.command) = make_function_def ((yyvsp[(2) - (6)].word), (yyvsp[(6) - (6)].command), function_dstart, function_bstart); }
- break;
-
- case 98:
-! #line 904 "/usr/src/local/bash/bash-4.3-patched/parse.y"
- { (yyval.command) = make_function_def ((yyvsp[(2) - (4)].word), (yyvsp[(4) - (4)].command), function_dstart, function_bstart); }
- break;
-
- case 99:
-! #line 908 "/usr/src/local/bash/bash-4.3-patched/parse.y"
- { (yyval.command) = (yyvsp[(1) - (1)].command); }
- break;
-
- case 100:
-! #line 910 "/usr/src/local/bash/bash-4.3-patched/parse.y"
- {
- COMMAND *tc;
-***************
-*** 2924,2928 ****
-
- case 101:
-! #line 941 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- (yyval.command) = make_subshell_command ((yyvsp[(2) - (3)].command));
---- 2924,2928 ----
-
- case 101:
-! #line 941 "/usr/src/local/bash/bash-4.3-patched/parse.y"
- {
- (yyval.command) = make_subshell_command ((yyvsp[(2) - (3)].command));
-***************
-*** 2932,2936 ****
-
- case 102:
-! #line 948 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- (yyval.command) = make_coproc_command ("COPROC", (yyvsp[(2) - (2)].command));
---- 2932,2936 ----
-
- case 102:
-! #line 948 "/usr/src/local/bash/bash-4.3-patched/parse.y"
- {
- (yyval.command) = make_coproc_command ("COPROC", (yyvsp[(2) - (2)].command));
-***************
-*** 2940,2944 ****
-
- case 103:
-! #line 953 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- COMMAND *tc;
---- 2940,2944 ----
-
- case 103:
-! #line 953 "/usr/src/local/bash/bash-4.3-patched/parse.y"
- {
- COMMAND *tc;
-***************
-*** 2960,2964 ****
-
- case 104:
-! #line 970 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- (yyval.command) = make_coproc_command ((yyvsp[(2) - (3)].word)->word, (yyvsp[(3) - (3)].command));
---- 2960,2964 ----
-
- case 104:
-! #line 970 "/usr/src/local/bash/bash-4.3-patched/parse.y"
- {
- (yyval.command) = make_coproc_command ((yyvsp[(2) - (3)].word)->word, (yyvsp[(3) - (3)].command));
-***************
-*** 2968,2972 ****
-
- case 105:
-! #line 975 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- COMMAND *tc;
---- 2968,2972 ----
-
- case 105:
-! #line 975 "/usr/src/local/bash/bash-4.3-patched/parse.y"
- {
- COMMAND *tc;
-***************
-*** 2988,2992 ****
-
- case 106:
-! #line 992 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- (yyval.command) = make_coproc_command ("COPROC", clean_simple_command ((yyvsp[(2) - (2)].command)));
---- 2988,2992 ----
-
- case 106:
-! #line 992 "/usr/src/local/bash/bash-4.3-patched/parse.y"
- {
- (yyval.command) = make_coproc_command ("COPROC", clean_simple_command ((yyvsp[(2) - (2)].command)));
-***************
-*** 2996,3110 ****
-
- case 107:
-! #line 999 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- { (yyval.command) = make_if_command ((yyvsp[(2) - (5)].command), (yyvsp[(4) - (5)].command), (COMMAND *)NULL); }
- break;
-
- case 108:
-! #line 1001 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- { (yyval.command) = make_if_command ((yyvsp[(2) - (7)].command), (yyvsp[(4) - (7)].command), (yyvsp[(6) - (7)].command)); }
- break;
-
- case 109:
-! #line 1003 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- { (yyval.command) = make_if_command ((yyvsp[(2) - (6)].command), (yyvsp[(4) - (6)].command), (yyvsp[(5) - (6)].command)); }
- break;
-
- case 110:
-! #line 1008 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- { (yyval.command) = make_group_command ((yyvsp[(2) - (3)].command)); }
- break;
-
- case 111:
-! #line 1012 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- { (yyval.command) = make_arith_command ((yyvsp[(1) - (1)].word_list)); }
- break;
-
- case 112:
-! #line 1016 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- { (yyval.command) = (yyvsp[(2) - (3)].command); }
- break;
-
- case 113:
-! #line 1020 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- { (yyval.command) = make_if_command ((yyvsp[(2) - (4)].command), (yyvsp[(4) - (4)].command), (COMMAND *)NULL); }
- break;
-
- case 114:
-! #line 1022 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- { (yyval.command) = make_if_command ((yyvsp[(2) - (6)].command), (yyvsp[(4) - (6)].command), (yyvsp[(6) - (6)].command)); }
- break;
-
- case 115:
-! #line 1024 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- { (yyval.command) = make_if_command ((yyvsp[(2) - (5)].command), (yyvsp[(4) - (5)].command), (yyvsp[(5) - (5)].command)); }
- break;
-
- case 117:
-! #line 1029 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- { (yyvsp[(2) - (2)].pattern)->next = (yyvsp[(1) - (2)].pattern); (yyval.pattern) = (yyvsp[(2) - (2)].pattern); }
- break;
-
- case 118:
-! #line 1033 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- { (yyval.pattern) = make_pattern_list ((yyvsp[(2) - (4)].word_list), (yyvsp[(4) - (4)].command)); }
- break;
-
- case 119:
-! #line 1035 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- { (yyval.pattern) = make_pattern_list ((yyvsp[(2) - (4)].word_list), (COMMAND *)NULL); }
- break;
-
- case 120:
-! #line 1037 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- { (yyval.pattern) = make_pattern_list ((yyvsp[(3) - (5)].word_list), (yyvsp[(5) - (5)].command)); }
- break;
-
- case 121:
-! #line 1039 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- { (yyval.pattern) = make_pattern_list ((yyvsp[(3) - (5)].word_list), (COMMAND *)NULL); }
- break;
-
- case 122:
-! #line 1043 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- { (yyval.pattern) = (yyvsp[(1) - (2)].pattern); }
- break;
-
- case 123:
-! #line 1045 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- { (yyvsp[(2) - (3)].pattern)->next = (yyvsp[(1) - (3)].pattern); (yyval.pattern) = (yyvsp[(2) - (3)].pattern); }
- break;
-
- case 124:
-! #line 1047 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- { (yyvsp[(1) - (2)].pattern)->flags |= CASEPAT_FALLTHROUGH; (yyval.pattern) = (yyvsp[(1) - (2)].pattern); }
- break;
-
- case 125:
-! #line 1049 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- { (yyvsp[(2) - (3)].pattern)->flags |= CASEPAT_FALLTHROUGH; (yyvsp[(2) - (3)].pattern)->next = (yyvsp[(1) - (3)].pattern); (yyval.pattern) = (yyvsp[(2) - (3)].pattern); }
- break;
-
- case 126:
-! #line 1051 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- { (yyvsp[(1) - (2)].pattern)->flags |= CASEPAT_TESTNEXT; (yyval.pattern) = (yyvsp[(1) - (2)].pattern); }
- break;
-
- case 127:
-! #line 1053 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- { (yyvsp[(2) - (3)].pattern)->flags |= CASEPAT_TESTNEXT; (yyvsp[(2) - (3)].pattern)->next = (yyvsp[(1) - (3)].pattern); (yyval.pattern) = (yyvsp[(2) - (3)].pattern); }
- break;
-
- case 128:
-! #line 1057 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- { (yyval.word_list) = make_word_list ((yyvsp[(1) - (1)].word), (WORD_LIST *)NULL); }
- break;
-
- case 129:
-! #line 1059 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- { (yyval.word_list) = make_word_list ((yyvsp[(3) - (3)].word), (yyvsp[(1) - (3)].word_list)); }
- break;
-
- case 130:
-! #line 1068 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- (yyval.command) = (yyvsp[(2) - (2)].command);
---- 2996,3110 ----
-
- case 107:
-! #line 999 "/usr/src/local/bash/bash-4.3-patched/parse.y"
- { (yyval.command) = make_if_command ((yyvsp[(2) - (5)].command), (yyvsp[(4) - (5)].command), (COMMAND *)NULL); }
- break;
-
- case 108:
-! #line 1001 "/usr/src/local/bash/bash-4.3-patched/parse.y"
- { (yyval.command) = make_if_command ((yyvsp[(2) - (7)].command), (yyvsp[(4) - (7)].command), (yyvsp[(6) - (7)].command)); }
- break;
-
- case 109:
-! #line 1003 "/usr/src/local/bash/bash-4.3-patched/parse.y"
- { (yyval.command) = make_if_command ((yyvsp[(2) - (6)].command), (yyvsp[(4) - (6)].command), (yyvsp[(5) - (6)].command)); }
- break;
-
- case 110:
-! #line 1008 "/usr/src/local/bash/bash-4.3-patched/parse.y"
- { (yyval.command) = make_group_command ((yyvsp[(2) - (3)].command)); }
- break;
-
- case 111:
-! #line 1012 "/usr/src/local/bash/bash-4.3-patched/parse.y"
- { (yyval.command) = make_arith_command ((yyvsp[(1) - (1)].word_list)); }
- break;
-
- case 112:
-! #line 1016 "/usr/src/local/bash/bash-4.3-patched/parse.y"
- { (yyval.command) = (yyvsp[(2) - (3)].command); }
- break;
-
- case 113:
-! #line 1020 "/usr/src/local/bash/bash-4.3-patched/parse.y"
- { (yyval.command) = make_if_command ((yyvsp[(2) - (4)].command), (yyvsp[(4) - (4)].command), (COMMAND *)NULL); }
- break;
-
- case 114:
-! #line 1022 "/usr/src/local/bash/bash-4.3-patched/parse.y"
- { (yyval.command) = make_if_command ((yyvsp[(2) - (6)].command), (yyvsp[(4) - (6)].command), (yyvsp[(6) - (6)].command)); }
- break;
-
- case 115:
-! #line 1024 "/usr/src/local/bash/bash-4.3-patched/parse.y"
- { (yyval.command) = make_if_command ((yyvsp[(2) - (5)].command), (yyvsp[(4) - (5)].command), (yyvsp[(5) - (5)].command)); }
- break;
-
- case 117:
-! #line 1029 "/usr/src/local/bash/bash-4.3-patched/parse.y"
- { (yyvsp[(2) - (2)].pattern)->next = (yyvsp[(1) - (2)].pattern); (yyval.pattern) = (yyvsp[(2) - (2)].pattern); }
- break;
-
- case 118:
-! #line 1033 "/usr/src/local/bash/bash-4.3-patched/parse.y"
- { (yyval.pattern) = make_pattern_list ((yyvsp[(2) - (4)].word_list), (yyvsp[(4) - (4)].command)); }
- break;
-
- case 119:
-! #line 1035 "/usr/src/local/bash/bash-4.3-patched/parse.y"
- { (yyval.pattern) = make_pattern_list ((yyvsp[(2) - (4)].word_list), (COMMAND *)NULL); }
- break;
-
- case 120:
-! #line 1037 "/usr/src/local/bash/bash-4.3-patched/parse.y"
- { (yyval.pattern) = make_pattern_list ((yyvsp[(3) - (5)].word_list), (yyvsp[(5) - (5)].command)); }
- break;
-
- case 121:
-! #line 1039 "/usr/src/local/bash/bash-4.3-patched/parse.y"
- { (yyval.pattern) = make_pattern_list ((yyvsp[(3) - (5)].word_list), (COMMAND *)NULL); }
- break;
-
- case 122:
-! #line 1043 "/usr/src/local/bash/bash-4.3-patched/parse.y"
- { (yyval.pattern) = (yyvsp[(1) - (2)].pattern); }
- break;
-
- case 123:
-! #line 1045 "/usr/src/local/bash/bash-4.3-patched/parse.y"
- { (yyvsp[(2) - (3)].pattern)->next = (yyvsp[(1) - (3)].pattern); (yyval.pattern) = (yyvsp[(2) - (3)].pattern); }
- break;
-
- case 124:
-! #line 1047 "/usr/src/local/bash/bash-4.3-patched/parse.y"
- { (yyvsp[(1) - (2)].pattern)->flags |= CASEPAT_FALLTHROUGH; (yyval.pattern) = (yyvsp[(1) - (2)].pattern); }
- break;
-
- case 125:
-! #line 1049 "/usr/src/local/bash/bash-4.3-patched/parse.y"
- { (yyvsp[(2) - (3)].pattern)->flags |= CASEPAT_FALLTHROUGH; (yyvsp[(2) - (3)].pattern)->next = (yyvsp[(1) - (3)].pattern); (yyval.pattern) = (yyvsp[(2) - (3)].pattern); }
- break;
-
- case 126:
-! #line 1051 "/usr/src/local/bash/bash-4.3-patched/parse.y"
- { (yyvsp[(1) - (2)].pattern)->flags |= CASEPAT_TESTNEXT; (yyval.pattern) = (yyvsp[(1) - (2)].pattern); }
- break;
-
- case 127:
-! #line 1053 "/usr/src/local/bash/bash-4.3-patched/parse.y"
- { (yyvsp[(2) - (3)].pattern)->flags |= CASEPAT_TESTNEXT; (yyvsp[(2) - (3)].pattern)->next = (yyvsp[(1) - (3)].pattern); (yyval.pattern) = (yyvsp[(2) - (3)].pattern); }
- break;
-
- case 128:
-! #line 1057 "/usr/src/local/bash/bash-4.3-patched/parse.y"
- { (yyval.word_list) = make_word_list ((yyvsp[(1) - (1)].word), (WORD_LIST *)NULL); }
- break;
-
- case 129:
-! #line 1059 "/usr/src/local/bash/bash-4.3-patched/parse.y"
- { (yyval.word_list) = make_word_list ((yyvsp[(3) - (3)].word), (yyvsp[(1) - (3)].word_list)); }
- break;
-
- case 130:
-! #line 1068 "/usr/src/local/bash/bash-4.3-patched/parse.y"
- {
- (yyval.command) = (yyvsp[(2) - (2)].command);
-***************
-*** 3115,3119 ****
-
- case 132:
-! #line 1077 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- (yyval.command) = (yyvsp[(2) - (2)].command);
---- 3115,3119 ----
-
- case 132:
-! #line 1077 "/usr/src/local/bash/bash-4.3-patched/parse.y"
- {
- (yyval.command) = (yyvsp[(2) - (2)].command);
-***************
-*** 3122,3126 ****
-
- case 134:
-! #line 1084 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- if ((yyvsp[(1) - (3)].command)->type == cm_connection)
---- 3122,3126 ----
-
- case 134:
-! #line 1084 "/usr/src/local/bash/bash-4.3-patched/parse.y"
- {
- if ((yyvsp[(1) - (3)].command)->type == cm_connection)
-***************
-*** 3132,3146 ****
-
- case 136:
-! #line 1095 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- { (yyval.command) = command_connect ((yyvsp[(1) - (4)].command), (yyvsp[(4) - (4)].command), AND_AND); }
- break;
-
- case 137:
-! #line 1097 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- { (yyval.command) = command_connect ((yyvsp[(1) - (4)].command), (yyvsp[(4) - (4)].command), OR_OR); }
- break;
-
- case 138:
-! #line 1099 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- if ((yyvsp[(1) - (4)].command)->type == cm_connection)
---- 3132,3146 ----
-
- case 136:
-! #line 1095 "/usr/src/local/bash/bash-4.3-patched/parse.y"
- { (yyval.command) = command_connect ((yyvsp[(1) - (4)].command), (yyvsp[(4) - (4)].command), AND_AND); }
- break;
-
- case 137:
-! #line 1097 "/usr/src/local/bash/bash-4.3-patched/parse.y"
- { (yyval.command) = command_connect ((yyvsp[(1) - (4)].command), (yyvsp[(4) - (4)].command), OR_OR); }
- break;
-
- case 138:
-! #line 1099 "/usr/src/local/bash/bash-4.3-patched/parse.y"
- {
- if ((yyvsp[(1) - (4)].command)->type == cm_connection)
-***************
-*** 3152,3186 ****
-
- case 139:
-! #line 1106 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- { (yyval.command) = command_connect ((yyvsp[(1) - (4)].command), (yyvsp[(4) - (4)].command), ';'); }
- break;
-
- case 140:
-! #line 1108 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- { (yyval.command) = command_connect ((yyvsp[(1) - (4)].command), (yyvsp[(4) - (4)].command), ';'); }
- break;
-
- case 141:
-! #line 1110 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- { (yyval.command) = (yyvsp[(1) - (1)].command); }
- break;
-
- case 144:
-! #line 1118 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- { (yyval.number) = '\n'; }
- break;
-
- case 145:
-! #line 1120 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- { (yyval.number) = ';'; }
- break;
-
- case 146:
-! #line 1122 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- { (yyval.number) = yacc_EOF; }
- break;
-
- case 149:
-! #line 1136 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- (yyval.command) = (yyvsp[(1) - (1)].command);
---- 3152,3186 ----
-
- case 139:
-! #line 1106 "/usr/src/local/bash/bash-4.3-patched/parse.y"
- { (yyval.command) = command_connect ((yyvsp[(1) - (4)].command), (yyvsp[(4) - (4)].command), ';'); }
- break;
-
- case 140:
-! #line 1108 "/usr/src/local/bash/bash-4.3-patched/parse.y"
- { (yyval.command) = command_connect ((yyvsp[(1) - (4)].command), (yyvsp[(4) - (4)].command), ';'); }
- break;
-
- case 141:
-! #line 1110 "/usr/src/local/bash/bash-4.3-patched/parse.y"
- { (yyval.command) = (yyvsp[(1) - (1)].command); }
- break;
-
- case 144:
-! #line 1118 "/usr/src/local/bash/bash-4.3-patched/parse.y"
- { (yyval.number) = '\n'; }
- break;
-
- case 145:
-! #line 1120 "/usr/src/local/bash/bash-4.3-patched/parse.y"
- { (yyval.number) = ';'; }
- break;
-
- case 146:
-! #line 1122 "/usr/src/local/bash/bash-4.3-patched/parse.y"
- { (yyval.number) = yacc_EOF; }
- break;
-
- case 149:
-! #line 1136 "/usr/src/local/bash/bash-4.3-patched/parse.y"
- {
- (yyval.command) = (yyvsp[(1) - (1)].command);
-***************
-*** 3198,3202 ****
-
- case 150:
-! #line 1149 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- if ((yyvsp[(1) - (2)].command)->type == cm_connection)
---- 3198,3202 ----
-
- case 150:
-! #line 1149 "/usr/src/local/bash/bash-4.3-patched/parse.y"
- {
- if ((yyvsp[(1) - (2)].command)->type == cm_connection)
-***************
-*** 3217,3221 ****
-
- case 151:
-! #line 1165 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- (yyval.command) = (yyvsp[(1) - (2)].command);
---- 3217,3221 ----
-
- case 151:
-! #line 1165 "/usr/src/local/bash/bash-4.3-patched/parse.y"
- {
- (yyval.command) = (yyvsp[(1) - (2)].command);
-***************
-*** 3233,3247 ****
-
- case 152:
-! #line 1180 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- { (yyval.command) = command_connect ((yyvsp[(1) - (4)].command), (yyvsp[(4) - (4)].command), AND_AND); }
- break;
-
- case 153:
-! #line 1182 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- { (yyval.command) = command_connect ((yyvsp[(1) - (4)].command), (yyvsp[(4) - (4)].command), OR_OR); }
- break;
-
- case 154:
-! #line 1184 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- if ((yyvsp[(1) - (3)].command)->type == cm_connection)
---- 3233,3247 ----
-
- case 152:
-! #line 1180 "/usr/src/local/bash/bash-4.3-patched/parse.y"
- { (yyval.command) = command_connect ((yyvsp[(1) - (4)].command), (yyvsp[(4) - (4)].command), AND_AND); }
- break;
-
- case 153:
-! #line 1182 "/usr/src/local/bash/bash-4.3-patched/parse.y"
- { (yyval.command) = command_connect ((yyvsp[(1) - (4)].command), (yyvsp[(4) - (4)].command), OR_OR); }
- break;
-
- case 154:
-! #line 1184 "/usr/src/local/bash/bash-4.3-patched/parse.y"
- {
- if ((yyvsp[(1) - (3)].command)->type == cm_connection)
-***************
-*** 3253,3272 ****
-
- case 155:
-! #line 1191 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- { (yyval.command) = command_connect ((yyvsp[(1) - (3)].command), (yyvsp[(3) - (3)].command), ';'); }
- break;
-
- case 156:
-! #line 1194 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- { (yyval.command) = (yyvsp[(1) - (1)].command); }
- break;
-
- case 157:
-! #line 1198 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- { (yyval.command) = (yyvsp[(1) - (1)].command); }
- break;
-
- case 158:
-! #line 1200 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- if ((yyvsp[(2) - (2)].command))
---- 3253,3272 ----
-
- case 155:
-! #line 1191 "/usr/src/local/bash/bash-4.3-patched/parse.y"
- { (yyval.command) = command_connect ((yyvsp[(1) - (3)].command), (yyvsp[(3) - (3)].command), ';'); }
- break;
-
- case 156:
-! #line 1194 "/usr/src/local/bash/bash-4.3-patched/parse.y"
- { (yyval.command) = (yyvsp[(1) - (1)].command); }
- break;
-
- case 157:
-! #line 1198 "/usr/src/local/bash/bash-4.3-patched/parse.y"
- { (yyval.command) = (yyvsp[(1) - (1)].command); }
- break;
-
- case 158:
-! #line 1200 "/usr/src/local/bash/bash-4.3-patched/parse.y"
- {
- if ((yyvsp[(2) - (2)].command))
-***************
-*** 3277,3281 ****
-
- case 159:
-! #line 1206 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- if ((yyvsp[(2) - (2)].command))
---- 3277,3281 ----
-
- case 159:
-! #line 1206 "/usr/src/local/bash/bash-4.3-patched/parse.y"
- {
- if ((yyvsp[(2) - (2)].command))
-***************
-*** 3286,3290 ****
-
- case 160:
-! #line 1212 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- ELEMENT x;
---- 3286,3290 ----
-
- case 160:
-! #line 1212 "/usr/src/local/bash/bash-4.3-patched/parse.y"
- {
- ELEMENT x;
-***************
-*** 3306,3310 ****
-
- case 161:
-! #line 1229 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- ELEMENT x;
---- 3306,3310 ----
-
- case 161:
-! #line 1229 "/usr/src/local/bash/bash-4.3-patched/parse.y"
- {
- ELEMENT x;
-***************
-*** 3327,3336 ****
-
- case 162:
-! #line 1249 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- { (yyval.command) = command_connect ((yyvsp[(1) - (4)].command), (yyvsp[(4) - (4)].command), '|'); }
- break;
-
- case 163:
-! #line 1251 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- {
- /* Make cmd1 |& cmd2 equivalent to cmd1 2>&1 | cmd2 */
---- 3327,3336 ----
-
- case 162:
-! #line 1249 "/usr/src/local/bash/bash-4.3-patched/parse.y"
- { (yyval.command) = command_connect ((yyvsp[(1) - (4)].command), (yyvsp[(4) - (4)].command), '|'); }
- break;
-
- case 163:
-! #line 1251 "/usr/src/local/bash/bash-4.3-patched/parse.y"
- {
- /* Make cmd1 |& cmd2 equivalent to cmd1 2>&1 | cmd2 */
-***************
-*** 3358,3377 ****
-
- case 164:
-! #line 1274 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- { (yyval.command) = (yyvsp[(1) - (1)].command); }
- break;
-
- case 165:
-! #line 1278 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- { (yyval.number) = CMD_TIME_PIPELINE; }
- break;
-
- case 166:
-! #line 1280 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- { (yyval.number) = CMD_TIME_PIPELINE|CMD_TIME_POSIX; }
- break;
-
- case 167:
-! #line 1282 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
- { (yyval.number) = CMD_TIME_PIPELINE|CMD_TIME_POSIX; }
- break;
---- 3358,3377 ----
-
- case 164:
-! #line 1274 "/usr/src/local/bash/bash-4.3-patched/parse.y"
- { (yyval.command) = (yyvsp[(1) - (1)].command); }
- break;
-
- case 165:
-! #line 1278 "/usr/src/local/bash/bash-4.3-patched/parse.y"
- { (yyval.number) = CMD_TIME_PIPELINE; }
- break;
-
- case 166:
-! #line 1280 "/usr/src/local/bash/bash-4.3-patched/parse.y"
- { (yyval.number) = CMD_TIME_PIPELINE|CMD_TIME_POSIX; }
- break;
-
- case 167:
-! #line 1282 "/usr/src/local/bash/bash-4.3-patched/parse.y"
- { (yyval.number) = CMD_TIME_PIPELINE|CMD_TIME_POSIX; }
- break;
-***************
-*** 3593,3597 ****
-
-
-! #line 1284 "/usr/src/local/chet/src/bash/bash-4.3.28/parse.y"
-
-
---- 3593,3597 ----
-
-
-! #line 1284 "/usr/src/local/bash/bash-4.3-patched/parse.y"
-
-
-***************
-*** 4851,4854 ****
---- 4851,4864 ----
- }
-
-+ char *
-+ parser_remaining_input ()
-+ {
-+ if (shell_input_line == 0)
-+ return 0;
-+ if (shell_input_line_index < 0 || shell_input_line_index >= shell_input_line_len)
-+ return '\0'; /* XXX */
-+ return (shell_input_line + shell_input_line_index);
-+ }
-+
- #ifdef INCLUDE_UNUSED
- /* Back the input pointer up by one, effectively `ungetting' a character. */
-***************
-*** 6340,6345 ****
- /* reset_parser clears shell_input_line and associated variables */
- restore_input_line_state (&ls);
-! if (interactive)
-! token_to_read = 0;
-
- /* Need to find how many characters parse_and_execute consumed, update
---- 6350,6355 ----
- /* reset_parser clears shell_input_line and associated variables */
- restore_input_line_state (&ls);
-!
-! token_to_read = 0;
-
- /* Need to find how many characters parse_and_execute consumed, update
-*** ../bash-4.3/patchlevel.h 2012-12-29 10:47:57.000000000 -0500
---- patchlevel.h 2014-03-20 20:01:28.000000000 -0400
-***************
-*** 26,30 ****
- looks for to find the patch level (for the sccs version string). */
-
-! #define PATCHLEVEL 29
-
- #endif /* _PATCHLEVEL_H_ */
---- 26,30 ----
- looks for to find the patch level (for the sccs version string). */
-
-! #define PATCHLEVEL 30
-
- #endif /* _PATCHLEVEL_H_ */
--- /dev/null
+ BASH PATCH REPORT
+ =================
+
+Bash-Release: 5.0
+Patch-ID: bash50-001
+
+Bug-Reported-by: axel@freakout.de
+Bug-Reference-ID: <201901082050.x08KoShS006731@bongo.freakout.de>
+Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2019-01/msg00079.html
+
+Bug-Description:
+
+Under certain circumstances, the glob expansion code did not remove
+backslashes escaping characters in directory names (or portions of a
+pattern preceding a slash).
+
+Patch (apply with `patch -p0'):
+
+*** ../bash-5.0/bashline.c 2018-11-27 13:20:16.000000000 -0500
+--- bashline.c 2019-01-16 16:06:03.000000000 -0500
+***************
+*** 232,235 ****
+--- 232,236 ----
+ static int bash_possible_command_completions __P((int, int));
+
++ static int completion_glob_pattern __P((char *));
+ static char *glob_complete_word __P((const char *, int));
+ static int bash_glob_completion_internal __P((int));
+***************
+*** 1742,1746 ****
+ /* This could be a globbing pattern, so try to expand it using pathname
+ expansion. */
+! if (!matches && glob_pattern_p (text))
+ {
+ matches = rl_completion_matches (text, glob_complete_word);
+--- 1743,1747 ----
+ /* This could be a globbing pattern, so try to expand it using pathname
+ expansion. */
+! if (!matches && completion_glob_pattern ((char *)text))
+ {
+ matches = rl_completion_matches (text, glob_complete_word);
+***************
+*** 1851,1855 ****
+ }
+
+! globpat = glob_pattern_p (hint_text);
+
+ /* If this is an absolute program name, do not check it against
+--- 1852,1856 ----
+ }
+
+! globpat = completion_glob_pattern ((char *)hint_text);
+
+ /* If this is an absolute program name, do not check it against
+***************
+*** 3714,3717 ****
+--- 3715,3773 ----
+ }
+
++ static int
++ completion_glob_pattern (string)
++ char *string;
++ {
++ register int c;
++ char *send;
++ int open;
++
++ DECLARE_MBSTATE;
++
++ open = 0;
++ send = string + strlen (string);
++
++ while (c = *string++)
++ {
++ switch (c)
++ {
++ case '?':
++ case '*':
++ return (1);
++
++ case '[':
++ open++;
++ continue;
++
++ case ']':
++ if (open)
++ return (1);
++ continue;
++
++ case '+':
++ case '@':
++ case '!':
++ if (*string == '(') /*)*/
++ return (1);
++ continue;
++
++ case '\\':
++ if (*string == 0)
++ return (0);
++ }
++
++ /* Advance one fewer byte than an entire multibyte character to
++ account for the auto-increment in the loop above. */
++ #ifdef HANDLE_MULTIBYTE
++ string--;
++ ADVANCE_CHAR_P (string, send - string);
++ string++;
++ #else
++ ADVANCE_CHAR_P (string, send - string);
++ #endif
++ }
++ return (0);
++ }
++
+ static char *globtext;
+ static char *globorig;
+***************
+*** 3878,3882 ****
+ }
+
+! if (t && glob_pattern_p (t) == 0)
+ rl_explicit_arg = 1; /* XXX - force glob_complete_word to append `*' */
+ FREE (t);
+--- 3934,3938 ----
+ }
+
+! if (t && completion_glob_pattern (t) == 0)
+ rl_explicit_arg = 1; /* XXX - force glob_complete_word to append `*' */
+ FREE (t);
+*** ../bash-5.0/lib/glob/glob_loop.c 2018-12-31 13:35:15.000000000 -0500
+--- lib/glob/glob_loop.c 2019-01-09 09:44:36.000000000 -0500
+***************
+*** 55,59 ****
+
+ case L('\\'):
+- #if 0
+ /* Don't let the pattern end in a backslash (GMATCH returns no match
+ if the pattern ends in a backslash anyway), but otherwise return 1,
+--- 55,58 ----
+***************
+*** 61,69 ****
+ and it can be removed. */
+ return (*p != L('\0'));
+- #else
+- /* The pattern may not end with a backslash. */
+- if (*p++ == L('\0'))
+- return 0;
+- #endif
+ }
+
+--- 60,63 ----
+*** ../bash-5.0/patchlevel.h 2016-06-22 14:51:03.000000000 -0400
+--- patchlevel.h 2016-10-01 11:01:28.000000000 -0400
+***************
+*** 26,30 ****
+ looks for to find the patch level (for the sccs version string). */
+
+! #define PATCHLEVEL 0
+
+ #endif /* _PATCHLEVEL_H_ */
+--- 26,30 ----
+ looks for to find the patch level (for the sccs version string). */
+
+! #define PATCHLEVEL 1
+
+ #endif /* _PATCHLEVEL_H_ */
--- /dev/null
+ BASH PATCH REPORT
+ =================
+
+Bash-Release: 5.0
+Patch-ID: bash50-002
+
+Bug-Reported-by: Ante Peric <synthmeat@gmail.com>
+Bug-Reference-ID: <B7E3B567-2467-4F7B-B6B9-CA4E75A9C93F@gmail.com>
+Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2019-01/msg00095.html
+
+Bug-Description:
+
+When an alias value ends with an unquoted literal tab (not part of a quoted
+string or comment), alias expansion cannot correctly detect the end of the
+alias value after expanding it.
+
+Patch (apply with `patch -p0'):
+
+*** ../bash-5.0/parser.h 2018-12-28 19:11:18.000000000 -0500
+--- parser.h 2019-01-11 15:13:03.000000000 -0500
+***************
+*** 48,51 ****
+--- 48,52 ----
+ #define PST_REDIRLIST 0x080000 /* parsing a list of redirections preceding a simple command name */
+ #define PST_COMMENT 0x100000 /* parsing a shell comment; used by aliases */
++ #define PST_ENDALIAS 0x200000 /* just finished expanding and consuming an alias */
+
+ /* Definition of the delimiter stack. Needed by parse.y and bashhist.c. */
+*** ../bash-5.0/parse.y 2019-01-02 13:57:34.000000000 -0500
+--- parse.y 2019-01-14 08:23:31.000000000 -0500
+***************
+*** 2558,2567 ****
+ pushed_string_list->flags != PSH_DPAREN &&
+ (parser_state & PST_COMMENT) == 0 &&
+ shell_input_line_index > 0 &&
+! shell_input_line[shell_input_line_index-1] != ' ' &&
+ shell_input_line[shell_input_line_index-1] != '\n' &&
+ shellmeta (shell_input_line[shell_input_line_index-1]) == 0 &&
+ (current_delimiter (dstack) != '\'' && current_delimiter (dstack) != '"'))
+ {
+ return ' '; /* END_ALIAS */
+ }
+--- 2558,2569 ----
+ pushed_string_list->flags != PSH_DPAREN &&
+ (parser_state & PST_COMMENT) == 0 &&
++ (parser_state & PST_ENDALIAS) == 0 && /* only once */
+ shell_input_line_index > 0 &&
+! shellblank (shell_input_line[shell_input_line_index-1]) == 0 &&
+ shell_input_line[shell_input_line_index-1] != '\n' &&
+ shellmeta (shell_input_line[shell_input_line_index-1]) == 0 &&
+ (current_delimiter (dstack) != '\'' && current_delimiter (dstack) != '"'))
+ {
++ parser_state |= PST_ENDALIAS;
+ return ' '; /* END_ALIAS */
+ }
+***************
+*** 2572,2575 ****
+--- 2574,2578 ----
+ if (uc == 0 && pushed_string_list && pushed_string_list->flags != PSH_SOURCE)
+ {
++ parser_state &= ~PST_ENDALIAS;
+ pop_string ();
+ uc = shell_input_line[shell_input_line_index];
+*** ../bash-5.0/y.tab.c 2019-01-02 13:57:43.000000000 -0500
+--- y.tab.c 2019-01-14 08:39:23.000000000 -0500
+***************
+*** 4874,4883 ****
+ pushed_string_list->flags != PSH_DPAREN &&
+ (parser_state & PST_COMMENT) == 0 &&
+ shell_input_line_index > 0 &&
+! shell_input_line[shell_input_line_index-1] != ' ' &&
+ shell_input_line[shell_input_line_index-1] != '\n' &&
+ shellmeta (shell_input_line[shell_input_line_index-1]) == 0 &&
+ (current_delimiter (dstack) != '\'' && current_delimiter (dstack) != '"'))
+ {
+ return ' '; /* END_ALIAS */
+ }
+--- 4874,4885 ----
+ pushed_string_list->flags != PSH_DPAREN &&
+ (parser_state & PST_COMMENT) == 0 &&
++ (parser_state & PST_ENDALIAS) == 0 && /* only once */
+ shell_input_line_index > 0 &&
+! shellblank (shell_input_line[shell_input_line_index-1]) == 0 &&
+ shell_input_line[shell_input_line_index-1] != '\n' &&
+ shellmeta (shell_input_line[shell_input_line_index-1]) == 0 &&
+ (current_delimiter (dstack) != '\'' && current_delimiter (dstack) != '"'))
+ {
++ parser_state |= PST_ENDALIAS;
+ return ' '; /* END_ALIAS */
+ }
+***************
+*** 4888,4891 ****
+--- 4890,4894 ----
+ if (uc == 0 && pushed_string_list && pushed_string_list->flags != PSH_SOURCE)
+ {
++ parser_state &= ~PST_ENDALIAS;
+ pop_string ();
+ uc = shell_input_line[shell_input_line_index];
+*** ../bash-5.0/patchlevel.h 2016-06-22 14:51:03.000000000 -0400
+--- patchlevel.h 2016-10-01 11:01:28.000000000 -0400
+***************
+*** 26,30 ****
+ looks for to find the patch level (for the sccs version string). */
+
+! #define PATCHLEVEL 1
+
+ #endif /* _PATCHLEVEL_H_ */
+--- 26,30 ----
+ looks for to find the patch level (for the sccs version string). */
+
+! #define PATCHLEVEL 2
+
+ #endif /* _PATCHLEVEL_H_ */
--- /dev/null
+ BASH PATCH REPORT
+ =================
+
+Bash-Release: 5.0
+Patch-ID: bash50-003
+
+Bug-Reported-by: Andrew Church <achurch+bash@achurch.org>
+Bug-Reference-ID: <5c534aa2.04371@msgid.achurch.org>
+Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2019-01/msg00276.html
+
+Bug-Description:
+
+There are several incompatibilities in how bash-5.0 processes pathname
+expansion (globbing) of filename arguments that have backslashes in the
+directory portion.
+
+Patch (apply with `patch -p0'):
+
+*** ../bash-5.0-patched/lib/glob/glob_loop.c 2019-01-16 16:13:21.000000000 -0500
+--- lib/glob/glob_loop.c 2019-02-01 09:45:11.000000000 -0500
+***************
+*** 27,34 ****
+ register const GCHAR *p;
+ register GCHAR c;
+! int bopen;
+
+ p = pattern;
+! bopen = 0;
+
+ while ((c = *p++) != L('\0'))
+--- 27,34 ----
+ register const GCHAR *p;
+ register GCHAR c;
+! int bopen, bsquote;
+
+ p = pattern;
+! bopen = bsquote = 0;
+
+ while ((c = *p++) != L('\0'))
+***************
+*** 56,66 ****
+ case L('\\'):
+ /* Don't let the pattern end in a backslash (GMATCH returns no match
+! if the pattern ends in a backslash anyway), but otherwise return 1,
+! since the matching engine uses backslash as an escape character
+! and it can be removed. */
+! return (*p != L('\0'));
+ }
+
+! return 0;
+ }
+
+--- 56,75 ----
+ case L('\\'):
+ /* Don't let the pattern end in a backslash (GMATCH returns no match
+! if the pattern ends in a backslash anyway), but otherwise note that
+! we have seen this, since the matching engine uses backslash as an
+! escape character and it can be removed. We return 2 later if we
+! have seen only backslash-escaped characters, so interested callers
+! know they can shortcut and just dequote the pathname. */
+! if (*p != L('\0'))
+! {
+! p++;
+! bsquote = 1;
+! continue;
+! }
+! else /* (*p == L('\0')) */
+! return 0;
+ }
+
+! return bsquote ? 2 : 0;
+ }
+
+*** ../bash-5.0-patched/lib/glob/glob.h 2013-10-28 14:46:12.000000000 -0400
+--- lib/glob/glob.h 2019-03-07 11:06:47.000000000 -0500
+***************
+*** 31,34 ****
+--- 31,35 ----
+ #define GX_ADDCURDIR 0x200 /* internal -- add passed directory name */
+ #define GX_GLOBSTAR 0x400 /* turn on special handling of ** */
++ #define GX_RECURSE 0x800 /* internal -- glob_filename called recursively */
+
+ extern int glob_pattern_p __P((const char *));
+*** ../bash-5.0-patched/lib/glob/glob.c 2018-09-20 10:53:23.000000000 -0400
+--- lib/glob/glob.c 2019-03-07 14:23:43.000000000 -0500
+***************
+*** 1062,1066 ****
+ unsigned int directory_len;
+ int free_dirname; /* flag */
+! int dflags;
+
+ result = (char **) malloc (sizeof (char *));
+--- 1078,1082 ----
+ unsigned int directory_len;
+ int free_dirname; /* flag */
+! int dflags, hasglob;
+
+ result = (char **) malloc (sizeof (char *));
+***************
+*** 1111,1117 ****
+ }
+
+ /* If directory_name contains globbing characters, then we
+! have to expand the previous levels. Just recurse. */
+! if (directory_len > 0 && glob_pattern_p (directory_name))
+ {
+ char **directories, *d, *p;
+--- 1127,1136 ----
+ }
+
++ hasglob = 0;
+ /* If directory_name contains globbing characters, then we
+! have to expand the previous levels. Just recurse.
+! If glob_pattern_p returns != [0,1] we have a pattern that has backslash
+! quotes but no unquoted glob pattern characters. We dequote it below. */
+! if (directory_len > 0 && (hasglob = glob_pattern_p (directory_name)) == 1)
+ {
+ char **directories, *d, *p;
+***************
+*** 1176,1180 ****
+ d[directory_len - 1] = '\0';
+
+! directories = glob_filename (d, dflags);
+
+ if (free_dirname)
+--- 1195,1199 ----
+ d[directory_len - 1] = '\0';
+
+! directories = glob_filename (d, dflags|GX_RECURSE);
+
+ if (free_dirname)
+***************
+*** 1333,1336 ****
+--- 1352,1369 ----
+ return (NULL);
+ }
++ /* If we have a directory name with quoted characters, and we are
++ being called recursively to glob the directory portion of a pathname,
++ we need to dequote the directory name before returning it so the
++ caller can read the directory */
++ if (directory_len > 0 && hasglob == 2 && (flags & GX_RECURSE) != 0)
++ {
++ dequote_pathname (directory_name);
++ directory_len = strlen (directory_name);
++ }
++
++ /* We could check whether or not the dequoted directory_name is a
++ directory and return it here, returning the original directory_name
++ if not, but we don't do that yet. I'm not sure it matters. */
++
+ /* Handle GX_MARKDIRS here. */
+ result[0] = (char *) malloc (directory_len + 1);
+*** ../bash-5.0-patched/pathexp.c 2018-04-29 17:44:48.000000000 -0400
+--- pathexp.c 2019-01-31 20:19:41.000000000 -0500
+***************
+*** 66,74 ****
+ register int c;
+ char *send;
+! int open;
+
+ DECLARE_MBSTATE;
+
+! open = 0;
+ send = string + strlen (string);
+
+--- 66,74 ----
+ register int c;
+ char *send;
+! int open, bsquote;
+
+ DECLARE_MBSTATE;
+
+! open = bsquote = 0;
+ send = string + strlen (string);
+
+***************
+*** 101,105 ****
+ globbing. */
+ case '\\':
+! return (*string != 0);
+
+ case CTLESC:
+--- 101,112 ----
+ globbing. */
+ case '\\':
+! if (*string != '\0' && *string != '/')
+! {
+! bsquote = 1;
+! string++;
+! continue;
+! }
+! else if (*string == 0)
+! return (0);
+
+ case CTLESC:
+***************
+*** 118,122 ****
+ #endif
+ }
+! return (0);
+ }
+
+--- 125,130 ----
+ #endif
+ }
+!
+! return (bsquote ? 2 : 0);
+ }
+
+*** ../bash-5.0-patched/bashline.c 2019-01-16 16:13:21.000000000 -0500
+--- bashline.c 2019-02-22 09:29:08.000000000 -0500
+***************
+*** 3753,3757 ****
+
+ case '\\':
+! if (*string == 0)
+ return (0);
+ }
+--- 3766,3770 ----
+
+ case '\\':
+! if (*string++ == 0)
+ return (0);
+ }
+*** ../bash-5.0/patchlevel.h 2016-06-22 14:51:03.000000000 -0400
+--- patchlevel.h 2016-10-01 11:01:28.000000000 -0400
+***************
+*** 26,30 ****
+ looks for to find the patch level (for the sccs version string). */
+
+! #define PATCHLEVEL 2
+
+ #endif /* _PATCHLEVEL_H_ */
+--- 26,30 ----
+ looks for to find the patch level (for the sccs version string). */
+
+! #define PATCHLEVEL 3
+
+ #endif /* _PATCHLEVEL_H_ */
--- /dev/null
+ BASH PATCH REPORT
+ =================
+
+Bash-Release: 5.0
+Patch-ID: bash50-004
+
+Bug-Reported-by: Daniel Kahn Gillmor <dkg@fifthhorseman.net>
+Bug-Reference-ID: <87lg0g8aiw.fsf@fifthhorseman.net>
+Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2019-04/msg00076.html
+
+Bug-Description:
+
+In bash-5.0, the `wait' builtin without arguments waits for all children of the
+shell. This includes children it `inherited' at shell invocation time. This
+patch modifies the behavior to not wait for these inherited children, some
+of which might be long-lived.
+
+Patch (apply with `patch -p0'):
+
+*** ../bash-5.0-patched/jobs.c 2018-12-06 11:44:34.000000000 -0500
+--- jobs.c 2019-04-12 15:15:10.000000000 -0400
+***************
+*** 2489,2496 ****
+ wait_procsubs ();
+ reap_procsubs ();
+! #if 1
+ /* We don't want to wait indefinitely if we have stopped children. */
+- /* XXX - should add a loop that goes through the list of process
+- substitutions and waits for each proc in turn before this code. */
+ if (any_stopped == 0)
+ {
+--- 2490,2495 ----
+ wait_procsubs ();
+ reap_procsubs ();
+! #if 0
+ /* We don't want to wait indefinitely if we have stopped children. */
+ if (any_stopped == 0)
+ {
+*** ../bash-5.0/patchlevel.h 2016-06-22 14:51:03.000000000 -0400
+--- patchlevel.h 2016-10-01 11:01:28.000000000 -0400
+***************
+*** 26,30 ****
+ looks for to find the patch level (for the sccs version string). */
+
+! #define PATCHLEVEL 3
+
+ #endif /* _PATCHLEVEL_H_ */
+--- 26,30 ----
+ looks for to find the patch level (for the sccs version string). */
+
+! #define PATCHLEVEL 4
+
+ #endif /* _PATCHLEVEL_H_ */
--- /dev/null
+ BASH PATCH REPORT
+ =================
+
+Bash-Release: 5.0
+Patch-ID: bash50-005
+
+Bug-Reported-by: Brad Spencer <bspencer@blackberry.com>
+Bug-Reference-ID: <1b993ff2-ce4f-662a-6be4-393457362e47@blackberry.com>
+Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2019-01/msg00250.html
+
+Bug-Description:
+
+In certain cases, bash optimizes out a fork() call too early and prevents
+traps from running.
+
+Patch (apply with `patch -p0'):
+
+*** ../bash-5.0-patched/command.h 2018-07-20 21:16:31.000000000 -0400
+--- command.h 2019-02-20 11:09:36.000000000 -0500
+***************
+*** 187,190 ****
+--- 188,192 ----
+ #define CMD_LASTPIPE 0x2000
+ #define CMD_STDPATH 0x4000 /* use standard path for command lookup */
++ #define CMD_TRY_OPTIMIZING 0x8000 /* try to optimize this simple command */
+
+ /* What a command looks like. */
+*** ../bash-5.0-patched/builtins/evalstring.c 2018-12-26 11:19:21.000000000 -0500
+--- builtins/evalstring.c 2019-01-29 14:15:19.000000000 -0500
+***************
+*** 101,104 ****
+--- 101,113 ----
+ }
+
++ int
++ can_optimize_connection (command)
++ COMMAND *command;
++ {
++ return (*bash_input.location.string == '\0' &&
++ (command->value.Connection->connector == AND_AND || command->value.Connection->connector == OR_OR || command->value.Connection->connector == ';') &&
++ command->value.Connection->second->type == cm_simple);
++ }
++
+ void
+ optimize_fork (command)
+***************
+*** 106,110 ****
+ {
+ if (command->type == cm_connection &&
+! (command->value.Connection->connector == AND_AND || command->value.Connection->connector == OR_OR) &&
+ should_suppress_fork (command->value.Connection->second))
+ {
+--- 115,120 ----
+ {
+ if (command->type == cm_connection &&
+! (command->value.Connection->connector == AND_AND || command->value.Connection->connector == OR_OR || command->value.Connection->connector == ';') &&
+! (command->value.Connection->second->flags & CMD_TRY_OPTIMIZING) &&
+ should_suppress_fork (command->value.Connection->second))
+ {
+***************
+*** 413,418 ****
+ command->value.Simple->flags |= CMD_NO_FORK;
+ }
+! else if (command->type == cm_connection)
+! optimize_fork (command);
+ #endif /* ONESHOT */
+
+--- 423,438 ----
+ command->value.Simple->flags |= CMD_NO_FORK;
+ }
+!
+! /* Can't optimize forks out here execept for simple commands.
+! This knows that the parser sets up commands as left-side heavy
+! (&& and || are left-associative) and after the single parse,
+! if we are at the end of the command string, the last in a
+! series of connection commands is
+! command->value.Connection->second. */
+! else if (command->type == cm_connection && can_optimize_connection (command))
+! {
+! command->value.Connection->second->flags |= CMD_TRY_OPTIMIZING;
+! command->value.Connection->second->value.Simple->flags |= CMD_TRY_OPTIMIZING;
+! }
+ #endif /* ONESHOT */
+
+*** ../bash-5.0-patched/execute_cmd.c 2018-12-05 09:05:14.000000000 -0500
+--- execute_cmd.c 2019-01-25 15:59:00.000000000 -0500
+***************
+*** 2768,2771 ****
+--- 2768,2773 ----
+ (exec_result != EXECUTION_SUCCESS)))
+ {
++ optimize_fork (command);
++
+ second = command->value.Connection->second;
+ if (ignore_return && second)
+*** ../bash-5.0/patchlevel.h 2016-06-22 14:51:03.000000000 -0400
+--- patchlevel.h 2016-10-01 11:01:28.000000000 -0400
+***************
+*** 26,30 ****
+ looks for to find the patch level (for the sccs version string). */
+
+! #define PATCHLEVEL 4
+
+ #endif /* _PATCHLEVEL_H_ */
+--- 26,30 ----
+ looks for to find the patch level (for the sccs version string). */
+
+! #define PATCHLEVEL 5
+
+ #endif /* _PATCHLEVEL_H_ */
--- /dev/null
+ BASH PATCH REPORT
+ =================
+
+Bash-Release: 5.0
+Patch-ID: bash50-006
+
+Bug-Reported-by: Tomas Mozes <hydrapolic@gmail.com>
+Bug-Reference-ID: <CAG6MAzQumLU2vhnmr1UrYAUQAFW5Yo8hfM_sEibX9RJQWJkRrA@mail.gmail.com>
+Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2019-03/msg00037.html
+
+Bug-Description:
+
+Bash-5.0 did not build successfully if SYSLOG_HISTORY was defined without
+also defining SYSLOG_SHOPT.
+
+Patch (apply with `patch -p0'):
+
+*** ../bash-5.0-patched/builtins/shopt.def 2018-10-05 14:49:02.000000000 -0400
+--- builtins/shopt.def 2019-01-23 09:55:22.000000000 -0500
+***************
+*** 123,127 ****
+ #endif
+
+! #if defined (SYSLOG_HISTORY) && defined (SYSLOG_SHOPT)
+ extern int syslog_history;
+ #endif
+--- 123,127 ----
+ #endif
+
+! #if defined (SYSLOG_HISTORY)
+ extern int syslog_history;
+ #endif
+*** ../bash-5.0/patchlevel.h 2016-06-22 14:51:03.000000000 -0400
+--- patchlevel.h 2016-10-01 11:01:28.000000000 -0400
+***************
+*** 26,30 ****
+ looks for to find the patch level (for the sccs version string). */
+
+! #define PATCHLEVEL 5
+
+ #endif /* _PATCHLEVEL_H_ */
+--- 26,30 ----
+ looks for to find the patch level (for the sccs version string). */
+
+! #define PATCHLEVEL 6
+
+ #endif /* _PATCHLEVEL_H_ */
--- /dev/null
+ BASH PATCH REPORT
+ =================
+
+Bash-Release: 5.0
+Patch-ID: bash50-007
+
+Bug-Reported-by: Grisha Levit <grishalevit@gmail.com>
+Bug-Reference-ID: <CAMu=BroHapG1AS3xB5SQaCX2XKu=-E2Ob9uW6LNuHvd=YohrDw@mail.gmail.com>
+Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2019-02/msg00067.html
+
+Bug-Description:
+
+Running `exec' when job control was disabled, even temporarily, but after it
+had been initialized, could leave the terminal in the wrong process group for
+the executed process.
+
+Patch (apply with `patch -p0'):
+
+*** ../bash-5.0-patched/jobs.c 2018-12-06 11:44:34.000000000 -0500
+--- jobs.c 2019-04-12 15:15:10.000000000 -0400
+***************
+*** 4838,4850 ****
+ {
+ if (job_control)
+! {
+! terminate_stopped_jobs ();
+
+! if (original_pgrp >= 0)
+! give_terminal_to (original_pgrp, 1);
+! }
+
+! if (original_pgrp >= 0)
+! setpgid (0, original_pgrp);
+ }
+
+--- 4838,4848 ----
+ {
+ if (job_control)
+! terminate_stopped_jobs ();
+
+! if (original_pgrp >= 0 && terminal_pgrp != original_pgrp)
+! give_terminal_to (original_pgrp, 1);
+
+! if (original_pgrp >= 0 && setpgid (0, original_pgrp) == 0)
+! shell_pgrp = original_pgrp;
+ }
+
+*** ../bash-5.0/patchlevel.h 2016-06-22 14:51:03.000000000 -0400
+--- patchlevel.h 2016-10-01 11:01:28.000000000 -0400
+***************
+*** 26,30 ****
+ looks for to find the patch level (for the sccs version string). */
+
+! #define PATCHLEVEL 6
+
+ #endif /* _PATCHLEVEL_H_ */
+--- 26,30 ----
+ looks for to find the patch level (for the sccs version string). */
+
+! #define PATCHLEVEL 7
+
+ #endif /* _PATCHLEVEL_H_ */
--- /dev/null
+ BASH PATCH REPORT
+ =================
+
+Bash-Release: 5.0
+Patch-ID: bash50-008
+
+Bug-Reported-by: Michael Albinus <michael.albinus@gmx.de>
+Bug-Reference-ID: <87bm36k3kz.fsf@gmx.de>
+Bug-Reference-URL: https://lists.gnu.org/archive/html/bug-bash/2019-02/msg00111.html
+
+Bug-Description:
+
+When HISTSIZE is set to 0, history expansion can leave the history length
+set to an incorrect value, leading to subsequent attempts to access invalid
+memory.
+
+Patch (apply with `patch -p0'):
+
+*** ../bash-5.0-patched/bashhist.c 2018-07-05 22:41:14.000000000 -0400
+--- bashhist.c 2019-02-20 16:20:04.000000000 -0500
+***************
+*** 561,573 ****
+ if (!history_expansion_inhibited && history_expansion && history_expansion_p (line))
+ {
+ /* If we are expanding the second or later line of a multi-line
+ command, decrease history_length so references to history expansions
+ in these lines refer to the previous history entry and not the
+ current command. */
+ if (history_length > 0 && command_oriented_history && current_command_first_line_saved && current_command_line_count > 1)
+ history_length--;
+ expanded = history_expand (line, &history_value);
+ if (history_length >= 0 && command_oriented_history && current_command_first_line_saved && current_command_line_count > 1)
+! history_length++;
+
+ if (expanded)
+--- 561,576 ----
+ if (!history_expansion_inhibited && history_expansion && history_expansion_p (line))
+ {
++ int old_len;
++
+ /* If we are expanding the second or later line of a multi-line
+ command, decrease history_length so references to history expansions
+ in these lines refer to the previous history entry and not the
+ current command. */
++ old_len = history_length;
+ if (history_length > 0 && command_oriented_history && current_command_first_line_saved && current_command_line_count > 1)
+ history_length--;
+ expanded = history_expand (line, &history_value);
+ if (history_length >= 0 && command_oriented_history && current_command_first_line_saved && current_command_line_count > 1)
+! history_length = old_len;
+
+ if (expanded)
+
+*** ../bash-5.0/patchlevel.h 2016-06-22 14:51:03.000000000 -0400
+--- patchlevel.h 2016-10-01 11:01:28.000000000 -0400
+***************
+*** 26,30 ****
+ looks for to find the patch level (for the sccs version string). */
+
+! #define PATCHLEVEL 7
+
+ #endif /* _PATCHLEVEL_H_ */
+--- 26,30 ----
+ looks for to find the patch level (for the sccs version string). */
+
+! #define PATCHLEVEL 8
+
+ #endif /* _PATCHLEVEL_H_ */
--- /dev/null
+ BASH PATCH REPORT
+ =================
+
+Bash-Release: 5.0
+Patch-ID: bash50-009
+
+Bug-Reported-by: chet.ramey@case.edu
+Bug-Reference-ID:
+Bug-Reference-URL:
+
+Bug-Description:
+
+The history file reading code doesn't close the file descriptor open to
+the history file when it encounters a zero-length file.
+
+Patch (apply with `patch -p0'):
+
+*** ../bash-5.0-patched/lib/readline/histfile.c 2018-06-11 09:14:52.000000000 -0400
+--- lib/readline/histfile.c 2019-05-16 15:55:57.000000000 -0400
+***************
+*** 306,309 ****
+--- 312,316 ----
+ {
+ free (input);
++ close (file);
+ return 0; /* don't waste time if we don't have to */
+ }
+*** ../bash-5.0/patchlevel.h 2016-06-22 14:51:03.000000000 -0400
+--- patchlevel.h 2016-10-01 11:01:28.000000000 -0400
+***************
+*** 26,30 ****
+ looks for to find the patch level (for the sccs version string). */
+
+! #define PATCHLEVEL 8
+
+ #endif /* _PATCHLEVEL_H_ */
+--- 26,30 ----
+ looks for to find the patch level (for the sccs version string). */
+
+! #define PATCHLEVEL 9
+
+ #endif /* _PATCHLEVEL_H_ */
--- /dev/null
+ BASH PATCH REPORT
+ =================
+
+Bash-Release: 5.0
+Patch-ID: bash50-010
+
+Bug-Reported-by: Thorsten Glaser <tg@mirbsd.de>
+Bug-Reference-ID: <156622962831.19438.16374961114836556294.reportbug@tglase.lan.tarent.de>
+Bug-Reference-URL: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=935115
+
+Bug-Description:
+
+Bash-5.0 changed the way assignment statements preceding special builtins
+and shell functions were handled in posix mode. They automatically created
+or modified global variables instead of modifying existing local variables
+as in bash-4.4.
+
+The bash-4.4 posix-mode semantics were buggy, and resulted in creating
+local variables where they were not intended and modifying global variables
+and local variables simultaneously.
+
+The bash-5.0 changes were intended to fix this issue, but did not preserve
+enough backwards compatibility. The posix standard also changed what it
+required in these cases, so bash-5.0 is not bound by the strict conformance
+requirements that existed in previous issues of the standard.
+
+This patch modifies the bash-5.0 posix mode behavior in an effort to restore
+some backwards compatibility and rationalize the behavior in the presence of
+local variables. It
+
+1. Changes the assignment semantics to be more similar to standalone assignment
+ statements: assignments preceding a function call or special builtin while
+ executing in a shell function will modify the value of a local variable
+ with the same name for the duration of the function's execution;
+
+2. Changes assignments preceding shell function calls or special builtins
+ from within a shell function to no longer create or modify global variables
+ in the presence of a local variable with the same name;
+
+3. Assignment statements preceding a shell function call or special builtin
+ at the global scope continue to modify the (global) calling environment,
+ but are unaffected by assignments preceding function calls or special
+ builtins within a function, as described in item 2. This is also similar
+ to the behavior of a standalone assignment statement.
+
+Patch (apply with `patch -p0'):
+
+*** ../bash-5.0-patched/variables.c 2018-12-18 11:07:21.000000000 -0500
+--- variables.c 2019-08-22 10:53:44.000000000 -0400
+***************
+*** 4461,4467 ****
+
+ /* Take a variable from an assignment statement preceding a posix special
+! builtin (including `return') and create a global variable from it. This
+! is called from merge_temporary_env, which is only called when in posix
+! mode. */
+ static void
+ push_posix_temp_var (data)
+--- 4461,4467 ----
+
+ /* Take a variable from an assignment statement preceding a posix special
+! builtin (including `return') and create a variable from it as if a
+! standalone assignment statement had been performed. This is called from
+! merge_temporary_env, which is only called when in posix mode. */
+ static void
+ push_posix_temp_var (data)
+***************
+*** 4473,4486 ****
+ var = (SHELL_VAR *)data;
+
+! binding_table = global_variables->table;
+! if (binding_table == 0)
+! binding_table = global_variables->table = hash_create (VARIABLES_HASH_BUCKETS);
+!
+! v = bind_variable_internal (var->name, value_cell (var), binding_table, 0, ASS_FORCE|ASS_NOLONGJMP);
+
+ /* global variables are no longer temporary and don't need propagating. */
+! var->attributes &= ~(att_tempvar|att_propagate);
+ if (v)
+! v->attributes |= var->attributes;
+
+ if (find_special_var (var->name) >= 0)
+--- 4473,4497 ----
+ var = (SHELL_VAR *)data;
+
+! /* Just like do_assignment_internal(). This makes assignments preceding
+! special builtins act like standalone assignment statements when in
+! posix mode, satisfying the posix requirement that this affect the
+! "current execution environment." */
+! v = bind_variable (var->name, value_cell (var), ASS_FORCE|ASS_NOLONGJMP);
+!
+! /* If this modifies an existing local variable, v->context will be non-zero.
+! If it comes back with v->context == 0, we bound at the global context.
+! Set binding_table appropriately. It doesn't matter whether it's correct
+! if the variable is local, only that it's not global_variables->table */
+! binding_table = v->context ? shell_variables->table : global_variables->table;
+
+ /* global variables are no longer temporary and don't need propagating. */
+! if (binding_table == global_variables->table)
+! var->attributes &= ~(att_tempvar|att_propagate);
+!
+ if (v)
+! {
+! v->attributes |= var->attributes;
+! v->attributes &= ~att_tempvar; /* not a temp var now */
+! }
+
+ if (find_special_var (var->name) >= 0)
+***************
+*** 4576,4587 ****
+ {
+ int i;
+
+ tempvar_list = strvec_create (HASH_ENTRIES (temporary_env) + 1);
+ tempvar_list[tvlist_ind = 0] = 0;
+!
+! hash_flush (temporary_env, pushf);
+! hash_dispose (temporary_env);
+ temporary_env = (HASH_TABLE *)NULL;
+
+ tempvar_list[tvlist_ind] = 0;
+
+--- 4587,4601 ----
+ {
+ int i;
++ HASH_TABLE *disposer;
+
+ tempvar_list = strvec_create (HASH_ENTRIES (temporary_env) + 1);
+ tempvar_list[tvlist_ind = 0] = 0;
+!
+! disposer = temporary_env;
+ temporary_env = (HASH_TABLE *)NULL;
+
++ hash_flush (disposer, pushf);
++ hash_dispose (disposer);
++
+ tempvar_list[tvlist_ind] = 0;
+
+*** ../bash-5.0-patched/tests/varenv.right 2018-12-17 15:39:48.000000000 -0500
+--- tests/varenv.right 2019-08-22 16:05:25.000000000 -0400
+***************
+*** 147,153 ****
+ outside: declare -- var="one"
+ inside: declare -x var="value"
+! outside: declare -x var="value"
+! inside: declare -- var="local"
+! outside: declare -x var="global"
+ foo=<unset> environment foo=
+ foo=foo environment foo=foo
+--- 147,153 ----
+ outside: declare -- var="one"
+ inside: declare -x var="value"
+! outside: declare -- var="outside"
+! inside: declare -x var="global"
+! outside: declare -- var="outside"
+ foo=<unset> environment foo=
+ foo=foo environment foo=foo
+*** ../bash-5.0/patchlevel.h 2016-06-22 14:51:03.000000000 -0400
+--- patchlevel.h 2016-10-01 11:01:28.000000000 -0400
+***************
+*** 26,30 ****
+ looks for to find the patch level (for the sccs version string). */
+
+! #define PATCHLEVEL 9
+
+ #endif /* _PATCHLEVEL_H_ */
+--- 26,30 ----
+ looks for to find the patch level (for the sccs version string). */
+
+! #define PATCHLEVEL 10
+
+ #endif /* _PATCHLEVEL_H_ */
--- /dev/null
+ BASH PATCH REPORT
+ =================
+
+Bash-Release: 5.0
+Patch-ID: bash50-011
+
+Bug-Reported-by: Matt Whitlock
+Bug-Reference-ID:
+Bug-Reference-URL: https://savannah.gnu.org/support/?109671
+
+Bug-Description:
+
+The conditional command did not perform appropriate quoted null character
+removal on its arguments, causing syntax errors and attempts to stat
+invalid pathnames.
+
+Patch (apply with `patch -p0'):
+
+*** ../bash-5.0-patched/subst.c 2018-12-22 17:43:37.000000000 -0500
+--- subst.c 2019-04-14 13:25:41.000000000 -0400
+***************
+*** 3626,3630 ****
+ SPECIAL is 2, this is an rhs argument for the =~ operator, and should
+ be quoted appropriately for regcomp/regexec. The caller is responsible
+! for removing the backslashes if the unquoted word is needed later. */
+ char *
+ cond_expand_word (w, special)
+--- 3642,3648 ----
+ SPECIAL is 2, this is an rhs argument for the =~ operator, and should
+ be quoted appropriately for regcomp/regexec. The caller is responsible
+! for removing the backslashes if the unquoted word is needed later. In
+! any case, since we don't perform word splitting, we need to do quoted
+! null character removal. */
+ char *
+ cond_expand_word (w, special)
+***************
+*** 3647,3650 ****
+--- 3665,3670 ----
+ if (special == 0) /* LHS */
+ {
++ if (l->word)
++ word_list_remove_quoted_nulls (l);
+ dequote_list (l);
+ r = string_list (l);
+*** ../bash-5.0/patchlevel.h 2016-06-22 14:51:03.000000000 -0400
+--- patchlevel.h 2016-10-01 11:01:28.000000000 -0400
+***************
+*** 26,30 ****
+ looks for to find the patch level (for the sccs version string). */
+
+! #define PATCHLEVEL 10
+
+ #endif /* _PATCHLEVEL_H_ */
+--- 26,30 ----
+ looks for to find the patch level (for the sccs version string). */
+
+! #define PATCHLEVEL 11
+
+ #endif /* _PATCHLEVEL_H_ */
--- /dev/null
+diff U3 a/calamaris b/calamaris
+--- a/calamaris Sun Jun 6 18:26:14 2004
++++ b/calamaris Wed Nov 13 19:59:15 2019
+@@ -2606,7 +2606,7 @@
+ 100, 100 * $tcp_hit / $tcp );
+ }
+ outstop(10);
+- if ( defined(%tcp_content) ) {
++ if (%tcp_content) {
+ outstart(11);
+ if ( $tcp == 0 ) {
+ outline( 11, 'no matching requests' );
--- /dev/null
+commit c0277eeea2b2c1ed8f40f1248b28438e44e51912
+Author: Stefan Schantl <stefan.schantl@ipfire.org>
+Date: Tue Nov 12 08:43:31 2019 +0100
+
+ NoIP.com: Rename handle back to no-ip.com
+
+ The old handle name is required for backward compatiblity.
+
+ Signed-off-by: Stefan Schantl <stefan.schantl@ipfire.org>
+
+diff --git a/ddns.conf.sample b/ddns.conf.sample
+index 528684f..61a608a 100644
+--- a/ddns.conf.sample
++++ b/ddns.conf.sample
+@@ -120,7 +120,7 @@
+ # password = pass
+
+ # [test.noip.org]
+-# provider = noip.com
++# provider = no-ip.com
+ # username = user
+ # password = pass
+
+diff --git a/src/ddns/providers.py b/src/ddns/providers.py
+index 4789107..661fbcc 100644
+--- a/src/ddns/providers.py
++++ b/src/ddns/providers.py
+@@ -1344,7 +1344,7 @@ class DDNSProviderNamecheap(DDNSResponseParserXML, DDNSProvider):
+
+
+ class DDNSProviderNOIP(DDNSProtocolDynDNS2, DDNSProvider):
+- handle = "noip.com"
++ handle = "no-ip.com"
+ name = "NoIP"
+ website = "http://www.noip.com/"
+ protocols = ("ipv4",)
--- /dev/null
+commit bfdba55a5eeb3dac5ed35ff72b6c74b941da6445
+Author: Stefan Schantl <stefan.schantl@ipfire.org>
+Date: Tue Nov 5 19:09:53 2019 +0100
+
+ No-IP.com: Rename provider and handle to NoIP.com
+
+ Fixes #11561.
+
+ Signed-off-by: Stefan Schantl <stefan.schantl@ipfire.org>
+
+diff --git a/README b/README
+index 76f63bc..c75c448 100644
+--- a/README
++++ b/README
+@@ -75,7 +75,7 @@ SUPPORTED PROVIDERS:
+ loopia.se
+ myonlineportal.net
+ namecheap.com
+- no-ip.com
++ noip.com
+ now-dns.com
+ nsupdate.info
+ opendns.com
+diff --git a/ddns.conf.sample b/ddns.conf.sample
+index 5b3b845..528684f 100644
+--- a/ddns.conf.sample
++++ b/ddns.conf.sample
+@@ -119,8 +119,8 @@
+ # provider = namecheap.com
+ # password = pass
+
+-# [test.no-ip.org]
+-# provider = no-ip.com
++# [test.noip.org]
++# provider = noip.com
+ # username = user
+ # password = pass
+
+diff --git a/src/ddns/providers.py b/src/ddns/providers.py
+index f3c62c1..4789107 100644
+--- a/src/ddns/providers.py
++++ b/src/ddns/providers.py
+@@ -1344,16 +1344,16 @@ class DDNSProviderNamecheap(DDNSResponseParserXML, DDNSProvider):
+
+
+ class DDNSProviderNOIP(DDNSProtocolDynDNS2, DDNSProvider):
+- handle = "no-ip.com"
+- name = "No-IP"
+- website = "http://www.no-ip.com/"
++ handle = "noip.com"
++ name = "NoIP"
++ website = "http://www.noip.com/"
+ protocols = ("ipv4",)
+
+ # Information about the format of the HTTP request is to be found
+- # here: http://www.no-ip.com/integrate/request and
+- # here: http://www.no-ip.com/integrate/response
++ # here: http://www.noip.com/integrate/request and
++ # here: http://www.noip.com/integrate/response
+
+- url = "http://dynupdate.no-ip.com/nic/update"
++ url = "http://dynupdate.noip.com/nic/update"
+
+ def prepare_request_data(self, proto):
+ assert proto == "ipv4"
+++ /dev/null
-From 69d6e8ce6c636f78d1db0eebe7fb1cc02ae4fb9a Mon Sep 17 00:00:00 2001
-From: Jonatan Schlag <jonatan.schlag@ipfire.org>
-Date: Mon, 6 Jun 2016 19:40:50 +0200
-Subject: [PATCH 2/2] Change options in libvirtd.conf for IPFire
-
-Signed-off-by: Jonatan Schlag <jonatan.schlag@ipfire.org>
-
---- a/src/remote/libvirtd.conf~ 2018-10-24 09:12:31.045030419 +0100
-+++ b/src/remote/libvirtd.conf 2018-10-24 09:12:33.443109098 +0100
-@@ -82,14 +82,14 @@
- # without becoming root.
- #
- # This is restricted to 'root' by default.
--#unix_sock_group = "libvirt"
-+unix_sock_group = "libvirt-remote"
-
- # Set the UNIX socket permissions for the R/O socket. This is used
- # for monitoring VM status only
- #
- # Default allows any user. If setting group ownership, you may want to
- # restrict this too.
--#unix_sock_ro_perms = "0777"
-+unix_sock_ro_perms = "0770"
-
- # Set the UNIX socket permissions for the R/W socket. This is used
- # for full management of VMs
-@@ -99,7 +99,7 @@
- #
- # If not using PolicyKit and setting group ownership for access
- # control, then you may want to relax this too.
--#unix_sock_rw_perms = "0770"
-+unix_sock_rw_perms = "0770"
-
- # Set the UNIX socket permissions for the admin interface socket.
- #
--- /dev/null
+diff -Nur lz4-1.9.2.orig/lib/Makefile lz4-1.9.2/lib/Makefile
+--- lz4-1.9.2.orig/lib/Makefile 2019-10-29 08:14:03.167415441 +0000
++++ lz4-1.9.2/lib/Makefile 2019-10-29 08:14:43.243864994 +0000
+@@ -144,7 +144,7 @@
+ # directory variables : GNU conventions prefer lowercase
+ # see https://www.gnu.org/prep/standards/html_node/Makefile-Conventions.html
+ # support both lower and uppercase (BSD), use lower in script
+-PREFIX ?= /usr/local
++PREFIX ?= /usr
+ prefix ?= $(PREFIX)
+ EXEC_PREFIX ?= $(prefix)
+ exec_prefix ?= $(EXEC_PREFIX)
+diff -Nur lz4-1.9.2.orig/programs/Makefile lz4-1.9.2/programs/Makefile
+--- lz4-1.9.2.orig/programs/Makefile 2019-10-29 08:14:03.177415386 +0000
++++ lz4-1.9.2/programs/Makefile 2019-10-29 08:14:30.267268628 +0000
+@@ -132,7 +132,7 @@
+ # directory variables : GNU conventions prefer lowercase
+ # see https://www.gnu.org/prep/standards/html_node/Makefile-Conventions.html
+ # support both lower and uppercase (BSD), use lowercase in script
+-PREFIX ?= /usr/local
++PREFIX ?= /usr
+ prefix ?= $(PREFIX)
+ EXEC_PREFIX ?= $(prefix)
+ exec_prefix ?= $(EXEC_PREFIX)
+++ /dev/null
-diff -Naur openssl-1.1.1c.orig/include/openssl/ssl.h openssl-1.1.1c/include/openssl/ssl.h
---- openssl-1.1.1c.orig/include/openssl/ssl.h 2019-06-10 20:41:21.209140012 +0200
-+++ openssl-1.1.1c/include/openssl/ssl.h 2019-06-10 20:42:26.733973129 +0200
-@@ -170,11 +170,11 @@
- * an application-defined cipher list string starts with 'DEFAULT'.
- * This applies to ciphersuites for TLSv1.2 and below.
- */
--# define SSL_DEFAULT_CIPHER_LIST "ALL:!COMPLEMENTOFDEFAULT:!eNULL"
-+# define SSL_DEFAULT_CIPHER_LIST "CHACHA20:HIGH:+aRSA:+SHA384:+SHA256:+DH:+SHA:+kRSA:!eNULL:!aNULL:!PSK:!SRP:!AESCCM:!DSS"
- /* This is the default set of TLSv1.3 ciphersuites */
- # if !defined(OPENSSL_NO_CHACHA) && !defined(OPENSSL_NO_POLY1305)
--# define TLS_DEFAULT_CIPHERSUITES "TLS_AES_256_GCM_SHA384:" \
-- "TLS_CHACHA20_POLY1305_SHA256:" \
-+# define TLS_DEFAULT_CIPHERSUITES "TLS_CHACHA20_POLY1305_SHA256:" \
-+ "TLS_AES_256_GCM_SHA384:" \
- "TLS_AES_128_GCM_SHA256"
- # else
- # define TLS_DEFAULT_CIPHERSUITES "TLS_AES_256_GCM_SHA384:" \
--- /dev/null
+--- openssl-1.1.1d.orig/include/openssl/ssl.h 2019-11-04 19:13:08.801905796 +0100
++++ openssl-1.1.1d/include/openssl/ssl.h 2019-11-04 19:14:05.229896747 +0100
+@@ -170,7 +170,7 @@
+ * an application-defined cipher list string starts with 'DEFAULT'.
+ * This applies to ciphersuites for TLSv1.2 and below.
+ */
+-# define SSL_DEFAULT_CIPHER_LIST "ALL:!COMPLEMENTOFDEFAULT:!eNULL"
++# define SSL_DEFAULT_CIPHER_LIST "HIGH:+aRSA:+SHA384:+SHA256:+DH:+SHA:+kRSA:!eNULL:!aNULL:!PSK:!SRP:!AESCCM:!DSS"
+ /* This is the default set of TLSv1.3 ciphersuites */
+ # if !defined(OPENSSL_NO_CHACHA) && !defined(OPENSSL_NO_POLY1305)
+ # define TLS_DEFAULT_CIPHERSUITES "TLS_AES_256_GCM_SHA384:" \
+++ /dev/null
-Upstream-Status: Backport
-Signed-off-by: Ross Burton <ross.burton@intel.com>
-
-From 75e5b70e6b5dcc4f2219992d7cffa462aa406af0 Mon Sep 17 00:00:00 2001
-From: Paolo Bonzini <pbonzini@redhat.com>
-Date: Tue, 28 Nov 2017 11:51:27 +0100
-Subject: [PATCH] memfd: fix configure test
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-Recent glibc added memfd_create in sys/mman.h. This conflicts with
-the definition in util/memfd.c:
-
- /builddir/build/BUILD/qemu-2.11.0-rc1/util/memfd.c:40:12: error: static declaration of memfd_create follows non-static declaration
-
-Fix the configure test, and remove the sys/memfd.h inclusion since the
-file actually does not exist---it is a typo in the memfd_create(2) man
-page.
-
-Cc: Marc-André Lureau <marcandre.lureau@redhat.com>
-Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
----
- configure | 2 +-
- util/memfd.c | 4 +---
- 2 files changed, 2 insertions(+), 4 deletions(-)
-
-diff --git a/configure b/configure
-index 9c8aa5a98b..99ccc1725a 100755
---- a/configure
-+++ b/configure
-@@ -3923,7 +3923,7 @@ fi
- # check if memfd is supported
- memfd=no
- cat > $TMPC << EOF
--#include <sys/memfd.h>
-+#include <sys/mman.h>
-
- int main(void)
- {
-diff --git a/util/memfd.c b/util/memfd.c
-index 4571d1aba8..412e94a405 100644
---- a/util/memfd.c
-+++ b/util/memfd.c
-@@ -31,9 +31,7 @@
-
- #include "qemu/memfd.h"
-
--#ifdef CONFIG_MEMFD
--#include <sys/memfd.h>
--#elif defined CONFIG_LINUX
-+#if defined CONFIG_LINUX && !defined CONFIG_MEMFD
- #include <sys/syscall.h>
- #include <asm/unistd.h>
-
---
-2.11.0
+++ /dev/null
- READLINE PATCH REPORT
- =====================
-
-Readline-Release: 5.2
-Patch-ID: readline52-001
-
-Bug-Reported-by: ebb9@byu.net
-Bug-Reference-ID: <45540862.9030900@byu.net>
-Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2006-11/msg00017.html
- http://lists.gnu.org/archive/html/bug-bash/2006-11/msg00016.html
-
-Bug-Description:
-
-In some cases, code that is intended to be used in the presence of multibyte
-characters is called when no such characters are present, leading to incorrect
-display position calculations and incorrect redisplay.
-
-Patch:
-
-*** ../readline-5.2/display.c Thu Sep 14 14:20:12 2006
---- display.c Mon Nov 13 17:55:57 2006
-***************
-*** 2381,2384 ****
---- 2409,2414 ----
- if (end <= start)
- return 0;
-+ if (MB_CUR_MAX == 1 || rl_byte_oriented)
-+ return (end - start);
-
- memset (&ps, 0, sizeof (mbstate_t));
+++ /dev/null
- READLINE PATCH REPORT
- =====================
-
-Readline-Release: 5.2
-Patch-ID: readline52-002
-
-Bug-Reported-by: Magnus Svensson <msvensson@mysql.com>
-Bug-Reference-ID: <45BDC44D.80609@mysql.com>
-Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-readline/2007-01/msg00002.html
-
-Bug-Description:
-
-Readline neglects to reallocate the array it uses to keep track of wrapped
-screen lines when increasing its size. This will eventually result in
-segmentation faults when given sufficiently long input.
-
-Patch:
-
-*** ../readline-5.2-patched/display.c Thu Sep 14 14:20:12 2006
---- display.c Fri Feb 2 20:23:17 2007
-***************
-*** 561,574 ****
---- 561,586 ----
- wrap_offset = prompt_invis_chars_first_line = 0;
- }
-
-+ #if defined (HANDLE_MULTIBYTE)
- #define CHECK_INV_LBREAKS() \
- do { \
- if (newlines >= (inv_lbsize - 2)) \
- { \
- inv_lbsize *= 2; \
- inv_lbreaks = (int *)xrealloc (inv_lbreaks, inv_lbsize * sizeof (int)); \
-+ _rl_wrapped_line = (int *)xrealloc (_rl_wrapped_line, inv_lbsize * sizeof (int)); \
- } \
- } while (0)
-+ #else
-+ #define CHECK_INV_LBREAKS() \
-+ do { \
-+ if (newlines >= (inv_lbsize - 2)) \
-+ { \
-+ inv_lbsize *= 2; \
-+ inv_lbreaks = (int *)xrealloc (inv_lbreaks, inv_lbsize * sizeof (int)); \
-+ } \
-+ } while (0)
-+ #endif /* HANDLE_MULTIBYTE */
-
- #if defined (HANDLE_MULTIBYTE)
- #define CHECK_LPOS() \
+++ /dev/null
- READLINE PATCH REPORT
- =====================
-
-Readline-Release: 5.2
-Patch-ID: readline52-003
-
-Bug-Reported-by: Peter Volkov <torre_cremata@mail.ru>
-Bug-Reference-ID: <1171795523.8021.18.camel@localhost>
-Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2007-02/msg00054.html
-
-Bug-Description:
-
-When moving the cursor, bash sometimes misplaces the cursor when the prompt
-contains two or more multibyte characters. The particular circumstance that
-uncovered the problem was having the (multibyte) current directory name in
-the prompt string.
-
-Patch:
-
-*** ../readline-5.2.2/display.c Fri Jan 19 13:34:50 2007
---- display.c Sat Mar 10 17:25:44 2007
-***************
-*** 1745,1749 ****
- {
- dpos = _rl_col_width (data, 0, new);
-! if (dpos > prompt_last_invisible) /* XXX - don't use woff here */
- {
- dpos -= woff;
---- 1745,1752 ----
- {
- dpos = _rl_col_width (data, 0, new);
-! /* Use NEW when comparing against the last invisible character in the
-! prompt string, since they're both buffer indices and DPOS is a
-! desired display position. */
-! if (new > prompt_last_invisible) /* XXX - don't use woff here */
- {
- dpos -= woff;
+++ /dev/null
- READLINE PATCH REPORT
- =====================
-
-Readline-Release: 5.2
-Patch-ID: readline52-004
-
-Bug-Reported-by: Peter Volkov <torre_cremata@mail.ru>
-Bug-Reference-ID: <1173636022.7039.36.camel@localhost>
-Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2007-03/msg00039.html
-
-Bug-Description:
-
-When restoring the original prompt after finishing an incremental search,
-bash sometimes places the cursor incorrectly if the primary prompt contains
-invisible characters.
-
-Patch:
-
-*** ../readline-5.2.3/display.c Fri Apr 20 13:30:16 2007
---- display.c Fri Apr 20 15:17:01 2007
-***************
-*** 1599,1604 ****
- if (temp > 0)
- {
- _rl_output_some_chars (nfd, temp);
-! _rl_last_c_pos += _rl_col_width (nfd, 0, temp);;
- }
- }
---- 1599,1618 ----
- if (temp > 0)
- {
-+ /* If nfd begins at the prompt, or before the invisible
-+ characters in the prompt, we need to adjust _rl_last_c_pos
-+ in a multibyte locale to account for the wrap offset and
-+ set cpos_adjusted accordingly. */
- _rl_output_some_chars (nfd, temp);
-! if (MB_CUR_MAX > 1 && rl_byte_oriented == 0)
-! {
-! _rl_last_c_pos += _rl_col_width (nfd, 0, temp);
-! if (current_line == 0 && wrap_offset && ((nfd - new) <= prompt_last_invisible))
-! {
-! _rl_last_c_pos -= wrap_offset;
-! cpos_adjusted = 1;
-! }
-! }
-! else
-! _rl_last_c_pos += temp;
- }
- }
-***************
-*** 1608,1613 ****
---- 1622,1639 ----
- if (temp > 0)
- {
-+ /* If nfd begins at the prompt, or before the invisible
-+ characters in the prompt, we need to adjust _rl_last_c_pos
-+ in a multibyte locale to account for the wrap offset and
-+ set cpos_adjusted accordingly. */
- _rl_output_some_chars (nfd, temp);
- _rl_last_c_pos += col_temp; /* XXX */
-+ if (MB_CUR_MAX > 1 && rl_byte_oriented == 0)
-+ {
-+ if (current_line == 0 && wrap_offset && ((nfd - new) <= prompt_last_invisible))
-+ {
-+ _rl_last_c_pos -= wrap_offset;
-+ cpos_adjusted = 1;
-+ }
-+ }
- }
- lendiff = (oe - old) - (ne - new);
+++ /dev/null
- READLINE PATCH REPORT
- =====================
-
-Readline-Release: 5.2
-Patch-ID: readline52-005
-
-Bug-Reported-by: Thomas Loeber <ifp@loeber1.de>
-Bug-Reference-ID: <200703082223.08919.ifp@loeber1.de>
-Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2007-03/msg00036.html
-
-Bug-Description:
-
-When rl_read_key returns -1, indicating that readline's controlling terminal
-has been invalidated for some reason (e.g., receiving a SIGHUP), the error
-status was not reported correctly to the caller. This could cause input
-loops.
-
-Patch:
-
-*** ../readline-5.2/complete.c Fri Jul 28 11:35:49 2006
---- complete.c Tue Mar 13 08:50:16 2007
-***************
-*** 429,433 ****
- if (c == 'n' || c == 'N' || c == RUBOUT)
- return (0);
-! if (c == ABORT_CHAR)
- _rl_abort_internal ();
- if (for_pager && (c == NEWLINE || c == RETURN))
---- 440,444 ----
- if (c == 'n' || c == 'N' || c == RUBOUT)
- return (0);
-! if (c == ABORT_CHAR || c < 0)
- _rl_abort_internal ();
- if (for_pager && (c == NEWLINE || c == RETURN))
-*** ../readline-5.2/input.c Wed Aug 16 15:15:16 2006
---- input.c Wed May 2 16:07:59 2007
-***************
-*** 514,518 ****
- int size;
- {
-! int mb_len = 0;
- size_t mbchar_bytes_length;
- wchar_t wc;
---- 522,526 ----
- int size;
- {
-! int mb_len, c;
- size_t mbchar_bytes_length;
- wchar_t wc;
-***************
-*** 521,531 ****
- memset(&ps, 0, sizeof (mbstate_t));
- memset(&ps_back, 0, sizeof (mbstate_t));
-!
- while (mb_len < size)
- {
- RL_SETSTATE(RL_STATE_MOREINPUT);
-! mbchar[mb_len++] = rl_read_key ();
- RL_UNSETSTATE(RL_STATE_MOREINPUT);
-
- mbchar_bytes_length = mbrtowc (&wc, mbchar, mb_len, &ps);
- if (mbchar_bytes_length == (size_t)(-1))
---- 529,545 ----
- memset(&ps, 0, sizeof (mbstate_t));
- memset(&ps_back, 0, sizeof (mbstate_t));
-!
-! mb_len = 0;
- while (mb_len < size)
- {
- RL_SETSTATE(RL_STATE_MOREINPUT);
-! c = rl_read_key ();
- RL_UNSETSTATE(RL_STATE_MOREINPUT);
-
-+ if (c < 0)
-+ break;
-+
-+ mbchar[mb_len++] = c;
-+
- mbchar_bytes_length = mbrtowc (&wc, mbchar, mb_len, &ps);
- if (mbchar_bytes_length == (size_t)(-1))
-***************
-*** 565,569 ****
- c = first;
- memset (mb, 0, mlen);
-! for (i = 0; i < mlen; i++)
- {
- mb[i] = (char)c;
---- 579,583 ----
- c = first;
- memset (mb, 0, mlen);
-! for (i = 0; c >= 0 && i < mlen; i++)
- {
- mb[i] = (char)c;
-*** ../readline-5.2/isearch.c Mon Dec 26 17:18:53 2005
---- isearch.c Fri Mar 9 14:30:59 2007
-***************
-*** 328,333 ****
-
- f = (rl_command_func_t *)NULL;
-!
-! /* Translate the keys we do something with to opcodes. */
- if (c >= 0 && _rl_keymap[c].type == ISFUNC)
- {
---- 328,340 ----
-
- f = (rl_command_func_t *)NULL;
-!
-! if (c < 0)
-! {
-! cxt->sflags |= SF_FAILED;
-! cxt->history_pos = cxt->last_found_line;
-! return -1;
-! }
-!
-! /* Translate the keys we do something with to opcodes. */
- if (c >= 0 && _rl_keymap[c].type == ISFUNC)
- {
-*** ../readline-5.2/misc.c Mon Dec 26 17:20:46 2005
---- misc.c Fri Mar 9 14:44:11 2007
-***************
-*** 147,150 ****
---- 147,152 ----
- rl_clear_message ();
- RL_UNSETSTATE(RL_STATE_NUMERICARG);
-+ if (key < 0)
-+ return -1;
- return (_rl_dispatch (key, _rl_keymap));
- }
-*** ../readline-5.2/readline.c Wed Aug 16 15:00:36 2006
---- readline.c Fri Mar 9 14:47:24 2007
-***************
-*** 646,649 ****
---- 669,677 ----
- {
- nkey = _rl_subseq_getchar (cxt->okey);
-+ if (nkey < 0)
-+ {
-+ _rl_abort_internal ();
-+ return -1;
-+ }
- r = _rl_dispatch_subseq (nkey, cxt->dmap, cxt->subseq_arg);
- cxt->flags |= KSEQ_DISPATCHED;
-*** ../readline-5.2/text.c Fri Jul 28 11:55:27 2006
---- text.c Sun Mar 25 13:41:38 2007
-***************
-*** 858,861 ****
---- 864,870 ----
- RL_UNSETSTATE(RL_STATE_MOREINPUT);
-
-+ if (c < 0)
-+ return -1;
-+
- #if defined (HANDLE_SIGNALS)
- if (RL_ISSTATE (RL_STATE_CALLBACK) == 0)
-***************
-*** 1521,1524 ****
---- 1530,1536 ----
- mb_len = _rl_read_mbchar (mbchar, MB_LEN_MAX);
-
-+ if (mb_len <= 0)
-+ return -1;
-+
- if (count < 0)
- return (_rl_char_search_internal (-count, bdir, mbchar, mb_len));
-***************
-*** 1537,1540 ****
---- 1549,1555 ----
- RL_UNSETSTATE(RL_STATE_MOREINPUT);
-
-+ if (c < 0)
-+ return -1;
-+
- if (count < 0)
- return (_rl_char_search_internal (-count, bdir, c));
-*** ../readline-5.2/vi_mode.c Sat Jul 29 16:42:28 2006
---- vi_mode.c Fri Mar 9 15:02:11 2007
-***************
-*** 887,890 ****
---- 887,897 ----
- c = rl_read_key ();
- RL_UNSETSTATE(RL_STATE_MOREINPUT);
-+
-+ if (c < 0)
-+ {
-+ *nextkey = 0;
-+ return -1;
-+ }
-+
- *nextkey = c;
-
-***************
-*** 903,906 ****
---- 910,918 ----
- c = rl_read_key (); /* real command */
- RL_UNSETSTATE(RL_STATE_MOREINPUT);
-+ if (c < 0)
-+ {
-+ *nextkey = 0;
-+ return -1;
-+ }
- *nextkey = c;
- }
-***************
-*** 1225,1236 ****
- _rl_callback_generic_arg *data;
- {
- #if defined (HANDLE_MULTIBYTE)
-! _rl_vi_last_search_mblen = _rl_read_mbchar (_rl_vi_last_search_mbchar, MB_LEN_MAX);
- #else
- RL_SETSTATE(RL_STATE_MOREINPUT);
-! _rl_vi_last_search_char = rl_read_key ();
- RL_UNSETSTATE(RL_STATE_MOREINPUT);
- #endif
-
- _rl_callback_func = 0;
- _rl_want_redisplay = 1;
---- 1243,1262 ----
- _rl_callback_generic_arg *data;
- {
-+ int c;
- #if defined (HANDLE_MULTIBYTE)
-! c = _rl_vi_last_search_mblen = _rl_read_mbchar (_rl_vi_last_search_mbchar, MB_LEN_MAX);
- #else
- RL_SETSTATE(RL_STATE_MOREINPUT);
-! c = rl_read_key ();
- RL_UNSETSTATE(RL_STATE_MOREINPUT);
- #endif
-
-+ if (c <= 0)
-+ return -1;
-+
-+ #if !defined (HANDLE_MULTIBYTE)
-+ _rl_vi_last_search_char = c;
-+ #endif
-+
- _rl_callback_func = 0;
- _rl_want_redisplay = 1;
-***************
-*** 1248,1251 ****
---- 1274,1278 ----
- int count, key;
- {
-+ int c;
- #if defined (HANDLE_MULTIBYTE)
- static char *target;
-***************
-*** 1294,1302 ****
- {
- #if defined (HANDLE_MULTIBYTE)
-! _rl_vi_last_search_mblen = _rl_read_mbchar (_rl_vi_last_search_mbchar, MB_LEN_MAX);
- #else
- RL_SETSTATE(RL_STATE_MOREINPUT);
-! _rl_vi_last_search_char = rl_read_key ();
- RL_UNSETSTATE(RL_STATE_MOREINPUT);
- #endif
- }
---- 1321,1335 ----
- {
- #if defined (HANDLE_MULTIBYTE)
-! c = _rl_read_mbchar (_rl_vi_last_search_mbchar, MB_LEN_MAX);
-! if (c <= 0)
-! return -1;
-! _rl_vi_last_search_mblen = c;
- #else
- RL_SETSTATE(RL_STATE_MOREINPUT);
-! c = rl_read_key ();
- RL_UNSETSTATE(RL_STATE_MOREINPUT);
-+ if (c < 0)
-+ return -1;
-+ _rl_vi_last_search_char = c;
- #endif
- }
-***************
-*** 1468,1471 ****
---- 1501,1507 ----
- RL_UNSETSTATE(RL_STATE_MOREINPUT);
-
-+ if (c < 0)
-+ return -1;
-+
- #if defined (HANDLE_MULTIBYTE)
- if (MB_CUR_MAX > 1 && rl_byte_oriented == 0)
-***************
-*** 1486,1489 ****
---- 1522,1528 ----
- _rl_vi_last_replacement = c = _rl_vi_callback_getchar (mb, MB_LEN_MAX);
-
-+ if (c < 0)
-+ return -1;
-+
- _rl_callback_func = 0;
- _rl_want_redisplay = 1;
-***************
-*** 1517,1520 ****
---- 1556,1562 ----
- _rl_vi_last_replacement = c = _rl_vi_callback_getchar (mb, MB_LEN_MAX);
-
-+ if (c < 0)
-+ return -1;
-+
- return (_rl_vi_change_char (count, c, mb));
- }
-***************
-*** 1651,1655 ****
- RL_UNSETSTATE(RL_STATE_MOREINPUT);
-
-! if (ch < 'a' || ch > 'z')
- {
- rl_ding ();
---- 1693,1697 ----
- RL_UNSETSTATE(RL_STATE_MOREINPUT);
-
-! if (ch < 0 || ch < 'a' || ch > 'z') /* make test against 0 explicit */
- {
- rl_ding ();
-***************
-*** 1703,1707 ****
- return 0;
- }
-! else if (ch < 'a' || ch > 'z')
- {
- rl_ding ();
---- 1745,1749 ----
- return 0;
- }
-! else if (ch < 0 || ch < 'a' || ch > 'z') /* make test against 0 explicit */
- {
- rl_ding ();
+++ /dev/null
- READLINE PATCH REPORT
- =====================
-
-Readline-Release: 5.2
-Patch-ID: readline52-006
-
-Bug-Reported-by: Peter Volkov <torre_cremata@mail.ru>
-Bug-Reference-ID: <1178376645.9063.25.camel@localhost>
-Bug-Reference-URL: http://bugs.gentoo.org/177095
-
-Bug-Description:
-
-The readline display code miscalculated the screen position when performing
-a redisplay in which the new text occupies more screen space that the old,
-but takes fewer bytes to do so (e.g., when replacing a shorter string
-containing multibyte characters with a longer one containing only ASCII).
-
-Patch:
-
-*** ../readline-5.2/display.c Thu Apr 26 11:38:22 2007
---- display.c Thu Jul 12 23:10:10 2007
-***************
-*** 1519,1527 ****
- /* Non-zero if we're increasing the number of lines. */
- int gl = current_line >= _rl_vis_botlin && inv_botlin > _rl_vis_botlin;
- /* Sometimes it is cheaper to print the characters rather than
- use the terminal's capabilities. If we're growing the number
- of lines, make sure we actually cause the new line to wrap
- around on auto-wrapping terminals. */
-! if (_rl_terminal_can_insert && ((2 * col_temp) >= col_lendiff || _rl_term_IC) && (!_rl_term_autowrap || !gl))
- {
- /* If lendiff > prompt_visible_length and _rl_last_c_pos == 0 and
---- 1568,1596 ----
- /* Non-zero if we're increasing the number of lines. */
- int gl = current_line >= _rl_vis_botlin && inv_botlin > _rl_vis_botlin;
-+ /* If col_lendiff is > 0, implying that the new string takes up more
-+ screen real estate than the old, but lendiff is < 0, meaning that it
-+ takes fewer bytes, we need to just output the characters starting
-+ from the first difference. These will overwrite what is on the
-+ display, so there's no reason to do a smart update. This can really
-+ only happen in a multibyte environment. */
-+ if (lendiff < 0)
-+ {
-+ _rl_output_some_chars (nfd, temp);
-+ _rl_last_c_pos += _rl_col_width (nfd, 0, temp);
-+ /* If nfd begins before any invisible characters in the prompt,
-+ adjust _rl_last_c_pos to account for wrap_offset and set
-+ cpos_adjusted to let the caller know. */
-+ if (current_line == 0 && wrap_offset && ((nfd - new) <= prompt_last_invisible))
-+ {
-+ _rl_last_c_pos -= wrap_offset;
-+ cpos_adjusted = 1;
-+ }
-+ return;
-+ }
- /* Sometimes it is cheaper to print the characters rather than
- use the terminal's capabilities. If we're growing the number
- of lines, make sure we actually cause the new line to wrap
- around on auto-wrapping terminals. */
-! else if (_rl_terminal_can_insert && ((2 * col_temp) >= col_lendiff || _rl_term_IC) && (!_rl_term_autowrap || !gl))
- {
- /* If lendiff > prompt_visible_length and _rl_last_c_pos == 0 and
+++ /dev/null
- READLINE PATCH REPORT
- =====================
-
-Readline-Release: 5.2
-Patch-ID: readline52-007
-
-Bug-Reported-by: Tom Bjorkholm <tom.bjorkholm@ericsson.com>
-Bug-Reference-ID: <AEA1A32F001C6B4F98614B5B80D7647D01C075E9@esealmw115.eemea.ericsson.se>
-Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-readline/2007-04/msg00004.html
-
-
-Bug-Description:
-
-An off-by-one error in readline's input buffering caused readline to drop
-each 511th character of buffered input (e.g., when pasting a large amount
-of data into a terminal window).
-
-Patch:
-
-*** ../readline-5.2/input.c Wed Aug 16 15:15:16 2006
---- input.c Tue Jul 17 09:24:21 2007
-***************
-*** 134,139 ****
-
- *key = ibuffer[pop_index++];
-!
- if (pop_index >= ibuffer_len)
- pop_index = 0;
-
---- 134,142 ----
-
- *key = ibuffer[pop_index++];
-! #if 0
- if (pop_index >= ibuffer_len)
-+ #else
-+ if (pop_index > ibuffer_len)
-+ #endif
- pop_index = 0;
-
-***************
-*** 251,255 ****
- {
- k = (*rl_getc_function) (rl_instream);
-! rl_stuff_char (k);
- if (k == NEWLINE || k == RETURN)
- break;
---- 254,259 ----
- {
- k = (*rl_getc_function) (rl_instream);
-! if (rl_stuff_char (k) == 0)
-! break; /* some problem; no more room */
- if (k == NEWLINE || k == RETURN)
- break;
-***************
-*** 374,378 ****
---- 378,386 ----
- }
- ibuffer[push_index++] = key;
-+ #if 0
- if (push_index >= ibuffer_len)
-+ #else
-+ if (push_index > ibuffer_len)
-+ #endif
- push_index = 0;
-
+++ /dev/null
- READLINE PATCH REPORT
- =====================
-
-Readline-Release: 5.2
-Patch-ID: readline52-008
-
-Bug-Reported-by: dAniel hAhler <ubuntu@thequod.de>
-Bug-Reference-ID: <4702ED8A.5000503@thequod.de>
-Bug-Reference-URL: https://bugs.launchpad.net/ubuntu/+source/bash/+bug/119938
-
-Bug-Description:
-
-When updating the display after displaying, for instance, a list of possible
-completions, readline will place the cursor at the wrong position if the
-prompt contains invisible characters and a newline.
-
-Patch:
-
-*** ../readline-5.2-patched/display.c Mon Aug 6 14:26:29 2007
---- display.c Wed Oct 10 22:43:58 2007
-***************
-*** 1049,1053 ****
- else
- tx = nleft;
-! if (_rl_last_c_pos > tx)
- {
- _rl_backspace (_rl_last_c_pos - tx); /* XXX */
---- 1049,1053 ----
- else
- tx = nleft;
-! if (tx >= 0 && _rl_last_c_pos > tx)
- {
- _rl_backspace (_rl_last_c_pos - tx); /* XXX */
-***************
-*** 1205,1209 ****
- {
- register char *ofd, *ols, *oe, *nfd, *nls, *ne;
-! int temp, lendiff, wsatend, od, nd;
- int current_invis_chars;
- int col_lendiff, col_temp;
---- 1205,1209 ----
- {
- register char *ofd, *ols, *oe, *nfd, *nls, *ne;
-! int temp, lendiff, wsatend, od, nd, o_cpos;
- int current_invis_chars;
- int col_lendiff, col_temp;
-***************
-*** 1466,1469 ****
---- 1466,1471 ----
- }
-
-+ o_cpos = _rl_last_c_pos;
-+
- /* When this function returns, _rl_last_c_pos is correct, and an absolute
- cursor postion in multibyte mode, but a buffer index when not in a
-***************
-*** 1475,1479 ****
- invisible characters in the prompt string. Let's see if setting this when
- we make sure we're at the end of the drawn prompt string works. */
-! if (current_line == 0 && MB_CUR_MAX > 1 && rl_byte_oriented == 0 && _rl_last_c_pos == prompt_physical_chars)
- cpos_adjusted = 1;
- #endif
---- 1477,1483 ----
- invisible characters in the prompt string. Let's see if setting this when
- we make sure we're at the end of the drawn prompt string works. */
-! if (current_line == 0 && MB_CUR_MAX > 1 && rl_byte_oriented == 0 &&
-! (_rl_last_c_pos > 0 || o_cpos > 0) &&
-! _rl_last_c_pos == prompt_physical_chars)
- cpos_adjusted = 1;
- #endif
+++ /dev/null
- READLINE PATCH REPORT
- =====================
-
-Readline-Release: 5.2
-Patch-ID: readline52-009
-
-Bug-Reported-by: dAniel hAhler <ubuntu@thequod.de>
-Bug-Reference-ID:
-Bug-Reference-URL:
-
-Bug-Description:
-
-Under some circumstances, readline will incorrectly display a prompt string
-containing invisible characters after the final newline.
-
-Patch:
-
-*** ../readline-5.2-patched/display.c 2007-08-25 13:47:08.000000000 -0400
---- display.c 2007-11-10 17:51:29.000000000 -0500
-***************
-*** 392,396 ****
- local_prompt = expand_prompt (p, &prompt_visible_length,
- &prompt_last_invisible,
-! (int *)NULL,
- &prompt_physical_chars);
- c = *t; *t = '\0';
---- 420,424 ----
- local_prompt = expand_prompt (p, &prompt_visible_length,
- &prompt_last_invisible,
-! &prompt_invis_chars_first_line,
- &prompt_physical_chars);
- c = *t; *t = '\0';
-***************
-*** 399,403 ****
- local_prompt_prefix = expand_prompt (prompt, &prompt_prefix_length,
- (int *)NULL,
-! &prompt_invis_chars_first_line,
- (int *)NULL);
- *t = c;
---- 427,431 ----
- local_prompt_prefix = expand_prompt (prompt, &prompt_prefix_length,
- (int *)NULL,
-! (int *)NULL,
- (int *)NULL);
- *t = c;
+++ /dev/null
- READLINE PATCH REPORT
- =====================
-
-Readline-Release: 5.2
-Patch-ID: readline52-010
-
-Bug-Reported-by: Miroslav Lichvar <mlichvar@redhat.com>
-Bug-Reference-ID: Fri, 02 Nov 2007 14:07:45 +0100
-Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-readline/2007-11/msg00000.html
-
-Bug-Description:
-
-In certain cases when outputting characters at the end of the line,
-e.g., when displaying the prompt string, readline positions the cursor
-incorrectly if the prompt string contains invisible characters and the
-text being drawn begins before the last invisible character in the line.
-
-Patch:
-
-*** ../readline-5.2-patched/display.c 2007-08-25 13:47:08.000000000 -0400
---- display.c 2007-11-10 17:51:29.000000000 -0500
-***************
-*** 1566,1574 ****
- else
- {
-- /* We have horizontal scrolling and we are not inserting at
-- the end. We have invisible characters in this line. This
-- is a dumb update. */
- _rl_output_some_chars (nfd, temp);
- _rl_last_c_pos += col_temp;
- return;
- }
---- 1619,1632 ----
- else
- {
- _rl_output_some_chars (nfd, temp);
- _rl_last_c_pos += col_temp;
-+ /* If nfd begins before any invisible characters in the prompt,
-+ adjust _rl_last_c_pos to account for wrap_offset and set
-+ cpos_adjusted to let the caller know. */
-+ if (current_line == 0 && wrap_offset && ((nfd - new) <= prompt_last_invisible))
-+ {
-+ _rl_last_c_pos -= wrap_offset;
-+ cpos_adjusted = 1;
-+ }
- return;
- }
+++ /dev/null
- READLINE PATCH REPORT
- =====================
-
-Readline-Release: 5.2
-Patch-ID: readline52-011
-
-Bug-Reported-by: Uwe Doering <gemini@geminix.org>
-Bug-Reference-ID: <46F3DD72.2090801@geminix.org>
-Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2007-09/msg00102.html
-
-Bug-Description:
-
-There is an off-by-one error in the code that buffers characters received
-very quickly in succession, causing characters to be dropped.
-
-Patch:
-
-*** ../readline-5.2-patched/input.c 2007-08-25 13:47:10.000000000 -0400
---- input.c 2007-10-12 22:55:25.000000000 -0400
-***************
-*** 155,159 ****
- pop_index--;
- if (pop_index < 0)
-! pop_index = ibuffer_len - 1;
- ibuffer[pop_index] = key;
- return (1);
---- 155,159 ----
- pop_index--;
- if (pop_index < 0)
-! pop_index = ibuffer_len;
- ibuffer[pop_index] = key;
- return (1);
+++ /dev/null
- READLINE PATCH REPORT
- =====================
-
-Readline-Release: 5.2
-Patch-ID: readline52-012
-
-Bug-Reported-by: Chet Ramey <chet.ramey@case.edu>
-Bug-Reference-ID:
-Bug-Reference-URL:
-
-Bug-Description:
-
-This updates the options required to create shared libraries on several
-systems, including Mac OS X 10.5 (darwin9.x), FreeBSD, NetBSD, OpenBSD,
-AIX, and HP/UX.
-
-Patch:
-
-*** ../readline-5.2-patched/support/shobj-conf 2006-04-11 09:15:43.000000000 -0400
---- support/shobj-conf 2007-12-06 23:46:41.000000000 -0500
-***************
-*** 11,15 ****
- # chet@po.cwru.edu
-
-! # Copyright (C) 1996-2002 Free Software Foundation, Inc.
- #
- # This program is free software; you can redistribute it and/or modify
---- 11,15 ----
- # chet@po.cwru.edu
-
-! # Copyright (C) 1996-2007 Free Software Foundation, Inc.
- #
- # This program is free software; you can redistribute it and/or modify
-***************
-*** 115,119 ****
- ;;
-
-! freebsd2* | netbsd*)
- SHOBJ_CFLAGS=-fpic
- SHOBJ_LD=ld
---- 115,119 ----
- ;;
-
-! freebsd2*)
- SHOBJ_CFLAGS=-fpic
- SHOBJ_LD=ld
-***************
-*** 126,130 ****
- # FreeBSD-3.x ELF
- freebsd[3-9]*|freebsdelf[3-9]*|freebsdaout[3-9]*|dragonfly*)
-! SHOBJ_CFLAGS=-fpic
- SHOBJ_LD='${CC}'
-
---- 126,130 ----
- # FreeBSD-3.x ELF
- freebsd[3-9]*|freebsdelf[3-9]*|freebsdaout[3-9]*|dragonfly*)
-! SHOBJ_CFLAGS=-fPIC
- SHOBJ_LD='${CC}'
-
-***************
-*** 143,147 ****
-
- # Darwin/MacOS X
-! darwin8*)
- SHOBJ_STATUS=supported
- SHLIB_STATUS=supported
---- 143,147 ----
-
- # Darwin/MacOS X
-! darwin[89]*)
- SHOBJ_STATUS=supported
- SHLIB_STATUS=supported
-***************
-*** 154,158 ****
- SHLIB_LIBSUFF='dylib'
-
-! SHOBJ_LDFLAGS='-undefined dynamic_lookup'
- SHLIB_XLDFLAGS='-dynamiclib -arch_only `/usr/bin/arch` -install_name $(libdir)/$@ -current_version $(SHLIB_MAJOR)$(SHLIB_MINOR) -compatibility_version $(SHLIB_MAJOR) -v'
-
---- 154,158 ----
- SHLIB_LIBSUFF='dylib'
-
-! SHOBJ_LDFLAGS='-dynamiclib -dynamic -undefined dynamic_lookup -arch_only `/usr/bin/arch`'
- SHLIB_XLDFLAGS='-dynamiclib -arch_only `/usr/bin/arch` -install_name $(libdir)/$@ -current_version $(SHLIB_MAJOR)$(SHLIB_MINOR) -compatibility_version $(SHLIB_MAJOR) -v'
-
-***************
-*** 172,176 ****
-
- case "${host_os}" in
-! darwin[78]*) SHOBJ_LDFLAGS=''
- SHLIB_XLDFLAGS='-dynamiclib -arch_only `/usr/bin/arch` -install_name $(libdir)/$@ -current_version $(SHLIB_MAJOR)$(SHLIB_MINOR) -compatibility_version $(SHLIB_MAJOR) -v'
- ;;
---- 172,176 ----
-
- case "${host_os}" in
-! darwin[789]*) SHOBJ_LDFLAGS=''
- SHLIB_XLDFLAGS='-dynamiclib -arch_only `/usr/bin/arch` -install_name $(libdir)/$@ -current_version $(SHLIB_MAJOR)$(SHLIB_MINOR) -compatibility_version $(SHLIB_MAJOR) -v'
- ;;
-***************
-*** 183,187 ****
- ;;
-
-! openbsd*)
- SHOBJ_CFLAGS=-fPIC
- SHOBJ_LD='${CC}'
---- 183,187 ----
- ;;
-
-! openbsd*|netbsd*)
- SHOBJ_CFLAGS=-fPIC
- SHOBJ_LD='${CC}'
-***************
-*** 248,252 ****
- ;;
-
-! aix4.[2-9]*-*gcc*) # lightly tested by jik@cisco.com
- SHOBJ_CFLAGS=-fpic
- SHOBJ_LD='ld'
---- 248,252 ----
- ;;
-
-! aix4.[2-9]*-*gcc*|aix[5-9].*-*gcc*) # lightly tested by jik@cisco.com
- SHOBJ_CFLAGS=-fpic
- SHOBJ_LD='ld'
-***************
-*** 259,263 ****
- ;;
-
-! aix4.[2-9]*)
- SHOBJ_CFLAGS=-K
- SHOBJ_LD='ld'
---- 259,263 ----
- ;;
-
-! aix4.[2-9]*|aix[5-9].*)
- SHOBJ_CFLAGS=-K
- SHOBJ_LD='ld'
-***************
-*** 330,334 ****
- # if you have problems linking here, moving the `-Wl,+h,$@' from
- # SHLIB_XLDFLAGS to SHOBJ_LDFLAGS has been reported to work
-! SHOBJ_LDFLAGS='-shared -Wl,-b -Wl,+s'
-
- SHLIB_XLDFLAGS='-Wl,+h,$@ -Wl,+b,$(libdir)'
---- 330,334 ----
- # if you have problems linking here, moving the `-Wl,+h,$@' from
- # SHLIB_XLDFLAGS to SHOBJ_LDFLAGS has been reported to work
-! SHOBJ_LDFLAGS='-shared -fpic -Wl,-b -Wl,+s'
-
- SHLIB_XLDFLAGS='-Wl,+h,$@ -Wl,+b,$(libdir)'
+++ /dev/null
- READLINE PATCH REPORT
- =====================
-
-Readline-Release: 5.2
-Patch-ID: readline52-013
-
-Bug-Reported-by: slinkp <stuff@slinkp.com>
-Bug-Reference-ID: <da52a26a-9f38-4861-a918-14d3482b539d@c65g2000hsa.googlegroups.com>
-Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2008-05/msg00085.html
-
-Bug-Description:
-
-The presence of invisible characters in a prompt longer than the screenwidth
-with invisible characters on the first and last prompt lines caused readline
-to place the cursor in the wrong physical location.
-
-Patch:
-
-*** ../readline-5.2-patched/display.c 2007-12-14 21:12:40.000000000 -0500
---- display.c 2008-10-23 09:39:46.000000000 -0400
-***************
-*** 911,914 ****
---- 944,951 ----
- OFFSET (which has already been calculated above). */
-
-+ #define INVIS_FIRST() (prompt_physical_chars > _rl_screenwidth ? prompt_invis_chars_first_line : wrap_offset)
-+ #define WRAP_OFFSET(line, offset) ((line == 0) \
-+ ? (offset ? INVIS_FIRST() : 0) \
-+ : ((line == prompt_last_screen_line) ? wrap_offset-prompt_invis_chars_first_line : 0))
- #define W_OFFSET(line, offset) ((line) == 0 ? offset : 0)
- #define VIS_LLEN(l) ((l) > _rl_vis_botlin ? 0 : (vis_lbreaks[l+1] - vis_lbreaks[l]))
-***************
-*** 945,949 ****
- _rl_last_c_pos > wrap_offset &&
- o_cpos < prompt_last_invisible)
-! _rl_last_c_pos -= wrap_offset;
-
- /* If this is the line with the prompt, we might need to
---- 982,992 ----
- _rl_last_c_pos > wrap_offset &&
- o_cpos < prompt_last_invisible)
-! _rl_last_c_pos -= prompt_invis_chars_first_line; /* XXX - was wrap_offset */
-! else if (linenum == prompt_last_screen_line && prompt_physical_chars > _rl_screenwidth &&
-! (MB_CUR_MAX > 1 && rl_byte_oriented == 0) &&
-! cpos_adjusted == 0 &&
-! _rl_last_c_pos != o_cpos &&
-! _rl_last_c_pos > (prompt_last_invisible - _rl_screenwidth - prompt_invis_chars_first_line))
-! _rl_last_c_pos -= (wrap_offset-prompt_invis_chars_first_line);
-
- /* If this is the line with the prompt, we might need to
-***************
-*** 1205,1209 ****
- {
- register char *ofd, *ols, *oe, *nfd, *nls, *ne;
-! int temp, lendiff, wsatend, od, nd, o_cpos;
- int current_invis_chars;
- int col_lendiff, col_temp;
---- 1264,1268 ----
- {
- register char *ofd, *ols, *oe, *nfd, *nls, *ne;
-! int temp, lendiff, wsatend, od, nd, twidth, o_cpos;
- int current_invis_chars;
- int col_lendiff, col_temp;
-***************
-*** 1221,1225 ****
- temp = _rl_last_c_pos;
- else
-! temp = _rl_last_c_pos - W_OFFSET(_rl_last_v_pos, visible_wrap_offset);
- if (temp == _rl_screenwidth && _rl_term_autowrap && !_rl_horizontal_scroll_mode
- && _rl_last_v_pos == current_line - 1)
---- 1280,1284 ----
- temp = _rl_last_c_pos;
- else
-! temp = _rl_last_c_pos - WRAP_OFFSET (_rl_last_v_pos, visible_wrap_offset);
- if (temp == _rl_screenwidth && _rl_term_autowrap && !_rl_horizontal_scroll_mode
- && _rl_last_v_pos == current_line - 1)
-***************
-*** 1587,1599 ****
- {
- _rl_output_some_chars (nfd + lendiff, temp - lendiff);
-- #if 1
- /* XXX -- this bears closer inspection. Fixes a redisplay bug
- reported against bash-3.0-alpha by Andreas Schwab involving
- multibyte characters and prompt strings with invisible
- characters, but was previously disabled. */
-! _rl_last_c_pos += _rl_col_width (nfd+lendiff, 0, temp-col_lendiff);
-! #else
-! _rl_last_c_pos += _rl_col_width (nfd+lendiff, 0, temp-lendiff);
-! #endif
- }
- }
---- 1648,1660 ----
- {
- _rl_output_some_chars (nfd + lendiff, temp - lendiff);
- /* XXX -- this bears closer inspection. Fixes a redisplay bug
- reported against bash-3.0-alpha by Andreas Schwab involving
- multibyte characters and prompt strings with invisible
- characters, but was previously disabled. */
-! if (MB_CUR_MAX > 1 && rl_byte_oriented == 0)
-! twidth = _rl_col_width (nfd+lendiff, 0, temp-col_lendiff);
-! else
-! twidth = temp - lendiff;
-! _rl_last_c_pos += twidth;
- }
- }
-***************
-*** 1789,1793 ****
- int cpos, dpos; /* current and desired cursor positions */
-
-! woff = W_OFFSET (_rl_last_v_pos, wrap_offset);
- cpos = _rl_last_c_pos;
- #if defined (HANDLE_MULTIBYTE)
---- 1850,1854 ----
- int cpos, dpos; /* current and desired cursor positions */
-
-! woff = WRAP_OFFSET (_rl_last_v_pos, wrap_offset);
- cpos = _rl_last_c_pos;
- #if defined (HANDLE_MULTIBYTE)
-***************
-*** 1803,1807 ****
- prompt string, since they're both buffer indices and DPOS is a
- desired display position. */
-! if (new > prompt_last_invisible) /* XXX - don't use woff here */
- {
- dpos -= woff;
---- 1864,1872 ----
- prompt string, since they're both buffer indices and DPOS is a
- desired display position. */
-! if ((new > prompt_last_invisible) || /* XXX - don't use woff here */
-! (prompt_physical_chars > _rl_screenwidth &&
-! _rl_last_v_pos == prompt_last_screen_line &&
-! wrap_offset != woff &&
-! new > (prompt_last_invisible-_rl_screenwidth-wrap_offset)))
- {
- dpos -= woff;
+++ /dev/null
- READLINE PATCH REPORT
- =====================
-
-Readline-Release: 5.2
-Patch-ID: readline52-014
-
-Bug-Reported-by: Len Lattanzi <llattanzi@apple.com>
-Bug-Reference-ID: <52B1297F-6675-45CC-B63E-24745337D006@apple.com>
-Bug-Reference-URL:
-
-Bug-Description:
-
-On systems where mbrtowc() returns -2 when passed a length argument with
-value 0, when using a multibyte locale, Readline's emacs-mode forward-char
-at the end of a line will leave the point beyond the end of the line.
-
-Patch:
-
-*** ../readline-5.2-patched/mbutil.c 2009-05-29 23:09:26.000000000 -0400
---- mbutil.c 2009-05-29 23:10:12.000000000 -0400
-***************
-*** 78,82 ****
- int seed, count, find_non_zero;
- {
-! size_t tmp;
- mbstate_t ps;
- int point;
---- 78,82 ----
- int seed, count, find_non_zero;
- {
-! size_t tmp, len;
- mbstate_t ps;
- int point;
-***************
-*** 99,103 ****
- while (count > 0)
- {
-! tmp = mbrtowc (&wc, string+point, strlen(string + point), &ps);
- if (MB_INVALIDCH ((size_t)tmp))
- {
---- 99,106 ----
- while (count > 0)
- {
-! len = strlen (string + point);
-! if (len == 0)
-! break;
-! tmp = mbrtowc (&wc, string+point, len, &ps);
- if (MB_INVALIDCH ((size_t)tmp))
- {
--- /dev/null
+ READLINE PATCH REPORT
+ =====================
+
+Readline-Release: 8.0
+Patch-ID: readline80-001
+
+Bug-Reported-by: chet.ramey@case.edu
+Bug-Reference-ID:
+Bug-Reference-URL:
+
+Bug-Description:
+
+The history file reading code doesn't close the file descriptor open to
+the history file when it encounters a zero-length file.
+
+Patch (apply with `patch -p0'):
+
+*** ../readline-8.0-patched/histfile.c 2018-06-11 09:14:52.000000000 -0400
+--- histfile.c 2019-05-16 15:55:57.000000000 -0400
+***************
+*** 306,309 ****
+--- 312,316 ----
+ {
+ free (input);
++ close (file);
+ return 0; /* don't waste time if we don't have to */
+ }
+*** ../readline-8.0/patchlevel 2013-11-15 08:11:11.000000000 -0500
+--- patchlevel 2014-03-21 08:28:40.000000000 -0400
+***************
+*** 1,3 ****
+ # Do not edit -- exists only for use by patch
+
+! 0
+--- 1,3 ----
+ # Do not edit -- exists only for use by patch
+
+! 1
run_subdir ${rc_base}/init.d/networking/red.down/
-[ -e "/var/ipfire/ppp/nobeeps" ] || /etc/rc.d/init.d/beep down
-
[ -e "/var/ipfire/red/keepconnected" ] && \
/etc/rc.d/init.d/connectd reconnect &
fi
mv /tmp/hosts /etc/hosts
-[ -e "/var/ipfire/ppp/nobeeps" ] || /etc/rc.d/init.d/beep up
-
###############################################################################
# #
# IPFire.org - A linux based firewall #
-# Copyright (C) 2017-2018 Stephan Feddersen <sfeddersen@ipfire.org> #
+# Copyright (C) 2017-2019 Stephan Feddersen <sfeddersen@ipfire.org> #
# All Rights Reserved. #
# #
# This program is free software: you can redistribute it and/or modify #
# #
###############################################################################
#
-# Version: 2018/02/27 16:54:23
+# Version: 2019/11/08 14:35:23
#
# This wio.cgi is based on the Code from the IPCop WIO Addon
# and is extremly adapted to work with IPFire.
#
# Autor: Stephan Feddersen
# Co-Autor: Alexander Marx
-# Co-Autor: Frank Mainz
+# Co-Autor: Frank Mainz (for some Code for the IPCop WIO Addon)
#
use strict;
unless ( `ps -A | grep wio.pl` ) {
while ( $count < $wiosettings{'COUNT'} ) {
if ( defined($wiosettings{"USE$count"}) && $wiosettings{"USE$count"} eq 'on' ) {
- $wiosettings{'CLIENTID'} = $wiosettings{'CLIENTID$count'};
+ $wiosettings{'CLIENTID'} = $wiosettings{"CLIENTID$count"};
$wiosettings{'TIMESTAMP'} = $wiosettings{"TIMESTAMP$count"};
$wiosettings{'IPADR'} = $wiosettings{"IPADR$count"};
$wiosettings{'HOST'} = $wiosettings{"HOST$count"};
$wiosettings{'SENDEMAILOFF'} = $wiosettings{"SENDEMAILOFF$count"};
$wiosettings{'PINGMETHODE'} = $wiosettings{"PINGMETHODE$count"};
$wiosettings{'ONLINE'} = $wiosettings{"ONLINE$count"};
+ $wiosettings{'WEBINTERFACE'} = $wiosettings{"WEBINTERFACE$count"};
&validSave();
## show / hide arptable
if ( $wiosettings{'WIOGUISHOWARPTABLE'} eq 'arptable' ) {
- if ( $wiosettings{'ACTION'} eq $Lang::tr{'wio_show_table_off'} ) {
- $wiosettings{'WIOGUISHOWARPTABLE'} = 'off';
- $arpbuttontext = "$Lang::tr{'wio_show_table_on'}";
+ unless ( `ps -A | grep wio.pl` ) {
+ if ( $wiosettings{'ACTION'} eq $Lang::tr{'wio_show_table_off'} ) {
+ $wiosettings{'WIOGUISHOWARPTABLE'} = 'off';
+ $arpbuttontext = "$Lang::tr{'wio_show_table_on'}";
+ }
+ else {
+ $wiosettings{'WIOGUISHOWARPTABLE'} = 'on';
+ $arpbuttontext = "$Lang::tr{'wio_show_table_off'}";
+ }
}
else {
- $wiosettings{'WIOGUISHOWARPTABLE'} = 'on';
- $arpbuttontext = "$Lang::tr{'wio_show_table_off'}";
+ $infomessage = "$Lang::tr{'wio_error_function'}";
}
}
## show / hide clientimporttable
if ( $wiosettings{'WIOGUISHOWCLIENTIMPORTTABLE'} eq 'clientimport' ) {
- if ( $wiosettings{'ACTION'} eq $Lang::tr{'wio_show_table_off'} ) {
- $wiosettings{'WIOGUISHOWCLIENTIMPORTTABLE'} = 'off';
- $clientimportbuttontext = "$Lang::tr{'wio_show_table_on'}";
+ unless ( `ps -A | grep wio.pl` ) {
+ if ( $wiosettings{'ACTION'} eq $Lang::tr{'wio_show_table_off'} ) {
+ $wiosettings{'WIOGUISHOWCLIENTIMPORTTABLE'} = 'off';
+ $clientimportbuttontext = "$Lang::tr{'wio_show_table_on'}";
+ }
+ else {
+ $wiosettings{'WIOGUISHOWCLIENTIMPORTTABLE'} = 'on';
+ $clientimportbuttontext = "$Lang::tr{'wio_show_table_off'}";
+ }
}
else {
- $wiosettings{'WIOGUISHOWCLIENTIMPORTTABLE'} = 'on';
- $clientimportbuttontext = "$Lang::tr{'wio_show_table_off'}";
+ $infomessage = "$Lang::tr{'wio_error_function'}";
}
}
## show / hide networksearchtable
if ( $wiosettings{'WIOGUISHOWNETWORKSEARCHTABLE'} eq 'networksearch' ) {
- if ( $wiosettings{'ACTION'} eq $Lang::tr{'wio_show_table_off'} ) {
- $wiosettings{'WIOGUISHOWNETWORKSEARCHTABLE'} = 'off';
- $networksearchbuttontext = "$Lang::tr{'wio_show_table_on'}";
+ unless ( `ps -A | grep wio.pl` ) {
+ if ( $wiosettings{'ACTION'} eq $Lang::tr{'wio_show_table_off'} ) {
+ $wiosettings{'WIOGUISHOWNETWORKSEARCHTABLE'} = 'off';
+ $networksearchbuttontext = "$Lang::tr{'wio_show_table_on'}";
+ }
+ else {
+ $wiosettings{'WIOGUISHOWNETWORKSEARCHTABLE'} = 'on';
+ $networksearchbuttontext = "$Lang::tr{'wio_show_table_off'}";
+ }
}
else {
- $wiosettings{'WIOGUISHOWNETWORKSEARCHTABLE'} = 'on';
- $networksearchbuttontext = "$Lang::tr{'wio_show_table_off'}";
+ $infomessage = "$Lang::tr{'wio_error_function'}";
}
}
if ( $wiosettings{'ACTION'} eq $Lang::tr{'wio_refresh'} || $wiosettings{'ACTION'} eq $Lang::tr{'wio_sc_refresh'} ) {
+unless ( `ps -A | grep wio.pl` ) {
+
if ( $wiosettings{'ACTION'} eq $Lang::tr{'wio_sc_refresh'} ) {
open(FILE, "> $onoffip");
print FILE @current[$wiosettings{'ID'}];
undef($wiosettings{'ID'});
}
-unless ( `ps -A | grep wio.pl` ) {
-
&Header::showhttpheaders();
&Header::openpage($Lang::tr{'wio'}, 1, $refreshbox);
&Header::openbigbox('100%', 'left', '');
while ( system("/usr/local/bin/wiohelper", "&") ) {}
-exit 0;
+exit 0;
}
else {
$infomessage = "$Lang::tr{'wio_already_running'}";
$wiosettings{'HOST$count'} = gethostbyaddr(inet_aton($line[1]), AF_INET);
if ($wiosettings{'HOST$count'} eq '') { $wiosettings{'HOST$count'} = $line[1]; }
$wiosettings{'REMARK$count'} = '';
- $wiosettings{'WEBINTERFACE$count'} = '';
}
else {
$wiosettings{'HOST$count'} = $line[7];