Debian Bug report logs - #386267
FTBFS: sysutil.c:604: error: assignment of read-only member '__in'

version graph

Package: vsftpd; Maintainer for vsftpd is Daniel Baumann <mail@daniel-baumann.ch>; Source for vsftpd is src:vsftpd.

Reported by: Martin Michlmayr <tbm@cyrius.com>

Date: Wed, 6 Sep 2006 12:03:13 UTC

Severity: serious

Tags: fixed, patch

Found in version vsftpd/2.0.5-1

Fixed in versions 2.0.5-1.1, vsftpd/2.0.5-2

Done: Matej Vela <vela@debian.org>

Bug is archived. No further changes may be made.

Toggle useless messages

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to debian-bugs-dist@lists.debian.org, Daniel Jacobowitz <dan@debian.org>:
Bug#386267; Package vsftpd. Full text and rfc822 format available.

Acknowledgement sent to Martin Michlmayr <tbm@cyrius.com>:
New Bug report received and forwarded. Copy sent to Daniel Jacobowitz <dan@debian.org>. Full text and rfc822 format available.

Message #5 received at submit@bugs.debian.org (full text, mbox):

From: Martin Michlmayr <tbm@cyrius.com>
To: submit@bugs.debian.org
Subject: FTBFS: sysutil.c:604: error: assignment of read-only member '__in'
Date: Wed, 6 Sep 2006 13:34:43 +0200
Package: vsftpd
Version: 2.0.5-1
Severity: serious
Tags: patch

The problem here is that __typeof inherits the const.  Patch below,
although I don't know if there's a better way.

> Automatic build of vsftpd_2.0.5-1 on em64t by sbuild/amd64 0.49
...
> gcc -c sysutil.c -g -O2 -Wall -W -Wshadow  -idirafter dummyinc
> sysutil.c: In function 'vsf_sysutil_wait_exited_normally':
> sysutil.c:604: error: assignment of read-only member '__in'
> sysutil.c: In function 'vsf_sysutil_wait_get_exitcode':
> sysutil.c:614: error: assignment of read-only member '__in'
> make[1]: *** [sysutil.o] Error 1

--- sysutil.c~	2006-09-06 13:29:46.677233758 +0200
+++ sysutil.c	2006-09-06 13:30:43.824611192 +0200
@@ -601,7 +601,7 @@
 vsf_sysutil_wait_exited_normally(
   const struct vsf_sysutil_wait_retval* p_waitret)
 {
-  return WIFEXITED(p_waitret->exit_status);
+  return WIFEXITED((struct vsf_sysutil_wait_retval *)p_waitret->exit_status);
 }
 
 int
@@ -611,7 +611,7 @@
   {
     bug("not a normal exit in vsf_sysutil_wait_get_exitcode");
   }
-  return WEXITSTATUS(p_waitret->exit_status);
+  return WEXITSTATUS((struct vsf_sysutil_wait_retval *)p_waitret->exit_status);
 }
 
 void

-- 
Martin Michlmayr
http://www.cyrius.com/



Information forwarded to debian-bugs-dist@lists.debian.org, Daniel Jacobowitz <dan@debian.org>:
Bug#386267; Package vsftpd. Full text and rfc822 format available.

Acknowledgement sent to Martin Michlmayr <tbm@cyrius.com>:
Extra info received and forwarded to list. Copy sent to Daniel Jacobowitz <dan@debian.org>. Full text and rfc822 format available.

Message #10 received at 386267@bugs.debian.org (full text, mbox):

From: Martin Michlmayr <tbm@cyrius.com>
To: 386267@bugs.debian.org
Subject: Re: FTBFS: sysutil.c:604: error: assignment of read-only member '__in'
Date: Thu, 7 Sep 2006 18:44:36 +0200
* Martin Michlmayr <tbm@cyrius.com> [2006-09-06 13:34]:
> > gcc -c sysutil.c -g -O2 -Wall -W -Wshadow  -idirafter dummyinc
> > sysutil.c: In function 'vsf_sysutil_wait_exited_normally':

