403Webshell
Server IP : 82.208.35.60  /  Your IP : 216.73.216.238
Web Server : Apache/2.4.55 (FreeBSD) OpenSSL/1.1.1q-freebsd PHP/7.3.31
System : FreeBSD server7.d2m.cz 12.4-RELEASE-p9 FreeBSD 12.4-RELEASE-p9 GENERIC amd64
User : studiokobylisy_cz ( 1008)
PHP Version : 7.3.31
Disable Function : NONE
MySQL : OFF  |  cURL : ON  |  WGET : OFF  |  Perl : OFF  |  Python : OFF  |  Sudo : OFF  |  Pkexec : OFF
Directory :  /usr/ports/games/sxsame/files/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /usr/ports/games/sxsame/files/patch-sxsame.c
--- sxsame.c.orig	Sun May  5 04:09:26 1996
+++ sxsame.c	Tue Jul 11 21:35:38 2000
@@ -12,6 +12,11 @@
 char *program_version = "3.02";
 
 #include <stdio.h>
+#include <stdlib.h>
+#include <unistd.h>
+#include <time.h>
+#include <string.h>
+#include <sys/param.h>
 #include <X11/Xlib.h>
 #include <X11/Xutil.h>
 #ifndef LOCAL_XPM_H
@@ -163,11 +168,21 @@
 int      hisc_height = 80;
 #endif /* !ENABLE_HISCORE */
 
-
+int ReadInitFile(int* width, int* height, int* same_pic);
+int SaveInitFile(int width, int height, int same_pic);
 int CheckSameDataFile(DataFile ***);
 int LoadBMPSameData(Display *dpy, Colormap cmap, SameGame *, char *);
 int LoadSameData(ImportSameData *, char *);
+int CheckSelectSame(int sx, int sy);
 
+static
+int
+Access(const char* path)
+{
+	return access(path, R_OK);
+}
+
+# define access(x)	Access(x)		
 
 void main(argc, argv)
 int argc;
@@ -726,7 +741,7 @@
 {
 	ImportSameData data;
 	int i, j, val, ncol;
-	char tmpfname[256];
+	char tmpfname[MAXPATHLEN];
 
 	if(strlen(fname)>4) /* check Windows data file... */
 	{
@@ -784,9 +799,13 @@
 			{
 				if(!access(data.xpm_data[i][j]))
 					strcpy(tmpfname,data.xpm_data[i][j]);
-				else
-					sprintf(tmpfname,"%s/%s",same_dir,
-						data.xpm_data[i][j]);
+				else {
+					if (MAXPATHLEN <=
+						snprintf(tmpfname, MAXPATHLEN, "%s/%s",same_dir,
+						data.xpm_data[i][j])) {
+						goto xpm_error;
+					}
+				}
 				val = XpmReadFileToPixmap(dpy, root,
 					tmpfname, &game.bits_xpm[i][j],
 					NULL, &xpm_attr);
@@ -804,7 +823,9 @@
 	if(!access(data.bg_data))
 		strcpy(tmpfname,data.bg_data);
 	else
-		sprintf(tmpfname,"%s/%s",same_dir, data.bg_data);
+		if (MAXPATHLEN <= snprintf(tmpfname, MAXPATHLEN, "%s/%s",same_dir, data.bg_data)) {
+			goto xpm_error;
+		}
 	val = XpmReadFileToPixmap(dpy, root, tmpfname,
 			&game.bg_xpm, NULL, &xpm_attr);
 	free(data.bg_data);
@@ -815,6 +836,10 @@
 		strcpy(tmpfname,data.frame_data);
 	else
 		sprintf(tmpfname,"%s/%s",same_dir, data.frame_data);
+		if (MAXPATHLEN <= snprintf(tmpfname, MAXPATHLEN, "%s/%s",same_dir, data.frame_data)) {
+			
+			goto xpm_error;
+		}
 	val = XpmReadFileToPixmap(dpy, root, tmpfname,
 			&game.frame_xpm, NULL, &xpm_attr);
 	free(data.frame_data);

Youez - 2016 - github.com/yon3zu
LinuXploit