openSUSE Commits
Threads by month
- ----- 2025 -----
- January
- ----- 2024 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2023 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2022 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2021 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2020 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2019 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2018 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2017 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2016 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2015 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2014 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2013 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2012 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2011 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2010 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2009 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2008 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2007 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2006 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
May 2009
- 1 participants
- 754 discussions
Hello community,
here is the log from the commit of package hwinfo for openSUSE:Factory
checked in at Fri May 15 22:46:24 CEST 2009.
--------
--- hwinfo/hwinfo.changes 2009-01-22 12:42:56.000000000 +0100
+++ hwinfo/hwinfo.changes 2009-05-14 17:37:18.000000000 +0200
@@ -1,0 +2,9 @@
+Thu May 14 17:36:41 CEST 2009 - snwint(a)suse.de
+
+- setup dummy int 0x15 for BIOS emulation (bnc #469863)
+- fix memory size detection (bnc #500410)
+- 'hwprobe' variables can now have values (int, string, list) instead of
+ being just flags
+- fix some compiler warnings
+
+-------------------------------------------------------------------
calling whatdependson for head-i586
Old:
----
hwinfo-15.26.tar.bz2
New:
----
hwinfo-16.0.tar.bz2
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ hwinfo.spec ++++++
--- /var/tmp/diff_new_pack.t28434/_old 2009-05-15 22:44:04.000000000 +0200
+++ /var/tmp/diff_new_pack.t28434/_new 2009-05-15 22:44:04.000000000 +0200
@@ -1,5 +1,5 @@
#
-# spec file for package hwinfo (Version 15.26)
+# spec file for package hwinfo (Version 16.0)
#
# Copyright (c) 2009 SUSE LINUX Products GmbH, Nuernberg, Germany.
#
@@ -28,9 +28,9 @@
PreReq: /sbin/ldconfig %insserv_prereq %fillup_prereq
AutoReqProv: on
Summary: Hardware Library
-Version: 15.26
+Version: 16.0
Release: 1
-Source: hwinfo-15.26.tar.bz2
+Source: hwinfo-16.0.tar.bz2
BuildRoot: %{_tmppath}/%{name}-%{version}-build
%description
@@ -102,6 +102,12 @@
%doc doc/libhd/html
%changelog
+* Thu May 14 2009 snwint(a)suse.de
+- setup dummy int 0x15 for BIOS emulation (bnc #469863)
+- fix memory size detection (bnc #500410)
+- 'hwprobe' variables can now have values (int, string, list) instead of
+ being just flags
+- fix some compiler warnings
* Thu Jan 22 2009 snwint(a)suse.de
- make ehea look more ordinary (bnc #467033)
* Fri Jan 16 2009 snwint(a)suse.de
@@ -153,7 +159,7 @@
we know what devices support it; fate #304080)
* Mon Sep 15 2008 snwint(a)suse.de
- use udevadm instead of udevinfo
-* Mon Sep 08 2008 ro(a)suse.de
+* Tue Sep 09 2008 ro(a)suse.de
- fix build on x86 with 2.6.67 kernel includes
* Fri Aug 08 2008 olh(a)suse.de
- add inital POWER6 ibmebus support for ehea network (bnc#394602 -LTC44938)
@@ -990,7 +996,7 @@
* Tue Feb 24 2004 snwint(a)suse.de
- include x86emu into libhd.so
- don't segfault if we couldn't get a shared memory segment
-* Mon Feb 23 2004 kkaempf(a)suse.de
+* Tue Feb 24 2004 kkaempf(a)suse.de
- try to include x86emu library in libhd
* Mon Feb 23 2004 snwint(a)suse.de
- fixed Makefile
@@ -1271,7 +1277,7 @@
- dmfe instead of tulip (#19271)
- convert_hd now understands XML properly
- removed outdated docs
-* Sun Sep 08 2002 kkeil(a)suse.de
+* Mon Sep 09 2002 kkeil(a)suse.de
- probe ISDN USB too (#18830)
* Sat Sep 07 2002 snwint(a)suse.de
- make sure usb floppies are reported as such (#12262)
++++++ hwinfo-15.26.tar.bz2 -> hwinfo-16.0.tar.bz2 ++++++
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/hwinfo-15.26/Changelog new/hwinfo-16.0/Changelog
--- old/hwinfo-15.26/Changelog 2009-01-22 12:34:09.000000000 +0100
+++ new/hwinfo-16.0/Changelog 2009-05-14 17:35:54.000000000 +0200
@@ -1,3 +1,12 @@
+14/5/2009: v16.0
+ - 'hwprobe' variables can now have values (int, string, list) instead of
+ being just flags
+ - fix some compiler warnings
+
+11/5/2009: v15.27
+ - setup dummy int 0x15 for BIOS emulation (bnc #469863)
+ - fix memory size detection (bnc #500410)
+
22/1/2009: v15.26
- make ehea look more ordinary (bnc #467033)
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/hwinfo-15.26/src/hd/block.c new/hwinfo-16.0/src/hd/block.c
--- old/hwinfo-15.26/src/hd/block.c 2008-10-01 15:35:23.000000000 +0200
+++ new/hwinfo-16.0/src/hd/block.c 2009-05-12 12:28:26.000000000 +0200
@@ -809,7 +809,7 @@
sscanf(sl->str, "[%15[^]]] %*s fc:%"SCNx64" , %x ", buf, &ul0, &u0) == 3 &&
!strcmp(hd->sysfs_bus_id, buf)
) {
- ADD2LOG(" lsscsi: wwpn = 0x%llx, port_id = 0x%x\n", ul0, u0);
+ ADD2LOG(" lsscsi: wwpn = 0x%"PRIx64", port_id = 0x%x\n", ul0, u0);
res->fc.wwpn = ul0;
res->fc.wwpn_ok = 1;
res->fc.port_id = u0;
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/hwinfo-15.26/src/hd/hal.c new/hwinfo-16.0/src/hd/hal.c
--- old/hwinfo-15.26/src/hd/hal.c 2008-03-03 15:23:47.000000000 +0100
+++ new/hwinfo-16.0/src/hd/hal.c 2009-05-12 17:44:56.000000000 +0200
@@ -337,6 +337,16 @@
}
+hal_prop_t *hal_add_new(hal_prop_t **prop)
+{
+ while(*prop) prop = &(*prop)->next;
+ *prop = new_mem(sizeof **prop);
+ hal_invalidate(*prop);
+
+ return *prop;
+}
+
+
void add_pci(hd_data_t *hd_data)
{
hd_t *hd;
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/hwinfo-15.26/src/hd/hd.c new/hwinfo-16.0/src/hd/hd.c
--- old/hwinfo-15.26/src/hd/hd.c 2009-01-12 14:43:34.000000000 +0100
+++ new/hwinfo-16.0/src/hd/hd.c 2009-05-12 17:49:52.000000000 +0200
@@ -151,7 +151,15 @@
unsigned char *data;
} disk_t;
-static struct s_pr_flags *get_pr_flags(enum probe_feature feature);
+typedef struct {
+ enum probe_feature val, parent;
+ unsigned mask; /* bit 0: default, bit 1: all, bit 2: max, bit 3: linuxrc */
+ char *name;
+ hal_prop_type_t type;
+} pr_flags_t;
+
+static pr_flags_t *pr_flags_by_name(char *name);
+static pr_flags_t *pr_flags_by_id(enum probe_feature feature);
static void fix_probe_features(hd_data_t *hd_data);
static void set_probe_feature(hd_data_t *hd_data, enum probe_feature feature, unsigned val);
static void free_old_hd_entries(hd_data_t *hd_data);
@@ -240,124 +248,180 @@
* Names for the probe flags. Used for debugging and command line parsing in
* hw.c. Cf. enum probe_feature, hd_data_t.probe.
*/
-static struct s_pr_flags {
- enum probe_feature val, parent;
- unsigned mask; /* bit 0: default, bit 1: all, bit 2: max, bit 3: linuxrc */
- char *name;
-} pr_flags[] = {
- { pr_default, -1, 1, "default" },
- { pr_all, -1, 2 , "all" },
- { pr_max, -1, 4 , "max" },
- { pr_lxrc, -1, 8 , "lxrc" },
- { pr_memory, 0, 8|4|2|1, "memory" },
- { pr_pci, 0, 8|4|2|1, "pci" },
- { pr_s390, 0, 8|4|2|1, "s390" },
- { pr_s390disks, 0, 0, "s390disks" },
- { pr_isapnp, 0, 4|2|1, "isapnp" },
- { pr_isapnp_old, pr_isapnp, 0, "isapnp.old" },
- { pr_isapnp_new, pr_isapnp, 0, "isapnp.new" },
- { pr_isapnp_mod, 0, 4 , "isapnp.mod" },
- { pr_isapnp, 0, 0, "pnpdump" }, /* alias for isapnp */
- { pr_net, 0, 8|4|2|1, "net" },
- { pr_net_eeprom, 0, 0, "net.eeprom" },
- { pr_floppy, 0, 8|4|2|1, "floppy" },
- { pr_misc, pr_bios, 8|4|2|1, "misc" }, // ugly hack!
- { pr_misc_serial, pr_misc, 8|4|2|1, "misc.serial" },
- { pr_misc_par, pr_misc, 4|2|1, "misc.par" },
- { pr_misc_floppy, pr_misc, 8|4|2|1, "misc.floppy" },
- { pr_bios, 0, 8|4|2|1, "bios" },
- { pr_bios_vesa, pr_bios, 4|2|1, "bios.vesa" },
- { pr_bios_ddc, pr_bios_vesa, 0, "bios.ddc" },
- { pr_bios_ddc_ports_1, pr_bios_ddc, 0, "bios.ddc.ports=1" }, // probe 1 ddc port
- { pr_bios_ddc_ports_2, pr_bios_ddc, 0, "bios.ddc.ports=2" }, // probe 2 ddc ports
- { pr_bios_ddc_ports_3, pr_bios_ddc, 0, "bios.ddc.ports=3" }, // probe 3 ddc ports
- { pr_bios_ddc_ports_4, pr_bios_ddc, 0, "bios.ddc.ports=4" }, // probe 4 ddc ports
- { pr_bios_fb, pr_bios_vesa, 0, "bios.fb" },
- { pr_bios_mode, pr_bios_vesa, 0, "bios.mode" },
- { pr_bios_vbe, pr_bios_mode, 0, "bios.vbe" }, // just an alias
- { pr_bios_crc, 0, 0, "bios.crc" }, // require bios crc check to succeed
- { pr_bios_vram, 0, 0, "bios.vram" }, // map video bios ram
- { pr_bios_acpi, 0, 0, "bios.acpi" }, // dump acpi data
- { pr_cpu, 0, 8|4|2|1, "cpu" },
- { pr_monitor, 0, 8|4|2|1, "monitor" },
- { pr_serial, 0, 4|2|1, "serial" },
-#if defined(__sparc__)
- /* Probe for mouse on SPARC */
- { pr_mouse, 0, 8|4|2|1, "mouse" },
-#else
- { pr_mouse, 0, 4|2|1, "mouse" },
-#endif
- { pr_scsi, 0, 8|4|2|1, "scsi" },
- { pr_scsi_noserial, 0, 0, "scsi.noserial" },
- { pr_usb, 0, 8|4|2|1, "usb" },
- { pr_usb_mods, 0, 4 , "usb.mods" },
- { pr_modem, 0, 4|2|1, "modem" },
- { pr_modem_usb, pr_modem, 4|2|1, "modem.usb" },
- { pr_parallel, 0, 4|2|1, "parallel" },
- { pr_parallel_lp, pr_parallel, 4|2|1, "parallel.lp" },
- { pr_parallel_zip, pr_parallel, 4|2|1, "parallel.zip" },
- { pr_parallel_imm, 0, 0, "parallel.imm" },
- { pr_isa, 0, 0, "isa" },
- { pr_isa_isdn, pr_isa, 0, "isa.isdn" },
- { pr_isdn, 0, 4|2|1, "isdn" },
- { pr_kbd, 0, 8|4|2|1, "kbd" },
- { pr_prom, 0, 8|4|2|1, "prom" },
- { pr_sbus, 0, 8|4|2|1, "sbus" },
- { pr_int, 0, 8|4|2|1, "int" },
+
+static pr_flags_t pr_flags[] = {
+ { pr_default, -1, 1, "default", p_bool },
+ { pr_all, -1, 2 , "all", p_bool },
+ { pr_max, -1, 4 , "max", p_bool },
+ { pr_lxrc, -1, 8 , "lxrc", p_bool },
+ { pr_memory, 0, 8|4|2|1, "memory", p_bool },
+ { pr_pci, 0, 8|4|2|1, "pci", p_bool },
+ { pr_s390, 0, 8|4|2|1, "s390", p_bool },
+ { pr_s390disks, 0, 0, "s390disks", p_bool },
+ { pr_isapnp, 0, 4|2|1, "isapnp", p_bool },
+ { pr_isapnp_old, pr_isapnp, 0, "isapnp.old", p_bool },
+ { pr_isapnp_new, pr_isapnp, 0, "isapnp.new", p_bool },
+ { pr_isapnp_mod, 0, 4 , "isapnp.mod", p_bool },
+ { pr_isapnp, 0, 0, "pnpdump", p_bool }, /* alias for isapnp */
+ { pr_net, 0, 8|4|2|1, "net", p_bool },
+ { pr_net_eeprom, 0, 0, "net.eeprom", p_bool },
+ { pr_floppy, 0, 8|4|2|1, "floppy", p_bool },
+ { pr_misc, pr_bios, 8|4|2|1, "misc", p_bool }, // ugly hack!
+ { pr_misc_serial, pr_misc, 8|4|2|1, "misc.serial", p_bool },
+ { pr_misc_par, pr_misc, 4|2|1, "misc.par", p_bool },
+ { pr_misc_floppy, pr_misc, 8|4|2|1, "misc.floppy", p_bool },
+ { pr_bios, 0, 8|4|2|1, "bios", p_bool },
+ { pr_bios_vesa, pr_bios, 4|2|1, "bios.vesa", p_bool },
+ { pr_bios_ddc, pr_bios_vesa, 0, "bios.ddc", p_bool },
+ { pr_bios_ddc_ports, pr_bios_ddc, 0, "bios.ddc.ports", p_int32 },
+ { pr_bios_fb, pr_bios_vesa, 0, "bios.fb", p_bool },
+ { pr_bios_mode, pr_bios_vesa, 0, "bios.mode", p_bool },
+ { pr_bios_vbe, pr_bios_mode, 0, "bios.vbe", p_bool }, // just an alias
+ { pr_bios_crc, 0, 0, "bios.crc", p_bool }, // require bios crc check to succeed
+ { pr_bios_vram, 0, 0, "bios.vram", p_bool }, // map video bios ram
+ { pr_bios_acpi, 0, 0, "bios.acpi", p_bool }, // dump acpi data
+ { pr_cpu, 0, 8|4|2|1, "cpu", p_bool },
+ { pr_monitor, 0, 8|4|2|1, "monitor", p_bool },
+ { pr_serial, 0, 4|2|1, "serial", p_bool },
+ { pr_mouse, 0, 4|2|1, "mouse", p_bool },
+ { pr_scsi, 0, 8|4|2|1, "scsi", p_bool },
+ { pr_scsi_noserial, 0, 0, "scsi.noserial", p_bool },
+ { pr_usb, 0, 8|4|2|1, "usb", p_bool },
+ { pr_usb_mods, 0, 4 , "usb.mods", p_bool },
+ { pr_modem, 0, 4|2|1, "modem", p_bool },
+ { pr_modem_usb, pr_modem, 4|2|1, "modem.usb", p_bool },
+ { pr_parallel, 0, 4|2|1, "parallel", p_bool },
+ { pr_parallel_lp, pr_parallel, 4|2|1, "parallel.lp", p_bool },
+ { pr_parallel_zip, pr_parallel, 4|2|1, "parallel.zip", p_bool },
+ { pr_parallel_imm, 0, 0, "parallel.imm", p_bool },
+ { pr_isa, 0, 0, "isa", p_bool },
+ { pr_isa_isdn, pr_isa, 0, "isa.isdn", p_bool },
+ { pr_isdn, 0, 4|2|1, "isdn", p_bool },
+ { pr_kbd, 0, 8|4|2|1, "kbd", p_bool },
+ { pr_prom, 0, 8|4|2|1, "prom", p_bool },
+ { pr_sbus, 0, 8|4|2|1, "sbus", p_bool },
+ { pr_int, 0, 8|4|2|1, "int", p_bool },
#if defined(__i386__) || defined (__x86_64__)
- { pr_braille, 0, 4|2|1, "braille" },
- { pr_braille_alva, pr_braille, 4|2|1, "braille.alva" },
- { pr_braille_fhp, pr_braille, 4|2|1, "braille.fhp" },
- { pr_braille_ht, pr_braille, 4|2|1, "braille.ht" },
- { pr_braille_baum, pr_braille, 4|2|1, "braille.baum" },
+ { pr_braille, 0, 4|2|1, "braille", p_bool },
+ { pr_braille_alva, pr_braille, 4|2|1, "braille.alva", p_bool },
+ { pr_braille_fhp, pr_braille, 4|2|1, "braille.fhp", p_bool },
+ { pr_braille_ht, pr_braille, 4|2|1, "braille.ht", p_bool },
+ { pr_braille_baum, pr_braille, 4|2|1, "braille.baum", p_bool },
#else
- { pr_braille, 0, 4|2 , "braille" },
- { pr_braille_alva, pr_braille, 0, "braille.alva" },
- { pr_braille_fhp, pr_braille, 4|2 , "braille.fhp" },
- { pr_braille_ht, pr_braille, 4|2 , "braille.ht" },
- { pr_braille_baum, pr_braille, 4|2 , "braille.baum" },
-#endif
- { pr_ignx11, 0, 0, "ignx11" },
- { pr_sys, 0, 8|4|2|1, "sys" },
- { pr_manual, 0, 0, "manual" },
- { pr_fb, 0, 8|4|2|1, "fb" },
- { pr_pppoe, 0, 8|4|2|1, "pppoe" },
+ { pr_braille, 0, 4|2 , "braille", p_bool },
+ { pr_braille_alva, pr_braille, 0, "braille.alva", p_bool },
+ { pr_braille_fhp, pr_braille, 4|2 , "braille.fhp", p_bool },
+ { pr_braille_ht, pr_braille, 4|2 , "braille.ht", p_bool },
+ { pr_braille_baum, pr_braille, 4|2 , "braille.baum", p_bool },
+#endif
+ { pr_ignx11, 0, 0, "ignx11", p_bool },
+ { pr_sys, 0, 8|4|2|1, "sys", p_bool },
+ { pr_manual, 0, 0, "manual", p_bool },
+ { pr_fb, 0, 8|4|2|1, "fb", p_bool },
+ { pr_pppoe, 0, 8|4|2|1, "pppoe", p_bool },
/* dummy, used to turn off hwscan */
- { pr_scan, 0, 0, "scan" },
- { pr_pcmcia, 0, 8|4|2|1, "pcmcia" },
- { pr_fork, 0, 0, "fork" },
- { pr_cpuemu, 0, 0, "cpuemu" },
- { pr_cpuemu_debug, pr_cpuemu, 0, "cpuemu.debug" },
- { pr_sysfs, 0, 0, "sysfs" },
- { pr_udev, 0, 8|4|2|1, "udev" },
- { pr_block, 0, 8|4|2|1, "block" },
- { pr_block_cdrom, pr_block, 8|4|2|1, "block.cdrom" },
- { pr_block_part, pr_block, 8|4|2|1, "block.part" },
- { pr_block_mods, pr_block, 8|4|2|1, "block.mods" },
- { pr_edd, 0, 8|4|2|1, "edd" },
- { pr_edd_mod, pr_edd, 8|4|2|1, "edd.mod" },
- { pr_input, 0, 8|4|2|1, "input" },
- { pr_wlan, 0, 8|4|2|1, "wlan" },
- { pr_hal, 0, 0, "hal" },
- { pr_modules_pata, 0, 0, "modules.pata" }
+ { pr_scan, 0, 0, "scan", p_bool },
+ { pr_pcmcia, 0, 8|4|2|1, "pcmcia", p_bool },
+ { pr_fork, 0, 0, "fork", p_bool },
+ { pr_cpuemu, 0, 0, "cpuemu", p_bool },
+ { pr_cpuemu_debug, pr_cpuemu, 0, "cpuemu.debug", p_bool },
+ { pr_sysfs, 0, 0, "sysfs", p_bool },
+ { pr_udev, 0, 8|4|2|1, "udev", p_bool },
+ { pr_block, 0, 8|4|2|1, "block", p_bool },
+ { pr_block_cdrom, pr_block, 8|4|2|1, "block.cdrom", p_bool },
+ { pr_block_part, pr_block, 8|4|2|1, "block.part", p_bool },
+ { pr_block_mods, pr_block, 8|4|2|1, "block.mods", p_bool },
+ { pr_edd, 0, 8|4|2|1, "edd", p_bool },
+ { pr_edd_mod, pr_edd, 8|4|2|1, "edd.mod", p_bool },
+ { pr_input, 0, 8|4|2|1, "input", p_bool },
+ { pr_wlan, 0, 8|4|2|1, "wlan", p_bool },
+ { pr_hal, 0, 0, "hal", p_bool },
+ { pr_modules_pata, 0, 0, "modules.pata", p_bool },
+ { pr_x86emu, 0, 0, "x86emu", p_list },
};
-struct s_pr_flags *get_pr_flags(enum probe_feature feature)
+
+/*
+ * Returns pointer to probe feature struct for name.
+ * If name is not a valid probe feature, NULL is returned.
+ *
+ */
+pr_flags_t *pr_flags_by_name(char *name)
{
- int i;
+ unsigned u;
+
+ if(!name) return NULL;
+
+ for(u = 0; u < sizeof pr_flags / sizeof *pr_flags; u++) {
+ if(!strcmp(name, pr_flags[u].name)) return pr_flags + u;
+ }
+
+ return NULL;
+}
+
+
+pr_flags_t *pr_flags_by_id(enum probe_feature feature)
+{
+ unsigned u;
+
+ for(u = 0; u < sizeof pr_flags / sizeof *pr_flags; u++) {
+ if(feature == pr_flags[u].val) return pr_flags + u;
+ }
+
+ return NULL;
+}
+
+
+int get_probe_val_int(hd_data_t *hd_data, enum probe_feature feature)
+{
+ pr_flags_t *flags;
+ hal_prop_t *prop;
+
+ flags = pr_flags_by_id(feature);
+ if(flags) {
+ prop = hal_get_int32(hd_data->probe_val, flags->name);
+ if(prop) return prop->val.int32;
+ }
+
+ return 0;
+}
+
+
+char *get_probe_val_str(hd_data_t *hd_data, enum probe_feature feature)
+{
+ pr_flags_t *flags;
+ hal_prop_t *prop;
+
+ flags = pr_flags_by_id(feature);
+ if(flags) {
+ prop = hal_get_str(hd_data->probe_val, flags->name);
+ if(prop) return prop->val.str;
+ }
+
+ return NULL;
+}
- for(i = 0; (unsigned) i < sizeof pr_flags / sizeof *pr_flags; i++) {
- if(feature == pr_flags[i].val) return pr_flags + i;
+
+str_list_t *get_probe_val_list(hd_data_t *hd_data, enum probe_feature feature)
+{
+ pr_flags_t *flags;
+ hal_prop_t *prop;
+
+ flags = pr_flags_by_id(feature);
+ if(flags) {
+ prop = hal_get_list(hd_data->probe_val, flags->name);
+ if(prop) return prop->val.list;
}
return NULL;
}
+
void fix_probe_features(hd_data_t *hd_data)
{
int i;
- for(i = 0; (unsigned) i < sizeof hd_data->probe; i++) {
+ for(i = 0; i < sizeof hd_data->probe; i++) {
hd_data->probe[i] |= hd_data->probe_set[i];
hd_data->probe[i] &= ~hd_data->probe_clr[i];
}
@@ -367,9 +431,9 @@
{
unsigned ofs, bit, mask;
int i;
- struct s_pr_flags *pr;
+ pr_flags_t *pr;
- if(!(pr = get_pr_flags(feature))) return;
+ if(!(pr = pr_flags_by_id(feature))) return;
if(pr->parent == -1u) {
mask = pr->mask;
@@ -400,7 +464,7 @@
{
unsigned ofs, bit, mask;
int i;
- struct s_pr_flags *pr;
+ pr_flags_t *pr;
#ifdef LIBHD_MEMCHECK
{
@@ -409,7 +473,7 @@
}
#endif
- if(!(pr = get_pr_flags(feature))) return;
+ if(!(pr = pr_flags_by_id(feature))) return;
if(pr->parent == -1u) {
mask = pr->mask;
@@ -432,7 +496,7 @@
{
unsigned ofs, bit, mask;
int i;
- struct s_pr_flags *pr;
+ pr_flags_t *pr;
#ifdef LIBHD_MEMCHECK
{
@@ -441,7 +505,7 @@
}
#endif
- if(!(pr = get_pr_flags(feature))) return;
+ if(!(pr = pr_flags_by_id(feature))) return;
if(pr->parent == -1u) {
mask = pr->mask;
@@ -940,6 +1004,8 @@
hd_data->lsscsi = free_str_list(hd_data->lsscsi);
+ hd_data->probe_val = hd_free_hal_properties(hd_data->probe_val);
+
hd_data->last_idx = 0;
hd_shm_done(hd_data);
@@ -1744,6 +1810,7 @@
hd_t *hd, *hd2;
uint64_t irqs;
str_list_t *sl, *sl0;
+ pr_flags_t *pf;
#ifdef LIBHD_MEMCHECK
if(!libhd_log) {
@@ -1789,8 +1856,28 @@
s = free_mem(s);
for(i = 1; i < pr_default; i++) { /* 1 because of pr_memory */
- if((s = hd_probe_feature_by_value(i))) {
- ADD2LOG("%s%c%s", i == 1 ? "" : " ", hd_probe_feature(hd_data, i) ? '+' : '-', s);
+ pf = pr_flags_by_id(i);
+ if(pf) {
+ j = hd_probe_feature(hd_data, i);
+ ADD2LOG("%s%c%s", i == 1 ? "" : " ", j ? '+' : '-', pf->name);
+ if(j) switch(pf->type) {
+ case p_int32:
+ ADD2LOG("=%d", get_probe_val_int(hd_data, i));
+ break;
+
+ case p_string:
+ ADD2LOG("=%s", get_probe_val_str(hd_data, i) ?: "");
+ break;
+
+ case p_list:
+ s = hd_join(":", get_probe_val_list(hd_data, i));
+ ADD2LOG("=%s", s ?: "");
+ s = free_mem(s);
+ break;
+
+ default:
+ break;
+ }
}
}
@@ -2623,19 +2710,11 @@
*/
enum probe_feature hd_probe_feature_by_name(char *name)
{
- unsigned u;
-
-#ifdef LIBHD_MEMCHECK
- {
- if(libhd_log)
- fprintf(libhd_log, "; %s\t%p\t%p\n", __FUNCTION__, CALLED_FROM(hd_probe_feature_by_name, name), name);
- }
-#endif
+ pr_flags_t *flags;
- for(u = 0; u < sizeof pr_flags / sizeof *pr_flags; u++)
- if(!strcmp(name, pr_flags[u].name)) return pr_flags[u].val;
+ flags = pr_flags_by_name(name);
- return 0;
+ return flags ? flags->val : 0;
}
@@ -2645,19 +2724,11 @@
*/
char *hd_probe_feature_by_value(enum probe_feature feature)
{
- unsigned u;
+ pr_flags_t *flags;
-#ifdef LIBHD_MEMCHECK
- {
- if(libhd_log)
- fprintf(libhd_log, "; %s\t%p\t%u\n", __FUNCTION__, CALLED_FROM(hd_probe_feature_by_value, feature), feature);
- }
-#endif
+ flags = pr_flags_by_id(feature);
- for(u = 0; u < sizeof pr_flags / sizeof *pr_flags; u++)
- if(feature == pr_flags[u].val) return pr_flags[u].name;
-
- return NULL;
+ return flags ? flags->name : NULL;
}
@@ -3992,10 +4063,12 @@
void get_probe_env(hd_data_t *hd_data)
{
- char *s, *t, *env;
+ char *s, *t, *env, *t2, *t3;
str_list_t *cmd = NULL;
int j, k;
char buf[10];
+ hal_prop_t *prop;
+ pr_flags_t *flags;
env = getenv("hwprobe");
if(!env) {
@@ -4019,12 +4092,55 @@
}
else {
k = 2;
-// ADD2LOG("hwprobe: +/- missing before \"%s\"\n", t);
-// return;
}
- if((j = hd_probe_feature_by_name(t))) {
- set_probe_feature(hd_data, j, k ? 1 : 0);
+ if((t2 = strchr(t, '=')) && t2 != t) *t2++ = 0;
+
+ if((flags = pr_flags_by_name(t))) {
+ if(flags->type == p_bool) {
+ set_probe_feature(hd_data, j, k ? 1 : 0);
+ }
+ else {
+ prop = hal_get_any(hd_data->probe_val, t);
+ if(!prop) {
+ prop = hal_add_new(&hd_data->probe_val);
+ }
+ else {
+ hal_invalidate(prop);
+ }
+ switch(flags->type) {
+ case p_int32:
+ j = strtol(t2, &t3, 0);
+ if(!*t3) {
+ prop->type = flags->type;
+ prop->key = new_str(t);
+ prop->val.int32 = j;
+ set_probe_feature(hd_data, flags->val, j ? 1 : 0);
+ }
+ break;
+
+ case p_string:
+ if(t2) {
+ prop->type = flags->type;
+ prop->key = new_str(t);
+ prop->val.str = new_str(t2);
+ set_probe_feature(hd_data, flags->val, *t2 ? 1 : 0);
+ }
+ break;
+
+ case p_list:
+ if(t2) {
+ prop->type = flags->type;
+ prop->key = new_str(t);
+ prop->val.list = hd_split(':', t2);
+ set_probe_feature(hd_data, flags->val, prop->val.list ? 1 : 0);
+ }
+ break;
+
+ default:
+ break;
+ }
+ }
}
else if(sscanf(t, "%8[^:]:%8[^:]:%8[^:]", buf, buf, buf) == 3) {
add_str_list(&hd_data->xtra_hd, t - (k == 2 ? 0 : 1));
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/hwinfo-15.26/src/hd/hd.h new/hwinfo-16.0/src/hd/hd.h
--- old/hwinfo-15.26/src/hd/hd.h 2009-01-22 11:41:22.000000000 +0100
+++ new/hwinfo-16.0/src/hd/hd.h 2009-05-12 16:25:06.000000000 +0200
@@ -19,7 +19,7 @@
*/
/** Interface version */
-#define HD_VERSION 15
+#define HD_VERSION 16
/**
* @defgroup DEBUGpub Debug flags
@@ -117,8 +117,8 @@
pr_block, pr_block_cdrom, pr_block_part, pr_edd, pr_edd_mod, pr_bios_ddc,
pr_bios_fb, pr_bios_mode, pr_input, pr_block_mods, pr_bios_vesa,
pr_cpuemu_debug, pr_scsi_noserial, pr_wlan, pr_bios_crc, pr_hal,
- pr_bios_vram, pr_bios_acpi, pr_bios_ddc_ports_1, pr_bios_ddc_ports_2,
- pr_bios_ddc_ports_3, pr_bios_ddc_ports_4, pr_modules_pata, pr_net_eeprom,
+ pr_bios_vram, pr_bios_acpi, pr_bios_ddc_ports, pr_modules_pata,
+ pr_net_eeprom, pr_x86emu,
pr_max, pr_lxrc, pr_default,
pr_all /**< pr_all must be last */
} hd_probe_feature_t;
@@ -2639,6 +2639,7 @@
unsigned char probe[(pr_all + 7) / 8]; /**< (Internal) bitmask of probing features. */
unsigned char probe_set[(pr_all + 7) / 8]; /**< (Iternal) bitmask of probing features that will always be set. */
unsigned char probe_clr[(pr_all + 7) / 8]; /**< (Internal) bitmask of probing features that will always be reset. */
+ hal_prop_t *probe_val; /**< (Internal) probing features with arbitrary values */
unsigned last_idx; /**< (Internal) index of the last hd entry generated */
unsigned module; /**< (Internal) the current probing module we are in */
enum boot_arch boot; /**< (Internal) boot method */
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/hwinfo-15.26/src/hd/hd_int.h new/hwinfo-16.0/src/hd/hd_int.h
--- old/hwinfo-15.26/src/hd/hd_int.h 2008-09-15 11:56:07.000000000 +0200
+++ new/hwinfo-16.0/src/hd/hd_int.h 2009-05-12 17:45:26.000000000 +0200
@@ -240,12 +240,18 @@
char *hal_get_useful_str(hal_prop_t *prop, const char *key);
hal_device_t *hal_find_device(hd_data_t *hd_data, char *udi);
+hal_prop_t *hal_add_new(hal_prop_t **prop);
char *hd_get_hddb_dir(void);
char *hd_get_hddb_path(char *sub);
int hd_mod_cmp(char *str1, char *str2);
+int get_probe_val_int(hd_data_t *hd_data, enum probe_feature feature);
+char *get_probe_val_str(hd_data_t *hd_data, enum probe_feature feature);
+str_list_t *get_probe_val_list(hd_data_t *hd_data, enum probe_feature feature);
+
+
#ifdef __cplusplus
}
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/hwinfo-15.26/src/hd/input.c new/hwinfo-16.0/src/hd/input.c
--- old/hwinfo-15.26/src/hd/input.c 2008-05-30 17:03:13.000000000 +0200
+++ new/hwinfo-16.0/src/hd/input.c 2009-05-12 12:29:35.000000000 +0200
@@ -313,7 +313,7 @@
sl = sl0 = hd_split(' ', str);
for(; sl; sl = sl->next) {
u = strtoul(sl->str, NULL, 16);
- str_printf(&s, -1, "%0*lx", sizeof (unsigned long) * 2, u);
+ str_printf(&s, -1, "%0*lx", (int) sizeof (unsigned long) * 2, u);
}
free_str_list(sl0);
free_mem(str);
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/hwinfo-15.26/src/hd/memory.c new/hwinfo-16.0/src/hd/memory.c
--- old/hwinfo-15.26/src/hd/memory.c 2006-08-29 16:15:38.000000000 +0200
+++ new/hwinfo-16.0/src/hd/memory.c 2009-05-12 12:10:34.000000000 +0200
@@ -173,7 +173,7 @@
if(strstr(sl->str, "<6>BIOS-provided physical RAM map:") == sl->str) {
for(sl = sl->next ; sl; sl = sl->next) {
ADD2LOG(" -- %s", sl->str);
- if(sscanf(sl->str, "<4> BIOS-e820: %"SCNx64" - %"SCNx64" (%63s", &u0, &u1, buf) != 3) break;
+ if(sscanf(sl->str, "<%*d> BIOS-e820: %"SCNx64" - %"SCNx64" (%63s", &u0, &u1, buf) != 3) break;
if(strcmp(buf, "usable)")) continue;
if(u1 < u0) break;
mem += u1 - u0;
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/hwinfo-15.26/src/int10/i10_vbios.c new/hwinfo-16.0/src/int10/i10_vbios.c
--- old/hwinfo-15.26/src/int10/i10_vbios.c 2006-03-09 14:12:55.000000000 +0100
+++ new/hwinfo-16.0/src/int10/i10_vbios.c 2009-05-12 12:10:34.000000000 +0200
@@ -413,7 +413,18 @@
static int copy_bios_ram(hd_data_t *hd_data)
{
- return hd_read_mmap(hd_data, MEM_FILE, (unsigned char *) 0, 0, 0x1000);
+ int i;
+
+ i = hd_read_mmap(hd_data, MEM_FILE, (unsigned char *) 0, 0, 0x1000);
+
+ /*
+ * bnc #469863
+ * setup dummy int 0x15
+ */
+ *(uint32_t *) (0x15*4) = 0x00600000; // avoid seg 0 (due to stupid check in run_bios_int())
+ *(uint8_t *) 0x600 = 0xcf;
+
+ return i;
}
void loadCodeToMem(unsigned char *ptr, CARD8 *code)
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/hwinfo-15.26/src/int10/int10.c new/hwinfo-16.0/src/int10/int10.c
--- old/hwinfo-15.26/src/int10/int10.c 2007-09-12 11:26:01.000000000 +0200
+++ new/hwinfo-16.0/src/int10/int10.c 2009-05-12 16:52:56.000000000 +0200
@@ -96,10 +96,9 @@
/* notebooks like to have it at port 3 */
if((is.dell || is.nvidia) && is.notebook) vbe->ddc_ports = 3;
- if(hd_probe_feature(hd_data, pr_bios_ddc_ports_1)) vbe->ddc_ports = 1;
- if(hd_probe_feature(hd_data, pr_bios_ddc_ports_2)) vbe->ddc_ports = 2;
- if(hd_probe_feature(hd_data, pr_bios_ddc_ports_3)) vbe->ddc_ports = 3;
- if(hd_probe_feature(hd_data, pr_bios_ddc_ports_4)) vbe->ddc_ports = 4;
+ i = get_probe_val_int(hd_data, pr_bios_ddc_ports);
+ if(i > sizeof vbe->ddc_port / sizeof *vbe->ddc_port) i = sizeof vbe->ddc_port / sizeof *vbe->ddc_port;
+ if(i) vbe->ddc_ports = i;
if(hd_probe_feature(hd_data, pr_bios_ddc)) {
PROGRESS(4, 3, "ddc info");
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/hwinfo-15.26/VERSION new/hwinfo-16.0/VERSION
--- old/hwinfo-15.26/VERSION 2009-01-22 12:33:00.000000000 +0100
+++ new/hwinfo-16.0/VERSION 2009-05-12 12:27:16.000000000 +0200
@@ -1 +1 @@
-15.26
+16.0
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Remember to have fun...
--
To unsubscribe, e-mail: opensuse-commit+unsubscribe(a)opensuse.org
For additional commands, e-mail: opensuse-commit+help(a)opensuse.org
1
0
Hello community,
here is the log from the commit of package file for openSUSE:Factory
checked in at Fri May 15 22:42:41 CEST 2009.
--------
--- file/file.changes 2009-05-06 14:46:22.000000000 +0200
+++ file/file.changes 2009-05-07 17:46:37.000000000 +0200
@@ -1,0 +2,5 @@
+Thu May 7 17:45:10 CEST 2009 - werner(a)suse.de
+
+- Add support for special zip archives (bnc#500511)
+
+-------------------------------------------------------------------
calling whatdependson for head-i586
New:
----
file-5.02-zip2.0.dif
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ file.spec ++++++
--- /var/tmp/diff_new_pack.l16956/_old 2009-05-15 22:37:20.000000000 +0200
+++ /var/tmp/diff_new_pack.l16956/_new 2009-05-15 22:37:20.000000000 +0200
@@ -31,7 +31,7 @@
#
# Set Version also in python-magic.spec
Version: 5.02
-Release: 1
+Release: 2
Summary: A Tool to Determine File Types
Source: ftp://ftp.astron.com/pub/file/file-%{version}.tar.bz2
Patch: file-%{version}.dif
@@ -55,6 +55,7 @@
Patch24: file-4.24-warn.dif
Patch25: file-5.02-javacheck.dif
Patch26: file-4.24-solv.dif
+Patch27: file-5.02-zip2.0.dif
BuildRoot: %{_tmppath}/%{name}-%{version}-build
%global _sysconfdir /etc
%global _miscdir %{_datadir}/misc
@@ -117,6 +118,7 @@
%patch24 -p0 -b .warn
%patch25 -p0 -b .javacheck
%patch26 -p0 -b .solv
+%patch27 -p0 -b .zip2.0
%patch
%build
@@ -173,6 +175,8 @@
%attr(644,root,root) %{_mandir}/man3/libmagic.3.gz
%changelog
+* Thu May 07 2009 werner(a)suse.de
+- Add support for special zip archives (bnc#500511)
* Wed May 06 2009 werner(a)suse.de
- Update to filx version 5.02
* Read ~/.magic in addition to the default magic file not instead
++++++ python-magic.spec ++++++
--- /var/tmp/diff_new_pack.l16956/_old 2009-05-15 22:37:20.000000000 +0200
+++ /var/tmp/diff_new_pack.l16956/_new 2009-05-15 22:37:20.000000000 +0200
@@ -27,7 +27,7 @@
Group: Development/Languages/Python
AutoReqProv: on
Version: 4.24
-Release: 53
+Release: 54
Summary: Python module to use libmagic
%py_requires
Source99: file.spec
++++++ file-5.02-zip2.0.dif ++++++
--- magic/Magdir/archive
+++ magic/Magdir/archive 2009-05-07 17:43:15.549950181 +0200
@@ -575,6 +575,10 @@
>4 byte 0x14
>>30 ubelong !0x6d696d65 Zip archive data, at least v2.0 to extract
!:mime application/zip
+>>30 ubelong 0x6d696d65 Zip archive data, at least v2.0 to extract
+>>>34 ubelong 0x74797065 \b, mime type
+>>>>38 regex application/[a-z\+\-]+ \b %s
+!:mime application/unknown+zip
# OpenOffice.org / KOffice / StarOffice documents
# Listed here because they ARE zip files
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Remember to have fun...
--
To unsubscribe, e-mail: opensuse-commit+unsubscribe(a)opensuse.org
For additional commands, e-mail: opensuse-commit+help(a)opensuse.org
1
0
Hello community,
here is the log from the commit of package wpa_supplicant for openSUSE:Factory
checked in at Fri May 15 22:37:05 CEST 2009.
--------
--- wpa_supplicant/wpa_supplicant.changes 2009-05-06 12:22:58.000000000 +0200
+++ wpa_supplicant/wpa_supplicant.changes 2009-05-12 12:32:25.000000000 +0200
@@ -1,0 +2,6 @@
+Tue May 12 12:28:55 CEST 2009 - dmueller(a)suse.de
+
+- reenable logfile writing support to make d-bus activation work
+ again (bnc#502957)
+
+-------------------------------------------------------------------
calling whatdependson for head-i586
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ wpa_supplicant.spec ++++++
--- /var/tmp/diff_new_pack.T12633/_old 2009-05-15 22:34:48.000000000 +0200
+++ /var/tmp/diff_new_pack.T12633/_new 2009-05-15 22:34:48.000000000 +0200
@@ -22,7 +22,7 @@
BuildRequires: dbus-1-devel libnl-devel libqt4 libqt4-devel openssl-devel pkg-config readline-devel
Url: http://hostap.epitest.fi/wpa_supplicant/
Version: 0.6.9
-Release: 1
+Release: 2
License: BSD 3-Clause; GPL v2 or later
Group: Productivity/Networking/Other
Summary: WPA supplicant implementation
@@ -133,6 +133,9 @@
/usr/sbin/wpa_gui
%changelog
+* Tue May 12 2009 dmueller(a)suse.de
+- reenable logfile writing support to make d-bus activation work
+ again (bnc#502957)
* Tue Apr 07 2009 hschaa(a)suse.de
- Enable ralink driver (bnc#481380)
- Enable nl80211 driver (bnc#485453)
++++++ config ++++++
--- /var/tmp/diff_new_pack.T12633/_old 2009-05-15 22:34:48.000000000 +0200
+++ /var/tmp/diff_new_pack.T12633/_new 2009-05-15 22:34:48.000000000 +0200
@@ -372,7 +372,7 @@
#CONFIG_IEEE80211R=y
# Add support for writing debug log to a file (/tmp/wpa_supplicant-log-#.txt)
-#CONFIG_DEBUG_FILE=y
+CONFIG_DEBUG_FILE=y
# Enable privilege separation (see README 'Privilege separation' for details)
#CONFIG_PRIVSEP=y
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Remember to have fun...
--
To unsubscribe, e-mail: opensuse-commit+unsubscribe(a)opensuse.org
For additional commands, e-mail: opensuse-commit+help(a)opensuse.org
1
0
Hello community,
here is the log from the commit of package java-1_6_0-openjdk for openSUSE:Factory
checked in at Fri May 15 22:34:33 CEST 2009.
--------
--- java-1_6_0-openjdk/java-1_6_0-openjdk.changes 2009-04-21 14:10:32.000000000 +0200
+++ java-1_6_0-openjdk/java-1_6_0-openjdk.changes 2009-05-15 14:37:31.000000000 +0200
@@ -1,0 +2,33 @@
+Fri May 15 14:37:13 CEST 2009 - mvyskocil(a)suse.cz
+
+- 'used systemtap-sdt-devel (see bnc#503088)'
+
+-------------------------------------------------------------------
+Thu May 14 09:21:59 CEST 2009 - mvyskocil(a)suse.cz
+
+- Change version system for openjdk, now it uses a
+ %%{javaver}.%%{buildver}_%{{openjdkver}
+- Enabled systemtap support
+- Moved jpackage macro definitions upper in spec
+
+-------------------------------------------------------------------
+Wed May 13 14:23:59 CEST 2009 - mvyskocil(a)suse.cz
+
+- updates:
+ * openjdk b16
+ * icedtea snapshot cc658d9f4a64
+ * hotspot snapshot fc6a5ae3fef5
+- new features:
+ * systemtap support (not yet enabled in SUSE)
+ * removed gcjwebplugin
+ * fixed lcms breakage
+ https://bugs.openjdk.java.net/show_bug.cgi?id=100050
+ * fixes in JNLP runtime
+ * various improvements in support of third party VMs (shark, cacao, zero)
+- patches changes:
+ * removed obsoleted pulseaudio patch
+ * added openjdk-6-src-b16-no-return-in-nonvoid-function.patch
+- enabled tests
+- build using xulrunner 1.9.1 on 11.2
+
+-------------------------------------------------------------------
calling whatdependson for head-i586
Old:
----
java-1.6.0-openjdk-pulsejava.patch
New:
----
icedtea6-cc658d9f4a64.tar.bz2
openjdk-6-src-b16-24_apr_2009-fedora.tar.bz2
openjdk-6-src-b16-no-return-in-nonvoid-function.patch
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ java-1_6_0-openjdk.spec ++++++
--- /var/tmp/diff_new_pack.fx9009/_old 2009-05-15 22:32:45.000000000 +0200
+++ /var/tmp/diff_new_pack.fx9009/_new 2009-05-15 22:32:45.000000000 +0200
@@ -1,5 +1,5 @@
#
-# spec file for package java-1_6_0-openjdk (Version MACRO)
+# spec file for package java-1_6_0-openjdk (Version 1.6.0.0_MACRO)
#
# Copyright (c) 2009 SUSE LINUX Products GmbH, Nuernberg, Germany.
#
@@ -17,11 +17,11 @@
%define gcjbootstrap 0
-%define runtest 0
-%define icedteaver 1.4.1
-%define icedteasnapshot %{nil}
-%define openjdkver b14
-%define openjdkdate 25_nov_2008
+%define runtests 0
+%define icedteaver %{nil}
+%define icedteasnapshot cc658d9f4a64
+%define openjdkver b16
+%define openjdkdate 24_apr_2009
%define genurl http://cvs.fedoraproject.org/viewcvs/devel/java-1.6.0-openjdk/
%define accessmajorver 1.23
%define accessminorver 0
@@ -54,7 +54,7 @@
%ifnarch %{jit_arches}
%define runtests 0
%endif
-%define buildoutputdir openjdk/control/build/linux-%{archbuild}
+%define buildoutputdir openjdk/build/linux-%{archbuild}
%if %{gcjbootstrap}
%define icedteaopt --with-libgcj-jar=%_javadir/libgcj-4.3.jar --with-gcj-home=%_jvmdir/java-1.5.0-gcj
%else
@@ -73,17 +73,17 @@
%define archsuffix %{nil}
%define syslibdir %{_libdir}
%endif
+# Standard JPackage naming and versioning defines.
+%define origin openjdk
+%define priority 17102
+%define javaver 1.6.0
+%define buildver 0
# Hard-code libdir on 64-bit architectures to make the 64-bit JDK
# simply be another alternative.
%define sdkname java-%{javaver}-%{origin}
%define archname %{sdkname}%{archsuffix}
# use a same name of alternatives as Sun/IBM Java
%define javaplugin javaplugin
-# Standard JPackage naming and versioning defines.
-%define origin openjdk
-%define priority 17102
-%define javaver 1.6.0
-%define buildver 0
# Standard JPackage directories and symbolic links.
# Make 64-bit JDKs just another alternative on 64-bit architectures.
# FIXME: add a archsuffix, or use of an baseline.conf
@@ -106,8 +106,8 @@
%if 0%suse_version <= 1100
Obsoletes: %obsoletes
%endif
-Version: %{icedteaver}_%{openjdkver}
-Release: 27
+Version: 1.6.0.0_%{openjdkver}
+Release: 1
Summary: Java runtime environment based on OpenJDK 6 and IcedTea 6
Group: Development/Languages/Java
License: GPL v2 only; - with the OpenJDK Assembly Exception and the GNU Classpath Exception
@@ -164,7 +164,8 @@
Patch2: java-1.6.0-openjdk-makefile.patch
Patch3: java-1.6.0-openjdk-java-access-bridge-idlj.patch
Patch4: java-1.6.0-openjdk-java-access-bridge-security.patch
-Patch5: java-1.6.0-openjdk-pulsejava.patch
+# deprecated by openjdk b16
+#Patch5: java-1.6.0-openjdk-pulsejava.patch
# Obsolete!
#Patch103: openjdk-6-src-b09-execstack.patch
Patch104: openjdk-6-src-b09-gcc4-warningfixes.patch
@@ -180,6 +181,7 @@
# confluence wiki crashes under tomcat6 and openjdk
# http://hg.openjdk.java.net/jdk7/hotspot-comp/hotspot/rev/039a914095f4
Patch111: openjdk-6-src-b14-confluence-crash.patch
+Patch112: openjdk-6-src-b16-no-return-in-nonvoid-function.patch
Patch1000: java-1_6_0-openjdk-suse-desktop-files.patch
BuildRoot: %{_tmppath}/%{name}-%{version}-build
BuildRequires: alsa-lib-devel
@@ -205,27 +207,33 @@
BuildRequires: java-1_6_0-openjdk java-1_6_0-openjdk-devel
%endif
# Mauve build requirements.
-#BuildRequires: x11-server-xvfb
-#BuildRequires: x11-font-type1
-#BuildRequires: x11-font-misc
-#BuildRequires: freetype2-devel >= 2.3.0
-#BuildRequires: fontconfig
-#BuildRequires: eclipse-ecj
+%if %{runtests}
+BuildRequires: xorg-x11-server-extra
+BuildRequires: xorg-x11-fonts
+BuildRequires: freetype2-devel >= 2.3.0
+BuildRequires: fontconfig
+BuildRequires: ecj
+%endif
# Java Access Bridge for GNOME build requirements.
BuildRequires: at-spi-devel
BuildRequires: gawk
BuildRequires: libbonobo-devel
BuildRequires: pkgconfig >= 0.9.0
BuildRequires: xorg-x11-util-devel
-# gcjwebplugin build requirements.
+# IcedTeaPlugin build requirements.
BuildRequires: glib2-devel
BuildRequires: gtk2-devel
BuildRequires: mozilla-nspr-devel
+%if 0%suse_version >= 1120
+BuildRequires: mozilla-xulrunner191-devel
+%else
BuildRequires: mozilla-xulrunner190-devel
-#!BuildIgnore: mozilla-xulrunner181-devel mozilla-xulrunner181
+%endif
# pulse audio requirements
BuildRequires: libpulse-devel >= 0.9.11
BuildRequires: pulseaudio >= 0.9.11
+#system tap
+BuildRequires: systemtap-sdt-devel
# Zero-assembler build requirement.
%ifnarch %{jit_arches}
BuildRequires: libffi-devel
@@ -262,6 +270,7 @@
%else
PreReq: update-alternatives
%endif
+Recommends: systemtap
# Standard JPackage base provides.
Provides: %(echo %name|sed s/_/./g)
Provides: jre-%{javaver}-%{origin} = %{version}-%{release}
@@ -421,11 +430,12 @@
%prep
-%setup -q -n icedtea6-%{icedteaver}
-%setup -q -n icedtea6-%{icedteaver} -T -D -a 6
-%setup -q -n icedtea6-%{icedteaver} -T -D -a 2
+%setup -q -n icedtea6-%{icedteasnapshot}
+%setup -q -n icedtea6-%{icedteasnapshot} -T -D -a 6
+%setup -q -n icedtea6-%{icedteasnapshot} -T -D -a 2
%patch0 -b .optflags
-%patch5 -b .pulseaudio
+# deprecated by openjdk b16
+#%patch5 -b .pulseaudio
# Obsoleted by 1.4.1
# % patch2 -b .makefile
%patch1000 -p1
@@ -442,7 +452,8 @@
--with-openjdk-src-zip=%{SOURCE1} \
--with-pkgversion=suse-%{release}-%{_arch} \
--enable-pulse-java \
- --with-hotspot-src-zip=hotspot.tar.gz
+ --with-hotspot-src-zip=hotspot.tar.gz \
+ --enable-systemtap --with-abs-install-dir=%{_jvmdir}/%{sdkdir}
patch_openjdk() {
patch -l $* --input=%{PATCH104}
%ifarch s390 s390x # contains a special makefile test which is only for s390(x) for now:
@@ -462,6 +473,7 @@
patch -l $* --input=%PATCH110
%endif
patch -l $* --input=%PATCH111
+ patch -l $* --input=%PATCH112
}
%if %{gcjbootstrap}
make stamps/patch-ecj.stamp
@@ -494,6 +506,37 @@
cp -a bridge/accessibility.properties $JAVA_HOME/jre/lib
cp -a gnome-java-bridge.jar $JAVA_HOME/jre/lib/ext
popd
+%if %{runtests}
+# Run jtreg test suite.
+{
+ echo ====================JTREG TESTING========================
+ export DISPLAY=:20
+ Xvfb :20 -screen 0 1x1x24 -ac&
+ echo $! > Xvfb.pid
+ make jtregcheck -k
+ kill -9 `cat Xvfb.pid`
+ unset DISPLAY
+ rm -f Xvfb.pid
+ echo ====================JTREG TESTING END====================
+} || :
+# Run Mauve test suite.
+{
+ pushd mauve-%{mauvedate}
+ ./configure
+ make
+ echo ====================MAUVE TESTING========================
+ export DISPLAY=:20
+ Xvfb :20 -screen 0 1x1x24 -ac&
+ echo $! > Xvfb.pid
+ $JAVA_HOME/bin/java Harness -vm $JAVA_HOME/bin/java \
+ -file %{SOURCE6} -timeout 30000 2>&1 | tee mauve_output
+ kill -9 `cat Xvfb.pid`
+ unset DISPLAY
+ rm -f Xvfb.pid
+ echo ====================MAUVE TESTING END====================
+ popd
+} || :
+%endif
%install
# skip /usr/lib/rpm/brp-check-bytecode-version:
@@ -558,6 +601,9 @@
mkdir sample/rmi
mv bin/java-rmi.cgi sample/rmi
cp -a sample $RPM_BUILD_ROOT%{_jvmdir}/%{sdkdir}
+ # systemtap support
+ install -d -m 0755 $RPM_BUILD_ROOT/%{_datadir}/systemtap/tapset/
+ install -m 0644 tapset/hotspot.stp $RPM_BUILD_ROOT/%{_datadir}/systemtap/tapset/
popd
# Install Javadoc documentation.
install -d -m 755 $RPM_BUILD_ROOT%{_javadocdir}
@@ -617,14 +663,11 @@
| sed 's|'$RPM_BUILD_ROOT'||' \
| sed 's|^|%doc |' \
>> %{name}-demo.files
-#symlink dupes
-%if 0%suse_version > 1020
# fdupes links the files from JDK to JRE, so it breaks a JRE
# use it carefully :))
%fdupes -s $RPM_BUILD_ROOT/%{_jvmdir}/%{jredir}/
%fdupes -s $RPM_BUILD_ROOT/%{_jvmdir}/%{sdkdir}/demo
%fdupes -s $RPM_BUILD_ROOT%{_javadocdir}/%{sdkname}
-%endif
# bnc496378 - check the size of installed cacerts
# 32 bytes means a default empty one
if [[ $(stat -c "%s" $RPM_BUILD_ROOT/%{_jvmdir}/%{jredir}/lib/security/cacerts) == "32" ]]; then
@@ -854,6 +897,8 @@
%{_datadir}/icons/hicolor/48x48
%{_datadir}/pixmaps/javaws.png
%{_datadir}/applications/*.desktop
+# systemtap support
+%{_datadir}/systemtap
%files devel
%defattr(-,root,root,-)
@@ -909,9 +954,33 @@
%files plugin
%defattr(-,root,root,-)
-%{_jvmdir}/%{jredir}/lib/%{archinstall}/IcedTeaPlugin.so
+%{_jvmdir}/%{sdkdir}/jre/lib/*/IcedTeaPlugin.so
%changelog
+* Fri May 15 2009 mvyskocil(a)suse.cz
+- 'used systemtap-sdt-devel (see bnc#503088)'
+* Thu May 14 2009 mvyskocil(a)suse.cz
+- Change version system for openjdk, now it uses a
+ %%{javaver}.%%{buildver}_%%{{openjdkver}
+- Enabled systemtap support
+- Moved jpackage macro definitions upper in spec
+* Wed May 13 2009 mvyskocil(a)suse.cz
+- updates:
+ * openjdk b16
+ * icedtea snapshot cc658d9f4a64
+ * hotspot snapshot fc6a5ae3fef5
+- new features:
+ * systemtap support (not yet enabled in SUSE)
+ * removed gcjwebplugin
+ * fixed lcms breakage
+ https://bugs.openjdk.java.net/show_bug.cgi?id=100050
+ * fixes in JNLP runtime
+ * various improvements in support of third party VMs (shark, cacao, zero)
+- patches changes:
+ * removed obsoleted pulseaudio patch
+ * added openjdk-6-src-b16-no-return-in-nonvoid-function.patch
+- enabled tests
+- build using xulrunner 1.9.1 on 11.2
* Tue Apr 21 2009 mvyskocil(a)suse.cz
- fixed bnc#496378: openjdk has an empty keystore
* Tue Apr 14 2009 mvyskocil(a)suse.cz
++++++ hotspot.tar.gz ++++++
java-1_6_0-openjdk/hotspot.tar.gz java-1_6_0-openjdk/hotspot.tar.gz differ: byte 5, line 1
++++++ openjdk-6-src-b16-no-return-in-nonvoid-function.patch ++++++
--- ./openjdk/jdk/src/solaris/native/java/util/TimeZone_md.c 2009-05-12 08:51:56.403254452 +0000
+++ ./openjdk/jdk/src/solaris/native/java/util/TimeZone_md.c.new 2009-05-12 09:44:17.303012772 +0000
@@ -300,6 +300,7 @@
free((void *) buf);
return tz;
}
+ return tz;
}
#else
#ifdef __solaris__
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Remember to have fun...
--
To unsubscribe, e-mail: opensuse-commit+unsubscribe(a)opensuse.org
For additional commands, e-mail: opensuse-commit+help(a)opensuse.org
1
0
Hello community,
here is the log from the commit of package opensc for openSUSE:Factory
checked in at Fri May 15 22:30:08 CEST 2009.
--------
--- opensc/opensc.changes 2009-04-09 11:33:24.000000000 +0200
+++ opensc/opensc.changes 2009-05-07 18:21:15.000000000 +0200
@@ -1,0 +2,11 @@
+Thu May 7 17:52:06 CEST 2009 - sbrabec(a)suse.cz
+
+- Updated to version 0.11.8:
+ * Fix security problem in pkcs11-tool gen_keypair
+ (PublicExponent 1) (bnc#501726)
+ See http://en.opensuse.org/Smart_Cards/Advisories for more.
+ * updated and improve entersafe driver. FTCOS/PK-01C cards are
+ supported now, compatible with cards writen by Feitian's
+ software on windows.
+
+-------------------------------------------------------------------
calling whatdependson for head-i586
Old:
----
opensc-0.11.7.tar.bz2
opensc-gpk-profile.patch
opensc-pkcs15init-undefined.patch
New:
----
opensc-0.11.8.tar.bz2
opensc-ADVISORIES
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ opensc.spec ++++++
--- /var/tmp/diff_new_pack.D21441/_old 2009-05-15 22:18:54.000000000 +0200
+++ /var/tmp/diff_new_pack.D21441/_new 2009-05-15 22:18:54.000000000 +0200
@@ -1,5 +1,5 @@
#
-# spec file for package opensc (Version 0.11.7)
+# spec file for package opensc (Version 0.11.8)
#
# Copyright (c) 2009 SUSE LINUX Products GmbH, Nuernberg, Germany.
#
@@ -34,21 +34,18 @@
%endif
#
Url: http://www.opensc-project.org/opensc/
-Version: 0.11.7
-Release: 2
+Version: 0.11.8
+Release: 1
Group: Productivity/Security
Summary: OpenSC Smart Card Library
License: LGPL v2.1 or later
Requires: libopensc2 = %{version} pcsc-lite
BuildRoot: %{_tmppath}/%{name}-%{version}-build
Source: %{name}-%{version}.tar.bz2
+Source1: %{name}-ADVISORIES
# Supress all ugly warnings related to required .so and .la files in the main package:
Source2: %{name}-rpmlintrc
# and also skip-check-libtool-deps (and add these dependencies to the devel package)
-# PATCH-FIX-UPSTREAM opensc-gpk-profile.patch sbrabec(a)suse.cz -- Fix privdata file-id clask for GPK cards.
-Patch: opensc-gpk-profile.patch
-# PATCH-FIX-UPSTREAM opensc-pkcs15init-undefined.patch bnc440853 sbrabec(a)suse.cz -- Fix undefined code.
-Patch1: opensc-pkcs15init-undefined.patch
%description
OpenSC provides a set of libraries and utilities to access smart cards.
@@ -128,8 +125,10 @@
%prep
%setup -q
-%patch
-%patch1
+tr -d '\r' <doc/nonpersistent/wiki.out/trac.css >doc/nonpersistent/wiki.out/trac.css~
+touch -r doc/nonpersistent/wiki.out/trac.css doc/nonpersistent/wiki.out/trac.css~
+mv doc/nonpersistent/wiki.out/trac.css~ doc/nonpersistent/wiki.out/trac.css
+cp -a %{S:1} ADVISORIES
%build
%if %suse_version > 1100
@@ -147,7 +146,7 @@
%install
%makeinstall
-cp COPYING doc/nonpersistent/ChangeLog $RPM_BUILD_ROOT%{_docdir}/%{name}
+cp COPYING ADVISORIES doc/nonpersistent/ChangeLog $RPM_BUILD_ROOT%{_docdir}/%{name}
%clean
rm -rf $RPM_BUILD_ROOT
@@ -159,6 +158,7 @@
%files
%defattr(-,root,root)
%doc %dir %{_docdir}/%{name}
+%doc %{_docdir}/%{name}/ADVISORIES
%doc %{_docdir}/%{name}/ChangeLog
%doc %{_docdir}/%{name}/COPYING
%doc %{_docdir}/%{name}/NEWS
@@ -189,6 +189,14 @@
%{_libdir}/pkgconfig/*.pc
%changelog
+* Thu May 07 2009 sbrabec(a)suse.cz
+- Updated to version 0.11.8:
+ * Fix security problem in pkcs11-tool gen_keypair
+ (PublicExponent 1) (bnc#501726)
+ See http://en.opensuse.org/Smart_Cards/Advisories for more.
+ * updated and improve entersafe driver. FTCOS/PK-01C cards are
+ supported now, compatible with cards writen by Feitian's
+ software on windows.
* Thu Apr 09 2009 sbrabec(a)suse.cz
- Fixed undefined code (bnc#440853).
- Don't call autoreconf on older products.
++++++ opensc-0.11.7.tar.bz2 -> opensc-0.11.8.tar.bz2 ++++++
++++ 19740 lines of diff (skipped)
++++++ opensc-ADVISORIES ++++++
opensc security advisories
==========================
Opensc gets regular security updates during the maintenance period like
other packages in openSUSE and SLE.
But opensc needs a special care - some of security problems cannot be
fixed by a simple package update. You need to take a special action and
check your cards, tokens or certificates.
If you just updated from a previous version of openSUSE or SLE, don't
forget to check for these advisories.
http://en.opensuse.org/Smart_Cards/Advisories
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Remember to have fun...
--
To unsubscribe, e-mail: opensuse-commit+unsubscribe(a)opensuse.org
For additional commands, e-mail: opensuse-commit+help(a)opensuse.org
1
0
Hello community,
here is the log from the commit of package cmake for openSUSE:Factory
checked in at Fri May 15 22:18:41 CEST 2009.
--------
--- cmake/cmake.changes 2009-05-04 13:39:40.000000000 +0200
+++ cmake/cmake.changes 2009-05-07 09:02:48.000000000 +0200
@@ -18,0 +19,5 @@
+Mon May 4 09:13:37 CEST 2009 - dmueller(a)suse.de
+
+- add %_libdir/cmake to the file list
+
+-------------------------------------------------------------------
calling whatdependson for head-i586
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ cmake.spec ++++++
--- /var/tmp/diff_new_pack.Q19936/_old 2009-05-15 22:17:57.000000000 +0200
+++ /var/tmp/diff_new_pack.Q19936/_new 2009-05-15 22:17:57.000000000 +0200
@@ -20,7 +20,7 @@
Name: cmake
Version: 2.6.4
-Release: 1
+Release: 2
License: BSD 3-Clause
Group: Development/Tools/Building
%define tar_version %version
@@ -91,6 +91,7 @@
%install
make DESTDIR=%{buildroot} install
+mkdir -p %{buildroot}%_libdir/cmake
find %{buildroot}/usr/share/cmake -type f -print0 | xargs -0 chmod 644
%if 0%{?suse_version} > 1020
%suse_update_desktop_file CMake Development IDE Tools Qt
@@ -107,6 +108,7 @@
/usr/bin/ctest
/usr/bin/ccmake
/usr/share/cmake
+%_libdir/cmake
%doc /usr/share/doc/packages/%name
%doc %_mandir/man1/cmakepolicies.1.*
%doc %_mandir/man1/cmake.1.*
@@ -144,6 +146,8 @@
- Clarify docs of old *_OUTPUT_PATH vars
- Fix svn update logic for modified files
- Add get_filename_component(... REALPATH)
+* Mon May 04 2009 dmueller(a)suse.de
+- add %%_libdir/cmake to the file list
* Wed Mar 11 2009 dmueller(a)suse.de
- build fixes for non-suse distros
* Tue Mar 03 2009 puzel(a)suse.cz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Remember to have fun...
--
To unsubscribe, e-mail: opensuse-commit+unsubscribe(a)opensuse.org
For additional commands, e-mail: opensuse-commit+help(a)opensuse.org
1
0
Hello community,
here is the log from the commit of package ghostscript-library for openSUSE:Factory
checked in at Fri May 15 22:17:15 CEST 2009.
--------
--- ghostscript-library/ghostscript-library.changes 2009-04-16 16:20:49.000000000 +0200
+++ ghostscript-library/ghostscript-library.changes 2009-05-13 17:28:27.000000000 +0200
@@ -1,0 +2,10 @@
+Wed May 13 17:26:49 CEST 2009 - werner(a)suse.de
+
+- Complete patch for CVE-2009-0792 (bnc#491897)
+
+-------------------------------------------------------------------
+Wed May 13 15:07:07 CEST 2009 - werner(a)suse.de
+
+- Remove broken part of workaround for bnc#492765
+
+-------------------------------------------------------------------
calling whatdependson for head-i586
Old:
----
ghostscript-mini.changes
ghostscript-mini.spec
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ ghostscript-library.spec ++++++
--- /var/tmp/diff_new_pack.d12131/_old 2009-05-15 22:13:45.000000000 +0200
+++ /var/tmp/diff_new_pack.d12131/_new 2009-05-15 22:13:45.000000000 +0200
@@ -59,7 +59,7 @@
Summary: Necessary Files for Running Ghostscript
%endif
Version: 8.62
-Release: 65
+Release: 66
License: GPL v2 or later
Source0: ghostscript-8.62.tar.bz2
Source1: ftp://mirror.cs.wisc.edu/pub/mirrors/ghost/GPL/current/ghostscript-fonts-st…
@@ -320,7 +320,7 @@
%package -n libgimpprint
License: GPL v2 or later
Version: 4.2.7
-Release: 306
+Release: 307
Summary: Gimp-Print libraries
Group: Development/Libraries/C and C++
@@ -336,7 +336,7 @@
%package -n libgimpprint-devel
License: GPL v2 or later
Version: 4.2.7
-Release: 306
+Release: 307
PreReq: %install_info_prereq
Requires: libgimpprint = %{version}
Requires: glibc-devel
@@ -1345,6 +1345,10 @@
%endif
%changelog
+* Wed May 13 2009 werner(a)suse.de
+- Complete patch for CVE-2009-0792 (bnc#491897)
+* Wed May 13 2009 werner(a)suse.de
+- Remove broken part of workaround for bnc#492765
* Thu Apr 16 2009 werner(a)suse.de
- Use initial workaround for bnc#492765
* Tue Apr 07 2009 werner(a)suse.de
++++++ ghostscript-BCN-492765.patch ++++++
--- /var/tmp/diff_new_pack.d12131/_old 2009-05-15 22:13:47.000000000 +0200
+++ /var/tmp/diff_new_pack.d12131/_new 2009-05-15 22:13:47.000000000 +0200
@@ -20,12 +20,3 @@
rlen -= qbit;\
switch ( rlen >> 3 )\
{\
-@@ -329,7 +331,7 @@ ck_eol:
- goto out;
- }
- }
-- if (rows_left == 0) {
-+ if (rows_left <= 0) {
- status = EOFC;
- goto out;
- }
++++++ ghostscript-CVE-2009-0792.patch ++++++
--- /var/tmp/diff_new_pack.d12131/_old 2009-05-15 22:13:47.000000000 +0200
+++ /var/tmp/diff_new_pack.d12131/_new 2009-05-15 22:13:47.000000000 +0200
@@ -1,6 +1,14 @@
-diff -up icclib/icc.c icclib/icc.c
--- icclib/icc.c
-+++ icclib/icc.c 2009-04-03 15:53:39.000000000 +0100
++++ icclib/icc.c 2009-05-13 17:25:37.561902246 +0200
+@@ -2982,7 +2982,7 @@ static int icmCurve_lookup_fwd(
+ rv |= 1;
+ }
+ ix = (int)floor(val); /* Coordinate */
+- if (ix > (p->size-2))
++ if (ix < 0 || ix > (p->size-2))
+ ix = (p->size-2);
+ w = val - (double)ix; /* weight */
+ val = p->data[ix];
@@ -3004,6 +3004,11 @@ static int icmTable_setup_bwd(
) {
int i;
@@ -83,6 +91,42 @@
sprintf(icp->err,"icmText_alloc: malloc() of icmText data failed");
return icp->errc = 2;
}
+@@ -4301,7 +4319,7 @@ double *in /* Input array[inputChan] */
+ rv |= 1;
+ }
+ ix = (int)floor(val); /* Grid coordinate */
+- if (ix > (p->inputEnt-2))
++ if (ix < 0 || ix > (p->inputEnt-2))
+ ix = (p->inputEnt-2);
+ w = val - (double)ix; /* weight */
+ val = table[ix];
+@@ -4360,7 +4378,7 @@ double *in /* Input array[outputChan] *
+ rv |= 1;
+ }
+ x = (int)floor(val); /* Grid coordinate */
+- if (x > clutPoints_2)
++ if (x < 0 || x > clutPoints_2)
+ x = clutPoints_2;
+ co[e] = val - (double)x; /* 1.0 - weight */
+ gp += x * p->dinc[e]; /* Add index offset for base of cube */
+@@ -4433,7 +4451,7 @@ double *in /* Input array[outputChan] *
+ rv |= 1;
+ }
+ x = (int)floor(val); /* Grid coordinate */
+- if (x > clutPoints_2)
++ if (x < 0 || x > clutPoints_2)
+ x = clutPoints_2;
+ co[e] = val - (double)x; /* 1.0 - weight */
+ gp += x * p->dinc[e]; /* Add index offset for base of cube */
+@@ -4506,7 +4524,7 @@ double *in /* Input array[outputChan] *
+ rv |= 1;
+ }
+ ix = (int)floor(val); /* Grid coordinate */
+- if (ix > (p->outputEnt-2))
++ if (ix < 0 || ix > (p->outputEnt-2))
+ ix = (p->outputEnt-2);
+ w = val - (double)ix; /* weight */
+ val = table[ix];
@@ -6714,7 +6732,7 @@ static int icmTextDescription_allocate(
if (p->size != p->_size) {
if (p->desc != NULL)
@@ -119,3 +163,12 @@
sprintf(icp->err,"icmCrdInfo_alloc: malloc() of CRD%d name string failed",t);
return icp->errc = 2;
}
+@@ -9642,7 +9660,7 @@ static int icc_write(
+ if (p->errc)
+ return p->errc;
+
+- if (p->count > (UINT_MAX - 4 - len) / 12) {
++ if (p->count > (UINT_MAX - 4) / 12) {
+ sprintf(p->err,"icc_write: too many tags");
+ return p->errc = 1;
+ }
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Remember to have fun...
--
To unsubscribe, e-mail: opensuse-commit+unsubscribe(a)opensuse.org
For additional commands, e-mail: opensuse-commit+help(a)opensuse.org
1
0
Hello community,
here is the log from the commit of package samba for openSUSE:Factory
checked in at Fri May 15 22:13:29 CEST 2009.
--------
--- samba/samba.changes 2009-04-30 23:34:59.000000000 +0200
+++ samba/samba.changes 2009-05-09 20:40:55.000000000 +0200
@@ -1,0 +2,6 @@
+Sat May 9 20:19:51 CEST 2009 - lmuelle(a)suse.de
+
+- Add BuildRequires to ctdb-devel for systems newer than SUSE 10.0 and all
+ other build targets.
+
+-------------------------------------------------------------------
calling whatdependson for head-i586
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ samba-doc.spec ++++++
--- /var/tmp/diff_new_pack.Ng4764/_old 2009-05-15 22:12:17.000000000 +0200
+++ /var/tmp/diff_new_pack.Ng4764/_new 2009-05-15 22:12:17.000000000 +0200
@@ -26,7 +26,7 @@
License: GPL v3 or later
Url: http://www.samba.org/
Version: 3.3.4
-Release: 1
+Release: 2
Summary: Samba Documentation
Group: Documentation/Other
AutoReqProv: on
@@ -323,8 +323,8 @@
--------
The Samba Team <samba(a)samba.org>
-Source Timestamp: 2112
-Branch : trunk
+Source Timestamp: 2115
+Branch : 3.3.4
%changelog
* Tue Mar 10 2009 lmuelle(a)suse.de
++++++ samba.spec ++++++
--- /var/tmp/diff_new_pack.Ng4764/_old 2009-05-15 22:12:18.000000000 +0200
+++ /var/tmp/diff_new_pack.Ng4764/_new 2009-05-15 22:12:18.000000000 +0200
@@ -41,6 +41,9 @@
%if 0%{?centos_version} || 0%{?fedora_version} || 0%{?rhel_version} || 0%{?mandriva_version}
BuildRequires: krb5-devel openldap-devel
%endif
+%if 0%{?suse_version} > 1000 || 0%{?fedora_version} || 0%{?rhel_version} || 0%{?mandriva_version}
+BuildRequires: ctdb-devel
+%endif
%define samba_ver 3.3.4
%define samba_ver_suffix %nil
%define samba_ver_full %{samba_ver}%{samba_ver_suffix}
@@ -51,7 +54,7 @@
Url: http://www.samba.org/
AutoReqProv: on
Version: 3.3.4
-Release: 1
+Release: 2
%ifarch ppc64
Obsoletes: samba-64bit
%endif
@@ -134,8 +137,8 @@
--------
The Samba Team <samba(a)samba.org>
-Source Timestamp: 2112
-Branch : trunk
+Source Timestamp: 2115
+Branch : 3.3.4
%package client
License: GPL v3 or later
@@ -174,8 +177,8 @@
--------
The Samba Team <samba(a)samba.org>
-Source Timestamp: 2112
-Branch : trunk
+Source Timestamp: 2115
+Branch : 3.3.4
%if 0%{?suse_version} == 0 || 0%{?suse_version} > 1020
@@ -198,8 +201,8 @@
--------
The Samba Team <samba(a)samba.org>
-Source Timestamp: 2112
-Branch : trunk
+Source Timestamp: 2115
+Branch : 3.3.4
%endif
%if 0%{?suse_version} && 0%{?suse_version} < 1001
@@ -228,8 +231,8 @@
--------
The Samba Team <samba(a)samba.org>
-Source Timestamp: 2112
-Branch : trunk
+Source Timestamp: 2115
+Branch : 3.3.4
%endif
@@ -255,8 +258,8 @@
--------
Jeremy Allison <jra at samba dot org>
-Source Timestamp: 2112
-Branch : trunk
+Source Timestamp: 2115
+Branch : 3.3.4
%if %{make_utils}
@@ -304,8 +307,8 @@
--------
The Samba Team <samba(a)samba.org>
-Source Timestamp: 2112
-Branch : trunk
+Source Timestamp: 2115
+Branch : 3.3.4
%if 0%{?suse_version} && 0%{?suse_version} < 1031
@@ -342,8 +345,8 @@
--------
The Samba Team <samba(a)samba.org>
-Source Timestamp: 2112
-Branch : trunk
+Source Timestamp: 2115
+Branch : 3.3.4
%else
@@ -356,8 +359,8 @@
--------
The Samba Team <samba(a)samba.org>
-Source Timestamp: 2112
-Branch : trunk
+Source Timestamp: 2115
+Branch : 3.3.4
%endif
This package includes the smbclient library.
@@ -390,8 +393,8 @@
--------
The Samba Team <samba(a)samba.org>
-Source Timestamp: 2112
-Branch : trunk
+Source Timestamp: 2115
+Branch : 3.3.4
%package -n libnetapi0
License: GPL v3 or later
@@ -409,8 +412,8 @@
--------
The Samba Team <samba(a)samba.org>
-Source Timestamp: 2112
-Branch : trunk
+Source Timestamp: 2115
+Branch : 3.3.4
%package -n libnetapi-devel
License: GPL v3 or later
@@ -429,8 +432,8 @@
--------
The Samba Team <samba(a)samba.org>
-Source Timestamp: 2112
-Branch : trunk
+Source Timestamp: 2115
+Branch : 3.3.4
%if 0%{?suse_version} && 0%{?suse_version} < 1031
@@ -456,8 +459,8 @@
--------
The Samba Team <samba(a)samba.org>
-Source Timestamp: 2112
-Branch : trunk
+Source Timestamp: 2115
+Branch : 3.3.4
%else
@@ -470,8 +473,8 @@
--------
The Samba Team <samba(a)samba.org>
-Source Timestamp: 2112
-Branch : trunk
+Source Timestamp: 2115
+Branch : 3.3.4
%endif
This package includes the smbsharemodes library.
@@ -501,8 +504,8 @@
--------
The Samba Team <samba(a)samba.org>
-Source Timestamp: 2112
-Branch : trunk
+Source Timestamp: 2115
+Branch : 3.3.4
%if %{make_ldapsmb}
@@ -522,8 +525,8 @@
--------
The Samba Team <samba(a)samba.org>
-Source Timestamp: 2112
-Branch : trunk
+Source Timestamp: 2115
+Branch : 3.3.4
%package -n libtalloc-devel
License: LGPL v3 or later
@@ -542,8 +545,8 @@
--------
The Samba Team <samba(a)samba.org>
-Source Timestamp: 2112
-Branch : trunk
+Source Timestamp: 2115
+Branch : 3.3.4
%package -n libtdb1
License: LGPL v3 or later
@@ -561,8 +564,8 @@
--------
The Samba Team <samba(a)samba.org>
-Source Timestamp: 2112
-Branch : trunk
+Source Timestamp: 2115
+Branch : 3.3.4
%package -n libtdb-devel
License: LGPL v3 or later
@@ -581,8 +584,8 @@
--------
The Samba Team <samba(a)samba.org>
-Source Timestamp: 2112
-Branch : trunk
+Source Timestamp: 2115
+Branch : 3.3.4
%package -n libwbclient0
License: GPL v3 or later
@@ -600,8 +603,8 @@
--------
The Samba Team <samba(a)samba.org>
-Source Timestamp: 2112
-Branch : trunk
+Source Timestamp: 2115
+Branch : 3.3.4
%package -n libwbclient-devel
License: GPL v3 or later
@@ -620,8 +623,8 @@
--------
The Samba Team <samba(a)samba.org>
-Source Timestamp: 2112
-Branch : trunk
+Source Timestamp: 2115
+Branch : 3.3.4
%package -n ldapsmb
License: GPL v2 or later
@@ -629,7 +632,7 @@
Group: Productivity/Networking/Samba
AutoReqProv: on
Version: 1.34b
-Release: 260
+Release: 261
Requires: perl-ldap
%description -n ldapsmb
@@ -642,8 +645,8 @@
--------
Guenther Deschner <guenther at deschner dot de>
-Source Timestamp: 2112
-Branch : trunk
+Source Timestamp: 2115
+Branch : 3.3.4
%endif
%if 0%{?suse_version} == 0 || 0%{?suse_version} > 920
@@ -666,8 +669,8 @@
--------
Steve French <sfrench at Samba dot org>
-Source Timestamp: 2112
-Branch : trunk
+Source Timestamp: 2115
+Branch : 3.3.4
%endif
%if %{make_vscan}
@@ -678,7 +681,7 @@
Group: Productivity/Networking/Samba
AutoReqProv: on
Version: 0.3.6b
-Release: 264
+Release: 265
Provides: samba3-vscan = 0.3.6b
Obsoletes: samba3-vscan
Requires: samba = %{samba_ver}
@@ -696,8 +699,8 @@
--------
Rainer Link <rainer(a)openantivirus.org>
-Source Timestamp: 2112
-Branch : trunk
+Source Timestamp: 2115
+Branch : 3.3.4
%endif
@@ -1698,6 +1701,9 @@
%endif
%changelog
+* Sat May 09 2009 lmuelle(a)suse.de
+- Add BuildRequires to ctdb-devel for systems newer than SUSE 10.0 and all
+ other build targets.
* Thu Apr 30 2009 lmuelle(a)suse.de
- Update to 3.3.4.
+ Fix domain logins for WinXP clients pre SP3 (bug #6263).
++++++ build-source-timestamp ++++++
--- /var/tmp/diff_new_pack.Ng4764/_old 2009-05-15 22:12:18.000000000 +0200
+++ /var/tmp/diff_new_pack.Ng4764/_new 2009-05-15 22:12:18.000000000 +0200
@@ -1,2 +1,2 @@
-2112
-Branch : trunk
+2115
+Branch : 3.3.4
++++++ patches.tar.bz2 ++++++
++++++ vendor-files.tar.bz2 ++++++
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/vendor-files/tools/package-data new/vendor-files/tools/package-data
--- old/vendor-files/tools/package-data 2009-04-30 23:27:48.000000000 +0200
+++ new/vendor-files/tools/package-data 2009-05-09 20:38:07.000000000 +0200
@@ -1,2 +1,2 @@
# This is an autogenrated file.
-SAMBA_PACKAGE_SVN_VERSION="2112"
+SAMBA_PACKAGE_SVN_VERSION="2115"
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Remember to have fun...
--
To unsubscribe, e-mail: opensuse-commit+unsubscribe(a)opensuse.org
For additional commands, e-mail: opensuse-commit+help(a)opensuse.org
1
0
Hello community,
here is the log from the commit of package bluez for openSUSE:Factory
checked in at Fri May 15 22:11:47 CEST 2009.
--------
--- bluez/bluez.changes 2009-05-04 21:11:57.000000000 +0200
+++ bluez/bluez.changes 2009-05-11 19:34:51.000000000 +0200
@@ -1,0 +2,15 @@
+Mon May 11 19:26:39 CEST 2009 - seife(a)suse.de
+
+- update to bluez-4.39:
+ - Add workaround for dealing with unknown inquiry complete.
+ - Fix discovering when using software scheduler.
+ - Fix wrong NoInputNoOutput IO capability string.
+ - Fix race condition with agent during pairing.
+ - Fix agent cancellation for security mode 3 acceptor failure.
+ - Fix temporary flag removal when device creation fails.
+ - Fix hciattach to use ppoll instead of poll.
+ - Fix service class update when adapter is down.
+ - Fix service classes race condition during startup.
+ - Fix release of audio client before freeing the device.
+
+-------------------------------------------------------------------
bluez-gstreamer.changes: same change
calling whatdependson for head-i586
Old:
----
bluez-4.38.tar.bz2
New:
----
bluez-4.39.tar.bz2
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ bluez-gstreamer.spec ++++++
--- /var/tmp/diff_new_pack.O29928/_old 2009-05-15 22:09:13.000000000 +0200
+++ /var/tmp/diff_new_pack.O29928/_new 2009-05-15 22:09:13.000000000 +0200
@@ -1,5 +1,5 @@
#
-# spec file for package bluez-gstreamer (Version 4.38)
+# spec file for package bluez-gstreamer (Version 4.39)
#
# Copyright (c) 2009 SUSE LINUX Products GmbH, Nuernberg, Germany.
#
@@ -24,7 +24,7 @@
BuildRequires: alsa-devel libsndfile-devel
BuildRequires: gstreamer-0_10-devel gstreamer-0_10-plugins-base-devel
Url: http://www.bluez.org
-Version: 4.38
+Version: 4.39
Release: 1
Summary: Bluetooth Sound Support
Group: Productivity/Multimedia/Sound/Utilities
@@ -109,6 +109,18 @@
%{_libdir}/gstreamer-*/*.so
%changelog
+* Mon May 11 2009 seife(a)suse.de
+- update to bluez-4.39:
+ - Add workaround for dealing with unknown inquiry complete.
+ - Fix discovering when using software scheduler.
+ - Fix wrong NoInputNoOutput IO capability string.
+ - Fix race condition with agent during pairing.
+ - Fix agent cancellation for security mode 3 acceptor failure.
+ - Fix temporary flag removal when device creation fails.
+ - Fix hciattach to use ppoll instead of poll.
+ - Fix service class update when adapter is down.
+ - Fix service classes race condition during startup.
+ - Fix release of audio client before freeing the device.
* Mon May 04 2009 seife(a)suse.de
- update to bluez-4.38:
- Add support for builtin plugins.
++++++ bluez.spec ++++++
--- /var/tmp/diff_new_pack.O29928/_old 2009-05-15 22:09:13.000000000 +0200
+++ /var/tmp/diff_new_pack.O29928/_new 2009-05-15 22:09:13.000000000 +0200
@@ -1,5 +1,5 @@
#
-# spec file for package bluez (Version 4.38)
+# spec file for package bluez (Version 4.39)
#
# Copyright (c) 2009 SUSE LINUX Products GmbH, Nuernberg, Germany.
#
@@ -23,7 +23,7 @@
BuildRequires: glib2-devel libnl-devel libusb-devel
BuildRequires: alsa-devel libsndfile-devel
Url: http://www.bluez.org
-Version: 4.38
+Version: 4.39
Release: 1
Summary: Bluetooth Stack for Linux
Group: Hardware/Mobile
@@ -354,6 +354,18 @@
%doc %{_mandir}/man1/dund.1.gz
%changelog
+* Mon May 11 2009 seife(a)suse.de
+- update to bluez-4.39:
+ - Add workaround for dealing with unknown inquiry complete.
+ - Fix discovering when using software scheduler.
+ - Fix wrong NoInputNoOutput IO capability string.
+ - Fix race condition with agent during pairing.
+ - Fix agent cancellation for security mode 3 acceptor failure.
+ - Fix temporary flag removal when device creation fails.
+ - Fix hciattach to use ppoll instead of poll.
+ - Fix service class update when adapter is down.
+ - Fix service classes race condition during startup.
+ - Fix release of audio client before freeing the device.
* Mon May 04 2009 seife(a)suse.de
- update to bluez-4.38:
- Add support for builtin plugins.
++++++ bluez-4.38.tar.bz2 -> bluez-4.39.tar.bz2 ++++++
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/bluez-4.38/audio/avdtp.c new/bluez-4.39/audio/avdtp.c
--- old/bluez-4.38/audio/avdtp.c 2009-05-04 01:00:28.000000000 +0200
+++ new/bluez-4.39/audio/avdtp.c 2009-05-09 11:31:01.000000000 +0200
@@ -307,6 +307,7 @@
bdaddr_t src;
GIOChannel *io;
GSList *seps;
+ GSList *sessions;
};
struct avdtp_local_sep {
@@ -398,7 +399,6 @@
};
static GSList *servers = NULL;
-static GSList *sessions = NULL;
static GSList *avdtp_callbacks = NULL;
@@ -457,17 +457,18 @@
static gboolean try_send(int sk, void *data, size_t len)
{
- gboolean ret;
-
- ret = send(sk, data, len, 0);
-
- if (ret < 0)
- ret = -errno;
- else if ((size_t) ret != len)
- ret = -EIO;
+ int err;
- if (ret < 0) {
- error("try_send: %s (%d)", strerror(-ret), -ret);
+ do {
+ err = send(sk, data, len, 0);
+ } while (err < 0 && errno == EINTR);
+
+ if (err < 0) {
+ error("send: %s (%d)", strerror(errno), errno);
+ return FALSE;
+ } else if ((size_t) err != len) {
+ error("try_send: complete buffer not sent (%d/%zu bytes)",
+ err, len);
return FALSE;
}
@@ -529,7 +530,7 @@
if (!try_send(sock, session->buf, session->omtu))
return FALSE;
- debug("avdtp_send: first packet with %lu bytes sent",
+ debug("avdtp_send: first packet with %zu bytes sent",
session->omtu - sizeof(start));
sent = session->omtu - sizeof(start);
@@ -985,13 +986,10 @@
void avdtp_unref(struct avdtp *session)
{
- if (!session)
- return;
+ struct avdtp_server *server;
- if (!g_slist_find(sessions, session)) {
- error("avdtp_unref: trying to unref a unknown session");
+ if (!session)
return;
- }
session->ref--;
@@ -1015,13 +1013,15 @@
if (session->ref > 0)
return;
+ server = session->server;
+
debug("avdtp_unref(%p): freeing session and removing from list",
session);
if (session->dc_timer)
remove_disconnect_timer(session);
- sessions = g_slist_remove(sessions, session);
+ server->sessions = g_slist_remove(server->sessions, session);
if (session->req)
pending_req_free(session->req);
@@ -1875,14 +1875,14 @@
return FALSE;
}
-static struct avdtp *find_session(const bdaddr_t *src, const bdaddr_t *dst)
+static struct avdtp *find_session(GSList *list, const bdaddr_t *dst)
{
GSList *l;
- for (l = sessions; l != NULL; l = g_slist_next(l)) {
+ for (l = list; l != NULL; l = g_slist_next(l)) {
struct avdtp *s = l->data;
- if (bacmp(src, &s->server->src) || bacmp(dst, &s->dst))
+ if (bacmp(dst, &s->dst))
continue;
return s;
@@ -1893,12 +1893,17 @@
static struct avdtp *avdtp_get_internal(const bdaddr_t *src, const bdaddr_t *dst)
{
+ struct avdtp_server *server;
struct avdtp *session;
assert(src != NULL);
assert(dst != NULL);
- session = find_session(src, dst);
+ server = find_server(servers, src);
+ if (server == NULL)
+ return NULL;
+
+ session = find_session(server->sessions, dst);
if (session) {
if (session->pending_auth)
return NULL;
@@ -1908,7 +1913,7 @@
session = g_new0(struct avdtp, 1);
- session->server = find_server(servers, src);
+ session->server = server;
bacpy(&session->dst, dst);
session->ref = 1;
/* We don't use avdtp_set_state() here since this isn't a state change
@@ -1916,7 +1921,7 @@
session->state = AVDTP_SESSION_STATE_DISCONNECTED;
session->auto_dc = TRUE;
- sessions = g_slist_append(sessions, session);
+ server->sessions = g_slist_append(server->sessions, session);
return session;
}
@@ -1939,11 +1944,6 @@
char address[18];
GError *gerr = NULL;
- if (!g_slist_find(sessions, session)) {
- debug("avdtp_connect_cb: session got removed");
- return;
- }
-
if (err) {
error("%s", err->message);
goto failed;
@@ -2661,10 +2661,14 @@
gboolean avdtp_is_connected(const bdaddr_t *src, const bdaddr_t *dst)
{
+ struct avdtp_server *server;
struct avdtp *session;
- session = find_session(src, dst);
+ server = find_server(servers, src);
+ if (!server)
+ return FALSE;
+ session = find_session(server->sessions, dst);
if (!session)
return FALSE;
@@ -3349,11 +3353,10 @@
if (!server)
return;
- for (l = sessions; l; l = l->next) {
+ for (l = server->sessions; l; l = l->next) {
struct avdtp *session = l->data;
- if (session->server == server)
- connection_lost(session, -ECONNABORTED);
+ connection_lost(session, -ECONNABORTED);
}
servers = g_slist_remove(servers, server);
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/bluez-4.38/audio/device.c new/bluez-4.39/audio/device.c
--- old/bluez-4.38/audio/device.c 2009-04-23 03:40:04.000000000 +0200
+++ new/bluez-4.39/audio/device.c 2009-05-09 11:31:01.000000000 +0200
@@ -618,6 +618,8 @@
void audio_device_unregister(struct audio_device *device)
{
+ unix_device_removed(device);
+
if (device->headset)
headset_unregister(device);
@@ -627,8 +629,6 @@
if (device->control)
control_unregister(device);
- unix_device_removed(device);
-
g_dbus_unregister_interface(device->conn, device->path,
AUDIO_INTERFACE);
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/bluez-4.38/audio/headset.c new/bluez-4.39/audio/headset.c
--- old/bluez-4.38/audio/headset.c 2009-05-04 01:00:28.000000000 +0200
+++ new/bluez-4.39/audio/headset.c 2009-05-09 11:31:01.000000000 +0200
@@ -2060,6 +2060,9 @@
hs->dc_timer = 0;
}
+ if (hs->dc_id)
+ device_remove_disconnect_watch(dev->btd_dev, hs->dc_id);
+
if (hs->sco) {
g_io_channel_shutdown(hs->sco, TRUE, NULL);
g_io_channel_unref(hs->sco);
@@ -2431,6 +2434,7 @@
telephony_device_disconnected(dev);
active_devices = g_slist_remove(active_devices, dev);
device_remove_disconnect_watch(dev->btd_dev, hs->dc_id);
+ hs->dc_id = 0;
break;
case HEADSET_STATE_CONNECT_IN_PROGRESS:
emit_property_changed(dev->conn, dev->path,
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/bluez-4.38/audio/sink.c new/bluez-4.39/audio/sink.c
--- old/bluez-4.38/audio/sink.c 2009-05-04 01:00:28.000000000 +0200
+++ new/bluez-4.39/audio/sink.c 2009-05-09 11:31:01.000000000 +0200
@@ -139,8 +139,11 @@
emit_property_changed(dev->conn, dev->path,
AUDIO_SINK_INTERFACE, "Connected",
DBUS_TYPE_BOOLEAN, &value);
- device_remove_disconnect_watch(dev->btd_dev,
- sink->dc_id);
+ if (sink->dc_id) {
+ device_remove_disconnect_watch(dev->btd_dev,
+ sink->dc_id);
+ sink->dc_id = 0;
+ }
}
sink_set_state(dev, SINK_STATE_DISCONNECTED);
break;
@@ -205,6 +208,12 @@
pending_request_free(dev, p);
}
+ if (sink->dc_id) {
+ device_remove_disconnect_watch(dev->btd_dev,
+ sink->dc_id);
+ sink->dc_id = 0;
+ }
+
if (sink->session) {
avdtp_unref(sink->session);
sink->session = NULL;
@@ -722,6 +731,9 @@
avdtp_stream_remove_cb(sink->session, sink->stream,
sink->cb_id);
+ if (sink->dc_id)
+ device_remove_disconnect_watch(dev->btd_dev, sink->dc_id);
+
if (sink->session)
avdtp_unref(sink->session);
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/bluez-4.38/ChangeLog new/bluez-4.39/ChangeLog
--- old/bluez-4.38/ChangeLog 2009-05-04 01:12:27.000000000 +0200
+++ new/bluez-4.39/ChangeLog 2009-05-09 11:31:01.000000000 +0200
@@ -1,3 +1,15 @@
+ver 4.39:
+ Add workaround for dealing with unknown inquiry complete.
+ Fix discovering when using software scheduler.
+ Fix wrong NoInputNoOutput IO capability string.
+ Fix race condition with agent during pairing.
+ Fix agent cancellation for security mode 3 acceptor failure.
+ Fix temporary flag removal when device creation fails.
+ Fix hciattach to use ppoll instead of poll.
+ Fix service class update when adapter is down.
+ Fix service classes race condition during startup.
+ Fix release of audio client before freeing the device.
+
ver 4.38:
Add support for builtin plugins.
Add framework for adapter operations.
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/bluez-4.38/common/btio.c new/bluez-4.39/common/btio.c
--- old/bluez-4.38/common/btio.c 2009-04-11 13:34:58.000000000 +0200
+++ new/bluez-4.39/common/btio.c 2009-05-09 11:31:01.000000000 +0200
@@ -100,6 +100,20 @@
g_free(accept);
}
+static gboolean check_nval(GIOChannel *io)
+{
+ struct pollfd fds;
+
+ memset(&fds, 0, sizeof(fds));
+ fds.fd = g_io_channel_unix_get_fd(io);
+ fds.events = POLLNVAL;
+
+ if (poll(&fds, 1, 0) > 0 && (fds.revents & POLLNVAL))
+ return TRUE;
+
+ return FALSE;
+}
+
static gboolean accept_cb(GIOChannel *io, GIOCondition cond,
gpointer user_data)
{
@@ -107,7 +121,7 @@
GError *err = NULL;
/* If the user aborted this accept attempt */
- if (cond & G_IO_NVAL)
+ if ((cond & G_IO_NVAL) || check_nval(io))
return FALSE;
if (cond & (G_IO_HUP | G_IO_ERR))
@@ -128,7 +142,7 @@
GError *gerr = NULL;
/* If the user aborted this connect attempt */
- if (cond & G_IO_NVAL)
+ if ((cond & G_IO_NVAL) || check_nval(io))
return FALSE;
if (cond & G_IO_OUT) {
@@ -162,7 +176,7 @@
GIOChannel *cli_io;
/* If the user closed the server */
- if (cond & G_IO_NVAL)
+ if ((cond & G_IO_NVAL) || check_nval(io))
return FALSE;
srv_sock = g_io_channel_unix_get_fd(io);
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/bluez-4.38/common/glib-helper.c new/bluez-4.39/common/glib-helper.c
--- old/bluez-4.38/common/glib-helper.c 2009-05-04 01:00:28.000000000 +0200
+++ new/bluez-4.39/common/glib-helper.c 2009-05-09 11:31:01.000000000 +0200
@@ -283,8 +283,9 @@
sdp_list_free(search, NULL);
/* Set callback responsible for update the internal SDP transaction */
- g_io_add_watch(chan, G_IO_IN | G_IO_HUP | G_IO_ERR | G_IO_NVAL,
- search_process_cb, ctxt);
+ ctxt->io_id = g_io_add_watch(chan,
+ G_IO_IN | G_IO_HUP | G_IO_ERR | G_IO_NVAL,
+ search_process_cb, ctxt);
return FALSE;
failed:
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/bluez-4.38/configure new/bluez-4.39/configure
--- old/bluez-4.38/configure 2009-05-04 01:13:05.000000000 +0200
+++ new/bluez-4.39/configure 2009-05-09 11:31:39.000000000 +0200
@@ -2530,7 +2530,7 @@
# Define the identity of the package.
PACKAGE=bluez
- VERSION=4.38
+ VERSION=4.39
cat >>confdefs.h <<_ACEOF
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/bluez-4.38/configure.ac new/bluez-4.39/configure.ac
--- old/bluez-4.38/configure.ac 2009-05-04 01:12:27.000000000 +0200
+++ new/bluez-4.39/configure.ac 2009-05-09 11:31:01.000000000 +0200
@@ -1,7 +1,7 @@
AC_PREREQ(2.60)
AC_INIT()
-AM_INIT_AUTOMAKE(bluez, 4.38)
+AM_INIT_AUTOMAKE(bluez, 4.39)
AM_CONFIG_HEADER(config.h)
AM_MAINTAINER_MODE
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/bluez-4.38/doc/device-api.txt new/bluez-4.39/doc/device-api.txt
--- old/bluez-4.38/doc/device-api.txt 2008-12-05 20:08:45.000000000 +0100
+++ new/bluez-4.39/doc/device-api.txt 2009-05-09 11:31:01.000000000 +0200
@@ -16,7 +16,7 @@
Methods dict GetProperties()
- Returns all properties for the adapter. See the
+ Returns all properties for the device. See the
properties section for available properties.
Possible Errors: org.bluez.Error.DoesNotExist
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/bluez-4.38/gdbus/watch.c new/bluez-4.39/gdbus/watch.c
--- old/bluez-4.38/gdbus/watch.c 2009-04-11 13:34:58.000000000 +0200
+++ new/bluez-4.39/gdbus/watch.c 2009-05-09 11:31:01.000000000 +0200
@@ -54,6 +54,8 @@
DBusConnection *connection;
char *name;
GSList *callbacks;
+ GSList *processed;
+ gboolean lock;
};
static struct name_data *name_data_find(DBusConnection *connection,
@@ -146,7 +148,11 @@
name_listeners = g_slist_append(name_listeners, data);
done:
- data->callbacks = g_slist_append(data->callbacks, cb);
+ if (data->lock)
+ data->processed = g_slist_append(data->processed, cb);
+ else
+ data->callbacks = g_slist_append(data->callbacks, cb);
+
return first;
}
@@ -229,10 +235,9 @@
static DBusHandlerResult name_exit_filter(DBusConnection *connection,
DBusMessage *message, void *user_data)
{
- GSList *l;
struct name_data *data;
+ struct name_callback *cb;
char *name, *old, *new;
- int keep = 0;
if (!dbus_message_is_signal(message, DBUS_INTERFACE_DBUS,
"NameOwnerChanged"))
@@ -253,8 +258,11 @@
return DBUS_HANDLER_RESULT_NOT_YET_HANDLED;
}
- for (l = data->callbacks; l != NULL; l = l->next) {
- struct name_callback *cb = l->data;
+ data->lock = TRUE;
+
+ while (data->callbacks) {
+ cb = data->callbacks->data;
+
if (*new == '\0') {
if (cb->disc_func)
cb->disc_func(connection, cb->user_data);
@@ -262,11 +270,27 @@
if (cb->conn_func)
cb->conn_func(connection, cb->user_data);
}
- if (cb->conn_func && cb->disc_func)
- keep = 1;
+
+ /* Check if the watch was removed/freed by the callback
+ * function */
+ if (!g_slist_find(data->callbacks, cb))
+ continue;
+
+ data->callbacks = g_slist_remove(data->callbacks, cb);
+
+ if (!cb->conn_func || !cb->disc_func) {
+ g_free(cb);
+ continue;
+ }
+
+ data->processed = g_slist_append(data->processed, cb);
}
- if (keep)
+ data->callbacks = data->processed;
+ data->processed = NULL;
+ data->lock = FALSE;
+
+ if (data->callbacks)
return DBUS_HANDLER_RESULT_NOT_YET_HANDLED;
name_listeners = g_slist_remove(name_listeners, data);
@@ -349,16 +373,23 @@
if (cb->id == id)
goto remove;
}
+ for (lcb = data->processed; lcb; lcb = lcb->next) {
+ cb = lcb->data;
+ if (cb->id == id)
+ goto remove;
+ }
}
return FALSE;
remove:
data->callbacks = g_slist_remove(data->callbacks, cb);
+ data->processed = g_slist_remove(data->processed, cb);
g_free(cb);
- /* Don't remove the filter if other callbacks exist */
- if (data->callbacks)
+ /* Don't remove the filter if other callbacks exist or data is lock
+ * processing callbacks */
+ if (data->callbacks || data->lock)
return TRUE;
if (data->name) {
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/bluez-4.38/input/device.c new/bluez-4.39/input/device.c
--- old/bluez-4.38/input/device.c 2009-05-04 01:00:28.000000000 +0200
+++ new/bluez-4.39/input/device.c 2009-05-09 11:31:01.000000000 +0200
@@ -153,6 +153,9 @@
static void input_device_free(struct input_device *idev)
{
+ if (idev->dc_id)
+ device_remove_disconnect_watch(idev->device, idev->dc_id);
+
dbus_connection_unref(idev->conn);
btd_device_unref(idev->device);
g_free(idev->name);
@@ -424,6 +427,7 @@
"Connected", DBUS_TYPE_BOOLEAN, &connected);
device_remove_disconnect_watch(idev->device, idev->dc_id);
+ idev->dc_id = 0;
iconn->intr_watch = 0;
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/bluez-4.38/network/connection.c new/bluez-4.39/network/connection.c
--- old/bluez-4.38/network/connection.c 2009-05-04 01:00:28.000000000 +0200
+++ new/bluez-4.39/network/connection.c 2009-05-09 11:31:01.000000000 +0200
@@ -163,6 +163,7 @@
NETWORK_PEER_INTERFACE, "UUID",
DBUS_TYPE_STRING, &property);
device_remove_disconnect_watch(nc->peer->device, nc->dc_id);
+ nc->dc_id = 0;
if (nc->watch) {
g_dbus_remove_watch(connection, nc->watch);
nc->watch = 0;
@@ -516,6 +517,9 @@
static void connection_free(struct network_conn *nc)
{
+ if (nc->dc_id)
+ device_remove_disconnect_watch(nc->peer->device, nc->dc_id);
+
connection_destroy(connection, nc);
g_free(nc);
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/bluez-4.38/plugins/hciops.c new/bluez-4.39/plugins/hciops.c
--- old/bluez-4.38/plugins/hciops.c 2009-05-04 01:00:28.000000000 +0200
+++ new/bluez-4.39/plugins/hciops.c 2009-05-09 11:31:01.000000000 +0200
@@ -439,10 +439,34 @@
return err;
}
+static int hciops_stop(int index)
+{
+ int dd;
+ int err = 0;
+
+ dd = hci_open_dev(index);
+ if (dd < 0)
+ return -EIO;
+
+ if (ioctl(dd, HCIDEVDOWN, index) == 0)
+ goto done; /* on success */
+
+ if (errno != EALREADY) {
+ err = -errno;
+ error("Can't stop device hci%d: %s (%d)",
+ index, strerror(errno), errno);
+ }
+
+done:
+ hci_close_dev(dd);
+ return err;
+}
+
static struct btd_adapter_ops hci_ops = {
.setup = hciops_setup,
.cleanup = hciops_cleanup,
.start = hciops_start,
+ .stop = hciops_stop,
};
static int hciops_init(void)
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/bluez-4.38/plugins/service.c new/bluez-4.39/plugins/service.c
--- old/bluez-4.38/plugins/service.c 2009-05-04 01:00:28.000000000 +0200
+++ new/bluez-4.39/plugins/service.c 2009-05-09 11:31:01.000000000 +0200
@@ -761,6 +761,8 @@
g_dbus_remove_watch(connection, user_record->listener_id);
exit_callback(connection, user_record);
}
+
+ g_free(serv_adapter);
}
static int register_interface(const char *path, struct btd_adapter *adapter)
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/bluez-4.38/src/adapter.c new/bluez-4.39/src/adapter.c
--- old/bluez-4.38/src/adapter.c 2009-05-04 01:00:28.000000000 +0200
+++ new/bluez-4.39/src/adapter.c 2009-05-09 11:31:01.000000000 +0200
@@ -66,7 +66,7 @@
#define IO_CAPABILITY_DISPLAYONLY 0x00
#define IO_CAPABILITY_DISPLAYYESNO 0x01
#define IO_CAPABILITY_KEYBOARDONLY 0x02
-#define IO_CAPABILITY_NOINPUTOUTPUT 0x03
+#define IO_CAPABILITY_NOINPUTNOOUTPUT 0x03
#define IO_CAPABILITY_INVALID 0xFF
#define check_address(address) bachk(address)
@@ -424,18 +424,21 @@
};
hci_send_req(dd, &rq, HCI_REQ_TIMEOUT);
+ hci_close_dev(dd);
- if (ioctl(dd, HCIDEVDOWN, adapter->dev_id) < 0) {
- err = -errno;
- hci_close_dev(dd);
+ err = adapter_ops->stop(adapter->dev_id);
+ if (err < 0)
return err;
- }
adapter->off_requested = TRUE;
goto done;
}
+ dd = hci_open_dev(adapter->dev_id);
+ if (dd < 0)
+ return -EIO;
+
if (current_scan != scan_enable) {
err = hci_send_cmd(dd, OGF_HOST_CTL, OCF_WRITE_SCAN_ENABLE,
1, &scan_enable);
@@ -633,6 +636,9 @@
g_slist_free(adapter->found_devices);
adapter->found_devices = NULL;
+ g_slist_free(adapter->oor_devices);
+ adapter->oor_devices = NULL;
+
if (adapter->state & STD_INQUIRY)
cancel_discovery(adapter);
else if (adapter->scheduler_id)
@@ -1145,7 +1151,7 @@
if (adapter->disc_sessions)
goto done;
- if (main_opts.inqmode)
+ if (main_opts.discov_interval)
err = start_inquiry(adapter);
else
err = start_periodic_inquiry(adapter);
@@ -1526,8 +1532,8 @@
return IO_CAPABILITY_DISPLAYYESNO;
if (g_str_equal(capability, "KeyboardOnly"))
return IO_CAPABILITY_KEYBOARDONLY;
- if (g_str_equal(capability, "NoInputOutput"))
- return IO_CAPABILITY_NOINPUTOUTPUT;
+ if (g_str_equal(capability, "NoInputNoOutput"))
+ return IO_CAPABILITY_NOINPUTNOOUTPUT;
return IO_CAPABILITY_INVALID;
}
@@ -1560,6 +1566,10 @@
return invalid_args(msg);
device = adapter_get_device(conn, adapter, address);
+ if (!device)
+ return g_dbus_create_error(msg,
+ ERROR_INTERFACE ".Failed",
+ "Unable to create a new device object");
return device_create_bonding(device, conn, msg, agent_path, cap);
}
@@ -1999,11 +2009,12 @@
return main_opts.pairto;
}
-static int adapter_up(struct btd_adapter *adapter, int dd)
+static int adapter_up(struct btd_adapter *adapter)
{
char mode[14], srcaddr[18];
uint8_t scan_mode;
gboolean powered, dev_down = FALSE;
+ int dd;
ba2str(&adapter->bdaddr, srcaddr);
@@ -2046,7 +2057,7 @@
else
write_device_mode(&adapter->bdaddr, mode);
- return adapter_up(adapter, dd);
+ return adapter_up(adapter);
} else if (!g_str_equal(mode, "connectable") &&
adapter->discov_timeout == 0) {
/* Set discoverable only if timeout is 0 */
@@ -2056,6 +2067,11 @@
}
proceed:
+ dd = hci_open_dev(adapter->dev_id);
+
+ if (dd < 0)
+ return -EIO;
+
if (dev_down == FALSE)
hci_send_cmd(dd, OGF_HOST_CTL, OCF_WRITE_SCAN_ENABLE,
1, &scan_mode);
@@ -2070,13 +2086,14 @@
adapter->initialized = TRUE;
- adapter_update(adapter, 0, FALSE);
-
manager_add_adapter(adapter->path);
}
+ if (adapter->svc_cache)
+ adapter_update(adapter, 0);
+
if (dev_down) {
- ioctl(dd, HCIDEVDOWN, adapter->dev_id);
+ adapter_ops->stop(adapter->dev_id);
adapter->off_requested = TRUE;
return 1;
} else
@@ -2084,6 +2101,8 @@
ADAPTER_INTERFACE, "Powered",
DBUS_TYPE_BOOLEAN, &powered);
+ hci_close_dev(dd);
+
return 0;
}
@@ -2197,10 +2216,10 @@
adapter->state &= ~STD_INQUIRY;
adapter_setup(adapter, dd);
- err = adapter_up(adapter, dd);
-
hci_close_dev(dd);
+ err = adapter_up(adapter);
+
info("Adapter %s has been enabled", adapter->path);
return err;
@@ -2313,8 +2332,7 @@
return 0;
}
-int adapter_update(struct btd_adapter *adapter, uint8_t new_svc,
- gboolean starting)
+int adapter_update(struct btd_adapter *adapter, uint8_t new_svc)
{
struct hci_dev *dev = &adapter->dev;
int dd;
@@ -2323,7 +2341,7 @@
if (dev->ignore)
return 0;
- if (starting || !adapter->initialized) {
+ if (!adapter->up) {
adapter->svc_cache = new_svc;
return 0;
}
@@ -2457,16 +2475,9 @@
unload_drivers(adapter);
/* Return adapter to down state if it was not up on init */
- if (adapter->up && !adapter->already_up) {
- int dd = hci_open_dev(adapter->dev_id);
- if (dd < 0)
- goto done;
+ if (adapter->up && !adapter->already_up)
+ adapter_ops->stop(adapter->dev_id);
- ioctl(dd, HCIDEVDOWN, adapter->dev_id);
- hci_close_dev(dd);
- }
-
-done:
g_dbus_unregister_interface(connection, path, ADAPTER_INTERFACE);
g_free(path);
}
@@ -2499,8 +2510,9 @@
if (state & PERIODIC_INQUIRY || state & STD_INQUIRY)
discov_active = TRUE;
- else if (adapter->disc_sessions && main_opts.inqmode)
- adapter->scheduler_id = g_timeout_add_seconds(main_opts.inqmode,
+ else if (adapter->disc_sessions && main_opts.discov_interval)
+ adapter->scheduler_id = g_timeout_add_seconds(
+ main_opts.discov_interval,
(GSourceFunc) start_inquiry,
adapter);
@@ -2654,6 +2666,11 @@
if (dev) {
if (rssi == dev->rssi)
return;
+
+ /* Out of range list update */
+ adapter->oor_devices = g_slist_remove(adapter->oor_devices,
+ dev);
+
goto done;
}
@@ -2698,53 +2715,27 @@
void adapter_update_oor_devices(struct btd_adapter *adapter)
{
GSList *l;
- struct remote_dev_info *dev;
- bdaddr_t tmp;
for (l = adapter->oor_devices; l; l = l->next) {
- char *address = l->data;
- struct remote_dev_info match;
+ char address[18];
+ const char *paddr = address;
+ struct remote_dev_info *dev = l->data;
- memset(&match, 0, sizeof(struct remote_dev_info));
- str2ba(address, &match.bdaddr);
+ ba2str(&dev->bdaddr, address);
g_dbus_emit_signal(connection, adapter->path,
ADAPTER_INTERFACE, "DeviceDisappeared",
- DBUS_TYPE_STRING, &address,
+ DBUS_TYPE_STRING, &paddr,
DBUS_TYPE_INVALID);
- dev = adapter_search_found_devices(adapter, &match);
- if (!dev)
- continue;
-
adapter->found_devices = g_slist_remove(adapter->found_devices, dev);
dev_info_free(dev);
}
- g_slist_foreach(adapter->oor_devices, (GFunc) free, NULL);
g_slist_free(adapter->oor_devices);
adapter->oor_devices = NULL;
- for (l = adapter->found_devices; l; l = l->next) {
- dev = l->data;
- baswap(&tmp, &dev->bdaddr);
- adapter->oor_devices = g_slist_append(adapter->oor_devices,
- batostr(&tmp));
- }
-}
-
-void adapter_remove_oor_device(struct btd_adapter *adapter, char *peer_addr)
-{
- GSList *l;
-
- l = g_slist_find_custom(adapter->oor_devices, peer_addr,
- (GCompareFunc) strcmp);
- if (l) {
- char *dev = l->data;
- adapter->oor_devices = g_slist_remove(adapter->oor_devices,
- dev);
- g_free(dev);
- }
+ adapter->oor_devices = g_slist_copy(adapter->found_devices);
}
void adapter_mode_changed(struct btd_adapter *adapter, uint8_t scan_mode)
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/bluez-4.38/src/adapter.h new/bluez-4.39/src/adapter.h
--- old/bluez-4.38/src/adapter.h 2009-05-04 01:00:28.000000000 +0200
+++ new/bluez-4.39/src/adapter.h 2009-05-09 11:31:01.000000000 +0200
@@ -73,8 +73,7 @@
int adapter_stop(struct btd_adapter *adapter);
-int adapter_update(struct btd_adapter *adapter, uint8_t cls,
- gboolean starting);
+int adapter_update(struct btd_adapter *adapter, uint8_t cls);
int adapter_get_class(struct btd_adapter *adapter, uint8_t *cls);
@@ -117,7 +116,6 @@
void adapter_emit_device_found(struct btd_adapter *adapter,
struct remote_dev_info *dev);
void adapter_update_oor_devices(struct btd_adapter *adapter);
-void adapter_remove_oor_device(struct btd_adapter *adapter, char *peer_addr);
void adapter_mode_changed(struct btd_adapter *adapter, uint8_t scan_mode);
void adapter_name_changed(struct btd_adapter *adapter, const char *name);
struct agent *adapter_get_agent(struct btd_adapter *adapter);
@@ -153,6 +151,7 @@
int (*setup) (void);
void (*cleanup) (void);
int (*start) (int index);
+ int (*stop) (int index);
};
int btd_register_adapter_ops(struct btd_adapter_ops *btd_adapter_ops);
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/bluez-4.38/src/dbus-hci.c new/bluez-4.39/src/dbus-hci.c
--- old/bluez-4.38/src/dbus-hci.c 2009-04-11 13:34:58.000000000 +0200
+++ new/bluez-4.39/src/dbus-hci.c 2009-05-09 11:31:01.000000000 +0200
@@ -556,9 +556,19 @@
if (found_device_req_name(adapter) == 0)
return;
+ state = adapter_get_state(adapter);
+
+ /*
+ * workaround to identify situation when there is no devices around
+ * but periodic inquiry is active.
+ */
+ if (!(state & STD_INQUIRY) && !(state & PERIODIC_INQUIRY)) {
+ state |= PERIODIC_INQUIRY;
+ adapter_set_state(adapter, state);
+ }
+
/* reset the discover type to be able to handle D-Bus and non D-Bus
* requests */
- state = adapter_get_state(adapter);
state &= ~STD_INQUIRY;
state &= ~PERIODIC_INQUIRY;
adapter_set_state(adapter, state);
@@ -661,17 +671,20 @@
state |= PERIODIC_INQUIRY;
adapter_set_state(adapter, state);
}
- /* Out of range list update */
- if (adapter_get_state(adapter) & PERIODIC_INQUIRY)
- adapter_remove_oor_device(adapter, peer_addr);
+
+ legacy = (data == NULL);
memset(&match, 0, sizeof(struct remote_dev_info));
bacpy(&match.bdaddr, peer);
match.name_status = NAME_SENT;
/* if found: don't send the name again */
dev = adapter_search_found_devices(adapter, &match);
- if (dev)
+ if (dev) {
+ adapter_update_found_devices(adapter, peer, rssi, class,
+ NULL, NULL, legacy,
+ NAME_NOT_REQUIRED);
return;
+ }
/* the inquiry result can be triggered by NON D-Bus client */
if (adapter_get_state(adapter) & RESOLVE_NAME)
@@ -703,7 +716,6 @@
}
}
- legacy = (data == NULL);
if (name && name_type != 0x08)
name_status = NAME_SENT;
@@ -792,6 +804,7 @@
struct btd_device *device;
struct btd_adapter *adapter;
uint8_t local_auth = 0xff, remote_auth, new_key_type;
+ gboolean bonding;
if (!get_adapter_and_device(local, peer, &adapter, &device, TRUE))
return -ENODEV;
@@ -803,6 +816,7 @@
get_auth_requirements(local, peer, &local_auth);
remote_auth = device_get_auth(device);
+ bonding = device_is_bonding(device, NULL);
debug("local auth 0x%02x and remote auth 0x%02x",
local_auth, remote_auth);
@@ -831,7 +845,10 @@
return err;
}
- device_set_temporary(device, FALSE);
+ /* If not the initiator consider the device permanent otherwise
+ * wait to service discover to complete */
+ if (!bonding)
+ device_set_temporary(device, FALSE);
}
/* If this is not the first link key set a flag so a subsequent auth
@@ -841,7 +858,7 @@
if (!device_is_connected(device))
device_set_secmode3_conn(device, TRUE);
- else if (!device_is_bonding(device, NULL) && old_key_type == 0xff)
+ else if (!bonding && old_key_type == 0xff)
hcid_dbus_bonding_process_complete(local, peer, 0);
return 0;
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/bluez-4.38/src/device.c new/bluez-4.39/src/device.c
--- old/bluez-4.38/src/device.c 2009-05-04 01:00:28.000000000 +0200
+++ new/bluez-4.39/src/device.c 2009-05-09 11:31:01.000000000 +0200
@@ -191,7 +191,8 @@
if (device->agent)
agent_destroy(device->agent, FALSE);
- if (agent && agent_is_busy(agent, device))
+ if (agent && (agent_is_busy(agent, device) ||
+ agent_is_busy(agent, device->authr)))
agent_cancel(agent);
g_slist_foreach(device->uuids, (GFunc) g_free, NULL);
@@ -205,6 +206,7 @@
debug("device_free(%p)", device);
+ g_free(device->authr);
g_free(device->path);
g_free(device);
}
@@ -1324,6 +1326,8 @@
g_dbus_send_message(req->conn, reply);
+ device_set_temporary(device, FALSE);
+
cleanup:
browse_req_free(req);
}
@@ -1579,7 +1583,17 @@
}
}
-static void bonding_request_free(struct bonding_req *bonding, gboolean close)
+static void bonding_request_cancel(struct bonding_req *bonding)
+{
+ if (!bonding->io)
+ return;
+
+ g_io_channel_shutdown(bonding->io, TRUE, NULL);
+ g_io_channel_unref(bonding->io);
+ bonding->io = NULL;
+}
+
+static void bonding_request_free(struct bonding_req *bonding)
{
struct btd_device *device;
@@ -1598,11 +1612,8 @@
if (bonding->io_id)
g_source_remove(bonding->io_id);
- if (bonding->io) {
- if (close)
- g_io_channel_shutdown(bonding->io, TRUE, NULL);
+ if (bonding->io)
g_io_channel_unref(bonding->io);
- }
device = bonding->device;
g_free(bonding);
@@ -1686,6 +1697,8 @@
error_connection_attempt_failed(device->bonding->conn,
device->bonding->msg, ENETDOWN);
+ bonding_request_free(device->bonding);
+
return FALSE;
}
@@ -1775,7 +1788,7 @@
cleanup:
device->bonding->io_id = 0;
- bonding_request_free(device->bonding, FALSE);
+ bonding_request_free(device->bonding);
}
static void create_bond_req_exit(DBusConnection *conn, void *user_data)
@@ -1789,7 +1802,7 @@
if (device->bonding) {
device->bonding->listener_id = 0;
- bonding_request_free(device->bonding, TRUE);
+ bonding_request_cancel(device->bonding);
}
}
@@ -1883,7 +1896,6 @@
goto failed;
device->auth = 0xff;
- device->temporary = FALSE;
g_free(device->authr);
device->authr = NULL;
@@ -1917,7 +1929,7 @@
device_set_paired(device, TRUE);
- bonding_request_free(bonding, TRUE);
+ bonding_request_free(bonding);
return;
@@ -1954,7 +1966,8 @@
reply = new_authentication_return(bonding->msg, status);
g_dbus_send_message(bonding->conn, reply);
- bonding_request_free(bonding, TRUE);
+ bonding_request_cancel(bonding);
+ bonding_request_free(bonding);
}
static void pincode_cb(struct agent *agent, DBusError *err, const char *pincode,
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/bluez-4.38/src/hcid.h new/bluez-4.39/src/hcid.h
--- old/bluez-4.38/src/hcid.h 2009-05-04 01:00:28.000000000 +0200
+++ new/bluez-4.39/src/hcid.h 2009-05-09 11:31:01.000000000 +0200
@@ -62,7 +62,7 @@
uint8_t scan;
uint8_t mode;
- uint8_t inqmode;
+ uint8_t discov_interval;
char deviceid[15]; /* FIXME: */
int sock;
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/bluez-4.38/src/main.c new/bluez-4.39/src/main.c
--- old/bluez-4.38/src/main.c 2009-05-04 01:12:27.000000000 +0200
+++ new/bluez-4.39/src/main.c 2009-05-09 11:31:01.000000000 +0200
@@ -57,8 +57,6 @@
struct main_opts main_opts;
-static gboolean starting = TRUE;
-
static GKeyFile *load_config(const char *file)
{
GError *err = NULL;
@@ -150,8 +148,8 @@
debug("%s", err->message);
g_clear_error(&err);
} else {
- debug("inqmode=%d", val);
- main_opts.inqmode = val;
+ debug("discov_interval=%d", val);
+ main_opts.discov_interval = val;
}
boolean = g_key_file_get_boolean(config, "General",
@@ -226,14 +224,11 @@
if (hci_test_bit(HCI_RAW, &di.flags))
continue;
- if (!hci_test_bit(HCI_UP, &di.flags))
- continue;
-
if (bacmp(bdaddr, BDADDR_ANY) != 0 &&
bacmp(bdaddr, &di.bdaddr) != 0)
continue;
- manager_update_adapter(di.dev_id, value, starting);
+ manager_update_adapter(di.dev_id, value);
}
g_free(dl);
@@ -417,8 +412,6 @@
exit(1);
}
- starting = FALSE;
-
manager_startup_complete();
debug("Entering main loop");
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/bluez-4.38/src/manager.c new/bluez-4.39/src/manager.c
--- old/bluez-4.38/src/manager.c 2009-04-16 18:57:29.000000000 +0200
+++ new/bluez-4.39/src/manager.c 2009-05-09 11:31:01.000000000 +0200
@@ -60,7 +60,7 @@
return base_path;
}
-int manager_update_adapter(uint16_t dev_id, uint8_t svc, gboolean starting)
+int manager_update_adapter(uint16_t dev_id, uint8_t svc)
{
struct btd_adapter *adapter;
@@ -68,7 +68,7 @@
if (!adapter)
return -EINVAL;
- return adapter_update(adapter, svc, starting);
+ return adapter_update(adapter, svc);
}
int manager_startup_complete(void)
@@ -77,7 +77,7 @@
for (l = adapters; l != NULL; l = l->next) {
struct btd_adapter *adapter = l->data;
- adapter_update(adapter, 0, FALSE);
+ adapter_update(adapter, 0);
}
return 0;
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/bluez-4.38/src/manager.h new/bluez-4.39/src/manager.h
--- old/bluez-4.38/src/manager.h 2009-05-04 01:00:28.000000000 +0200
+++ new/bluez-4.39/src/manager.h 2009-05-09 11:31:01.000000000 +0200
@@ -40,7 +40,7 @@
void manager_add_adapter(const char *path);
int manager_get_default_adapter();
void manager_set_default_adapter(int id);
-int manager_update_adapter(uint16_t id, uint8_t svc, gboolean starting);
+int manager_update_adapter(uint16_t id, uint8_t svc);
int manager_startup_complete(void);
int manager_get_adapter_class(uint16_t dev_id, uint8_t *cls);
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/bluez-4.38/test/l2test.c new/bluez-4.39/test/l2test.c
--- old/bluez-4.38/test/l2test.c 2009-05-04 01:00:28.000000000 +0200
+++ new/bluez-4.39/test/l2test.c 2009-05-09 11:31:01.000000000 +0200
@@ -826,7 +826,7 @@
l2cap_info_req *req = (l2cap_info_req *) (buf + L2CAP_CMD_HDR_SIZE);
l2cap_info_rsp *rsp = (l2cap_info_rsp *) (buf + L2CAP_CMD_HDR_SIZE);
uint16_t mtu;
- uint32_t mask, channels;
+ uint32_t channels, mask = 0x0000;
struct sockaddr_l2 addr;
int sk, err;
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/bluez-4.38/tools/hciattach.c new/bluez-4.39/tools/hciattach.c
--- old/bluez-4.38/tools/hciattach.c 2009-01-08 17:00:12.000000000 +0100
+++ new/bluez-4.39/tools/hciattach.c 2009-05-09 11:31:01.000000000 +0200
@@ -27,6 +27,7 @@
#include <config.h>
#endif
+#define _GNU_SOURCE
#include <stdio.h>
#include <errno.h>
#include <fcntl.h>
@@ -50,6 +51,10 @@
#include "hciattach.h"
+#ifdef NEED_PPOLL
+#include "ppoll.h"
+#endif
+
struct uart_t {
char *type;
int m_id;
@@ -1182,6 +1187,7 @@
pid_t pid;
struct sigaction sa;
struct pollfd p;
+ sigset_t sigs;
char dev[PATH_MAX];
detach = 1;
@@ -1328,9 +1334,16 @@
p.fd = n;
p.events = POLLERR | POLLHUP;
+ sigfillset(&sigs);
+ sigdelset(&sigs, SIGCHLD);
+ sigdelset(&sigs, SIGPIPE);
+ sigdelset(&sigs, SIGTERM);
+ sigdelset(&sigs, SIGINT);
+ sigdelset(&sigs, SIGHUP);
+
while (!__io_canceled) {
p.revents = 0;
- err = poll(&p, 1, 500);
+ err = ppoll(&p, 1, NULL, &sigs);
if (err < 0 && errno == EINTR)
continue;
if (err)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Remember to have fun...
--
To unsubscribe, e-mail: opensuse-commit+unsubscribe(a)opensuse.org
For additional commands, e-mail: opensuse-commit+help(a)opensuse.org
1
0
Hello community,
here is the log from the commit of package libsndfile for openSUSE:Factory
checked in at Fri May 15 22:08:58 CEST 2009.
--------
--- libsndfile/libsndfile.changes 2009-04-24 15:04:37.000000000 +0200
+++ libsndfile/libsndfile.changes 2009-05-15 14:45:44.000000000 +0200
@@ -1,0 +2,7 @@
+Fri May 15 14:37:52 CEST 2009 - tiwai(a)suse.de
+
+- updated to version 1.0.20:
+ * Fix for potential heap overflow
+- enable ogg/vorbis support
+
+-------------------------------------------------------------------
--- libsndfile/libsndfile-progs.changes 2009-04-27 01:06:37.000000000 +0200
+++ libsndfile/libsndfile-progs.changes 2009-05-15 14:45:41.000000000 +0200
@@ -1,0 +2,7 @@
+Fri May 15 14:38:13 CEST 2009 - tiwai(a)suse.de
+
+- updated to version 1.0.20:
+ * Fix for potential heap overflow
+- enable ogg/vorbis support
+
+-------------------------------------------------------------------
calling whatdependson for head-i586
Old:
----
libsndfile-1.0.19.tar.bz2
New:
----
libsndfile-1.0.20.tar.bz2
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ libsndfile-progs.spec ++++++
--- /var/tmp/diff_new_pack.l28262/_old 2009-05-15 22:07:55.000000000 +0200
+++ /var/tmp/diff_new_pack.l28262/_new 2009-05-15 22:07:55.000000000 +0200
@@ -1,5 +1,5 @@
#
-# spec file for package libsndfile-progs (Version 1.0.19)
+# spec file for package libsndfile-progs (Version 1.0.20)
#
# Copyright (c) 2009 SUSE LINUX Products GmbH, Nuernberg, Germany.
#
@@ -18,10 +18,10 @@
Name: libsndfile-progs
-BuildRequires: alsa-devel flac-devel gcc-c++ libjack-devel pkgconfig sqlite-devel
+BuildRequires: alsa-devel flac-devel gcc-c++ libjack-devel libvorbis-devel pkgconfig sqlite-devel
Summary: Example Programs for libsndfile
-Version: 1.0.19
-Release: 3
+Version: 1.0.20
+Release: 1
License: LGPL v2.1 or later
Group: System/Libraries
Source: libsndfile-%{version}.tar.bz2
@@ -68,6 +68,10 @@
%doc %{_mandir}/man?/*
%changelog
+* Fri May 15 2009 tiwai(a)suse.de
+- updated to version 1.0.20:
+ * Fix for potential heap overflow
+- enable ogg/vorbis support
* Mon Apr 27 2009 ro(a)suse.de
- buildfix: tar basedir is libsndfile not libsndfile-progs
* Fri Apr 24 2009 tiwai(a)suse.de
++++++ libsndfile.spec ++++++
--- /var/tmp/diff_new_pack.l28262/_old 2009-05-15 22:07:55.000000000 +0200
+++ /var/tmp/diff_new_pack.l28262/_new 2009-05-15 22:07:55.000000000 +0200
@@ -1,5 +1,5 @@
#
-# spec file for package libsndfile (Version 1.0.19)
+# spec file for package libsndfile (Version 1.0.20)
#
# Copyright (c) 2009 SUSE LINUX Products GmbH, Nuernberg, Germany.
#
@@ -18,10 +18,10 @@
Name: libsndfile
-BuildRequires: alsa-devel flac-devel gcc-c++ pkg-config sqlite-devel
+BuildRequires: alsa-devel flac-devel gcc-c++ libvorbis-devel pkg-config sqlite-devel
Summary: A Library to Handle Various Audio File Formats
-Version: 1.0.19
-Release: 3
+Version: 1.0.20
+Release: 1
License: LGPL v2.1 or later
Group: System/Libraries
Obsoletes: libsnd
@@ -109,7 +109,7 @@
%files devel
%defattr(-, root, root)
-%doc AUTHORS COPYING ChangeLog NEWS README TODO
+%doc AUTHORS COPYING ChangeLog NEWS README
%doc doc/*.html doc/*.jpg doc/*.css doc/*.HOWTO
%{_libdir}/libsndfile.so
%{_includedir}/sndfile.h
@@ -118,6 +118,10 @@
%doc examples
%changelog
+* Fri May 15 2009 tiwai(a)suse.de
+- updated to version 1.0.20:
+ * Fix for potential heap overflow
+- enable ogg/vorbis support
* Fri Apr 24 2009 tiwai(a)suse.de
- built progs subpackage from an individual spec file to cut the
circular dependency with jack.
++++++ libsndfile-1.0.19.tar.bz2 -> libsndfile-1.0.20.tar.bz2 ++++++
++++ 21782 lines of diff (skipped)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Remember to have fun...
--
To unsubscribe, e-mail: opensuse-commit+unsubscribe(a)opensuse.org
For additional commands, e-mail: opensuse-commit+help(a)opensuse.org
1
0