diff --git a/0001-bits-change-bit_copy_chain.patch b/0001-bits-change-bit_copy_chain.patch deleted file mode 100644 index f327585..0000000 --- a/0001-bits-change-bit_copy_chain.patch +++ /dev/null @@ -1,81 +0,0 @@ -From bb97cadde05277f089b730a7aff4cffa4c9f8afa Mon Sep 17 00:00:00 2001 -From: Reini Urban -Date: Mon, 15 Aug 2022 10:23:08 +0200 -Subject: [PATCH] bits: change bit_copy_chain - -copy only the rest of the 2nd dat, not the whole. -and don't reset it to 0, keep its position. ---- - src/bits.c | 14 +++++++------- - src/encode.c | 5 ++++- - 2 files changed, 11 insertions(+), 8 deletions(-) - -diff --git a/src/bits.c b/src/bits.c -index a7a8ca98..4c9ca878 100644 ---- a/src/bits.c -+++ b/src/bits.c -@@ -3353,25 +3353,25 @@ bool does_cross_unicode_datversion (Bit_Chain *restrict dat) - return false; - } - --/* Copy the whole content of tmp_data to dat, and reset tmp_dat. -+/* Copy the rest content of tmp_data to dat. - WARN: This might change dat->chain */ - void bit_copy_chain (Bit_Chain *restrict dat, Bit_Chain *restrict tmp_dat) - { - unsigned long i; -- unsigned long dat_bits = bit_position (tmp_dat); -- unsigned long size = tmp_dat->byte; -+ unsigned long size = tmp_dat->size - tmp_dat->byte; - while (dat->byte + size > dat->size) - bit_chain_alloc (dat); - // check if dat is byte aligned, tmp_dat always is. we can use memcpy then. -- if (!dat->bit) -+ if (!dat->bit && !tmp_dat->bit) - { - assert(!tmp_dat->bit); -- memcpy (&dat->chain[dat->byte], &tmp_dat->chain[0], size); -+ memcpy (&dat->chain[dat->byte], &tmp_dat->chain[tmp_dat->byte], size); - dat->byte += size; - } - else - { -- bit_set_position (tmp_dat, 0); -+ unsigned long dat_bits = bit_position (tmp_dat); -+ //bit_set_position (tmp_dat, 0); - for (i = 0; i < size; i++) - { - bit_write_RC (dat, bit_read_RC (tmp_dat)); -@@ -3380,6 +3380,6 @@ void bit_copy_chain (Bit_Chain *restrict dat, Bit_Chain *restrict tmp_dat) - { - bit_write_B (dat, bit_read_B (tmp_dat)); - } -+ bit_set_position (tmp_dat, dat_bits); - } -- bit_set_position (tmp_dat, 0); - } -diff --git a/src/encode.c b/src/encode.c -index d533e1fa..d4a63e16 100644 ---- a/src/encode.c -+++ b/src/encode.c -@@ -846,13 +846,16 @@ obj_flush_hdlstream (Dwg_Object *restrict obj, Bit_Chain *restrict dat, - { - unsigned long datpos = bit_position (dat); - unsigned long hdlpos = bit_position (hdl_dat); -+ unsigned long hdlsize = (hdl_dat->size * 8) - hdlpos; - unsigned long objpos = obj->address * 8; - #if 0 - unsigned char* oldchain = dat->chain; - #endif -- LOG_TRACE ("Flush handle stream of size %lu (@%lu.%u) to @%lu.%lu\n", hdlpos, -+ LOG_TRACE ("Flush handle stream of %lu bits (@%lu.%u) to @%lu.%lu\n", hdlsize, - hdl_dat->byte, hdl_dat->bit, (datpos - objpos) / 8, - (datpos - objpos) % 8); -+ if (hdlpos > 10000U) -+ LOG_ERROR("Possible hdl_data overflow") - // This might change dat->chain - bit_copy_chain (dat, hdl_dat); - } --- -2.37.1 - diff --git a/0001-fix-obj_flush_hdlstream-GH-497.patch b/0001-fix-obj_flush_hdlstream-GH-497.patch deleted file mode 100644 index d49d4a7..0000000 --- a/0001-fix-obj_flush_hdlstream-GH-497.patch +++ /dev/null @@ -1,45 +0,0 @@ -From 2f36577e6ef6a32c81be48a6faac303f76f6f943 Mon Sep 17 00:00:00 2001 -From: Reini Urban -Date: Mon, 15 Aug 2022 11:06:14 +0200 -Subject: [PATCH] fix obj_flush_hdlstream GH #497 - -don't free non-temp hdl_dat chain, when it's the dat->chain really. -(on old DWG's) ---- - src/encode.c | 11 +++++++++-- - 1 file changed, 9 insertions(+), 2 deletions(-) - -diff --git a/src/encode.c b/src/encode.c -index d4a63e16..1b82dd2a 100644 ---- a/src/encode.c -+++ b/src/encode.c -@@ -823,9 +823,11 @@ const unsigned char unknown_section[53] - bit_chain_init_dat (&dat2, 12, dat); \ - hdl_dat = &dat2; \ - ENCODE_COMMON_HANDLES \ -+ bit_set_position (hdl_dat, 0); \ - obj_flush_hdlstream (obj, dat, hdl_dat); /* common */ \ - obj_flush_hdlstream (obj, dat, &dat1); /* special accumulated */ \ -- bit_chain_free (&dat1); \ -+ if (dat1.chain != dat->chain) \ -+ bit_chain_free (&dat1); \ - bit_chain_free (&dat2); \ - *hdl_dat = *dat; \ - hdl_dat = dat; \ -@@ -855,7 +857,12 @@ obj_flush_hdlstream (Dwg_Object *restrict obj, Bit_Chain *restrict dat, - hdl_dat->byte, hdl_dat->bit, (datpos - objpos) / 8, - (datpos - objpos) % 8); - if (hdlpos > 10000U) -- LOG_ERROR("Possible hdl_data overflow") -+ LOG_WARN("Possible hdl_data overflow") -+ if (dat->chain == hdl_dat->chain) -+ { -+ LOG_WARN("Ignore identical hdl chains") -+ return; -+ } - // This might change dat->chain - bit_copy_chain (dat, hdl_dat); - } --- -2.37.1 - diff --git a/libredwg-0.12.5.5907.tar.xz b/libredwg-0.12.5.5907.tar.xz new file mode 100644 index 0000000..514c156 --- /dev/null +++ b/libredwg-0.12.5.5907.tar.xz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:45e130182775716fd9ff6879fa61471ac3a9305b5d171fe97a66f2e3288a9711 +size 9957300 diff --git a/libredwg-0.12.5.tar.gz b/libredwg-0.12.5.tar.gz deleted file mode 100644 index ca8a3cf..0000000 --- a/libredwg-0.12.5.tar.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:4b5b38943e4a060bfee34a8542701b26102262610b1dd4dc58d76fadfb995106 -size 18389790 diff --git a/libredwg-0.12.5.tar.gz.sig b/libredwg-0.12.5.tar.gz.sig deleted file mode 100644 index ecefe8f..0000000 --- a/libredwg-0.12.5.tar.gz.sig +++ /dev/null @@ -1,11 +0,0 @@ ------BEGIN PGP SIGNATURE----- - -iQEzBAABCAAdFiEEKJWogdNCcPq/6PdHtPYzOeZdZBQFAmIANh0ACgkQtPYzOeZd -ZBQIfwf/a5K2Z0V5SpRhrCCARKJWnvOuTPC9asPMRqrwe3oXRcTPRS8VB1WZ4OmG -Y2EF2DNsbEjUrm+1/vheWonq1PbDVt5iwxeNXzzTsSNepHECuRz99dL0ZEUHyaHT -hF55GCv8PxUbyD9+TAKZl0yCH/IdLCEhdA8WuGxqYL6WC23B5qIzFkVbSPvw7KkO -47KNOnAHzhYTHbYHiaB+1h7Ikk00aZSIBbHsKvQUrV+Bkj6zNXr25lX/CQj2ykwy -2E6pRU21LH3DMD/RO4YY3FH/blF45YeoMp/0/j6qfuwmGGJ3r4mkAPZF2OXvH6VC -onccuXyA6/DVc+LYwhS8oGN5bdLzPw== -=Hcqb ------END PGP SIGNATURE----- diff --git a/libredwg.changes b/libredwg.changes index c658f20..4cc9134 100644 --- a/libredwg.changes +++ b/libredwg.changes @@ -1,3 +1,13 @@ +------------------------------------------------------------------- +Sat Jul 15 17:21:54 UTC 2023 - Jan Engelhardt + +- Update to tag 0.12.5.5907 + * Addressed CVE-2022-33025 [boo#1200898], + CVE-2023-36271 [boo#1212709], CVE-2023-36272 [boo#1212707], + CVE-2023-36273 [boo#1212706], CVE-2023-36274 [boo#1212705] +- Delete 0001-bits-change-bit_copy_chain.patch, + 0001-fix-obj_flush_hdlstream-GH-497.patch (merged) + ------------------------------------------------------------------- Fri Aug 19 15:13:22 UTC 2022 - Jan Engelhardt diff --git a/libredwg.keyring b/libredwg.keyring index d61d1f2..fbf4dfa 100644 --- a/libredwg.keyring +++ b/libredwg.keyring @@ -5,204 +5,203 @@ XD1PiCN6Jzor4wXXyhHS6CgAW182QjWDDiZbhS4tYv0LGglNhSOK5qWxEPhsJZaJ 0dAqNFWMwuVr577ILMSOa6ONT5PIzrfqC2pzooZI6oKtbWiNSYu/QOM9q31MNGb+ rTIOvXGl/WSZ+GHtzYBXktjLh08G1p6A6MGYsIw+03Z5vxT/dhIYwfU1tnvAR716 C/nH6V9q1ZfR77m6mshT7dQC5XzijArTKTsb9OYIt/Ix0rBFatjjXc5z6N2vxe/q -mF3uxnl+tWtuhq6qNWnHkcmEjujteEwbPaatABEBAAG0HVJlaW5pIFVyYmFuIDxy -dXJiYW5AY3Bhbi5vcmc+iQFUBBMBCAA+FiEEKJWogdNCcPq/6PdHtPYzOeZdZBQF -AlsihMYCGwMFCQPCZ1gFCwkIBwIGFQoJCAsCBBYCAwECHgECF4AACgkQtPYzOeZd -ZBQGkwf/TRanzGhwSgBkmYd1Ov8PHYl+DT/GtGpwtP2WSluNFuzXE7N1bpI4+y+B -tPclOgb35MyPr5uXXT/JsUjOiN2vgeh5gqjwRNtMM9xbRJb0570h0IpHIOKQJ1O7 -yjWOSYL0wfFr8kHg0pOiNzk7EO87+YbLZ4WpiL0cFYUXHL4lVlLtVVr9b/hzKyEF -V0luMJAH0DTR+tFKzOPj47UsAhxTW3icLTCUzrdpcEX7yvbWf4DTmRtzuCoc5HWm -lJf2WFx6iIUluPbp6HzAZl4TVd7EjftnWMYtSjaqzUbmeJq3IEuoOB6ryNbdUJi9 -B1lwlatYrLNNcYTw4plyVkdHn0+yO4hdBBARAgAdFiEEWR4YVHC+fFfM9FFtmm2S -Yo/9yUIFAlsihPsACgkQmm2SYo/9yUIQzgCfXqm9SPPtEzBgx5u/mtNIWkCmPP8A -n1B7f/5j7U2fblCN5hJaWpHu8F0ytCNSZWluaSBVcmJhbiA8cmVpbmkudXJiYW5A -Z21haWwuY29tPokBVAQTAQgAPgIbAwULCQgHAgYVCgkICwIEFgIDAQIeAQIXgBYh -BCiVqIHTQnD6v+j3R7T2MznmXWQUBQJbIoSpBQkDwmdYAAoJELT2MznmXWQU5NkH -/1sK4ImlnaqALwloKTeu6CCnLk1YkJ0Skr9LDDqXN8SwiwxASnDPR8mEBRVU+EM0 -TOg34+Ca/wfIqAJ0pv02b+bUirmRFHz6C7woW1RLfXDpOFHjB6S9BH3d7U7akXaK -yBouF25HmYM02lZeP27Gk84DtLkXBbP7fwHEqdhYyGgA2zbn1k5obeGqur67zM4N -RHS1KFX9zqgGpL868QrA22ITzecZxKmPPtk7W7ME/e8phb9p7W8eFOxFibaD3m02 -90lyWEUws1+39anK45I5noytR0CQlg4J/OaODUsUaLsNTbEg0cjdhmwAiSjgZPla -+wS2amfkr8Xh9nZBrv8PUEWIXQQQEQIAHRYhBFkeGFRwvnxXzPRRbZptkmKP/clC -BQJbIoT7AAoJEJptkmKP/clCqxwAnjbuzq4zk8ZH1F5uXnZmlEFeMDRTAKCDEvwy -j2WO41y3/5MV6e1NFhJQftHc7dzrARAAAQEAAAAAAAAAAAAAAAD/2P/gABBKRklG -AAEBAQBIAEgAAP/bAEMACAYGBwYFCAcHBwkJCAoMFA0MCwsMGRITDxQdGh8eHRoc -HCAkLicgIiwjHBwoNyksMDE0NDQfJzk9ODI8LjM0Mv/bAEMBCQkJDAsMGA0NGDIh -HCEyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIy -MjIyMv/AABEIAKAApgMBIgACEQEDEQH/xAAcAAABBQEBAQAAAAAAAAAAAAAGAAIE -BQcDAQj/xAA7EAACAQIFAgQFAQYGAQUAAAABAgMEEQAFEiExQVEGEyJhFDJxgZGh -FSNCUtHwJDOxweHxggc0YpKi/8QAGgEAAgMBAQAAAAAAAAAAAAAAAgMBBAUABv/E -ACQRAAIDAAICAgIDAQAAAAAAAAABAgMRITEEEhMiBTMUQVFx/9oADAMBAAIRAxEA -PwAkO3XHl9gTycOPHOEP72xsaYR6u5sRe/vjppV0KuBpIsdgbY53t/1h1tSFbkXB -Fx0wL5WMlcApneWmhnfOmgSeioYmCK0g0LMSNKlSRqIuTYC5NrnsO5ZUyy0ZNZTx -PQKJHHmC4AYXNxze2w7W9saDNllF5jieE1OuYSPG7A6bXOux/lWwH0IHOKrPssoV -oKlI1gpqScrFUSxLdxY8242IAsN2LHba+MW7w8k5I0YXbFIj5zST5nSU080xSnqJ -AzyhgHSIgeqQbbXHJuB6T3GLuoymsgy5P2OVhaOPebQBLLaxU2tySoHQWJ72FB4J -8OKKo1000kriMQtFKPlYEEgg/wAOwIB5tcbWwUZxnT0fkqpiVZmIDvsD2t3vxsLf -pcoU1qtykEnL3yJnuZ5FVzUhzcx1kcafuCszXfzg2/QbaSeL79cRMtqKryzRMsUc -QMkkksK2kkJtZdV91uOfrgjzeSRPhaPNKj4WOMSNDLLrKBmuS1yNRFzbVb2wGjOq -mPMjFA6GkdArrYMXW2/PBNtrcWGM9w3cNCMOOQgh+InqEpZo4pnDeY8kTCZnbpe1 -+p4JsLk4soctpo4TJVBoBG3mRs8raV91XSV9u2w5vgWi8XVVHRS09JFCiy2taPcE -X3vzc33+2Ko59mLTvJUSPIpva6g2/wCMB8LGJJGh0S5dSUTCSjWvCJ5dMSShiB1E -mw2Nma5YEngAYoayPMPENQ0WX0ayFGWNBGfk3a7SE8lrG5JAFuMQ6DPphS6EPokv -ZLn0nuPx+uL6kpozTiroaiysbTwq5DN1uRcXBuLb7X364BxaZEo/4QqOhZY4aCvj -cmijdnppHFpJAxb92b2CkL6mHTe/GK3N8xaDLpmpquT4guYXjAXyhAVVvR/L6yRt -xb74uafP3WprFzPTNQmQS1FNpI82wChA1gdhfbYNYg7NuKZ5VQ5nmhemoRS07AiO -JWPy8bn6/npg4x16xDWENEmNU6wKDI5LbPcm4vYm+x5xKyhKedpJp5HjJnRXeNST -Eh+d9h22A7nEeipappRSRLFG08ZfzpTpVEW92v0Fxz3sOuC7I/KjyeogDfEI5jLx -BQjFUN9LW6l5CATfgHB2S9UQP/YuX+Is2nlgWpemEhjhenhOlNgEJUC92tve29zg -Xr8vr8szGogrwsUsUnlOoYEoT0AB7f8AfGDLK6SvrRJD4ZRqOdJBNUSVDlUiABKK -hHN99+SQSbDbFbNSVdVK1fmVfarliXW73L22KtqI+osOLYSp52zkVFWuZZVT03k1 -FUpCXQy+kaH3GlT30i/098LFzleWZ3nzStl0sjRwaYEZprEqotYC63tcXIsNxthY -n5CTRLXwjcjc49BH/GFbfYfnHrsPPnlrdcPW3bfHgseRh1hfnbEMk51IiKapZWQX -soDcnoAOpJtx1FrEEjFTFmdL5s+XLGkkiq4vJA0ihQfluLk7k7W2Dc3XF4tmVlIB -BG4tz/e+INTlk5l82gqVopFXeZEDMQBsDfYgAEffpivdFtaizTLnCqGb5e1Oa4lU -aaPQ8YsNYLarMevJ3AF/zgOz/PqSWpmeBXlYhfLklYsYhtdr/wAx3+gFh3w6vaWs -o6qukjYehGkkVVsgFlVR2/jNu9sRfDvhuozymFVKiRUoeym3qmdmCqPpc8jixxj2 -W6+ejcpoUf8ApX09HmOfVD/D+fV+WNUjEk37nc7fTnBJReAMyaNJZV8kEHpyMa/k -PhqiyehWmpYkVdI1yW3kI2ufrviXV04+VdIPYdcVZzlmou1whuMyA+B5oYVIiD6h -cNrAAxBrfDs6kCWjJjFtRjs+32ONUqn8kspJuBut8CVfm0UVQY5C8ZfgqpOr+uEx -um2WJUwwzWfLHpEmCHWiglSR8p+n4x2Gcrl81ODF5tO8WuZHIOs3IBUjcbC31BwW -5pUUUuXyCaDSzOHkkYWZrAhQB1UXJN+SR2xl2YsRKVW+lSVHvi3Wvfso3JR6CmbN -opIJpacLJFKnlksbvCp5t04P93xTR07RksDqL7pZtx06/f23xQx1EkbkqxGrYjuM -X+RyR1sscLMqte2/B+uDnX6LUU5PQ4NJLT+DZ6GFaSsiqf8AF/GJcaUjYRhFLC27 -KTYdCdrjAt8fW0uWfB6GRGBs+mwezXBU+1umDzIqGjpaGqWvaZqJ1EktMrJtzY2Y -gqNn7c3uMA9OanOqwoQ7RopYolzGqg3I/wDivXFVTUuQRuW55VxOglmqUo9QEqKT -6kuCVPe/q297dcFNLTUOYZFJnFZWss0dR6YwhYkORcMCbCxJt3tiLX0uVzK+X0dO -lLUaVQtGQ6SuVFgzE+g3AuTxbAy8dTlytC7FqOSRTII9tbBbjbY7X54OIcVPo4Jq -zxU9DVSLkS/s2luNYgb95I9uWbrb8YWKPK0p2rBJmVG/wxgsqxnfUCLH/Xb3GFiM -ijjY+nvhG+r2tj0gd8e2PfHrjAPOn9cIE9P9MegdScLr3xBI9b8knEPPJfJyuS9g -DcEXsDYEhfoSFB9icTUAvip8WyiHwtVdC5jQfXWP9gcLu4rkPoW2Iz5s5np6bOcv -f1R1gIJI6ldyPffB/wCHmolqfDlHTyCSBX1grwSIW0/k+YT74B3jps3rEhp1AZIg -H9yifMPpYH84IPA+XKczyiZAyJTPK1Q/Ci8f7sfUamH0GPOTPUQX14NiqpFWBQq6 -Qeg/v2xE8vUNRI44xHq8ypFQLqbm1/f+zitlz5FAEIFnX0k87YTOesZXU1yQ83BF -QzkjgAb4D83jD/vZQQBsoHN+98Tc1r5pqxZJKoRQixI6kjsPviHVywtT6jPFckkK -3J98DGL3R7kswDMzeoYkvIWU7Fm5P1wOVtIJIWcHfoMFmZVEMsRR1Ia+zKdvxiik -UhdJtxzi7W8KNq0EmGhrEb3xIpahqaojmW942DbEi9jfkcfXDq6LRObdTiMDZxvi -yuY8lNrGbbmdZla0vx8ED5tBNSRlIWJiSliO1m0nckk+o8kEe+I2UweHKWkgqaqu -hNNIrzJTtL++jdL/AOZpIBvay9eOMCnhrMqysyyLI1eSSkFUszwps0l9gLnptwdg -SDgkqIIpsvaqqKKSJbBKdUS4QBgBY2ubbgX3Nr9cZdiUG0QcJ4aqtpFndY6WiaqJ -qVSntLsL2WwuV0g2HS25xAfJK1ql5ZKZj5USkaRdiGvyCTx26Yu5IqWsofPpFdoz -HYtLOQXlI9RtYEgC99+Ld7Y9oVpnLSGLTLU3igaos3p3AkXgEXuLXtcXJGmxD2f9 -E4Q2rSFaRJzAVIjVX2Yi1z8oJ22ve3I68LE5qCuE1qVZ3iKjyzFFK2tBsHugvpO9 -iebewwsDjODkAXIwiLnbCtj0gY9mYB4Btfrj0E48sb3OHDYYggcu/wDTA74+dI/C -js53FTFYd7kg/oTgjXkDrgM/9UPNHhui8tW0isBkIHAEbWv+fzbCr/1sseN+xANk -1VUU2cxyxKshiOhkPDIbhh9740rw8Y6XIaJWcR2nlnlZm+bUpVT/APVlH274EfCW -SUVXSHN6vOKelCy+VHT6dUkhABuovwQbDbbnFx4gX9nZlNRQwmdjGXRI/wCAbm5A -JIAuR0vYY87cteHqaHi0l514jWWraOBbxxn0sX5III7e+HfsbPJsoizcVRjLLdKd -10sL8Ag8E4pMo8K+Ip81p6tIXjlRxKnnLpjFiDuOSo/XB54j+IpfCDSNmNRLKLqh -QiMN/wCKi3fC/RIb8kmZXmU9RQ1BWpQmtKq580cAi4IF+2+IUVfV1IYlSwvYsTbF -zlsmUVTuubQSM8jKHl1FWj6H7WtgqpPCPh4Wnjr6iSEi6q0dzbvcW74dqQlxlJ6g -Xp2yH9lGprVzM1ULgTJCqaSDfT6tubf/AJOKyvfK5p2NJTVkVPwqzOrPwObf84Oc -yyvJHpVoIZ3giR9aqV063IHrYnk9OwHHOAnOcuXL6jRHMJVO4briYyTBcGuQXzhK -QW0xVGr3Yf0xSxxNLJoVTv1wQZjGJgvGrFfT/uvTezX3xZi+CrKPJIyyWrySqSsW -zaWAKjrg+pqv46NZjRGmpp3DAxuQoFgoJPXg/rgDmbyo5WYGx0+kdTfBFlmbxVax -xLUtHPGoQLKxBAG5Fr27/rir5EPZbgLWF22YIwFPLSJHCz6jMYmQoLg6dVja/wB9 -+b8YjpFLSBpIQfLWIoSKtZI+bsoFr2PqsNvfEpJJVpG+DeRpJI1+IQoRoNzoAJsG -JFzx164gPHPV/Dx1WsxKxTzgwbS1wGCj+Ig9vbfFVIginM696jz6WtqVqCg82SN2 -RjcAjcEErt3ttthYatVEtM7rJKkwkCRkGwaOx5HINwP1wsGQbDbbnC52w4A4XTfH -q9MEaOuPRsOBfCNxj3k82OO049AJI3xDrpqGekqaOt8toZEKSBiLAHpzyCL7bi2J -gsT9TbjHOWKNf3qQRNUGyo5jBIJPfsL3+2BmtQUOHplmT5DU0viykozK0K+YCnmL -qLIQTfSRuLDe/wBxjWstmhytZYazLSrxR+YHiHmfFHk2J3vsDZrWv2FwIZzRtQ+I -oM2iMzSRyxNOebi5RmPbYgWHt9iqozUU9MVFmU32bhsed8tOFuHq/DyyrR+d+Klp -qaylPNncJHGhuWJNtz2uRjtntTl1DkKxPKqrTKPSBxtYf374DciyyDxBnc1dUBoa -elYMojOn1bG/W3Q4pfFtBN8dKKLMXrRJIdEUg9VrdCNjb/bCoPR8oqPQMV1bJVVs -ssUjKrMXCk7fU40/L8ukqMgo65cxZFnp0lAaJW5A2BB74xDy5I52DiTVezDfkY0b -wl4gqJ8oqMoYxsY0MlPrawHHov2ubj6n2w+yCxYJrs+z0rs6q546l4jOswU2LqLD -74pHkeS2ti1u5w+ZiZnMt9dzsx69cRpZrAgdMTFLAJy1nky7Da+KmoQNUsIwQQbE -8YsEmLRE9e1sc4oTKGaU6VXdien9MMiJkVtc7CljAYggi2/b/vFllNVLWqkVQY7h -hpkKAuDe/wA3/BxTVNUk1UCg/dL6VHcd8X3hhqGAt8SXDMwKAR6thv8ArYb++Js4 -gJfYdUCx0dDHUTUgnL1KqiFGNgAT7djbng82xWV8ERWKRdXwqEhTsAbkmxG/Nge/ -PTi0/aCyQCp8yWSoeeNiskmgrcFSw/h34B6ddhhksdHMhpKWAxULyCdIgRq1WsOT -uQpI6ce+M4gHIhUSsWjQMxuTHc2QX2wsTTSQRRl2ppZZm0siFytkYXvbk8DcbYWC -ONb69vvjz8/XDrDj9bYW17nHqTCPAMejC2x6FGOOwQUddsOKeYmjUQdiCvIINxb7 -4QG2OsaFrbXv22xzCSKmoaNq0CqCJEkQM7N8lgbgcd7bex7YqPha6uoo5CNMjEjS -5vtqNgbcHTyOm+CcZfRatc0NOu/mtrsPltdvYC4F+mIOvR+9SlWKkNUYYXv6nugb -UR/CCdVup2uN8Y35CG/Y3fxlvr9X0UT5gPD+UpSs+mVmZnbY8tbf7HFJSZpmEVUf -h/Ds1a5YlWZGurcja3Tb7HBxPldBnlZDVSQiYQjcHgnpcfW+I2eUdQ4ZKZamF2JZ -5YWtqvsRf7D8Yza589GzKJmudZJn8wkr63K0o1la+hiFJNjuFBv+bYHaeaopZCV9 -Nhp2H9cafJ4Qr5ad6irZ3Yn0CpcsTbqCTtgcqfCFc8ElQrxskZINxax22xbU10yp -Ot9lE8rVB1ysS/8ArjgyEXB374dIj07GKUaZFO6nCjvfUbcXtgxBGICxv022xT1V -bU1GqJ5D5dxdQP8AXvi5kBaJr8twPbFDVL5VSU6L3wyAuw5wU7PKFAtjR6TJ3oqW -CtSANBYIkiWa7Dktbjnj23xCyLKsuXw58RIk0+YzqZEeJh5cKi9xIvS1r6uLHnEu -mqGiSopWnhZI3Loyy6UvxcEbG97H7/XCLp68Qk6t5cwWmhqx8wYsU9B7X25vfvbV -9ce1NdNluZ19FLTwo7S3JDG4vew1b3+YG3XTz0xLpqmopBXVNXNGpYsIzTsrEyiy -lgWv6bm+32txgWr1gl8oLqDHUTqHudwOhOFRimcS8xzFJoEWFFIYgldOkqVBBFxa -9if+8LFLJPTnQERVCi1+46b/AGwsH6IHT6EN7b4WHbkWx7Y49AYwzcYfY7Ab48Fx -hw+n6Y7ThpZUiaSQhUVdTEmwAAuTjjBn9AsBMU8cjMC2pbhEXULayRZWsQdJ3JBF -u/aaY01O0yxNIy2OlFJvv3Gw63J2A3PGAh5MsppKymy6OaqoqiWOmWoltKskoVtk -OxaxZLHjUt7jFPyrXHotUVqXLLXPfE9PmKpFSVCLTAOJXaBtaNqCAAMeqliLC4I3 -wOT181aI6rUptOwhmkmCyEC7XYW4LMpBuQCSOuKCrVDPMivGop181ojKT5xLbqHH -Fge/Ck84uMteSvymolqMvRKKmRSGjksIUHqbRck2K6d7WJHfGXJyn2aEEo9Brlef -U8FlkQJLpHmKNr22B7EE8HF3J4noY6dG8wI7j0pa++Mjo5ZJsw+GIZi11ia25UX3 -v9j0644Va5lTKnmJKf4kOk7+/wDffCVWkzTja2g6zbxhGYiB6g7EFma1tjv9+Le2 -BWv8T1JphDFMEjAGsDffrgekmvG5kYh7bKATe/TfFdJUuxZTHrVtrG979wcOjWkD -K1vg6VExqqsFbbjp374kmLy4xq3a2+OdJAkCavmc9e2OszixJ68YYJITW17/AGF8 -cIsirswrGmSmkMBlCeeykJq5tfvboN8dtOqTURfsMG2Q+MVoMiiymaGB4klfW8qj -/KYXsDe9wx6DjggjE7gufJ0p/DlVlXh9bQ07Qh5BIpfy5SBH5i322GxO1r8dcUCZ -o9HI3wqq66yzSFQSSRYAGxvtf74IctzOtkjmjnrIKimlVZTHsXJUmwuQfV3346nj -FT+zirLWQpFPS0dR/wC3kFw6Gx37g2Kkjr+DWfYgq0pzUzvEKiKmdlYgsSAQFJIu -d2JsFHcnHCso5MvgMVZSV1LmIcK8UsNh5ZX5rncEt+l9+hIM6y2Keuijy6kWgh8r -0s5YsSlxqYEaiWZbDbpuOuJC01ZXSUKz08xSKEM4lmuREb7776NRO/I3vwMEnhwD -UkjRSvLDErsw3V01Af0wsWVVTSTSzVApp2p2mZVkjT0XB+W+wv7c4WGqXB2G7Y9v -YHnHvtfHvC89cbemOMHGHBefcbY8uL9ceq2k4hslE2np0dWSRVZJFswcAggixBHb -vjN/E9VBCs+XiPMKMQINUN4jBFdtaqLWuCCdhsNIvxjQ4ZV6m2GTwUNTUwVE1PFJ -PCD5chXgFWUj3FmO2KV1bmW6pqKMbrKyPMc8jqK+cGlVUNpBraSIvuNKEAEKWfSD -sFtg98CmOSoq6eHKnbKTAYHq55AzTSAgkW2AQhrAAbEb2OCCrhy2rjlgqaKCSOZA -jgxi5ANxuN+dx74Zk9JQZUTBldOyFwo0KzMQFva3NvmO2EKpxHfKn0D+Z+GZMnzn -K67LIKispIvLinWSXWYVBADrvqO3NrgWPc4ss0y5aotKw0AAavSGH6G4+uLrMKue -DM6XK9CrVTwtUyBt/JhBC3PQsWIAHAsT0tiA0bJGBGxUrtsRv/t26YzvMn6z4Nnw -Y7B+wC5tkJo1EoUSRPvqG+/vgcq8vIYMq2GNYmj+Lp3jbShMfytwTt24OAmvhamV -4pDtci7A7ffHUW+y5DtrS6A54gnPOIzm59XTFhWIIz6fV7jFdoJJv16YtoqyOd9r -8AYiTMGFrc+2Jcm1xvbHCly+WvqvKQERqfW56DBpC58It/DRlpqZqgWP7y8eoXH/ -AD1/GCM1/wARSindS6h2KozAIgYG4AttuSdrbG3viuSJIoliQAIgstsJFJe4vfvi -HWmyu2e1M08dRHUTxTNCjmPUzEO+5/iubGxHf9cWFHUxE0M2czAUbuhjkqWuFszD -sSQNJBHBNr7b44xu6gjvsdsTHneso4KOf1wU5JgWwvFfc6T9entiP4+9Aex38O5h -mGQ5lmMWRwVFZB5rC1I7MGW/pY/MOBzYc/TCxwqKOhrZUlL1FEwjVQaUkkgbb3N+ -g69MLAOiaJ90aVbHhAB3A/GH25w1iQQTjb0yxjE4YW98Jz6b36f0xHd7AA/jHMg6 -tJ3Jxyaba9x7k47UWW1uaNakgJS/+a9wg+/X7XwW5X4XpaHTNUN8VOo+Zh6R9B/u -b4VKSQ2FcpFFlXh6rzICacNT0x4LL63HsOg+uDKiy2loIfLp4QoPLXuzfU8nDqmq -SkiDtclmCIo5Yk2GO6g6QDseT7HCHLS5GCigE8YZZV0/izKPEFOmuDy3oayw3RX3 -R/oGAH3xXbqJGADC556+/wCuNMZQVINrHFHX+GqSqcyRaoJD/Lx+MZ/l+K7H7RNH -xfJUF6yANC6ytIGB/ht9hgX8RLJICWZCNRNgeMH1f4TzQBvKaCfm2l/LJP0It364 -Bs+8O+IKbVVS0L+SlgCGVrkmwAANySSLWBPGKlNM4S+yLll9clwwOqUYjdbEbEAc -Yq2ddRscHWZ5NU5HkgkroVWol9ciBtTQKNgrkbA9e2AbLiHr5ZEVGQAG17236Y0I -IpTkjtT5XLUkPKTFF78nF1FSx08AjiQInt/r74lRBCOdzzhpjLsWOwHAw2KKsptk -ci5C7ge/XHRFAFrC+OoQcnfHoG/tg0heniJq2xJjUqTfHKMC+J6xq29rG2GIBjNP -sThY7xodO3GFgsBCOq8RtR5Oa+agd/LneCdIm/yiGIB3+a9vsR+fZ/EmVin+Jhqo -ZYlmSOUo1ygN9/fofp2xmwzeaDMJHkYSQyOZJIpDZXe+oEjrufbi2Jnhzw5mfjDx -FGtJemVApnqEFhChvew/mPqAHucJXkN8IhUf6GENZmHimoSi8MRJMpLLU1kh0xwL -fYgjclhuAN7c2xpNF4TooWElTepkvfS2yD6Dr974n5HkdB4eyqDLsugWKnhWwtyx -6lj1J5JxYsR2wz3l/YcaoxGBVjQKoAUbADphFhe3UjcYjV9fHQUT1MhuBZUX+Zib -Ko+pIxW5zm0eReHazMKuT1Qx3cj+Y9B+bD7YBsckcqSp/bHiubSdVNli2HYyv/uF -B+zg4JOm2B3wXlc+W5Aj1qaa+sc1VSOqu3C/+K6V+2CLjHR6Ol2eG+GsdIJbYDk4 -ZU1UVNE0ksgQDqcUMddWZ3P/AISHy6Rb/vHPzH2GIlL14R2aWbVtI76AC78elcCf -jOqp6OvyNp6gU8Aqi8zicqYAUIElrfLf0ccybb2td1dUuVqYaaGWtzBhZUjX5exJ -tZR74j5P4VjjE9Zm9qzMKoETGU61VeNIHFt+w5wvmQXCKzPocsTw9NTCkjWnzFTG -6SRsXkHcknVtzvvsLcjGUVXgWr8P09HHLIs1TOt1p44z5o2v6lH32Ha+NWziDIfC -rrVxxyVOZafLpo55Xm8r2RWJ0/2MTfDPh+ajd87zhjJmkwIVWN/JU/wjuTtc+1u9 -4XHBO8GTQ+H80ELf4OZHtc610kr9DviM/putjtsL7Y2ivyyaokepjGuRuitv+Dxj -MvEGVTU0xaWCSI3PqYWHPH1wcXyC0UO9iBYbYcq7e2G2YCxGn/fD1vp3w0U+BADp -idC4+2Iacjvjuj8g4JAsnAX4B/OFhQHUg4vhYkg//9mJAVQEEwEIAD4WIQQolaiB -00Jw+r/o90e09jM55l1kFAUCWyKFuAIbAwUJA8JnWAULCQgHAgYVCgkICwIEFgID -AQIeAQIXgAAKCRC09jM55l1kFFgwCADBzsM3e1n8AYUNXQbvg1/fVtqGjO5NwEAr -OVT+rHGbnzcApc/367oMKvVq81gQWHvnJP+MRCn6txmfj53v/GHXd9LT5MXmEswu -mvqwAMZYkLTXaPq/1nvEvzjrK5oQZyAo0bTcwSjhS3GXOe1y+d/7HmOcEZVOWYqA -pNwR8bpn+4DXMOIlLEK6fbuHnXKDnjR7VssfyQ7GiNFnqLxHNYOaoLVEDAGu7fm/ -3LWP5x+IaFiLJrvFF9tkRvPb2kK4B7l8Dm7SCmEpV9bw5QBs7HxBHl1kLuF4khGc -XsexiSDJjk4hryYz8bqTzOx5JeVX7jvKo8DCi5obd6cHH2d/NwQ0uQENBFsihFEB -CADjukHn7HCCHt9JkoMDREyV6sluVfTUsympiqoxr1KONsnjAmNwTcT7Zu6c6ogo -CNmlzI8vZdW0HEdkjN0Po4OyslKZ68hcVPwv9Br5JO/Sucbq3+BAHCO0wB6oeT86 -bcu0DvnWdl3yHbehGXIOzFH1oGwnNLZHXsnCQTC9Q679K1VmUobEm+wrcdkgOIQO -Mag97+cCTDDz4EfH5vJ24IV0V7ZdZFHAevxcpoHlSzJRgVYZWl0/L9N7sejvt84f -dWdHJJ3OCjK0r26eEG5lIth5UURoZ+5tWxgnh2rNAwDPAmkKUpAElz5ckdVc8tJO -bwuaSF6ZAAnUkkuk1vPxmUkxABEBAAGJATwEGAEIACYWIQQolaiB00Jw+r/o90e0 -9jM55l1kFAUCWyKEUQIbDAUJA8JnAAAKCRC09jM55l1kFBxJCACY181yWYdZ8fh1 -cT40eVeQyDSkyodkuFaHCv29X57QP4LpBIk6lcXVW04XgBtHxoQvQOaXJ+gEnQ7K -uB5hodsaYNhECIoBHUzTBlGaNTm+hXIvAm99IKH0niMb1bhUvH7L52g8O7GQOqsm -rdOJRHGOYEHlipnG9jStcrSacyAxjKYrRcO9jnVHr39EWCx5R8dGWNzkKjy7Y9iX -VGB5PYIuaoFyV3O5Azr9/hZgnuy0OkEZvmoC3yHIU7g+8vkeIvdGztChqW0tICaT -JXYqEay08KFH43LbsJdloECdmsALxJeVyiOW5VcRwv+WEhJaSFgo1EdZs88zFovP -YyuzO8ZH -=vQvj +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 +=TgjH -----END PGP PUBLIC KEY BLOCK----- diff --git a/libredwg.spec b/libredwg.spec index eb220cb..2772938 100644 --- a/libredwg.spec +++ b/libredwg.spec @@ -1,7 +1,7 @@ # # spec file for package libredwg # -# Copyright (c) 2022 SUSE LLC +# Copyright (c) 2023 SUSE LLC # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -18,19 +18,17 @@ %define lname libredwg0 Name: libredwg -Version: 0.12.5 +Version: 0.12.5.5907 Release: 0 Summary: A library to handle DWG files License: GPL-3.0-or-later Group: Development/Libraries/C and C++ URL: https://www.gnu.org/software/libredwg/ #Git-Clone: https://github.com/LibreDWG/libredwg/ -Source: https://ftp.gnu.org/pub/gnu/libredwg/%name-%version.tar.gz -Source2: https://ftp.gnu.org/pub/gnu/libredwg/%name-%version.tar.gz.sig +#Source: https://ftp.gnu.org/pub/gnu/libredwg/%name-%version.tar.xz +Source: https://github.com/LibreDWG/libredwg/releases/download/%version/libredwg-%version.tar.xz Source3: http://savannah.gnu.org/people/viewgpg.php?user_id=101103#/%name.keyring Source4: %name-rpmlintrc -Patch1: 0001-bits-change-bit_copy_chain.patch -Patch2: 0001-fix-obj_flush_hdlstream-GH-497.patch BuildRequires: pkg-config %description @@ -40,8 +38,10 @@ OpenDWG libraries. DWG is the native file format of AutoCAD. %package tools Summary: Command line utilities for handling DWG file Group: Productivity/File utilities +%if 0%{?suse_version} < 1599 Requires(post): %install_info_prereq Requires(preun):%install_info_prereq +%endif # Both packages ship a %%_bindir/dwg2dxf Conflicts: libdxfrw-tools @@ -96,6 +96,7 @@ rm -fv "$b/usr/share/dwgadd.example" "$b/usr/share/load_dwg.py" "$b/usr/share/ma %_bindir/dxf* %_mandir/man?/*.1%{?ext_man} %_infodir/LibreDWG.info*%{?ext_info} +%_datadir/libredwg/ %files devel %license COPYING