>  {
> -  return WIFEXITED(p_waitret->exit_status);
> +  return WIFEXITED((struct vsf_sysutil_wait_retval *)p_waitret->exit_status);
>  }

Dan, maybe you have some time to look at this issue more deeply.
Here's a smal testcase:

struct rx_length_info
{
  unsigned short tag;
};
void f(void)
{
  const struct rx_length_info *length_info;
  __typeof__ (*(&length_info->tag)) __v = *(&length_info->tag);
}

pinskia pointed out that it works with the following change:

-  __typeof__ (*(&length_info->tag)) __v;
-  __v = *(&length_info->tag);
+  __typeof__ (*(&length_info->tag)) __v = *(&length_info->tag);

/usr/include/stdlib.h defines:

#   define
__WAIT_INT(status)
  (__extension__ ({ union { __typeof(status) __in; int __i; } __u; \
               __u.__in = (status); __u.__i; }))

Is there some way this could be rewritten so applications don't need
to cast the const away?
-- 
Martin Michlmayr
http://www.cyrius.com/



Information forwarded to debian-bugs-dist@lists.debian.org, Daniel Jacobowitz <dan@debian.org>:
Bug#386267; Package vsftpd. Full text and rfc822 format available.

Acknowledgement sent to Daniel Jacobowitz <drow@false.org>:
Extra info received and forwarded to list. Copy sent to Daniel Jacobowitz <dan@debian.org>. Full text and rfc822 format available.

Message #15 received at 386267@bugs.debian.org (full text, mbox):

From: Daniel Jacobowitz <drow@false.org>
To: Martin Michlmayr <tbm@cyrius.com>, 386267@bugs.debian.org, Matej Vela <vela@debian.org>
Subject: Re: Bug#386267: FTBFS: sysutil.c:604: error: assignment of read-only member '__in'
Date: Thu, 7 Sep 2006 13:36:08 -0400
CC'ing new maintainer.

On Thu, Sep 07, 2006 at 06:44:36PM +0200, Martin Michlmayr wrote:
> * Martin Michlmayr <tbm@cyrius.com> [2006-09-06 13:34]:
> > > gcc -c sysutil.c -g -O2 -Wall -W -Wshadow  -idirafter dummyinc
> > > sysutil.c: In function 'vsf_sysutil_wait_exited_normally':
> 
> >  {
> > -  return WIFEXITED(p_waitret->exit_status);
> > +  return WIFEXITED((struct vsf_sysutil_wait_retval *)p_waitret->exit_status);
> >  }
> 
> Dan, maybe you have some time to look at this issue more deeply.
> Here's a smal testcase:
> 
> struct rx_length_info
> {
>   unsigned short tag;
> };
> void f(void)
> {
>   const struct rx_length_info *length_info;
>   __typeof__ (*(&length_info->tag)) __v = *(&length_info->tag);
> }
> 
> pinskia pointed out that it works with the following change:
> 
> -  __typeof__ (*(&length_info->tag)) __v;
> -  __v = *(&length_info->tag);
> +  __typeof__ (*(&length_info->tag)) __v = *(&length_info->tag);
> 
> /usr/include/stdlib.h defines:
> 
> #   define
> __WAIT_INT(status)
>   (__extension__ ({ union { __typeof(status) __in; int __i; } __u; \
>                __u.__in = (status); __u.__i; }))
> 
> Is there some way this could be rewritten so applications don't need
> to cast the const away?

I don't know.  You might be able to use a union initializer in the same
way.

-- 
Daniel Jacobowitz
CodeSourcery



Information forwarded to debian-bugs-dist@lists.debian.org, Daniel Jacobowitz <dan@debian.org>:
Bug#386267; Package vsftpd. Full text and rfc822 format available.

Acknowledgement sent to Martin Michlmayr <tbm@cyrius.com>:
Extra info received and forwarded to list. Copy sent to Daniel Jacobowitz <dan@debian.org>. Full text and rfc822 format available.

