Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Move the modules inside te lib/ directory #6

Closed
szabgab opened this issue Sep 13, 2013 · 3 comments
Closed

Move the modules inside te lib/ directory #6

szabgab opened this issue Sep 13, 2013 · 3 comments

Comments

@szabgab
Copy link
Collaborator

szabgab commented Sep 13, 2013

as it is more "standard" nowadays.

@dk
Copy link
Owner

dk commented Sep 13, 2013

hi Gabor

i don't really like this, could we discuss such things first?

/dk

On Fri, Sep 13, 2013 at 04:02:47AM -0700, Gabor Szabo wrote:

as it is more "standard" nowadays.


Reply to this email directly or view it on GitHub:
#6

Sincerely,
Dmitry Karasik

@szabgab
Copy link
Collaborator Author

szabgab commented Sep 13, 2013

sure, I was not sure what you would think, that's why I put it in a task

@dk
Copy link
Owner

dk commented Sep 13, 2013

oh I thought that was a committed change already! sorry for that :)

no I don't think that's a good thing, it doesn't give anything useful to project
and me (dev) needs extra dir changes to find the files I want to edit.

/dk

On Fri, Sep 13, 2013 at 08:22:25AM -0700, Gabor Szabo wrote:

sure, I was not sure what you would think, that's why I put it in a task


Reply to this email directly or view it on GitHub:
#6 (comment)

Sincerely,
Dmitry Karasik

@szabgab szabgab closed this as completed Sep 14, 2013
ppisar added a commit to ppisar/Prima that referenced this issue Feb 6, 2024
t/Image/Text.t frequently aborted with "buffer overflow detected" on
i686 and s390x platforms:

    #0  0x000003fff79ae3ca in __pthread_kill_implementation () at /lib64/libc.so.6
    dk#1  0x000003fff7954460 in raise () at /lib64/libc.so.6
    dk#2  0x000003fff793449c in abort () at /lib64/libc.so.6
    dk#3  0x000003fff79a0a2a in __libc_message_impl () at /lib64/libc.so.6
    dk#4  0x000003fff7a3aadc in __fortify_fail () at /lib64/libc.so.6
    dk#5  0x000003fff7a3a368 in __chk_fail () at /lib64/libc.so.6
    dk#6  0x000003fff7a3b400 in __memset_chk () at /lib64/libc.so.6
    dk#7  0x000003fff6ea4cce in bzero
        (__len=<optimized out>, __dest=0x580d3f50ee0, __dest=<optimized out>, __len=<optimized out>)
        at /usr/include/bits/strings_fortified.h:32
    dk#8  prima_fc_fonts (array=<optimized out>, facename=0x0, encoding=0x0, retCount=0x3ffffff929c)
        at unix/fontconfig.c:610
    dk#9  0x000003fff6dbd68e in Application_fonts
        (self=2929175997600, name=0x2aa007a31e0 "", encoding=0x2aa005d19b0 "") at class/Application.c:310
    dk#10 0x000003fff6dd1234 in Image_fonts_FROMPERL (my_perl=<optimized out>, cv=<optimized out>)
        at include/generic/Image.inc:375
    dk#11 0x000003fff7c4a69a in Perl_pp_entersub () at /lib64/libperl.so.5.38
    dk#12 0x000003fff7c3a6f2 in Perl_runops_standard () at /lib64/libperl.so.5.38
    dk#13 0x000003fff7b7b994 in perl_run () at /lib64/libperl.so.5.38
    dk#14 0x000002aa000013ae in main ()

There were two issues: prima_fc_fonts(..., int *retCount) incorrectly
updated its last argument. Next, when called again, it used this wrong
argument to compute how much memory will be allocated. However, during
this computation an integer could overflow. Then not enough memory
could be allocated, and finally bzero() could be asked to zero
a memory beyond that allocation.

This patch fixes both issues.

CPAN RT#151594
ppisar added a commit to ppisar/Prima that referenced this issue Feb 6, 2024
t/Image/Text.t frequently aborted with "buffer overflow detected" on
i686 and s390x platforms:

    #0  0x000003fff79ae3ca in __pthread_kill_implementation () at /lib64/libc.so.6
    dk#1  0x000003fff7954460 in raise () at /lib64/libc.so.6
    dk#2  0x000003fff793449c in abort () at /lib64/libc.so.6
    dk#3  0x000003fff79a0a2a in __libc_message_impl () at /lib64/libc.so.6
    dk#4  0x000003fff7a3aadc in __fortify_fail () at /lib64/libc.so.6
    dk#5  0x000003fff7a3a368 in __chk_fail () at /lib64/libc.so.6
    dk#6  0x000003fff7a3b400 in __memset_chk () at /lib64/libc.so.6
    dk#7  0x000003fff6ea4cce in bzero
        (__len=<optimized out>, __dest=0x580d3f50ee0, __dest=<optimized out>, __len=<optimized out>)
        at /usr/include/bits/strings_fortified.h:32
    dk#8  prima_fc_fonts (array=<optimized out>, facename=0x0, encoding=0x0, retCount=0x3ffffff929c)
        at unix/fontconfig.c:610
    dk#9  0x000003fff6dbd68e in Application_fonts
        (self=2929175997600, name=0x2aa007a31e0 "", encoding=0x2aa005d19b0 "") at class/Application.c:310
    dk#10 0x000003fff6dd1234 in Image_fonts_FROMPERL (my_perl=<optimized out>, cv=<optimized out>)
        at include/generic/Image.inc:375
    dk#11 0x000003fff7c4a69a in Perl_pp_entersub () at /lib64/libperl.so.5.38
    dk#12 0x000003fff7c3a6f2 in Perl_runops_standard () at /lib64/libperl.so.5.38
    dk#13 0x000003fff7b7b994 in perl_run () at /lib64/libperl.so.5.38
    dk#14 0x000002aa000013ae in main ()

prima_fc_fonts(..., int *retCount) uses *retCount argument to compute
how much memory will be allocated. However, if value of this argument
is too big, during this computation an integer could overflow. Then
not enough memory could be allocated, and finally bzero() could be
asked to zero a memory beyond that allocation.

This patch fixes the overflow. Why the argument is insantely large is
not clear yet.

CPAN RT#151594
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants