head 1.4; access; symbols pkgsrc-2013Q2:1.4.0.10 pkgsrc-2013Q2-base:1.4 pkgsrc-2012Q4:1.4.0.8 pkgsrc-2012Q4-base:1.4 pkgsrc-2011Q4:1.4.0.6 pkgsrc-2011Q4-base:1.4 pkgsrc-2011Q2:1.4.0.4 pkgsrc-2011Q2-base:1.4 pkgsrc-2009Q4:1.4.0.2 pkgsrc-2009Q4-base:1.4 pkgsrc-2009Q1:1.3.0.2 pkgsrc-2009Q1-base:1.3 pkgsrc-2008Q4:1.2.0.2 pkgsrc-2008Q4-base:1.2 pkgsrc-2008Q3:1.1.0.6 pkgsrc-2008Q3-base:1.1 cube-native-xorg:1.1.0.4 cube-native-xorg-base:1.1 pkgsrc-2008Q2:1.1.0.2; locks; strict; comment @# @; 1.4 date 2009.04.07.08.20.42; author kefren; state dead; branches; next 1.3; 1.3 date 2009.01.19.22.35.53; author kefren; state Exp; branches; next 1.2; 1.2 date 2008.10.07.13.22.33; author kefren; state dead; branches; next 1.1; 1.1 date 2008.08.09.19.57.51; author kefren; state Exp; branches 1.1.2.1; next ; 1.1.2.1 date 2008.08.09.19.57.51; author tron; state dead; branches; next 1.1.2.2; 1.1.2.2 date 2008.08.10.15.27.26; author tron; state Exp; branches; next ; desc @@ 1.4 log @Welcome to mono 2.4 Changelist available at http://www.mono-project.com/Release_Notes_Mono_2.4 Note: Enabled for now generics on amd64, as they look to work @ text @$NetBSD: patch-cg,v 1.3 2009/01/19 22:35:53 kefren Exp $ --- mono/utils/mono-mmap.c.orig 2009-01-19 10:32:55.000000000 +0200 +++ mono/utils/mono-mmap.c 2009-01-19 18:29:41.000000000 +0200 @@@@ -7,6 +7,9 @@@@ #include #include #include +#ifdef __NetBSD__ +#include +#endif #include #include #include @@@@ -402,7 +405,11 @@@@ const char *name; int i = 0; int curpid = getpid (); +#ifdef __NetBSD__ + GDir *dir = g_dir_open ("/tmp/", 0, NULL); +#else GDir *dir = g_dir_open ("/dev/shm/", 0, NULL); +#endif if (!dir) return mono_shared_area_instances_slow (array, count, cleanup); while ((name = g_dir_read_name (dir))) { @@@@ -421,8 +428,13 @@@@ } if (curpid != pid && kill (pid, SIGCONT) == -1 && errno == ESRCH) { char buf [128]; +#ifdef __NetBSD__ + g_snprintf (buf, sizeof (buf), "/tmp/mono.%d", pid); + unlink (buf); +#else g_snprintf (buf, sizeof (buf), "/mono.%d", pid); shm_unlink (buf); +#endif } } g_dir_close (dir); @@@@ -439,10 +451,23 @@@@ char buf [128]; void *res; SAreaHeader *header; +#ifdef __NetBSD__ + key_t skey; + int shms; +#endif /* perform cleanup of segments left over from dead processes */ mono_shared_area_instances_helper (NULL, 0, TRUE); +#ifdef __NetBSD__ + g_snprintf(buf, sizeof (buf), "/tmp/mono.%d", pid); + fd = open(buf, O_CREAT|O_EXCL|O_RDWR, S_IRUSR|S_IWUSR|S_IRGRP); + if (fd == -1 && errno == EEXIST) { + /* leftover */ + unlink(buf); + fd = open(buf, O_CREAT|O_EXCL|O_RDWR, S_IRUSR|S_IWUSR|S_IRGRP); + } +#else g_snprintf (buf, sizeof (buf), "/mono.%d", pid); fd = shm_open (buf, O_CREAT|O_EXCL|O_RDWR, S_IRUSR|S_IWUSR|S_IRGRP); @@@@ -451,11 +476,21 @@@@ shm_unlink (buf); fd = shm_open (buf, O_CREAT|O_EXCL|O_RDWR, S_IRUSR|S_IWUSR|S_IRGRP); } +#endif /* in case of failure we try to return a memory area anyway, * even if it means the data can't be read by other processes */ if (fd == -1) return malloc_shared_area (pid); +#ifdef __NetBSD__ + if ((skey = ftok(buf, 'M')) == ((key_t)-1) || + (shms = shmget(skey, size, IPC_CREAT)) == -1 || + (res = shmat(shms, NULL, 0)) == ((void*)-1)) { + close(fd); + unlink(buf); + return malloc_shared_area(pid); + } +#else if (ftruncate (fd, size) != 0) { shm_unlink (buf); close (fd); @@@@ -466,6 +501,7 @@@@ close (fd); return malloc_shared_area (pid); } +#endif /* we don't need the file descriptor anymore */ close (fd); header = res; @@@@ -482,8 +518,18 @@@@ mono_shared_area_remove (void) { char buf [128]; +#ifdef __NetBSD__ + key_t skey; + int shms; + struct shmid_ds shmds; + g_snprintf(buf, sizeof (buf), "/tmp/mono.%d", getpid()); + if ((skey = ftok(buf, 'M')) != ((key_t)-1) && + (shms = shmget(skey, mono_pagesize(), IPC_CREAT)) != -1) + shmctl(shms, IPC_RMID, &shmds); +#else g_snprintf (buf, sizeof (buf), "/mono.%d", getpid ()); shm_unlink (buf); +#endif if (malloced_shared_area) g_free (malloced_shared_area); } @@@@ -497,6 +543,22 @@@@ char buf [128]; void *res; +#ifdef __NetBSD__ + key_t skey; + int shms; + + g_snprintf (buf, sizeof (buf), "/tmp/mono.%d", GPOINTER_TO_INT (pid)); + + fd = open(buf, O_RDONLY, S_IRUSR|S_IRGRP); + if (fd == -1) + return NULL; + if ((skey = ftok(buf, 'M')) != ((key_t)-1) || + (shms = shmget(skey, mono_pagesize(), IPC_CREAT)) != -1 || + (res = shmat(shms, NULL, 0)) == ((void*)-1)) { + close(fd); + return NULL; + } +#else g_snprintf (buf, sizeof (buf), "/mono.%d", GPOINTER_TO_INT (pid)); fd = shm_open (buf, O_RDONLY, S_IRUSR|S_IRGRP); @@@@ -507,6 +569,7 @@@@ close (fd); return NULL; } +#endif /* FIXME: validate the area */ /* we don't need the file descriptor anymore */ close (fd); @@@@ -517,7 +580,11 @@@@ mono_shared_area_unload (void *area) { /* FIXME: currently we load only a page */ +#ifdef __NetBSD__ + shmdt(area); +#else munmap (area, mono_pagesize ()); +#endif } int @ 1.3 log @Welcome to Mono 2.2. Changes since version 2.0 include improved performance, Full AOT and SIMD For full changelist see: http://www.mono-project.com/Release_Notes_Mono_2.2 @ text @d1 1 a1 1 $NetBSD$ @ 1.2 log @Update to mono 2.0 Improved performance, more features, C# 3.0, complete LINQ support etc. For a more complete list of changes please consult: http://www.mono-project.com/Release_Notes_Mono_2.0 @ text @d1 155 a155 12 $NetBSD: patch-cg,v 1.1 2008/08/09 19:57:51 kefren Exp $ --- mcs/class/System.Web/System.Web.UI.HtmlControls/HtmlControl.cs.orig 2007-11-09 00:10:32.000000000 +0200 +++ mcs/class/System.Web/System.Web.UI.HtmlControls/HtmlControl.cs 2008-08-09 22:23:02.000000000 +0300 @@@@ -90,7 +90,7 @@@@ catch (Exception) { throw new HttpException(attribName + " property had malformed url"); } - writer.WriteAttribute(attribName, attr); + writer.WriteAttribute(attribName, attr, true); Attributes.Remove(attribName); } } @ 1.1 log @fix an cross site scripting vulnerability bump PKGREVISION @ text @d1 1 a1 1 $NetBSD$ @ 1.1.2.1 log @file patch-cg was added on branch pkgsrc-2008Q2 on 2008-08-10 15:27:26 +0000 @ text @d1 12 @ 1.1.2.2 log @Pullup ticket 2478 - requested by kefren Security patch for mono Revisions pulled up: - lang/mono/Makefile 1.69 - lang/mono/distinfo 1.36 - lang/mono/patches/patch-cf 1.1 - lang/mono/patches/patch-cg 1.1 - lang/mono/patches/patch-ch 1.1 - lang/mono/patches/patch-ci 1.1 - lang/mono/patches/patch-cj 1.1 - lang/mono/patches/patch-ck 1.1 --- Module Name: pkgsrc Committed By: kefren Date: Sat Aug 9 19:57:51 UTC 2008 Modified Files: pkgsrc/lang/mono: Makefile distinfo Added Files: pkgsrc/lang/mono/patches: patch-cf patch-cg patch-ch patch-ci patch-cj patch-ck Log Message: fix an cross site scripting vulnerability bump PKGREVISION @ text @a0 12 $NetBSD: patch-cg,v 1.1 2008/08/09 19:57:51 kefren Exp $ --- mcs/class/System.Web/System.Web.UI.HtmlControls/HtmlControl.cs.orig 2007-11-09 00:10:32.000000000 +0200 +++ mcs/class/System.Web/System.Web.UI.HtmlControls/HtmlControl.cs 2008-08-09 22:23:02.000000000 +0300 @@@@ -90,7 +90,7 @@@@ catch (Exception) { throw new HttpException(attribName + " property had malformed url"); } - writer.WriteAttribute(attribName, attr); + writer.WriteAttribute(attribName, attr, true); Attributes.Remove(attribName); } } @