Message #20 received at 386267@bugs.debian.org (full text, mbox):

From: Martin Michlmayr <tbm@cyrius.com>
To: 386267@bugs.debian.org
Cc: Matej Vela <vela@debian.org>
Subject: updated patch
Date: Fri, 8 Sep 2006 11:22:15 +0200
some brackets were missing:

--- sysutil.c~	2006-09-08 11:21:02.571037500 +0200
+++ sysutil.c	2006-09-08 11:21:32.100883000 +0200
@@ -601,7 +601,7 @@
 vsf_sysutil_wait_exited_normally(
   const struct vsf_sysutil_wait_retval* p_waitret)
 {
-  return WIFEXITED(p_waitret->exit_status);
+  return WIFEXITED(((struct vsf_sysutil_wait_retval *)p_waitret)->exit_status);
 }
 
 int
@@ -611,7 +611,7 @@
   {
     bug("not a normal exit in vsf_sysutil_wait_get_exitcode");
   }
-  return WEXITSTATUS(p_waitret->exit_status);
+  return WEXITSTATUS(((struct vsf_sysutil_wait_retval *)p_waitret)->exit_status);
 }
 
 void

-- 
Martin Michlmayr
http://www.cyrius.com/



Tags added: fixed Request was from madduck@debian.org (martin f. krafft) to control@bugs.debian.org. Full text and rfc822 format available.

Bug marked as fixed in version 2.0.5-1.1, send any further explanations to Martin Michlmayr <tbm@cyrius.com> Request was from Steve Langasek <vorlon@debian.org> to control@bugs.debian.org. Full text and rfc822 format available.

Message sent on to Martin Michlmayr <tbm@cyrius.com>:
Bug#386267. Full text and rfc822 format available.

Message #27 received at 386267-submitter@bugs.debian.org (full text, mbox):

