Compare commits

...

151 Commits

Author SHA1 Message Date
Richard Purdie
940da2e688 build-appliance-image: Update to rocko head revision
(From OE-Core rev: 8a2c177c7dad5c838b3c6abd3088a2bc3896a6a3)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-11-07 21:36:34 +00:00
Richard Purdie
30c10a3d8b poky.conf: Bump version for 2.4.4 rocko release
(From meta-yocto rev: b6e1076d4ec38a61854efbeaa13faa9785a56c8d)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-11-07 21:36:20 +00:00
Armin Kuster
d67a82687f linux-yoct-rt/4.4: update to 4.4.162
(From OE-Core rev: e5698cbd2f6b848666db9be0834974a92151f986)

Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-11-07 21:34:09 +00:00
Armin Kuster
90296035e1 linux-yocto-tiny/4.4: update to 4.4.162
(From OE-Core rev: 1ec800e929f0b8bd3f14aa55d4f7123230eb53d5)

Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-11-07 21:34:09 +00:00
Armin Kuster
b3a83f2b96 linux-yocto/4.4: update to 4.4.162
(From OE-Core rev: 1e4a0b4a9ecc45d211aabe2822e1d594a9293d3d)

Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-11-07 21:34:09 +00:00
Bruce Ashfield
2b55a844db linux-yocto/4.12: update to v4.12.28
Integrating Paul Gortmaker's -stable updates to 4.12 that comprise the
following changes:

    f4fd7580487d Linux 4.12.28
    d15dfc7d192f net: mvneta: eliminate wrong call to handle rx descriptor error
    c7a79cbd2b44 net: mvneta: use proper rxq_number in loop on rx queues
    f65f1aed2ef2 net: mvneta: clear interface link status on port disable
    402f4ea26693 tcp: add tcp_ooo_try_coalesce() helper
    035eddf502ef tcp: call tcp_drop() from tcp_data_queue_ofo()
    c224a5920d55 tcp: detect malicious patterns in tcp_collapse_ofo_queue()
    7c5d21c36cec tcp: avoid collapses in tcp_prune_queue() if possible
    f999a5cfc3eb tcp: free batches of packets in tcp_prune_ofo_queue()
    3471d76b1128 net: add rb_to_skb() and other rb tree helpers
    fcd212157f50 libnvdimm, pfn: fix start_pad handling for aligned namespaces
    d90d61722843 libnvdimm, dax: fix 1GB-aligned namespaces vs physical misalignment
    df6a2110169e drm/sun4i: Fix error path handling
    d2d90272068d drm/i915: Flush pending GTT writes before unbinding
    55e3ba836aee powerpc/perf: Dereference BHRB entries safely
    32c5b092ac7e clk: sunxi: sun9i-mmc: Implement reset callback for reset controls
    a472f9b5c546 pinctrl: cherryview: Mask all interrupts on Intel_Strago based systems
    32f9f01a1b49 spi: a3700: Fix clk prescaling for coefficient over 15
    39e2376e2774 spi: xilinx: Detect stall with Unknown commands
    104bf43e4653 Revert "parisc: Re-enable interrupts early"
    2c6a864363b5 parisc: Hide Diva-built-in serial aux and graphics card
    4e92abc4d371 parisc: Align os_hpmc_size on word boundary
    8df2ad333664 ALSA: usb-audio: Add native DSD support for Esoteric D-05X
    2d7184d7f8b1 ALSA: rawmidi: Avoid racy info ioctl via ctl device
    425708ccc413 mfd: twl6040: Fix child-node lookup
    d99aacab316b mfd: twl4030-audio: Fix sibling-node lookup
    cd2ca561cdd7 mfd: cros ec: spi: Don't send first message too soon
    f5d153b69e6a crypto: mcryptd - protect the per-CPU queue with a lock
    01b2634b17f4 acpi, nfit: fix health event notification
    1170a37d5339 ACPI: APEI / ERST: Fix missing error handling in erst_reader()
    0cf5d1f5ce10 bpf: fix incorrect sign extension in check_alu_op()
    39cc58874bfc bpf, sparc: fix usage of wrong reg for load_skb_regs after call
    8c570303798e bpf, ppc64: do not reload skb pointers in non-skb context
    05bd23b36b88 bpf, s390x: do not reload skb pointers in non-skb context
    da92e092ffa7 platform/x86: asus-wireless: send an EV_SYN/SYN_REPORT between state changes
    ab3980511fa0 thermal/drivers/hisi: Fix multiple alarm interrupts firing
    ed7ec377cb05 thermal/drivers/hisi: Simplify the temperature/step computation
    b4322338048d thermal/drivers/hisi: Fix kernel panic on alarm interrupt
    e9b4b6019cc2 thermal/drivers/hisi: Fix missing interrupt enablement
    01f1870f5aa8 IB/opa_vnic: Properly return the total MACs in UC MAC list
    59522364dab2 IB/opa_vnic: Properly clear Mac Table Digest
    84cf0ea1cb2a cpuidle: fix broadcast control when broadcast can not be entered
    fdb28a72dafa rtc: set the alarm to the next expiring timer
    245a952509f6 tcp: fix under-evaluated ssthresh in TCP Vegas
    ebe28298b759 clk: sunxi-ng: sun6i: Rename HDMI DDC clock to avoid name collision
    c31c122f7744 staging: greybus: light: Release memory obtained by kasprintf
    7900ee86e495 net: ipv6: send NS for DAD when link operationally up
    0c8d7ea9c7db ibmvnic: Set state UP
    eb3237c59a98 fm10k: ensure we process SM mbx when processing VF mbx
    a076534d71b3 vfio/pci: Virtualize Maximum Payload Size
    0e8c3cf3f83e i40e: fix client notify of VF reset
    2e3bad157461 scsi: lpfc: PLOGI failures during NPIV testing
    022e3fe9ac98 scsi: lpfc: Fix secure firmware updates
    9e7341570bf9 fm10k: fix mis-ordered parameters in declaration for .ndo_set_vf_bw
    af88451b2676 ASoC: codecs: msm8916-wcd-analog: fix module autoload
    2fc38deb5bed ASoC: img-parallel-out: Add pm_runtime_get/put to set_fmt callback
    4529e660bc83 tracing: Exclude 'generic fields' from histograms
    3485fd44f243 PCI/AER: Report non-fatal errors only to the affected endpoint
    64e367610786 Bluetooth: BT_HCIUART now depends on SERIAL_DEV_BUS
    47663fe61367 Bluetooth: hci_uart_set_flow_control: Fix NULL deref when using serdev
    58adf4fe65f8 md: always set THREAD_WAKEUP and wake up wqueue if thread existed
    e9f7be0e550e block,bfq: Disable writeback throttling
    c09fcc304541 IB/rxe: put the pool on allocation failure
    392f4c00adca IB/rxe: check for allocation failure on elem
    179099ba0d69 ixgbe: fix use of uninitialized padding
    e2e131da3b6b i40e: use the safe hash table iterator when deleting mac filters
    757ad831c703 igb: check memory allocation failure
    e156a3afb676 PM / OPP: Move error message to debug level
    9bd17b3b4bb6 PCI: Create SR-IOV virtfn/physfn links before attaching driver
    54da833e63b0 scsi: mpt3sas: Fix IO error occurs on pulling out a drive from RAID1 volume created on two SATA drive
    929cc7c94e3b scsi: cxgb4i: fix Tx skb leak
    84aa72a81de3 PCI: Avoid bus reset if bridge itself is broken
    3932edaebc65 net: phy: at803x: Change error to EINVAL for invalid MAC
    e9bd07539e3f rtc: pl031: make interrupt optional
    9f77ab2f562c crypto: lrw - Fix an error handling path in 'create()'
    59e5a2e7eec9 crypto: crypto4xx - increase context and scatter ring buffer elements
    13c0df6a379d clk: sunxi-ng: sun5i: Fix bit offset of audio PLL post-divider
    68e13e506d6e clk: sunxi-ng: nm: Check if requested rate is supported by fractional clock
    3996734fc715 drm: Add retries for lspcon mode detection
    77190a6d2d57 backlight: pwm_bl: Fix overflow condition
    d3b4b8043ff7 optee: fix invalid of_node_put() in optee_driver_init()
    752218b19686 posix-timer: Properly check sigevent->sigev_notify
    16c39a33a5c6 ACPI / APEI: adjust a local variable type in ghes_ioremap_pfn_irq()
    ba0b2e6cbb82 Linux 4.12.27
    feea4d492d73 usb: musb: da8xx: fix babble condition handling
    6d8d83c4ec67 ath10k: fix build errors with !CONFIG_PM
    00e875f83a3c ath9k: fix tx99 potential info leak
    01cf18e17476 lightnvm: pblk: fix min size for page mempool
    4413575d48be lightnvm: pblk: initialize debug stat counter
    87135620a06a lightnvm: pblk: fix changing GC group list for a line
    3b1abf7d20f6 icmp: don't fail on fragment reassembly time exceeded
    4be8ae2da97b IB/ipoib: Fix lockdep issue found on ipoib_ib_dev_heavy_flush
    7d284754ed54 IB/ipoib: Grab rtnl lock on heavy flush when calling ndo_open/stop
    634b3e0fefd7 RDMA/cma: Avoid triggering undefined behavior
    f9f24086ba42 macvlan: Only deliver one copy of the frame to the macvlan interface
    aba3745fc9b0 udf: Avoid overflow when session starts at large offset
    4a9bf3983ef9 md-cluster: fix wrong condition check in raid1_write_request
    e08da1a3d9d5 raid5-ppl: check recovery_offset when performing ppl recovery
    a6b9b60622b0 scsi: bfa: integer overflow in debugfs
    a6adc19ff5a4 scsi: sd: change allow_restart to bool in sysfs interface
    d23a6641b217 scsi: sd: change manage_start_stop to bool in sysfs interface
    be59ef05ed52 rtl8188eu: Fix a possible sleep-in-atomic bug in rtw_disassoc_cmd
    9257df5ece69 vt6655: Fix a possible sleep-in-atomic bug in vt6655_suspend
    5d0d0b750520 IB/core: Fix calculation of maximum RoCE MTU
    950215a22a7a scsi: scsi_devinfo: Add REPORTLUN2 to EMC SYMMETRIX blacklist entry
    40dd3da9911d raid5: Set R5_Expanded on parity devices as well as data.
    d63147f7712f pinctrl: adi2: Fix Kconfig build problem
    b25a34c20291 dev/dax: fix uninitialized variable build warning
    3b928d69ed7c tty fix oops when rmmod 8250
    6fd73bd5acc5 ipv4: ipv4_default_advmss() should use route mtu
    e8552a24db2a soc: mediatek: pwrap: fix compiler errors
    023499e5fff8 powerpc/xmon: Check before calling xive functions
    7092b9c569ee powerpc/perf/hv-24x7: Fix incorrect comparison in memord
    d85bb8676f60 serdev: ttyport: enforce tty-driver open() requirement
    dcc2d9b7db19 mfd: mxs-lradc: Fix error handling in mxs_lradc_probe()
    d7630ac47698 scsi: hpsa: destroy sas transport properties before scsi_host
    a2133c918746 scsi: hpsa: cleanup sas_phy structures in sysfs when unloading
    37686080a0c8 PCI: Detach driver before procfs & sysfs teardown on device remove
    585eb66776b7 RDMA/cxgb4: Declare stag as __be32
    06a21042a540 xfs: fix incorrect extent state in xfs_bmap_add_extent_unwritten_real
    98da748f2c95 xfs: fix log block underflow during recovery cycle verification
    9aaebfb38490 l2tp: cleanup l2tp_tunnel_delete calls
    4fd806e81bcb nvme: use kref_get_unless_zero in nvme_find_get_ns
    377d9449f868 platform/x86: hp_accel: Add quirk for HP ProBook 440 G4
    89e9f0fce2a4 liquidio: fix kernel panic in VF driver
    85aad298ecc2 samples/bpf: adjust rlimit RLIMIT_MEMLOCK for xdp1
    767f9da42096 ARM64: dts: meson-gxbb-odroidc2: fix usb1 power supply
    65743dd02181 mtd: spi-nor: stm32-quadspi: Fix uninitialized error return code
    0501313aa697 btrfs: tests: Fix a memory leak in error handling path in 'run_test()'
    563e097ec448 btrfs: avoid null pointer dereference on fs_info when calling btrfs_crit
    3faadbbe68b1 btrfs: undo writable superblocke when sprouting fails
    7028f26c6034 btrfs: Explicitly handle btrfs_update_root failure
    3f0a4dfc8eb9 Bluetooth: hci_ldisc: Fix another race when closing the tty.
    abb921b20fa0 Ib/hfi1: Return actual operational VLs in port info query
    879b18ebb8f4 bcache: fix wrong cache_misses statistics
    744eb7bd3386 bcache: explicitly destroy mutex while exiting
    653aad5c1702 media: usbtv: fix brightness and contrast controls
    c4d5c7940953 GFS2: Take inode off order_write list when setting jdata flag
    2e510357e1a6 scsi: scsi_debug: write_same: fix error report
    56c755841ee6 misc: pci_endpoint_test: Avoid triggering a BUG()
    b55d52393e28 misc: pci_endpoint_test: Fix failure path return values in probe
    aeac8e4c0c15 thermal/drivers/step_wise: Fix temperature regulation misbehavior
    aaca414203c4 ASoC: rsnd: rsnd_ssi_run_mods() needs to care ssi_parent_mod
    0587e5a36d00 ppp: Destroy the mutex when cleanup
    4a7735ca4455 clk: tegra: Fix cclk_lp divisor register
    0006385aadd0 clk: tegra: Use readl_relaxed_poll_timeout_atomic() in tegra210_clock_init()
    6ae2754d991b blk-mq-sched: dispatch from scheduler IFF progress is made in ->dispatch
    ec4585cdc959 clk: hi6220: mark clock cs_atb_syspll as critical
    f203d6193f5c clk: imx6: refine hdmi_isfr's parent to make HDMI work on i.MX6 SoCs w/o VPU
    c9ce9a4d1734 clk: imx: imx7d: Fix parent clock for OCRAM_CLK
    5f200f317929 clk: mediatek: add the option for determining PLL source clock
    6f7955a0aa2a crypto: tcrypt - fix buffer lengths in test_aead_speed()
    40734099baaa xfs: truncate pagecache before writeback in xfs_setattr_size()
    165b974bd72a iommu/amd: Limit the IOVA page range to the specified addresses
    a2e1fcc04fb6 badblocks: fix wrong return value in badblocks_set if badblocks are disabled
    75920b77b802 target/file: Do not return error for UNMAP if length is zero
    ca73c042292d target:fix condition return in core_pr_dump_initiator_port()
    8e2ee3f5ff33 iscsi-target: fix memory leak in lio_target_tiqn_addtpg()
    f1ae60da96df target/iscsi: Fix a race condition in iscsit_add_reject_from_cmd()
    d5adfbee09dc target/iscsi: Detect conn_cmd_list corruption early
    edd7fdf83184 platform/x86: intel_punit_ipc: Fix resource ioremap warning
    da2aa58cb07b powerpc/pseries/vio: Dispose of virq mapping on vdevice unregister
    2ae1d60028ab powerpc/ipic: Fix status get and status clear
    1d0cfd6df447 powerpc/opal: Fix EBUSY bug in acquiring tokens
    88189efa7ee7 netfilter: ipvs: Fix inappropriate output of procfs
    39254860365c iommu/mediatek: Fix driver name
    c82f9ea385ab PCI: dwc: Fix enumeration end when reaching root subordinate
    5dad0dfd17df PCI: Do not allocate more buses than available in parent
    4a917030981d powerpc: Don't preempt_disable() in show_cpuinfo()
    0bc0d339ff6c powerpc/powernv/cpufreq: Fix the frequency read by /proc/cpuinfo
    7842177fdc43 PCI/PME: Handle invalid data when reading Root Status
    301c44edb5a1 dmaengine: ti-dma-crossbar: Correct am335x/am43xx mux value type
    2761bc37b1c2 ASoC: Intel: Skylake: Fix uuid_module memory leak in failure case
    c42830902147 PM / s2idle: Clear the events_check_enabled flag
    9c70ec2c413d scsi: aacraid: address UBSAN warning regression
    3819c3c756b0 scsi: aacraid: use timespec64 instead of timeval
    e262d43729be rtc: pcf8563: fix output clock rate
    3ecf1bdeb61e video: fbdev: au1200fb: Return an error code if a memory allocation fails
    d56242baba22 video: fbdev: au1200fb: Release some resources if a memory allocation fails
    3b53b4e4c0ab video: udlfb: Fix read EDID timeout
    f50c8ab6dc0d fbdev: controlfb: Add missing modes to fix out of bounds access
    bfbfacb318cd sfc: don't warn on successful change of MAC
    ae058bf77e63 HID: cp2112: fix broken gpio_direction_input callback
    91590951dec1 ext4: fix crash when a directory's i_size is too small
    4fae0491c35c ext4: fix fdatasync(2) after fallocate(2) operation
    df19eb58d7be dmaengine: dmatest: fix container_of member in dmatest_callback
    100cb4506fb4 dmaengine: dmatest: move callback wait queue to thread context
    4d873e954ac0 eeprom: at24: change nvmem stride to 1
    b90737b239b0 iw_cxgb4: only insert drain cqes if wq is flushed
    6b1f48a27656 dm: fix various targets to dm_register_target after module __init resources created
    26c2e6fc10f1 scsi: core: Fix a scsi_show_rq() NULL pointer dereference
    04039227baf7 nfsd: auth: Fix gid sorting when rootsquash enabled
    143fdc512ac6 NFS: Fix unstable write completion
    7482c56f758c NFS: Use an atomic_long_t to count the number of commits
    3ef4a32040bf nfs: don't wait on commit in nfs_commit_inode() if there were no commit requests
    4a70dd38f444 xhci: Don't add a virt_dev to the devs array before it's fully allocated
    fa7944fd5601 usb: xhci: fix TDS for MTK xHCI1.1
    80aa2eb9b51b ceph: drop negative child dentries before try pruning inode's alias
    b9db0ab47687 mmc: core: apply NO_CMD23 quirk to some specific cards
    ff1b82c5314c usbip: fix stub_send_ret_submit() vulnerability to null transfer_buffer
    cea2ad71f37b usbip: fix stub_rx: harden CMD_SUBMIT path to handle malicious input
    1e5edda8ccd3 usbip: fix stub_rx: get_pipe() to validate endpoint number
    3ac1e4089c48 USB: core: prevent malicious bNumInterfaces overflow
    2479ee21bf60 USB: uas and storage: Add US_FL_BROKEN_FUA for another JMicron JMS567 ID
    b3fd05a19818 tracing: Allocate mask_str buffer dynamically
    5eb37713e296 kernel: make groups_sort calling a responsibility group_info allocators
    d87a616735d8 cifs: fix NULL deref in SMB2_read
    d22121ce1210 crypto: rsa - fix buffer overread when stripping leading zeroes
    0ad02bd37731 mfd: fsl-imx25: Clean up irq settings during removal

(From OE-Core rev: 408daaa6d0fb2147a541b0f14d73b362bd848d3c)

(From OE-Core rev: 768051963683a354a80e11c7d792791b160c2f2b)

(From OE-Core rev: 717dea8a2b98c15f4eacca333c3fa7d5df612a1c)

Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
{Fixup for Sumo context]
Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>

Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-11-07 21:34:09 +00:00
Bruce Ashfield
89b94e40f4 linux-yocto/4.12: update to v4.12.26
Integrating Paul Gortmaker's -stable 4.12 release, which comprises
the following commits:

b0f63e84c132 Linux 4.12.26
61be5424616e usbnet: fix alignment for frames with no ethernet header
6d0519e75609 tipc: fix memory leak in tipc_accept_from_sock()
8560506d5b7a tipc: call tipc_rcv() only if bearer is up in tipc_udp_recv()
5ceba73f1c24 tcp: remove buggy call to tcp_v6_restore_cb()
450a839e54a6 tcp/dccp: block bh before arming time_wait timer
872d246eaed9 stmmac: reset last TSO segment size after device open
74386d6ee7bf sit: update frag_off info
3df033244a42 s390/qeth: fix GSO throughput regression
b7bd0107008f s390/qeth: fix early exit from error path
7f02573318ba s390/qeth: build max size GSO skbs on L2 devices
3c8a527e0496 rds: Fix NULL pointer dereference in __rds_rdma_map
00c0600c0a35 net: remove hlist_nulls_add_tail_rcu()
193d9a02e802 net: realtek: r8169: implement set_link_ksettings()
8fb1c5e220ee net: qmi_wwan: add Quectel BG96 2c7c:0296
0c2ba29a13d9 net/packet: fix a race in packet_bind() and packet_notifier()
bb06331e9156 net: openvswitch: datapath: fix data type in queue_gso_packets
ea15a664c5b8 usb: gadget: ffs: Forbid usb_ep_alloc_request from sleeping
7f11deffc177 ipmi: Stop timers before cleaning up the module
fb006a18929e fix kcm_clone()
ee82eaf439cc RDMA/cxgb4: Annotate r2 and stag as __be32
b71be191d4ed md: free unused memory after bitmap resize
6d24efc56915 dm raid: fix panic when attempting to force a raid to sync
490fc05683b4 blk-mq: Avoid that request queue removal can trigger list corruption
d9e8cb49aaf1 ide: ide-atapi: fix compile error with defining macro DEBUG
115978628b54 ipvlan: fix ipv6 outbound device
ee2ce344ee06 powerpc/powernv/idle: Round up latency and residency values
0fe4d3f9fb5b afs: Connect up the CB.ProbeUuid
94bdd552d7b1 IB/mlx5: Assign send CQ and recv CQ of UMR QP
aa02d85e4d08 IB/mlx4: Increase maximal message size under UD QP
dd955bcce383 bnxt_re: changing the ip address shouldn't affect new connections
a4b3e59bcb04 f2fs: fix to clear FI_NO_PREALLOC
78f9d39a2735 xfrm: Copy policy family in clone_policy
4577662b6010 atm: horizon: Fix irq release error
d7241b40fe6d kbuild: rpm-pkg: fix jobserver unavailable warning
bffb011d5446 mailbox: mailbox-test: don't rely on rx_buffer content to signal data ready
849ef7edfa4c clk: hi3660: fix incorrect uart3 clock freqency
d561354fe15d clk: uniphier: fix DAPLL2 clock rate of Pro5
eada5db0be6e clk: qcom: common: fix legacy board-clock registration
11ea07285eb4 geneve: fix fill_info when link down
4e0b53bd177a sctp: return error if the asoc has been peeled off in sctp_wait_for_sndbuf
be7cba326d33 sctp: use the right sk after waking up from wait_buf sleep
2c485f6fa3be sctp: do not free asoc when it is already dead in sctp_sendmsg
6e2b427a32da slub: fix sysfs duplicate filename creation when slub_debug=O
e66ebbc23607 zsmalloc: calling zs_map_object() from irq is a bug
dc423eda615d sparc64/mm: set fields in deferred pages
956c73ca6664 block: wake up all tasks blocked in get_request()
1f35bda74d1a dt-bindings: usb: fix reg-property port-number range
412c76f0f9b8 sunrpc: Fix rpc_task_begin trace point
09f79313b317 NFS: Fix a typo in nfs_rename()
a550f7b43f63 dynamic-debug-howto: fix optional/omitted ending line number to be LARGE instead of 0
80f443550f8f lib/genalloc.c: make the avail variable an atomic_long_t
1dfea0e03917 drivers/rapidio/devices/rio_mport_cdev.c: fix resource leak in error handling path in 'rio_dma_transfer()'
4add25bf3dff route: update fnhe_expires for redirect when the fnhe exists
c53ad6cb2f86 route: also update fnhe_genid when updating a route cache
d09b814cd2aa gre6: use log_ecn_error module parameter in ip6_tnl_rcv()
f9ef4cd05462 mac80211_hwsim: Fix memory leak in hwsim_new_radio_nl()
a95269b0e4e5 x86/mpx/selftests: Fix up weird arrays
76e5bd0ae30a coccinelle: fix parallel build with CHECK=scripts/coccicheck
59f2aa43a314 kbuild: pkg: use --transform option to prefix paths in tar
50ce05457e39 irqchip/qcom: Fix u32 comparison with value less than zero
e3fec500f619 ARM: avoid faulting on qemu
602f85aeefb7 crypto: talitos - fix ctr-aes-talitos
73e76cb0ca1f crypto: talitos - fix use of sg_link_tbl_len
f17fe30404de crypto: talitos - fix AEAD for sha224 on non sha224 capable chips
f5fa317606b7 crypto: talitos - fix setkey to check key weakness
519619ec114a crypto: talitos - fix memory corruption on SEC2
e7984cca5abc crypto: talitos - fix AEAD test failures
64d05b5d1d86 bus: arm-ccn: fix module unloading Error: Removing state 147 which has instances left.
e14e213dfd51 bus: arm-ccn: Fix use of smp_processor_id() in preemptible context
63efd55a2c6b bus: arm-ccn: Check memory allocation failure
fd30c25b5596 bus: arm-cci: Fix use of smp_processor_id() in preemptible context
d358187f050b media: dvb: i2c transfers over usb cannot be done from stack
2ae277ebe31f drm/exynos: gem: Drop NONCONTIG flag for buffers allocated without IOMMU
0792a5a27074 drm/bridge: analogix dp: Fix runtime PM state in get_modes() callback
fdc899328ff3 kdb: Fix handling of kallsyms_symbol_next() return value
08f22e2251fd brcmfmac: change driver unbind order of the sdio function devices
f9a77013fa02 powerpc/64s: Initialize ISAv3 MMU registers before setting partition table
9c6dfd696e5a KVM: s390: Fix skey emulation permission check
092937ce1aae s390: fix compat system call table
4f4b2e279816 s390: always save and restore all registers on context switch
8c54b7d880d4 smp/hotplug: Move step CPUHP_AP_SMPCFD_DYING to the correct place
a2ec325c7d20 iommu/vt-d: Fix scatterlist offset handling
743ac71ece80 ALSA: usb-audio: Fix the missing ctl name suffix at parsing SU
1df6e988ae39 ALSA: usb-audio: Add check return value for usb_string()
974394e57a05 ALSA: usb-audio: Fix out-of-bound error
f4753360efda ALSA: seq: Remove spurious WARN_ON() at timer check
478c2ed7ca1c ALSA: pcm: prevent UAF in snd_pcm_info
b12060cae8c2 btrfs: handle errors while updating refcounts in update_ref_for_cow
ecfc013c7f23 btrfs: fix missing error return in btrfs_drop_snapshot
45822ea3d1bf X.509: fix comparisons of ->pkey_algo
19057ced2699 X.509: reject invalid BIT STRING for subjectPublicKey
a3ad8e49bc26 KEYS: reject NULL restriction string when type is specified
7c2ccfe13faa KEYS: add missing permission check for request_key() destination
664879ff9aef ASN.1: check for error from ASN1_OP_END__ACT actions
4c0e7ec3072d ASN.1: fix out-of-bounds read when parsing indefinite length item
17a6f363daf9 efi/esrt: Use memunmap() instead of kfree() to free the remapping
8dd372dd8845 efi: Move some sysfs files to be read-only by root
97c6b857262f scsi: libsas: align sata_device's rps_resp on a cacheline
eb78a8b8f172 scsi: use dma_get_cache_alignment() as minimum DMA alignment
db4a32fa5cf2 scsi: dma-mapping: always provide dma_get_cache_alignment
1f55442d0992 isa: Prevent NULL dereference in isa_bus driver callbacks
93fdb7dc713e hv: kvp: Avoid reading past allocated blocks from KVP file
d745d533737a pinctrl: armada-37xx: Fix direction_output() callback behavior
ae6add36f3ce iio: adc: meson-saradc: fix the bit_idx of the adc_en clock
50c87ecdb250 iio: adc: cpcap: fix incorrect validation
657257ba13ae iio: health: max30102: Temperature should be in milli Celsius
3da92b4ab2cc virtio: release virtio index when fail to device_register
f6fe0d2777b2 can: peak/pcie_fd: fix potential bug in restarting tx queue
654babccd437 can: usb_8dev: cancel urb on -EPIPE and -EPROTO
bda1dccdda47 can: esd_usb2: cancel urb on -EPIPE and -EPROTO
9ff8eb7ef05b can: ems_usb: cancel urb on -EPIPE and -EPROTO
51e5de2b036b can: mcba_usb: cancel urb on -EPROTO
c94c94a367ef can: kvaser_usb: cancel urb on -EPIPE and -EPROTO
c8474d8798ab can: kvaser_usb: ratelimit errors if incomplete messages are received
1936ba2b0b40 can: kvaser_usb: Fix comparison bug in kvaser_usb_read_bulk_callback()
bc86162fa81a can: kvaser_usb: free buf in error paths
4a879f2d1636 can: ti_hecc: Fix napi poll return value for repoll
09b06e3f7b1d can: flexcan: fix VF610 state transition issue
f81db8e7d0cb can: peak/pci: fix potential bug when probe() fails
7b747f65c553 can: mcba_usb: fix device disconnect bug
0a3964b0a8d3 usb: f_fs: Force Reserved1=1 in OS_DESC_EXT_COMPAT
d1c24d05d7ec serdev: ttyport: fix tty locking in close
541fbaaf6db7 serdev: ttyport: fix NULL-deref on hangup
a6d00d0df9e5 serdev: ttyport: add missing receive_buf sanity checks
b30e0bedb66b usb: gadget: udc: renesas_usb3: fix number of the pipes

(From OE-Core rev: 5fddf0226efc996f7eeba76f15e3335c9e60c2f3)

(From OE-Core rev: 650cbbf76742adfd4e8c44c2c98dbeaaebc9e3bc)

(From OE-Core rev: 433b22acce62dde53ac82f5ed3a65b153f4de47d)

Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-11-07 21:34:09 +00:00
Bruce Ashfield
b43de6a774 linux-yocto/4.12: bump to v4.12.25
Integrating Paul Gortmaker's v4.12.25 -stable queue, which comprises the
following commits:

  e61748ef5db0 Linux 4.12.25
  c34553e3e8af x86/bugs: Rename SSBD_NO to SSB_NO
  4aa9e65a91b9 x86/bugs: Remove x86_spec_ctrl_set()
  7283d22a40c4 x86/bugs: Expose x86_spec_ctrl_base directly
  60fb8f1bbd46 x86/speculation: Rework speculative_store_bypass_update()
  cc8a65725832 x86/cpufeatures: Disentangle SSBD enumeration
  4cadf648f802 x86/cpufeatures: Disentangle MSR_SPEC_CTRL enumeration from IBRS
  14476a34b4d0 x86/speculation: Use synthetic bits for IBRS/IBPB/STIBP
  e66dd0595eac x86/cpu: Make alternative_msr_write work for 32-bit code
  32e38eda9958 x86/bugs: Fix the parameters alignment and missing void
  5593194735ea x86/bugs: Make cpu_show_common() static
  86e7eb199990 x86/bugs: Fix __ssb_select_mitigation() return type
  4efd9170a722 Documentation/spec_ctrl: Do some minor cleanups
  e074092d9d0a proc: Use underscores for SSBD in 'status'
  f57b4be9a391 x86/bugs: Rename _RDS to _SSBD
  f395cafed558 x86/speculation: Make "seccomp" the default mode for Speculative Store Bypass
  9599751872de seccomp: Move speculation migitation control to arch code
  647fb2d84f05 seccomp: Add filter flag to opt-out of SSB mitigation
  44d5a1d9fe07 seccomp: Use PR_SPEC_FORCE_DISABLE
  9490e71c3074 prctl: Add force disable speculation
  ad5b97fe1ab6 x86/bugs: Make boot modes __ro_after_init
  cfc00a7877b6 seccomp: Enable speculation flaw mitigations
  bc4bf81c64b0 proc: Provide details on speculation flaw mitigations
  a41d2136a447 nospec: Allow getting/setting on non-current task
  7e17279e72b9 x86/speculation: Add prctl for Speculative Store Bypass mitigation
  eea6b1abc91e x86/process: Allow runtime control of Speculative Store Bypass
  c8630c28cd28 prctl: Add speculation control prctls
  ecefae5ca101 x86/speculation: Create spec-ctrl.h to avoid include hell
  4bcdf54612aa x86/bugs/AMD: Add support to disable RDS on Fam[15,16,17]h if requested
  6ce1317929a3 x86/bugs: Whitelist allowed SPEC_CTRL MSR values
  cd5e5e6f2e39 x86/bugs/intel: Set proper CPU features and setup RDS
  d97584229d85 x86/bugs: Provide boot parameters for the spec_store_bypass_disable mitigation
  793b7453cfc5 x86/cpufeatures: Add X86_FEATURE_RDS
  c6c3cd47ccbb x86/bugs: Expose /sys/../spec_store_bypass
  2d92a521bda7 x86/bugs: Read SPEC_CTRL MSR during boot and re-use reserved bits
  81865e325abe x86/bugs: Concentrate bug reporting into a separate function
  45245a5b9dc4 x86/bugs: Concentrate bug detection into a separate function
  05e82d536970 x86/nospec: Simplify alternative_msr_write()
  effb0dfecfa2 x86/cpu_entry_area: Sync cpu_entry_area to initial_page_table
  89fffee9d555 x86/xen: Zero MSR_IA32_SPEC_CTRL before suspend
  76199d7beb0b x86/speculation: Move firmware_restrict_branch_speculation_*() from C to CPP
  426210b00b02 x86/speculation: Use IBRS if available before calling into firmware
  63904f8a6d41 x86/entry/64: Fix CR3 restore in paranoid_exit()
  35cf6a9daf5f x86/cpu: Change type of x86_cache_size variable to unsigned int
  7fded60b2cb7 x86/spectre: Fix an error message
  343945a16727 x86/speculation: Add <asm/msr-index.h> dependency
  eb0f059ee2de nospec: Move array_index_nospec() parameter checking into separate macro
  31951a39de73 x86/speculation: Fix up array_index_nospec_mask() asm constraint
  344711f16fec x86/entry/64: Remove the unused 'icebp' macro
  d4324affaf05 x86/entry/64: Fix paranoid_entry() frame pointer warning
  3cadbc9228b4 x86/entry/64: Indent PUSH_AND_CLEAR_REGS and POP_REGS properly
  0d561147160c x86/entry/64: Get rid of the ALLOC_PT_GPREGS_ON_STACK and SAVE_AND_CLEAR_REGS macros
  22c1269eefa9 x86/entry/64: Use PUSH_AND_CLEAN_REGS in more cases
  ac897d25b1d3 x86/entry/64: Introduce the PUSH_AND_CLEAN_REGS macro
  226eea037fa6 x86/entry/64: Interleave XOR register clearing with PUSH instructions
  120d889cac9f x86/entry/64: Merge the POP_C_REGS and POP_EXTRA_REGS macros into a single POP_REGS macro
  2d5eb3888f24 x86/entry/64: Merge SAVE_C_REGS and SAVE_EXTRA_REGS, remove unused extensions
  797a6f4444f1 x86/speculation: Clean up various Spectre related details
  ff032faca431 KVM/nVMX: Set the CPU_BASED_USE_MSR_BITMAPS if we have a valid L02 MSR bitmap
  1aaab2d1a1fd KVM/x86: Reduce retpoline performance impact in slot_handle_level_range(), by always inlining iterator helper methods
  dd17c0f5a114 Revert "x86/speculation: Simplify indirect_branch_prediction_barrier()"
  add7dd4f1f81 x86/speculation: Correct Speculation Control microcode blacklist again
  358f03a9395f x86/speculation: Update Speculation Control microcode blacklist
  0307861327c7 x86/mm/pti: Fix PTI comment in entry_SYSCALL_64()
  a612b987b028 x86/entry/64/compat: Clear registers for compat syscalls, to reduce speculation attack surface
  1b8b432f6dee x86/entry/64: Clear registers for exceptions/interrupts, to reduce speculation attack surface
  513e4bbfc32c x86/entry/64: Clear extra registers beyond syscall arguments, to reduce speculation attack surface

(From OE-Core rev: 400c1bd54c0191b96bccfe0d2755995bdfc04fc1)

(From OE-Core rev: 50bf492ce1db930b5a1c3f0d750015c04a6aaaf0)

(From OE-Core rev: 7f06443cbf482c6922fba077330738ea505f85f7)

Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-11-07 21:34:09 +00:00
Bruce Ashfield
a67ab45c53 linux-yocto/4.12: gcc8 + platform support
Integrating the following changes to fix gcc8 issues, add perf support
for new platforms, and misc bug fixes:

   7e7ac3f0fda9 perf vendor events intel: Update Goldmont events to V12
   0a384f4a74bb perf intel-pt: Always set no branch for dummy event
   d55c0eebc474 perf intel-pt: Set no_aux_samples for the tracking event
   1f0b8b1b621f perf vendor events: Add Goldmont Plus V1 event file
   6b230bd7967e objtool, perf: Fix GCC 8 -Wrestrict error
   2eb720eab978 tools/lib/subcmd/pager.c: do not alias select() params
   16818d5811b1 clocksource/drivers/arm_arch_timer: Fix mem frame loop initialization
   0924074f300a of: dynamic: fix memory leak related to properties of __of_node_dup
   f6579a9e6a8e debugobjects: Make kmemleak ignore debug objects
   9184d19fa9ba intel-socfpga: dts: improve qspi node for rsu feature
   68846ecd1d27 intel-socfpga: dts: add rsu node to enable rsu driver
   9f174f4e95f7 FogBugz #514234: arm64: dts: stratix10: Add PL330 DMA to Stratix10 dts
   8a97ef8580e8 FogBugz #554835-3: Intel RSU binding documentation
   c850e5570554 FogBugz #554835-1: Add Stratix 10 SoC RSU Driver
   e030a1b198b4 FogBugz #549288-4: dts: add Stratix10 sdram ecc
   c25a3bffb901 FogBugz #549288-3: edac: Add support for Stratix10 SDRAM EDAC
   64430c11c84b FogBugz #549288-2: Add Stratix10 ECC Manager binding
   c34e0d995e50 FogBugz #549288-1: misc: Stratix10 Protected register access defines
   ac8afaba8d13 mtd: spi-nor: cadence-quadspi: Fix page fault kernel panic
   16431863e036 FogBugz #554812: fpga: stratix10: unitialized data
   1ee99e139667 arm64: dts: stratix10: Change pad skew values for EMAC0 PHY driver
   3269b14acb76 FogBugz #251539-2: dts: Add Altera Quad SPI Driver Device Tree Binding
   99a5d81c3ea7 FogBugz #251539-1: Add Altera Quad SPI Driver

(From OE-Core rev: 37410a8ff156530dabdfdc7be4cd575768fa688d)

(From OE-Core rev: bffa3ca508b8542157efdd2ff61ff8a7922a6468)

(From OE-Core rev: 6130fad4231f4fb78abffb11b397fa6e4261be13)

Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-11-07 21:34:09 +00:00
Richard Purdie
5e714f0e38 yocto-uninative: Upgrade to verson 2.3 which includes glibc 2.28
This allows us to handle distros which contain glibc 2.28 such as
Ubuntu 18.10.

(From OE-Core rev: 5c7d9abcd611d23d4340f9a0aee2564f72158a0b)

(From OE-Core rev: b3d50458fdf8de719030a9d316fc766dc52912af)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
[Fixed up for sumo context]
Signed-off-by: Armin Kuster <akuster808@gmail.com>

Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-11-07 21:34:08 +00:00
Dan McGregor
1b6a6b7791 os-release: move to nonarch_libdir
Even on multilib systems, /usr/lib is where systemd expects the
os-release file to live.

(From OE-Core rev: b7b476efee8c959a0227905e40bd9b5ef493632d)

(From OE-Core rev: b1d7ff6eea46af96c84d16111d5327700723cb98)

Signed-off-by: Dan McGregor <dan.mcgregor@usask.ca>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-11-07 21:34:08 +00:00
Joshua Lock
58d8fd09a5 os-release: fix to install in the expected location
os-release (5) recommends that the os-release file be installed in
/usr/lib/os-release and that /etc/os-release be a relative symlink to it.

(From OE-Core rev: 4feb8614ee25a3d3ceb7f5187120a1256a993155)

(From OE-Core rev: 4e67fa950cd3ca6e44d7f46743904d23a756e498)

(From OE-Core rev: 26138b13baddf8b236ede7f0e01fb39063d65eb1)

Signed-off-by: Joshua Lock <joshua.g.lock@intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-11-07 21:34:08 +00:00
Armin Kuster
d6ea55c28a tzdata: update to 2018f
Briefly:
  Volgograd moves from +03 to +04 on 2018-10-28.
  Fiji ends DST 2019-01-13, not 2019-01-20.
  Most of Chile changes DST dates, effective 2019-04-06.

  Changes to future timestamps

    Volgograd moves from +03 to +04 on 2018-10-28 at 02:00.
    (Thanks to Alexander Fetisov and Stepan Golosunov.)

    Fiji ends DST 2019-01-13 instead of the 2019-01-20 previously
    predicted.  (Thanks to Raymond Kumar.)  Adjust future predictions
    accordingly.

    Most of Chile will end DST on the first Saturday in April at 24:00 mainland
    time, and resume DST on the first Saturday in September at 24:00 mainland
    time.  The changes are effective from 2019-04-06, and do not affect the
    Magallanes region modeled by America/Punta_Arenas.  (Thanks to Juan Correa
    and Tim Parenti.)  Adjust future predictions accordingly.

  Changes to past timestamps

    The 2018-05-05 North Korea 30-minute time zone change took place
    at 23:30 the previous day, not at 00:00 that day.

    China's 1988 spring-forward transition was on April 17, not
    April 10.  Its DST transitions in 1986/91 were at 02:00, not 00:00.
    (Thanks to P Chan.)

    Fix several issues for Macau before 1992.  Macau's pre-1904 LMT
    was off by 10 s.  Macau switched to +08 in 1904 not 1912, and
    temporarily switched to +09/+10 during World War II.  Macau
    observed DST in 1942/79, not 1961/80, and there were several
    errors for transition times and dates.  (Thanks to P Chan.)

    The 1948-1951 fallback transitions in Japan were at 25:00 on
    September's second Saturday, not at 24:00.  (Thanks to Phake Nick.)
    zic turns this into 01:00 on the day after September's second
    Saturday, which is the best that POSIX or C platforms can do.

    Incorporate 1940-1949 Asia/Shanghai DST transitions from a 2014
    paper by Li Yu, replacing more-questionable data from Shanks.

  Changes to time zone abbreviations

    Use "PST" and "PDT" for Philippine time.  (Thanks to Paul Goyette.)

 Changes to documentation

    New restrictions: A Rule name must start with a character that
    is neither an ASCII digit nor "-" nor "+", and an unquoted name
    should not use characters in the set "!$%&'()*,/:;<=>?@[\]^`{|}~".
    The latter restriction makes room for future extensions (a
    possibility noted by Tom Lane).

    tzfile.5 now documents what time types apply before the first and
    after the last transition, if any.

    Documentation now uses the spelling "timezone" for a TZ setting
    that determines timestamp history, and "time zone" for a
    geographic region currently sharing the same standard time.

    The name "TZif" is now used for the tz binary data format.

    tz-link.htm now mentions the A0 TimeZone Migration utilities.
    (Thanks to Aldrin Martoq for the link.)

  Changes to build procedure

    New 'make' target 'rearguard_tarballs' to build the rearguard
    tarball only.  This is a convenience on platforms that lack lzip
    if you want to build the rearguard tarball.  (Problem reported by
    Deborah Goldsmith.)

    tzdata.zi is now more stable from release to release.  (Problem
    noted by Tom Lane.)  It is also a bit shorter.

    tzdata.zi now can contain comment lines documenting configuration
    information, such as which data format was selected, which input
    files were used, and how leap seconds are treated.  (Problems
    noted by Lester Caine and Brian Inglis.)  If the Makefile defaults
    are used these comment lines are absent, for backward
    compatibility.  A redistributor intending to alter its copy of the
    files should also append "-LABEL" to the 'version' file's first
    line, where "LABEL" identifies the redistributor's change.
(From OE-Core rev: 9d786808fb9471eff46d95dd354f6254e468aa17)

(From OE-Core rev: 834df7b26c12e4d164a50bcd07b194cb455336ae)

Signed-off-by: Armin Kuster <akuster808@gmail.com>

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-11-07 21:34:08 +00:00
Armin Kuster
7522dfaeee tzcode: update to 2018f
Changes to code

    zic now always generates TZif files where time type 0 is used for
    timestamps before the first transition.  This simplifies the
    reading of TZif files and should not affect behavior of existing
    TZif readers because the same set of time types is used; only
    their internal indexes may have changed.  This affects only the
    legacy zones EST5EDT, CST6CDT, MST7MDT, PST8PDT, CET, MET, and
    EET, which previously used nonzero types for these timestamps.

    Because of the type 0 change, zic no longer outputs a dummy
    transition at time -2**59 (before the Big Bang), as clients should
    no longer need this to handle historical timestamps correctly.
    This reverts a change introduced in 2013d and shrinks most TZif
    files by a few bytes.

    zic now supports negative time-of-day in Rule and Leap lines, e.g.,
    "Rule X min max - Apr lastSun -6:00 1:00 -" means the transition
    occurs at 18:00 on the Saturday before the last Sunday in April.
    This behavior was documented in 2018a but the code did not
    entirely match the documentation.

    localtime.c no longer requires at least one time type in TZif
    files that lack transitions or have a POSIX-style TZ string.  This
    future-proofs the code against possible future extensions to the
    format that would allow TZif files with POSIX-style TZ strings and
    without transitions or time types.

    A read-access subscript error in localtime.c has been fixed.
    It could occur only in TZif files with timecnt == 0, something that
    does not happen in practice now but could happen in future versions.

    localtime.c no longer ignores TZif POSIX-style TZ strings that
    specify only standard time.  Instead, these TZ strings now
    override the default time type for timestamps after the last
    transition (or for all time stamps if there are no transitions),
    just as DST strings specifying DST have always done.

    leapseconds.awk now outputs "#updated" and "#expires" comments,
    and supports leap seconds at the ends of months other than June
    and December.  (Inspired by suggestions from Chris Woodbury.)
(From OE-Core rev: 4670dcdb6e2504469c30ebed828d4702d8c0003c)

(From OE-Core rev: 14b02a009ee97da39ad3f140215812c853d40348)

Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-11-07 21:34:08 +00:00
Armin Kuster
898b0f7788 tzdata: update to 2018e
Briefly:

    North Korea switches back to +09 on 2018-05-05.
    The main format uses negative DST again, for Ireland etc.
    'make tarballs' now also builds a rearguard tarball.
    New 's' and 'd' suffixes in SAVE columns of Rule and Zone lines.

  Changes to past and future time stamps

    North Korea switches back from +0830 to +09 on 2018-05-05.
    (Thanks to Kang Seonghoon, Arthur David Olson, Seo Sanghyeon,
    and Tim Parenti.)

    Bring back the negative-DST changes of 2018a, except be more
    compatible with data parsers that do not support negative DST.
    Also, this now affects historical time stamps in Namibia and the
    former Czechoslovakia, not just Ireland.  The main format now uses
    negative DST to model time stamps in Europe/Dublin (from 1971 on),
    Europe/Prague (1946/7), and Africa/Windhoek (1994/2017).  This
    does not affect UT offsets, only time zone abbreviations and the
    tm_isdst flag.  Also, this does not affect rearguard or vanguard
    formats; effectively the main format now uses vanguard instead of
    rearguard format.  Data parsers that do not support negative DST
    can still use data from the rearguard tarball described below

(From OE-Core rev: f717eeff2d4823163cb72fb79101220cc48b3286)

(From OE-Core rev: 7e3d97ca8ceea71f66385ba733c389a1c410ebd3)

Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-11-07 21:34:08 +00:00
Armin Kuster
ffaca4ae58 tzcode-native: updatet to 2018e
Changes to build procedure

    The command 'make tarballs' now also builds the tarball
    tzdataVERSION-rearguard.tar.gz, which is like tzdataVERSION.tar.gz
    except that it uses rearguard format intended for trailing-edge
    data parsers.

  Changes to data format and to code

    The SAVE column of Rule and Zone lines can now have an 's' or 'd'
    suffix, which specifies whether the adjusted time is standard time
    or daylight saving time.  If no suffix is given, daylight saving
    time is used if and only if the SAVE column is nonzero; this is
    the longstanding behavior.  Although this new feature is not used
    in tzdata, it could be used to specify the legal time in Namibia
    1994-2017, as opposed to the popular time (see below).

  Changes to past time stamps

    From 1994 through 2017 Namibia observed DST in winter, not summer.
    That is, it used negative DST, as Ireland still does.  This change
    does not affect UTC offsets; it affects only the tm_isdst flag and
    the abbreviation used during summer, which is now CAT, not WAST.
    Although (as noted by Michael Deckers) summer and winter time were
    both simply called "standard time" in Namibian law, in common
    practice winter time was considered to be DST (as noted by Stephen
    Colebourne).  The full effect of this change is only in vanguard
    format; in rearguard and main format, the tm_isdst flag is still
    zero in winter and nonzero in summer.

    In 1946/7 Czechoslovakia also observed negative DST in winter.
    The full effect of this change is only in vanguard format; in
    rearguard and main formats, it is modeled as plain GMT without
    daylight saving.  Also, the dates of some 1944/5 DST transitions
    in Czechoslovakia have been changed.
(From OE-Core rev: aeb3d295581908ca9a9d8f1705f70b49b2de32e3)

(From OE-Core rev: 46bbf84f441c65f910558649c7ed2350b023cbf9)

Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-11-07 21:34:08 +00:00
akuster@mvista.com
705e57b695 tzcode-native: update to 2018d
(From OE-Core rev: 257a61425075aaace928ce1e2303cd0de2127203)

(From OE-Core rev: 1019edfded5ae323d51606f933eb6177d4d49ee2)

Signed-off-by: Armin Kuster <akuster@mvista.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-11-07 21:34:08 +00:00
akuster@mvista.com
101f9293c4 tzdata: update to 2018d
(From OE-Core rev: af7ca3e3596784c5837e9bd339cc7114883ce67a)

(From OE-Core rev: 159f9a120b5407517d825302ca19786dd042b64f)

Signed-off-by: Armin Kuster <akuster@mvista.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-11-07 21:34:08 +00:00
Juro Bystricky
928b08523b tzcode: remove unused patch files
(From OE-Core rev: 7118b4df6d43de4d27426826ce2dce93b2baf9b4)

(From OE-Core rev: 7edc4a6d92599fa56b0b70e24e9789f3dbbeeee2)

Signed-off-by: Juro Bystricky <juro.bystricky@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-11-07 21:34:08 +00:00
Hongxu Jia
68c76b3f7d valgrind: fix compile ptest failure on mips32
- Pass mips32's CFLAGS to tests

- Fix broken inline asm in tests on mips32-linux

- Build mips n32 successfully, support it.

(From OE-Core rev: 23d9eba99d1180a0b859aadc23a10b391b8f6440)

(From OE-Core rev: 2c7d665e9f643a3b13565b0a4a75d5cb3f8eba94)

Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-11-05 16:02:44 +00:00
Jagadeesh Krishnanjanappa
fbcfe7f3e5 valgrind: fix ptest compilation for PowerPC64
The fix is similar to what was done for PowerPC32.
It solves below error, while compiling for PowerPC64,

-- snip --
| ../../../../valgrind-3.13.0/none/tests/ppc64/test_isa_2_06_part2.c: In function 'usage':
| ../../../../valgrind-3.13.0/none/tests/ppc64/test_isa_2_06_part2.c:1778:3: warning: implicit declaration of function 'fprintf' [-Wimplicit-function-declaration]
|    fprintf(stderr,
|    ^~~~~~~
| ../../../../valgrind-3.13.0/none/tests/ppc64/test_isa_2_06_part2.c:1778:3: warning: incompatible implicit declaration of built-in function 'fprintf'
| ../../../../valgrind-3.13.0/none/tests/ppc64/test_isa_2_06_part2.c:1778:3: note: include '<stdio.h>' or provide a declaration of 'fprintf'
| ../../../../valgrind-3.13.0/none/tests/ppc64/test_isa_2_06_part2.c:1778:11: error: 'stderr' undeclared (first use in this function)
|    fprintf(stderr,
|            ^~~~~~
-- snip --

(From OE-Core rev: 49bac1a59bc1cfebce69cad723f74d44e1fbe1d5)

Signed-off-by: Jagadeesh Krishnanjanappa <jkrishnanjanappa@mvista.com>
Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-11-05 16:02:44 +00:00
Zhixiong Chi
98e473329e valgrind: fix the shared object issue while prelink ptest
If valgrind-ptest is installed, we will get the some prelink error
like below at do_image:

  .../usr/sbin/prelink: /usr/lib64/valgrind/ptest/memcheck/tests/wrap7:\
  Could not find one of the dependencies: \
  .../usr/sbin//prelink-rtld: error   \
  while loading shared libraries: wrap7so.so: cannot open shared  \
  object file: No such file or directory

The wrap7 needs to link the shared object in the path
/usr/lib64/valgrind/ptest/memcheck/tests, but it fails.
So we correct the path for ptest.

(From OE-Core rev: 1ec0c977c55ae2c38252e1807dc15c56007d30dc)

(From OE-Core rev: f679285f54fa1d160d22a25682d50eb5032c2569)

Signed-off-by: Zhixiong Chi <zhixiong.chi@windriver.com>
Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-11-05 16:02:44 +00:00
Manjukumar Matha
ca6bdf1805 valgrind: Mask CPUID support in HWCAP on aarch64
valgrind currently does not know anything about the CPUID flag added to
the HWCAP auxv entry in kernel 4.11+

At runtime it will fails like this:

ARM64 front end: branch_etc
disInstr(arm64): unhandled instruction 0xD5380001
disInstr(arm64): 1101'0101 0011'1000 0000'0000 0000'0001 ==2082==
valgrind: Unrecognised instruction at address 0x4014e64.

This patch is a workaround by masking all HWCAP. This patch is dervied
from https://bugzilla.redhat.com/show_bug.cgi?id=1464211

(From OE-Core rev: cdeb3d530af6cec1959c986aff3d6906939c8918)

(From OE-Core rev: e6cb66399f6ba874a7954d3212157576030dda34)

Signed-off-by: Manjukumar Matha <manjukumar.harthikote-matha@xilinx.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-11-05 16:02:44 +00:00
Chin Huat Ang
16c0989eec toolchain-scripts: preserve host path in environment setup script
The environment setup script generated in the build directory sets the PATH
variable by expanding ${PATH} which would have host paths filtered. Sourcing
this script to run runqemu will not work as it complains host stty (/bin/stty)
cannot be found.

To resolve this, the script no longer expands ${PATH} during generation time,
instead it will now source oe-init-build-env to initialize the build
environment so that all host paths will be preserved. Also be sure to prepend
STAGING_BINDIR_TOOLCHAIN to the PATH variable so that the toolchain from the
build directory can be found.

[YOCTO #12695]

(From OE-Core rev: a64a144096c0637387244b89ed22f4b5352b2522)

(From OE-Core rev: d4657ac24542967ecd241726063da2d2dc3e9e23)

Signed-off-by: Chin Huat Ang <chin.huat.ang@intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-11-05 16:02:44 +00:00
Jose Perez Carranza
d9122cb2d0 lsb/lsbtests: Update package lists to use latest version of binary
Currently  package list is pointing to  "lsb-setup-4.1.0-1.noarch.rpm"
which is not available anymore on
http://ftp.linuxfoundation.org/pub/lsb/base/released-all/binary/ hence
BASE_PACKAGES_LIST is updated to point to the latest available version.

[YOCTO #12240]

(From OE-Core rev: a1e61b05d83de0feeb6d05851477108902d1dfb0)

(From OE-Core rev: 5db7781c27bb4bb57e8a6749337bf52dc33355cc)

Signed-off-by: Jose Perez Carranza <jose.perez.carranza@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Yi Zhao <yi.zhao@windriver.com>
Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-11-05 16:02:44 +00:00
Anuj Mittal
0118c2d2aa perl: skip tests that are not useful
Some tests, like the one that compares the hashes for a list of files
against those stored in a .dat file, don't make sense for downstream
distros packaging perl.

Backport a patch from upstream that allows skipping of these tests at
runtime. Also remove the local patch trying to keep hashes up-to-date
for one of those tests.

Fixes [YOCTO #12787]

(From OE-Core rev: 557f4618b75b8739a647e46054ab587ae2bbdc25)

(From OE-Core rev: 5cabded0895a5634b194ba125d1231b52e09a5e9)

Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
[Fix up for rocko context]
Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-11-05 16:02:44 +00:00
Scott Rifenbark
0d6e6eb510 documentation: Updated release date for 2.4.4 release
It was September.  More likely to be November now.  All manual
history tables updated.

(From yocto-docs rev: ee04a4f2b95ab99d16b2c0418c12f91350c5bdef)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-10-20 14:28:09 +01:00
Ross Burton
cd3c8323d8 make: add missing Signed-off-by
(From OE-Core rev: 5282774e0a8df40a04808622e6d265157477488f)

(From OE-Core rev: 4aa55a2c338e38816275789ac89cdd617bda9b42)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-10-18 11:09:39 +01:00
Khem Raj
2832aa209d make: Backport fixes to not assume glibc internal glob implementation
Exposed with glibc 2.27

(From OE-Core rev: cdf370f1bd046ba6207b63c9a82bdfff2b261a7d)

(From OE-Core rev: bd81e47c12b8f3bbb8a9e24379b6632e36f11462)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-10-18 11:09:39 +01:00
Richard Purdie
076b057c46 recipes: Update git.gnome.org addresses after upstream changes
git.gnome.org is no more. It has ceased to be. It's an ex-git.

Please see here:
https://about.gitlab.com/2018/05/31/welcome-gnome-to-gitlab/

Note that gitlab does not support git://, only https:// (and ssh).

[Commit message from Alexander Kanavin]

(From OE-Core rev: 8382cdc0888ca645a44aacaac1155afb8dcde979)

(From OE-Core rev: d40c87b003b290a1739039156b27f194f68f12c2)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
[Fixup for sumo context]
Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-10-18 11:09:39 +01:00
He Zhe
caa4a47877 cryptodev: Fix build errors with v4.17+
Backport from upstream to update internal syscall function usage.
https://github.com/cryptodev-linux/cryptodev-linux
f60aa08c63fc02780554a0a12180a478ca27d49f

(From OE-Core rev: 270a1e9bcf26a43f5cbdc5b901c4c6f79495311d)

(From OE-Core rev: 87718444c054bad8d83e19d4ead2397420c63289)

Signed-off-by: He Zhe <zhe.he@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-10-18 11:09:39 +01:00
Armin Kuster
cfcbc502a7 shadow: CVE-2016-6252
Backport patch from the upstream
https://github.com/shadow-maint/shadow/commit/
1d5a926cc2d6078d23a96222b1ef3e558724dad1

(From OE-Core rev: dd9e2dedb9ab41f509bae26f12704cbee1eb765d)

Signed-off-by: Zhixiong Chi <zhixiong.chi@windriver.com>
Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-10-10 13:27:02 +01:00
Kai Kang
fbe29a7e5f shadow: update ownership and permission of /var/spool/mail
Update shadow to change ownership of /var/spool/mail from root:root to
root:mail and permission from 0755 to 0775 just as in most popular
distributions such as fedora and debian(It also set setgid bit in debian
but we don't need it).

(From OE-Core rev: b3ab5fe359c38cdd5cd86cb8ffe076d7a2baac18)

(From OE-Core rev: a77eff19be1d5812999bf584364000440f218fbb)

(From OE-Core rev: 1af360c925a044fa4fa093cd109f3f2a5cbe7944)

Signed-off-by: Kai Kang <kai.kang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-10-10 13:27:02 +01:00
Jagadeesh Krishnanjanappa
9833879d81 shadow: CVE-2018-7169
newgidmap: enforce setgroups=deny if self-mapping a group

This is necessary to match the kernel-side policy of "self-mapping in a
user namespace is fine, but you cannot drop groups" -- a policy that was
created in order to stop user namespaces from allowing trivial privilege
escalation by dropping supplementary groups that were "blacklisted" from
certain paths.

This is the simplest fix for the underlying issue, and effectively makes
it so that unless a user has a valid mapping set in /etc/subgid (which
only administrators can modify) -- and they are currently trying to use
that mapping -- then /proc/$pid/setgroups will be set to deny. This
workaround is only partial, because ideally it should be possible to set
an "allow_setgroups" or "deny_setgroups" flag in /etc/subgid to allow
administrators to further restrict newgidmap(1).

We also don't write anything in the "allow" case because "allow" is the
default, and users may have already written "deny" even if they
technically are allowed to use setgroups. And we don't write anything if
the setgroups policy is already "deny".

Ref: https://bugs.launchpad.net/ubuntu/+source/shadow/+bug/1729357
Fixes: CVE-2018-7169

Affects shadow <= 4.5

(From OE-Core rev: a875522540372a4fa6658885692e564dfd729f54)

(From OE-Core rev: cfc8931d53cf9959995a4068a7e397e100922358)

Signed-off-by: Jagadeesh Krishnanjanappa <jkrishnanjanappa@mvista.com>
Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-10-10 13:27:02 +01:00
Andrej Valek
2f89032e5f shadow: fix CVE-2017-2616
(From OE-Core rev: 94a1e2794df15f0f2cb62ae030cd81e6c0798b1f)

(From OE-Core rev: 8894c70ae5a44974f74434d251def3148818a866)

(From OE-Core rev: eec9169658733335c6f8251b5122706fa8ab467d)

Signed-off-by: Andrej Valek <andrej.valek@siemens.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-10-10 13:27:02 +01:00
Martin Jansa
f29617bf18 license.bbclass: be a bit more strict when searching ${PN}-${LICENSE_PACKAGE_SUFFIX} in packages
* linux-firmware contains ${PN}-license package since this commit:
  commit 1ee083da0730408fffdbbf5f29abc299c0e61be9
  Author: Jackie Huang <jackie.huang@windriver.com>
  Date:   Mon Apr 13 10:17:21 2015 +0800

    linux-firmware: fix the mess of licenses
* LICENSE_CREATE_PACKAGE functionality in license.bbclass when enabled
  adds new package with suffix:
  LICENSE_PACKAGE_SUFFIX ??= "-lic"
  but then it checks if ${PN}-${LICENSE_PACKAGE_SUFFIX} is included
  in PACKAGES before adding it and when found it shows:
  WARNING: linux-firmware-1_0.0+gitAUTOINC+4c0bf113a5-r0 do_package: linux-firmware-lic package already existed in linux-firmware.
  and doesn't add the ${PN}-lic to PACKAGES and causes another warning:
  WARNING: linux-firmware-1_0.0+gitAUTOINC+4c0bf113a5-r0 do_package: QA Issue: linux-firmware: Files/directories were installed but not shipped in any package:
  /usr
  /usr/share
  /usr/share/licenses
  /usr/share/licenses/linux-firmware

  that's because it was searching ${PN}-lic in PACKAGES as a string
  so it found ${PN}-lic as a substring of ${PN}-license, add a split
  to search in an list

(From OE-Core rev: 9b9897fc034819385a9d4ce591cc79dd458f3f24)

(From OE-Core rev: 9aed83eb8694a0bd409a6a2481bfd2a1b98919e1)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
[Yocto 12572]
Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-10-10 13:27:02 +01:00
Peter Kjellerstedt
c5d9b77ba8 license.bbclass: Minor simplification of get_deployed_dependencies()
Since ${SSTATE_ARCHS} now contains ${PACKAGE_EXTRA_ARCHS} there is no
longer any need to add those extra architectures to the list of
architectures handled in get_deployed_dependencies().

(From OE-Core rev: e55e6df4f1434458cdfa0e2d3610b48119e5a782)

(From OE-Core rev: 64ca9e513eabc85db9648a6483bd3024c7fe8746)

Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-10-10 13:27:02 +01:00
Hongxu Jia
05711ba185 patch: fix CVE-2018-6952
(From OE-Core rev: 1314a6953aa647706107557faaba8574e307d2bd)

(From OE-Core rev: 7d518d342eb67d25aa071fb08d03f06d6da576c6)

Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-13 10:55:38 +01:00
Daniel Díaz
40a817a038 multilib_header: recognize BPF as a target
When building with `clang -target bpf` using the
multilib_header, a recursion was unavoidable because
bits/wordsize.h would #include itself, still lacking
a definition for __MHWORDSIZE or __WORDSIZE.

(From OE-Core rev: 70b41b3c335a80b4ac243f468f22331d261299db)

(From OE-Core rev: 58abe666d3bad7a915c244c61085482e94b3d549)

(From OE-Core rev: edb02f0d1d313fb026e39cc320e63be7e0132e7b)

Signed-off-by: Daniel Díaz <daniel.diaz@linaro.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-13 10:55:38 +01:00
Ross Burton
094c364e4e python2: Fix build with gcc8
(From OE-Core rev: 910f68c9c8dc26e12d28ef29e956af63d100f121)

(From OE-Core rev: 04c2d53ef48a09747d0577d9ec1ffa548d247615)

(From OE-Core rev: 9a3772e9411864301ca2799b4d5827476a6b7fcf)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Martin Hundebøll <martin@geanix.com>
Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-13 10:55:38 +01:00
Derek Straka
33bf568714 python-native: add dependency for gdbm and db native packages
These two packages are required to ensure the manifest files contain
all of the generated packages.  Without this, the db and gdbm packages
will not contain the .so files as they are skipped during the compilation steps

(From OE-Core rev: 912c06615269f42230db2d93d70db2b340ed270a)

(From OE-Core rev: 1e2d12f87445361cc57b7fc1e4ba5eec0265087d)

Signed-off-by: Derek Straka <derek@asterius.io>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-13 10:55:38 +01:00
Derek Straka
5a353c4210 python: Upgrade both python and python-native to 2.7.14
Rebased:
  - python/01-use-proper-tools-for-cross-build.patch
  - python/fix-makefile-for-ptest.patch
  - python/parallel-makeinst-create-bindir.patch

Removed Upstreamed Patch:
  - python/Don-t-use-getentropy-on-Linux.patch

Updated license checksum for changes in the copyright date.  The license
terms remain unchanged

Added an extra do_compile item to create the native pgen that no longer
gets compiled by default

(From OE-Core rev: 9f2de4f9cf1eb6de75dc789bd0549f45c7a68c55)

(From OE-Core rev: 00bdc9752e76fb66bb7eb8d6c3249aa031f14fdb)

Signed-off-by: Derek Straka <derek@asterius.io>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>

[Bug fix release only]
CVE-2017-9233
CVE-2016-0718
CVE-2012-0876
CVE-2016-4472

Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-13 10:55:38 +01:00
Jagadeesh Krishnanjanappa
a47d077ff4 libvorbis: CVE-2018-10392
Sanity check number of channels in setup.

Fixes #2335.
Link: https://gitlab.xiph.org/xiph/vorbis/issues/2335

(From OE-Core rev: a8e6ce64d4561826f2f5926c2dc67939c95a8626)

Signed-off-by: Jagadeesh Krishnanjanappa <jkrishnanjanappa@mvista.com>
Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-13 10:55:38 +01:00
Jagadeesh Krishnanjanappa
6f7c2da540 libvorbis: CVE-2017-14160 CVE-2018-10393
CVE-2017-14160: fix bounds check on very low sample rates.

(From OE-Core rev: 5bed33fbd29eea9449114186d42b4b2a5e88b32f)

Signed-off-by: Jagadeesh Krishnanjanappa <jkrishnanjanappa@mvista.com>
Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-13 10:55:38 +01:00
Ross Burton
3cbd516bd1 bzip2: use Yocto Project mirror for SRC_URI
The bzip.org domain expired and is now a holding site for adverts, so we can't
trust a tarball that appears on that site (luckily we have source checksums to
detect this).

For now, point SRC_URI at the tarball in the Yocto Project source mirror, but
set HOMEPAGE and UPSTREAM_CHECK_URI to the sourceware.org/bzip2/ page which
apparently will be resurrected as the new canonical home page.

(From OE-Core rev: 9e291d9923efc988abe8689c64bafbb29da06339)

(From OE-Core rev: aa427fd4a54f0f082705d86a487ecc601c725c3a)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Armin Kuster <akuster@mvista.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-13 10:55:38 +01:00
Ross Burton
66550feb26 classes: sanity-check LIC_FILES_CHKSUM
We assume that LIC_FILES_CHKSUM is a file: URI but don't actually verify this,
which can lead to problems if you have a URI that resolves to a path of / as
Bitbake will then dutifully checksum / recursively.

[ YOCTO #12883 ]

(From OE-Core rev: e2b8a3d5a10868f9c0dec8d7b9f5f89fdd100fc8)

(From OE-Core rev: f6f54155420ae54a34f1ab87e76623c536adf2f9)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-30 15:57:44 +01:00
Denys Dmytriyenko
02b05d1ff4 module-base.bbclass: fix out-of-tree module builds with custom EXTRA_OEMAKE
Commit d2aa88a6a92985f21414fceea2dc0facbf7f8779 was meant to backport build
dependencies on bc-native and openssl-native, but it also changed execution
of do_make_scripts() from calling make directly to using oe_runmake. That
change was made in master/sumo as part of a separate make-mod-scripts recipe.

Unfortunately, that doesn't work here in rocko in the context of module-base
class, as it gets executed inside out-of-tree module environment. Quite often
those out-of-tree modules provide own Makefile with custom EXTRA_OEMAKE var
defined. But do_make_scripts() gets executed within STAGING_KERNEL_DIR and
cannot simply use custom EXTRA_OEMAKE set by a module.

Move back to calling make and passing HOSTCC/HOSTCPP directly w/o using
EXTRA_OEMAKE.

For more details please see:
http://lists.openembedded.org/pipermail/openembedded-core/2018-August/154189.html

(From OE-Core rev: eb3eaa6970bb8c3647187593df23e2784dd26935)

Signed-off-by: Denys Dmytriyenko <denys@ti.com>
Cc: Bruce Ashfield <bruce.ashfield@windriver.com>
Cc: Richard Purdie <richard.purdie@linuxfoundation.org>
Cc: Anuj Mittal <anuj.mittal@intel.com>
Cc: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Armin Kuster <akuster@mvista.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-29 17:16:03 +01:00
Ross Burton
61da85778a bitbake: checksum: sanity check path when recursively checksumming
In case something goes tragically wrong, catch a request to checksum / and
refuse.

(Bitbake rev: 8bd16328a9332c57b03198826e22b48fadcd21d9)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-29 15:23:58 +01:00
Ross Burton
1b966ffd5f bitbake: utils/md5_file: don't iterate line-by-line
Opening a file in binary mode and iterating it seems like the simple solution
but will still break on newlines, which for binary files isn't really useful as
the size of the chunks could be huge or tiny.

Instead, let's be a bit more clever: we'll be MD5ing lots of files, but we don't
want to fill up memory: use mmap() to open the file and read the file in 8k
blocks.

(Bitbake rev: f3f28ec7e6cad5003014462feeb9178496107e08)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-29 15:23:58 +01:00
Richard Purdie
f7a8c088ae bitbake: tests/fetch: Update gnome.org urls after upstream changes
(Bitbake rev: cdda992d4eedcf8e23b9a7222c16d49dee1586bd)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-29 10:44:21 +01:00
Scott Rifenbark
2731fd35d5 documentation: Preparation for 2.4.4 release
poky.ent - updated variables for 2.4.4
mega-manual.sed - updated string from "2.4.3" to "2.4.4"
<manual>.xml - updated manual revision tables for 2.4.4 and
               September 2018 date

(From yocto-docs rev: 1bba098ba20f2b1349ac840fd36f62de401f8701)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-15 10:28:18 +01:00
Jagadeesh Krishnanjanappa
4a59df45f8 libxcursor: CVE-2017-16612
affects: <= 1.1.14

CVE-2017-16612: Fix heap overflows when parsing malicious files

It is possible to trigger heap overflows due to an integer overflow
while parsing images and a signedness issue while parsing comments.

The integer overflow occurs because the chosen limit 0x10000 for
dimensions is too large for 32 bit systems, because each pixel takes 4 bytes.
Properly chosen values allow an overflow which in turn will lead to less
allocated memory than needed for subsequent reads.

The signedness bug is triggered by reading the length of a comment
as unsigned int, but casting it to int when calling the function
XcursorCommentCreate. Turning length into a negative value allows the
check against XCURSOR_COMMENT_MAX_LEN to pass, and the following
addition of sizeof (XcursorComment) + 1 makes it possible to allocate
less memory than needed for subsequent reads.

(From OE-Core rev: bdf13518e79ab949c4320226a399ee4a3913ee30)

Signed-off-by: Jagadeesh Krishnanjanappa <jkrishnanjanappa@mvista.com>
Signed-off-by: Armin Kuster <akuster@mvista.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-15 10:22:46 +01:00
Chen Qi
3259b70497 devtool/sdk.py: error out in case of downloading file failure
It's possible that downloading file from updateserver fails. In
this case, we should error out instead of continue.

We have users reporting unexpected behavior of 'devtool sdk-update'.
When an invalid url is supplied, e.g., `devtool sdk-update http://invalid',
the program reports 'Note: Already up-to-date'.

This is obviously not expected. We should error out in such case.

(From OE-Core rev: 449564783dfb162536a2f772b3a8704973221e0f)

(From OE-Core rev: 4b022a62998e38dbefe1f882bcb9a229485ac9da)

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-15 10:22:46 +01:00
Rasmus Villemoes
b332766553 perf: disable parallelism for 'make clean'
Whenever perf got rebuilt, I was consistently getting errors such as

| find: '[...]/perf/1.0-r9/perf-1.0/plugin_mac80211.so': No such file or directory
| find: '[...]/perf/1.0-r9/perf-1.0/plugin_mac80211.so': No such file or directory
| find: find: '[...]/perf/1.0-r9/perf-1.0/libtraceevent.a''[...]/perf/1.0-r9/perf-1.0/libtraceevent.a': No such file or directory: No such file or directory
|
[...]
| find: cannot delete '/mnt/xfs/devel/pil/yocto/tmp-glibc/work/wandboard-oe-linux-gnueabi/perf/1.0-r9/perf-1.0/util/.pstack.o.cmd': No such file or directory

breaking the whole build. The root cause seems to be that the implicit
'make clean' done during do_configure ends up running in parallel, and
thus multiple find commands attempt to stat and/or delete the same
file.

A patch disabling parallelism for the clean target has been ack'ed
upstream (lkml.kernel.org/r/20180705134955.GB3686@krava), but it should
be harmless to pass JOBS=1 even with a fixed kernel. This can be removed
if and when all relevant -stable kernels have that patch.

(From OE-Core rev: bb58203b668df42fd08c2e5fa4a172cf63e37369)

(From OE-Core rev: d12722681a4c13c1a6bc9c965cc43c4544ce7aa9)

(From OE-Core rev: ad21736cf1be017af4b211b5cdd577cdf28dee20)

Signed-off-by: Rasmus Villemoes <rasmus.villemoes@prevas.dk>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-15 10:22:46 +01:00
Armin Kuster
58356f3322 glibc: Update 2.26 to tip
CVES: CVE-2018-11236, CVE-2017-18269,  CVE-2018-11237

LIC_FILES_CHKSUM for LICENSE changed do to removal of
"stdio-common/tst-printf.c is copyright C E Chew" text

changelog:
c9570bd x86: Populate COMMON_CPUID_INDEX_80000001 for Intel CPUs [BZ #23459]
86e0996 x86: Correct index_cpu_LZCNT [BZ #23456]
cf6deb0 conform/conformtest.pl: Escape literal braces in regular expressions
b12bed3 stdio-common/tst-printf.c: Remove part under a non-free license [BZ #23363]
20dc7a9 libio: Add tst-vtables, tst-vtables-interposed
4b10e69 Synchronize support/ infrastructure with master
762e9d6 NEWS: Reorder out-of-order bugs
2781bd5 libio: Disable vtable validation in case of interposition [BZ #23313]
74d16a5 Check length of ifname before copying it into to ifreq structure.
3aaf8bd getifaddrs: Don't return ifa entries with NULL names [BZ #21812]
f958b45 Use _STRUCT_TIMESPEC as guard in <bits/types/struct_timespec.h> [BZ #23349]
81b994b Fix parameter type in C++ version of iseqsig (bug 23171)
7b52c8a libio: Avoid _allocate_buffer, _free_buffer function pointers [BZ #23236]
4df8479 Add NEWS entry for CVE-2018-11236
a5bc5ec Add references to CVE-2018-11236, CVE-2017-18269
58ad5f8 Add a test case for [BZ #23196]
6b4362f Don't write beyond destination in __mempcpy_avx512_no_vzeroupper (bug 23196)
af7519f Fix path length overflow in realpath [BZ #22786]
365722a Fix stack overflow with huge PT_NOTE segment [BZ #20419]
be056fa Fix blocking pthread_join. [BZ #23137]
02f0dd8 Fix signed integer overflow in random_r (bug 17343).
3241353 i386: Fix i386 sigaction sa_restorer initialization (BZ#21269)
677e6d1 [BZ #22342] Fix netgroup cache keys.
71d339c Fix i386 memmove issue (bug 22644).
31e2d15 Fix crash in resolver on memory allocation failure (bug 23005)
1f7c474 getlogin_r: return early when linux sentinel value is set
7e7a5f0 resolv: Fully initialize struct mmsghdr in send_dg [BZ #23037]

(From OE-Core rev: 1c6b71d4ee2b12d1360d53740a1f00e05832d40d)

Signed-off-by: Armin Kuster <akuster@mvista.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-15 10:22:46 +01:00
Ross Burton
f6e03ac1a7 cryptodev: refresh patches
The patch tool will apply patches by default with "fuzz", which is where if the
hunk context isn't present but what is there is close enough, it will force the
patch in.

Whilst this is useful when there's just whitespace changes, when applied to
source it is possible for a patch applied with fuzz to produce broken code which
still compiles (see #10450).  This is obviously bad.

We'd like to eventually have do_patch() rejecting any fuzz on these grounds. For
that to be realistic the existing patches with fuzz need to be rebased and
reviewed.

(From OE-Core rev: cecd562742c94f223c92bf5426148967fc9a8054)

(From OE-Core rev: ce0554c6807b3a67bd770b172e81595797715e9e)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-15 10:22:46 +01:00
Alexander Kanavin
ed79a8ccbe cryptodev: switch SRC_URI to git
One of the tarball mirrors is down; the other is blocked by Intel's corporate proxy
for being deemed 'suspicious' (the same problem might pop up in other
companies as well). Let's just take the source from github.

(From OE-Core rev: 69f60f6ef9061760643d6b4e378052ddad424754)

(From OE-Core rev: b5d9098b2df889c7394296eeab1fc4fab036e704)

Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-15 10:22:46 +01:00
Daniel Schultz
037fa41038 cryptodev: Fix build errors with v4.13+
Without this compiles of 4.13 and later kernels fail.

Backport from https://github.com/cryptodev-linux/cryptodev-linux
Based on commit f0d69774afb27ffc62bf353465fba145e70cb85a

(From OE-Core rev: 317fd9814653ee22496dda63a02e628e8a16899b)

(From OE-Core rev: 8894f352fd1f2a087528808cc3dc52d7a5cc72bd)

Signed-off-by: Daniel Schultz <d.schultz@phytec.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-15 10:22:46 +01:00
Christopher Larson
f29fea340f ovmf: set PARALLEL_MAKE for target as well
This can fail for target, not just native.

(From OE-Core rev: 747c7dc8702d2241475894876d06a2f1f2b29fed)

(From OE-Core rev: 0d4ccd6eac41c878b5a9eec10e1a00b76241b846)

(From OE-Core rev: 7786a7d99cfe1695b4a1017021dee826b4994167)

Signed-off-by: Christopher Larson <chris_larson@mentor.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-15 10:22:46 +01:00
Khem Raj
7add7e5892 ovmf: Fix build with gcc8
(From OE-Core rev: 278b00ddccb274150ed85e48e984675b40fc9aaa)

(From OE-Core rev: 2e4a05879f56e96bcdc0770d3fe27abc8b9af35e)

(From OE-Core rev: 2b3d976392d53afc3033ddf37d2404d61904bf78)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-15 10:22:46 +01:00
Ross Burton
9c8021f2fb ovmf: refresh patches
The patch tool will apply patches by default with "fuzz", which is where if the
hunk context isn't present but what is there is close enough, it will force the
patch in.

Whilst this is useful when there's just whitespace changes, when applied to
source it is possible for a patch applied with fuzz to produce broken code which
still compiles (see #10450).  This is obviously bad.

We'd like to eventually have do_patch() rejecting any fuzz on these grounds. For
that to be realistic the existing patches with fuzz need to be rebased and
reviewed.

(From OE-Core rev: 68d567bd64debc3dfb37df3c814287549da56a3b)

(From OE-Core rev: d2882641a0b4df887c0af974ce36ff50834b7f29)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-15 10:22:46 +01:00
Martin Jansa
ecb366b52d perf: fix build with kernel older than 4.8
* perf is failing to build for me since this oe-core commit:
  commit 9b38c824961fc9dce51bda95c25dac91a69fc64f
  Author: Hongxu Jia <hongxu.jia@windriver.com>
  Date:   Tue Apr 24 11:33:47 2018 +0800

    perf: make a copy of kernel source to perf workdir

  the problem is that perf sources in kernel older than 4.8 (in my case
  4.4) are depending on the "global" include headers outside tools
  directory, e.g. swab.h in:
  kernel-source/tools$ git grep swab.h
  perf/MANIFEST:include/linux/swab.h
  perf/MANIFEST:include/uapi/linux/swab.h
  perf/util/include/asm/byteorder.h:#include "../../../../include/uapi/linux/swab.h"

  this was resolved in 4.8 with:
  commit 7e3f36411342a54f1981fa97b43550b8406a3d69
  Author: Arnaldo Carvalho de Melo <acme@redhat.com>
  Date:   Mon Jul 18 17:42:16 2016 -0300

    perf tools: Remove tools/perf/util/include/asm/byteorder.h

    Not used anymore. This also stops include linux/swab.h directly
    from the kernel sources, remove that reference from the MANIFEST.

  and few more changes to make tools/include more complete and standalone:
  tools/include in 4.15:
  asm  asm-generic  linux  tools  trace  uapi

  tools/include in 4.4:
  asm  asm-generic  linux  tools

  but copying the include header even for kernels which don't really
  need it doesn't add big overhead, so just copy include to perf sources
  for all kernels.

(From OE-Core rev: 19fb2d11a8bb3c6dfdd5edc1b9155d642dc0f5e0)

(From OE-Core rev: 7950b1ed077eaecff1523221c297158aa54b7ecf)

(From OE-Core rev: c2fa80c4cfedd993d07b20db0315e91f9481d11c)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-15 10:22:45 +01:00
Hongxu Jia
42eadd3dea perf: make a copy of kernel source to perf workdir
Since perf contaminates linux shared workdir, it probably caused
kernel-devsrc compile failure at world build.
...
|0 blocks
|cpio: ./tools/perf/arch/arm/util/sedr7ORqk: Cannot stat:
No such file or directory
|0 blocks
...
cpio tried to find a file at ${S}/tools/perf and failed
if the input list is not valid.

Make a copy of kernel shared source directory into a perf workdir
could fix the issue.

Drop `Fix for rebuilding' which is obsolete

[YOCTO #10880]

(From OE-Core rev: 9b38c824961fc9dce51bda95c25dac91a69fc64f)

(From OE-Core rev: 1a39330bf79f3d36a1a0f6d34b421de53ff36405)

(From OE-Core rev: 6f9117c0bceeedbfce08647825edf86966457bfc)

Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-15 10:22:45 +01:00
Anuj Mittal
8b2dbbddc4 perf: enable support for libaudit
perf needs audit-python to be able to show syscall names and for
'perf trace' to work.

Enable dependency on audit-python if present in PACKAGECONFIG. It's
disabled by default since audit as of now is in meta-selinux.

Fixes [YOCTO #3343]
Fixes [YOCTO #3358]

(From OE-Core rev: c386abacae89a148e77ffa51630c7917e90406f9)

(From OE-Core rev: 5b7550a62fa0fa7892c28ae920ee243c223bf3c2)

Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-15 10:22:45 +01:00
Armin Kuster
b33d89d5ea Binutils: Security fix for CVE-2018-7642
Affects: <= 2.30

(From OE-Core rev: a424ac771bfceed2cef4dad8c0fd698764bc62a6)

Signed-off-by: Armin Kuster <akuster@mvista.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-15 10:22:45 +01:00
Armin Kuster
bdb3981466 Binutils: Security fix for CVE-2018-7569
Affects: <= 2.30

(From OE-Core rev: b99d1f2212ea73ddafd3fbf9426b37a04d89b809)

Signed-off-by: Armin Kuster <akuster@mvista.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-15 10:22:45 +01:00
Armin Kuster
3552c38b32 Binutils: Security fix for CVE-2018-7568
Affects: <= 2.30

(From OE-Core rev: d407e48c7e925806e162bb91e9b14088acedb05c)

Signed-off-by: Armin Kuster <akuster@mvista.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-15 10:22:45 +01:00
Armin Kuster
1b709e6837 Binutils: Security fix for CVE-2018-7208
Affects: <= 2.30

(From OE-Core rev: fc5adfb0af0cae0071c0136068f37fd35529fc7f)

Signed-off-by: Armin Kuster <akuster@mvista.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-15 10:22:45 +01:00
Armin Kuster
5281adb885 Binutils: Security fix for CVE-2018-6759
Affects: <= 2.30

(From OE-Core rev: 7baa3e4c8e920caa09082f88e412687cc1590454)

Signed-off-by: Armin Kuster <akuster@mvista.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-15 10:22:45 +01:00
Armin Kuster
53df81889a Binutils: Security fix for CVE-2018-6323
Affected: <= 2.29.1

(From OE-Core rev: 52a93bb4c5b5128ff3fa8be84c41309cfeff8224)

Signed-off-by: Armin Kuster <akuster@mvista.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-15 10:22:45 +01:00
Armin Kuster
1b202d632b Binutils: Security fix for CVE-2018-13033
Affects: <= 2.30

(From OE-Core rev: 64afab325facc55f4a49247e4033b1d3c8b22b67)

Signed-off-by: Armin Kuster <akuster@mvista.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-15 10:22:45 +01:00
Armin Kuster
8eeacb689b Binutils: Security fix for CVE-2018-10535
Affects: <= 2.30

(From OE-Core rev: 5fc41ff3341074497a1359969baf880d8035826b)

Signed-off-by: Armin Kuster <akuster@mvista.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-15 10:22:45 +01:00
Armin Kuster
5a60b74887 Binutils: Security fix for CVE-2018-10534
Affects: <= 2.30

(From OE-Core rev: 7934bbc460009f52824e142273f2ecce957fc123)

Signed-off-by: Armin Kuster <akuster@mvista.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-15 10:22:45 +01:00
Armin Kuster
711e5e7b08 Binutils: Security fix for CVE-2018-10373
Affects: <= 2.30

(From OE-Core rev: bea11092ddf2e6778bd55af1f2044a9e9fa1383b)

Signed-off-by: Armin Kuster <akuster@mvista.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-15 10:22:45 +01:00
Armin Kuster
2d7d54a5c5 Binutils: Security fix for CVE-2018-10372
Affects: <= 2.30

(From OE-Core rev: 8d254fe04992aed29a2c8ecbf99e91d0167449ce)

Signed-off-by: Armin Kuster <akuster@mvista.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-15 10:22:45 +01:00
Armin Kuster
e82b9a5096 binutils: Security fix for CVE-2017-17123
Affects: <= 2.29.1

(From OE-Core rev: 520bc451e7727568ec7457ace7b1281493f9cbdc)

Signed-off-by: Armin Kuster <akuster@mvista.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-15 10:22:45 +01:00
Armin Kuster
e1a49c7e83 binutls: Security fix for CVE-2017-17125
Affects: <= 2.29.1

(From OE-Core rev: 7e5cf6ef776465101f18daf22f283c87423c7d20)

Signed-off-by: Armin Kuster <akuster@mvista.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-15 10:22:45 +01:00
Armin Kuster
e6fdc8959b binutls: Security fix for CVE-2017-17122
Affects: <= 2.29.1

(From OE-Core rev: 86c54c4770ce207575e29c589732c74e68d9ff3c)

Signed-off-by: Armin Kuster <akuster@mvista.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-15 10:22:45 +01:00
Armin Kuster
4e970e6409 Binutils: Security fix for CVE-2017-17121
Affects: <= 2.29.1

(From OE-Core rev: 942e7f65fd656f2cc526a3c99edcea60f341132c)

Signed-off-by: Armin Kuster <akuster@mvista.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-15 10:22:45 +01:00
Armin Kuster
ad4d04429a binutls: Security fix for CVE-2017-17080
Affects: <= 2.29.1

(From OE-Core rev: 238a0a40a7835226dd25134e88f830683f60dac3)

Signed-off-by: Armin Kuster <akuster@mvista.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-15 10:22:45 +01:00
Armin Kuster
1abb9cc58e binutls: Security fix for CVE-2017-16832
Affects: <= 2.29.1

(From OE-Core rev: ec8861a2f280a3210f9423fd1b687bca6340b8ca)

Signed-off-by: Armin Kuster <akuster@mvista.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-15 10:22:45 +01:00
Armin Kuster
d40d4bf86f binutls: Security fix for CVE-2017-16831
Affects: <= 2.29.1

(From OE-Core rev: ab9e8161a3b89914d8664175a684675bc99d6f21)

Signed-off-by: Armin Kuster <akuster@mvista.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-15 10:22:45 +01:00
Armin Kuster
7d51055f44 binutls: Security fix for CVE-2017-16830
Affects: <= 2.29.1

(From OE-Core rev: 29c6da2092599145e5a4f00ccc6029f31ec724da)

Signed-off-by: Armin Kuster <akuster@mvista.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-15 10:22:45 +01:00
Armin Kuster
2720b93220 binutls: Security fix for CVE-2017-16829
Affects: <= 2.29.1

(From OE-Core rev: 7dc47bc3f3d66aea3b8bbc2fb6fb9bbb7d2dc0a0)

Signed-off-by: Armin Kuster <akuster@mvista.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-15 10:22:45 +01:00
Armin Kuster
3a47233ad7 binutls: Security fix for CVE-2017-16828
Affects: <= 2.29.1

(From OE-Core rev: 98e5e27514a19d31038aec22408e27b84514c5b8)

Signed-off-by: Armin Kuster <akuster@mvista.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-15 10:22:45 +01:00
Armin Kuster
8073f5664b binutls: Security fix for CVE-2017-16827
Affects: <= 2.29.1

(From OE-Core rev: 9fa2d818018420f3c9afc30012267e6a46fe1d09)

Signed-off-by: Armin Kuster <akuster@mvista.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-15 10:22:45 +01:00
Armin Kuster
aa7d33713c binutls: Security fix for CVE-2017-16826
Affects: <= 2.29.1

(From OE-Core rev: acac226dd46a0e27da51db75197f57dd45254502)

Signed-off-by: Armin Kuster <akuster@mvista.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-15 10:22:45 +01:00
Armin Kuster
d85be1b736 binutls: Security fix for CVE-2017-15996
Affects: <= 2.29.1

(From OE-Core rev: ee5ad659a9f2ea1714e3ae51ca1948f165fb21d3)

Signed-off-by: Armin Kuster <akuster@mvista.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-15 10:22:45 +01:00
Armin Kuster
f0be43144f binutls: Security fix for CVE-2017-15939
affects: <= 2.29.1

(From OE-Core rev: dec0162e16040aa00c5fff3e5cfde1b488af3e55)

Signed-off-by: Armin Kuster <akuster@mvista.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-15 10:22:45 +01:00
Armin Kuster
e4c382ecc6 binutls: Security fix for CVE-2017-15225
Affects: <= 2.29.1

(From OE-Core rev: 885e991934e5e20ac69551e73da9d3219eb4c24e)

Signed-off-by: Armin Kuster <akuster@mvista.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-15 10:22:45 +01:00
Armin Kuster
09d31d0806 binutls: Security fix for CVE-2017-15025
Affects: <= 2.29.1

(From OE-Core rev: b3cc9eedf3a64d4c0914b2eaf204fe38a864d238)

Signed-off-by: Armin Kuster <akuster@mvista.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-15 10:22:45 +01:00
Armin Kuster
8011a1aed9 binutls: Security fix for CVE-2017-15024
Affects: <= 2.29.1

(From OE-Core rev: 349b3cfb39c76304e351481899de9f72e4f1295b)

Signed-off-by: Armin Kuster <akuster@mvista.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-15 10:22:45 +01:00
Armin Kuster
9e7dc232e7 binutls: Security fix for CVE-2017-15023
affects: <= 2.29.1

(From OE-Core rev: 755fd4e68af4cdafc482c02b7822cc06215da4fb)

Signed-off-by: Armin Kuster <akuster@mvista.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-15 10:22:45 +01:00
Armin Kuster
00a04d8d8b binutls: Security fix for CVE-2017-15022
Affected: <= 2.29.1

(From OE-Core rev: c19aa7eafd38639095b415efc16dba3777507d70)

Signed-off-by: Armin Kuster <akuster@mvista.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-15 10:22:45 +01:00
Armin Kuster
fb5416e874 binutls: Security fix for CVE-2017-15021
Affects: <= 2.29.1

(From OE-Core rev: 65411acb41a2461aab2904fea2d348d2a06e48e0)

Signed-off-by: Armin Kuster <akuster@mvista.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-15 10:22:45 +01:00
Armin Kuster
bc0ca9fb89 binutils: Security fix for CVE-2017-14940
Affects: <= 2.29.1

(From OE-Core rev: 59deda9b709640030bc0199e34e39fa07cfcca69)

Signed-off-by: Armin Kuster <akuster@mvista.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-15 10:22:45 +01:00
Armin Kuster
bc5c5f19b6 binutls: Security fix for CVE-2017-14939
Affects: <= 2.29.1

(From OE-Core rev: 03fb0028d76d18bac48b333f743ce27e21324d59)

Signed-off-by: Armin Kuster <akuster@mvista.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-15 10:22:45 +01:00
Armin Kuster
b38088da6a binutls: Security fix for CVE-2017-14938
Affects: <= 2.29.1

(From OE-Core rev: 45de3690367c8e0adf443a2f2630ecf8791789d6)

Signed-off-by: Armin Kuster <akuster@mvista.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-15 10:22:45 +01:00
Armin Kuster
6e01f78994 binutls: Security fix CVE-2017-14934
Affects: <= 2.29.1

(From OE-Core rev: b7715d4782cf956c198eaa6b43a6bf11fe8ece7c)

Signed-off-by: Armin Kuster <akuster@mvista.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-15 10:22:45 +01:00
Armin Kuster
9be7b4f3db binutls: Security fix CVE-2017-14933
Affects: <= 2.29.1

(From OE-Core rev: 16cdbc7504cc14547bb99ed742484ae9e658ec6e)

Signed-off-by: Armin Kuster <akuster@mvista.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-15 10:22:44 +01:00
Armin Kuster
4ad8bd4a60 binutls: Security fix CVE-2017-14932
(From OE-Core rev: 56d6acf145cc7550377588ca3c654d6f86143dfe)

Signed-off-by: Armin Kuster <akuster@mvista.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-15 10:22:44 +01:00
Armin Kuster
701eecc7d3 binutils: Secuirty fix CVE-2017-14930
affects <= 2.29.1

(From OE-Core rev: 47c3add5dcc7a29d4647da2c0ad86d756323aa8f)

Signed-off-by: Armin Kuster <akuster@mvista.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-15 10:22:44 +01:00
Armin Kuster
1ce31b2a81 binutils: Security fix CVE-2017-12967
affects: <= 2.29.1

[v2]
Fix patch header typo
Rename 2017-12967 to 2017-17124

(From OE-Core rev: 732f051ff9b0103774d670d8c4971315cbb83a68)

Signed-off-by: Armin Kuster <akuster@mvista.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-15 10:22:44 +01:00
Armin Kuster
407c64a876 binutils: Update to tip of 2.29 branch
mostly bug fixes

(From OE-Core rev: dc9b9d2e1fc8353d187a14deee576fcda52442c2)

Signed-off-by: Armin Kuster <akuster@mvista.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-15 10:22:44 +01:00
Armin Kuster
8cd24ce202 linux-yocto-tiny/4.9: update to 4.9.113
(From OE-Core rev: 5151c48322739c3176229e999076fa273627ff7e)

Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-15 10:22:44 +01:00
Armin Kuster
c52af8e03b linux-yocto-rt/4.9: update to 4.9.113
(From OE-Core rev: b8f70fa45322acc63c8fafa378cdc4cc62d2720d)

Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-15 10:22:44 +01:00
Armin Kuster
041c5de9cb linux-yocto/4.9: update to 4.9.113
(From OE-Core rev: 209a17ddd45dd9958bc699316555ae8a4f51a67e)

Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-15 10:22:44 +01:00
Armin Kuster
f94714019c linux-stable-tiny/4.4: update to 4.4.141
(From OE-Core rev: f6814bf9e64c73b4494aa73099563d53471f1711)

Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-15 10:22:44 +01:00
Armin Kuster
10ca912018 linux-yocto-rt/4.4: update to 4.4.141
(From OE-Core rev: 925c53489d7ad1ed177a71ac87915eb2dcfe1e77)

Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-15 10:22:44 +01:00
Armin Kuster
c59c390ae3 linux-yocto/4.4: update to 4.4.141
(From OE-Core rev: 9a61367b48f8175be91103779bfd22f301d109f6)

Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-15 10:22:44 +01:00
Richard Purdie
47d29e4229 yocto-uninative: Upgrade to version 2.2
This version adds nativesdk-libnss-nis to resolve glibc symbol issues

We need this to avoid symbol mismatch issues for binaries that use this
on newer systems which then won't run on older ones where it isn't present.

(From OE-Core rev: 98c7ab9cf32765d604c35dc69bc7bd90e94fc8f3)

(From OE-Core rev: 026408c9d90e6241ce1b3d4cadefc48b7aba1734)

(From OE-Core rev: 8b861d3c362615011a7004d902193587340a9f8c)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-15 10:22:44 +01:00
Richard Purdie
d1cebbbb92 yocto-uninative: Update to version 2.1
This fixes issues with fontforge-native.

(From OE-Core rev: cec85a6fcadc24fd266fa34631cb095e0a773c1a)

(From OE-Core rev: 462e20dddeb4da278eebe8a2f870f75709dfbe77)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-15 10:22:44 +01:00
Ovidiu Panait
e6200912a8 lsof: Update SRC_URI
lsof 4.89 archive has been moved to OLD directory and turned into tar.gz,
so update SRC_URI and checksums.

(From OE-Core rev: 12482854ed9012f309fc8dfa28169f84003f9e63)

Signed-off-by: Ovidiu Panait <ovidiu.panait@windriver.com>
Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-15 10:22:44 +01:00
Bruce Ashfield
51b315fc97 make-mod-scripts: add build requirements for external modules
Newer kernels (4.14/v4.15+) have dependencies for the build of
modules (and hence external modules). Without these dependencies
explicitly in the build chain, you can end up with build failures like:

  work-shared/qemux86/kernel-source/scripts/extract-cert.c:21:25: fatal
  error: openssl/bio.h: No such file or directory
  |  #include <openssl/bio.h>
  |                          ^
  | compilation terminated.
  | make[2]: *** [scripts/extract-cert] Error 1
  | make[1]: *** [scripts] Error 2

To ensure that these headers are in place, and that the scripts use
our build environment flags, we add a dependency on openssl-native
and use oe_make to invoke the build.

Older kernels have no issues with the extra dependency, so there's no
need to make this conditional.

(From OE-Core rev: 916cb2029d3c97bf12ebf03832b9ba980451dbcf)

Fixes [YOCTO #12860]

(From OE-Core rev: d2aa88a6a92985f21414fceea2dc0facbf7f8779)

Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
[Tweaked to have changes in module*.bbclass instead from where
make-mod-scripts was split in sumo]
Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-15 10:22:44 +01:00
Richard Purdie
9e83976054 make-mod-scripts/kernel-devsrc: Fix objtool issues
Kernels which use tools/objtool can now fail when building external modules
due to objtool being missing, the generated files can also cause problems
for kernel-devsrc.

Ensure objtool is generated in make-mod-scripts by also calling
"make prepare".

For devsrc, delete the generated binaries since they'd be native
binaries and unsuitable for the target.

The oeqa kernel module tests also need to have the additional "make prepare"
step added.

(From OE-Core rev: 52fd2993784b4218f5df4f343e7da45d964df305)

Fixes [YOCTO #12860]

(From OE-Core rev: 49b208fc7b3d52826ba57a86ed52bc30e181ff78)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
[Tweaked to add "make prepare" to module-base.bbclass instead of
make-mod-scripts.bb]
Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-15 10:22:44 +01:00
Dogukan Ergun
53d5f01d2d wic: if we can't get from ioctl, try from os.stat()
Under some conditions, ioctl FIGETBSZ can't return real value.
We can try to use fallback via os.stat() to get block size.

Source of patch:
17365f4fe9

(From OE-Core rev: d8f7cf2d38934c248be91101236f7537d0d31ea7)

(From OE-Core rev: 4f528a93352c6301d57a9aaeb082d0cc313d91c3)

Signed-off-by: Dogukan Ergun <dogukan.ergun@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-15 10:22:44 +01:00
Liwei Song
9ed1178c87 linux-firmware: package rtl8168 firmware
Add package for rtl8168 firmware which is required by Realtek
Ethernet Controller.

(From OE-Core rev: e5315d5d820cb1b164c75a0cab3804f6c69b5ba9)

(From OE-Core rev: 9910484a101279060cd0c9bc3e8b8af8700ba255)

(From OE-Core rev: 931a52e8698f684ccbb26ddec18764ad9d9a3e8f)

Signed-off-by: Liwei Song <liwei.song@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-19 10:54:56 +01:00
Otavio Salvador
8813bd55ee linux-firmware: upgrade to 8fc2d4e5 revision
8fc2d4e Merge git://git.marvell.com/mwifiex-firmware
e1abab6 linux-firmware: update Marvell USB8997 firmware image to add WPA2 vulnerability fix
c38c231 linux-firmware: update Marvell SD8897-B0 firmware image to add WPA2 vulnerability fix
0686ec7 Merge branch 'firmware-update' of https://github.com/intel/opa-firmware
bb7f773 Update Intel OPA hfi1 firmware
397a604 qed: Add firmware 8.33.12.0
40d4117 linux-firmware: Add firmware file for Intel Bluetooth,9560
bf3934f linux-firmware: Add firmware file for Intel Bluetooth,9260
f865934 linux-firmware: Update firmware file for Intel Bluetooth,8265
7dab503 Merge branch 'for-upstream' of git://git.chelsio.net/pub/git/linux-firmware
0caed67 cxgb4: update firmware to revision 1.19.1.0
0783fb9 nfp: add symlink for mixed mode Agilio CX 2x25GbE cards
380957e nfp: update Agilio SmartNIC flower firmware to rev 5701
b562d2f linux-firmware: update wil6210 firmware to 5.2.0.18
c1aa76a linux-firmware: rsi: update firmware images for Redpine 9113 chipset
1621614 Merge tag 'iwlwifi-fw-2018-04-06' of git://git.kernel.org/pub/scm/linux/kernel/git/iwlwifi/linux-firmware
50c1323 iwlwifi: update firmwares for 3160, 3168 and 7265
c711ea5 iwlwifi: add some new FW versions and update older ones
8c1e439 amdgpu: update vce firmware for Polaris
31accdf linux-firmware: Add firmware file for Intel Bluetooth,9560
89139e8 linux-firmware: Add firmware file for Intel Bluetooth,9260
58cdb52 linux-firmware: Update firmware file for Intel Bluetooth,8265
9cb49be linux-firmware: Update firmware patch for Intel Bluetooth 8260
a3be6d4 Merge https://github.com/Netronome/linux-firmware into netro

License-Update: new files and version update. Same terms.
(From OE-Core rev: 8c0ee2072d493ecd09284c27fc8d627e3e6c5ae8)

(From OE-Core rev: 1325518f8f2dafc09acd1bef5f93aa3550063306)

(From OE-Core rev: 1690043f681ca75a76619eb6b02e5e2610a9051a)

Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-19 10:54:56 +01:00
Otavio Salvador
676de647d8 linux-firmware: upgrade to 4c0bf11 revision
License-Update: new releases and copyright years updated.
(From OE-Core rev: cf757ca67325415a26555c67a098f168453339a4)

(From OE-Core rev: 8f5ca5903bb76fb08f9962bbbdf50620952c6c92)

Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-19 10:54:56 +01:00
Nicolas Dechesne
3147a5c3e8 linux-firmware: fix typo
(From OE-Core rev: 6dddf0151d486c474cbf522ced8c5ad96ae290fd)

(From OE-Core rev: f4efd16147ae5edf39935cec6a70263e878d984b)

Signed-off-by: Nicolas Dechesne <nicolas.dechesne@linaro.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-19 10:54:56 +01:00
Liwei Song
1ad9505fdc linux-firmware: package all ibt-17-x-x.sfi/ddc firmware
All ibt-17-x-x.sfi/ddc firmware are use to support Intel Bluetooth 9560
they are needed in different version of Bluetooth driver since
4.14 kernel version.

commit b77bb7afe513 ("linux-firmware: package ibt-17-16-1 firmware")
only package one of the ibt-17 series firmware.

As the Bluetooth driver's update, to avoid packaging the ibt-17 firmware
one by one, install them in one package ibt-17.

(From OE-Core rev: f6110c0213064c324397476f3eae3851328790dd)

(From OE-Core rev: 12d2acce1f3266170707e917133ff549157a8150)

Signed-off-by: Liwei Song <liwei.song@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-19 10:54:56 +01:00
Liwei Song
22d02d2bb7 linux-firmware: package ibt-17-16-1 firmware
Package ibt-17-16-1 firmware for Bluetooth device 9460/9560

(From OE-Core rev: b77bb7afe5131d9157be9dfebda4d4185a98a820)

(From OE-Core rev: cc27af68451655c3844db4f25cac93331a6a4770)

Signed-off-by: Liwei Song <liwei.song@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-19 10:54:56 +01:00
Liwei Song
265f1cfcaf linux-firmware: package iwlwifi-9000 series fimware
Add package for 9000 seires Intel wireless firmware.

(From OE-Core rev: 7e6891e71d8da85371909925bbcb6baf816f3289)

(From OE-Core rev: cfa8efa626732d91b385d036005e0b6eb7e3f3de)

Signed-off-by: Liwei Song <liwei.song@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-19 10:54:56 +01:00
Nicolas Dechesne
6d811b491c linux-firmware: add packaging for QCOM firmware for APQ8016 and APQ8096
Firmware files for VPU and GPU found on various Qualcomm based devices, such as
Dragonboard 410c and/or Dragonboard 820c.

* venus-1.8 and adreno-a3xx firmware are VPU and GPU for Qualcomm APQ8016 SoC
* venus-4.2 and adreno-a530 firmware are VPU and GPU for Qualcomm APQ8096 SoC

(From OE-Core rev: 687d71982a88f1db91316d646ecaeaf07ab88e7a)

(From OE-Core rev: ef5923466435a6e73076f7eb6b38b74ced4173ec)

Signed-off-by: Nicolas Dechesne <nicolas.dechesne@linaro.org>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-19 10:54:56 +01:00
Otavio Salvador
1b0984c638 linux-firmware: Bump revision to 65b1c68c
The bump includes following changes:

65b1c68 wl18xx: update firmware file 8.9.0.0.76
8650396 wl127x/wl128x: update firmwares
2eefafb rtlwifi: rtl8723de: Add firmware for new driver/device
4a77cab linux-firmware: DMC firmware for cannonlake v1.07
2567e09 nvidia: add GP108 signed firmware
2451bb2 linux-firmware: liquidio: add v1.7.0 vswitch firmware
7f93c9d brcm: add CYW4373 firmwares and Cypress license file
fdee922 linux-firmware: Update firmware patch for Intel Bluetooth 8260
9a843a1 linux-firmware: Update firmware file for Intel Bluetooth 8265
97339b3 linux-firmware: Add firmware file for Intel Bluetooth 9260
db9964e linux-firmware: Add firmware file for Intel Bluetooth 9560
e4252cf Revert commits a42f895, c113d33, 041aff8, 73d13b5
a42f895 linux-firmware: Update firmware patch for Intel Bluetooth 8260
c113d33 linux-firmware: Update firmware file for Intel Bluetooth 8265
041aff8 linux-firmware: Add firmware file for Intel Bluetooth 9260
73d13b5 linux-firmware: Add firmware file for Intel Bluetooth 9560
30946b9 amdgpu: add firmware for Raven
71a4800 amdgpu: update vega10 vce firmware
89c6211 linux-firmware: intel: Add Cannonlake audio firmware
b39260f nfp: add firmware for tc-flower
c752e24 nfp: change firmware directory layout
00a92a3 nfp: update firmware for Agilio CX SmartNICs
02d857e linux-firmware: DMC firmware for skylake v1.27
17e6288 brcm: update firmware for bcm4358
1841cec brcm: update firmware for bcm4356
b3f4e74 brcm: update firmware for bcm4354
cd86989 brcm: introduce firmware for bcm43430 revision 0
5ee46c2 brcm: update firmware for bcm4339
8e864c2 Mellanox: Add new mlxsw_spectrum firmware 13.1530.152
fd45000 WHENCE: Add missing entry for mlxsw_spectrum firmware
7f9bbc7 WHENCE: Fix typo in entry for iwlwifi-8265-34.ucode
284de20 s2255drv: f2255usb: firmware version 1.2.8
7c705a4 amdgpu: add new CP firmware for polaris chips
5582ca4 qed: Add firmware 8.33.1.0
e721933 qcom: add venus firmware files for v4.2
f36a8e2 qcom: add firmware files for Adreno a530
85313b4 iwlwifi: add firmware version 34 for new 9000 series
6c161c5 linux-firmware: liquidio: update firmware to v1.7.0
b964279 linux-firmware: intel: Update Geminilake audio firmware
c4276b6 iwlwifi: add firmware version 33 for new 9000 series
5a05332 iwlwifi: add new firmware version 34 for 8000C and 8265
1a5fd94 iwlwifi: update firmwares for 3160, 3168, 7260, 7265 and 7265D
796c912 iwlwifi: update firmwares for 3160, 3168, 7265D, 8000C and 8265
1156e62 linux-firmware: DMC firmware for kabylake v1.04
db3e185 linux-firmware: update Marvell PCIe-USB8997 firmware image
de81715 linux-firmware: GuC firmware for kabylake v9.39
434e712 linux-firmware: GuC firmware for Broxton v9.29
0aebd9f linux-firmware: GuC firmware for Skylake v9.33
de5b4c2 linux-firmware/i915: Add Cannonlake DMC version 1.06
8e7c787 linux-firmware/i915: Add Geminilake DMC version 1.04
e0494e9 linux-firmware: update Marvell PCIe-USB8997 firmware image
11db131 linux-firmware: update Marvell PCIe-USB8897-A2 firmware image

Included in those changes, two license checksums has been changed:

 - LICENCE.Netronome: minimal change dropping a word in license name;
 - WHENCE: adjustments due the new firmware versions;

(From OE-Core rev: 4facc572380daf5b7e6294b388a657fa0a44a6f2)

(From OE-Core rev: 48779f278687a5f6af4b75d01595b8a125b2ba96)

Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-19 10:54:56 +01:00
Hannu Lounento
9dea0ce980 systemd: remove the group 'lock'
The upstream commit 61f32bff6130a44d077886d38cff89ad161bf177 included in
the release v229 removed the use of the group:

    commit 61f32bff6130a44d077886d38cff89ad161bf177
    Author: Martin Pitt <martin.pitt@ubuntu.com>
    Date:   Mon Feb 1 12:09:34 2016 +0100

        tmpfiles: drop /run/lock/lockdev

        Hardly any software uses that any more, and better locking mechanisms like
        flock() have been available for many years.

        Also drop the corresponding "lock" group from sysusers.d/basic.conf.in, as
        nothing else is using this.

    [...]
    diff --git a/sysusers.d/basic.conf.in b/sysusers.d/basic.conf.in
    index 823d6cb20..b2dc5ebd4 100644
    --- a/sysusers.d/basic.conf.in
    +++ b/sysusers.d/basic.conf.in
    @@ -19,7 +19,6 @@ g wheel   -     -            -

     # Access to certain kernel and userspace facilities
     g kmem    -     -            -
    -g lock    -     -            -
     g tty     @TTY_GID@     -            -
     g utmp    -     -            -
    [...]

The upstream documentation doc/UIDS-GIDS.md says that basic.conf.in is "the
precise list of the currently defined groups":

    ## Special `systemd` GIDs

    `systemd` defines no special UIDs beyond what Linux already defines (see
    above). However, it does define some special group/GID assignments, which are
    primarily used for `systemd-udevd`'s device management. The precise list of the
    currently defined groups is found in this `sysusers.d` snippet:
    [basic.conf](https://raw.githubusercontent.com/systemd/systemd/master/sysusers.d/basic.conf.in)

    It's strongly recommended that downstream distributions include these groups in
    their default group databases.

Removing the creation of the group also avoids the need to define a GID
for it when using static ids.

(From OE-Core rev: da3659155cd1825a4a8d3d7c5288b4273714de15)

(From OE-Core rev: 1776ab75b8e5f00e69b99565af4cfeef27bc95d4)

Signed-off-by: Hannu Lounento <hannu.lounento@vaisala.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-19 10:54:56 +01:00
Ross Burton
aff05697e1 minicom: change SRC_URI to use Debian mirrors
Alioth is dead and the minicom project on Salsa (the replacement for Alioth)
doesn't actually have any files in, so just use the Debian mirror instead.

(From OE-Core rev: b0338efcdabeec79c568c74b6888d7d523e8e9dc)

(From OE-Core rev: e92ee196e6d305bc443567241c6d07e79e74a2eb)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-19 10:54:56 +01:00
Ross Burton
46e66e6902 mirrors: add Debian snapshot mirror for 2018
Add a Debian snapshot mirror from 2018 (specifically, 10th March, the date 9.4
was released) to DEBIAN_MIRRORS.

(From OE-Core rev: f3f394913b4e4a7c601ad1158faaf8b9d493e1c7)

(From OE-Core rev: 8756cf22afb30eeb7a633bbe0cdd8187a2f4a3f5)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-19 10:54:56 +01:00
Ross Burton
97a93ec146 shadow: update SRC_URI now Alioth is down
Alioth is dead so we can't use it for SRC_URI anymore.  There is a shadow
repository on GitHub which is the new upstream, but for some reason it is
missing the 4.2.1 tag and tarball that we use.  Also 4.2.1 was never uploaded
into Debian itself, so we can't use their mirror network either.

For now point SRC_URI at the Yocto Project source mirror and set
UPSTREAM_CHECK_URI so that we get nagged to upgrade to 4.6.

(From OE-Core rev: b3e246fef166030f327b5a852718ea907ada1759)

(From OE-Core rev: 6de1c2eca77f73176aa0eaca3d816aa3a262ff6d)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-19 10:54:56 +01:00
Ross Burton
fc34a24e48 chrpath: Alioth is dead, use DEBIAN_MIRROR
The previous host of chrpath, Alioth, is dead.  chrpath hasn't yet moved to
Salsa, so download the tarball from the Debian mirrors.

(From OE-Core rev: a8a2c5ec891286a1e7fd5ebdd33565f9ae3965c2)

(From OE-Core rev: 8310ff1730a1d814f63de5e313605b0094c7931c)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-19 10:54:55 +01:00
Armin Kuster
c2e819760f popt: update SRC_URI
It appears the rpm5.org has been down for some time, switch to fossies

WARNING: popt-native-1.16-r3 do_fetch: Failed to fetch URL http://rpm5.org/files/popt/popt-1.16.tar.gz, attempting MIRRORS if available

(From OE-Core rev: 347ee336dcc94e6fa4e4788117013615b90abd70)

(From OE-Core rev: 9e3bf0ce4ebb885ca0ede0e636d80e032c29e744)

(From OE-Core rev: 3eb66e250e9dd38db0b1d557a0fda3c33e43ef04)

Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 50804c0663)
Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-19 10:54:55 +01:00
André Draszik
80ae0df05d common-licenses: Add BSD-1-Clause
Some projects are starting to use it.
  https://spdx.org/licenses//BSD-1-Clause.html

(From OE-Core rev: 77f692ecb39d880b2cb420850a31534860eb2cc5)

(From OE-Core rev: 676a98455a613ab8d491d5c3e0bf317b2707d5fa)

Signed-off-by: André Draszik <andre.draszik@jci.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 77f692ecb39d880b2cb420850a31534860eb2cc5)
Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-19 10:54:55 +01:00
Anuj Mittal
7d9730fa94 libxml2: fix makefile for ptests
Changes to Makefile in latest version mean when "make -k runtests" is executed,
it leads to errors like:

| make: *** No rule to make target 'runtest.c', needed by 'runtest.o'.
| make: *** No rule to make target 'SAX.c', needed by 'SAX.lo'.
| make: *** No rule to make target 'entities.c', needed by 'entities.lo'.
| make: *** No rule to make target 'encoding.c', needed by 'encoding.lo'.

Make sure that we don't try to check and compile the tests again on the target.

(From OE-Core rev: 5cf92ca436e1a1ba60fec8b30b6cb3cfd4842bc8)

(From OE-Core rev: 833164ff0d0a767f82291e3d8eacc4b4832470a4)

Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-19 10:54:55 +01:00
Richard Purdie
c184cb1ad4 oeqa/selftest/systemd_boot: Never use cleansstate in QA tests without special handling of SSTATE_DIR
Removing things straight from the live sstate directory is prone to issues
since other builds may be relying on the artefact presence.

Also, cleansstate is very slow on the huge sstate that the autobuilder has
on slow NFS drives. This may well be causing long buildtimes in oe-selftest
as the time taken to remove the artefact by be long.

(From meta-yocto rev: c4efa89f77e4d69826a9bbba47393ec737547469)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-15 16:19:15 +01:00
Peter Kjellerstedt
9589076fed bitbake: fetch2/__init__: Disable pseudo in runfetchcmd()
If a fetcher, e.g., git, is run when pseudo is active it will think it
is running as root. If it in turn uses ssh (as git does), ssh too will
think it is running as root. This will cause it to try to read root's
ssh configuration from /root/.ssh which will fail. If ssh then needs to
ask for credentials it will hang indefinitely as there is nowhere for it
to ask the user for them (and even if there was it would not access the
correct private keys).

The solution to the above is to temporarily disable pseudo while
executing any fetcher commands. There should be no reason for them to be
executed under pseudo anyway so this should not be a problem.

RP Ammendum:

We finally did get more information about how to reproduce this problem,
something needs to trigger bb.fetch2.get_srcrev() in a pseudo context,
for example when AUTOREV is in use or the recipe doesn't have a defined
SRCREV. That SRC_URI needs to be using protocol=ssh. This would trigger
an ls-remote of the remote repo and if that happens under pseudo, the
wrong ssh credentials may be attempted which can hang.

[YOCTO #12464]

(Bitbake rev: d0fb46eead1f23356d8c3bd53a85047521ef29a7)

Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-02 11:56:01 +01:00
Tzu Hsiang Lin
63a68b093e bitbake: fetch2: fix import error for Python 3.6.5
When running bitbake command with Python 3.6.5 always result in
import error causing by the change of distutils module.
This patch replaces the method to search executable in PATH by
"/usr/bin/env <command>".

(Bitbake rev: e4fcf4d9cef6816afac9eebb8d57c82cd1ceb293)

Signed-off-by: Tzu Hsiang Lin <t9360341@ntut.org.tw>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-02 11:44:00 +01:00
Juro Bystricky
f4372765f3 distcc-doc_3.2: improve reproducibility
Remove timestamps from metadata of gzip compressed files.

(From OE-Core rev: 8d009dd8c3c56601905a156cb06f339dd4a298e6)

(From OE-Core rev: 6c20c550a82aed9e8fa312f09888c8f16250159c)

Signed-off-by: Juro Bystricky <juro.bystricky@intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-15 17:56:52 +01:00
Alexander Kanavin
ade1061c62 ifupdown: correct the repository location
The old repo is gone.

(From OE-Core rev: f171137579bf3141032d309fa433c14ac9141e43)

(From OE-Core rev: a6e472565c5d5e9e1343278626b3bdd4d5c6fc04)

Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-15 17:56:52 +01:00
Kevin Carli
748ff8cf64 tzdata: fix a typo.
(From OE-Core rev: 6e3ea2f17bcd9d942f838ba972338d92e95f65d4)

(From OE-Core rev: ab24caaccd64e0d6b237b8a1d0b221286671eef9)

Signed-off-by: Kevin Carli <k.carli@overkiz.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-15 17:56:52 +01:00
Hongxu Jia
fe958e8864 perl: fix CVE-2017-12837
https://perl5.git.perl.org/perl.git/commitdiff/96c83ed78aeea1a0496dd2b2d935869a822dc8a5

(From OE-Core rev: bd53256e165f5bb59a28d77a466d71fce39080fa)

(From OE-Core rev: d3a785ea11caffe2537fd83f2b9d13f1b64adab9)

Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-15 17:56:52 +01:00
Bruce Ashfield
66e1c58a5b linux-yoct/4.12: update to v4.12.24
Updating to include Paul Gortmaker's latest round of stable updates, which
comprise the following commits:

   dc2f71a08d7a Linux 4.12.24
   4cab262afa69 iio: adc: ti-ads1015: add 10% to conversion wait time
   89f573e6f136 tools include: Do not use poison with C++
   d4f418739d68 kprobes/x86: Disable preemption in ftrace-based jprobes
   28861253362b perf test attr: Fix ignored test case result
   12c60baac963 staging: fsl-mc/dpio: Fix incorrect comparison
   43e1cab01765 serial: imx: Update cached mctrl value when changing RTS
   6122e955f082 usbip: tools: Install all headers needed for libusbip development
   c1fce3e6296c serial: sh-sci: suppress warning for ports without dma channels
   444cfc461e20 sysrq : fix Show Regs call trace on ARM
   0040e82b1a65 usb: xhci: Return error when host is dead in xhci_disable_slot()
   e1667a3749da staging: fsl-dpaa2/eth: Account for Rx FD buffers on error path
   7e22cbc6bd55 usb: mtu3: fix error return code in ssusb_gadget_init()
   c528464afcea EDAC, sb_edac: Fix missing break in switch
   e207a0c6a285 clocksource/drivers/arm_arch_timer: Validate CNTFRQ after enabling frame
   c3c5783f9303 serial: 8250: Preserve DLD[7:4] for PORT_XR17V35X
   ca7b446eff2f PCI: dra7xx: Create functional dependency between PCIe and PHY
   7897f75fc207 usb: phy: tahvo: fix error handling in tahvo_usb_probe()
   c240911c41c3 mmc: sdhci-msm: fix issue with power irq
   97227123b5f0 mmc: tmio: check mmc_regulator_get_supply return value
   05ce425fa841 spi: spi-axi: fix potential use-after-free after deregistration
   42f90afc67e4 spi: sh-msiof: Fix DMA transfer size check
   c652d0d523bf staging: rtl8188eu: avoid a null dereference on pmlmepriv
   3dc08560ab63 serial: 8250_fintek: Fix rs485 disablement on invalid ioctl()
   d57c00699295 m68k: fix ColdFire node shift size calculation
   df74b0c1e0b4 staging: greybus: loopback: Fix iteration count on async path
   96be1d656724 x86/entry/64: Don't use IST entry for #BP stack (part #2)
   8e3f9a001776 selftests/x86/ldt_get: Add a few additional tests for limits
   0d0517d16bc5 s390/pci: do not require AIS facility
   778bf06a0661 PM / Domains: Fix genpd to deal with drivers returning 1 from ->prepare()
   bd4084ce13d2 s390: vfio-ccw: Do not attempt to free no-op, test and tic cda.
   fd6fe520a496 ima: fix hash algorithm initialization
   83cd72f27843 usb: host: fix incorrect updating of offset
   4ab295bc9cdf USB: usbfs: Filter flags passed in from user space
   d8ce9fecf049 USB: Fix off by one in type-specific length check of BOS SSP capability
   dc9843bd9e72 USB: core: Add type-specific length check of BOS descriptors
   ab95f86f0fac usb: xhci: fix panic in xhci_free_virt_devices_depth_first
   c1b551b8718a xhci: Don't show incorrect WARN message about events for empty rings
   8412154c096c USB: ulpi: fix bus-node lookup
   10d2d61bff44 usb: hub: Cycle HUB power when initialization fails
   da44857edd20 powerpc/kprobes: Fix call trace due to incorrect preempt count
   67482fcb1f0a powerpc/kprobes: Disable preemption before invoking probe handler for optprobes
   6f745a984365 powerpc/jprobes: Disable preemption when triggered through ftrace
   3fefceeaca8e USB: serial: usb_debug: add new USB device id
   9c971e7d3a9f USB: serial: option: add Quectel BG96 id
   cc01c484eee9 serial: 8250_pci: Add Amazon PCI serial device ID
   d16393b7a9d8 usb: quirks: Add no-lpm quirk for KY-688 USB 3.1 Type-C Hub
   7a0ac9cc347c uas: Always apply US_FL_NO_ATA_1X quirk to Seagate devices
   52c2b20403f0 s390/runtime instrumentation: simplify task exit handling
   04dd38b88979 drm/fsl-dcu: enable IRQ before drm_atomic_helper_resume()
   f363e7cdb4f6 drm/fsl-dcu: avoid disabling pixel clock twice on suspend
   2845e7d136c8 drm/i915: Prevent zero length "index" write
   79413d6f2f6f drm/i915: Don't try indexed reads to alternate slave addresses
   f5cc8d6842e6 drm/i915/gvt: Correct ADDR_4K/2M/1G_MASK definition
   1fab446c5b5a drm/i915: Fix false-positive assert_rpm_wakelock_held in i915_pmic_bus_access_notifier v2
   708262ebbebc md: forbid a RAID5 from having both a bitmap and a journal.
   40219fc4a45b e1000e: fix the use of magic numbers for buffer overrun issue
   9bbd7fc437e0 include/linux/compiler-clang.h: handle randomizable anonymous structs
   13782a203fb8 drm/amd/pp: fix typecast error in powerplay.
   dd1ab1b7a09e drm/ttm: once more fix ttm_buffer_object_transfer
   1e1df0b0eb71 drm/hisilicon: Ensure LDI regs are properly configured.
   e10ca648a294 drm/panel: simple: Add missing panel_simple_unprepare() calls
   28fb6325953c drm/radeon: fix atombios on big endian
   0f7ff143e866 drm/tilcdc: Precalculate total frametime in tilcdc_crtc_set_mode()
   00debaff36fb drm/amdgpu: Remove check which is not valid for certain VBIOS
   53543b5a5062 drm/amdgpu: Properly allocate VM invalidate eng v2
   6095ee5e76ed drm/amdgpu: correct reference clock value on vega10
   8544b664f20e Revert "drm/radeon: dont switch vt on suspend"
   3b28b8cd6364 nvme-pci: add quirk for delay before CHK RDY for WDC SN200
   2c1ae94e88ee hwmon: (jc42) optionally try to disable the SMBUS timeout
   8fcaaeed325c bcache: recover data from backing when data is clean
   027fe49240fa bcache: only permit to recovery read error when cache device is clean
   3746f4374ee2 bcache: Fix building error on MIPS
   72ea117f664e cxl: Check if vphb exists before iterating over AFU devices
   8ee52dd3b01a i2c: i801: Fix Failed to allocate irq -2147483648 error
   ab7ae0720406 eeprom: at24: check at24_read/write arguments
   1025c12d637b eeprom: at24: correctly set the size for at24mac402
   32aba2ddc564 eeprom: at24: fix reading from 24MAC402/24MAC602
   ec5216d0e845 mmc: core: prepend 0x to OCR entry in sysfs
   a64429e1d089 mmc: core: prepend 0x to pre_eol_info entry in sysfs
   32f6d6221e55 mmc: core: Do not leave the block driver in a suspended state
   fa455ca7acc6 arm64: module-plts: factor out PLT generation code for ftrace
   d9c2c353dc61 s390: revert ELF_ET_DYN_BASE base changes
   5c10828c07be lockd: lost rollback of set_grace_period() in lockd_down_net()
   91ed144855d5 crypto: skcipher - Fix skcipher_walk_aead_common
   0ff5af74c047 nfsd: fix panic in posix_unblock_lock called from nfs4_laundromat
   b187299249a2 nfsd: Fix another OPEN stateid race
   2e36e8a92541 nfsd: Fix stateid races between OPEN and CLOSE
   237c8c16013d btrfs: clear space cache inode generation always
   e6eedfd1ca3f mm/hugetlb: fix NULL-pointer dereference on 5-level paging machine
   b19cd2bae194 autofs: revert "autofs: take more care to not update last_used on path walk"
   9c0369beda80 device-dax: implement ->split() to catch invalid munmap attempts
   0d73cfed1391 platform/x86: hp-wmi: Fix tablet mode detection for convertibles

(From OE-Core rev: 5f5603c33368d7b0143aeb77a95bed90bb92cb51)

(From OE-Core rev: e6d735e7101ce243f238585e31c6f4b04e1389b0)

Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-15 17:56:52 +01:00
Bruce Ashfield
a596f4f2cd linux-yocto/4.12: update to v4.12.23
Integrating the -stable updates from Paul Gortmake that comprise the following
commits:

   6e83f40c507e Linux 4.12.23
   55e376304f1b e1000e: fix buffer overrun while the I219 is processing DMA transactions
   3882bb678dd8 e1000e: Fix return value test
   167170375055 e1000e: Fix error path in link detection
   47722947f954 ARM64: dts: meson-gxl: Add alternate ARM Trusted Firmware reserved memory zone
   1dbaaa42b464 media: v4l2-ctrl: Fix flags field on Control events
   c7c9d8c465d7 [media] cx231xx-cards: fix NULL-deref on missing association descriptor
   6ee1ead888a3 media: rc: check for integer overflow
   6f70063599b3 media: Don't do DMA on stack for firmware upload in the AS102 driver
   ef4c54828c1d powerpc/64s/hash: Allow MAP_FIXED allocations to cross 128TB boundary
   d308f45eb9e7 powerpc/64s/hash: Fix fork() with 512TB process address space
   61c9dab21d03 powerpc/64s/hash: Fix 128TB-512TB virtual address boundary case allocation
   40744bdf965e powerpc/64s/hash: Fix 512T hint detection to use >= 128T
   c5866bd94f03 powerpc/64s/radix: Fix 128TB-512TB virtual address boundary case allocation
   49e9f537eb43 powerpc/signal: Properly handle return value from uprobe_deny_signal()
   fb991189ca1f parisc: Fix validity check of pointer size argument in new CAS implementation
   ae519d5e90b9 ixgbe: Fix skb list corruption on Power systems
   2a827971bc99 fm10k: Use smp_rmb rather than read_barrier_depends
   b1222f423f70 i40evf: Use smp_rmb rather than read_barrier_depends
   61d3820d1146 ixgbevf: Use smp_rmb rather than read_barrier_depends
   8c40cc266d42 igbvf: Use smp_rmb rather than read_barrier_depends
   d05a14e4483e igb: Use smp_rmb rather than read_barrier_depends
   9062b3d8fadd i40e: Use smp_rmb rather than read_barrier_depends
   bb0ddf274e82 spi-nor: intel-spi: Fix broken software sequencing codes
   11604df811a9 IB/srp: Avoid that a cable pull can trigger a kernel crash
   7a2f561b9470 IB/hfi1: Fix incorrect available receive user context count
   305382ae2297 IB/cm: Fix memory corruption in handling CM request
   9792edc692f1 IB/CM: Create appropriate path records when handling CM request
   0624d71dcd6f IB/srpt: Do not accept invalid initiator port names
   ff4035fcfb4d svcrdma: Preserve CB send buffer across retransmits
   f18fd397f0c1 libnvdimm, namespace: make 'resource' attribute only readable by root
   91d9aa084602 libnvdimm, region : make 'resource' attribute only readable by root
   ea9427658840 libnvdimm, namespace: fix label initialization to use valid seq numbers
   c0bcae085da8 libnvdimm, pfn: make 'resource' attribute only readable by root
   aa91e16e2756 libnvdimm, dimm: clear 'locked' status on successful DIMM enable
   eca24c2a944d clk: ti: dra7-atl-clock: fix child-node lookups
   104ab8491706 SUNRPC: Fix tracepoint storage issues with svc_recv and svc_rqst_status
   a6579fafe2b9 dax: fix general protection fault in dax_alloc_inode
   b4f77dd3db27 dax: fix PMD faults on zero-length files
   12b2a43aa1b0 lockd: double unregister of inetaddr notifiers
   f2fa2903113c irqchip/gic-v3: Fix ppi-partitions lookup
   c08ddb437ddb genirq: Track whether the trigger type has been set
   fc12863e2ba3 raid1: prevent freeze_array/wait_all_barriers deadlock
   3c56a460c8bf block: Fix a race between blk_cleanup_queue() and timeout handling
   1e28e345115e p54: don't unregister leds when they are not initialized
   937209dd49f8 mailbox: bcm-flexrm-mailbox: Fix FlexRM ring flush sequence
   73d36ccc25ad mtd: nand: mtk: fix infinite ECC decode IRQ issue
   886c51dad821 mtd: nand: Fix writing mtdoops to nand flash.
   684797376fd0 mtd: nand: omap2: Fix subpage write
   b58d7cba2730 target: Avoid early CMD_T_PRE_EXECUTE failures during ABORT_TASK
   8412e7db941c target: Fix quiese during transport_write_pending_qf endless loop
   7c302f595f4b target: Fix caw_sem leak in transport_generic_request_failure
   cc36f84ff1f0 target: Fix QUEUE_FULL + SCSI task attribute handling
   41411af9e8ad target: fix null pointer regression in core_tmr_drain_tmr_list
   8734ebeb8106 iscsi-target: Fix non-immediate TMR reference leak
   2e2bc1186a08 iscsi-target: Make TASK_REASSIGN use proper se_cmd->cmd_kref
   6de2abbd4c31 scsi: lpfc: Fix oops if nvmet_fc_register_targetport fails
   2000b870234f scsi: lpfc: Fix FCP hba_wqidx assignment
   01f0e334995a scsi: lpfc: Fix crash receiving ELS while detaching driver
   020ccb98ef75 scsi: lpfc: fix pci hot plug crash in list_add call
   9b58a782f5a4 scsi: lpfc: fix pci hot plug crash in timer management routines
   e316d92e10ac scsi: sd_zbc: Fix sd_zbc_read_zoned_characteristics()
   f98e27e575f1 net/9p: Switch to wait_event_killable()
   8be417a79efc fs/9p: Compare qid.path in v9fs_test_inode
   2e349fe9c2bb fix a page leak in vhost_scsi_iov_to_sgl() error recovery
   c0697b079ae5 mfd: lpc_ich: Avoton/Rangeley uses SPI_BYT method
   2ace5971b1c1 ASoC: sun8i-codec: Set the BCLK divider
   c7316d6679de ASoC: sun8i-codec: Fix left and right channels inversion
   2eb91e439cdf ASoC: sun8i-codec: Invert Master / Slave condition
   0a116d482fa8 ALSA: hda/realtek - Fix ALC700 family no sound issue
   1505048e3ff8 ALSA: hda: Fix too short HDMI/DP chmap reporting
   1a1f798bfb30 ALSA: timer: Remove kernel warning at compat ioctl error paths
   1051d7755bda ALSA: usb-audio: Add sanity checks in v2 clock parsers
   199cd7823763 ALSA: usb-audio: Fix potential out-of-bound access at parsing SU
   cf7d9d2b53dc ALSA: usb-audio: Add sanity checks to FE parser
   aba17bf44d13 ALSA: pcm: update tstamp only if audio_tstamp changed
   29259072ec04 ext4: prevent data corruption with journaling + DAX
   97da4f9039cb ext4: prevent data corruption with inline data + DAX
   5ddf166442c3 ext4: fix interaction between i_size, fallocate, and delalloc after a crash
   9ed0b612fb77 ata: fixes kernel crash while tracing ata_eh_link_autopsy event
   9d238de93426 fsnotify: fix pinning group in fsnotify_prepare_user_wait()
   5b981d854914 fsnotify: pin both inode and vfsmount mark
   91b0d40827a2 fsnotify: clean up fsnotify_prepare/finish_user_wait()
   99a127e4a587 md/bitmap: revert a patch
   b11cb870192e Bluetooth: btqcomsmd: Add support for BD address setup
   cd4c4ed7d2a0 md: don't check MD_SB_CHANGE_CLEAN in md_allow_write
   96e829f152c7 rtlwifi: fix uninitialized rtlhal->last_suspend_sec time
   7d43a23c6689 rtlwifi: rtl8192ee: Fix memory leak when loading firmware
   ef7cb0278073 nfsd: deal with revoked delegations appropriately
   b6996af90c58 NFS: revalidate "." etc correctly on "open".
   76d4c8adb264 NFS: Avoid RCU usage in tracepoints
   78e607a16574 nfs: Fix ugly referral attributes
   43f950f570f7 NFS: Revert "NFS: Move the flock open mode check into nfs_flock()"
   52e54c5dc1d3 NFS: Fix typo in nomigration mount option
   930ac0de39d5 isofs: fix timestamps beyond 2027
   70fb63a15260 fanotify: fix fsnotify_prepare_user_wait() failure
   568131ebc640 bcache: check ca->alloc_thread initialized before wake up it
   4739cc25fe6a libceph: don't WARN() if user tries to add invalid key
   f5e35be74237 eCryptfs: use after free in ecryptfs_release_messaging()
   8fa715eede18 fscrypt: lock mutex before checking for bounce page pool
   e880aa103552 nilfs2: fix race condition that causes file system corruption
   0eb9f2d0c80d autofs: fix careless error in recent commit
   7724ca25f299 autofs: don't fail mount for transient error
   020cd1b07344 rt2x00usb: mark device removed when get ENOENT usb error
   728ec449a62c MIPS: math-emu: Fix final emulation phase for certain instructions
   e67e9e160afb MIPS: BCM47XX: Fix LED inversion for WRT54GSv1
   b7fc80471672 MIPS: Fix an n32 core file generation regset support regression
   695a30121f31 MIPS: dts: remove bogus bcm96358nb4ser.dtb from dtb-y entry
   649b942f5f21 dm: discard support requires all targets in a table support discards
   9a77250fe32f dm: fix race between dm_get_from_kobject() and __dm_destroy()
   0f222c2c6239 MIPS: pci: Remove KERN_WARN instance inside the mt7620 driver
   badd13d39a0d dm: allocate struct mapped_device with kvzalloc
   1ea71c17d132 ovl: Put upperdentry if ovl_check_origin() fails
   20f908eac772 dm bufio: fix integer overflow when limiting maximum cache size
   21e0f5780760 dm mpath: remove annoying message of 'blk_get_request() returned -11'
   84370754991c dm crypt: allow unaligned bv_offset
   c27aa7e405c2 dm cache: fix race condition in the writeback mode overwrite_bio optimisation
   463a9e155dab dm integrity: allow unaligned bv_offset
   fa7ebbb65fac ALSA: hda: Add Raven PCI ID
   571d0222e808 PCI: Apply Cavium ThunderX ACS quirk to more Root Ports
   86602f1c5aac PCI: Set Cavium ACS capability quirk flags to assert RR/CR/SV/UF
   fc037283c8a7 PCI/ASPM: Use correct capability pointer to program LTR_L1.2_THRESHOLD
   f56bf6a0bd36 PCI/ASPM: Account for downstream device's Port Common_Mode_Restore_Time
   03a249b08df1 PM / OPP: Add missing of_node_put(np)
   2c1211c2edc9 nbd: don't start req until after the dead connection logic
   01d54a192605 nbd: wait uninterruptible for the dead timeout
   7bc2c995f8db net: mvneta: fix handling of the Tx descriptor counter
   504d2a22b3af MIPS: ralink: Fix typo in mt7628 pinmux function
   2f51d995b2b7 MIPS: ralink: Fix MT7628 pinmux
   55cc724a945f ARM: 8721/1: mm: dump: check hardware RO bit for LPAE
   884c853ff37b ARM: 8722/1: mm: make STRICT_KERNEL_RWX effective for LPAE
   c6a032594344 arm64: Implement arch-specific pte_access_permitted()
   8420a2afdea5 x86/entry/64: Fix entry_SYSCALL_64_after_hwframe() IRQ tracing
   95f53ae99256 lib/mpi: call cond_resched() from mpi_powm() loop
   a5d620687584 sched: Make resched_cpu() unconditional
   188ec06978ac serdev: fix registration of second slave
   9a6630779ac1 cpufreq: schedutil: Reset cached_raw_freq when not in sync with next_freq
   12da4fd9af22 ACPI / EC: Fix regression related to triggering source of EC event handling
   1925155cbaf8 s390/disassembler: correct disassembly lines alignment
   3bbfc892e348 s390/disassembler: increase show_code buffer size
   f2dd6d7f4453 s390/disassembler: add missing end marker for e7 table
   e4d2498802cf s390/guarded storage: fix possible memory corruption
   c1de5b04dff3 s390/runtime instrumention: fix possible memory corruption
   1156f0d1e7b9 s390/noexec: execute kexec datamover without DAT
   893ce3be12b7 s390: fix transactional execution control register handling
   e883dcdf2291 lguest: disable it vs. removing it.
   40bda3ef7bfd x86/entry/64: Don't use IST entry for #BP stack
   7414e2e34e6f kvm/x86: fix icebp instruction handling
   32ec5903cbbe perf/hwbp: Simplify the perf-hwbp code, fix documentation
   cc46dc546e06 media: usbtv: prevent double free in error case
   ffe911e1acac ALSA: seq: Make ioctls race-free

(From OE-Core rev: cd10e3be03a5c7c8c0e376c3e35fcba6d064a6db)

(From OE-Core rev: ee5c22ca623f852bb57504df683d5009fe8bd92e)

Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-15 17:56:52 +01:00
Bruce Ashfield
fc2aeb1372 linux-yocto/4.12: update to v4.12.22
Paul Gortmaker released another 4.12-stable that comprises the following
changes:

   23dcfbfbca0a Linux 4.12.22
   d4879ce5efb7 arm64: Kill PSCI_GET_VERSION as a variant-2 workaround
   77915e1a7544 arm64: Add ARM_SMCCC_ARCH_WORKAROUND_1 BP hardening support
   b06fbedb6e14 arm/arm64: smccc: Implement SMCCC v1.1 inline primitive
   1f400b388a20 arm/arm64: smccc: Make function identifiers an unsigned quantity
   f5d3afa3aecc firmware/psci: Expose SMCCC version through psci_ops
   4c69d3a66e60 firmware/psci: Expose PSCI conduit
   cfec930a45f8 arm64: KVM: Add SMCCC_ARCH_WORKAROUND_1 fast handling
   9e9697733818 arm64: KVM: Report SMCCC_ARCH_WORKAROUND_1 BP hardening support
   2a8574eb6e3f arm/arm64: KVM: Turn kvm_psci_version into a static inline
   2c79f828dfed arm64: KVM: Make PSCI_VERSION a fast path
   042626a87234 arm/arm64: KVM: Advertise SMCCC v1.1
   48a9e563e528 arm/arm64: KVM: Implement PSCI 1.0 support
   28283de68052 arm/arm64: KVM: Add smccc accessors to PSCI code
   33d47367626b arm/arm64: KVM: Add PSCI_VERSION helper
   82ca1dcebf95 arm/arm64: KVM: Consolidate the PSCI include files
   efb7c6b5b7f9 arm64: KVM: Increment PC after handling an SMC trap
   b720b7837ed8 arm64: Branch predictor hardening for Cavium ThunderX2
   6f2750c7a1c9 arm64: Implement branch predictor hardening for Falkor
   b56fa11959a7 arm64: Implement branch predictor hardening for affected Cortex-A CPUs
   5eb80f970c49 arm64: cputype: Add missing MIDR values for Cortex-A72 and Cortex-A75
   cf45e77d8106 arm64: entry: Apply BP hardening for suspicious interrupts from EL0
   e9c2f25bf62d arm64: entry: Apply BP hardening for high-priority synchronous exceptions
   b4f51ebd0fc3 arm64: KVM: Use per-CPU vector when BP hardening is enabled
   e8f7c5ba8c70 arm64: Move BP hardening to check_and_switch_context
   e2c124fa14e1 arm64: Add skeleton to harden the branch predictor against aliasing attacks
   ddd305f0fdf8 arm64: Move post_ttbr_update_workaround to C code
   204d987e7143 drivers/firmware: Expose psci_get_version through psci_ops structure
   8880e6380d91 arm64: cpufeature: Pass capability structure to ->enable callback
   48017c15187b arm64: Run enable method for errata work arounds on late CPUs
   cf64258fb122 arm64: cpufeature: __this_cpu_has_cap() shouldn't stop early
   7d550f8cb119 arm64: futex: Mask __user pointers prior to dereference
   b9d01590df34 arm64: uaccess: Mask __user pointers for __arch_{clear, copy_*}_user
   1b74ca827ed3 arm64: uaccess: Don't bother eliding access_ok checks in __{get, put}_user
   41b08b7c365b arm64: uaccess: Prevent speculative use of the current addr_limit
   1736debe11ef arm64: entry: Ensure branch through syscall table is bounded under speculation
   84e4780beea5 arm64: Use pointer masking to limit uaccess speculation
   d77d4c9aa433 arm64: Make USER_DS an inclusive limit
   b96ab81a6468 arm64: Implement array_index_mask_nospec()
   21eb21937d8e arm64: barrier: Add CSDB macros to control data-value prediction
   da1217a79997 arm64: idmap: Use "awx" flags for .idmap.text .pushsection directives
   c20b48f5b7a3 arm64: entry: Reword comment about post_ttbr_update_workaround
   15d4d37f7709 arm64: Force KPTI to be disabled on Cavium ThunderX
   3489abd67e33 arm64: kpti: Add ->enable callback to remap swapper using nG mappings
   b154d9be8c6f arm64: mm: Permit transitioning from Global to Non-Global without BBM
   1610bb019302 arm64: kpti: Make use of nG dependent on arm64_kernel_unmapped_at_el0()
   250a3a64585f arm64: Turn on KPTI only on CPUs that need it
   32da2aa26b97 arm64: cputype: Add MIDR values for Cavium ThunderX2 CPUs
   93d290bbe8f1 arm64: kpti: Fix the interaction between ASID switching and software PAN
   923618230c12 arm64: mm: Introduce TTBR_ASID_MASK for getting at the ASID in the TTBR
   51218390beb6 arm64: capabilities: Handle duplicate entries for a capability
   630cf7161fca arm64: Take into account ID_AA64PFR0_EL1.CSV3
   4b7ebe5c3644 arm64: Kconfig: Reword UNMAP_KERNEL_AT_EL0 kconfig entry
   e09f32469091 arm64: Kconfig: Add CONFIG_UNMAP_KERNEL_AT_EL0
   8202169d678a arm64: use RET instruction for exiting the trampoline
   414d9eabda3d arm64: kaslr: Put kernel vectors address in separate data page
   fce92f180168 arm64: entry: Add fake CPU feature for unmapping the kernel at EL0
   83584a583bff arm64: tls: Avoid unconditional zeroing of tpidrro_el0 for native tasks
   4732b98b6400 arm64: cpu_errata: Add Kryo to Falkor 1003 errata
   85dacaa58475 arm64: erratum: Work around Falkor erratum #E1003 in trampoline code
   bb0fa2f9cece arm64: entry: Hook up entry trampoline to exception vectors
   df7f7308d5f0 arm64: entry: Explicitly pass exception level to kernel_ventry macro
   14bcc912ca7e arm64: mm: Map entry trampoline into trampoline and kernel page tables
   c30f47afaa64 arm64: entry: Add exception trampoline page for exceptions from EL0
   21b891bf770f arm64: mm: Invalidate both kernel and user ASIDs when performing TLBI
   09e8df92ba8e arm64: mm: Add arm64_kernel_unmapped_at_el0 helper
   6832da386e60 arm64: mm: Allocate ASIDs in pairs
   bfd2ff25b585 arm64: mm: Fix and re-enable ARM64_SW_TTBR0_PAN
   1e4477930e5e arm64: mm: Rename post_ttbr0_update_workaround
   1e1890551573 arm64: mm: Remove pre_ttbr0_update_workaround for Falkor erratum #E1003
   0223b2589432 arm64: mm: Move ASID from TTBR0 to TTBR1
   9fe82f4ebdc3 arm64: mm: Temporarily disable ARM64_SW_TTBR0_PAN
   199f832ebf00 arm64: mm: Use non-global mappings for kernel space
   e9b0e14af7e3 arm64: move TASK_* definitions to <asm/processor.h>
   cab5207f57fd brd: remove unused brd_mutex
   7522521435a4 arm/syscalls: Optimize address limit check
   797f169015c5 Revert "arm/syscalls: Check address limit on user-mode return"
   3056c8f5be3a syscalls: Use CHECK_DATA_CORRUPTION for addr_limit_user_check
   74116ef5625a arm64: add VMAP_STACK overflow detection
   0d82fd80a2d1 arm64: add on_accessible_stack()
   c38502bc1472 arm64: add basic VMAP_STACK support
   c3a53247c1ff arm64: use an irq stack pointer
   73dcb6d84040 arm64: assembler: allow adr_this_cpu to use the stack pointer
   344a8e142697 arm64: factor out entry stack manipulation
   59c4a6fb5606 efi/arm64: add EFI_KIMG_ALIGN
   1a5300c6063f arm64: move SEGMENT_ALIGN to <asm/memory.h>
   3969d302c52f arm64: clean up irq stack definitions
   f030f0edba48 arm64: clean up THREAD_* definitions
   1f3c78245a4a arm64: factor out PAGE_* and CONT_* definitions
   8a5bc40e0c93 arm64: kernel: remove {THREAD,IRQ_STACK}_START_SP
   deba543af0b8 fork: allow arch-override of VMAP stack alignment
   774f64ce7b0f arm64: remove __die()'s stack dump
   7342855775d5 arm64: unwind: remove sp from struct stackframe
   553dbcbcff1d arm64: unwind: reference pt_regs via embedded stack frame
   926b0fe43412 arm64: unwind: disregard frame.sp when validating frame pointer
   da32ad8b5c11 arm64: unwind: avoid percpu indirection for irq stack
   eac4e8ecdd77 arm64: move non-entry code out of .entry.text
   b341e176374e arm64: consistently use bl for C exception entry
   3cdad1f0b9d0 arm64: Add ASM_BUG()
   01ace65c9150 arm64/vdso: Support mremap() for vDSO
   8050b6ba63cb arm64: Handle trapped DC CVAP
   0ee09d69dc93 arm64: Expose DC CVAP to userspace
   704046e3e554 arm64: Convert __inval_cache_range() to area-based
   b40935f19c73 arm64: mm: Fix set_memory_valid() declaration
   29530b5b549e arm64: Abstract syscallno manipulation
   f9f1c9d7d767 arm64: syscallno is secretly an int, make it official
   ab69949ffe23 x86/tracing: Build tracepoints only when they are used
   03793940e25c x86/tracing: Disentangle pagefault and resched IPI tracing key
   2822852ed8a5 x86/idt: Clean up the i386 low level entry macros
   d5654eb18f73 x86/idt: Remove the tracing IDT completely
   0d38071a05e7 x86/smp: Use static key for reschedule interrupt tracing
   4ef6e0f37891 x86/smp: Remove pointless duplicated interrupt code
   40b216cec86d x86/mce: Remove duplicated tracing interrupt code
   03f41cf538fd x86/irqwork: Get rid of duplicated tracing interrupt code
   418b9a493901 x86/apic: Remove the duplicated tracing versions of interrupts
   5be95f8dfffe x86/irq: Get rid of duplicated trace_x86_platform_ipi() code
   bd936c5d828a x86/apic: Remove the duplicated tracing version of local_timer_interrupt()
   f4971407abbb x86/traps: Simplify pagefault tracing logic
   2f436623b2c3 x86/tracing: Introduce a static key for exception tracing
   4395735bf0a9 arm64/syscalls: Check address limit on user-mode return
   3e1d12839e05 arm/syscalls: Check address limit on user-mode return
   649cd48799ef x86/syscalls: Check address limit on user-mode return
   8fe35f321cd3 audit: fix memleak in auditd_send_unicast_skb.
   4b1e889a4dd0 arm64: ptrace: Flush user-RW TLS reg to thread_struct before reading
   75a382c72d50 arm64: Add dump_backtrace() in show_regs

(From OE-Core rev: 9edeb4733e4a49d11febadc0e282c68c05e39575)

(From OE-Core rev: 87b88590ec4f9fce8a9d1bcc56631f17abd137f0)

Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-15 17:56:52 +01:00
Scott Rifenbark
44376d10e6 poky.ent: Updated poky version.
(From yocto-docs rev: f2ccccd9098b11b6dbfa4edbe240cc9c47893b60)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-15 11:26:32 +01:00
Scott Rifenbark
90414ecd5c documentation: Prepped set for a 2.4.3 release
poky.ent - variables updated
mega-manual.sed - 2.4.3 replaced 2.4.2
<manual>.xml - Updated the manual revision tables for a "June 2018"
               date.

(From yocto-docs rev: 62919ae0c15f12f0fcb75e3fc78387ab756d07a3)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-05-29 21:08:36 +01:00
Scott Rifenbark
683b359216 ref-manual: Updated SIGGEN_EXCLUDE_SAFE_RECIPE_DEPS variable
For commit 8608810da1c91116415dc568b2a1a929c923c629, the
special token (*) addition did not apply to the rocko release.
I have taken that out of the variable description.

(From yocto-docs rev: a7ba7b6e9b4fcb457d43fc1e86aa0dbcefe1399e)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-05-29 11:41:57 +01:00
Scott Rifenbark
47cfa7747d bsp-guide: Fixed manual title in title page note
(From yocto-docs rev: 0bc79b58022a44168074eb9081e15c49e658c01d)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-05-29 11:41:57 +01:00
Joshua Watt
614f869cf0 ref-manual: Updated the SIGGEN_EXCLUDE_SAFE_RECIPE_DEPS variable
Describes the new wildcard syntax

(From yocto-docs rev: 8608810da1c91116415dc568b2a1a929c923c629)

Signed-off-by: Joshua Watt <jpewhacker@gmail.com>
Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-05-29 11:41:57 +01:00
Scott Rifenbark
ef4bb21693 documentation: Updated manual notes
I updated the notes to help the user get the version of the
docs that they are interested in.  Sometimes a search using the
web returns really old versions of the manual and the user
is clueless about using a manual that is not matching the
YP release they are working with.

(From yocto-docs rev: d0ef1c7edec0a28ce8a49992b71e6d3c878cdbb4)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-05-29 11:41:57 +01:00
David Reyna
9c3da34ec6 bitbake: toaster: do not fail on optional 'custom.xml' file
Explicitly capture and ignore errors when trying to load the optional
'custom.xml' fixture file.

[YOCTO #12554]

(Bitbake rev: 5b26fc8e332daaed092cdbafea3f0b8e11e5e7ae)

Signed-off-by: David Reyna <David.Reyna@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-05-29 11:41:57 +01:00
David Reyna
4c93959c55 bitbake: Toaster: fix shutdown and extra threads
Fix typo in shutdown code to kill threads when "kill -0" is not enough.
Use the '--noreload' flag for 'runserver' so that there are no extra
and unaccounted threads.

[YOCTO #12555]

(Bitbake rev: 14079cb1fd497799548c677962d89c02a6d2bf92)

Signed-off-by: David Reyna <David.Reyna@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-05-29 11:41:57 +01:00
157 changed files with 8027 additions and 803 deletions

View File

@@ -68,7 +68,7 @@ webserverKillAll()
if [ -f ${pidfile} ]; then
pid=`cat ${pidfile}`
while kill -0 $pid 2>/dev/null; do
kill -SIGTERM -$pid 2>/dev/null
kill -SIGTERM $pid 2>/dev/null
sleep 1
done
rm ${pidfile}
@@ -91,7 +91,7 @@ webserverStartAll()
echo "Starting webserver..."
$MANAGE runserver "$ADDR_PORT" \
$MANAGE runserver --noreload "$ADDR_PORT" \
</dev/null >>${BUILDDIR}/toaster_web.log 2>&1 \
& echo $! >${BUILDDIR}/.toastermain.pid

View File

@@ -97,6 +97,8 @@ class FileChecksumCache(MultiProcessCache):
def checksum_dir(pth):
# Handle directories recursively
if pth == "/":
bb.fatal("Refusing to checksum /")
dirchecksums = []
for root, dirs, files in os.walk(pth):
for name in files:

View File

@@ -853,6 +853,9 @@ def runfetchcmd(cmd, d, quiet=False, cleanup=None, log=None, workdir=None):
if val:
cmd = 'export ' + var + '=\"%s\"; %s' % (val, cmd)
# Disable pseudo as it may affect ssh, potentially causing it to hang.
cmd = 'export PSEUDO_DISABLED=1; ' + cmd
logger.debug(1, "Running %s", cmd)
success = False

View File

@@ -69,7 +69,6 @@ from bb.fetch2 import FetchMethod
from bb.fetch2 import FetchError
from bb.fetch2 import runfetchcmd
from bb.fetch2 import logger
from distutils import spawn
class ClearCase(FetchMethod):
"""Class to fetch urls via 'clearcase'"""
@@ -107,7 +106,7 @@ class ClearCase(FetchMethod):
else:
ud.module = ""
ud.basecmd = d.getVar("FETCHCMD_ccrc") or spawn.find_executable("cleartool") or spawn.find_executable("rcleartool")
ud.basecmd = d.getVar("FETCHCMD_ccrc") or "/usr/bin/env cleartool || rcleartool"
if d.getVar("SRCREV") == "INVALID":
raise FetchError("Set a valid SRCREV for the clearcase fetcher in your recipe, e.g. SRCREV = \"/main/LATEST\" or any other label of your choice.")

View File

@@ -32,7 +32,6 @@ from bb.fetch2 import runfetchcmd
from bb.fetch2 import logger
from bb.fetch2 import UnpackError
from bb.fetch2 import ParameterError
from distutils import spawn
def subprocess_setup():
# Python installs a SIGPIPE handler by default. This is usually not what

View File

@@ -757,12 +757,12 @@ class FetchLatestVersionTest(FetcherTest):
("dtc", "git://git.qemu.org/dtc.git", "65cc4d2748a2c2e6f27f1cf39e07a5dbabd80ebf", "")
: "1.4.0",
# combination version pattern
("sysprof", "git://git.gnome.org/sysprof", "cd44ee6644c3641507fb53b8a2a69137f2971219", "")
("sysprof", "git://gitlab.gnome.org/GNOME/sysprof;protocol=https", "cd44ee6644c3641507fb53b8a2a69137f2971219", "")
: "1.2.0",
("u-boot-mkimage", "git://git.denx.de/u-boot.git;branch=master;protocol=git", "62c175fbb8a0f9a926c88294ea9f7e88eb898f6c", "")
: "2014.01",
# version pattern "yyyymmdd"
("mobile-broadband-provider-info", "git://git.gnome.org/mobile-broadband-provider-info", "4ed19e11c2975105b71b956440acdb25d46a347d", "")
("mobile-broadband-provider-info", "git://gitlab.gnome.org/GNOME/mobile-broadband-provider-info;protocol=https", "4ed19e11c2975105b71b956440acdb25d46a347d", "")
: "20120614",
# packages with a valid UPSTREAM_CHECK_GITTAGREGEX
("xf86-video-omap", "git://anongit.freedesktop.org/xorg/driver/xf86-video-omap", "ae0394e687f1a77e966cf72f895da91840dffb8f", "(?P<pver>(\d+\.(\d\.?)*))")

View File

@@ -523,12 +523,17 @@ def md5_file(filename):
"""
Return the hex string representation of the MD5 checksum of filename.
"""
import hashlib
m = hashlib.md5()
import hashlib, mmap
with open(filename, "rb") as f:
for line in f:
m.update(line)
m = hashlib.md5()
try:
with mmap.mmap(f.fileno(), 0, access=mmap.ACCESS_READ) as mm:
for chunk in iter(lambda: mm.read(8192), b''):
m.update(chunk)
except ValueError:
# You can't mmap() an empty file so silence this exception
pass
return m.hexdigest()
def sha256_file(filename):

View File

@@ -107,7 +107,10 @@ class Command(BaseCommand):
action="ignore",
message="^.*No fixture named.*$")
print("Importing custom settings if present")
call_command("loaddata", "custom")
try:
call_command("loaddata", "custom")
except:
print("NOTE: optional fixture 'custom' not found")
# we run lsupdates after config update
print("\nFetching information from the layer index, "

View File

@@ -126,6 +126,16 @@
<date>March 2018</date>
<revremark>Released with the Yocto Project 2.4.2 Release.</revremark>
</revision>
<revision>
<revnumber>2.4.3</revnumber>
<date>June 2018</date>
<revremark>Released with the Yocto Project 2.4.3 Release.</revremark>
</revision>
<revision>
<revnumber>2.4.4</revnumber>
<date>November 2018</date>
<revremark>Released with the Yocto Project 2.4.4 Release.</revremark>
</revision>
</revhistory>
<copyright>
@@ -142,28 +152,40 @@
<itemizedlist>
<listitem><para>
This version of the
<emphasis>Yocto Project Board Support Package Developer's Guide</emphasis>
<emphasis>Yocto Project Board Support Package (BSP) Developer's Guide</emphasis>
is for the &YOCTO_DOC_VERSION; release of the
Yocto Project.
To be sure you have the latest version of the manual
for this release, use the manual from the
<ulink url='&YOCTO_HOME_URL;/documentation'>Yocto Project documentation page</ulink>.
</para></listitem>
<listitem><para>
For manuals associated with other releases of the Yocto
Project, go to the
for this release, go to the
<ulink url='&YOCTO_HOME_URL;/documentation'>Yocto Project documentation page</ulink>
and use the drop-down "Active Releases" button
and choose the manual associated with the desired
Yocto Project.
and select the manual from that site.
Manuals from the site are more up-to-date than manuals
derived from the Yocto Project released TAR files.
</para></listitem>
<listitem><para>
To report any inaccuracies or problems with this
manual, send an email to the Yocto Project
discussion group at
<filename>yocto@yoctoproject.com</filename> or log into
the freenode <filename>#yocto</filename> channel.
</para></listitem>
If you located this manual through a web search, the
version of the manual might not be the one you want
(e.g. the search might have returned a manual much
older than the Yocto Project version with which you
are working).
You can see all Yocto Project major releases by
visiting the
<ulink url='&YOCTO_WIKI_URL;/wiki/Releases'>Releases</ulink>
page.
If you need a version of this manual for a different
Yocto Project release, visit the
<ulink url='&YOCTO_HOME_URL;/documentation'>Yocto Project documentation page</ulink>
and select the manual set by using the
"ACTIVE RELEASES DOCUMENTATION" or "DOCUMENTS ARCHIVE"
pull-down menus.
</para></listitem>
<listitem><para>
To report any inaccuracies or problems with this
manual, send an email to the Yocto Project
discussion group at
<filename>yocto@yoctoproject.com</filename> or log into
the freenode <filename>#yocto</filename> channel.
</para></listitem>
</itemizedlist>
</note>
</legalnotice>

View File

@@ -111,6 +111,16 @@
<date>March 2018</date>
<revremark>Released with the Yocto Project 2.4.2 Release.</revremark>
</revision>
<revision>
<revnumber>2.4.3</revnumber>
<date>June 2018</date>
<revremark>Released with the Yocto Project 2.4.3 Release.</revremark>
</revision>
<revision>
<revnumber>2.4.4</revnumber>
<date>November 2018</date>
<revremark>Released with the Yocto Project 2.4.4 Release.</revremark>
</revision>
</revhistory>
<copyright>
@@ -125,6 +135,7 @@
Creative Commons Attribution-Share Alike 2.0 UK: England &amp; Wales</ulink> as published by
Creative Commons.
</para>
<note><title>Manual Notes</title>
<itemizedlist>
<listitem><para>
@@ -133,24 +144,36 @@
is for the &YOCTO_DOC_VERSION; release of the
Yocto Project.
To be sure you have the latest version of the manual
for this release, use the manual from the
<ulink url='&YOCTO_HOME_URL;/documentation'>Yocto Project documentation page</ulink>.
</para></listitem>
<listitem><para>
For manuals associated with other releases of the Yocto
Project, go to the
for this release, go to the
<ulink url='&YOCTO_HOME_URL;/documentation'>Yocto Project documentation page</ulink>
and use the drop-down "Active Releases" button
and choose the manual associated with the desired
Yocto Project.
and select the manual from that site.
Manuals from the site are more up-to-date than manuals
derived from the Yocto Project released TAR files.
</para></listitem>
<listitem><para>
To report any inaccuracies or problems with this
manual, send an email to the Yocto Project
discussion group at
<filename>yocto@yoctoproject.com</filename> or log into
the freenode <filename>#yocto</filename> channel.
</para></listitem>
If you located this manual through a web search, the
version of the manual might not be the one you want
(e.g. the search might have returned a manual much
older than the Yocto Project version with which you
are working).
You can see all Yocto Project major releases by
visiting the
<ulink url='&YOCTO_WIKI_URL;/wiki/Releases'>Releases</ulink>
page.
If you need a version of this manual for a different
Yocto Project release, visit the
<ulink url='&YOCTO_HOME_URL;/documentation'>Yocto Project documentation page</ulink>
and select the manual set by using the
"ACTIVE RELEASES DOCUMENTATION" or "DOCUMENTS ARCHIVE"
pull-down menus.
</para></listitem>
<listitem><para>
To report any inaccuracies or problems with this
manual, send an email to the Yocto Project
discussion group at
<filename>yocto@yoctoproject.com</filename> or log into
the freenode <filename>#yocto</filename> channel.
</para></listitem>
</itemizedlist>
</note>
</legalnotice>

View File

@@ -96,6 +96,16 @@
<date>March 2018</date>
<revremark>Released with the Yocto Project 2.4.2 Release.</revremark>
</revision>
<revision>
<revnumber>2.4.3</revnumber>
<date>June 2018</date>
<revremark>Released with the Yocto Project 2.4.3 Release.</revremark>
</revision>
<revision>
<revnumber>2.4.4</revnumber>
<date>November 2018</date>
<revremark>Released with the Yocto Project 2.4.4 Release.</revremark>
</revision>
</revhistory>
<copyright>
@@ -116,24 +126,36 @@
is for the &YOCTO_DOC_VERSION; release of the
Yocto Project.
To be sure you have the latest version of the manual
for this release, use the manual from the
<ulink url='&YOCTO_HOME_URL;/documentation'>Yocto Project documentation page</ulink>.
</para></listitem>
<listitem><para>
For manuals associated with other releases of the Yocto
Project, go to the
for this release, go to the
<ulink url='&YOCTO_HOME_URL;/documentation'>Yocto Project documentation page</ulink>
and use the drop-down "Active Releases" button
and choose the manual associated with the desired
Yocto Project.
and select the manual from that site.
Manuals from the site are more up-to-date than manuals
derived from the Yocto Project released TAR files.
</para></listitem>
<listitem><para>
To report any inaccuracies or problems with this
manual, send an email to the Yocto Project
discussion group at
<filename>yocto@yoctoproject.com</filename> or log into
the freenode <filename>#yocto</filename> channel.
</para></listitem>
If you located this manual through a web search, the
version of the manual might not be the one you want
(e.g. the search might have returned a manual much
older than the Yocto Project version with which you
are working).
You can see all Yocto Project major releases by
visiting the
<ulink url='&YOCTO_WIKI_URL;/wiki/Releases'>Releases</ulink>
page.
If you need a version of this manual for a different
Yocto Project release, visit the
<ulink url='&YOCTO_HOME_URL;/documentation'>Yocto Project documentation page</ulink>
and select the manual set by using the
"ACTIVE RELEASES DOCUMENTATION" or "DOCUMENTS ARCHIVE"
pull-down menus.
</para></listitem>
<listitem><para>
To report any inaccuracies or problems with this
manual, send an email to the Yocto Project
discussion group at
<filename>yocto@yoctoproject.com</filename> or log into
the freenode <filename>#yocto</filename> channel.
</para></listitem>
</itemizedlist>
</note>
</legalnotice>

View File

@@ -80,6 +80,16 @@
<date>March 2018</date>
<revremark>Released with the Yocto Project 2.4.2 Release.</revremark>
</revision>
<revision>
<revnumber>2.4.3</revnumber>
<date>June 2018</date>
<revremark>Released with the Yocto Project 2.4.3 Release.</revremark>
</revision>
<revision>
<revnumber>2.4.4</revnumber>
<date>November 2018</date>
<revremark>Released with the Yocto Project 2.4.4 Release.</revremark>
</revision>
</revhistory>
<copyright>
@@ -100,24 +110,36 @@
is for the &YOCTO_DOC_VERSION; release of the
Yocto Project.
To be sure you have the latest version of the manual
for this release, use the manual from the
<ulink url='&YOCTO_HOME_URL;/documentation'>Yocto Project documentation page</ulink>.
</para></listitem>
<listitem><para>
For manuals associated with other releases of the Yocto
Project, go to the
for this release, go to the
<ulink url='&YOCTO_HOME_URL;/documentation'>Yocto Project documentation page</ulink>
and use the drop-down "Active Releases" button
and choose the manual associated with the desired
Yocto Project.
and select the manual from that site.
Manuals from the site are more up-to-date than manuals
derived from the Yocto Project released TAR files.
</para></listitem>
<listitem><para>
To report any inaccuracies or problems with this
manual, send an email to the Yocto Project
discussion group at
<filename>yocto@yoctoproject.com</filename> or log into
the freenode <filename>#yocto</filename> channel.
</para></listitem>
If you located this manual through a web search, the
version of the manual might not be the one you want
(e.g. the search might have returned a manual much
older than the Yocto Project version with which you
are working).
You can see all Yocto Project major releases by
visiting the
<ulink url='&YOCTO_WIKI_URL;/wiki/Releases'>Releases</ulink>
page.
If you need a version of this manual for a different
Yocto Project release, visit the
<ulink url='&YOCTO_HOME_URL;/documentation'>Yocto Project documentation page</ulink>
and select the manual set by using the
"ACTIVE RELEASES DOCUMENTATION" or "DOCUMENTS ARCHIVE"
pull-down menus.
</para></listitem>
<listitem><para>
To report any inaccuracies or problems with this
manual, send an email to the Yocto Project
discussion group at
<filename>yocto@yoctoproject.com</filename> or log into
the freenode <filename>#yocto</filename> channel.
</para></listitem>
</itemizedlist>
</note>

View File

@@ -1,13 +1,13 @@
<!ENTITY DISTRO "2.4.2">
<!ENTITY DISTRO_COMPRESSED "242">
<!ENTITY DISTRO "2.4.4">
<!ENTITY DISTRO_COMPRESSED "244">
<!ENTITY DISTRO_NAME_NO_CAP "rocko">
<!ENTITY DISTRO_NAME "Rocko">
<!ENTITY YOCTO_DOC_VERSION "2.4.2">
<!ENTITY DISTRO_REL_TAG "yocto-2.4.2">
<!ENTITY YOCTO_DOC_VERSION "2.4.4">
<!ENTITY DISTRO_REL_TAG "yocto-2.4.4">
<!ENTITY METAINTELVERSION "8.0">
<!ENTITY META_INTEL_REL_TAG "&METAINTELVERSION;-&DISTRO_NAME_NO_CAP;-&YOCTO_DOC_VERSION;">
<!ENTITY POKYVERSION "19.0.2">
<!ENTITY POKYVERSION_COMPRESSED "1902">
<!ENTITY POKYVERSION "18.0.4">
<!ENTITY POKYVERSION_COMPRESSED "1804">
<!ENTITY YOCTO_POKY "poky-&DISTRO_NAME_NO_CAP;-&POKYVERSION;">
<!ENTITY COPYRIGHT_YEAR "2010-2018">
<!ENTITY YOCTO_DL_URL "http://downloads.yoctoproject.org">

View File

@@ -96,6 +96,16 @@
<date>March 2018</date>
<revremark>Released with the Yocto Project 2.4.2 Release.</revremark>
</revision>
<revision>
<revnumber>2.4.3</revnumber>
<date>June 2018</date>
<revremark>Released with the Yocto Project 2.4.3 Release.</revremark>
</revision>
<revision>
<revnumber>2.4.4</revnumber>
<date>November 2018</date>
<revremark>Released with the Yocto Project 2.4.4 Release.</revremark>
</revision>
</revhistory>
<copyright>
@@ -110,6 +120,7 @@
Creative Commons Attribution-Share Alike 2.0 UK: England &amp; Wales</ulink> as published by
Creative Commons.
</para>
<note><title>Manual Notes</title>
<itemizedlist>
<listitem><para>
@@ -118,24 +129,36 @@
is for the &YOCTO_DOC_VERSION; release of the
Yocto Project.
To be sure you have the latest version of the manual
for this release, use the manual from the
<ulink url='&YOCTO_HOME_URL;/documentation'>Yocto Project documentation page</ulink>.
</para></listitem>
<listitem><para>
For manuals associated with other releases of the Yocto
Project, go to the
for this release, go to the
<ulink url='&YOCTO_HOME_URL;/documentation'>Yocto Project documentation page</ulink>
and use the drop-down "Active Releases" button
and choose the manual associated with the desired
Yocto Project.
and select the manual from that site.
Manuals from the site are more up-to-date than manuals
derived from the Yocto Project released TAR files.
</para></listitem>
<listitem><para>
To report any inaccuracies or problems with this
manual, send an email to the Yocto Project
discussion group at
<filename>yocto@yoctoproject.com</filename> or log into
the freenode <filename>#yocto</filename> channel.
</para></listitem>
If you located this manual through a web search, the
version of the manual might not be the one you want
(e.g. the search might have returned a manual much
older than the Yocto Project version with which you
are working).
You can see all Yocto Project major releases by
visiting the
<ulink url='&YOCTO_WIKI_URL;/wiki/Releases'>Releases</ulink>
page.
If you need a version of this manual for a different
Yocto Project release, visit the
<ulink url='&YOCTO_HOME_URL;/documentation'>Yocto Project documentation page</ulink>
and select the manual set by using the
"ACTIVE RELEASES DOCUMENTATION" or "DOCUMENTS ARCHIVE"
pull-down menus.
</para></listitem>
<listitem><para>
To report any inaccuracies or problems with this
manual, send an email to the Yocto Project
discussion group at
<filename>yocto@yoctoproject.com</filename> or log into
the freenode <filename>#yocto</filename> channel.
</para></listitem>
</itemizedlist>
</note>
</legalnotice>

View File

@@ -127,6 +127,16 @@
<date>March 2018</date>
<revremark>Released with the Yocto Project 2.4.2 Release.</revremark>
</revision>
<revision>
<revnumber>2.4.3</revnumber>
<date>June 2018</date>
<revremark>Released with the Yocto Project 2.4.3 Release.</revremark>
</revision>
<revision>
<revnumber>2.4.4</revnumber>
<date>November 2018</date>
<revremark>Released with the Yocto Project 2.4.4 Release.</revremark>
</revision>
</revhistory>
<copyright>
@@ -139,6 +149,7 @@
Permission is granted to copy, distribute and/or modify this document under
the terms of the <ulink type="http" url="http://creativecommons.org/licenses/by-sa/2.0/uk/">Creative Commons Attribution-Share Alike 2.0 UK: England &amp; Wales</ulink> as published by Creative Commons.
</para>
<note><title>Manual Notes</title>
<itemizedlist>
<listitem><para>
@@ -147,24 +158,36 @@
is for the &YOCTO_DOC_VERSION; release of the
Yocto Project.
To be sure you have the latest version of the manual
for this release, use the manual from the
<ulink url='&YOCTO_HOME_URL;/documentation'>Yocto Project documentation page</ulink>.
</para></listitem>
<listitem><para>
For manuals associated with other releases of the Yocto
Project, go to the
for this release, go to the
<ulink url='&YOCTO_HOME_URL;/documentation'>Yocto Project documentation page</ulink>
and use the drop-down "Active Releases" button
and choose the manual associated with the desired
Yocto Project.
and select the manual from that site.
Manuals from the site are more up-to-date than manuals
derived from the Yocto Project released TAR files.
</para></listitem>
<listitem><para>
To report any inaccuracies or problems with this
manual, send an email to the Yocto Project
discussion group at
<filename>yocto@yoctoproject.com</filename> or log into
the freenode <filename>#yocto</filename> channel.
</para></listitem>
If you located this manual through a web search, the
version of the manual might not be the one you want
(e.g. the search might have returned a manual much
older than the Yocto Project version with which you
are working).
You can see all Yocto Project major releases by
visiting the
<ulink url='&YOCTO_WIKI_URL;/wiki/Releases'>Releases</ulink>
page.
If you need a version of this manual for a different
Yocto Project release, visit the
<ulink url='&YOCTO_HOME_URL;/documentation'>Yocto Project documentation page</ulink>
and select the manual set by using the
"ACTIVE RELEASES DOCUMENTATION" or "DOCUMENTS ARCHIVE"
pull-down menus.
</para></listitem>
<listitem><para>
To report any inaccuracies or problems with this
manual, send an email to the Yocto Project
discussion group at
<filename>yocto@yoctoproject.com</filename> or log into
the freenode <filename>#yocto</filename> channel.
</para></listitem>
</itemizedlist>
</note>
</legalnotice>

View File

@@ -12527,8 +12527,8 @@ recipes-graphics/xorg-font/font-alias_1.0.3.bb:PR = "${INC_PR}.3"
</para>
<para>
In this example, <filename>intone</filename> depends on
<filename>mplayer2</filename>.
In the previous example, <filename>intone</filename>
depends on <filename>mplayer2</filename>.
</para>
<para>

View File

@@ -61,6 +61,16 @@
<date>March 2018</date>
<revremark>Released with the Yocto Project 2.4.2 Release.</revremark>
</revision>
<revision>
<revnumber>2.4.3</revnumber>
<date>June 2018</date>
<revremark>Released with the Yocto Project 2.4.3 Release.</revremark>
</revision>
<revision>
<revnumber>2.4.4</revnumber>
<date>November 2018</date>
<revremark>Released with the Yocto Project 2.4.4 Release.</revremark>
</revision>
</revhistory>
<copyright>
@@ -73,6 +83,7 @@
Permission is granted to copy, distribute and/or modify this document under
the terms of the <ulink type="http" url="http://creativecommons.org/licenses/by-sa/2.0/uk/">Creative Commons Attribution-Share Alike 2.0 UK: England &amp; Wales</ulink> as published by Creative Commons.
</para>
<note><title>Manual Notes</title>
<itemizedlist>
<listitem><para>
@@ -81,24 +92,36 @@
manual is for the &YOCTO_DOC_VERSION; release of the
Yocto Project.
To be sure you have the latest version of the manual
for this release, use the manual from the
<ulink url='&YOCTO_HOME_URL;/documentation'>Yocto Project documentation page</ulink>.
</para></listitem>
<listitem><para>
For manuals associated with other releases of the Yocto
Project, go to the
for this release, go to the
<ulink url='&YOCTO_HOME_URL;/documentation'>Yocto Project documentation page</ulink>
and use the drop-down "Active Releases" button
and choose the manual associated with the desired
Yocto Project.
and select the manual from that site.
Manuals from the site are more up-to-date than manuals
derived from the Yocto Project released TAR files.
</para></listitem>
<listitem><para>
To report any inaccuracies or problems with this
manual, send an email to the Yocto Project
discussion group at
<filename>yocto@yoctoproject.com</filename> or log into
the freenode <filename>#yocto</filename> channel.
</para></listitem>
If you located this manual through a web search, the
version of the manual might not be the one you want
(e.g. the search might have returned a manual much
older than the Yocto Project version with which you
are working).
You can see all Yocto Project major releases by
visiting the
<ulink url='&YOCTO_WIKI_URL;/wiki/Releases'>Releases</ulink>
page.
If you need a version of this manual for a different
Yocto Project release, visit the
<ulink url='&YOCTO_HOME_URL;/documentation'>Yocto Project documentation page</ulink>
and select the manual set by using the
"ACTIVE RELEASES DOCUMENTATION" or "DOCUMENTS ARCHIVE"
pull-down menus.
</para></listitem>
<listitem><para>
To report any inaccuracies or problems with this
manual, send an email to the Yocto Project
discussion group at
<filename>yocto@yoctoproject.com</filename> or log into
the freenode <filename>#yocto</filename> channel.
</para></listitem>
</itemizedlist>
</note>

View File

@@ -71,6 +71,16 @@
<date>March 2018</date>
<revremark>Released with the Yocto Project 2.4.2 Release.</revremark>
</revision>
<revision>
<revnumber>2.4.3</revnumber>
<date>June 2018</date>
<revremark>Released with the Yocto Project 2.4.3 Release.</revremark>
</revision>
<revision>
<revnumber>2.4.4</revnumber>
<date>November 2018</date>
<revremark>Released with the Yocto Project 2.4.4 Release.</revremark>
</revision>
</revhistory>
<copyright>
@@ -91,24 +101,36 @@
is for the &YOCTO_DOC_VERSION; release of the
Yocto Project.
To be sure you have the latest version of the manual
for this release, use the manual from the
<ulink url='&YOCTO_HOME_URL;/documentation'>Yocto Project documentation page</ulink>.
</para></listitem>
<listitem><para>
For manuals associated with other releases of the Yocto
Project, go to the
for this release, go to the
<ulink url='&YOCTO_HOME_URL;/documentation'>Yocto Project documentation page</ulink>
and use the drop-down "Active Releases" button
and choose the manual associated with the desired
Yocto Project.
and select the manual from that site.
Manuals from the site are more up-to-date than manuals
derived from the Yocto Project released TAR files.
</para></listitem>
<listitem><para>
To report any inaccuracies or problems with this
manual, send an email to the Yocto Project
discussion group at
<filename>yocto@yoctoproject.com</filename> or log into
the freenode <filename>#yocto</filename> channel.
</para></listitem>
If you located this manual through a web search, the
version of the manual might not be the one you want
(e.g. the search might have returned a manual much
older than the Yocto Project version with which you
are working).
You can see all Yocto Project major releases by
visiting the
<ulink url='&YOCTO_WIKI_URL;/wiki/Releases'>Releases</ulink>
page.
If you need a version of this manual for a different
Yocto Project release, visit the
<ulink url='&YOCTO_HOME_URL;/documentation'>Yocto Project documentation page</ulink>
and select the manual set by using the
"ACTIVE RELEASES DOCUMENTATION" or "DOCUMENTS ARCHIVE"
pull-down menus.
</para></listitem>
<listitem><para>
To report any inaccuracies or problems with this
manual, send an email to the Yocto Project
discussion group at
<filename>yocto@yoctoproject.com</filename> or log into
the freenode <filename>#yocto</filename> channel.
</para></listitem>
</itemizedlist>
</note>

View File

@@ -2,32 +2,32 @@
# This style is for manual folders like "yocto-project-qs" and "poky-ref-manual".
# This is the old way that did it. Can't do that now that we have "bitbake-user-manual" strings
# in the mega-manual.
# s/\"ulink\" href=\"http:\/\/www.yoctoproject.org\/docs\/2.4.2\/[a-z]*-[a-z]*-[a-z]*\/[a-z]*-[a-z]*-[a-z]*.html#/\"link\" href=\"#/g
s/\"ulink\" href=\"http:\/\/www.yoctoproject.org\/docs\/2.4.2\/yocto-project-qs\/yocto-project-qs.html#/\"link\" href=\"#/g
s/\"ulink\" href=\"http:\/\/www.yoctoproject.org\/docs\/2.4.2\/poky-ref-manual\/poky-ref-manual.html#/\"link\" href=\"#/g
# s/\"ulink\" href=\"http:\/\/www.yoctoproject.org\/docs\/2.4.4\/[a-z]*-[a-z]*-[a-z]*\/[a-z]*-[a-z]*-[a-z]*.html#/\"link\" href=\"#/g
s/\"ulink\" href=\"http:\/\/www.yoctoproject.org\/docs\/2.4.4\/yocto-project-qs\/yocto-project-qs.html#/\"link\" href=\"#/g
s/\"ulink\" href=\"http:\/\/www.yoctoproject.org\/docs\/2.4.4\/poky-ref-manual\/poky-ref-manual.html#/\"link\" href=\"#/g
# Processes all other manuals (<word>-<word> style) except for the BitBake User Manual because
# it is not included in the mega-manual.
# This style is for manual folders that use two word, which is the standard now (e.g. "ref-manual").
# This was the one-liner that worked before we introduced the BitBake User Manual, which is
# not in the mega-manual.
# s/\"ulink\" href=\"http:\/\/www.yoctoproject.org\/docs\/2.4.2\/[a-z]*-[a-z]*\/[a-z]*-[a-z]*.html#/\"link\" href=\"#/g
# s/\"ulink\" href=\"http:\/\/www.yoctoproject.org\/docs\/2.4.4\/[a-z]*-[a-z]*\/[a-z]*-[a-z]*.html#/\"link\" href=\"#/g
s/\"ulink\" href=\"http:\/\/www.yoctoproject.org\/docs\/2.4.2\/sdk-manual\/sdk-manual.html#/\"link\" href=\"#/g
s/\"ulink\" href=\"http:\/\/www.yoctoproject.org\/docs\/2.4.2\/bsp-guide\/bsp-guide.html#/\"link\" href=\"#/g
s/\"ulink\" href=\"http:\/\/www.yoctoproject.org\/docs\/2.4.2\/dev-manual\/dev-manual.html#/\"link\" href=\"#/g
s/\"ulink\" href=\"http:\/\/www.yoctoproject.org\/docs\/2.4.2\/kernel-dev\/kernel-dev.html#/\"link\" href=\"#/g
s/\"ulink\" href=\"http:\/\/www.yoctoproject.org\/docs\/2.4.2\/profile-manual\/profile-manual.html#/\"link\" href=\"#/g
s/\"ulink\" href=\"http:\/\/www.yoctoproject.org\/docs\/2.4.2\/ref-manual\/ref-manual.html#/\"link\" href=\"#/g
s/\"ulink\" href=\"http:\/\/www.yoctoproject.org\/docs\/2.4.2\/toaster-manual\/toaster-manual.html#/\"link\" href=\"#/g
s/\"ulink\" href=\"http:\/\/www.yoctoproject.org\/docs\/2.4.2\/yocto-project-qs\/yocto-project-qs.html#/\"link\" href=\"#/g
s/\"ulink\" href=\"http:\/\/www.yoctoproject.org\/docs\/2.4.4\/sdk-manual\/sdk-manual.html#/\"link\" href=\"#/g
s/\"ulink\" href=\"http:\/\/www.yoctoproject.org\/docs\/2.4.4\/bsp-guide\/bsp-guide.html#/\"link\" href=\"#/g
s/\"ulink\" href=\"http:\/\/www.yoctoproject.org\/docs\/2.4.4\/dev-manual\/dev-manual.html#/\"link\" href=\"#/g
s/\"ulink\" href=\"http:\/\/www.yoctoproject.org\/docs\/2.4.4\/kernel-dev\/kernel-dev.html#/\"link\" href=\"#/g
s/\"ulink\" href=\"http:\/\/www.yoctoproject.org\/docs\/2.4.4\/profile-manual\/profile-manual.html#/\"link\" href=\"#/g
s/\"ulink\" href=\"http:\/\/www.yoctoproject.org\/docs\/2.4.4\/ref-manual\/ref-manual.html#/\"link\" href=\"#/g
s/\"ulink\" href=\"http:\/\/www.yoctoproject.org\/docs\/2.4.4\/toaster-manual\/toaster-manual.html#/\"link\" href=\"#/g
s/\"ulink\" href=\"http:\/\/www.yoctoproject.org\/docs\/2.4.4\/yocto-project-qs\/yocto-project-qs.html#/\"link\" href=\"#/g
# Process cases where just an external manual is referenced without an id anchor
s/<a class=\"ulink\" href=\"http:\/\/www.yoctoproject.org\/docs\/2.4.2\/yocto-project-qs\/yocto-project-qs.html\" target=\"_top\">Yocto Project Quick Start<\/a>/Yocto Project Quick Start/g
s/<a class=\"ulink\" href=\"http:\/\/www.yoctoproject.org\/docs\/2.4.2\/dev-manual\/dev-manual.html\" target=\"_top\">Yocto Project Development Tasks Manual<\/a>/Yocto Project Development Tasks Manual/g
s/<a class=\"ulink\" href=\"http:\/\/www.yoctoproject.org\/docs\/2.4.2\/sdk-manual\/sdk-manual.html\" target=\"_top\">Yocto Project Application Development and the Extensible Software Development Kit (eSDK)<\/a>/Yocto Project Application Development and the Extensible Software Development Kit (eSDK)/g
s/<a class=\"ulink\" href=\"http:\/\/www.yoctoproject.org\/docs\/2.4.2\/bsp-guide\/bsp-guide.html\" target=\"_top\">Yocto Project Board Support Package (BSP) Developer's Guide<\/a>/Yocto Project Board Support Package (BSP) Developer's Guide/g
s/<a class=\"ulink\" href=\"http:\/\/www.yoctoproject.org\/docs\/2.4.2\/profile-manual\/profile-manual.html\" target=\"_top\">Yocto Project Profiling and Tracing Manual<\/a>/Yocto Project Profiling and Tracing Manual/g
s/<a class=\"ulink\" href=\"http:\/\/www.yoctoproject.org\/docs\/2.4.2\/kernel-dev\/kernel-dev.html\" target=\"_top\">Yocto Project Linux Kernel Development Manual<\/a>/Yocto Project Linux Kernel Development Manual/g
s/<a class=\"ulink\" href=\"http:\/\/www.yoctoproject.org\/docs\/2.4.2\/ref-manual\/ref-manual.html\" target=\"_top\">Yocto Project Reference Manual<\/a>/Yocto Project Reference Manual/g
s/<a class=\"ulink\" href=\"http:\/\/www.yoctoproject.org\/docs\/2.4.2\/toaster-manual\/toaster-manual.html\" target=\"_top\">Toaster User Manual<\/a>/Toaster User Manual/g
s/<a class=\"ulink\" href=\"http:\/\/www.yoctoproject.org\/docs\/2.4.4\/yocto-project-qs\/yocto-project-qs.html\" target=\"_top\">Yocto Project Quick Start<\/a>/Yocto Project Quick Start/g
s/<a class=\"ulink\" href=\"http:\/\/www.yoctoproject.org\/docs\/2.4.4\/dev-manual\/dev-manual.html\" target=\"_top\">Yocto Project Development Tasks Manual<\/a>/Yocto Project Development Tasks Manual/g
s/<a class=\"ulink\" href=\"http:\/\/www.yoctoproject.org\/docs\/2.4.4\/sdk-manual\/sdk-manual.html\" target=\"_top\">Yocto Project Application Development and the Extensible Software Development Kit (eSDK)<\/a>/Yocto Project Application Development and the Extensible Software Development Kit (eSDK)/g
s/<a class=\"ulink\" href=\"http:\/\/www.yoctoproject.org\/docs\/2.4.4\/bsp-guide\/bsp-guide.html\" target=\"_top\">Yocto Project Board Support Package (BSP) Developer's Guide<\/a>/Yocto Project Board Support Package (BSP) Developer's Guide/g
s/<a class=\"ulink\" href=\"http:\/\/www.yoctoproject.org\/docs\/2.4.4\/profile-manual\/profile-manual.html\" target=\"_top\">Yocto Project Profiling and Tracing Manual<\/a>/Yocto Project Profiling and Tracing Manual/g
s/<a class=\"ulink\" href=\"http:\/\/www.yoctoproject.org\/docs\/2.4.4\/kernel-dev\/kernel-dev.html\" target=\"_top\">Yocto Project Linux Kernel Development Manual<\/a>/Yocto Project Linux Kernel Development Manual/g
s/<a class=\"ulink\" href=\"http:\/\/www.yoctoproject.org\/docs\/2.4.4\/ref-manual\/ref-manual.html\" target=\"_top\">Yocto Project Reference Manual<\/a>/Yocto Project Reference Manual/g
s/<a class=\"ulink\" href=\"http:\/\/www.yoctoproject.org\/docs\/2.4.4\/toaster-manual\/toaster-manual.html\" target=\"_top\">Toaster User Manual<\/a>/Toaster User Manual/g

View File

@@ -16,34 +16,48 @@
Permission is granted to copy, distribute and/or modify this document under
the terms of the <ulink type="http" url="http://creativecommons.org/licenses/by-sa/2.0/uk/">Creative Commons Attribution-Share Alike 2.0 UK: England &amp; Wales</ulink> as published by Creative Commons.
</para>
<note><title>Manual Notes</title>
<itemizedlist>
<listitem><para>
This version of the
<emphasis>Yocto Project Quick Start</emphasis>
is for the &YOCTO_DOC_VERSION; release of the
Yocto Project.
To be sure you have the latest version of the manual
for this release, use the manual from the
<ulink url='&YOCTO_HOME_URL;/documentation'>Yocto Project documentation page</ulink>.
</para></listitem>
<listitem><para>
For manuals associated with other releases of the Yocto
Project, go to the
<ulink url='&YOCTO_HOME_URL;/documentation'>Yocto Project documentation page</ulink>
and use the drop-down "Active Releases" button
and choose the manual associated with the desired
Yocto Project.
</para></listitem>
<listitem><para>
<note><title>Manual Notes</title>
<itemizedlist>
<listitem><para>
This version of the
<emphasis>Yocto Project Quick Start</emphasis>
is for the &YOCTO_DOC_VERSION; release of the
Yocto Project.
To be sure you have the latest version of the manual
for this release, go to the
<ulink url='&YOCTO_HOME_URL;/documentation'>Yocto Project documentation page</ulink>
and select the manual from that site.
Manuals from the site are more up-to-date than manuals
derived from the Yocto Project released TAR files.
</para></listitem>
<listitem><para>
If you located this manual through a web search, the
version of the manual might not be the one you want
(e.g. the search might have returned a manual much
older than the Yocto Project version with which you
are working).
You can see all Yocto Project major releases by
visiting the
<ulink url='&YOCTO_WIKI_URL;/wiki/Releases'>Releases</ulink>
page.
If you need a version of this manual for a different
Yocto Project release, visit the
<ulink url='&YOCTO_HOME_URL;/documentation'>Yocto Project documentation page</ulink>
and select the manual set by using the
"ACTIVE RELEASES DOCUMENTATION" or "DOCUMENTS ARCHIVE"
pull-down menus.
</para></listitem>
<listitem><para>
To report any inaccuracies or problems with this
manual, send an email to the Yocto Project
discussion group at
<filename>yocto@yoctoproject.com</filename> or log into
the freenode <filename>#yocto</filename> channel.
</para></listitem>
</itemizedlist>
</note>
</itemizedlist>
</note>
</legalnotice>
<abstract>

View File

@@ -1,6 +1,6 @@
DISTRO = "poky"
DISTRO_NAME = "Poky (Yocto Project Reference Distro)"
DISTRO_VERSION = "2.4.3"
DISTRO_VERSION = "2.4.4"
DISTRO_CODENAME = "rocko"
SDK_VENDOR = "-pokysdk"
SDK_VERSION := "${@'${DISTRO_VERSION}'.replace('snapshot-${DATE}','snapshot')}"

View File

@@ -44,7 +44,7 @@ class Systemdboot(OESelftestTestCase):
# Ensure we're actually testing that this gets built and not that
# it was around from an earlier build
bitbake('-c cleansstate systemd-boot')
bitbake('-c clean systemd-boot')
runCmd('rm -f %s' % systemdbootfile)
self._common_build()

View File

@@ -100,8 +100,8 @@ def get_lic_checksum_file_list(d):
# We only care about items that are absolute paths since
# any others should be covered by SRC_URI.
try:
path = bb.fetch.decodeurl(url)[2]
if not path:
(method, host, path, user, pswd, parm) = bb.fetch.decodeurl(url)
if method != "file" or not path:
raise bb.fetch.MalformedUrl(url)
if path[0] == '/':

View File

@@ -14,7 +14,7 @@ REALNAME = "${@get_real_name("${BPN}")}"
CLUTTER_SRC_FTP = "${GNOME_MIRROR}/${REALNAME}/${VERMINOR}/${REALNAME}-${PV}.tar.xz;name=archive"
CLUTTER_SRC_GIT = "git://git.gnome.org/${REALNAME}"
CLUTTER_SRC_GIT = "git://gitlab.gnome.org/GNOME/${REALNAME};protocol=https"
SRC_URI = "${CLUTTER_SRC_FTP}"
S = "${WORKDIR}/${REALNAME}-${PV}"

View File

@@ -226,9 +226,7 @@ def get_deployed_dependencies(d):
# The manifest file name contains the arch. Because we are not running
# in the recipe context it is necessary to check every arch used.
sstate_manifest_dir = d.getVar("SSTATE_MANIFESTS")
sstate_archs = d.getVar("SSTATE_ARCHS")
extra_archs = d.getVar("PACKAGE_EXTRA_ARCHS")
archs = list(set(("%s %s" % (sstate_archs, extra_archs)).split()))
archs = list(set(d.getVar("SSTATE_ARCHS").split()))
for dep in depends:
# Some recipes have an arch on their own, so we try that first.
special_arch = d.getVar("PACKAGE_ARCH_pn-%s" % dep)
@@ -336,7 +334,7 @@ def add_package_and_files(d):
files = d.getVar('LICENSE_FILES_DIRECTORY')
pn = d.getVar('PN')
pn_lic = "%s%s" % (pn, d.getVar('LICENSE_PACKAGE_SUFFIX', False))
if pn_lic in packages:
if pn_lic in packages.split():
bb.warn("%s package already existed in %s." % (pn_lic, pn))
else:
# first in PACKAGES to be sure that nothing else gets LICENSE_FILES_DIRECTORY
@@ -482,7 +480,9 @@ def find_license_files(d):
for url in lic_files.split():
try:
(type, host, path, user, pswd, parm) = bb.fetch.decodeurl(url)
(method, host, path, user, pswd, parm) = bb.fetch.decodeurl(url)
if method != "file" or not path:
raise bb.fetch.MalformedUrl()
except bb.fetch.MalformedUrl:
bb.fatal("%s: LIC_FILES_CHKSUM contains an invalid URL: %s" % (d.getVar('PF'), url))
# We want the license filename and path

View File

@@ -1,4 +1,5 @@
MIRRORS += "\
${DEBIAN_MIRROR} http://snapshot.debian.org/archive/debian/20180310T215105Z/pool \n \
${DEBIAN_MIRROR} http://snapshot.debian.org/archive/debian-archive/20120328T092752Z/debian/pool \n \
${DEBIAN_MIRROR} http://snapshot.debian.org/archive/debian-archive/20110127T084257Z/debian/pool \n \
${DEBIAN_MIRROR} http://snapshot.debian.org/archive/debian-archive/20090802T004153Z/debian/pool \n \
@@ -68,7 +69,7 @@ ${CPAN_MIRROR} http://search.cpan.org/CPAN/ \n \
MIRRORS += "\
git://salsa.debian.org/.* git://salsa.debian.org/PATH;protocol=https \n \
git://git.gnome.org/.* git://git.gnome.org/browse/PATH;protocol=https \n \
git://git.gnome.org/.* git://gitlab.gnome.org/GNOME/PATH;protocol=https \n \
git://git.savannah.gnu.org/.* git://git.savannah.gnu.org/git/PATH;protocol=https \n \
git://git.yoctoproject.org/.* git://git.yoctoproject.org/git/PATH;protocol=https \n \
git://.*/.* git://HOST/PATH;protocol=https \n \

View File

@@ -12,6 +12,8 @@ export CROSS_COMPILE = "${TARGET_PREFIX}"
# we didn't pick the name.
export KBUILD_OUTPUT = "${STAGING_KERNEL_BUILDDIR}"
DEPENDS += "bc-native"
export KERNEL_VERSION = "${@base_read_file('${STAGING_KERNEL_BUILDDIR}/kernel-abiversion')}"
KERNEL_OBJECT_SUFFIX = ".ko"
@@ -23,5 +25,6 @@ PACKAGE_ARCH = "${MACHINE_ARCH}"
do_make_scripts() {
unset CFLAGS CPPFLAGS CXXFLAGS LDFLAGS
make CC="${KERNEL_CC}" LD="${KERNEL_LD}" AR="${KERNEL_AR}" \
-C ${STAGING_KERNEL_DIR} O=${STAGING_KERNEL_BUILDDIR} scripts
HOSTCC="${BUILD_CC} ${BUILD_CFLAGS} ${BUILD_LDFLAGS}" HOSTCPP="${BUILD_CPP}" \
-C ${STAGING_KERNEL_DIR} O=${STAGING_KERNEL_BUILDDIR} scripts prepare
}

View File

@@ -2,7 +2,7 @@ inherit module-base kernel-module-split pkgconfig
addtask make_scripts after do_prepare_recipe_sysroot before do_configure
do_make_scripts[lockfiles] = "${TMPDIR}/kernel-scripts.lock"
do_make_scripts[depends] += "virtual/kernel:do_shared_workdir"
do_make_scripts[depends] += "virtual/kernel:do_shared_workdir openssl-native:do_populate_sysroot"
EXTRA_OEMAKE += "KERNEL_SRC=${STAGING_KERNEL_DIR}"

View File

@@ -62,7 +62,8 @@ toolchain_create_tree_env_script () {
script=${TMPDIR}/environment-setup-${REAL_MULTIMACH_TARGET_SYS}
rm -f $script
touch $script
echo 'export PATH=${STAGING_DIR_NATIVE}/usr/bin:${PATH}' >> $script
echo ". ${COREBASE}/oe-init-build-env ${TOPDIR}" >> $script
echo 'export PATH=${STAGING_DIR_NATIVE}/usr/bin:${STAGING_BINDIR_TOOLCHAIN}:$PATH' >> $script
echo 'export PKG_CONFIG_SYSROOT_DIR=${PKG_CONFIG_SYSROOT_DIR}' >> $script
echo 'export PKG_CONFIG_PATH=${PKG_CONFIG_PATH}' >> $script
echo 'export CONFIG_SITE="${@siteinfo_get_files(d)}"' >> $script

View File

@@ -620,7 +620,7 @@ BBLAYERS_FETCH_DIR ??= "${COREBASE}"
APACHE_MIRROR = "http://archive.apache.org/dist"
DEBIAN_MIRROR = "http://ftp.debian.org/debian/pool"
GENTOO_MIRROR = "http://distfiles.gentoo.org/distfiles"
GNOME_GIT = "git://git.gnome.org"
GNOME_GIT = "git://gitlab.gnome.org/GNOME"
GNOME_MIRROR = "http://ftp.gnome.org/pub/GNOME/sources"
GNU_MIRROR = "http://ftp.gnu.org/gnu"
GNUPG_MIRROR = "https://www.gnupg.org/ftp/gcrypt"

View File

@@ -6,8 +6,9 @@
# to the distro running on the build machine.
#
UNINATIVE_MAXGLIBCVERSION = "2.27"
UNINATIVE_MAXGLIBCVERSION = "2.28"
UNINATIVE_URL ?= "http://downloads.yoctoproject.org/releases/uninative/2.3/"
UNINATIVE_CHECKSUM[i686] ?= "44253cddbf629082568cea4fff59419106871a0cf81b4845b5d34e7014887b20"
UNINATIVE_CHECKSUM[x86_64] ?= "c6954563dad3c95608117c6fc328099036c832bbd924ebf5fdccb622fc0a8684"
UNINATIVE_URL ?= "http://downloads.yoctoproject.org/releases/uninative/1.9/"
UNINATIVE_CHECKSUM[i686] ?= "83a4f927da81d9889ef0cbe5c12cb782e21c6cc11e6155600b94ff0c99576dce"
UNINATIVE_CHECKSUM[x86_64] ?= "c26622a1f27dbf5b25de986b11584b5c5b2f322d9eb367f705a744f58a5561ec"

View File

@@ -0,0 +1,9 @@
Copyright (c) <YEAR>, <OWNER>
All rights reserved.
Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
THIS SOFTWARE IS PROVIDED BY Berkeley Software Design, Inc. "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL Berkeley Software Design, Inc. BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

View File

@@ -28,7 +28,7 @@ class KernelModuleTest(OERuntimeTestCase):
@OETestDepends(['gcc.GccCompileTest.test_gcc_compile'])
def test_kernel_module(self):
cmds = [
'cd /usr/src/kernel && make scripts',
'cd /usr/src/kernel && make scripts prepare',
'cd /tmp && make',
'cd /tmp && insmod hellomod.ko',
'lsmod | grep hellomod',

View File

@@ -7,7 +7,8 @@ SRCREV = "befcbbc9867e742ac16415660b0b7521218a530c"
PV = "20170310"
PE = "1"
SRC_URI = "git://git.gnome.org/mobile-broadband-provider-info"
SRC_URI = "git://gitlab.gnome.org/GNOME/mobile-broadband-provider-info;protocol=https"
S = "${WORKDIR}/git"
inherit autotools

View File

@@ -1,6 +1,6 @@
SUMMARY = "GLib networking extensions"
DESCRIPTION = "glib-networking contains the implementations of certain GLib networking features that cannot be implemented directly in GLib itself because of their dependencies."
HOMEPAGE = "http://git.gnome.org/browse/glib-networking/"
HOMEPAGE = "https://gitlab.gnome.org/GNOME/glib-networking/"
BUGTRACKER = "http://bugzilla.gnome.org"
LICENSE = "LGPLv2"

View File

@@ -1,13 +1,13 @@
require glibc.inc
LIC_FILES_CHKSUM = "file://LICENSES;md5=e9a558e243b36d3209f380deb394b213 \
LIC_FILES_CHKSUM = "file://LICENSES;md5=ebc14508894997e6daaad1b8ffd53a15\
file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263 \
file://posix/rxspencer/COPYRIGHT;md5=dc5485bb394a13b2332ec1c785f5d83a \
file://COPYING.LIB;md5=4fbd65380cdd255951079008b364516c"
DEPENDS += "gperf-native bison-native"
SRCREV ?= "d300041c533a3d837c9f37a099bcc95466860e98"
SRCREV ?= "c9570bd2f54abb68e4e3c767aca3a54e05d2c7f6"
SRCBRANCH ?= "release/${PV}/master"

View File

@@ -6,7 +6,7 @@ the file /etc/network/interfaces."
LICENSE = "GPLv2"
LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f"
SRC_URI = "git://anonscm.debian.org/git/collab-maint/ifupdown.git \
SRC_URI = "git://salsa.debian.org/debian/ifupdown.git;protocol=https \
file://defn2-c-man-don-t-rely-on-dpkg-architecture-to-set-a.patch \
file://inet-6-.defn-fix-inverted-checks-for-loopback.patch \
file://99_network \

View File

@@ -22,7 +22,7 @@ IMAGE_FSTYPES = "wic.vmdk"
inherit core-image module-base setuptools3
SRCREV ?= "78b61238f2a3eb18d97d31ac5d27bce9566438d2"
SRCREV ?= "30c10a3d8bd9bcd909cc1600894815c2fd5400a2"
SRC_URI = "git://git.yoctoproject.org/poky;branch=rocko \
file://Yocto_Build_Appliance.vmx \
file://Yocto_Build_Appliance.vmxf \

View File

@@ -0,0 +1,21 @@
Make sure that Makefile doesn't try to compile these tests again
on the target where the source dependencies won't be available.
Upstream-Status: Inappropriate [cross-compile specific]
Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
Index: libxml2-2.9.7/Makefile.am
===================================================================
--- libxml2-2.9.7.orig/Makefile.am
+++ libxml2-2.9.7/Makefile.am
@@ -211,8 +211,7 @@ install-ptest:
sed -i -e 's|^Makefile:|_Makefile:|' $(DESTDIR)/Makefile
$(MAKE) -C python install-ptest
-runtests: runtest$(EXEEXT) testrecurse$(EXEEXT) testapi$(EXEEXT) \
- testchar$(EXEEXT) testdict$(EXEEXT) runxmlconf$(EXEEXT)
+runtests:
[ -d test ] || $(LN_S) $(srcdir)/test .
[ -d result ] || $(LN_S) $(srcdir)/result .
$(CHECKER) ./runtest$(EXEEXT) && \

View File

@@ -20,6 +20,7 @@ SRC_URI = "http://www.xmlsoft.org/sources/libxml2-${PV}.tar.gz;name=libtar \
file://python-sitepackages-dir.patch \
file://libxml-m4-use-pkgconfig.patch \
file://0001-Make-ptest-run-the-python-tests-if-python-is-enabled.patch \
file://fix-execution-of-ptests.patch \
"
SRC_URI[libtar.md5sum] = "5ce0da9bdaa267b40c4ca36d35363b8b"

View File

@@ -1,7 +1,7 @@
inherit allarch
SUMMARY = "Operating system identification"
DESCRIPTION = "The /etc/os-release file contains operating system identification data."
DESCRIPTION = "The /usr/lib/os-release file contains operating system identification data."
LICENSE = "MIT"
INHIBIT_DEFAULT_DEPS = "1"
@@ -42,6 +42,9 @@ python do_compile () {
do_compile[vardeps] += "${OS_RELEASE_FIELDS}"
do_install () {
install -d ${D}${sysconfdir}
install -m 0644 os-release ${D}${sysconfdir}/
install -d ${D}${nonarch_libdir} ${D}${sysconfdir}
install -m 0644 os-release ${D}${nonarch_libdir}/
lnr ${D}${nonarch_libdir}/os-release ${D}${sysconfdir}/os-release
}
FILES_${PN} += "${nonarch_libdir}/os-release"

View File

@@ -0,0 +1,71 @@
From 9fce4bab014b9aa618060eba13d6dd04b0fa1b70 Mon Sep 17 00:00:00 2001
From: Laszlo Ersek <lersek@redhat.com>
Date: Fri, 2 Mar 2018 17:11:52 +0100
Subject: [PATCH 1/4] BaseTools/header.makefile: add "-Wno-stringop-truncation"
gcc-8 (which is part of Fedora 28) enables the new warning
"-Wstringop-truncation" in "-Wall". This warning is documented in detail
at <https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html>; the
introduction says
> Warn for calls to bounded string manipulation functions such as strncat,
> strncpy, and stpncpy that may either truncate the copied string or leave
> the destination unchanged.
It breaks the BaseTools build with:
> EfiUtilityMsgs.c: In function 'PrintMessage':
> EfiUtilityMsgs.c:484:9: error: 'strncat' output may be truncated copying
> between 0 and 511 bytes from a string of length 511
> [-Werror=stringop-truncation]
> strncat (Line, Line2, MAX_LINE_LEN - strlen (Line) - 1);
> ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> EfiUtilityMsgs.c:469:9: error: 'strncat' output may be truncated copying
> between 0 and 511 bytes from a string of length 511
> [-Werror=stringop-truncation]
> strncat (Line, Line2, MAX_LINE_LEN - strlen (Line) - 1);
> ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> EfiUtilityMsgs.c:511:5: error: 'strncat' output may be truncated copying
> between 0 and 511 bytes from a string of length 511
> [-Werror=stringop-truncation]
> strncat (Line, Line2, MAX_LINE_LEN - strlen (Line) - 1);
> ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
The right way to fix the warning would be to implement string concat with
snprintf(). However, Microsoft does not appear to support snprintf()
before VS2015
<https://stackoverflow.com/questions/2915672/snprintf-and-visual-studio-2010>,
so we just have to shut up the warning. The strncat() calls flagged above
are valid BTW.
Cc: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Cc: Cole Robinson <crobinso@redhat.com>
Cc: Liming Gao <liming.gao@intel.com>
Cc: Paolo Bonzini <pbonzini@redhat.com>
Cc: Yonghong Zhu <yonghong.zhu@intel.com>
Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Laszlo Ersek <lersek@redhat.com>
Reviewed-by: Liming Gao <liming.gao@intel.com>
---
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Upstream-Status: Backport
BaseTools/Source/C/Makefiles/header.makefile | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
Index: git/BaseTools/Source/C/Makefiles/header.makefile
===================================================================
--- git.orig/BaseTools/Source/C/Makefiles/header.makefile
+++ git/BaseTools/Source/C/Makefiles/header.makefile
@@ -47,9 +47,9 @@ INCLUDE = $(TOOL_INCLUDE) -I $(MAKEROOT)
BUILD_CPPFLAGS += $(INCLUDE) -O2
ifeq ($(DARWIN),Darwin)
# assume clang or clang compatible flags on OS X
-BUILD_CFLAGS += -MD -fshort-wchar -fno-strict-aliasing -Wall -Werror -Wno-deprecated-declarations -Wno-self-assign -Wno-unused-result -nostdlib -c -g
+BUILD_CFLAGS += -MD -fshort-wchar -fno-strict-aliasing -Wall -Werror -Wno-deprecated-declarations -Wno-stringop-truncation -Wno-self-assign -Wno-unused-result -nostdlib -c -g
else
-BUILD_CFLAGS += -MD -fshort-wchar -fno-strict-aliasing -Wall -Werror -Wno-deprecated-declarations -Wno-unused-result -nostdlib -c -g
+BUILD_CFLAGS += -MD -fshort-wchar -fno-strict-aliasing -Wall -Werror -Wno-deprecated-declarations -Wno-stringop-truncation -Wno-unused-result -nostdlib -c -g
endif
BUILD_LFLAGS = $(LDFLAGS)
BUILD_CXXFLAGS += -Wno-unused-result

View File

@@ -0,0 +1,102 @@
From 86dbdac5a25bd23deb4a0e0a97b527407e02184d Mon Sep 17 00:00:00 2001
From: Laszlo Ersek <lersek@redhat.com>
Date: Fri, 2 Mar 2018 17:11:52 +0100
Subject: [PATCH 2/4] BaseTools/header.makefile: add "-Wno-restrict"
gcc-8 (which is part of Fedora 28) enables the new warning
"-Wrestrict" in "-Wall". This warning is documented in detail
at <https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html>; the
introduction says
> Warn when an object referenced by a restrict-qualified parameter (or, in
> C++, a __restrict-qualified parameter) is aliased by another argument,
> or when copies between such objects overlap.
It breaks the BaseTools build (in the Brotli compression library) with:
> In function 'ProcessCommandsInternal',
> inlined from 'ProcessCommands' at dec/decode.c:1828:10:
> dec/decode.c:1781:9: error: 'memcpy' accessing between 17 and 2147483631
> bytes at offsets 16 and 16 overlaps between 17 and 2147483631 bytes at
> offset 16 [-Werror=restrict]
> memcpy(copy_dst + 16, copy_src + 16, (size_t)(i - 16));
> ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> In function 'ProcessCommandsInternal',
> inlined from 'SafeProcessCommands' at dec/decode.c:1833:10:
> dec/decode.c:1781:9: error: 'memcpy' accessing between 17 and 2147483631
> bytes at offsets 16 and 16 overlaps between 17 and 2147483631 bytes at
> offset 16 [-Werror=restrict]
> memcpy(copy_dst + 16, copy_src + 16, (size_t)(i - 16));
> ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Paolo Bonzini <pbonzini@redhat.com> analyzed the Brotli source in detail,
and concluded that the warning is a false positive:
> This seems safe to me, because it's preceded by:
>
> uint8_t* copy_dst = &s->ringbuffer[pos];
> uint8_t* copy_src = &s->ringbuffer[src_start];
> int dst_end = pos + i;
> int src_end = src_start + i;
> if (src_end > pos && dst_end > src_start) {
> /* Regions intersect. */
> goto CommandPostWrapCopy;
> }
>
> If [src_start, src_start + i) and [pos, pos + i) don't intersect, then
> neither do [src_start + 16, src_start + i) and [pos + 16, pos + i).
>
> The if seems okay:
>
> (src_start + i > pos && pos + i > src_start)
>
> which can be rewritten to:
>
> (pos < src_start + i && src_start < pos + i)
>
> Then the numbers are in one of these two orders:
>
> pos <= src_start < pos + i <= src_start + i
> src_start <= pos < src_start + i <= pos + i
>
> These two would be allowed by the "if", but they can only happen if pos
> == src_start so they degenerate to the same two orders above:
>
> pos <= src_start < src_start + i <= pos + i
> src_start <= pos < pos + i <= src_start + i
>
> So it is a false positive in GCC.
Disable the warning for now.
Cc: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Cc: Cole Robinson <crobinso@redhat.com>
Cc: Liming Gao <liming.gao@intel.com>
Cc: Paolo Bonzini <pbonzini@redhat.com>
Cc: Yonghong Zhu <yonghong.zhu@intel.com>
Reported-by: Cole Robinson <crobinso@redhat.com>
Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Laszlo Ersek <lersek@redhat.com>
Reviewed-by: Liming Gao <liming.gao@intel.com>
---
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Upstream-Status: Backport
BaseTools/Source/C/Makefiles/header.makefile | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
Index: git/BaseTools/Source/C/Makefiles/header.makefile
===================================================================
--- git.orig/BaseTools/Source/C/Makefiles/header.makefile
+++ git/BaseTools/Source/C/Makefiles/header.makefile
@@ -47,9 +47,9 @@ INCLUDE = $(TOOL_INCLUDE) -I $(MAKEROOT)
BUILD_CPPFLAGS += $(INCLUDE) -O2
ifeq ($(DARWIN),Darwin)
# assume clang or clang compatible flags on OS X
-BUILD_CFLAGS += -MD -fshort-wchar -fno-strict-aliasing -Wall -Werror -Wno-deprecated-declarations -Wno-stringop-truncation -Wno-self-assign -Wno-unused-result -nostdlib -c -g
+BUILD_CFLAGS += -MD -fshort-wchar -fno-strict-aliasing -Wall -Werror -Wno-deprecated-declarations -Wno-stringop-truncation -Wno-restrict -Wno-self-assign -Wno-unused-result -nostdlib -c -g
else
-BUILD_CFLAGS += -MD -fshort-wchar -fno-strict-aliasing -Wall -Werror -Wno-deprecated-declarations -Wno-stringop-truncation -Wno-unused-result -nostdlib -c -g
+BUILD_CFLAGS += -MD -fshort-wchar -fno-strict-aliasing -Wall -Werror -Wno-deprecated-declarations -Wno-stringop-truncation -Wno-restrict -Wno-unused-result -nostdlib -c -g
endif
BUILD_LFLAGS = $(LDFLAGS)
BUILD_CXXFLAGS += -Wno-unused-result

View File

@@ -0,0 +1,53 @@
From 6866325dd9c17412e555974dde41f9631224db52 Mon Sep 17 00:00:00 2001
From: Laszlo Ersek <lersek@redhat.com>
Date: Wed, 7 Mar 2018 10:17:28 +0100
Subject: [PATCH 3/4] BaseTools/header.makefile: revert gcc-8 "-Wno-xxx"
options on OSX
I recently added the gcc-8 specific "-Wno-stringop-truncation" and
"-Wno-restrict" options to BUILD_CFLAGS, both for "Darwin" (XCODE5 /
clang, OSX) and otherwise (gcc, Linux / Cygwin).
I also regression-tested the change with gcc-4.8 on Linux -- gcc-4.8 does
not know either of the (gcc-8 specific) "-Wno-stringop-truncation" and
"-Wno-restrict" options, yet the build completed fine (by GCC design).
Regarding OSX, my expectation was that
- XCODE5 / clang would either recognize these warnings options (because
clang does recognize most -W options of gcc),
- or, similarly to gcc, clang would simply ignore the "-Wno-xxx" flags
that it didn't recognize.
Neither is the case; the new flags have broken the BaseTools build on OSX.
Revert them (for OSX only).
Cc: Liming Gao <liming.gao@intel.com>
Cc: Yonghong Zhu <yonghong.zhu@intel.com>
Reported-by: Liming Gao <liming.gao@intel.com>
Fixes: 1d212a83df0eaf32a6f5d4159beb2d77832e0231
Fixes: 9222154ae7b3eef75ae88cdb56158256227cb929
Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Laszlo Ersek <lersek@redhat.com>
Reviewed-by: Liming Gao <liming.gao@intel.com>
Acked-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
---
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Upstream-Status: Backport
BaseTools/Source/C/Makefiles/header.makefile | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
Index: git/BaseTools/Source/C/Makefiles/header.makefile
===================================================================
--- git.orig/BaseTools/Source/C/Makefiles/header.makefile
+++ git/BaseTools/Source/C/Makefiles/header.makefile
@@ -47,7 +47,7 @@ INCLUDE = $(TOOL_INCLUDE) -I $(MAKEROOT)
BUILD_CPPFLAGS += $(INCLUDE) -O2
ifeq ($(DARWIN),Darwin)
# assume clang or clang compatible flags on OS X
-BUILD_CFLAGS += -MD -fshort-wchar -fno-strict-aliasing -Wall -Werror -Wno-deprecated-declarations -Wno-stringop-truncation -Wno-restrict -Wno-self-assign -Wno-unused-result -nostdlib -c -g
+BUILD_CFLAGS += -MD -fshort-wchar -fno-strict-aliasing -Wall -Werror -Wno-deprecated-declarations -Wno-self-assign -Wno-unused-result -nostdlib -c -g
else
BUILD_CFLAGS += -MD -fshort-wchar -fno-strict-aliasing -Wall -Werror -Wno-deprecated-declarations -Wno-stringop-truncation -Wno-restrict -Wno-unused-result -nostdlib -c -g
endif

View File

@@ -0,0 +1,66 @@
From dfb42a5bff78d9239a80731e337855234badef3e Mon Sep 17 00:00:00 2001
From: Laszlo Ersek <lersek@redhat.com>
Date: Fri, 2 Mar 2018 17:11:52 +0100
Subject: [PATCH 4/4] BaseTools/GenVtf: silence false "stringop-overflow"
warning with memcpy()
gcc-8 (which is part of Fedora 28) enables the new warning
"-Wstringop-overflow" in "-Wall". This warning is documented in detail at
<https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html>; the
introduction says
> Warn for calls to string manipulation functions such as memcpy and
> strcpy that are determined to overflow the destination buffer.
It breaks the BaseTools build with:
> GenVtf.c: In function 'ConvertVersionInfo':
> GenVtf.c:132:7: error: 'strncpy' specified bound depends on the length
> of the source argument [-Werror=stringop-overflow=]
> strncpy (TemStr + 4 - Length, Str, Length);
> ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> GenVtf.c:130:14: note: length computed here
> Length = strlen(Str);
> ^~~~~~~~~~~
It is a false positive because, while the bound equals the length of the
source argument, the destination pointer is moved back towards the
beginning of the destination buffer by the same amount (and this amount is
range-checked first, so we can't precede the start of the dest buffer).
Replace both strncpy() calls with memcpy().
Cc: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Cc: Cole Robinson <crobinso@redhat.com>
Cc: Liming Gao <liming.gao@intel.com>
Cc: Paolo Bonzini <pbonzini@redhat.com>
Cc: Yonghong Zhu <yonghong.zhu@intel.com>
Reported-by: Cole Robinson <crobinso@redhat.com>
Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Laszlo Ersek <lersek@redhat.com>
Reviewed-by: Liming Gao <liming.gao@intel.com>
---
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Upstream-Status: Backport
BaseTools/Source/C/GenVtf/GenVtf.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/BaseTools/Source/C/GenVtf/GenVtf.c b/BaseTools/Source/C/GenVtf/GenVtf.c
index 2ae9a7be2c..0cd33e71e9 100644
--- a/BaseTools/Source/C/GenVtf/GenVtf.c
+++ b/BaseTools/Source/C/GenVtf/GenVtf.c
@@ -129,9 +129,9 @@ Returns:
} else {
Length = strlen(Str);
if (Length < 4) {
- strncpy (TemStr + 4 - Length, Str, Length);
+ memcpy (TemStr + 4 - Length, Str, Length);
} else {
- strncpy (TemStr, Str + Length - 4, 4);
+ memcpy (TemStr, Str + Length - 4, 4);
}
sscanf (
--
2.17.0

View File

@@ -17,4 +17,4 @@ Index: git/BaseTools/Conf/tools_def.template
+DEFINE GCC44_ALL_CC_FLAGS = -g -fshort-wchar -fno-builtin -fno-strict-aliasing -Wall -Werror -Wno-array-bounds -ffunction-sections -fdata-sections -fno-stack-protector -include AutoGen.h -fno-common -DSTRING_ARRAY_NAME=$(BASE_NAME)Strings
DEFINE GCC44_IA32_CC_FLAGS = DEF(GCC44_ALL_CC_FLAGS) -m32 -march=i586 -malign-double -fno-stack-protector -D EFI32 -fno-asynchronous-unwind-tables -fno-PIE -no-pie
DEFINE GCC44_X64_CC_FLAGS = DEF(GCC44_ALL_CC_FLAGS) -m64 -fno-stack-protector "-DEFIAPI=__attribute__((ms_abi))" -maccumulate-outgoing-args -mno-red-zone -Wno-address -mcmodel=small -fpie -fno-asynchronous-unwind-tables
DEFINE GCC44_IA32_X64_DLINK_COMMON = -nostdlib -Wl,-n,-q,--gc-sections -z common-page-size=0x20
DEFINE GCC44_IA32_X64_DLINK_COMMON = -nostdlib -Wl,-n,-q,--gc-sections -z common-page-size=0x20 -no-pie

View File

@@ -19,6 +19,10 @@ SRC_URI = "git://github.com/tianocore/edk2.git;branch=master \
file://0004-ovmf-enable-long-path-file.patch \
file://VfrCompile-increase-path-length-limit.patch \
file://no-stack-protector-all-archs.patch \
file://0001-BaseTools-header.makefile-add-Wno-stringop-truncatio.patch \
file://0002-BaseTools-header.makefile-add-Wno-restrict.patch \
file://0003-BaseTools-header.makefile-revert-gcc-8-Wno-xxx-optio.patch \
file://0004-BaseTools-GenVtf-silence-false-stringop-overflow-war.patch \
"
UPSTREAM_VERSION_UNKNOWN = "1"
@@ -35,7 +39,7 @@ SRC_URI[openssl.sha256sum] = "57be8618979d80c910728cfc99369bf97b2a1abd8f366ab6eb
inherit deploy
PARALLEL_MAKE_class-native = ""
PARALLEL_MAKE = ""
S = "${WORKDIR}/git"

View File

@@ -344,7 +344,7 @@ USERADD_PARAM_${PN} += "${@bb.utils.contains('PACKAGECONFIG', 'networkd', '--sys
USERADD_PARAM_${PN} += "${@bb.utils.contains('PACKAGECONFIG', 'coredump', '--system -d / -M --shell /bin/nologin systemd-coredump;', '', d)}"
USERADD_PARAM_${PN} += "${@bb.utils.contains('PACKAGECONFIG', 'resolved', '--system -d / -M --shell /bin/nologin systemd-resolve;', '', d)}"
USERADD_PARAM_${PN} += "${@bb.utils.contains('PACKAGECONFIG', 'polkit', '--system --no-create-home --user-group --home-dir ${sysconfdir}/polkit-1 polkitd;', '', d)}"
GROUPADD_PARAM_${PN} = "-r lock; -r systemd-journal"
GROUPADD_PARAM_${PN} = "-r systemd-journal"
USERADD_PARAM_${PN}-extra-utils += "--system -d / -M --shell /bin/nologin systemd-bus-proxy;"
FILES_${PN}-analyze = "${bindir}/systemd-analyze"

View File

@@ -18,7 +18,7 @@ BINUPV = "${@binutils_branch_version(d)}"
UPSTREAM_CHECK_GITTAGREGEX = "binutils-(?P<pver>\d+_(\d_?)*)"
SRCREV ?= "90276f15379d380761fc499da2ba24cfb3c12a94"
SRCREV ?= "8efd17cb25686c51b9db6531ae2fbeb2e6ef2399"
BINUTILS_GIT_URI ?= "git://sourceware.org/git/binutils-gdb.git;branch=binutils-${BINUPV}-branch;protocol=git"
SRC_URI = "\
${BINUTILS_GIT_URI} \
@@ -35,6 +35,48 @@ SRC_URI = "\
file://0013-fix-the-incorrect-assembling-for-ppc-wait-mnemonic.patch \
file://0014-Detect-64-bit-MIPS-targets.patch \
file://0015-sync-with-OE-libtool-changes.patch \
file://CVE-2017-17124.patch \
file://CVE-2017-14930.patch \
file://CVE-2017-14932.patch \
file://CVE-2017-14933_p1.patch \
file://CVE-2017-14933_p2.patch \
file://CVE-2017-14934.patch \
file://CVE-2017-14938.patch \
file://CVE-2017-14939.patch \
file://CVE-2017-14940.patch \
file://CVE-2017-15021.patch \
file://CVE-2017-15022.patch \
file://CVE-2017-15023.patch \
file://CVE-2017-15024.patch \
file://CVE-2017-15025.patch \
file://CVE-2017-15225.patch \
file://CVE-2017-15939.patch \
file://CVE-2017-15996.patch \
file://CVE-2017-16826.patch \
file://CVE-2017-16827.patch \
file://CVE-2017-16828_p1.patch \
file://CVE-2017-16828_p2.patch \
file://CVE-2017-16829.patch \
file://CVE-2017-16830.patch \
file://CVE-2017-16831.patch \
file://CVE-2017-16832.patch \
file://CVE-2017-17080.patch \
file://CVE-2017-17121.patch \
file://CVE-2017-17122.patch \
file://CVE-2017-17125.patch \
file://CVE-2017-17123.patch \
file://CVE-2018-10372.patch \
file://CVE-2018-10373.patch \
file://CVE-2018-10534.patch \
file://CVE-2018-10535.patch \
file://CVE-2018-13033.patch \
file://CVE-2018-6323.patch \
file://CVE-2018-6759.patch \
file://CVE-2018-7208.patch \
file://CVE-2018-7568_p1.patch \
file://CVE-2018-7568_p2.patch \
file://CVE-2018-7569.patch \
file://CVE-2018-7642.patch \
"
S = "${WORKDIR}/git"

View File

@@ -0,0 +1,53 @@
From a26a013f22a19e2c16729e64f40ef8a7dfcc086e Mon Sep 17 00:00:00 2001
From: Alan Modra <amodra@gmail.com>
Date: Sun, 24 Sep 2017 17:10:14 +0930
Subject: [PATCH] PR22191, memory leak in dwarf2.c
table->sequences is a linked list before it is replaced by a bfd_alloc
array in sort_line_sequences.
PR 22191
* dwarf2.c (decode_line_info): Properly free line sequences on error.
Upstream-Status: Backport
Affects: <= 2.29.1
CVE: CVE-2017-14930
Signed-off-by: Armin Kuster <akuster@mvista.com>
---
bfd/ChangeLog | 5 +++++
bfd/dwarf2.c | 8 ++++++--
2 files changed, 11 insertions(+), 2 deletions(-)
Index: git/bfd/dwarf2.c
===================================================================
--- git.orig/bfd/dwarf2.c
+++ git/bfd/dwarf2.c
@@ -2473,8 +2473,12 @@ decode_line_info (struct comp_unit *unit
return table;
fail:
- if (table->sequences != NULL)
- free (table->sequences);
+ while (table->sequences != NULL)
+ {
+ struct line_sequence* seq = table->sequences;
+ table->sequences = table->sequences->prev_sequence;
+ free (seq);
+ }
if (table->files != NULL)
free (table->files);
if (table->dirs != NULL)
Index: git/bfd/ChangeLog
===================================================================
--- git.orig/bfd/ChangeLog
+++ git/bfd/ChangeLog
@@ -1,3 +1,8 @@
+2017-09-24 Alan Modra <amodra@gmail.com>
+
+ PR 22191
+ * dwarf2.c (decode_line_info): Properly free line sequences on error.
+
2017-11-28 Nick Clifton <nickc@redhat.com>
PR 22507

View File

@@ -0,0 +1,46 @@
From e338894dc2e603683bed2172e8e9f25b29051005 Mon Sep 17 00:00:00 2001
From: Alan Modra <amodra@gmail.com>
Date: Tue, 26 Sep 2017 09:32:18 +0930
Subject: [PATCH] PR22204, Lack of DW_LNE_end_sequence causes "infinite" loop
PR 22204
* dwarf2.c (decode_line_info): Ensure line_ptr stays within
bounds in inner loop.
Upstream-Status: Backport
Affects: <= 2.29.1
CVE: CVE-2017-14932
Signed-off-by: Armin Kuster <akuster@mvista.com>
---
bfd/ChangeLog | 6 ++++++
bfd/dwarf2.c | 2 +-
2 files changed, 7 insertions(+), 1 deletion(-)
Index: git/bfd/dwarf2.c
===================================================================
--- git.orig/bfd/dwarf2.c
+++ git/bfd/dwarf2.c
@@ -2269,7 +2269,7 @@ decode_line_info (struct comp_unit *unit
bfd_vma high_pc = 0;
/* Decode the table. */
- while (! end_sequence)
+ while (!end_sequence && line_ptr < line_end)
{
op_code = read_1_byte (abfd, line_ptr, line_end);
line_ptr += 1;
Index: git/bfd/ChangeLog
===================================================================
--- git.orig/bfd/ChangeLog
+++ git/bfd/ChangeLog
@@ -1,3 +1,9 @@
+2017-09-26 Alan Modra <amodra@gmail.com>
+
+ PR 22204
+ * dwarf2.c (decode_line_info): Ensure line_ptr stays within
+ bounds in inner loop.
+
2017-09-24 Alan Modra <amodra@gmail.com>
PR 22191

View File

@@ -0,0 +1,58 @@
From 30d0157a2ad64e64e5ff9fcc0dbe78a3e682f573 Mon Sep 17 00:00:00 2001
From: Nick Clifton <nickc@redhat.com>
Date: Tue, 26 Sep 2017 14:37:47 +0100
Subject: [PATCH] Avoid needless resource usage when processing a corrupt DWARF
directory or file name table.
PR 22210
* dwarf2.c (read_formatted_entries): Fail early if we know that
the loop parsing data entries will overflow the end of the
section.
Upstream-Status: Backport
Affects: <= 2.29.1
CVE: CVE-2017-14933 #1
Signed-off-by: Armin Kuster <akuster@mvista.com>
---
bfd/ChangeLog | 7 +++++++
bfd/dwarf2.c | 10 ++++++++++
2 files changed, 17 insertions(+)
Index: git/bfd/ChangeLog
===================================================================
--- git.orig/bfd/ChangeLog
+++ git/bfd/ChangeLog
@@ -1,3 +1,10 @@
+2017-09-26 Nick Clifton <nickc@redhat.com>
+
+ PR 22210
+ * dwarf2.c (read_formatted_entries): Fail early if we know that
+ the loop parsing data entries will overflow the end of the
+ section.
+
2017-09-26 Alan Modra <amodra@gmail.com>
PR 22204
Index: git/bfd/dwarf2.c
===================================================================
--- git.orig/bfd/dwarf2.c
+++ git/bfd/dwarf2.c
@@ -1933,6 +1933,17 @@ read_formatted_entries (struct comp_unit
data_count = _bfd_safe_read_leb128 (abfd, buf, &bytes_read, FALSE, buf_end);
buf += bytes_read;
+
+ /* PR 22210. Paranoia check. Don't bother running the loop
+ if we know that we are going to run out of buffer. */
+ if (data_count > (bfd_vma) (buf_end - buf))
+ {
+ _bfd_error_handler (_("Dwarf Error: data count (%Lx) larger than buffer size."),
+ data_count);
+ bfd_set_error (bfd_error_bad_value);
+ return FALSE;
+ }
+
for (datai = 0; datai < data_count; datai++)
{
bfd_byte *format = format_header_data;

View File

@@ -0,0 +1,102 @@
From 33e0a9a056bd23e923b929a4f2ab049ade0b1c32 Mon Sep 17 00:00:00 2001
From: Alan Modra <amodra@gmail.com>
Date: Tue, 26 Sep 2017 23:20:06 +0930
Subject: [PATCH] Tidy reading data in read_formatted_entries
Using read_attribute_value accomplishes two things: It checks for
unexpected formats, and ensures the buffer pointer always increments.
PR 22210
* dwarf2.c (read_formatted_entries): Use read_attribute_value to
read data.
Upstream-Status: Backport
Affects: <= 2.29.1
CVE: CVE-2017-14933 #2
Signed-off-by: Armin Kuster <akuster@mvista.com>
---
bfd/ChangeLog | 6 ++++++
bfd/dwarf2.c | 37 +++++++------------------------------
2 files changed, 13 insertions(+), 30 deletions(-)
Index: git/bfd/ChangeLog
===================================================================
--- git.orig/bfd/ChangeLog
+++ git/bfd/ChangeLog
@@ -1,3 +1,9 @@
+2017-09-26 Alan Modra <amodra@gmail.com>
+
+ PR 22210
+ * dwarf2.c (read_formatted_entries): Use read_attribute_value to
+ read data.
+
2017-09-26 Nick Clifton <nickc@redhat.com>
PR 22210
Index: git/bfd/dwarf2.c
===================================================================
--- git.orig/bfd/dwarf2.c
+++ git/bfd/dwarf2.c
@@ -1955,6 +1955,7 @@ read_formatted_entries (struct comp_unit
char *string_trash;
char **stringp = &string_trash;
unsigned int uint_trash, *uintp = &uint_trash;
+ struct attribute attr;
content_type = _bfd_safe_read_leb128 (abfd, format, &bytes_read,
FALSE, buf_end);
@@ -1986,47 +1987,23 @@ read_formatted_entries (struct comp_unit
form = _bfd_safe_read_leb128 (abfd, format, &bytes_read, FALSE,
buf_end);
format += bytes_read;
+
+ buf = read_attribute_value (&attr, form, 0, unit, buf, buf_end);
+ if (buf == NULL)
+ return FALSE;
switch (form)
{
case DW_FORM_string:
- *stringp = read_string (abfd, buf, buf_end, &bytes_read);
- buf += bytes_read;
- break;
-
case DW_FORM_line_strp:
- *stringp = read_indirect_line_string (unit, buf, buf_end, &bytes_read);
- buf += bytes_read;
+ *stringp = attr.u.str;
break;
case DW_FORM_data1:
- *uintp = read_1_byte (abfd, buf, buf_end);
- buf += 1;
- break;
-
case DW_FORM_data2:
- *uintp = read_2_bytes (abfd, buf, buf_end);
- buf += 2;
- break;
-
case DW_FORM_data4:
- *uintp = read_4_bytes (abfd, buf, buf_end);
- buf += 4;
- break;
-
case DW_FORM_data8:
- *uintp = read_8_bytes (abfd, buf, buf_end);
- buf += 8;
- break;
-
case DW_FORM_udata:
- *uintp = _bfd_safe_read_leb128 (abfd, buf, &bytes_read, FALSE,
- buf_end);
- buf += bytes_read;
- break;
-
- case DW_FORM_block:
- /* It is valid only for DW_LNCT_timestamp which is ignored by
- current GDB. */
+ *uintp = attr.u.val;
break;
}
}

View File

@@ -0,0 +1,63 @@
From 19485196044b2521af979f1e5c4a89bfb90fba0b Mon Sep 17 00:00:00 2001
From: Nick Clifton <nickc@redhat.com>
Date: Wed, 27 Sep 2017 10:42:51 +0100
Subject: [PATCH] Prevent an infinite loop in the DWARF parsing code when
encountering a CU structure with a small negative size.
PR 22219
* dwarf.c (process_debug_info): Add a check for a negative
cu_length field.
Upstream-Status: Backport
Affects: <= 2.29.1
CVE: CVE-2017-14934
Signed-off-by: Armin Kuster <akuster@mvista.com>
---
binutils/ChangeLog | 6 ++++++
binutils/dwarf.c | 11 ++++++++++-
2 files changed, 16 insertions(+), 1 deletion(-)
Index: git/binutils/dwarf.c
===================================================================
--- git.orig/binutils/dwarf.c
+++ git/binutils/dwarf.c
@@ -2547,7 +2547,7 @@ process_debug_info (struct dwarf_section
int level, last_level, saved_level;
dwarf_vma cu_offset;
unsigned int offset_size;
- int initial_length_size;
+ unsigned int initial_length_size;
dwarf_vma signature_high = 0;
dwarf_vma signature_low = 0;
dwarf_vma type_offset = 0;
@@ -2695,6 +2695,15 @@ process_debug_info (struct dwarf_section
num_units = unit;
break;
}
+ else if (compunit.cu_length + initial_length_size < initial_length_size)
+ {
+ warn (_("Debug info is corrupted, length of CU at %s is negative (%s)\n"),
+ dwarf_vmatoa ("x", cu_offset),
+ dwarf_vmatoa ("x", compunit.cu_length));
+ num_units = unit;
+ break;
+ }
+
tags = hdrptr;
start += compunit.cu_length + initial_length_size;
Index: git/binutils/ChangeLog
===================================================================
--- git.orig/binutils/ChangeLog
+++ git/binutils/ChangeLog
@@ -1,3 +1,9 @@
+2017-09-27 Nick Clifton <nickc@redhat.com>
+
+ PR 22219
+ * dwarf.c (process_debug_info): Add a check for a negative
+ cu_length field.
+
2017-11-01 Alan Modra <amodra@gmail.com>
Apply from master

View File

@@ -0,0 +1,64 @@
From bd61e135492ecf624880e6b78e5fcde3c9716df6 Mon Sep 17 00:00:00 2001
From: Alan Modra <amodra@gmail.com>
Date: Sun, 24 Sep 2017 14:34:57 +0930
Subject: [PATCH] PR22166, SHT_GNU_verneed memory allocation
The sanity check covers the previous minimim size, plus that the size
is at least enough for sh_info verneed entries.
Also, since we write all verneed fields or exit with an error, there
isn't any need to zero the memory allocated for verneed entries.
PR 22166
* elf.c (_bfd_elf_slurp_version_tables): Test sh_info on
SHT_GNU_verneed section for sanity. Don't zalloc memory for
verref.
Upstream-Status: Backport
Affects: <= 2.29.1
CVE: CVE-2017-14938
Signed-off-by: Armin Kuster <akuster@mvista.com>
---
bfd/ChangeLog | 7 +++++++
bfd/elf.c | 5 +++--
2 files changed, 10 insertions(+), 2 deletions(-)
Index: git/bfd/elf.c
===================================================================
--- git.orig/bfd/elf.c
+++ git/bfd/elf.c
@@ -8198,7 +8198,8 @@ _bfd_elf_slurp_version_tables (bfd *abfd
hdr = &elf_tdata (abfd)->dynverref_hdr;
- if (hdr->sh_info == 0 || hdr->sh_size < sizeof (Elf_External_Verneed))
+ if (hdr->sh_info == 0
+ || hdr->sh_info > hdr->sh_size / sizeof (Elf_External_Verneed))
{
error_return_bad_verref:
_bfd_error_handler
@@ -8219,7 +8220,7 @@ error_return_verref:
goto error_return_verref;
elf_tdata (abfd)->verref = (Elf_Internal_Verneed *)
- bfd_zalloc2 (abfd, hdr->sh_info, sizeof (Elf_Internal_Verneed));
+ bfd_alloc2 (abfd, hdr->sh_info, sizeof (Elf_Internal_Verneed));
if (elf_tdata (abfd)->verref == NULL)
goto error_return_verref;
Index: git/bfd/ChangeLog
===================================================================
--- git.orig/bfd/ChangeLog
+++ git/bfd/ChangeLog
@@ -1,3 +1,10 @@
+2017-09-24 Alan Modra <amodra@gmail.com>
+
+ PR 22166
+ * elf.c (_bfd_elf_slurp_version_tables): Test sh_info on
+ SHT_GNU_verneed section for sanity. Don't zalloc memory for
+ verref.
+
2017-09-26 Alan Modra <amodra@gmail.com>
PR 22210

View File

@@ -0,0 +1,56 @@
From 515f23e63c0074ab531bc954f84ca40c6281a724 Mon Sep 17 00:00:00 2001
From: Alan Modra <amodra@gmail.com>
Date: Sun, 24 Sep 2017 14:36:16 +0930
Subject: [PATCH] PR22169, heap-based buffer overflow in read_1_byte
The .debug_line header length field doesn't include the length field
itself, ie. it's the size of the rest of .debug_line.
PR 22169
* dwarf2.c (decode_line_info): Correct .debug_line unit_length check.
Upstream-Status: Backport
Affects: <= 2.29.1
CVE: CVE-2017-14939
Signed-off-by: Armin Kuster <akuster@mvista.com>
---
bfd/ChangeLog | 5 +++++
bfd/dwarf2.c | 7 ++++---
2 files changed, 9 insertions(+), 3 deletions(-)
Index: git/bfd/dwarf2.c
===================================================================
--- git.orig/bfd/dwarf2.c
+++ git/bfd/dwarf2.c
@@ -2084,12 +2084,13 @@ decode_line_info (struct comp_unit *unit
offset_size = 8;
}
- if (unit->line_offset + lh.total_length > stash->dwarf_line_size)
+ if (lh.total_length > (size_t) (line_end - line_ptr))
{
_bfd_error_handler
/* xgettext: c-format */
- (_("Dwarf Error: Line info data is bigger (%#Lx) than the space remaining in the section (%#Lx)"),
- lh.total_length, stash->dwarf_line_size - unit->line_offset);
+ (_("Dwarf Error: Line info data is bigger (%#Lx)"
+ " than the space remaining in the section (%#lx)"),
+ lh.total_length, (unsigned long) (line_end - line_ptr));
bfd_set_error (bfd_error_bad_value);
return NULL;
}
Index: git/bfd/ChangeLog
===================================================================
--- git.orig/bfd/ChangeLog
+++ git/bfd/ChangeLog
@@ -1,4 +1,9 @@
2017-09-24 Alan Modra <amodra@gmail.com>
+
+ PR 22169
+ * dwarf2.c (decode_line_info): Correct .debug_line unit_length check.
+
+2017-09-24 Alan Modra <amodra@gmail.com>
PR 22166
* elf.c (_bfd_elf_slurp_version_tables): Test sh_info on

View File

@@ -0,0 +1,47 @@
From 0d76029f92182c3682d8be2c833d45bc9a2068fe Mon Sep 17 00:00:00 2001
From: Alan Modra <amodra@gmail.com>
Date: Sun, 24 Sep 2017 14:35:33 +0930
Subject: [PATCH] PR22167, NULL pointer dereference in scan_unit_for_symbols
PR 22167
* dwarf2.c (scan_unit_for_symbols): Check u.blk->data is non-NULL.
Upstream-Status: Backport
Affects: <= 2.29.1
CVE: CVE-2017-14940
Signed-off-by: Armin Kuster <akuster@mvista.com>
---
bfd/ChangeLog | 5 +++++
bfd/dwarf2.c | 3 ++-
2 files changed, 7 insertions(+), 1 deletion(-)
Index: git/bfd/dwarf2.c
===================================================================
--- git.orig/bfd/dwarf2.c
+++ git/bfd/dwarf2.c
@@ -3202,7 +3202,8 @@ scan_unit_for_symbols (struct comp_unit
case DW_FORM_block2:
case DW_FORM_block4:
case DW_FORM_exprloc:
- if (*attr.u.blk->data == DW_OP_addr)
+ if (attr.u.blk->data != NULL
+ && *attr.u.blk->data == DW_OP_addr)
{
var->stack = 0;
Index: git/bfd/ChangeLog
===================================================================
--- git.orig/bfd/ChangeLog
+++ git/bfd/ChangeLog
@@ -1,5 +1,10 @@
2017-09-24 Alan Modra <amodra@gmail.com>
+ PR 22167
+ * dwarf2.c (scan_unit_for_symbols): Check u.blk->data is non-NULL.
+
+2017-09-24 Alan Modra <amodra@gmail.com>
+
PR 22169
* dwarf2.c (decode_line_info): Correct .debug_line unit_length check.

View File

@@ -0,0 +1,48 @@
From 52b36c51e5bf6d7600fdc6ba115b170b0e78e31d Mon Sep 17 00:00:00 2001
From: Alan Modra <amodra@gmail.com>
Date: Sun, 24 Sep 2017 21:36:18 +0930
Subject: [PATCH] PR22197, buffer overflow in bfd_get_debug_link_info_1
PR 22197
* opncls.c (bfd_get_debug_link_info_1): Properly check that crc is
within section bounds.
Upstream-Status: Backport
Affects: <= 2.29.1
CVE: CVE-2017-15021
Signed-off-by: Armin Kuster <akuster@mvista.com>
---
bfd/ChangeLog | 6 ++++++
bfd/opncls.c | 2 +-
2 files changed, 7 insertions(+), 1 deletion(-)
Index: git/bfd/opncls.c
===================================================================
--- git.orig/bfd/opncls.c
+++ git/bfd/opncls.c
@@ -1200,7 +1200,7 @@ bfd_get_debug_link_info_1 (bfd *abfd, vo
/* PR 17597: avoid reading off the end of the buffer. */
crc_offset = strnlen (name, bfd_get_section_size (sect)) + 1;
crc_offset = (crc_offset + 3) & ~3;
- if (crc_offset >= bfd_get_section_size (sect))
+ if (crc_offset + 4 > bfd_get_section_size (sect))
return NULL;
*crc32 = bfd_get_32 (abfd, contents + crc_offset);
Index: git/bfd/ChangeLog
===================================================================
--- git.orig/bfd/ChangeLog
+++ git/bfd/ChangeLog
@@ -1,5 +1,11 @@
2017-09-24 Alan Modra <amodra@gmail.com>
+ PR 22197
+ * opncls.c (bfd_get_debug_link_info_1): Properly check that crc is
+ within section bounds.
+
+2017-09-24 Alan Modra <amodra@gmail.com>
+
PR 22167
* dwarf2.c (scan_unit_for_symbols): Check u.blk->data is non-NULL.

View File

@@ -0,0 +1,61 @@
From 11855d8a1f11b102a702ab76e95b22082cccf2f8 Mon Sep 17 00:00:00 2001
From: Alan Modra <amodra@gmail.com>
Date: Mon, 25 Sep 2017 19:46:34 +0930
Subject: [PATCH] PR22201, DW_AT_name with out of bounds reference
DW_AT_name ought to always have a string value.
PR 22201
* dwarf2.c (scan_unit_for_symbols): Ignore DW_AT_name unless it
has string form.
(parse_comp_unit): Likewise.
Upstream-Status: Backport
Affects: <= 2.29.1
CVE: CVE-2017-15022
Signed-off-by: Armin Kuster <akuster@mvista.com>
---
bfd/ChangeLog | 7 +++++++
bfd/dwarf2.c | 6 ++++--
2 files changed, 11 insertions(+), 2 deletions(-)
Index: git/bfd/dwarf2.c
===================================================================
--- git.orig/bfd/dwarf2.c
+++ git/bfd/dwarf2.c
@@ -3177,7 +3177,8 @@ scan_unit_for_symbols (struct comp_unit
switch (attr.name)
{
case DW_AT_name:
- var->name = attr.u.str;
+ if (is_str_attr (attr.form))
+ var->name = attr.u.str;
break;
case DW_AT_decl_file:
@@ -3429,7 +3430,8 @@ parse_comp_unit (struct dwarf2_debug *st
break;
case DW_AT_name:
- unit->name = attr.u.str;
+ if (is_str_attr (attr.form))
+ unit->name = attr.u.str;
break;
case DW_AT_low_pc:
Index: git/bfd/ChangeLog
===================================================================
--- git.orig/bfd/ChangeLog
+++ git/bfd/ChangeLog
@@ -1,3 +1,10 @@
+2017-09-25 Alan Modra <amodra@gmail.com>
+
+ PR 22201
+ * dwarf2.c (scan_unit_for_symbols): Ignore DW_AT_name unless it
+ has string form.
+ (parse_comp_unit): Likewise.
+
2017-09-24 Alan Modra <amodra@gmail.com>
PR 22197

View File

@@ -0,0 +1,52 @@
From c361faae8d964db951b7100cada4dcdc983df1bf Mon Sep 17 00:00:00 2001
From: Alan Modra <amodra@gmail.com>
Date: Mon, 25 Sep 2017 19:03:46 +0930
Subject: [PATCH] PR22200, DWARF5 .debug_line sanity check
The format_count entry can't be zero unless the count is also zero.
PR 22200
* dwarf2.c (read_formatted_entries): Error on format_count zero.
Upstream-Status: Backport
Affects: <= 2.29.1
CVE: CVE-2017-15023
Signed-off-by: Armin Kuster <akuster@mvista.com>
---
bfd/ChangeLog | 5 +++++
bfd/dwarf2.c | 7 +++++++
2 files changed, 12 insertions(+)
Index: git/bfd/dwarf2.c
===================================================================
--- git.orig/bfd/dwarf2.c
+++ git/bfd/dwarf2.c
@@ -1934,6 +1934,13 @@ read_formatted_entries (struct comp_unit
data_count = _bfd_safe_read_leb128 (abfd, buf, &bytes_read, FALSE, buf_end);
buf += bytes_read;
+ if (format_count == 0 && data_count != 0)
+ {
+ _bfd_error_handler (_("Dwarf Error: Zero format count."));
+ bfd_set_error (bfd_error_bad_value);
+ return FALSE;
+ }
+
/* PR 22210. Paranoia check. Don't bother running the loop
if we know that we are going to run out of buffer. */
if (data_count > (bfd_vma) (buf_end - buf))
Index: git/bfd/ChangeLog
===================================================================
--- git.orig/bfd/ChangeLog
+++ git/bfd/ChangeLog
@@ -1,4 +1,9 @@
2017-09-25 Alan Modra <amodra@gmail.com>
+
+ PR 22200
+ * dwarf2.c (read_formatted_entries): Error on format_count zero.
+
+2017-09-25 Alan Modra <amodra@gmail.com>
PR 22201
* dwarf2.c (scan_unit_for_symbols): Ignore DW_AT_name unless it

View File

@@ -0,0 +1,227 @@
From 52a93b95ec0771c97e26f0bb28630a271a667bd2 Mon Sep 17 00:00:00 2001
From: Alan Modra <amodra@gmail.com>
Date: Sun, 24 Sep 2017 14:37:16 +0930
Subject: [PATCH] PR22187, infinite loop in find_abstract_instance_name
This patch prevents the simple case of infinite recursion in
find_abstract_instance_name by ensuring that the attributes being
processed are not the same as the previous call.
The patch also does a little cleanup, and leaves in place some changes
to the nested_funcs array that I made when I wrongly thought looping
might occur in scan_unit_for_symbols.
PR 22187
* dwarf2.c (find_abstract_instance_name): Add orig_info_ptr and
pname param. Return status. Make name const. Don't abort,
return an error. Formatting. Exit if current info_ptr matches
orig_info_ptr. Update callers.
(scan_unit_for_symbols): Start at nesting_level of zero. Make
nested_funcs an array of structs for extensibility. Formatting.
Upstream-Status: Backport
Affects: <= 2.29.1
CVE: CVE-2017-15024
Signed-off-by: Armin Kuster <akuster@mvista.com>
---
bfd/ChangeLog | 10 ++++++++
bfd/dwarf2.c | 76 +++++++++++++++++++++++++++++++++++++++--------------------
2 files changed, 61 insertions(+), 25 deletions(-)
Index: git/bfd/dwarf2.c
===================================================================
--- git.orig/bfd/dwarf2.c
+++ git/bfd/dwarf2.c
@@ -2823,9 +2823,11 @@ lookup_symbol_in_variable_table (struct
return FALSE;
}
-static char *
+static bfd_boolean
find_abstract_instance_name (struct comp_unit *unit,
+ bfd_byte *orig_info_ptr,
struct attribute *attr_ptr,
+ const char **pname,
bfd_boolean *is_linkage)
{
bfd *abfd = unit->abfd;
@@ -2835,7 +2837,7 @@ find_abstract_instance_name (struct comp
struct abbrev_info *abbrev;
bfd_uint64_t die_ref = attr_ptr->u.val;
struct attribute attr;
- char *name = NULL;
+ const char *name = NULL;
/* DW_FORM_ref_addr can reference an entry in a different CU. It
is an offset from the .debug_info section, not the current CU. */
@@ -2844,7 +2846,12 @@ find_abstract_instance_name (struct comp
/* We only support DW_FORM_ref_addr within the same file, so
any relocations should be resolved already. */
if (!die_ref)
- abort ();
+ {
+ _bfd_error_handler
+ (_("Dwarf Error: Abstract instance DIE ref zero."));
+ bfd_set_error (bfd_error_bad_value);
+ return FALSE;
+ }
info_ptr = unit->sec_info_ptr + die_ref;
info_ptr_end = unit->end_ptr;
@@ -2879,9 +2886,10 @@ find_abstract_instance_name (struct comp
_bfd_error_handler
(_("Dwarf Error: Unable to read alt ref %u."), die_ref);
bfd_set_error (bfd_error_bad_value);
- return NULL;
+ return FALSE;
}
- info_ptr_end = unit->stash->alt_dwarf_info_buffer + unit->stash->alt_dwarf_info_size;
+ info_ptr_end = (unit->stash->alt_dwarf_info_buffer
+ + unit->stash->alt_dwarf_info_size);
/* FIXME: Do we need to locate the correct CU, in a similar
fashion to the code in the DW_FORM_ref_addr case above ? */
@@ -2904,6 +2912,7 @@ find_abstract_instance_name (struct comp
_bfd_error_handler
(_("Dwarf Error: Could not find abbrev number %u."), abbrev_number);
bfd_set_error (bfd_error_bad_value);
+ return FALSE;
}
else
{
@@ -2913,6 +2922,15 @@ find_abstract_instance_name (struct comp
info_ptr, info_ptr_end);
if (info_ptr == NULL)
break;
+ /* It doesn't ever make sense for DW_AT_specification to
+ refer to the same DIE. Stop simple recursion. */
+ if (info_ptr == orig_info_ptr)
+ {
+ _bfd_error_handler
+ (_("Dwarf Error: Abstract instance recursion detected."));
+ bfd_set_error (bfd_error_bad_value);
+ return FALSE;
+ }
switch (attr.name)
{
case DW_AT_name:
@@ -2926,7 +2944,9 @@ find_abstract_instance_name (struct comp
}
break;
case DW_AT_specification:
- name = find_abstract_instance_name (unit, &attr, is_linkage);
+ if (!find_abstract_instance_name (unit, info_ptr, &attr,
+ pname, is_linkage))
+ return FALSE;
break;
case DW_AT_linkage_name:
case DW_AT_MIPS_linkage_name:
@@ -2944,7 +2964,8 @@ find_abstract_instance_name (struct comp
}
}
}
- return name;
+ *pname = name;
+ return TRUE;
}
static bfd_boolean
@@ -3005,20 +3026,22 @@ scan_unit_for_symbols (struct comp_unit
bfd *abfd = unit->abfd;
bfd_byte *info_ptr = unit->first_child_die_ptr;
bfd_byte *info_ptr_end = unit->stash->info_ptr_end;
- int nesting_level = 1;
- struct funcinfo **nested_funcs;
+ int nesting_level = 0;
+ struct nest_funcinfo {
+ struct funcinfo *func;
+ } *nested_funcs;
int nested_funcs_size;
/* Maintain a stack of in-scope functions and inlined functions, which we
can use to set the caller_func field. */
nested_funcs_size = 32;
- nested_funcs = (struct funcinfo **)
- bfd_malloc (nested_funcs_size * sizeof (struct funcinfo *));
+ nested_funcs = (struct nest_funcinfo *)
+ bfd_malloc (nested_funcs_size * sizeof (*nested_funcs));
if (nested_funcs == NULL)
return FALSE;
- nested_funcs[nesting_level] = 0;
+ nested_funcs[nesting_level].func = 0;
- while (nesting_level)
+ while (nesting_level >= 0)
{
unsigned int abbrev_number, bytes_read, i;
struct abbrev_info *abbrev;
@@ -3076,13 +3099,13 @@ scan_unit_for_symbols (struct comp_unit
BFD_ASSERT (!unit->cached);
if (func->tag == DW_TAG_inlined_subroutine)
- for (i = nesting_level - 1; i >= 1; i--)
- if (nested_funcs[i])
+ for (i = nesting_level; i-- != 0; )
+ if (nested_funcs[i].func)
{
- func->caller_func = nested_funcs[i];
+ func->caller_func = nested_funcs[i].func;
break;
}
- nested_funcs[nesting_level] = func;
+ nested_funcs[nesting_level].func = func;
}
else
{
@@ -3102,12 +3125,13 @@ scan_unit_for_symbols (struct comp_unit
}
/* No inline function in scope at this nesting level. */
- nested_funcs[nesting_level] = 0;
+ nested_funcs[nesting_level].func = 0;
}
for (i = 0; i < abbrev->num_attrs; ++i)
{
- info_ptr = read_attribute (&attr, &abbrev->attrs[i], unit, info_ptr, info_ptr_end);
+ info_ptr = read_attribute (&attr, &abbrev->attrs[i],
+ unit, info_ptr, info_ptr_end);
if (info_ptr == NULL)
goto fail;
@@ -3126,8 +3150,10 @@ scan_unit_for_symbols (struct comp_unit
case DW_AT_abstract_origin:
case DW_AT_specification:
- func->name = find_abstract_instance_name (unit, &attr,
- &func->is_linkage);
+ if (!find_abstract_instance_name (unit, info_ptr, &attr,
+ &func->name,
+ &func->is_linkage))
+ goto fail;
break;
case DW_AT_name:
@@ -3254,17 +3280,17 @@ scan_unit_for_symbols (struct comp_unit
if (nesting_level >= nested_funcs_size)
{
- struct funcinfo **tmp;
+ struct nest_funcinfo *tmp;
nested_funcs_size *= 2;
- tmp = (struct funcinfo **)
+ tmp = (struct nest_funcinfo *)
bfd_realloc (nested_funcs,
- nested_funcs_size * sizeof (struct funcinfo *));
+ nested_funcs_size * sizeof (*nested_funcs));
if (tmp == NULL)
goto fail;
nested_funcs = tmp;
}
- nested_funcs[nesting_level] = 0;
+ nested_funcs[nesting_level].func = 0;
}
}

View File

@@ -0,0 +1,47 @@
From d8010d3e75ec7194a4703774090b27486b742d48 Mon Sep 17 00:00:00 2001
From: Alan Modra <amodra@gmail.com>
Date: Sun, 24 Sep 2017 14:36:48 +0930
Subject: [PATCH] PR22186, divide-by-zero in decode_line_info
PR 22186
* dwarf2.c (decode_line_info): Fail on lh.line_range of zero
rather than dividing by zero.
Upstream-Status: Backport
Affects: <= 2.29.1
CVE: CVE-2017-15025
Signed-off-by: Armin Kuster <akuster@mvista.com>
---
bfd/ChangeLog | 6 ++++++
bfd/dwarf2.c | 2 ++
2 files changed, 8 insertions(+)
Index: git/bfd/dwarf2.c
===================================================================
--- git.orig/bfd/dwarf2.c
+++ git/bfd/dwarf2.c
@@ -2432,6 +2432,8 @@ decode_line_info (struct comp_unit *unit
case DW_LNS_set_basic_block:
break;
case DW_LNS_const_add_pc:
+ if (lh.line_range == 0)
+ goto line_fail;
if (lh.maximum_ops_per_insn == 1)
address += (lh.minimum_instruction_length
* ((255 - lh.opcode_base) / lh.line_range));
Index: git/bfd/ChangeLog
===================================================================
--- git.orig/bfd/ChangeLog
+++ git/bfd/ChangeLog
@@ -1,3 +1,10 @@
+2017-09-24 Alan Modra <amodra@gmail.com>
+
+ PR 22186
+ * dwarf2.c (decode_line_info): Fail on lh.line_range of zero
+ rather than dividing by zero.
+
+
2017-09-25 Alan Modra <amodra@gmail.com>
PR 22200

View File

@@ -0,0 +1,48 @@
From b55ec8b676ed05d93ee49d6c79ae0403616c4fb0 Mon Sep 17 00:00:00 2001
From: Alan Modra <amodra@gmail.com>
Date: Mon, 9 Oct 2017 13:21:44 +1030
Subject: [PATCH] PR22212, memory leak in nm
PR 22212
* dwarf2.c (_bfd_dwarf2_cleanup_debug_info): Free
funcinfo_hash_table and varinfo_hash_table.
Upstream-Status: Backport
Affects: <= 2.29.1
CVE: CVE-2017-15225
Signed-off-by: Armin Kuster <akuster@mvista.com>
---
bfd/ChangeLog | 6 ++++++
bfd/dwarf2.c | 4 ++++
2 files changed, 10 insertions(+)
Index: git/bfd/dwarf2.c
===================================================================
--- git.orig/bfd/dwarf2.c
+++ git/bfd/dwarf2.c
@@ -4932,6 +4932,10 @@ _bfd_dwarf2_cleanup_debug_info (bfd *abf
}
}
+ if (stash->funcinfo_hash_table)
+ bfd_hash_table_free (&stash->funcinfo_hash_table->base);
+ if (stash->varinfo_hash_table)
+ bfd_hash_table_free (&stash->varinfo_hash_table->base);
if (stash->dwarf_abbrev_buffer)
free (stash->dwarf_abbrev_buffer);
if (stash->dwarf_line_buffer)
Index: git/bfd/ChangeLog
===================================================================
--- git.orig/bfd/ChangeLog
+++ git/bfd/ChangeLog
@@ -1,3 +1,9 @@
+2017-10-09 Alan Modra <amodra@gmail.com>
+
+ PR 22212
+ * dwarf2.c (_bfd_dwarf2_cleanup_debug_info): Free
+ funcinfo_hash_table and varinfo_hash_table.
+
2017-09-24 Alan Modra <amodra@gmail.com>
PR 22186

View File

@@ -0,0 +1,113 @@
From a54018b72d75abf2e74bf36016702da06399c1d9 Mon Sep 17 00:00:00 2001
From: Alan Modra <amodra@gmail.com>
Date: Tue, 26 Sep 2017 09:38:26 +0930
Subject: [PATCH] PR22205, .debug_line file table NULL filename
The PR22200 fuzzer testcase found one way to put NULLs into .debug_line
file tables. PR22205 finds another. This patch gives up on trying to
prevent NULL files in the file table and instead just copes with them.
Arguably, this is better than giving up and showing no info from
.debug_line. I've also fixed a case where the fairly recent DWARF5
support in handling broken DWARG could result in uninitialized memory
reads, and made a small tidy.
PR 22205
* dwarf2.c (concat_filename): Return "<unknown>" on NULL filename.
(read_formatted_entries): Init "fe".
(decode_line_info <DW_LNE_define_file>): Use line_info_add_file_name.
Upstream-Status: Backport
Affects: <= 2.29.1
CVE: CVE-2017-15939
Signed-off-by: Armin Kuster <akuster@mvista.com>
---
bfd/ChangeLog | 7 +++++++
bfd/dwarf2.c | 35 +++++++++++++----------------------
2 files changed, 20 insertions(+), 22 deletions(-)
Index: git/bfd/dwarf2.c
===================================================================
--- git.orig/bfd/dwarf2.c
+++ git/bfd/dwarf2.c
@@ -1597,6 +1597,8 @@ concat_filename (struct line_info_table
}
filename = table->files[file - 1].name;
+ if (filename == NULL)
+ return strdup ("<unknown>");
if (!IS_ABSOLUTE_PATH (filename))
{
@@ -1956,6 +1958,7 @@ read_formatted_entries (struct comp_unit
bfd_byte *format = format_header_data;
struct fileinfo fe;
+ memset (&fe, 0, sizeof fe);
for (formati = 0; formati < format_count; formati++)
{
bfd_vma content_type, form;
@@ -2256,6 +2259,7 @@ decode_line_info (struct comp_unit *unit
unsigned int discriminator = 0;
int is_stmt = lh.default_is_stmt;
int end_sequence = 0;
+ unsigned int dir, xtime, size;
/* eraxxon@alumni.rice.edu: Against the DWARF2 specs, some
compilers generate address sequences that are wildly out of
order using DW_LNE_set_address (e.g. Intel C++ 6.0 compiler
@@ -2330,31 +2334,18 @@ decode_line_info (struct comp_unit *unit
case DW_LNE_define_file:
cur_file = read_string (abfd, line_ptr, line_end, &bytes_read);
line_ptr += bytes_read;
- if ((table->num_files % FILE_ALLOC_CHUNK) == 0)
- {
- struct fileinfo *tmp;
-
- amt = table->num_files + FILE_ALLOC_CHUNK;
- amt *= sizeof (struct fileinfo);
- tmp = (struct fileinfo *) bfd_realloc (table->files, amt);
- if (tmp == NULL)
- goto line_fail;
- table->files = tmp;
- }
- table->files[table->num_files].name = cur_file;
- table->files[table->num_files].dir =
- _bfd_safe_read_leb128 (abfd, line_ptr, &bytes_read,
- FALSE, line_end);
+ dir = _bfd_safe_read_leb128 (abfd, line_ptr, &bytes_read,
+ FALSE, line_end);
line_ptr += bytes_read;
- table->files[table->num_files].time =
- _bfd_safe_read_leb128 (abfd, line_ptr, &bytes_read,
- FALSE, line_end);
+ xtime = _bfd_safe_read_leb128 (abfd, line_ptr, &bytes_read,
+ FALSE, line_end);
line_ptr += bytes_read;
- table->files[table->num_files].size =
- _bfd_safe_read_leb128 (abfd, line_ptr, &bytes_read,
- FALSE, line_end);
+ size = _bfd_safe_read_leb128 (abfd, line_ptr, &bytes_read,
+ FALSE, line_end);
line_ptr += bytes_read;
- table->num_files++;
+ if (!line_info_add_file_name (table, cur_file, dir,
+ xtime, size))
+ goto line_fail;
break;
case DW_LNE_set_discriminator:
discriminator =
Index: git/bfd/ChangeLog
===================================================================
--- git.orig/bfd/ChangeLog
+++ git/bfd/ChangeLog
@@ -1,3 +1,10 @@
+2017-09-26 Alan Modra <amodra@gmail.com>
+
+ PR 22205
+ * dwarf2.c (concat_filename): Return "<unknown>" on NULL filename.
+ (read_formatted_entries): Init "fe".
+ (decode_line_info <DW_LNE_define_file>): Use line_info_add_file_name.
+
2017-10-09 Alan Modra <amodra@gmail.com>
PR 22212

View File

@@ -0,0 +1,84 @@
From d91f0b20e561e326ee91a09a76206257bde8438b Mon Sep 17 00:00:00 2001
From: Alan Modra <amodra@gmail.com>
Date: Sat, 28 Oct 2017 21:31:16 +1030
Subject: [PATCH] PR22361 readelf buffer overflow on fuzzed archive header
PR 22361
* readelf.c (process_archive_index_and_symbols): Ensure ar_size
field is zero terminated for strtoul.
(setup_archive, get_archive_member_name): Likewise.
Upstream-Status: Backport
Affects: <= 2.29.1
CVE: CVE-2017-15996
Signed-off-by: Armin Kuster <akuster@mvista.com>
---
binutils/ChangeLog | 7 +++++++
binutils/elfcomm.c | 11 +++++++++++
2 files changed, 18 insertions(+)
Index: git/binutils/elfcomm.c
===================================================================
--- git.orig/binutils/elfcomm.c
+++ git/binutils/elfcomm.c
@@ -466,8 +466,12 @@ process_archive_index_and_symbols (struc
{
size_t got;
unsigned long size;
+ char fmag_save;
+ fmag_save = arch->arhdr.ar_fmag[0];
+ arch->arhdr.ar_fmag[0] = 0;
size = strtoul (arch->arhdr.ar_size, NULL, 10);
+ arch->arhdr.ar_fmag[0] = fmag_save;
/* PR 17531: file: 912bd7de. */
if ((signed long) size < 0)
{
@@ -655,7 +659,10 @@ setup_archive (struct archive_info *arch
if (const_strneq (arch->arhdr.ar_name, "// "))
{
/* This is the archive string table holding long member names. */
+ char fmag_save = arch->arhdr.ar_fmag[0];
+ arch->arhdr.ar_fmag[0] = 0;
arch->longnames_size = strtoul (arch->arhdr.ar_size, NULL, 10);
+ arch->arhdr.ar_fmag[0] = fmag_save;
/* PR 17531: file: 01068045. */
if (arch->longnames_size < 8)
{
@@ -758,6 +765,7 @@ get_archive_member_name (struct archive_
char *endp;
char *member_file_name;
char *member_name;
+ char fmag_save;
if (arch->longnames == NULL || arch->longnames_size == 0)
{
@@ -766,9 +774,12 @@ get_archive_member_name (struct archive_
}
arch->nested_member_origin = 0;
+ fmag_save = arch->arhdr.ar_fmag[0];
+ arch->arhdr.ar_fmag[0] = 0;
k = j = strtoul (arch->arhdr.ar_name + 1, &endp, 10);
if (arch->is_thin_archive && endp != NULL && * endp == ':')
arch->nested_member_origin = strtoul (endp + 1, NULL, 10);
+ arch->arhdr.ar_fmag[0] = fmag_save;
if (j > arch->longnames_size)
{
Index: git/bfd/ChangeLog
===================================================================
--- git.orig/bfd/ChangeLog
+++ git/bfd/ChangeLog
@@ -1,3 +1,10 @@
+2017-10-28 Alan Modra <amodra@gmail.com>
+
+ PR 22361
+ * readelf.c (process_archive_index_and_symbols): Ensure ar_size
+ field is zero terminated for strtoul.
+ (setup_archive, get_archive_member_name): Likewise.
+
2017-09-26 Alan Modra <amodra@gmail.com>
PR 22205

View File

@@ -0,0 +1,53 @@
From a67d66eb97e7613a38ffe6622d837303b3ecd31d Mon Sep 17 00:00:00 2001
From: Nick Clifton <nickc@redhat.com>
Date: Wed, 1 Nov 2017 15:21:46 +0000
Subject: [PATCH] Prevent illegal memory accesses when attempting to read
excessively large COFF line number tables.
PR 22376
* coffcode.h (coff_slurp_line_table): Check for an excessively
large line number count.
Upstream-Status: Backport
Affects: <= 2.29.1
CVE: CVE-2017-16826
Signed-off-by: Armin Kuster <akuster@mvista.com>
---
bfd/ChangeLog | 6 ++++++
bfd/coffcode.h | 8 ++++++++
2 files changed, 14 insertions(+)
Index: git/bfd/coffcode.h
===================================================================
--- git.orig/bfd/coffcode.h
+++ git/bfd/coffcode.h
@@ -4578,6 +4578,14 @@ coff_slurp_line_table (bfd *abfd, asecti
BFD_ASSERT (asect->lineno == NULL);
+ if (asect->lineno_count > asect->size)
+ {
+ _bfd_error_handler
+ (_("%B: warning: line number count (%#lx) exceeds section size (%#lx)"),
+ abfd, (unsigned long) asect->lineno_count, (unsigned long) asect->size);
+ return FALSE;
+ }
+
amt = ((bfd_size_type) asect->lineno_count + 1) * sizeof (alent);
lineno_cache = (alent *) bfd_alloc (abfd, amt);
if (lineno_cache == NULL)
Index: git/bfd/ChangeLog
===================================================================
--- git.orig/bfd/ChangeLog
+++ git/bfd/ChangeLog
@@ -1,3 +1,9 @@
+2017-11-01 Nick Clifton <nickc@redhat.com>
+
+ PR 22376
+ * coffcode.h (coff_slurp_line_table): Check for an excessively
+ large line number count.
+
2017-10-28 Alan Modra <amodra@gmail.com>
PR 22361

View File

@@ -0,0 +1,95 @@
From 0301ce1486b1450f219202677f30d0fa97335419 Mon Sep 17 00:00:00 2001
From: Alan Modra <amodra@gmail.com>
Date: Tue, 17 Oct 2017 16:43:47 +1030
Subject: [PATCH] PR22306, Invalid free() in slurp_symtab()
PR 22306
* aoutx.h (aout_get_external_symbols): Handle stringsize of zero,
and error for any other size that doesn't cover the header word.
Upstream-Status: Backport
Affects: <= 2.29.1
CVE: CVE-2017-16827
Signed-off-by: Armin Kuster <akuster@mvista.com>
---
bfd/ChangeLog | 6 ++++++
bfd/aoutx.h | 45 ++++++++++++++++++++++++++++++---------------
2 files changed, 36 insertions(+), 15 deletions(-)
Index: git/bfd/aoutx.h
===================================================================
--- git.orig/bfd/aoutx.h
+++ git/bfd/aoutx.h
@@ -1352,27 +1352,42 @@ aout_get_external_symbols (bfd *abfd)
|| bfd_bread ((void *) string_chars, amt, abfd) != amt)
return FALSE;
stringsize = GET_WORD (abfd, string_chars);
+ if (stringsize == 0)
+ stringsize = 1;
+ else if (stringsize < BYTES_IN_WORD
+ || (size_t) stringsize != stringsize)
+ {
+ bfd_set_error (bfd_error_bad_value);
+ return FALSE;
+ }
#ifdef USE_MMAP
- if (! bfd_get_file_window (abfd, obj_str_filepos (abfd), stringsize,
- &obj_aout_string_window (abfd), TRUE))
- return FALSE;
- strings = (char *) obj_aout_string_window (abfd).data;
-#else
- strings = (char *) bfd_malloc (stringsize + 1);
- if (strings == NULL)
- return FALSE;
-
- /* Skip space for the string count in the buffer for convenience
- when using indexes. */
- amt = stringsize - BYTES_IN_WORD;
- if (bfd_bread (strings + BYTES_IN_WORD, amt, abfd) != amt)
+ if (stringsize >= BYTES_IN_WORD)
{
- free (strings);
- return FALSE;
+ if (! bfd_get_file_window (abfd, obj_str_filepos (abfd), stringsize,
+ &obj_aout_string_window (abfd), TRUE))
+ return FALSE;
+ strings = (char *) obj_aout_string_window (abfd).data;
}
+ else
#endif
+ {
+ strings = (char *) bfd_malloc (stringsize);
+ if (strings == NULL)
+ return FALSE;
+ if (stringsize >= BYTES_IN_WORD)
+ {
+ /* Keep the string count in the buffer for convenience
+ when indexing with e_strx. */
+ amt = stringsize - BYTES_IN_WORD;
+ if (bfd_bread (strings + BYTES_IN_WORD, amt, abfd) != amt)
+ {
+ free (strings);
+ return FALSE;
+ }
+ }
+ }
/* Ensure that a zero index yields an empty string. */
strings[0] = '\0';
Index: git/bfd/ChangeLog
===================================================================
--- git.orig/bfd/ChangeLog
+++ git/bfd/ChangeLog
@@ -1,3 +1,9 @@
+2017-10-17 Alan Modra <amodra@gmail.com>
+
+ PR 22306
+ * aoutx.h (aout_get_external_symbols): Handle stringsize of zero,
+ and error for any other size that doesn't cover the header word.
+
2017-11-01 Nick Clifton <nickc@redhat.com>
PR 22376

View File

@@ -0,0 +1,79 @@
From 9c0f3d3f2017829ffd908c9893b85094985c3b58 Mon Sep 17 00:00:00 2001
From: Alan Modra <amodra@gmail.com>
Date: Thu, 5 Oct 2017 17:32:18 +1030
Subject: [PATCH] PR22239 - invalid memory read in display_debug_frames
Pointer comparisons have traps for the unwary. After adding a large
unknown value to "start", the test "start < end" depends on where
"start" is originally in memory.
PR 22239
* dwarf.c (read_cie): Don't compare "start" and "end" pointers
after adding a possibly wild length to "start", compare the length
to the difference of the pointers instead. Remove now redundant
"negative" length test.
Upstream-Status: Backport
Affects: <= 2.29.1
CVE: CVE-2017-16828 patch1
Signed-off-by: Armin Kuster <akuster@mvista.com>
---
binutils/ChangeLog | 8 ++++++++
binutils/dwarf.c | 15 ++++-----------
2 files changed, 12 insertions(+), 11 deletions(-)
Index: git/binutils/dwarf.c
===================================================================
--- git.orig/binutils/dwarf.c
+++ git/binutils/dwarf.c
@@ -6652,14 +6652,14 @@ read_cie (unsigned char *start, unsigned
{
READ_ULEB (augmentation_data_len);
augmentation_data = start;
- start += augmentation_data_len;
/* PR 17512: file: 11042-2589-0.004. */
- if (start > end)
+ if (augmentation_data_len > (size_t) (end - start))
{
warn (_("Augmentation data too long: %#lx, expected at most %#lx\n"),
- augmentation_data_len, (long)((end - start) + augmentation_data_len));
+ augmentation_data_len, (unsigned long) (end - start));
return end;
}
+ start += augmentation_data_len;
}
if (augmentation_data_len)
@@ -6672,14 +6672,7 @@ read_cie (unsigned char *start, unsigned
q = augmentation_data;
qend = q + augmentation_data_len;
- /* PR 17531: file: 015adfaa. */
- if (qend < q)
- {
- warn (_("Negative augmentation data length: 0x%lx"), augmentation_data_len);
- augmentation_data_len = 0;
- }
-
- while (p < end && q < augmentation_data + augmentation_data_len)
+ while (p < end && q < qend)
{
if (*p == 'L')
q++;
Index: git/binutils/ChangeLog
===================================================================
--- git.orig/binutils/ChangeLog
+++ git/binutils/ChangeLog
@@ -1,3 +1,11 @@
+2017-10-05 Alan Modra <amodra@gmail.com>
+
+ PR 22239
+ * dwarf.c (read_cie): Don't compare "start" and "end" pointers
+ after adding a possibly wild length to "start", compare the length
+ to the difference of the pointers instead. Remove now redundant
+ "negative" length test.
+
2017-09-27 Nick Clifton <nickc@redhat.com>
PR 22219

View File

@@ -0,0 +1,149 @@
From bf59c5d5f4f5b8b4da1f5f605cfa546f8029b43d Mon Sep 17 00:00:00 2001
From: Nick Clifton <nickc@redhat.com>
Date: Fri, 3 Nov 2017 13:57:15 +0000
Subject: [PATCH] Fix integer overflow problems when reading an ELF binary with
corrupt augmentation data.
PR 22386
* dwarf.c (read_cie): Use bfd_size_type for
augmentation_data_len.
(display_augmentation_data): New function.
(display_debug_frames): Use it.
Check for integer overflow when testing augmentation_data_len.
Upstream-Status: Backport
Affects: <= 2.29.1
CVE: CVE-2017-16828 patch2
Signed-off-by: Armin Kuster <akuster@mvista.com>
---
binutils/ChangeLog | 10 +++++++++
binutils/dwarf.c | 65 +++++++++++++++++++++++++++++++++---------------------
2 files changed, 50 insertions(+), 25 deletions(-)
Index: git/binutils/dwarf.c
===================================================================
--- git.orig/binutils/dwarf.c
+++ git/binutils/dwarf.c
@@ -6577,13 +6577,13 @@ frame_display_row (Frame_Chunk *fc, int
static unsigned char *
read_cie (unsigned char *start, unsigned char *end,
Frame_Chunk **p_cie, int *p_version,
- unsigned long *p_aug_len, unsigned char **p_aug)
+ bfd_size_type *p_aug_len, unsigned char **p_aug)
{
int version;
Frame_Chunk *fc;
unsigned int length_return;
unsigned char *augmentation_data = NULL;
- unsigned long augmentation_data_len = 0;
+ bfd_size_type augmentation_data_len = 0;
* p_cie = NULL;
/* PR 17512: file: 001-228113-0.004. */
@@ -6653,10 +6653,11 @@ read_cie (unsigned char *start, unsigned
READ_ULEB (augmentation_data_len);
augmentation_data = start;
/* PR 17512: file: 11042-2589-0.004. */
- if (augmentation_data_len > (size_t) (end - start))
+ if (augmentation_data_len > (bfd_size_type) (end - start))
{
- warn (_("Augmentation data too long: %#lx, expected at most %#lx\n"),
- augmentation_data_len, (unsigned long) (end - start));
+ warn (_("Augmentation data too long: 0x%s, expected at most %#lx\n"),
+ dwarf_vmatoa ("x", augmentation_data_len),
+ (unsigned long) (end - start));
return end;
}
start += augmentation_data_len;
@@ -6701,6 +6702,31 @@ read_cie (unsigned char *start, unsigned
return start;
}
+/* Prints out the contents on the augmentation data array.
+ If do_wide is not enabled, then formats the output to fit into 80 columns. */
+
+static void
+display_augmentation_data (const unsigned char * data, const bfd_size_type len)
+{
+ bfd_size_type i;
+
+ i = printf (_(" Augmentation data: "));
+
+ if (do_wide || len < ((80 - i) / 3))
+ for (i = 0; i < len; ++i)
+ printf (" %02x", data[i]);
+ else
+ {
+ for (i = 0; i < len; ++i)
+ {
+ if (i % (80 / 3) == 0)
+ putchar ('\n');
+ printf (" %02x", data[i]);
+ }
+ }
+ putchar ('\n');
+}
+
static int
display_debug_frames (struct dwarf_section *section,
void *file ATTRIBUTE_UNUSED)
@@ -6729,7 +6755,7 @@ display_debug_frames (struct dwarf_secti
Frame_Chunk *cie;
int need_col_headers = 1;
unsigned char *augmentation_data = NULL;
- unsigned long augmentation_data_len = 0;
+ bfd_size_type augmentation_data_len = 0;
unsigned int encoded_ptr_size = saved_eh_addr_size;
unsigned int offset_size;
unsigned int initial_length_size;
@@ -6823,16 +6849,8 @@ display_debug_frames (struct dwarf_secti
printf (" Return address column: %d\n", fc->ra);
if (augmentation_data_len)
- {
- unsigned long i;
+ display_augmentation_data (augmentation_data, augmentation_data_len);
- printf (" Augmentation data: ");
- for (i = 0; i < augmentation_data_len; ++i)
- /* FIXME: If do_wide is FALSE, then we should
- add carriage returns at 80 columns... */
- printf (" %02x", augmentation_data[i]);
- putchar ('\n');
- }
putchar ('\n');
}
}
@@ -6988,11 +7006,13 @@ display_debug_frames (struct dwarf_secti
READ_ULEB (augmentation_data_len);
augmentation_data = start;
start += augmentation_data_len;
- /* PR 17512: file: 722-8446-0.004. */
- if (start >= end || ((signed long) augmentation_data_len) < 0)
+ /* PR 17512 file: 722-8446-0.004 and PR 22386. */
+ if (start >= end
+ || ((bfd_signed_vma) augmentation_data_len) < 0
+ || augmentation_data > start)
{
- warn (_("Corrupt augmentation data length: %lx\n"),
- augmentation_data_len);
+ warn (_("Corrupt augmentation data length: 0x%s\n"),
+ dwarf_vmatoa ("x", augmentation_data_len));
start = end;
augmentation_data = NULL;
augmentation_data_len = 0;
@@ -7014,12 +7034,7 @@ display_debug_frames (struct dwarf_secti
if (! do_debug_frames_interp && augmentation_data_len)
{
- unsigned long i;
-
- printf (" Augmentation data: ");
- for (i = 0; i < augmentation_data_len; ++i)
- printf (" %02x", augmentation_data[i]);
- putchar ('\n');
+ display_augmentation_data (augmentation_data, augmentation_data_len);
putchar ('\n');
}
}

View File

@@ -0,0 +1,82 @@
From cf54ebff3b7361989712fd9c0128a9b255578163 Mon Sep 17 00:00:00 2001
From: Alan Modra <amodra@gmail.com>
Date: Tue, 17 Oct 2017 21:57:29 +1030
Subject: [PATCH] PR22307, Heap out of bounds read in
_bfd_elf_parse_gnu_properties
When adding an unbounded increment to a pointer, you can't just check
against the end of the buffer but also must check that overflow
doesn't result in "negative" pointer movement. Pointer comparisons
are signed. Better, check the increment against the space left using
an unsigned comparison.
PR 22307
* elf-properties.c (_bfd_elf_parse_gnu_properties): Compare datasz
against size left rather than comparing pointers. Reorganise loop.
Upstream-Status: Backport
Affects: <= 2.29.1
CVE: CVE-2017-16829
Signed-off-by: Armin Kuster <akuster@mvista.com>
---
bfd/ChangeLog | 6 ++++++
bfd/elf-properties.c | 18 +++++++++---------
2 files changed, 15 insertions(+), 9 deletions(-)
Index: git/bfd/elf-properties.c
===================================================================
--- git.orig/bfd/elf-properties.c
+++ git/bfd/elf-properties.c
@@ -93,15 +93,20 @@ bad_size:
return FALSE;
}
- while (1)
+ while (ptr != ptr_end)
{
- unsigned int type = bfd_h_get_32 (abfd, ptr);
- unsigned int datasz = bfd_h_get_32 (abfd, ptr + 4);
+ unsigned int type;
+ unsigned int datasz;
elf_property *prop;
+ if ((size_t) (ptr_end - ptr) < 8)
+ goto bad_size;
+
+ type = bfd_h_get_32 (abfd, ptr);
+ datasz = bfd_h_get_32 (abfd, ptr + 4);
ptr += 8;
- if ((ptr + datasz) > ptr_end)
+ if (datasz > (size_t) (ptr_end - ptr))
{
_bfd_error_handler
(_("warning: %B: corrupt GNU_PROPERTY_TYPE (%ld) type (0x%x) datasz: 0x%x"),
@@ -182,11 +187,6 @@ bad_size:
next:
ptr += (datasz + (align_size - 1)) & ~ (align_size - 1);
- if (ptr == ptr_end)
- break;
-
- if (ptr > (ptr_end - 8))
- goto bad_size;
}
return TRUE;
Index: git/bfd/ChangeLog
===================================================================
--- git.orig/bfd/ChangeLog
+++ git/bfd/ChangeLog
@@ -1,4 +1,10 @@
2017-10-17 Alan Modra <amodra@gmail.com>
+
+ PR 22307
+ * elf-properties.c (_bfd_elf_parse_gnu_properties): Compare datasz
+ against size left rather than comparing pointers. Reorganise loop.
+
+2017-10-17 Alan Modra <amodra@gmail.com>
PR 22306
* aoutx.h (aout_get_external_symbols): Handle stringsize of zero,

View File

@@ -0,0 +1,91 @@
From 6ab2c4ed51f9c4243691755e1b1d2149c6a426f4 Mon Sep 17 00:00:00 2001
From: Mingi Cho <mgcho.minic@gmail.com>
Date: Thu, 2 Nov 2017 17:01:08 +0000
Subject: [PATCH] Work around integer overflows when readelf is checking for
corrupt ELF notes when run on a 32-bit host.
PR 22384
* readelf.c (print_gnu_property_note): Improve overflow checks so
that they will work on a 32-bit host.
Upstream-Status: Backport
Affects: <= 2.29.1
CVE: CVE-2017-16830
Signed-off-by: Armin Kuster <akuster@mvista.com>
---
binutils/ChangeLog | 6 ++++++
binutils/readelf.c | 33 +++++++++++++++++----------------
2 files changed, 23 insertions(+), 16 deletions(-)
Index: git/binutils/readelf.c
===================================================================
--- git.orig/binutils/readelf.c
+++ git/binutils/readelf.c
@@ -16431,15 +16431,24 @@ print_gnu_property_note (Elf_Internal_No
return;
}
- while (1)
+ while (ptr < ptr_end)
{
unsigned int j;
- unsigned int type = byte_get (ptr, 4);
- unsigned int datasz = byte_get (ptr + 4, 4);
+ unsigned int type;
+ unsigned int datasz;
+
+ if ((size_t) (ptr_end - ptr) < 8)
+ {
+ printf (_("<corrupt descsz: %#lx>\n"), pnote->descsz);
+ break;
+ }
+
+ type = byte_get (ptr, 4);
+ datasz = byte_get (ptr + 4, 4);
ptr += 8;
- if ((ptr + datasz) > ptr_end)
+ if (datasz > (size_t) (ptr_end - ptr))
{
printf (_("<corrupt type (%#x) datasz: %#x>\n"),
type, datasz);
@@ -16520,19 +16529,11 @@ next:
ptr += ((datasz + (size - 1)) & ~ (size - 1));
if (ptr == ptr_end)
break;
- else
- {
- if (do_wide)
- printf (", ");
- else
- printf ("\n\t");
- }
- if (ptr > (ptr_end - 8))
- {
- printf (_("<corrupt descsz: %#lx>\n"), pnote->descsz);
- break;
- }
+ if (do_wide)
+ printf (", ");
+ else
+ printf ("\n\t");
}
printf ("\n");
Index: git/binutils/ChangeLog
===================================================================
--- git.orig/binutils/ChangeLog
+++ git/binutils/ChangeLog
@@ -1,3 +1,9 @@
+2017-11-02 Mingi Cho <mgcho.minic@gmail.com>
+
+ PR 22384
+ * readelf.c (print_gnu_property_note): Improve overflow checks so
+ that they will work on a 32-bit host.
+
2017-10-05 Alan Modra <amodra@gmail.com>
PR 22239

View File

@@ -0,0 +1,77 @@
From 6cee897971d4d7cd37d2a686bb6d2aa3e759c8ca Mon Sep 17 00:00:00 2001
From: Nick Clifton <nickc@redhat.com>
Date: Fri, 3 Nov 2017 11:55:21 +0000
Subject: [PATCH] Fix excessive memory allocation attempts and possible integer
overfloaws when attempting to read a COFF binary with a corrupt symbol count.
PR 22385
* coffgen.c (_bfd_coff_get_external_symbols): Check for an
overlarge raw syment count.
(coff_get_normalized_symtab): Likewise.
Upstream-Status: Backport
Affects: <= 2.29.1
CVE: CVE-2017-16831
Signed-off-by: Armin Kuster <akuster@mvista.com>
---
bfd/ChangeLog | 8 ++++++++
bfd/coffgen.c | 17 +++++++++++++++--
2 files changed, 23 insertions(+), 2 deletions(-)
Index: git/bfd/ChangeLog
===================================================================
--- git.orig/bfd/ChangeLog
+++ git/bfd/ChangeLog
@@ -1,3 +1,11 @@
+2017-11-03 Mingi Cho <mgcho.minic@gmail.com>
+ Nick Clifton <nickc@redhat.com>
+
+ PR 22385
+ * coffgen.c (_bfd_coff_get_external_symbols): Check for an
+ overlarge raw syment count.
+ (coff_get_normalized_symtab): Likewise.
+
2017-10-17 Alan Modra <amodra@gmail.com>
PR 22307
Index: git/bfd/coffgen.c
===================================================================
--- git.orig/bfd/coffgen.c
+++ git/bfd/coffgen.c
@@ -1640,13 +1640,23 @@ _bfd_coff_get_external_symbols (bfd *abf
size = obj_raw_syment_count (abfd) * symesz;
if (size == 0)
return TRUE;
+ /* Check for integer overflow and for unreasonable symbol counts. */
+ if (size < obj_raw_syment_count (abfd)
+ || (bfd_get_file_size (abfd) > 0
+ && size > bfd_get_file_size (abfd)))
+
+ {
+ _bfd_error_handler (_("%B: corrupt symbol count: %#Lx"),
+ abfd, obj_raw_syment_count (abfd));
+ return FALSE;
+ }
syms = bfd_malloc (size);
if (syms == NULL)
{
/* PR 21013: Provide an error message when the alloc fails. */
- _bfd_error_handler (_("%B: Not enough memory to allocate space for %lu symbols"),
- abfd, size);
+ _bfd_error_handler (_("%B: not enough memory to allocate space for %#Lx symbols of size %#Lx"),
+ abfd, obj_raw_syment_count (abfd), symesz);
return FALSE;
}
@@ -1790,6 +1800,9 @@ coff_get_normalized_symtab (bfd *abfd)
return NULL;
size = obj_raw_syment_count (abfd) * sizeof (combined_entry_type);
+ /* Check for integer overflow. */
+ if (size < obj_raw_syment_count (abfd))
+ return NULL;
internal = (combined_entry_type *) bfd_zalloc (abfd, size);
if (internal == NULL && size != 0)
return NULL;

View File

@@ -0,0 +1,61 @@
From 0bb6961f18b8e832d88b490d421ca56cea16c45b Mon Sep 17 00:00:00 2001
From: Nick Clifton <nickc@redhat.com>
Date: Tue, 31 Oct 2017 14:29:40 +0000
Subject: [PATCH] Fix illegal memory access triggered when parsing a PE binary
with a corrupt data dictionary.
PR 22373
* peicode.h (pe_bfd_read_buildid): Check for invalid size and data
offset values.
Upstrem-Status: Backport
Affects: <= 2.29.1
CVE: CVE-2017-16832
Signed-off-by: Armin Kuster <akuster@mvista.com>
---
bfd/ChangeLog | 6 ++++++
bfd/peicode.h | 9 ++++++---
2 files changed, 12 insertions(+), 3 deletions(-)
Index: git/bfd/peicode.h
===================================================================
--- git.orig/bfd/peicode.h
+++ git/bfd/peicode.h
@@ -1303,7 +1303,6 @@ pe_bfd_read_buildid (bfd *abfd)
bfd_byte *data = 0;
bfd_size_type dataoff;
unsigned int i;
-
bfd_vma addr = extra->DataDirectory[PE_DEBUG_DATA].VirtualAddress;
bfd_size_type size = extra->DataDirectory[PE_DEBUG_DATA].Size;
@@ -1327,8 +1326,12 @@ pe_bfd_read_buildid (bfd *abfd)
dataoff = addr - section->vma;
- /* PR 20605: Make sure that the data is really there. */
- if (dataoff + size > section->size)
+ /* PR 20605 and 22373: Make sure that the data is really there.
+ Note - since we are dealing with unsigned quantities we have
+ to be careful to check for potential overflows. */
+ if (dataoff > section->size
+ || size > section->size
+ || dataoff + size > section->size)
{
_bfd_error_handler (_("%B: Error: Debug Data ends beyond end of debug directory."),
abfd);
Index: git/bfd/ChangeLog
===================================================================
--- git.orig/bfd/ChangeLog
+++ git/bfd/ChangeLog
@@ -1,3 +1,9 @@
+2017-10-31 Nick Clifton <nickc@redhat.com>
+
+ PR 22373
+ * peicode.h (pe_bfd_read_buildid): Check for invalid size and data
+ offset values.
+
2017-11-03 Mingi Cho <mgcho.minic@gmail.com>
Nick Clifton <nickc@redhat.com>

View File

@@ -0,0 +1,78 @@
From 80a0437873045cc08753fcac4af154e2931a99fd Mon Sep 17 00:00:00 2001
From: Nick Clifton <nickc@redhat.com>
Date: Thu, 16 Nov 2017 14:53:32 +0000
Subject: [PATCH] Prevent illegal memory accesses when parsing incorrecctly
formated core notes.
PR 22421
* elf.c (elfcore_grok_netbsd_procinfo): Check that the note is big enough.
(elfcore_grok_openbsd_procinfo): Likewise.
(elfcore_grok_nto_status): Likewise.
Upstream-Status: Backport
Affects: <= 2.29.1
CVE: CVE-2017-17080
Signed-off-by: Armin Kuster <akuster@mvista.com>
---
bfd/ChangeLog | 7 +++++++
bfd/elf.c | 10 ++++++++++
2 files changed, 17 insertions(+)
Index: git/bfd/elf.c
===================================================================
--- git.orig/bfd/elf.c
+++ git/bfd/elf.c
@@ -9862,6 +9862,7 @@ elfcore_grok_freebsd_psinfo (bfd *abfd,
/* Check for version 1 in pr_version. */
if (bfd_h_get_32 (abfd, (bfd_byte *) note->descdata) != 1)
return FALSE;
+
offset = 4;
/* Skip over pr_psinfosz. */
@@ -10030,6 +10031,9 @@ elfcore_netbsd_get_lwpid (Elf_Internal_N
static bfd_boolean
elfcore_grok_netbsd_procinfo (bfd *abfd, Elf_Internal_Note *note)
{
+ if (note->descsz <= 0x7c + 31)
+ return FALSE;
+
/* Signal number at offset 0x08. */
elf_tdata (abfd)->core->signal
= bfd_h_get_32 (abfd, (bfd_byte *) note->descdata + 0x08);
@@ -10114,6 +10118,9 @@ elfcore_grok_netbsd_note (bfd *abfd, Elf
static bfd_boolean
elfcore_grok_openbsd_procinfo (bfd *abfd, Elf_Internal_Note *note)
{
+ if (note->descsz <= 0x48 + 31)
+ return FALSE;
+
/* Signal number at offset 0x08. */
elf_tdata (abfd)->core->signal
= bfd_h_get_32 (abfd, (bfd_byte *) note->descdata + 0x08);
@@ -10185,6 +10192,9 @@ elfcore_grok_nto_status (bfd *abfd, Elf_
short sig;
unsigned flags;
+ if (note->descsz < 16)
+ return FALSE;
+
/* nto_procfs_status 'pid' field is at offset 0. */
elf_tdata (abfd)->core->pid = bfd_get_32 (abfd, (bfd_byte *) ddata);
Index: git/bfd/ChangeLog
===================================================================
--- git.orig/bfd/ChangeLog
+++ git/bfd/ChangeLog
@@ -1,3 +1,10 @@
+2017-11-16 Nick Clifton <nickc@redhat.com>
+
+ PR 22421
+ * elf.c (elfcore_grok_netbsd_procinfo): Check that the note is big enough.
+ (elfcore_grok_openbsd_procinfo): Likewise.
+ (elfcore_grok_nto_status): Likewise.
+
2017-10-31 Nick Clifton <nickc@redhat.com>
PR 22373

View File

@@ -0,0 +1,366 @@
From b23dc97fe237a1d9e850d7cbeee066183a00630b Mon Sep 17 00:00:00 2001
From: Nick Clifton <nickc@redhat.com>
Date: Tue, 28 Nov 2017 13:20:31 +0000
Subject: [PATCH] Fix a memory access violation when attempting to parse a
corrupt COFF binary with a relocation that points beyond the end of the
section to be relocated.
PR 22506
* reloc.c (reloc_offset_in_range): Rename to
bfd_reloc_offset_in_range and export.
(bfd_perform_relocation): Rename function invocation.
(bfd_install_relocation): Likewise.
(bfd_final_link_relocate): Likewise.
* bfd-in2.h: Regenerate.
* coff-arm.c (coff_arm_reloc): Use bfd_reloc_offset_in_range.
* coff-i386.c (coff_i386_reloc): Likewise.
* coff-i860.c (coff_i860_reloc): Likewise.
* coff-m68k.c (mk68kcoff_common_addend_special_fn): Likewise.
* coff-m88k.c (m88k_special_reloc): Likewise.
* coff-mips.c (mips_reflo_reloc): Likewise.
* coff-x86_64.c (coff_amd64_reloc): Likewise.
Upstream-Status: Backport
Affects: <= 2.29.1
CVE: CVE-2017-17121
Signed-off-by: Armin Kuster <akuster@mvista.com>
---
bfd/ChangeLog | 17 +++++++++++++++
bfd/bfd-in2.h | 6 +++++
bfd/coff-arm.c | 65 ++++++++++++++++++++++++++++++-------------------------
bfd/coff-i386.c | 5 +++++
bfd/coff-i860.c | 5 +++++
bfd/coff-m68k.c | 5 +++++
bfd/coff-m88k.c | 9 +++++++-
bfd/coff-mips.c | 6 +++++
bfd/coff-x86_64.c | 16 +++++---------
bfd/reloc.c | 40 +++++++++++++++++++++++++++++-----
10 files changed, 126 insertions(+), 48 deletions(-)
Index: git/bfd/bfd-in2.h
===================================================================
--- git.orig/bfd/bfd-in2.h
+++ git/bfd/bfd-in2.h
@@ -2661,6 +2661,12 @@ bfd_reloc_status_type bfd_check_overflow
unsigned int addrsize,
bfd_vma relocation);
+bfd_boolean bfd_reloc_offset_in_range
+ (reloc_howto_type *howto,
+ bfd *abfd,
+ asection *section,
+ bfd_size_type offset);
+
bfd_reloc_status_type bfd_perform_relocation
(bfd *abfd,
arelent *reloc_entry,
Index: git/bfd/coff-arm.c
===================================================================
--- git.orig/bfd/coff-arm.c
+++ git/bfd/coff-arm.c
@@ -109,41 +109,46 @@ coff_arm_reloc (bfd *abfd,
x = ((x & ~howto->dst_mask) \
| (((x & howto->src_mask) + diff) & howto->dst_mask))
- if (diff != 0)
- {
- reloc_howto_type *howto = reloc_entry->howto;
- unsigned char *addr = (unsigned char *) data + reloc_entry->address;
+ if (diff != 0)
+ {
+ reloc_howto_type *howto = reloc_entry->howto;
+ unsigned char *addr = (unsigned char *) data + reloc_entry->address;
+
+ if (! bfd_reloc_offset_in_range (howto, abfd, input_section,
+ reloc_entry->address
+ * bfd_octets_per_byte (abfd)))
+ return bfd_reloc_outofrange;
+
+ switch (howto->size)
+ {
+ case 0:
+ {
+ char x = bfd_get_8 (abfd, addr);
+ DOIT (x);
+ bfd_put_8 (abfd, x, addr);
+ }
+ break;
- switch (howto->size)
+ case 1:
{
- case 0:
- {
- char x = bfd_get_8 (abfd, addr);
- DOIT (x);
- bfd_put_8 (abfd, x, addr);
- }
- break;
-
- case 1:
- {
- short x = bfd_get_16 (abfd, addr);
- DOIT (x);
- bfd_put_16 (abfd, (bfd_vma) x, addr);
- }
- break;
-
- case 2:
- {
- long x = bfd_get_32 (abfd, addr);
- DOIT (x);
- bfd_put_32 (abfd, (bfd_vma) x, addr);
- }
- break;
+ short x = bfd_get_16 (abfd, addr);
+ DOIT (x);
+ bfd_put_16 (abfd, (bfd_vma) x, addr);
+ }
+ break;
- default:
- abort ();
+ case 2:
+ {
+ long x = bfd_get_32 (abfd, addr);
+ DOIT (x);
+ bfd_put_32 (abfd, (bfd_vma) x, addr);
}
- }
+ break;
+
+ default:
+ abort ();
+ }
+ }
/* Now let bfd_perform_relocation finish everything up. */
return bfd_reloc_continue;
Index: git/bfd/coff-i386.c
===================================================================
--- git.orig/bfd/coff-i386.c
+++ git/bfd/coff-i386.c
@@ -144,6 +144,11 @@ coff_i386_reloc (bfd *abfd,
reloc_howto_type *howto = reloc_entry->howto;
unsigned char *addr = (unsigned char *) data + reloc_entry->address;
+ if (! bfd_reloc_offset_in_range (howto, abfd, input_section,
+ reloc_entry->address
+ * bfd_octets_per_byte (abfd)))
+ return bfd_reloc_outofrange;
+
switch (howto->size)
{
case 0:
Index: git/bfd/coff-i860.c
===================================================================
--- git.orig/bfd/coff-i860.c
+++ git/bfd/coff-i860.c
@@ -95,6 +95,11 @@ coff_i860_reloc (bfd *abfd,
reloc_howto_type *howto = reloc_entry->howto;
unsigned char *addr = (unsigned char *) data + reloc_entry->address;
+ if (! bfd_reloc_offset_in_range (howto, abfd, input_section,
+ reloc_entry->address
+ * bfd_octets_per_byte (abfd)))
+ return bfd_reloc_outofrange;
+
switch (howto->size)
{
case 0:
Index: git/bfd/coff-m68k.c
===================================================================
--- git.orig/bfd/coff-m68k.c
+++ git/bfd/coff-m68k.c
@@ -305,6 +305,11 @@ m68kcoff_common_addend_special_fn (bfd *
reloc_howto_type *howto = reloc_entry->howto;
unsigned char *addr = (unsigned char *) data + reloc_entry->address;
+ if (! bfd_reloc_offset_in_range (howto, abfd, input_section,
+ reloc_entry->address
+ * bfd_octets_per_byte (abfd)))
+ return bfd_reloc_outofrange;
+
switch (howto->size)
{
case 0:
Index: git/bfd/coff-m88k.c
===================================================================
--- git.orig/bfd/coff-m88k.c
+++ git/bfd/coff-m88k.c
@@ -72,10 +72,17 @@ m88k_special_reloc (bfd *abfd,
{
bfd_vma output_base = 0;
bfd_vma addr = reloc_entry->address;
- bfd_vma x = bfd_get_16 (abfd, (bfd_byte *) data + addr);
+ bfd_vma x;
asection *reloc_target_output_section;
long relocation = 0;
+ if (! bfd_reloc_offset_in_range (howto, abfd, input_section,
+ reloc_entry->address
+ * bfd_octets_per_byte (abfd)))
+ return bfd_reloc_outofrange;
+
+ x = bfd_get_16 (abfd, (bfd_byte *) data + addr);
+
/* Work out which section the relocation is targeted at and the
initial relocation command value. */
Index: git/bfd/coff-mips.c
===================================================================
--- git.orig/bfd/coff-mips.c
+++ git/bfd/coff-mips.c
@@ -504,6 +504,12 @@ mips_reflo_reloc (bfd *abfd ATTRIBUTE_UN
unsigned long vallo;
struct mips_hi *next;
+ if (! bfd_reloc_offset_in_range (reloc_entry->howto, abfd,
+ input_section,
+ reloc_entry->address
+ * bfd_octets_per_byte (abfd)))
+ return bfd_reloc_outofrange;
+
/* Do the REFHI relocation. Note that we actually don't
need to know anything about the REFLO itself, except
where to find the low 16 bits of the addend needed by the
Index: git/bfd/coff-x86_64.c
===================================================================
--- git.orig/bfd/coff-x86_64.c
+++ git/bfd/coff-x86_64.c
@@ -143,16 +143,10 @@ coff_amd64_reloc (bfd *abfd,
reloc_howto_type *howto = reloc_entry->howto;
unsigned char *addr = (unsigned char *) data + reloc_entry->address;
- /* FIXME: We do not have an end address for data, so we cannot
- accurately range check any addresses computed against it.
- cf: PR binutils/17512: file: 1085-1761-0.004.
- For now we do the best that we can. */
- if (addr < (unsigned char *) data
- || addr > ((unsigned char *) data) + input_section->size)
- {
- bfd_set_error (bfd_error_bad_value);
- return bfd_reloc_notsupported;
- }
+ if (! bfd_reloc_offset_in_range (howto, abfd, input_section,
+ reloc_entry->address
+ * bfd_octets_per_byte (abfd)))
+ return bfd_reloc_outofrange;
switch (howto->size)
{
Index: git/bfd/reloc.c
===================================================================
--- git.orig/bfd/reloc.c
+++ git/bfd/reloc.c
@@ -538,12 +538,31 @@ bfd_check_overflow (enum complain_overfl
return flag;
}
+/*
+FUNCTION
+ bfd_reloc_offset_in_range
+
+SYNOPSIS
+ bfd_boolean bfd_reloc_offset_in_range
+ (reloc_howto_type *howto,
+ bfd *abfd,
+ asection *section,
+ bfd_size_type offset);
+
+DESCRIPTION
+ Returns TRUE if the reloc described by @var{HOWTO} can be
+ applied at @var{OFFSET} octets in @var{SECTION}.
+
+*/
+
/* HOWTO describes a relocation, at offset OCTET. Return whether the
relocation field is within SECTION of ABFD. */
-static bfd_boolean
-reloc_offset_in_range (reloc_howto_type *howto, bfd *abfd,
- asection *section, bfd_size_type octet)
+bfd_boolean
+bfd_reloc_offset_in_range (reloc_howto_type *howto,
+ bfd *abfd,
+ asection *section,
+ bfd_size_type octet)
{
bfd_size_type octet_end = bfd_get_section_limit_octets (abfd, section);
bfd_size_type reloc_size = bfd_get_reloc_size (howto);
@@ -617,6 +636,11 @@ bfd_perform_relocation (bfd *abfd,
if (howto && howto->special_function)
{
bfd_reloc_status_type cont;
+
+ /* Note - we do not call bfd_reloc_offset_in_range here as the
+ reloc_entry->address field might actually be valid for the
+ backend concerned. It is up to the special_function itself
+ to call bfd_reloc_offset_in_range if needed. */
cont = howto->special_function (abfd, reloc_entry, symbol, data,
input_section, output_bfd,
error_message);
@@ -637,7 +661,7 @@ bfd_perform_relocation (bfd *abfd,
/* Is the address of the relocation really within the section? */
octets = reloc_entry->address * bfd_octets_per_byte (abfd);
- if (!reloc_offset_in_range (howto, abfd, input_section, octets))
+ if (!bfd_reloc_offset_in_range (howto, abfd, input_section, octets))
return bfd_reloc_outofrange;
/* Work out which section the relocation is targeted at and the
@@ -1003,6 +1027,10 @@ bfd_install_relocation (bfd *abfd,
{
bfd_reloc_status_type cont;
+ /* Note - we do not call bfd_reloc_offset_in_range here as the
+ reloc_entry->address field might actually be valid for the
+ backend concerned. It is up to the special_function itself
+ to call bfd_reloc_offset_in_range if needed. */
/* XXX - The special_function calls haven't been fixed up to deal
with creating new relocations and section contents. */
cont = howto->special_function (abfd, reloc_entry, symbol,
@@ -1025,7 +1053,7 @@ bfd_install_relocation (bfd *abfd,
/* Is the address of the relocation really within the section? */
octets = reloc_entry->address * bfd_octets_per_byte (abfd);
- if (!reloc_offset_in_range (howto, abfd, input_section, octets))
+ if (!bfd_reloc_offset_in_range (howto, abfd, input_section, octets))
return bfd_reloc_outofrange;
/* Work out which section the relocation is targeted at and the
@@ -1363,7 +1391,7 @@ _bfd_final_link_relocate (reloc_howto_ty
bfd_size_type octets = address * bfd_octets_per_byte (input_bfd);
/* Sanity check the address. */
- if (!reloc_offset_in_range (howto, input_bfd, input_section, octets))
+ if (!bfd_reloc_offset_in_range (howto, input_bfd, input_section, octets))
return bfd_reloc_outofrange;
/* This function assumes that we are dealing with a basic relocation
Index: git/bfd/ChangeLog
===================================================================
--- git.orig/bfd/ChangeLog
+++ git/bfd/ChangeLog
@@ -1,3 +1,20 @@
+2017-11-28 Nick Clifton <nickc@redhat.com>
+
+ PR 22506
+ * reloc.c (reloc_offset_in_range): Rename to
+ bfd_reloc_offset_in_range and export.
+ (bfd_perform_relocation): Rename function invocation.
+ (bfd_install_relocation): Likewise.
+ (bfd_final_link_relocate): Likewise.
+ * bfd-in2.h: Regenerate.
+ * coff-arm.c (coff_arm_reloc): Use bfd_reloc_offset_in_range.
+ * coff-i386.c (coff_i386_reloc): Likewise.
+ * coff-i860.c (coff_i860_reloc): Likewise.
+ * coff-m68k.c (mk68kcoff_common_addend_special_fn): Likewise.
+ * coff-m88k.c (m88k_special_reloc): Likewise.
+ * coff-mips.c (mips_reflo_reloc): Likewise.
+ * coff-x86_64.c (coff_amd64_reloc): Likewise.
+
2017-11-16 Nick Clifton <nickc@redhat.com>
PR 22421

View File

@@ -0,0 +1,58 @@
From d785b7d4b877ed465d04072e17ca19d0f47d840f Mon Sep 17 00:00:00 2001
From: Nick Clifton <nickc@redhat.com>
Date: Wed, 29 Nov 2017 12:40:43 +0000
Subject: [PATCH] Stop objdump from attempting to allocate a huge chunk of
memory when parsing relocs in a corrupt file.
PR 22508
* objdump.c (dump_relocs_in_section): Also check the section's
relocation count to make sure that it is reasonable before
attempting to allocate space for the relocs.
Upstream-Status: Backport
Affects: <= 2.29.1
CVE: CVE-2017-17122
Signed-off-by: Armin Kuster <akuster@mvista.com>
---
binutils/ChangeLog | 7 +++++++
binutils/objdump.c | 11 ++++++++++-
2 files changed, 17 insertions(+), 1 deletion(-)
Index: git/binutils/objdump.c
===================================================================
--- git.orig/binutils/objdump.c
+++ git/binutils/objdump.c
@@ -3381,7 +3381,16 @@ dump_relocs_in_section (bfd *abfd,
}
if ((bfd_get_file_flags (abfd) & (BFD_IN_MEMORY | BFD_LINKER_CREATED)) == 0
- && (ufile_ptr) relsize > bfd_get_file_size (abfd))
+ && (((ufile_ptr) relsize > bfd_get_file_size (abfd))
+ /* Also check the section's reloc count since if this is negative
+ (or very large) the computation in bfd_get_reloc_upper_bound
+ may have resulted in returning a small, positive integer.
+ See PR 22508 for a reproducer.
+
+ Note - we check against file size rather than section size as
+ it is possible for there to be more relocs that apply to a
+ section than there are bytes in that section. */
+ || (section->reloc_count > bfd_get_file_size (abfd))))
{
printf (" (too many: 0x%x)\n", section->reloc_count);
bfd_set_error (bfd_error_file_truncated);
Index: git/binutils/ChangeLog
===================================================================
--- git.orig/binutils/ChangeLog
+++ git/binutils/ChangeLog
@@ -1,3 +1,10 @@
+2017-11-29 Nick Clifton <nickc@redhat.com>
+
+ PR 22508
+ * objdump.c (dump_relocs_in_section): Also check the section's
+ relocation count to make sure that it is reasonable before
+ attempting to allocate space for the relocs.
+
2017-11-02 Mingi Cho <mgcho.minic@gmail.com>
PR 22384

View File

@@ -0,0 +1,33 @@
From 4581a1c7d304ce14e714b27522ebf3d0188d6543 Mon Sep 17 00:00:00 2001
From: Nick Clifton <nickc@redhat.com>
Date: Wed, 29 Nov 2017 17:12:12 +0000
Subject: [PATCH] Check for a NULL symbol pointer when reading relocs from a
COFF based file.
PR 22509
* coffcode.h (coff_slurp_reloc_table): Check for a NULL symbol
pointer when processing relocs.
Upstream-Status: Backport
Affects: <= 2.29.1
CVE: CVE-2017-17123
Signed-off-by: Armin Kuster <akuster@mvista.com>
---
bfd/ChangeLog | 6 ++++++
bfd/coffcode.h | 2 +-
2 files changed, 7 insertions(+), 1 deletion(-)
Index: git/bfd/coffcode.h
===================================================================
--- git.orig/bfd/coffcode.h
+++ git/bfd/coffcode.h
@@ -5326,7 +5326,7 @@ coff_slurp_reloc_table (bfd * abfd, sec_
#else
cache_ptr->address = dst.r_vaddr;
- if (dst.r_symndx != -1)
+ if (dst.r_symndx != -1 && symbols != NULL)
{
if (dst.r_symndx < 0 || dst.r_symndx >= obj_conv_table_size (abfd))
{

View File

@@ -0,0 +1,47 @@
From b0029dce6867de1a2828293177b0e030d2f0f03c Mon Sep 17 00:00:00 2001
From: Nick Clifton <nickc@redhat.com>
Date: Tue, 28 Nov 2017 18:00:29 +0000
Subject: [PATCH] Prevent a memory exhaustion problem when trying to read in
strings from a COFF binary with a corrupt string table size.
PR 22507
* coffgen.c (_bfd_coff_read_string_table): Check for an excessive
size of the external string table.
Upstream-Status: Backport
Affects binutls <= 2.29.1
CVE: CVE-2017-17124
Signed-off-by: Armin Kuster <akuster@mvista.com>
---
bfd/ChangeLog | 6 ++++++
bfd/coffgen.c | 4 ++--
2 files changed, 8 insertions(+), 2 deletions(-)
Index: git/bfd/coffgen.c
===================================================================
--- git.orig/bfd/coffgen.c
+++ git/bfd/coffgen.c
@@ -1709,7 +1709,7 @@ _bfd_coff_read_string_table (bfd *abfd)
#endif
}
- if (strsize < STRING_SIZE_SIZE)
+ if (strsize < STRING_SIZE_SIZE || strsize > bfd_get_file_size (abfd))
{
_bfd_error_handler
/* xgettext: c-format */
Index: git/bfd/ChangeLog
===================================================================
--- git.orig/bfd/ChangeLog
+++ git/bfd/ChangeLog
@@ -1,3 +1,9 @@
+2017-11-28 Nick Clifton <nickc@redhat.com>
+
+ PR 22507
+ * coffgen.c (_bfd_coff_read_string_table): Check for an excessive
+ size of the external string table.
+
2018-03-28 Eric Botcazou <ebotcazou@adacore.com>
PR ld/22972

View File

@@ -0,0 +1,129 @@
From 160b1a618ad94988410dc81fce9189fcda5b7ff4 Mon Sep 17 00:00:00 2001
From: Alan Modra <amodra@gmail.com>
Date: Sat, 18 Nov 2017 23:18:22 +1030
Subject: [PATCH] PR22443, Global buffer overflow in
_bfd_elf_get_symbol_version_string
Symbols like *ABS* defined in bfd/section.c:global_syms are not
elf_symbol_type. They can appear on relocs and perhaps other places
in an ELF bfd, so a number of places in nm.c and objdump.c are wrong
to cast an asymbol based on the bfd being ELF. I think we lose
nothing by excluding all section symbols, not just the global_syms.
PR 22443
* nm.c (sort_symbols_by_size): Don't attempt to access
section symbol internal_elf_sym.
(print_symbol): Likewise. Don't call bfd_get_symbol_version_string
for section symbols.
* objdump.c (compare_symbols): Don't attempt to access
section symbol internal_elf_sym.
(objdump_print_symname): Don't call bfd_get_symbol_version_string
for section symbols.
Upstream-Status: Backport
Affects: <= 2.29.1
CVE: CVE-2017-17125
Signed-off-by: Armin Kuster <akuster@mvista.com>
---
binutils/ChangeLog | 12 ++++++++++++
binutils/nm.c | 17 ++++++++++-------
binutils/objdump.c | 6 +++---
3 files changed, 25 insertions(+), 10 deletions(-)
Index: git/binutils/nm.c
===================================================================
--- git.orig/binutils/nm.c
+++ git/binutils/nm.c
@@ -765,7 +765,6 @@ sort_symbols_by_size (bfd *abfd, bfd_boo
asection *sec;
bfd_vma sz;
asymbol *temp;
- int synthetic = (sym->flags & BSF_SYNTHETIC);
if (from + size < fromend)
{
@@ -782,10 +781,13 @@ sort_symbols_by_size (bfd *abfd, bfd_boo
sec = bfd_get_section (sym);
/* Synthetic symbols don't have a full type set of data available, thus
- we can't rely on that information for the symbol size. */
- if (!synthetic && bfd_get_flavour (abfd) == bfd_target_elf_flavour)
+ we can't rely on that information for the symbol size. Ditto for
+ bfd/section.c:global_syms like *ABS*. */
+ if ((sym->flags & (BSF_SECTION_SYM | BSF_SYNTHETIC)) == 0
+ && bfd_get_flavour (abfd) == bfd_target_elf_flavour)
sz = ((elf_symbol_type *) sym)->internal_elf_sym.st_size;
- else if (!synthetic && bfd_is_com_section (sec))
+ else if ((sym->flags & (BSF_SECTION_SYM | BSF_SYNTHETIC)) == 0
+ && bfd_is_com_section (sec))
sz = sym->value;
else
{
@@ -874,8 +876,9 @@ print_symbol (bfd * abfd,
info.sinfo = &syminfo;
info.ssize = ssize;
- /* Synthetic symbols do not have a full symbol type set of data available. */
- if ((sym->flags & BSF_SYNTHETIC) != 0)
+ /* Synthetic symbols do not have a full symbol type set of data available.
+ Nor do bfd/section.c:global_syms like *ABS*. */
+ if ((sym->flags & (BSF_SECTION_SYM | BSF_SYNTHETIC)) != 0)
{
info.elfinfo = NULL;
info.coffinfo = NULL;
@@ -893,7 +896,7 @@ print_symbol (bfd * abfd,
const char * version_string = NULL;
bfd_boolean hidden = FALSE;
- if ((sym->flags & BSF_SYNTHETIC) == 0)
+ if ((sym->flags & (BSF_SECTION_SYM | BSF_SYNTHETIC)) == 0)
version_string = bfd_get_symbol_version_string (abfd, sym, &hidden);
if (bfd_is_und_section (bfd_get_section (sym)))
Index: git/binutils/objdump.c
===================================================================
--- git.orig/binutils/objdump.c
+++ git/binutils/objdump.c
@@ -799,10 +799,10 @@ compare_symbols (const void *ap, const v
bfd_vma asz, bsz;
asz = 0;
- if ((a->flags & BSF_SYNTHETIC) == 0)
+ if ((a->flags & (BSF_SECTION_SYM | BSF_SYNTHETIC)) == 0)
asz = ((elf_symbol_type *) a)->internal_elf_sym.st_size;
bsz = 0;
- if ((b->flags & BSF_SYNTHETIC) == 0)
+ if ((b->flags & (BSF_SECTION_SYM | BSF_SYNTHETIC)) == 0)
bsz = ((elf_symbol_type *) b)->internal_elf_sym.st_size;
if (asz != bsz)
return asz > bsz ? -1 : 1;
@@ -888,7 +888,7 @@ objdump_print_symname (bfd *abfd, struct
name = alloc;
}
- if ((sym->flags & BSF_SYNTHETIC) == 0)
+ if ((sym->flags & (BSF_SECTION_SYM | BSF_SYNTHETIC)) == 0)
version_string = bfd_get_symbol_version_string (abfd, sym, &hidden);
if (bfd_is_und_section (bfd_get_section (sym)))
Index: git/binutils/ChangeLog
===================================================================
--- git.orig/binutils/ChangeLog
+++ git/binutils/ChangeLog
@@ -1,3 +1,15 @@
+2017-11-18 Alan Modra <amodra@gmail.com>
+
+ PR 22443
+ * nm.c (sort_symbols_by_size): Don't attempt to access
+ section symbol internal_elf_sym.
+ (print_symbol): Likewise. Don't call bfd_get_symbol_version_string
+ for section symbols.
+ * objdump.c (compare_symbols): Don't attempt to access
+ section symbol internal_elf_sym.
+ (objdump_print_symname): Don't call bfd_get_symbol_version_string
+ for section symbols.
+
2017-11-29 Nick Clifton <nickc@redhat.com>
PR 22508

View File

@@ -0,0 +1,58 @@
From 6aea08d9f3e3d6475a65454da488a0c51f5dc97d Mon Sep 17 00:00:00 2001
From: Nick Clifton <nickc@redhat.com>
Date: Tue, 17 Apr 2018 12:35:55 +0100
Subject: [PATCH] Fix illegal memory access when parsing corrupt DWARF
information.
PR 23064
* dwarf.c (process_cu_tu_index): Test for a potential buffer
overrun before copying signature pointer.
Upstream-Status: Backport
Affects: <= 2.30
CVE: CVE-2018-10372
Signed-off-by: Armin Kuster <akuster@mvista.com>
---
binutils/ChangeLog | 6 ++++++
binutils/dwarf.c | 13 ++++++++++++-
2 files changed, 18 insertions(+), 1 deletion(-)
Index: git/binutils/dwarf.c
===================================================================
--- git.orig/binutils/dwarf.c
+++ git/binutils/dwarf.c
@@ -8526,7 +8526,18 @@ process_cu_tu_index (struct dwarf_sectio
}
if (!do_display)
- memcpy (&this_set[row - 1].signature, ph, sizeof (uint64_t));
+ {
+ size_t num_copy = sizeof (uint64_t);
+
+ /* PR 23064: Beware of buffer overflow. */
+ if (ph + num_copy < limit)
+ memcpy (&this_set[row - 1].signature, ph, num_copy);
+ else
+ {
+ warn (_("Signature (%p) extends beyond end of space in section\n"), ph);
+ return 0;
+ }
+ }
prow = poffsets + (row - 1) * ncols * 4;
/* PR 17531: file: b8ce60a8. */
Index: git/binutils/ChangeLog
===================================================================
--- git.orig/binutils/ChangeLog
+++ git/binutils/ChangeLog
@@ -1,3 +1,9 @@
+2018-04-17 Nick Clifton <nickc@redhat.com>
+
+ PR 23064
+ * dwarf.c (process_cu_tu_index): Test for a potential buffer
+ overrun before copying signature pointer.
+
2017-11-18 Alan Modra <amodra@gmail.com>
PR 22443

View File

@@ -0,0 +1,45 @@
From 6327533b1fd29fa86f6bf34e61c332c010e3c689 Mon Sep 17 00:00:00 2001
From: Nick Clifton <nickc@redhat.com>
Date: Tue, 17 Apr 2018 14:30:07 +0100
Subject: [PATCH] Add a check for a NULL table pointer before attempting to
compute a DWARF filename.
PR 23065
* dwarf2.c (concat_filename): Check for a NULL table pointer.
Upstream-Status: Backport
Affects: <= 2.30
CVE: CVE-2018-10373
Signed-off-by: Armin Kuster <akuster@mvista.com>
---
bfd/ChangeLog | 5 +++++
bfd/dwarf2.c | 2 +-
2 files changed, 6 insertions(+), 1 deletion(-)
Index: git/bfd/dwarf2.c
===================================================================
--- git.orig/bfd/dwarf2.c
+++ git/bfd/dwarf2.c
@@ -1587,7 +1587,7 @@ concat_filename (struct line_info_table
{
char *filename;
- if (file - 1 >= table->num_files)
+ if (table == NULL || file - 1 >= table->num_files)
{
/* FILE == 0 means unknown. */
if (file)
Index: git/bfd/ChangeLog
===================================================================
--- git.orig/bfd/ChangeLog
+++ git/bfd/ChangeLog
@@ -1,3 +1,8 @@
+2018-04-17 Nick Clifton <nickc@redhat.com>
+
+ PR 23065
+ * dwarf2.c (concat_filename): Check for a NULL table pointer.
+
2017-11-28 Nick Clifton <nickc@redhat.com>
PR 22506

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,63 @@
From db0c309f4011ca94a4abc8458e27f3734dab92ac Mon Sep 17 00:00:00 2001
From: Nick Clifton <nickc@redhat.com>
Date: Tue, 24 Apr 2018 16:57:04 +0100
Subject: [PATCH] Fix an illegal memory access when trying to copy an ELF
binary with corrupt section symbols.
PR 23113
* elf.c (ignore_section_sym): Check for the output_section pointer
being NULL before dereferencing it.
Upstream-Status: Backport
Affects: <= 2.30
CVE: CVE-2018-10535
Signed-off-by: Armin Kuster <akuster@mvista.com>
---
bfd/ChangeLog | 4 ++++
bfd/elf.c | 9 ++++++++-
2 files changed, 12 insertions(+), 1 deletion(-)
Index: git/bfd/elf.c
===================================================================
--- git.orig/bfd/elf.c
+++ git/bfd/elf.c
@@ -3994,15 +3994,22 @@ ignore_section_sym (bfd *abfd, asymbol *
{
elf_symbol_type *type_ptr;
+ if (sym == NULL)
+ return FALSE;
+
if ((sym->flags & BSF_SECTION_SYM) == 0)
return FALSE;
+ if (sym->section == NULL)
+ return TRUE;
+
type_ptr = elf_symbol_from (abfd, sym);
return ((type_ptr != NULL
&& type_ptr->internal_elf_sym.st_shndx != 0
&& bfd_is_abs_section (sym->section))
|| !(sym->section->owner == abfd
- || (sym->section->output_section->owner == abfd
+ || (sym->section->output_section != NULL
+ && sym->section->output_section->owner == abfd
&& sym->section->output_offset == 0)
|| bfd_is_abs_section (sym->section)));
}
Index: git/bfd/ChangeLog
===================================================================
--- git.orig/bfd/ChangeLog
+++ git/bfd/ChangeLog
@@ -1,4 +1,10 @@
2018-04-24 Nick Clifton <nickc@redhat.com>
+
+ PR 23113
+ * elf.c (ignore_section_sym): Check for the output_section pointer
+ being NULL before dereferencing it.
+
+2018-04-24 Nick Clifton <nickc@redhat.com>
PR 23110
* peXXigen.c (_bfd_XX_bfd_copy_private_bfd_data_common): Check for

View File

@@ -0,0 +1,71 @@
From 95a6d23566165208853a68d9cd3c6eedca840ec6 Mon Sep 17 00:00:00 2001
From: Nick Clifton <nickc@redhat.com>
Date: Tue, 8 May 2018 12:51:06 +0100
Subject: [PATCH] Prevent a memory exhaustion failure when running objdump on a
fuzzed input file with corrupt string and attribute sections.
PR 22809
* elf.c (bfd_elf_get_str_section): Check for an excessively large
string section.
* elf-attrs.c (_bfd_elf_parse_attributes): Issue an error if the
attribute section is larger than the size of the file.
Upstream-Status: Backport
Affects: <= 2.30
CVE: CVE-2018-13033
Signed-off-by: Armin Kuster <akuster@mvista.com>
---
bfd/ChangeLog | 8 ++++++++
bfd/elf-attrs.c | 9 +++++++++
bfd/elf.c | 1 +
3 files changed, 18 insertions(+)
Index: git/bfd/elf-attrs.c
===================================================================
--- git.orig/bfd/elf-attrs.c
+++ git/bfd/elf-attrs.c
@@ -438,6 +438,15 @@ _bfd_elf_parse_attributes (bfd *abfd, El
/* PR 17512: file: 2844a11d. */
if (hdr->sh_size == 0)
return;
+ if (hdr->sh_size > bfd_get_file_size (abfd))
+ {
+ /* xgettext:c-format */
+ _bfd_error_handler (_("%pB: error: attribute section '%pA' too big: %#llx"),
+ abfd, hdr->bfd_section, (long long) hdr->sh_size);
+ bfd_set_error (bfd_error_invalid_operation);
+ return;
+ }
+
contents = (bfd_byte *) bfd_malloc (hdr->sh_size + 1);
if (!contents)
return;
Index: git/bfd/elf.c
===================================================================
--- git.orig/bfd/elf.c
+++ git/bfd/elf.c
@@ -297,6 +297,7 @@ bfd_elf_get_str_section (bfd *abfd, unsi
/* Allocate and clear an extra byte at the end, to prevent crashes
in case the string table is not terminated. */
if (shstrtabsize + 1 <= 1
+ || shstrtabsize > bfd_get_file_size (abfd)
|| bfd_seek (abfd, offset, SEEK_SET) != 0
|| (shstrtab = (bfd_byte *) bfd_alloc (abfd, shstrtabsize + 1)) == NULL)
shstrtab = NULL;
Index: git/bfd/ChangeLog
===================================================================
--- git.orig/bfd/ChangeLog
+++ git/bfd/ChangeLog
@@ -1,3 +1,11 @@
+2018-05-08 Nick Clifton <nickc@redhat.com>
+
+ PR 22809
+ * elf.c (bfd_elf_get_str_section): Check for an excessively large
+ string section.
+ * elf-attrs.c (_bfd_elf_parse_attributes): Issue an error if the
+ attribute section is larger than the size of the file.
+
2018-04-24 Nick Clifton <nickc@redhat.com>
PR 23113

View File

@@ -0,0 +1,55 @@
From 38e64b0ecc7f4ee64a02514b8d532782ac057fa2 Mon Sep 17 00:00:00 2001
From: Alan Modra <amodra@gmail.com>
Date: Thu, 25 Jan 2018 21:47:41 +1030
Subject: [PATCH] PR22746, crash when running 32-bit objdump on corrupted file
Avoid unsigned int overflow by performing bfd_size_type multiplication.
PR 22746
* elfcode.h (elf_object_p): Avoid integer overflow.
Upstream-Status: Backport
Affects: <= 2.29.1
CVE: CVE-2018-6323
Signed-off-by: Armin Kuster <akuster@mvista.com>
---
bfd/ChangeLog | 5 +++++
bfd/elfcode.h | 4 ++--
2 files changed, 7 insertions(+), 2 deletions(-)
Index: git/bfd/elfcode.h
===================================================================
--- git.orig/bfd/elfcode.h
+++ git/bfd/elfcode.h
@@ -680,7 +680,7 @@ elf_object_p (bfd *abfd)
if (i_ehdrp->e_shnum > ((bfd_size_type) -1) / sizeof (*i_shdrp))
goto got_wrong_format_error;
#endif
- amt = sizeof (*i_shdrp) * i_ehdrp->e_shnum;
+ amt = sizeof (*i_shdrp) * (bfd_size_type) i_ehdrp->e_shnum;
i_shdrp = (Elf_Internal_Shdr *) bfd_alloc (abfd, amt);
if (!i_shdrp)
goto got_no_match;
@@ -776,7 +776,7 @@ elf_object_p (bfd *abfd)
if (i_ehdrp->e_phnum > ((bfd_size_type) -1) / sizeof (*i_phdr))
goto got_wrong_format_error;
#endif
- amt = i_ehdrp->e_phnum * sizeof (*i_phdr);
+ amt = (bfd_size_type) i_ehdrp->e_phnum * sizeof (*i_phdr);
elf_tdata (abfd)->phdr = (Elf_Internal_Phdr *) bfd_alloc (abfd, amt);
if (elf_tdata (abfd)->phdr == NULL)
goto got_no_match;
Index: git/bfd/ChangeLog
===================================================================
--- git.orig/bfd/ChangeLog
+++ git/bfd/ChangeLog
@@ -1,3 +1,8 @@
+2018-01-25 Alan Modra <amodra@gmail.com>
+
+ PR 22746
+ * elfcode.h (elf_object_p): Avoid integer overflow.
+
2018-05-08 Nick Clifton <nickc@redhat.com>
PR 22809

View File

@@ -0,0 +1,108 @@
From 64e234d417d5685a4aec0edc618114d9991c031b Mon Sep 17 00:00:00 2001
From: Nick Clifton <nickc@redhat.com>
Date: Tue, 6 Feb 2018 15:48:29 +0000
Subject: [PATCH] Prevent attempts to call strncpy with a zero-length field by
chacking the size of debuglink sections.
PR 22794
* opncls.c (bfd_get_debug_link_info_1): Check the size of the
section before attempting to read it in.
(bfd_get_alt_debug_link_info): Likewise.
Upstream-Status: Backport
Affects: <= 2.30
CVE: CVE-2018-6759
Signed-off-by: Armin Kuster <akuster@mvista.com>
---
bfd/ChangeLog | 7 +++++++
bfd/opncls.c | 22 +++++++++++++++++-----
2 files changed, 24 insertions(+), 5 deletions(-)
Index: git/bfd/opncls.c
===================================================================
--- git.orig/bfd/opncls.c
+++ git/bfd/opncls.c
@@ -1179,6 +1179,7 @@ bfd_get_debug_link_info_1 (bfd *abfd, vo
bfd_byte *contents;
unsigned int crc_offset;
char *name;
+ bfd_size_type size;
BFD_ASSERT (abfd);
BFD_ASSERT (crc32_out);
@@ -1188,6 +1189,12 @@ bfd_get_debug_link_info_1 (bfd *abfd, vo
if (sect == NULL)
return NULL;
+ size = bfd_get_section_size (sect);
+
+ /* PR 22794: Make sure that the section has a reasonable size. */
+ if (size < 8 || size >= bfd_get_size (abfd))
+ return NULL;
+
if (!bfd_malloc_and_get_section (abfd, sect, &contents))
{
if (contents != NULL)
@@ -1197,10 +1204,10 @@ bfd_get_debug_link_info_1 (bfd *abfd, vo
/* CRC value is stored after the filename, aligned up to 4 bytes. */
name = (char *) contents;
- /* PR 17597: avoid reading off the end of the buffer. */
- crc_offset = strnlen (name, bfd_get_section_size (sect)) + 1;
+ /* PR 17597: Avoid reading off the end of the buffer. */
+ crc_offset = strnlen (name, size) + 1;
crc_offset = (crc_offset + 3) & ~3;
- if (crc_offset + 4 > bfd_get_section_size (sect))
+ if (crc_offset + 4 > size)
return NULL;
*crc32 = bfd_get_32 (abfd, contents + crc_offset);
@@ -1261,6 +1268,7 @@ bfd_get_alt_debug_link_info (bfd * abfd,
bfd_byte *contents;
unsigned int buildid_offset;
char *name;
+ bfd_size_type size;
BFD_ASSERT (abfd);
BFD_ASSERT (buildid_len);
@@ -1271,6 +1279,10 @@ bfd_get_alt_debug_link_info (bfd * abfd,
if (sect == NULL)
return NULL;
+ size = bfd_get_section_size (sect);
+ if (size < 8 || size >= bfd_get_size (abfd))
+ return NULL;
+
if (!bfd_malloc_and_get_section (abfd, sect, & contents))
{
if (contents != NULL)
@@ -1280,11 +1292,11 @@ bfd_get_alt_debug_link_info (bfd * abfd,
/* BuildID value is stored after the filename. */
name = (char *) contents;
- buildid_offset = strnlen (name, bfd_get_section_size (sect)) + 1;
+ buildid_offset = strnlen (name, size) + 1;
if (buildid_offset >= bfd_get_section_size (sect))
return NULL;
- *buildid_len = bfd_get_section_size (sect) - buildid_offset;
+ *buildid_len = size - buildid_offset;
*buildid_out = bfd_malloc (*buildid_len);
memcpy (*buildid_out, contents + buildid_offset, *buildid_len);
Index: git/bfd/ChangeLog
===================================================================
--- git.orig/bfd/ChangeLog
+++ git/bfd/ChangeLog
@@ -1,3 +1,10 @@
+2018-02-06 Nick Clifton <nickc@redhat.com>
+
+ PR 22794
+ * opncls.c (bfd_get_debug_link_info_1): Check the size of the
+ section before attempting to read it in.
+ (bfd_get_alt_debug_link_info): Likewise.
+
2018-01-25 Alan Modra <amodra@gmail.com>
PR 22746

View File

@@ -0,0 +1,47 @@
From eb77f6a4621795367a39cdd30957903af9dbb815 Mon Sep 17 00:00:00 2001
From: Alan Modra <amodra@gmail.com>
Date: Sat, 27 Jan 2018 08:19:33 +1030
Subject: [PATCH] PR22741, objcopy segfault on fuzzed COFF object
PR 22741
* coffgen.c (coff_pointerize_aux): Ensure auxent tagndx is in
range before converting to a symbol table pointer.
Upstream-Status: Backport
Affects: <= 2.30
CVE: CVE-2018-7208
Signed-off-by: Armin Kuster <akuster@mvista.com>
---
bfd/ChangeLog | 6 ++++++
bfd/coffgen.c | 3 ++-
2 files changed, 8 insertions(+), 1 deletion(-)
Index: git/bfd/coffgen.c
===================================================================
--- git.orig/bfd/coffgen.c
+++ git/bfd/coffgen.c
@@ -1555,7 +1555,8 @@ coff_pointerize_aux (bfd *abfd,
}
/* A negative tagndx is meaningless, but the SCO 3.2v4 cc can
generate one, so we must be careful to ignore it. */
- if (auxent->u.auxent.x_sym.x_tagndx.l > 0)
+ if ((unsigned long) auxent->u.auxent.x_sym.x_tagndx.l
+ < obj_raw_syment_count (abfd))
{
auxent->u.auxent.x_sym.x_tagndx.p =
table_base + auxent->u.auxent.x_sym.x_tagndx.l;
Index: git/bfd/ChangeLog
===================================================================
--- git.orig/bfd/ChangeLog
+++ git/bfd/ChangeLog
@@ -1,3 +1,9 @@
+2018-01-29 Alan Modra <amodra@gmail.com>
+
+ PR 22741
+ * coffgen.c (coff_pointerize_aux): Ensure auxent tagndx is in
+ range before converting to a symbol table pointer.
+
2018-02-06 Nick Clifton <nickc@redhat.com>
PR 22794

View File

@@ -0,0 +1,161 @@
From 1da5c9a485f3dcac4c45e96ef4b7dae5948314b5 Mon Sep 17 00:00:00 2001
From: Alan Modra <amodra@gmail.com>
Date: Mon, 25 Sep 2017 20:20:38 +0930
Subject: [PATCH] PR22202, buffer overflow in parse_die
There was a complete lack of sanity checking in dwarf1.c
PR 22202
* dwarf1.c (parse_die): Sanity check pointer against section limit
before dereferencing.
(parse_line_table): Likewise.
Upstream-Status: Backport
Affects: <= 2.30
CVE: CVE-2018-7568 patch1
Signed-off-by: Armin Kuster <akuster@mvista.com>
---
bfd/ChangeLog | 7 +++++++
bfd/dwarf1.c | 56 ++++++++++++++++++++++++++++++++++++++------------------
2 files changed, 45 insertions(+), 18 deletions(-)
Index: git/bfd/dwarf1.c
===================================================================
--- git.orig/bfd/dwarf1.c
+++ git/bfd/dwarf1.c
@@ -189,11 +189,14 @@ parse_die (bfd * abfd,
memset (aDieInfo, 0, sizeof (* aDieInfo));
/* First comes the length. */
- aDieInfo->length = bfd_get_32 (abfd, (bfd_byte *) xptr);
+ if (xptr + 4 > aDiePtrEnd)
+ return FALSE;
+ aDieInfo->length = bfd_get_32 (abfd, xptr);
xptr += 4;
if (aDieInfo->length == 0
- || (this_die + aDieInfo->length) >= aDiePtrEnd)
+ || this_die + aDieInfo->length > aDiePtrEnd)
return FALSE;
+ aDiePtrEnd = this_die + aDieInfo->length;
if (aDieInfo->length < 6)
{
/* Just padding bytes. */
@@ -202,18 +205,20 @@ parse_die (bfd * abfd,
}
/* Then the tag. */
- aDieInfo->tag = bfd_get_16 (abfd, (bfd_byte *) xptr);
+ if (xptr + 2 > aDiePtrEnd)
+ return FALSE;
+ aDieInfo->tag = bfd_get_16 (abfd, xptr);
xptr += 2;
/* Then the attributes. */
- while (xptr < (this_die + aDieInfo->length))
+ while (xptr + 2 <= aDiePtrEnd)
{
unsigned short attr;
/* Parse the attribute based on its form. This section
must handle all dwarf1 forms, but need only handle the
actual attributes that we care about. */
- attr = bfd_get_16 (abfd, (bfd_byte *) xptr);
+ attr = bfd_get_16 (abfd, xptr);
xptr += 2;
switch (FORM_FROM_ATTR (attr))
@@ -223,12 +228,15 @@ parse_die (bfd * abfd,
break;
case FORM_DATA4:
case FORM_REF:
- if (attr == AT_sibling)
- aDieInfo->sibling = bfd_get_32 (abfd, (bfd_byte *) xptr);
- else if (attr == AT_stmt_list)
+ if (xptr + 4 <= aDiePtrEnd)
{
- aDieInfo->stmt_list_offset = bfd_get_32 (abfd, (bfd_byte *) xptr);
- aDieInfo->has_stmt_list = 1;
+ if (attr == AT_sibling)
+ aDieInfo->sibling = bfd_get_32 (abfd, xptr);
+ else if (attr == AT_stmt_list)
+ {
+ aDieInfo->stmt_list_offset = bfd_get_32 (abfd, xptr);
+ aDieInfo->has_stmt_list = 1;
+ }
}
xptr += 4;
break;
@@ -236,22 +244,29 @@ parse_die (bfd * abfd,
xptr += 8;
break;
case FORM_ADDR:
- if (attr == AT_low_pc)
- aDieInfo->low_pc = bfd_get_32 (abfd, (bfd_byte *) xptr);
- else if (attr == AT_high_pc)
- aDieInfo->high_pc = bfd_get_32 (abfd, (bfd_byte *) xptr);
+ if (xptr + 4 <= aDiePtrEnd)
+ {
+ if (attr == AT_low_pc)
+ aDieInfo->low_pc = bfd_get_32 (abfd, xptr);
+ else if (attr == AT_high_pc)
+ aDieInfo->high_pc = bfd_get_32 (abfd, xptr);
+ }
xptr += 4;
break;
case FORM_BLOCK2:
- xptr += 2 + bfd_get_16 (abfd, (bfd_byte *) xptr);
+ if (xptr + 2 <= aDiePtrEnd)
+ xptr += bfd_get_16 (abfd, xptr);
+ xptr += 2;
break;
case FORM_BLOCK4:
- xptr += 4 + bfd_get_32 (abfd, (bfd_byte *) xptr);
+ if (xptr + 4 <= aDiePtrEnd)
+ xptr += bfd_get_32 (abfd, xptr);
+ xptr += 4;
break;
case FORM_STRING:
if (attr == AT_name)
aDieInfo->name = (char *) xptr;
- xptr += strlen ((char *) xptr) + 1;
+ xptr += strnlen ((char *) xptr, aDiePtrEnd - xptr) + 1;
break;
}
}
@@ -290,7 +305,7 @@ parse_line_table (struct dwarf1_debug* s
}
xptr = stash->line_section + aUnit->stmt_list_offset;
- if (xptr < stash->line_section_end)
+ if (xptr + 8 <= stash->line_section_end)
{
unsigned long eachLine;
bfd_byte *tblend;
@@ -318,6 +333,11 @@ parse_line_table (struct dwarf1_debug* s
for (eachLine = 0; eachLine < aUnit->line_count; eachLine++)
{
+ if (xptr + 10 > stash->line_section_end)
+ {
+ aUnit->line_count = eachLine;
+ break;
+ }
/* A line number. */
aUnit->linenumber_table[eachLine].linenumber
= bfd_get_32 (stash->abfd, (bfd_byte *) xptr);
Index: git/bfd/ChangeLog
===================================================================
--- git.orig/bfd/ChangeLog
+++ git/bfd/ChangeLog
@@ -1,3 +1,10 @@
+2017-09-25 Alan Modra <amodra@gmail.com>
+
+ PR 22202
+ * dwarf1.c (parse_die): Sanity check pointer against section limit
+ before dereferencing.
+ (parse_line_table): Likewise.
+
2018-01-29 Alan Modra <amodra@gmail.com>
PR 22741

View File

@@ -0,0 +1,73 @@
From eef104664efb52965d85a28bc3fc7c77e52e48e2 Mon Sep 17 00:00:00 2001
From: Nick Clifton <nickc@redhat.com>
Date: Wed, 28 Feb 2018 10:13:54 +0000
Subject: [PATCH] Fix potential integer overflow when reading corrupt dwarf1
debug information.
PR 22894
* dwarf1.c (parse_die): Check the length of form blocks before
advancing the data pointer.
Upstream-Status: Backport
Affects: <= 2.30
CVE: CVE-2018-7568 patch2
Signed-off-by: Armin Kuster <akuster@mvista.com>
---
bfd/ChangeLog | 6 ++++++
bfd/dwarf1.c | 17 +++++++++++++++--
2 files changed, 21 insertions(+), 2 deletions(-)
Index: git/bfd/dwarf1.c
===================================================================
--- git.orig/bfd/dwarf1.c
+++ git/bfd/dwarf1.c
@@ -213,6 +213,7 @@ parse_die (bfd * abfd,
/* Then the attributes. */
while (xptr + 2 <= aDiePtrEnd)
{
+ unsigned int block_len;
unsigned short attr;
/* Parse the attribute based on its form. This section
@@ -255,12 +256,24 @@ parse_die (bfd * abfd,
break;
case FORM_BLOCK2:
if (xptr + 2 <= aDiePtrEnd)
- xptr += bfd_get_16 (abfd, xptr);
+ {
+ block_len = bfd_get_16 (abfd, xptr);
+ if (xptr + block_len > aDiePtrEnd
+ || xptr + block_len < xptr)
+ return FALSE;
+ xptr += block_len;
+ }
xptr += 2;
break;
case FORM_BLOCK4:
if (xptr + 4 <= aDiePtrEnd)
- xptr += bfd_get_32 (abfd, xptr);
+ {
+ block_len = bfd_get_32 (abfd, xptr);
+ if (xptr + block_len > aDiePtrEnd
+ || xptr + block_len < xptr)
+ return FALSE;
+ xptr += block_len;
+ }
xptr += 4;
break;
case FORM_STRING:
Index: git/bfd/ChangeLog
===================================================================
--- git.orig/bfd/ChangeLog
+++ git/bfd/ChangeLog
@@ -1,3 +1,9 @@
+2018-02-28 Nick Clifton <nickc@redhat.com>
+
+ PR 22894
+ * dwarf1.c (parse_die): Check the length of form blocks before
+ advancing the data pointer.
+
2017-09-25 Alan Modra <amodra@gmail.com>
PR 22202

View File

@@ -0,0 +1,120 @@
From 12c963421d045a127c413a0722062b9932c50aa9 Mon Sep 17 00:00:00 2001
From: Nick Clifton <nickc@redhat.com>
Date: Wed, 28 Feb 2018 11:50:49 +0000
Subject: [PATCH] Catch integer overflows/underflows when parsing corrupt DWARF
FORM blocks.
PR 22895
PR 22893
* dwarf2.c (read_n_bytes): Replace size parameter with dwarf_block
pointer. Drop unused abfd parameter. Check the size of the block
before initialising the data field. Return the end pointer if the
size is invalid.
(read_attribute_value): Adjust invocations of read_n_bytes.
Upstream-Status: Backport
Affects: <= 2.30
CVE: CVE-2018-7569
Signed-off-by: Armin Kuster <akuster@mvista.com>
---
bfd/ChangeLog | 8 ++++++++
bfd/dwarf2.c | 36 +++++++++++++++++++++---------------
2 files changed, 29 insertions(+), 15 deletions(-)
Index: git/bfd/dwarf2.c
===================================================================
--- git.orig/bfd/dwarf2.c
+++ git/bfd/dwarf2.c
@@ -649,14 +649,24 @@ read_8_bytes (bfd *abfd, bfd_byte *buf,
}
static bfd_byte *
-read_n_bytes (bfd *abfd ATTRIBUTE_UNUSED,
- bfd_byte *buf,
- bfd_byte *end,
- unsigned int size ATTRIBUTE_UNUSED)
-{
- if (buf + size > end)
- return NULL;
- return buf;
+read_n_bytes (bfd_byte * buf,
+ bfd_byte * end,
+ struct dwarf_block * block)
+{
+ unsigned int size = block->size;
+ bfd_byte * block_end = buf + size;
+
+ if (block_end > end || block_end < buf)
+ {
+ block->data = NULL;
+ block->size = 0;
+ return end;
+ }
+ else
+ {
+ block->data = buf;
+ return block_end;
+ }
}
/* Scans a NUL terminated string starting at BUF, returning a pointer to it.
@@ -1154,8 +1164,7 @@ read_attribute_value (struct attribute *
return NULL;
blk->size = read_2_bytes (abfd, info_ptr, info_ptr_end);
info_ptr += 2;
- blk->data = read_n_bytes (abfd, info_ptr, info_ptr_end, blk->size);
- info_ptr += blk->size;
+ info_ptr = read_n_bytes (info_ptr, info_ptr_end, blk);
attr->u.blk = blk;
break;
case DW_FORM_block4:
@@ -1165,8 +1174,7 @@ read_attribute_value (struct attribute *
return NULL;
blk->size = read_4_bytes (abfd, info_ptr, info_ptr_end);
info_ptr += 4;
- blk->data = read_n_bytes (abfd, info_ptr, info_ptr_end, blk->size);
- info_ptr += blk->size;
+ info_ptr = read_n_bytes (info_ptr, info_ptr_end, blk);
attr->u.blk = blk;
break;
case DW_FORM_data2:
@@ -1206,8 +1214,7 @@ read_attribute_value (struct attribute *
blk->size = _bfd_safe_read_leb128 (abfd, info_ptr, &bytes_read,
FALSE, info_ptr_end);
info_ptr += bytes_read;
- blk->data = read_n_bytes (abfd, info_ptr, info_ptr_end, blk->size);
- info_ptr += blk->size;
+ info_ptr = read_n_bytes (info_ptr, info_ptr_end, blk);
attr->u.blk = blk;
break;
case DW_FORM_block1:
@@ -1217,8 +1224,7 @@ read_attribute_value (struct attribute *
return NULL;
blk->size = read_1_byte (abfd, info_ptr, info_ptr_end);
info_ptr += 1;
- blk->data = read_n_bytes (abfd, info_ptr, info_ptr_end, blk->size);
- info_ptr += blk->size;
+ info_ptr = read_n_bytes (info_ptr, info_ptr_end, blk);
attr->u.blk = blk;
break;
case DW_FORM_data1:
Index: git/bfd/ChangeLog
===================================================================
--- git.orig/bfd/ChangeLog
+++ git/bfd/ChangeLog
@@ -1,4 +1,14 @@
2018-02-28 Nick Clifton <nickc@redhat.com>
+
+ PR 22895
+ PR 22893
+ * dwarf2.c (read_n_bytes): Replace size parameter with dwarf_block
+ pointer. Drop unused abfd parameter. Check the size of the block
+ before initialising the data field. Return the end pointer if the
+ size is invalid.
+ (read_attribute_value): Adjust invocations of read_n_bytes.
+
+2018-02-28 Nick Clifton <nickc@redhat.com>
PR 22894
* dwarf1.c (parse_die): Check the length of form blocks before

View File

@@ -0,0 +1,51 @@
From 116acb2c268c89c89186673a7c92620d21825b25 Mon Sep 17 00:00:00 2001
From: Alan Modra <amodra@gmail.com>
Date: Wed, 28 Feb 2018 22:09:50 +1030
Subject: [PATCH] PR22887, null pointer dereference in
aout_32_swap_std_reloc_out
PR 22887
* aoutx.h (swap_std_reloc_in): Correct r_index bound check.
Upstream-Status: Backport
Affects: <= 2.30
CVE: CVE-2018-7642
Signed-off-by: Armin Kuster <akuster@mvista.com>
---
bfd/ChangeLog | 5 +++++
bfd/aoutx.h | 6 ++++--
2 files changed, 9 insertions(+), 2 deletions(-)
Index: git/bfd/ChangeLog
===================================================================
--- git.orig/bfd/ChangeLog
+++ git/bfd/ChangeLog
@@ -1,3 +1,8 @@
+2018-02-28 Alan Modra <amodra@gmail.com>
+
+ PR 22887
+ * aoutx.h (swap_std_reloc_in): Correct r_index bound check.
+
2018-02-28 Nick Clifton <nickc@redhat.com>
PR 22895
Index: git/bfd/aoutx.h
===================================================================
--- git.orig/bfd/aoutx.h
+++ git/bfd/aoutx.h
@@ -2211,10 +2211,12 @@ NAME (aout, swap_ext_reloc_in) (bfd *abf
|| r_type == (unsigned int) RELOC_BASE22)
r_extern = 1;
- if (r_extern && r_index > symcount)
+ if (r_extern && r_index >= symcount)
{
/* We could arrange to return an error, but it might be useful
- to see the file even if it is bad. */
+ to see the file even if it is bad. FIXME: Of course this
+ means that objdump -r *doesn't* see the actual reloc, and
+ objcopy silently writes a different reloc. */
r_extern = 0;
r_index = N_ABS;
}

View File

@@ -7,14 +7,12 @@ BUGTRACKER = "http://alioth.debian.org/tracker/?atid=412807&group_id=31052"
LICENSE = "GPLv2"
LIC_FILES_CHKSUM = "file://COPYING;md5=59530bdf33659b29e73d4adb9f9f6552"
SRC_URI = "https://alioth.debian.org/frs/download.php/file/3979/chrpath-0.16.tar.gz \
SRC_URI = "${DEBIAN_MIRROR}/main/c/${BPN}/${BPN}_${PV}.orig.tar.gz \
file://standarddoc.patch"
SRC_URI[md5sum] = "2bf8d1d1ee345fc8a7915576f5649982"
SRC_URI[sha256sum] = "bb0d4c54bac2990e1bdf8132f2c9477ae752859d523e141e72b3b11a12c26e7b"
UPSTREAM_CHECK_URI = "http://alioth.debian.org/frs/?group_id=31052"
inherit autotools
# We don't have a staged chrpath-native for ensuring our binary is

View File

@@ -41,7 +41,9 @@ INITSCRIPT_NAME = "distcc"
SYSTEMD_PACKAGES = "${PN}"
SYSTEMD_SERVICE_${PN} = "distcc.service"
do_install_append() {
do_install() {
# Improve reproducibility: compress w/o timestamps
oe_runmake 'DESTDIR=${D}' "GZIP_BIN=gzip -n" install
install -d ${D}${sysconfdir}/init.d/
install -d ${D}${sysconfdir}/default
install -m 0755 ${WORKDIR}/distcc ${D}${sysconfdir}/init.d/

View File

@@ -5,7 +5,10 @@ called the makefile, which lists each of the non-source files and how to compute
HOMEPAGE = "http://www.gnu.org/software/make/"
SECTION = "devel"
SRC_URI = "${GNU_MIRROR}/make/make-${PV}.tar.bz2"
SRC_URI = "${GNU_MIRROR}/make/make-${PV}.tar.bz2 \
file://0001-glob-Do-not-assume-glibc-glob-internals.patch \
file://0002-glob-Do-not-assume-glibc-glob-internals.patch \
"
inherit autotools gettext pkgconfig texinfo

View File

@@ -0,0 +1,70 @@
From c90a7dda6c572f79b8e78da44b6ebf8704edef65 Mon Sep 17 00:00:00 2001
From: Paul Eggert <eggert@cs.ucla.edu>
Date: Sun, 24 Sep 2017 09:12:58 -0400
Subject: [PATCH 1/2] glob: Do not assume glibc glob internals.
It has been proposed that glibc glob start using gl_lstat,
which the API allows it to do. GNU 'make' should not get in
the way of this. See:
https://sourceware.org/ml/libc-alpha/2017-09/msg00409.html
* dir.c (local_lstat): New function, like local_stat.
(dir_setup_glob): Use it to initialize gl_lstat too, as the API
requires.
---
Upstream-Status: Backport
Signed-off-by: Khem Raj <raj.khem@gmail.com>
dir.c | 29 +++++++++++++++++++++++++++--
1 file changed, 27 insertions(+), 2 deletions(-)
diff --git a/dir.c b/dir.c
index f34bbf5..12eef30 100644
--- a/dir.c
+++ b/dir.c
@@ -1299,15 +1299,40 @@ local_stat (const char *path, struct stat *buf)
}
#endif
+/* Similarly for lstat. */
+#if !defined(lstat) && !defined(WINDOWS32) || defined(VMS)
+# ifndef VMS
+# ifndef HAVE_SYS_STAT_H
+int lstat (const char *path, struct stat *sbuf);
+# endif
+# else
+ /* We are done with the fake lstat. Go back to the real lstat */
+# ifdef lstat
+# undef lstat
+# endif
+# endif
+# define local_lstat lstat
+#elif defined(WINDOWS32)
+/* Windows doesn't support lstat(). */
+# define local_lstat local_stat
+#else
+static int
+local_lstat (const char *path, struct stat *buf)
+{
+ int e;
+ EINTRLOOP (e, lstat (path, buf));
+ return e;
+}
+#endif
+
void
dir_setup_glob (glob_t *gl)
{
gl->gl_opendir = open_dirstream;
gl->gl_readdir = read_dirstream;
gl->gl_closedir = free;
+ gl->gl_lstat = local_lstat;
gl->gl_stat = local_stat;
- /* We don't bother setting gl_lstat, since glob never calls it.
- The slot is only there for compatibility with 4.4 BSD. */
}
void
--
2.16.1

View File

@@ -0,0 +1,38 @@
From 9858702dbd1e137262c06765919937660879f63c Mon Sep 17 00:00:00 2001
From: Paul Eggert <eggert@cs.ucla.edu>
Date: Sun, 24 Sep 2017 09:12:58 -0400
Subject: [PATCH 2/2] glob: Do not assume glibc glob internals.
It has been proposed that glibc glob start using gl_lstat,
which the API allows it to do. GNU 'make' should not get in
the way of this. See:
https://sourceware.org/ml/libc-alpha/2017-09/msg00409.html
* dir.c (local_lstat): New function, like local_stat.
(dir_setup_glob): Use it to initialize gl_lstat too, as the API
requires.
---
Upstream-Status: Backport
configure.ac | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)
diff --git a/configure.ac b/configure.ac
index 64ec870..e87901c 100644
--- a/configure.ac
+++ b/configure.ac
@@ -399,10 +399,9 @@ AC_CACHE_CHECK([if system libc has GNU glob], [make_cv_sys_gnu_glob],
#include <glob.h>
#include <fnmatch.h>
-#define GLOB_INTERFACE_VERSION 1
#if !defined _LIBC && defined __GNU_LIBRARY__ && __GNU_LIBRARY__ > 1
# include <gnu-versions.h>
-# if _GNU_GLOB_INTERFACE_VERSION == GLOB_INTERFACE_VERSION
+if _GNU_GLOB_INTERFACE_VERSION == 1 || _GNU_GLOB_INTERFACE_VERSION == 2
gnu glob
# endif
#endif],
--
2.16.1

View File

@@ -0,0 +1,36 @@
From 9c986353e420ead6e706262bf204d6e03322c300 Mon Sep 17 00:00:00 2001
From: Andreas Gruenbacher <agruen@gnu.org>
Date: Fri, 17 Aug 2018 13:35:40 +0200
Subject: [PATCH] Fix swapping fake lines in pch_swap
* src/pch.c (pch_swap): Fix swapping p_bfake and p_efake when there is a
blank line in the middle of a context-diff hunk: that empty line stays
in the middle of the hunk and isn't swapped.
Fixes: https://savannah.gnu.org/bugs/index.php?53133
Signed-off-by: Andreas Gruenbacher <agruen@gnu.org>
Upstream-Status: Backport [https://git.savannah.gnu.org/git/patch.git]
CVE: CVE-2018-6952
Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
---
src/pch.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/pch.c b/src/pch.c
index e92bc64..a500ad9 100644
--- a/src/pch.c
+++ b/src/pch.c
@@ -2122,7 +2122,7 @@ pch_swap (void)
}
if (p_efake >= 0) { /* fix non-freeable ptr range */
if (p_efake <= i)
- n = p_end - i + 1;
+ n = p_end - p_ptrn_lines;
else
n = -i;
p_efake += n;
--
2.10.2

View File

@@ -5,6 +5,7 @@ SRC_URI += "file://0001-Unset-need_charset_alias-when-building-for-musl.patch \
file://0002-Fix-segfault-with-mangled-rename-patch.patch \
file://0003-Allow-input-files-to-be-missing-for-ed-style-patches.patch \
file://0004-Fix-arbitrary-command-execution-in-ed-style-patches-.patch \
file://0001-Fix-swapping-fake-lines-in-pch_swap.patch \
"
SRC_URI[md5sum] = "4c68cee989d83c87b00a3860bcd05600"

View File

@@ -0,0 +1,126 @@
From ba6733216202523a95b0b7ee2e534b8e30b6d7df Mon Sep 17 00:00:00 2001
From: Dominic Hargreaves <dom@earth.li>
Date: Sat, 14 Oct 2017 16:27:53 +0200
Subject: [PATCH] Skip various tests if PERL_BUILD_PACKAGING is set
These are tests which tend not to be useful for downstream packagers
t/porting/customized.t change originally from Todd Rinaldo
Upstream-Status: Backport[https://perl5.git.perl.org/perl.git/ba6733216202523a95b0b7ee2e534b8e30b6d7df]
Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
---
INSTALL | 3 ++-
MANIFEST | 1 +
PACKAGING | 30 ++++++++++++++++++++++++++++++
regen/lib_cleanup.pl | 5 +++++
t/porting/customized.t | 1 +
t/test.pl | 3 +++
6 files changed, 42 insertions(+), 1 deletion(-)
create mode 100644 PACKAGING
diff --git a/INSTALL b/INSTALL
index 636f4bd52f..1285fc69a2 100644
--- a/INSTALL
+++ b/INSTALL
@@ -2714,4 +2714,5 @@ This document is part of the Perl package and may be distributed under
the same terms as perl itself, with the following additional request:
If you are distributing a modified version of perl (perhaps as part of
a larger package) please B<do> modify these installation instructions
-and the contact information to match your distribution.
+and the contact information to match your distribution. Additional
+information for packagers is in F<PACKAGING>.
diff --git a/MANIFEST b/MANIFEST
index b3207030a9..32de824ca1 100644
--- a/MANIFEST
+++ b/MANIFEST
@@ -4932,6 +4932,7 @@ os2/perlrexx.c Support perl interpreter embedded in REXX
os2/perlrexx.cmd Test perl interpreter embedded in REXX
overload.h generated overload enum (public)
overload.inc generated overload name table (implementation)
+PACKAGING notes and best practice for packaging perl 5
packsizetables.inc The generated packprops array used in pp_pack.c
pad.c Scratchpad functions
pad.h Scratchpad headers
diff --git a/PACKAGING b/PACKAGING
new file mode 100644
index 0000000000..0c69b87ba6
--- /dev/null
+++ b/PACKAGING
@@ -0,0 +1,30 @@
+If you read this file _as_is_, just ignore the funny characters you
+see. It is written in the POD format (see pod/perlpod.pod) which is
+specifically designed to be readable as is.
+
+=head1 NAME
+
+PACKAGING - notes and best practice for packaging perl 5
+
+=head1 SYNOPSIS
+
+This document is aimed at anyone who is producing their own version of
+perl for distribution to other users. It is intended as a collection
+of useful tips, advice and best practice, rather than being a complete
+packaging manual. The starting point for installing perl remains
+F<INSTALL>.
+
+=head1 Customizing test running
+
+A small number of porting tests (those in t/porting) are not well suited
+to typical distribution packaging scenarios. For example, they assume
+they are working in a git clone of the upstream Perl repository, or
+enforce rules which are not relevant to downstream packagers. These can
+be skipped by setting the environment variable PERL_BUILD_PACKAGING.
+A complete list of tests which this applied to can be found by searching
+the codebase for this string.
+
+An alternative strategy would be to skip all porting tests, but many of
+them are useful if additional patches might be applied.
+
+=cut
diff --git a/regen/lib_cleanup.pl b/regen/lib_cleanup.pl
index 5e40b405a4..6caf74a563 100644
--- a/regen/lib_cleanup.pl
+++ b/regen/lib_cleanup.pl
@@ -164,6 +164,11 @@ if ($TAP && !-d '.git' && !-f 'lib/.gitignore') {
exit 0;
}
+if ($ENV{'PERL_BUILD_PACKAGING'}) {
+ print "ok # skip explicitly disabled git tests by PERL_BUILD_PACKAGING\n";
+ exit 0;
+}
+
$fh = open_new('lib/.gitignore', '>',
{ by => $0,
from => 'MANIFEST and parsing files in cpan/ dist/ and ext/'});
diff --git a/t/porting/customized.t b/t/porting/customized.t
index 45fcafb100..5c3739198c 100644
--- a/t/porting/customized.t
+++ b/t/porting/customized.t
@@ -13,6 +13,7 @@ BEGIN {
@INC = qw(lib Porting t);
require 'test.pl';
skip_all("pre-computed SHA1 won't match under EBCDIC") if $::IS_EBCDIC;
+ skip_all("This distro may have modified some files in cpan/. Skipping validation.") if $ENV{'PERL_BUILD_PACKAGING'};
}
use strict;
diff --git a/t/test.pl b/t/test.pl
index 79e6e25e95..1782dcf73c 100644
--- a/t/test.pl
+++ b/t/test.pl
@@ -212,6 +212,9 @@ sub find_git_or_skip {
} else {
$reason = 'not being run from a git checkout';
}
+ if ($ENV{'PERL_BUILD_PACKAGING'}) {
+ $reason = 'PERL_BUILD_PACKAGING is set';
+ }
skip_all($reason) if $_[0] && $_[0] eq 'all';
skip($reason, @_);
}
--
2.17.1

View File

@@ -0,0 +1,32 @@
From 73d7247ecab863ef26b5687a37ccc75d6144ad0f Mon Sep 17 00:00:00 2001
From: Karl Williamson <khw@cpan.org>
Date: Tue, 17 Oct 2017 13:49:14 +0800
Subject: [PATCH] fix CVE-2017-12837
Signed-off-by: Karl Williamson <khw@cpan.org>
Signed-off-by: Steve Hay <steve.m.hay@googlemail.com>
CVE: CVE-2017-12837
Upstream-Status: Backport
https://perl5.git.perl.org/perl.git/commitdiff/96c83ed78aeea1a0496dd2b2d935869a822dc8a5
Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
---
regcomp.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/regcomp.c b/regcomp.c
index 5498d14..31ec383 100644
--- a/regcomp.c
+++ b/regcomp.c
@@ -13021,6 +13021,7 @@ S_regatom(pTHX_ RExC_state_t *pRExC_state, I32 *flagp, U32 depth)
goto loopdone;
}
p = RExC_parse;
+ RExC_parse = parse_start;
if (ender > 0xff) {
REQUIRE_UTF8(flagp);
}
--
1.8.3.1

Some files were not shown because too many files have changed in this diff Show More