Your message dated Sat, 23 Jan 2016 21:57:29 -0500
with message-id <[email protected]>
and subject line Re: Bug#812318: libsvn-perl: SVN::Core::dirent_canonicalize
segfaults on undef
has caused the Debian Bug report #812318,
regarding libsvn-perl: SVN::Core::dirent_canonicalize segfaults on undef
to be marked as done.
This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.
(NB: If you are a system administrator and have no idea what this
message is talking about, this may indicate a serious mail system
misconfiguration somewhere. Please contact [email protected]
immediately.)
--
812318: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=812318
Debian Bug Tracking System
Contact [email protected] with problems
--- Begin Message ---
Package: libsvn-perl
Version: 1.9.3-2
Severity: important
$ perl -MSVN::Core -e 'SVN::Core::dirent_canonicalize(undef)'
zsh: segmentation fault (core dumped) perl -MSVN::Core -e
'SVN::Core::dirent_canonicalize(undef)'
In case of undef, I suppose that the Perl module should pass the empty
string to the library (for which there are no errors), or return some
other kind of error.
I have not tried other kinds of arguments, but in any case, the
module should make sure that a valid string is passed to the
library.
-- System Information:
Debian Release: stretch/sid
APT prefers unstable-debug
APT policy: (500, 'unstable-debug'), (500, 'stable-updates'), (500,
'unstable'), (500, 'testing'), (500, 'stable'), (1, 'experimental')
Architecture: amd64 (x86_64)
Kernel: Linux 4.3.0-1-amd64 (SMP w/8 CPU cores)
Locale: LANG=POSIX, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Init: systemd (via /run/systemd/system)
Versions of packages libsvn-perl depends on:
ii libapr1 1.5.2-3
ii libc6 2.21-6
ii libsvn1 1.9.3-2
ii perl 5.22.1-4
ii perl-base [perlapi-5.22.1] 5.22.1-4
libsvn-perl recommends no packages.
libsvn-perl suggests no packages.
-- no debconf information
--- End Message ---
--- Begin Message ---
On Fri, Jan 22, 2016 at 11:04:04AM +0100, Vincent Lefevre wrote:
> $ perl -MSVN::Core -e 'SVN::Core::dirent_canonicalize(undef)'
> zsh: segmentation fault (core dumped) perl -MSVN::Core -e
> 'SVN::Core::dirent_canonicalize(undef)'
>
> In case of undef, I suppose that the Perl module should pass the empty
> string to the library (for which there are no errors), or return some
> other kind of error.
As stated previously, and described on the Subversion dev list, the SWIG
bindings are very thin wrappers around the C library. Calling
svn_dirent_canonicalize with a NULL dirent will result in the same
behavior.
This isn't unfounded behavior for libraries which are given invalid
arguments (c.f., strlen(3)).
> I have not tried other kinds of arguments, but in any case, the
> module should make sure that a valid string is passed to the
> library.
*You* are calling the library, so you need to ensure you give it a valid
value. undef (or the NULL pointer SWIG treats it as for a string
argument) isn't a valid string.
To get the behavior you want, the suggestion upstream was that
higher-level libraries would need to be developed. That's not going to
happen within Debian, so I'm closing the bug.
Cheers,
--
James
GPG Key: 4096R/331BA3DB 2011-12-05 James McCoy <[email protected]>
--- End Message ---