From: Steve Langasek <vorlon@debian.org>
To: 386081-submitter@bugs.debian.org, 386185-submitter@bugs.debian.org, 386201-submitter@bugs.debian.org, 386202-submitter@bugs.debian.org, 386222-submitter@bugs.debian.org, 386223-submitter@bugs.debian.org, 386229-submitter@bugs.debian.org, 386267-submitter@bugs.debian.org, 386305-submitter@bugs.debian.org, 386319-submitter@bugs.debian.org, 386491-submitter@bugs.debian.org, 386620-submitter@bugs.debian.org, 386707-submitter@bugs.debian.org, 386719-submitter@bugs.debian.org, 386829-submitter@bugs.debian.org, 386833-submitter@bugs.debian.org, 386902-submitter@bugs.debian.org, 387063-submitter@bugs.debian.org, 387094-submitter@bugs.debian.org, 387133-submitter@bugs.debian.org, 387220-submitter@bugs.debian.org, 387433-submitter@bugs.debian.org, 387972-submitter@bugs.debian.org, 387974-submitter@bugs.debian.org, 387983-submitter@bugs.debian.org, 388026-submitter@bugs.debian.org, 388082-submitter@bugs.debian.org, 388193-submitter@bugs.debian.org, 388314-submitter@bugs.debian.org, 388535-submitter@bugs.debian.org, 388605-submitter@bugs.debian.org, 388609-submitter@bugs.debian.org, 388661-submitter@bugs.debian.org, 388831-submitter@bugs.debian.org, 389171-submitter@bugs.debian.org, 389233-submitter@bugs.debian.org, 389246-submitter@bugs.debian.org, 389304-submitter@bugs.debian.org, 389350-submitter@bugs.debian.org, 389352-submitter@bugs.debian.org, 389375-submitter@bugs.debian.org, 389377-submitter@bugs.debian.org, 389387-submitter@bugs.debian.org, 389391-submitter@bugs.debian.org, 389458-submitter@bugs.debian.org, 389560-submitter@bugs.debian.org, 389609-submitter@bugs.debian.org, 389639-submitter@bugs.debian.org, 389640-submitter@bugs.debian.org, 389696-submitter@bugs.debian.org, 389760-submitter@bugs.debian.org, 389769-submitter@bugs.debian.org, 389965-submitter@bugs.debian.org, 389968-submitter@bugs.debian.org, 390008-submitter@bugs.debian.org, 390276-submitter@bugs.debian.org, 390304-submitter@bugs.debian.org, 390384-submitter@bugs.debian.org, 390390-submitter@bugs.debian.org, 390403-submitter@bugs.debian.org, 390416-submitter@bugs.debian.org, 390467-submitter@bugs.debian.org, 390560-submitter@bugs.debian.org, 390657-submitter@bugs.debian.org, 390666-submitter@bugs.debian.org, 390671-submitter@bugs.debian.org, 390969-submitter@bugs.debian.org, 391025-submitter@bugs.debian.org, 391157-submitter@bugs.debian.org, 391181-submitter@bugs.debian.org, 391190-submitter@bugs.debian.org, 391199-submitter@bugs.debian.org, 391201-submitter@bugs.debian.org, 391206-submitter@bugs.debian.org, 391208-submitter@bugs.debian.org, 391237-submitter@bugs.debian.org, 391257-submitter@bugs.debian.org, 391266-submitter@bugs.debian.org, 391291-submitter@bugs.debian.org, 391391-submitter@bugs.debian.org, 391465-submitter@bugs.debian.org, 391566-submitter@bugs.debian.org, 391601-submitter@bugs.debian.org, 391695-submitter@bugs.debian.org, 391696-submitter@bugs.debian.org, 391697-submitter@bugs.debian.org, 391749-submitter@bugs.debian.org, 391750-submitter@bugs.debian.org, 391752-submitter@bugs.debian.org, 391754-submitter@bugs.debian.org, 391755-submitter@bugs.debian.org, 391760-submitter@bugs.debian.org, 391766-submitter@bugs.debian.org, 391767-submitter@bugs.debian.org, 391782-submitter@bugs.debian.org, 391791-submitter@bugs.debian.org, 391808-submitter@bugs.debian.org, 391846-submitter@bugs.debian.org, 391848-submitter@bugs.debian.org, 392053-submitter@bugs.debian.org, 392154-submitter@bugs.debian.org, 392164-submitter@bugs.debian.org, 392166-submitter@bugs.debian.org, 392318-submitter@bugs.debian.org, 392422-submitter@bugs.debian.org, 392730-submitter@bugs.debian.org, 392734-submitter@bugs.debian.org, 392850-submitter@bugs.debian.org, 392855-submitter@bugs.debian.org, 393012-submitter@bugs.debian.org, 393044-submitter@bugs.debian.org, 393051-submitter@bugs.debian.org, 393388-submitter@bugs.debian.org, 393449-submitter@bugs.debian.org, 393726-submitter@bugs.debian.org
Subject: Bugs fixed in NMU, documenting versions
Date: Sat, 21 Oct 2006 23:44:56 -0700
# Hi folks,
#
# All of these bugs have been fixed in NMU, but not acknowledged by the
# maintainers.  With version tracking in the Debian BTS, it is important to
# know which version of a package fixes each bug so that they can be tracked
# for release status in the BTS, so I'm closing these bugs with the relevant
# version number information now.

