[Bug 1441421] Re: compatibility issue in libc6:i386

wangqin.cn 1441421 at bugs.launchpad.net
Wed Apr 8 03:32:27 UTC 2015


** Information type changed from Private Security to Public

-- 
You received this bug notification because you are a member of Ubuntu
Foundations Bugs, which is subscribed to glibc in Ubuntu.
https://bugs.launchpad.net/bugs/1441421

Title:
  compatibility issue in libc6:i386

Status in glibc package in Ubuntu:
  New

Bug description:
  Host: Linux Mars 3.19.0-12-generic #12-Ubuntu SMP Fri Apr 3 04:03:26 UTC 2015 x86_64 x86_64 x86_64 GNU/Linux
  DISTRIB_ID=Ubuntu
  DISTRIB_RELEASE=15.04
  DISTRIB_CODENAME=vivid
  DISTRIB_DESCRIPTION="Ubuntu Vivid Vervet (development branch)"

  [Issue description]
  memcpy() gets different result when run the same code under x86_64 mode and i386 mode.

  [Details]
  code and program output runs as the following, the behavior under x86_64 is right.

  qin at Mars:tmp$ cat mm.c
  #include <stdio.h>
  #include <string.h>

  int main(int argc, char **argv) {
      const char other[] = "@SystemApi";
      char data[] = " @SystemApi Allow an application to read and write the cache partition.\n         @hide ";
      char *buf = data;
      size_t skip = strlen(other);
      size_t len = strlen(data);

      ssize_t index = 1;
      ssize_t next = 87;
      size_t tail = 1;

      fprintf(stderr, "<\"%s\"\n", data);
      memcpy(buf + tail, buf + index + skip, next - index - skip);
      fprintf(stderr, ">\"%s\"\n", data);
      return 0;
  }

  qin at Mars:tmp$ gcc mm.c -o mm.6
  qin at Mars:tmp$ ./mm.6
  <" @SystemApi Allow an application to read and write the cache partition.
           @hide "
  >"  Allow an application to read and write the cache partition.
           @hide     @hide "
  qin at Mars:tmp$ ldd mm.6
   linux-vdso.so.1 =>  (0x00007fffe55d3000)
   libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007fc881155000)
   /lib64/ld-linux-x86-64.so.2 (0x00007fc88154a000)
  qin at Mars:tmp$
  qin at Mars:tmp$ gcc mm.c -m32 -o mm.3
  qin at Mars:tmp$ ./mm.3
  <" @SystemApi Allow an application to read and write the cache partition.
           @hide "
  >"  Allow an apto read anto read and cache

           @hid      @hide     @hide "
  qin at Mars:tmp$ ldd mm.3
   linux-gate.so.1 =>  (0xf76fd000)
   libc.so.6 => /lib/i386-linux-gnu/libc.so.6 (0xf7514000)
   /lib/ld-linux.so.2 (0xf76fe000)

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/glibc/+bug/1441421/+subscriptions



More information about the foundations-bugs mailing list