Репозиторий Sisyphus
Последнее обновление: 1 октября 2023 | Пакетов: 18631 | Посещений: 37405630
en ru br
Репозитории ALT
S:3.23.8-alt1
5.1: 3.11.5-alt0.M51.1
4.1: 2.8.10-alt2.M41.1
4.0: 2.7.12-alt2.M40.1
+backports:2.8.10-alt2.M40.1
3.0:
+backports:1.6.6a-alt0.M30.4.1
www.altlinux.org/Changes

Группа :: Издательство
Пакет: hplip

 Главная   Изменения   Спек   Патчи   Sources   Загрузить   Gear   Bugs and FR  Repocop 

Патч: try_libhpmud.so.0.patch
Скачать


From fa27bb8e89a0513f77056a331122224e646f254b Mon Sep 17 00:00:00 2001
From: Evgeny Golov <evgeni@debian.org>
Date: Fri, 22 Jul 2016 09:32:56 +0200
Subject: Try libhpmud.so.0 after libhpmud.so
Closes: #600670
Patch-Name: try_libhpmud.so.0.patch
---
 scan/sane/marvell.c | 10 +++++++---
 scan/sane/soap.c    |  9 ++++++---
 scan/sane/soapht.c  |  9 ++++++---
 3 files changed, 19 insertions(+), 9 deletions(-)
diff --git a/scan/sane/marvell.c b/scan/sane/marvell.c
index ad267a3f1..a0692920e 100644
--- a/scan/sane/marvell.c
+++ b/scan/sane/marvell.c
@@ -60,10 +60,14 @@ static int bb_load(struct marvell_session *ps, const char *so)
    int stat=1;
 
    /* Load hpmud manually with symbols exported. Otherwise the plugin will not find it. */ 
-   if ((ps->hpmud_handle = load_library("libhpmud.so")) == NULL)
+
+   if ((ps->hpmud_handle = dlopen("libhpmud.so", RTLD_LAZY|RTLD_GLOBAL)) == NULL)
    {
-	   if ((ps->hpmud_handle = load_library("libhpmud.so.0")) == NULL)
-           goto bugout;
+     if ((ps->hpmud_handle = dlopen("libhpmud.so.0", RTLD_LAZY|RTLD_GLOBAL)) == NULL)
+     {
+       BUG("unable to load restricted library: %s\n", dlerror());
+       goto bugout;
+     }
    }
 
    /* Load math library manually with symbols exported (Ubuntu 8.04). Otherwise the plugin will not find it. */ 
diff --git a/scan/sane/soap.c b/scan/sane/soap.c
index 07106fe6e..352db3d55 100644
--- a/scan/sane/soap.c
+++ b/scan/sane/soap.c
@@ -68,10 +68,13 @@ static int bb_load(struct soap_session *ps, const char *so)
    int stat=1;
 
    /* Load hpmud manually with symbols exported. Otherwise the plugin will not find it. */ 
-   if ((ps->hpmud_handle = load_library("libhpmud.so")) == NULL)
+   if ((ps->hpmud_handle = dlopen("libhpmud.so", RTLD_LAZY|RTLD_GLOBAL)) == NULL)
    {
-	   if ((ps->hpmud_handle = load_library("libhpmud.so.0")) == NULL)
-           goto bugout;
+     if ((ps->hpmud_handle = dlopen("libhpmud.so.0", RTLD_LAZY|RTLD_GLOBAL)) == NULL)
+     {
+       BUG("unable to load restricted library: %s\n", dlerror());
+       goto bugout;
+     }
    }
 
    /* Load math library manually with symbols exported (Ubuntu 8.04). Otherwise the plugin will not find it. */ 
diff --git a/scan/sane/soapht.c b/scan/sane/soapht.c
index 269ab2140..b554b3ceb 100644
--- a/scan/sane/soapht.c
+++ b/scan/sane/soapht.c
@@ -62,10 +62,13 @@ static int bb_load(struct soap_session *ps, const char *so)
    int stat=1;
 
    /* Load hpmud manually with symbols exported. Otherwise the plugin will not find it. */ 
-   if ((ps->hpmud_handle = load_library("libhpmud.so.0")) == NULL)
+   if ((ps->hpmud_handle = dlopen("libhpmud.so", RTLD_LAZY|RTLD_GLOBAL)) == NULL)
    {
-	   if ((ps->hpmud_handle = load_library("libhpmud.so.0")) == NULL)
-           goto bugout;
+     if ((ps->hpmud_handle = dlopen("libhpmud.so.0", RTLD_LAZY|RTLD_GLOBAL)) == NULL)
+     {
+       BUG("unable to load restricted library: %s\n", dlerror());
+       goto bugout;
+     }
    }
 
    /* Load math library manually with symbols exported (Ubuntu 8.04). Otherwise the plugin will not find it. */ 
 
дизайн и разработка: Vladimir Lettiev aka crux © 2004-2005, Andrew Avramenko aka liks © 2007-2008
текущий майнтейнер: Michael Shigorin