close 386081 0.99.10-1.1
close 386185 6.5.0.cvs.20060524-1.1
close 386201 2.0.14-0.1
close 386202 2.0.14-0.1
close 386222 0.13.alfa.8-3.1
close 386223 0.13-13.2
close 386229 0.35-6.1
close 386267 2.0.5-1.1
close 386305 0.0.26-5.1
close 386319 1.2.0-3.2
close 386491 1.1-2.1
close 386620 0.3.8-5.1
close 386707 20060907.1
close 386719 2.0.5-1.1
close 386829 0.65.1
close 386833 0.15-1.2
close 386902 2.2.3-1.2
close 387063 2.6.4-2.1
close 387094 2.2.3-1.3
close 387133 2:1.0.0-9
close 387220 0.65.1
close 387433 1.3-1.2
close 387972 0.0.20060309-5.1
close 387974 0.0.20060309-5.1
close 387983 2:0.92-3.1
close 388026 2.8.5-1.2
close 388082 0.0.20060309-5.1
close 388314 1:0.3.7-3.1
close 388535 1.4.3.dfsg-1.2
close 388605 1.0.2-0.1
close 388609 0.3.7-4.2
close 388661 0.15-16.1
close 389171 1.23-1.1
close 389233 1.99.beta2.1
close 389246 2.7.7-12.1
close 389304 3.2.3-1.1
close 389350 2.0.4-2.1
close 389352 3.3.0-5.4
close 389375 2.4.0-4.2
close 389377 1.0.4-1.2
close 389387 2.6.2-24.1
close 389391 0.3.8-1.2
close 389458 0.35-6.1
close 389560 2:0.92-3.1
close 389609 1.2.4par-0.2
close 389639 1.1.1-0.2
close 389640 0.3.7-4.2
close 389696 0.6-2.1
close 389760 1.1.0+1.1.1-a021-1.1
close 389769 3.0.8-0.2
close 389965 4.4rc.2-3.1
close 389968 4.51.5-1.1
close 390008 0.9.6-1.1
close 390276 2.13~beta3-0.1
close 390304 0.2.0-1
close 390384 0.12-5.1
close 390390 2.8.8-1.1
close 390403 0.0.20040112.dfsg-0.2
close 390467 1.0.0-1.1
close 390560 6.5.1-0.2
close 390657 1.0+dfsg0-0.1
close 390666 0.4.5+dfsg0-0.1
close 390671 3.13-7.1
close 390969 0.2-2.2
close 391025 1.1.2-1.1
close 391157 2.2.0-3.1
close 391181 2.0.10.1.1
close 391190 0.09-1.1
close 391199 0.84-6.1
close 391201 1.0.1-2.1
close 391206 2003.00.00-2.1
close 391208 0.7-9.1
close 391237 5.6.3-2.1
close 391257 0.20.1-1.1
close 391266 1.5.12.1-19.1
close 391291 0.0.20060309-5.2
close 391391 0.12-2.2
close 391465 2.0-8.1
close 391566 1:1.6.1-7.1
close 391601 3:20020927-3.1
close 391695 0.4.6-0.1
close 391696 1:3.9.20060704-2.1
close 391697 2.0-6.1
close 391749 1.0-1.1
close 391750 2.0.2-2.2
close 391752 1.1.1-6.1
close 391754 4.4rc.2-3.1
close 391755 1.1.4-3.1
close 391760 4.996-5.0-rc7-1.1
close 391767 2.0.48-4-2.2
close 391782 0.4-1.1
close 391791 1.2.6-1.1
close 391808 3.5-1.2
close 391848 0.2.7.1-1.1
close 392053 0.5.0-1.4
close 392154 3.06.dfsg.1-0.1
close 392164 0.31-5.1
close 392166 1.2
close 392318 1.5.1.dfsg-2.1
close 392422 0.2.0-1
close 392730 0.4.6-0.2
close 392855 1.4.29-1
close 393012 0.4-1.1
close 393044 5.4.2-1.1
close 393051 1.9~b3-1
close 393388 0.4.5+dfsg0-0.1
close 393726 1.71.0.dfsg.1-1.1
thanks

-- 
Steve Langasek                   Give me a lever long enough and a Free OS
Debian Developer                   to set it on, and I can move the world.
vorlon@debian.org                                   http://www.debian.org/



Reply sent to Matej Vela <vela@debian.org>:
You have taken responsibility. Full text and rfc822 format available.

Notification sent to Martin Michlmayr <tbm@cyrius.com>:
Bug acknowledged by developer. Full text and rfc822 format available.

Message #32 received at 386267-close@bugs.debian.org (full text, mbox):

From: Matej Vela <vela@debian.org>
To: 386267-close@bugs.debian.org
Subject: Bug#386267: fixed in vsftpd 2.0.5-2
Date: Thu, 26 Oct 2006 02:17:24 -0700
Source: vsftpd
Source-Version: 2.0.5-2

