[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [NP] gftp 2.0.14
Am Montag, 3. Februar 2003 13:13 schrieb Alf Schlichting:
> Am Sonntag, 2. Februar 2003 17:37 schrieb COUDERC Damien:
> > == New Port Submit ===================================================
snip---
> Hi!
> While trying to build the new gftp
> (http://www.sigmasoft.com/~openbsd/archive/openbsd-ports/200302/msg00007.ht
>ml ) i got the following error from systrace:
>
> $ systrace -Ui make
> .....build......
> r.lo gtkvscale.lo gtkvscrollbar.lo gtkvseparator.lo gtkwidget.lo
> gtkwindow.lo gtkwindow-decorate.lo fnmatch.lo gtkplug.lo gtksocket.lo
> -liconv -lintl -liconv
> rm -fr .libs/libgtk-x11-2.0.la .libs/libgtk-x11-2.0.*
> .libs/libgtk-x11-2.0.* generating symbol list for `libgtk-x11-2.0.la'
> systrace: intercept_filename: filename too long
> Killed
> $
>
> This happens when gtk+2-2.0.9 is built as a dependency.
>
> regards,
> Alf
>
Hi,
I think i tracked it down a little more:
i hacked up systrace to be a little more verbose.
This is the part thats throwing the error:
/usr/src/bin/systrace/intercept.c:
....
char *
intercept_filename(int fd, pid_t pid, void *addr, int userp)
{
....
if (havecwd && name[0] != '/') {
if (strlcat(cwd, "/", sizeof(cwd)) >= sizeof(cwd))
goto error;
if (strlcat(cwd, name, sizeof(cwd)) >= sizeof(cwd))
goto error;
} else {
/* Have a look at cwd and its size before: */
fprintf(stderr, "%s, size: %d\n", cwd, strlen(cwd));
if (strlcpy(cwd, name, sizeof(cwd)) >= sizeof(cwd))
{
/* and after */
fprintf(stderr, "after err: %s, size: %d\n", cwd, strlen(cwd));
goto error;
}
}
....
and this is what is printed to stderr:
....
's/, size: 3
after err: /usr/bin/nm -B gtkaccelgroup.lo gtkaccelmap.lo gtkaccellabel.lo
gtkaccessible.lo gtkadjustment.lo gtkalignment.lo gtkarrow.lo
gtkaspectframe.lo gtkbin.lo gtkbindings.lo gtkbbox.lo gtkbox.lo gtkbutton.lo
gtkcalendar.lo gtkcellrenderer.lo gtkcelleditable.lo gtkcellrenderertext.lo
gtkcellrenderertoggle.lo gtkcellrendererpixbuf.lo gtkcheckbutton.lo
gtkcheckmenuitem.lo gtkseparatormenuitem.lo gtkclipboard.lo gtkclist.lo
gtkcolorsel.lo gtkcolorseldialog.lo gtkcombo.lo gtkcontainer.lo gtkctree.lo
gtkcurve.lo gtkdialog.lo gtkdnd.lo gtkdrawingarea.lo gtkeditable.lo
gtkentry.lo gtkeventbox.lo gtkfilesel.lo gtkfixed.lo gtkfontsel.lo
gtkframe.lo gtkgamma.lo gtkgc.lo gtkhandlebox.lo gtkhbbox.lo gtkhbox.lo
gtkhpaned.lo gtkhruler.lo gtkhscale.lo gtkhscrollbar.lo gtkhseparator.lo
gtkhsv.lo gtkiconfactory.lo gtkimage.lo gtkimagemenuitem.lo gtkimcontext.lo
gtkimcontextsimple.lo gtkimmodule.lo gtkimmulticontext.lo gtkinputdialog.lo
gtkinvisible.lo gtkitem.lo gtkitemfactory.lo gtkkeyhash.lo gtklabel.lo
gtklayout.lo gtklist.lo gtklistitem.lo gtkliststore.lo gtkmain.lo
gtkmarshalers.lo gtkmarshal.lo gtkmenu.lo gtkmenubar.lo gtkmenuitem.lo
gtkmenushell.lo gtkmessagedialog.lo gtkmisc.lo gtknotebook.lo gtkobject.lo
gtkoldeditable.lo gtkoptionmenu.lo gtkpaned.lo gtkpixmap.lo gtkpreview.lo
gtkprogress.lo gtkprogressbar.lo gtkradiobutton.lo gtkradiomenuitem.lo
gtkrange.lo gtkrbtree.lo gtkrc.lo gtkruler.lo gtkscale.lo gtkscrollbar.lo
gtkscrolledwindow.lo gtkselection.lo gtkseparator.lo gtksettings.lo
gtksignal.lo gtksizegroup.lo gtkspinbutton.lo gtkstock.lo gtkstyle.lo
gtkstatusbar.lo gtktable.lo gtktearoffmenuitem.lo gtktext.lo gtktextbtree.lo
gtktextbuffer.lo gtktextchild.lo gtktextdisplay.lo gtktextiter.lo
gtktextlayout.lo gtktextmark.lo gtktextsegment.lo gtktexttag.lo
gtktexttagtable.lo gtktexttypes.lo gtktextutil.lo gtktextview.lo gtkthemes.lo
gtktipsquery.lo gtktogglebutton.lo gtktoolbar.lo gtktooltips.lo gtktree.lo
gtktreeitem.lo gtktreedatalist.lo gtktreednd.lo gtktreemodel.lo
gtktreemodelsort.lo gtktreeselection.lo gtktreesortable, size: 2047
.....
So actually strlcpy fails because cwd can only contain 2*MAXPATHLEN.
regards,
Alf
- References:
- Re: [NP] gftp 2.0.14
- From: Alf Schlichting <leopold-bloom@foni.net>(by way of Alf Schlichting <leopold-bloom@foni.net>)