FreeBSD Bugzilla – Attachment 197389 Details for
Bug 231622
net/mpd5: Remove BROKEN_SSL
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Help
|
New Account
|
Log In
Remember
[x]
|
Forgot Password
Login:
[x]
[patch]
Unmark BROKEN_SSL
mpd5 (text/plain), 18.26 KB, created by
Nathan
on 2018-09-23 02:49:47 UTC
(
hide
)
Description:
Unmark BROKEN_SSL
Filename:
MIME Type:
Creator:
Nathan
Created:
2018-09-23 02:49:47 UTC
Size:
18.26 KB
patch
obsolete
>net/mpd5: > > - Unmark BROKEN_SSL, LDFLAGS fixes it > - Re-arrange variables, none-OPTION relatated variables doesn't go after > >PR: 231622 >Submitted by: Nathan <ndowens@yahoo.com> > >Index: net/mpd5/Makefile >=================================================================== >--- net/mpd5/Makefile (revision 480450) >+++ net/mpd5/Makefile (working copy) >@@ -14,21 +14,24 @@ > > LICENSE= BSD3CLAUSE > >-BROKEN_SSL= openssl-devel openssl111 >-BROKEN_SSL_REASON_openss-devel= needs libfetch(3) linked with system libssl >-BROKEN_SSL_REASON_openssl111= needs libfetch(3) linked with system libssl >+USES= ssl > >-OPTIONS_DEFINE= DOCS NG_IPACCT >-NG_IPACCT_DESC= Use ng_ipacct kernel module from port >- >+USE_RC_SUBR= mpd5 > HAS_CONFIGURE= YES > CONFIGURE_WRKSRC= "${WRKSRC}/src" >+MAKE_ARGS+= OSVERSION=${OSVERSION} > >-USES= ssl >+LDFLAGS= -L${LOCALBASE}/lib > >+CONFSUF= conf secret script >+DOCSDIR= ${PREFIX}/share/doc/mpd5 >+PORTDOCS= README mpd* >+PLIST_FILES= ${CONFSUF:S/^/etc\/mpd5\/mpd./:S/$/.sample/} sbin/mpd5 >+ > .include <bsd.port.options.mk> > >-MAKE_ARGS+= OSVERSION=${OSVERSION} >+OPTIONS_DEFINE= DOCS NG_IPACCT >+NG_IPACCT_DESC= Use ng_ipacct kernel module from port > > .if ${PORT_OPTIONS:MNG_IPACCT} > BUILD_DEPENDS+= ${LOCALBASE}/include/netgraph/ng_ipacct.h:net-mgmt/ng_ipacct >@@ -39,12 +42,6 @@ > .endif > .endif > >-USE_RC_SUBR= mpd5 >-CONFSUF= conf secret script >-DOCSDIR= ${PREFIX}/share/doc/mpd5 >-PORTDOCS= README mpd* >-PLIST_FILES= ${CONFSUF:S/^/etc\/mpd5\/mpd./:S/$/.sample/} sbin/mpd5 >- > .if !defined(WITHOUT_MAN) > PLIST_FILES+= man/man8/mpd5.8.gz > .endif >Index: net/mpd5/files/patch-console.c >=================================================================== >--- net/mpd5/files/patch-console.c (revision 480450) >+++ net/mpd5/files/patch-console.c (working copy) >@@ -1,15 +1,5 @@ >---- src/console.h.orig 2016-01-06 22:42:06.000000000 +0700 >-+++ src/console.h 2017-06-16 21:12:59.268715000 +0700 >-@@ -119,6 +119,7 @@ >- extern int ConsoleStat(Context ctx, int ac, char *av[], void *arg); >- extern Context StdConsoleConnect(Console c); >- extern void ConsoleShutdown(Console c); >-+ extern void ConsoleCancelCleanup(void *rwlock); >- >- extern int UserCommand(Context ctx, int ac, char *av[], void *arg); >- extern int UserStat(Context ctx, int ac, char *av[], void *arg); >---- src/console.c.orig 2016-01-06 22:42:06.000000000 +0700 >-+++ src/console.c 2017-06-16 21:54:48.919442000 +0700 >+--- src/console.c.orig 2016-01-06 15:42:06 UTC >++++ src/console.c > @@ -175,6 +175,14 @@ ConsoleClose(Console c) > return 0; > } >@@ -25,7 +15,7 @@ > /* > * ConsoleStat() > */ >-@@ -192,13 +200,14 @@ ConsoleStat(Context ctx, int ac, char *a >+@@ -192,13 +200,14 @@ ConsoleStat(Context ctx, int ac, char *av[], void *arg > Printf("\tIP-Address : %s\r\n", u_addrtoa(&c->addr,addrstr,sizeof(addrstr))); > Printf("\tPort : %d\r\n", c->port); > >@@ -41,7 +31,7 @@ > > Printf("Global options:\r\n"); > OptStat(ctx, &c->options, gConfList); >-@@ -905,13 +914,14 @@ UserStat(Context ctx, int ac, char *av[] >+@@ -905,13 +914,14 @@ UserStat(Context ctx, int ac, char *av[], void *arg) > ConsoleUser u; > > Printf("Configured users:\r\n"); >@@ -57,9 +47,19 @@ > > return 0; > } >---- src/log.c.orig 2016-01-06 22:42:06.000000000 +0700 >-+++ src/log.c 2017-06-16 21:16:19.643625000 +0700 >-@@ -256,12 +256,13 @@ vLogPrintf(const char *fmt, va_list args >+--- src/console.h.orig 2016-01-06 15:42:06 UTC >++++ src/console.h >+@@ -119,6 +119,7 @@ >+ extern int ConsoleStat(Context ctx, int ac, char *av[], void *arg); >+ extern Context StdConsoleConnect(Console c); >+ extern void ConsoleShutdown(Console c); >++ extern void ConsoleCancelCleanup(void *rwlock); >+ >+ extern int UserCommand(Context ctx, int ac, char *av[], void *arg); >+ extern int UserStat(Context ctx, int ac, char *av[], void *arg); >+--- src/log.c.orig 2016-01-06 15:42:06 UTC >++++ src/log.c >+@@ -256,12 +256,13 @@ vLogPrintf(const char *fmt, va_list args) > #ifdef SYSLOG_FACILITY > syslog(LOG_INFO, "%s", buf); > #endif >Index: net/mpd5/files/patch-fixbuffer >=================================================================== >--- net/mpd5/files/patch-fixbuffer (revision 480450) >+++ net/mpd5/files/patch-fixbuffer (working copy) >@@ -1,125 +1,99 @@ >-Index: src/iface.c >-=================================================================== >-RCS file: /cvsroot/mpd/mpd/src/iface.c,v >-retrieving revision 1.228 >-retrieving revision 1.230 >-diff -u -p -r1.228 -r1.230 >---- src/iface.c 17 May 2017 08:47:53 -0000 1.228 >-+++ src/iface.c 1 Jul 2017 21:32:07 -0000 1.230 >-@@ -141,6 +141,7 @@ >- static int IfaceAllocACL (struct acl_pool ***ap, int start, char * ifname, int number); >- static int IfaceFindACL (struct acl_pool *ap, char * ifname, int number); >- static char * IfaceParseACL (char * src, IfaceState iface); >-+ static char * IfaceFixAclForDelete(char *r, char *buf, size_t len); >+--- src/iface.c.orig 2016-01-06 15:42:06 UTC >++++ src/iface.c >+@@ -161,7 +161,7 @@ >+ IfaceSetCommand, NULL, 2, (void *) SET_ADDRS }, >+ { "route {dest}[/{width}]", "Add IP route", >+ IfaceSetCommand, NULL, 2, (void *) SET_ROUTE }, >+- { "mtu {size}", "Set max allowed interface MTU", >++ { "mtu {size} [override]", "Set max allowed or override interface MTU", >+ IfaceSetCommand, NULL, 2, (void *) SET_MTU }, >+ { "name [{name}]", "Set interface name", >+ IfaceSetCommand, NULL, 2, (void *) SET_NAME }, >+@@ -288,6 +288,7 @@ IfaceInit(Bund b) >+ /* Default configuration */ >+ iface->mtu = NG_IFACE_MTU_DEFAULT; >+ iface->max_mtu = NG_IFACE_MTU_DEFAULT; >++ iface->mtu_override = 0; >+ #ifdef SIOCSIFDESCR >+ iface->ifdescr = NULL; >+ iface->conf.ifdescr = NULL; >+@@ -1549,15 +1550,30 @@ IfaceSetCommand(Context ctx, int ac, char *av[], void >+ case SET_MTU: >+ { >+ int max_mtu; >++ int override; >+ >+ /* Check */ >+- if (ac != 1) >++ if (ac < 1 || ac > 2) >+ return(-1); >+ >+ max_mtu = atoi(av[0]); >++ override = 0; >++ >++ if (ac == 2 && av[1][0]) { >++ if (strcmp(av[1], "override") == 0) >++ override = 1; >++ else >++ Error("Invalid keyword %s", av[1]); >++ } >++ >+ if (max_mtu < IFACE_MIN_MTU || max_mtu > IFACE_MAX_MTU) >+- Error("Invalid interface mtu %d", max_mtu); >+- iface->max_mtu = max_mtu; >++ if (!override || max_mtu != 0) >++ Error("Invalid interface mtu %d", max_mtu); >++ >++ if (max_mtu != 0) >++ iface->max_mtu = max_mtu; >++ if (override) >++ iface->mtu_override = max_mtu; >+ } >+ break; >+ >+@@ -1686,6 +1702,7 @@ IfaceStat(Context ctx, int ac, char *av[], void *arg) >+ Printf("\tGroup : %s\r\n", iface->conf.ifgroup); > #endif >+ Printf("\tMaximum MTU : %d bytes\r\n", iface->max_mtu); >++ Printf("\tMTU override : %d bytes\r\n", iface->mtu_override); >+ Printf("\tIdle timeout : %d seconds\r\n", iface->idle_timeout); >+ Printf("\tSession timeout : %d seconds\r\n", iface->session_timeout); >+ if (!u_rangeempty(&iface->conf.self_addr)) { >+@@ -1816,14 +1833,18 @@ IfaceSetMTU(Bund b, int mtu) >+ return; >+ } > >- static int IfaceSetName(Bund b, const char * ifname); >-@@ -602,18 +603,18 @@ IfaceUp(Bund b, int ready) >- while (acls != NULL) { >- /* allow both %aX and `peer_addr` macros */ >- buf = IfaceParseACL(acls->rule, iface); >-- strcpy(acls->rule, buf); >-+ acl = Mdup2(MB_IPFW, acls, sizeof(struct acl), sizeof(struct acl) + strlen(buf)); >-+ strcpy(acl->rule, buf); >- Freee(buf); >-- acl = Mdup(MB_IPFW, acls, sizeof(struct acl) + strlen(acls->rule)); >- acl->next = iface->tables; >- iface->tables = acl; >-- if (strncmp(acls->rule, "peer_addr", 9) == 0) { >-+ if (strncmp(acl->rule, "peer_addr", 9) == 0) { >- char hisaddr[20]; >- ExecCmd(LG_IFACE2, b->name, "%s table %d add %s", >-- PATH_IPFW, acls->real_number, >-+ PATH_IPFW, acl->real_number, >- u_addrtoa(&iface->peer_addr, hisaddr, sizeof(hisaddr))); >- } else { >-- ExecCmd(LG_IFACE2, b->name, "%s table %d add %s", PATH_IPFW, acls->real_number, acls->rule); >-+ ExecCmd(LG_IFACE2, b->name, "%s table %d add %s", PATH_IPFW, acl->real_number, acl->rule); >+- if ((b->params.mtu > 0) && (mtu > b->params.mtu)) { >++ if (!iface->mtu_override && (b->params.mtu > 0) && (mtu > b->params.mtu)) { >+ mtu = b->params.mtu; >+ Log(LG_IFACE2, ("[%s] IFACE: forcing MTU of auth backend: %d bytes", >+ b->name, mtu)); > } >- acls = acls->next; >- }; >-@@ -697,8 +698,10 @@ IfaceDown(Bund b) >- PATH_IPFW, acl->real_number, >- u_addrtoa(&iface->peer_addr, hisaddr, sizeof(hisaddr))); >- } else { >-+ char buf[ACL_LEN]; >- ExecCmd(LG_IFACE2, b->name, "%s table %d delete %s", >-- PATH_IPFW, acl->real_number, acl->rule); >-+ PATH_IPFW, acl->real_number, >-+ IfaceFixAclForDelete(acl->rule, buf, sizeof(buf))); >- } >- aclnext = acl->next; >- Freee(acl); >-@@ -946,6 +949,60 @@ IfaceParseACL (char * src, IfaceState if >- Freee(buf1); >- return(buf); >- } >+ >+- /* Limit MTU to configured maximum */ >+- if (mtu > iface->max_mtu) >++ /* Limit MTU to configured maximum/override */ >++ if (iface->mtu_override) { >++ mtu = iface->mtu_override; >++ Log(LG_IFACE2, ("[%s] IFACE: forcing MTU override: %d bytes", >++ b->name, mtu)); >++ } else if (mtu > iface->max_mtu) >+ mtu = iface->max_mtu; >+ >+ /* Set MTU on interface */ >+@@ -3003,6 +3024,9 @@ IfaceSetupMSS(Bund b, uint16_t maxMSS) >+ /* Send configure message. */ >+ memset(&tcpmsscfg, 0, sizeof(tcpmsscfg)); >+ tcpmsscfg.maxMSS = maxMSS; > + >-+/* >-+ * IfaceFixAclForDelete() >-+ * >-+ * Removes values from ipfw 'table-key value [...]' expression r, if any. >-+ * Returns buf pointer for modified expression or original r pointer >-+ * if no modifications were performed when no values were found or >-+ * buf found too short. >-+ * >-+ * len is size of buf. Strings are zero-terminated. >-+ * r and buf must point to non-overlapping memory areas. >-+ */ >-+ >-+static char* >-+IfaceFixAclForDelete(char *r, char *buf, size_t len) >-+{ >-+ static const char sep[] = " \t"; >-+ char *limit, *s; >-+ int i, state = 0; >-+ >-+/* >-+ * Possible state values: >-+ * >-+ * -1: skip value (otherwise copy); >-+ * 0: first iteration, do copy; >-+ * 1: not first iteration, do copy. >-+*/ >-+ >-+ s = buf; >-+ limit = buf + len; >-+ >-+ for (r += strspn(r, sep); /* Skip leading spaces. */ >-+ *r; /* Check for end of string. */ >-+ r += i, r += strspn(r, sep)) /* Advance and skip spaces again. */ >-+ { >-+ i = strcspn(r, sep); /* Find separator or end of string. */ >-+ if (state == 0 && r[i] == '\0') /* No separators in the rule? */ >-+ return r; >-+ if (state < 0) { /* Skip value. */ >-+ state = 1; >-+ continue; >-+ } >-+ if (limit - s < i + 1 + state) /* Check space. */ >-+ return r; >-+ if (state != 0) /* Insert separator. */ >-+ *s++ = ' '; >-+ memcpy(s, r, i); /* Copy IP address from the rule. */ >-+ s += i; >-+ state = -1; >-+ } >-+ *s = '\0'; >-+ >-+ return buf; >-+} >- #endif /* USE_IPFW */ >++ Log(LG_IFACE2, ("[%s] IFACE: Configuring ng_tcpmss %s %u", >++ b->name, path, (unsigned)tcpmsscfg.maxMSS)); > >- /* >-Index: src/mbuf.c >-=================================================================== >-RCS file: /cvsroot/mpd/mpd/src/mbuf.c,v >-retrieving revision 1.30 >-retrieving revision 1.31 >-diff -u -p -r1.30 -r1.31 >---- src/mbuf.c 14 Jun 2011 10:40:19 -0000 1.30 >-+++ src/mbuf.c 29 Jun 2017 08:21:35 -0000 1.31 >-@@ -55,6 +55,20 @@ Mdup(const char *type, const void *src, >+ snprintf(tcpmsscfg.inHook, sizeof(tcpmsscfg.inHook), "in"); >+ snprintf(tcpmsscfg.outHook, sizeof(tcpmsscfg.outHook), "out"); >+--- src/mbuf.c.orig 2016-01-06 15:42:06 UTC >++++ src/mbuf.c >+@@ -55,6 +55,20 @@ Mdup(const char *type, const void *src, size_t size) > } > > void * >@@ -140,14 +114,8 @@ > Mstrdup(const char *type, const void *src) > { > return (Mdup(type, src, strlen(src) + 1)); >-Index: src/mbuf.h >-=================================================================== >-RCS file: /cvsroot/mpd/mpd/src/mbuf.h,v >-retrieving revision 1.25 >-retrieving revision 1.26 >-diff -u -p -r1.25 -r1.26 >---- src/mbuf.h 7 Oct 2013 11:52:35 -0000 1.25 >-+++ src/mbuf.h 29 Jun 2017 08:21:35 -0000 1.26 >+--- src/mbuf.h.orig 2016-01-06 15:42:06 UTC >++++ src/mbuf.h > @@ -73,6 +73,7 @@ > > extern void *Malloc(const char *type, size_t size) __malloc_like; >Index: net/mpd5/files/patch-fixstats >=================================================================== >--- net/mpd5/files/patch-fixstats (revision 480450) >+++ net/mpd5/files/patch-fixstats (working copy) >@@ -1,7 +1,7 @@ > Index: src/bund.c > =================================================================== >---- src/bund.c (revision 2246) >-+++ src/bund.c (revision 2247) >+--- src/bund.c.orig 2016-01-06 15:42:06 UTC >++++ src/bund.c > @@ -1394,9 +1394,9 @@ BundUpdateStats(Bund b) > b->stats.runts += abs(stats.runts - b->oldStats.runts); > b->stats.dupFragments += abs(stats.dupFragments - b->oldStats.dupFragments); >@@ -13,10 +13,8 @@ > #else > NgFuncGetStats64(b, l, &b->stats); > #endif >-Index: src/link.c >-=================================================================== >---- src/link.c (revision 2246) >-+++ src/link.c (revision 2247) >+--- src/link.c.orig 2016-01-06 15:42:06 UTC >++++ src/link.c > @@ -1359,9 +1359,9 @@ LinkUpdateStats(Link l) > l->stats.runts += abs(stats.runts - l->oldStats.runts); > l->stats.dupFragments += abs(stats.dupFragments - l->oldStats.dupFragments); >Index: net/mpd5/files/patch-mtu-override >=================================================================== >--- net/mpd5/files/patch-mtu-override (revision 480450) >+++ net/mpd5/files/patch-mtu-override (working copy) >@@ -1,7 +1,7 @@ > Index: src/iface.h > =================================================================== >---- src/iface.h (revision 2246) >-+++ src/iface.h (working copy) >+--- src/iface.h.orig 2016-01-06 15:42:06 UTC >++++ src/iface.h > @@ -107,6 +107,7 @@ > u_char traffic[IFACE_IDLE_SPLIT]; /* Mark any traffic */ > u_short mtu; /* Interface MTU */ >@@ -10,98 +10,3 @@ > struct optinfo options; /* Configuration options */ > u_int idle_timeout; /* Idle timeout */ > u_int session_timeout; /* Session timeout */ >-Index: src/iface.c >-=================================================================== >---- src/iface.c (revision 2246) >-+++ src/iface.c (working copy) >-@@ -162,7 +162,7 @@ >- IfaceSetCommand, NULL, 2, (void *) SET_ADDRS }, >- { "route {dest}[/{width}]", "Add IP route", >- IfaceSetCommand, NULL, 2, (void *) SET_ROUTE }, >-- { "mtu {size}", "Set max allowed interface MTU", >-+ { "mtu {size} [override]", "Set max allowed or override interface MTU", >- IfaceSetCommand, NULL, 2, (void *) SET_MTU }, >- { "name [{name}]", "Set interface name", >- IfaceSetCommand, NULL, 2, (void *) SET_NAME }, >-@@ -289,6 +289,7 @@ IfaceInit(Bund b) >- /* Default configuration */ >- iface->mtu = NG_IFACE_MTU_DEFAULT; >- iface->max_mtu = NG_IFACE_MTU_DEFAULT; >-+ iface->mtu_override = 0; >- #ifdef SIOCSIFDESCR >- iface->ifdescr = NULL; >- iface->conf.ifdescr = NULL; >-@@ -1606,15 +1607,30 @@ IfaceSetCommand(Context ctx, int ac, cha >- case SET_MTU: >- { >- int max_mtu; >-+ int override; >- >- /* Check */ >-- if (ac != 1) >-+ if (ac < 1 || ac > 2) >- return(-1); >- >- max_mtu = atoi(av[0]); >-+ override = 0; >-+ >-+ if (ac == 2 && av[1][0]) { >-+ if (strcmp(av[1], "override") == 0) >-+ override = 1; >-+ else >-+ Error("Invalid keyword %s", av[1]); >-+ } >-+ >- if (max_mtu < IFACE_MIN_MTU || max_mtu > IFACE_MAX_MTU) >-- Error("Invalid interface mtu %d", max_mtu); >-- iface->max_mtu = max_mtu; >-+ if (!override || max_mtu != 0) >-+ Error("Invalid interface mtu %d", max_mtu); >-+ >-+ if (max_mtu != 0) >-+ iface->max_mtu = max_mtu; >-+ if (override) >-+ iface->mtu_override = max_mtu; >- } >- break; >- >-@@ -1743,6 +1759,7 @@ IfaceStat(Context ctx, int ac, char *av[ >- Printf("\tGroup : %s\r\n", iface->conf.ifgroup); >- #endif >- Printf("\tMaximum MTU : %d bytes\r\n", iface->max_mtu); >-+ Printf("\tMTU override : %d bytes\r\n", iface->mtu_override); >- Printf("\tIdle timeout : %d seconds\r\n", iface->idle_timeout); >- Printf("\tSession timeout : %d seconds\r\n", iface->session_timeout); >- if (!u_rangeempty(&iface->conf.self_addr)) { >-@@ -1873,14 +1890,18 @@ IfaceSetMTU(Bund b, int mtu) >- return; >- } >- >-- if ((b->params.mtu > 0) && (mtu > b->params.mtu)) { >-+ if (!iface->mtu_override && (b->params.mtu > 0) && (mtu > b->params.mtu)) { >- mtu = b->params.mtu; >- Log(LG_IFACE2, ("[%s] IFACE: forcing MTU of auth backend: %d bytes", >- b->name, mtu)); >- } >- >-- /* Limit MTU to configured maximum */ >-- if (mtu > iface->max_mtu) >-+ /* Limit MTU to configured maximum/override */ >-+ if (iface->mtu_override) { >-+ mtu = iface->mtu_override; >-+ Log(LG_IFACE2, ("[%s] IFACE: forcing MTU override: %d bytes", >-+ b->name, mtu)); >-+ } else if (mtu > iface->max_mtu) >- mtu = iface->max_mtu; >- >- /* Set MTU on interface */ >-@@ -3061,6 +3082,9 @@ IfaceSetupMSS(Bund b, uint16_t maxMSS) >- memset(&tcpmsscfg, 0, sizeof(tcpmsscfg)); >- tcpmsscfg.maxMSS = maxMSS; >- >-+ Log(LG_IFACE2, ("[%s] IFACE: Configuring ng_tcpmss %s %u", >-+ b->name, path, (unsigned)tcpmsscfg.maxMSS)); >-+ >- snprintf(tcpmsscfg.inHook, sizeof(tcpmsscfg.inHook), "in"); >- snprintf(tcpmsscfg.outHook, sizeof(tcpmsscfg.outHook), "out"); >- if (NgSendMsg(gLinksCsock, path, NGM_TCPMSS_COOKIE, NGM_TCPMSS_CONFIG, >Index: net/mpd5/files/patch-src_pppoe.c >=================================================================== >--- net/mpd5/files/patch-src_pppoe.c (revision 480450) >+++ net/mpd5/files/patch-src_pppoe.c (working copy) >@@ -73,7 +73,7 @@ > { > union { > u_char buf[sizeof(struct ng_mesg) + 2048]; >-@@ -892,11 +901,6 @@ CreatePppoeNode(struct PppoeIf *PIf, con >+@@ -892,11 +901,6 @@ CreatePppoeNode(struct PppoeIf *PIf, const char *path, > uint32_t f; > > /* Make sure interface is up. */ >@@ -94,7 +94,7 @@ > strlcpy(PppoeIfs[free].ifnodepath, > pi->path, > sizeof(PppoeIfs[free].ifnodepath)); >-@@ -1673,7 +1677,7 @@ PppoeSetCommand(Context ctx, int ac, cha >+@@ -1673,7 +1677,7 @@ PppoeSetCommand(Context ctx, int ac, char *av[], void > { > const PppoeInfo pi = (PppoeInfo) ctx->lnk->info; > const char *hookname = ETHER_DEFAULT_HOOK; >@@ -103,7 +103,7 @@ > #ifdef NGM_PPPOE_SETMAXP_COOKIE > int ap; > #endif >-@@ -1684,9 +1688,17 @@ PppoeSetCommand(Context ctx, int ac, cha >+@@ -1684,9 +1688,17 @@ PppoeSetCommand(Context ctx, int ac, char *av[], void > hookname = av[1]; > /* fall through */ > case 1:
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
Attachments on
bug 231622
:
197389
|
197390
|
197391