We believe that the bug you reported is fixed in the latest version of
vsftpd, which is due to be installed in the Debian FTP archive:

vsftpd_2.0.5-2.diff.gz
  to pool/main/v/vsftpd/vsftpd_2.0.5-2.diff.gz
vsftpd_2.0.5-2.dsc
  to pool/main/v/vsftpd/vsftpd_2.0.5-2.dsc
vsftpd_2.0.5-2_i386.deb
  to pool/main/v/vsftpd/vsftpd_2.0.5-2_i386.deb



A summary of the changes between this version and the previous one is
attached.

Thank you for reporting the bug, which will now be closed.  If you
have further comments please address them to 386267@bugs.debian.org,
and the maintainer will reopen the bug report if appropriate.

Debian distribution maintenance software
pp.
Matej Vela <vela@debian.org> (supplier of updated vsftpd package)

(This message was generated automatically at their request; if you
believe that there is a problem with it please contact the archive
administrators by mailing ftpmaster@debian.org)


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Format: 1.7
Date: Thu, 26 Oct 2006 10:55:25 +0200
Source: vsftpd
Binary: vsftpd
Architecture: source i386
Version: 2.0.5-2
Distribution: unstable
Urgency: medium
Maintainer: Matej Vela <vela@debian.org>
Changed-By: Matej Vela <vela@debian.org>
Description: 
 vsftpd     - The Very Secure FTP Daemon
Closes: 382154 385929 386267 386719
Changes: 
 vsftpd (2.0.5-2) unstable; urgency=low
 .
   * New maintainer.  Closes: #385929.
   * Acknowledge NMU.  Thanks, Martin!
   * vsftpd-debian.patch: Split into individual patches.
   * wifexited-const.patch: Quiltify fix from 2.0.5-1.1.
   * man-typo.patch: Remove trailing `s' from `delay_failed_login' and
     `delay_successful_login' in vsftpd.conf.5.  Closes: #382154.
   * Switch to cdbs.
   * Remove dependency on libpam-runtime (>= 0.76-13.1) since we have
     0.76-22 in sarge (and an unversioned dependency is already provided
     by libpam0g).
   * debian/copyright: Update upstream URL.
   * debian/vsftpd.files: Remove cruft.
   * debian/vsftpd.init.d: Remove pidfile on stop.
   * debian/vsftpd.postinst, debian/vsftpd.postrm: Use `set -e'.
   * debian/watch: Add.
   * Conforms to Standards version 3.7.2.
 .
 vsftpd (2.0.5-1.1) unstable; urgency=medium
 .
   * Non-maintainer upload.
   * Applied patch by Martin Michlmayr to fix compilation problem on 64bit
     architectures (closes: #386267).
   * Added dependency on netbase because of update-inetd call (closes: #386719)
Files: 
 07535c98e42e38da7d5b9e257a19de30 673 net extra vsftpd_2.0.5-2.dsc
 208e79cb2aad50a6c3a8009677c4dd0a 8068 net extra vsftpd_2.0.5-2.diff.gz
 76ab59dc19093e7ba14f18f12c45da4e 114034 net extra vsftpd_2.0.5-2_i386.deb

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.5 (GNU/Linux)

iD8DBQFFQHizxBYivKllgY8RAgPlAJ4/jiNDIo2OKp6vnog08K7fNDijKgCffLtw
MUrrZjkQJCeS8r9mGOU0yf8=
=gUZR
-----END PGP SIGNATURE-----




Bug archived. Request was from Debbugs Internal Request <owner@bugs.debian.org> to internal_control@bugs.debian.org. (Tue, 26 Jun 2007 08:16:52 GMT) Full text and rfc822 format available.

Send a report that this bug log contains spam.


Debian bug tracking system administrator <owner@bugs.debian.org>. Last modified: Fri Apr 25 08:59:43 2014; Machine Name: buxtehude.debian.org

Debian Bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.