Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 90901 - Capisuite crashes immediately after receiving the first call or fax
Summary: Capisuite crashes immediately after receiving the first call or fax
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: [OLD] Server (show other bugs)
Hardware: x86 Linux
: High critical (vote)
Assignee: Gentoo Dialup Developers
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2005-04-29 14:15 UTC by Jeroen Roovers (RETIRED)
Modified: 2005-08-07 15:49 UTC (History)
1 user (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
Excerpt from </var/log/capisuite.error>. (capisuite.error,3.00 KB, text/plain)
2005-04-29 14:46 UTC, Jeroen Roovers (RETIRED)
Details
Excerpt from </var/log/capisuite.log> (capisuite.log,520 bytes, text/plain)
2005-04-29 14:50 UTC, Jeroen Roovers (RETIRED)
Details
Excerpt from </var/log/messages> (messages,643 bytes, text/plain)
2005-04-29 14:57 UTC, Jeroen Roovers (RETIRED)
Details
Current `emerge info' output from the system on which the problem occurs. (emerge.info-20050430,2.32 KB, text/plain)
2005-04-30 06:46 UTC, Jeroen Roovers (RETIRED)
Details
Output of 'capiinfo' (capiinfo.out,1.27 KB, text/plain)
2005-04-30 08:19 UTC, Jeroen Roovers (RETIRED)
Details
Excerpt from </var/log/messages> showing what happens when the 'capi' service is normally stopped when dependencies are running (oops.log,1.99 KB, text/plain)
2005-04-30 17:24 UTC, Jeroen Roovers (RETIRED)
Details
Bernd Wurst's capisuite.log excerpt as sent to the capisuite-users mailing list (capisuite-BW.log,13.33 KB, text/plain)
2005-05-01 07:48 UTC, Jeroen Roovers (RETIRED)
Details
capisuite-0.4.5.ebuild (capisuite-0.4.5.ebuild,1.44 KB, text/plain)
2005-05-01 15:54 UTC, Stefan Briesenick (RETIRED)
Details
Output from 'strace -f -o capisuite.trace capisuite -d' (capisuite.trace,339.27 KB, text/plain)
2005-05-01 15:58 UTC, Jeroen Roovers (RETIRED)
Details
Another strace, for the '-r99' ebuild (capisuite-0.4.5-r99.trace,390.71 KB, text/plain)
2005-05-01 16:48 UTC, Jeroen Roovers (RETIRED)
Details
Finally a slightly more interesting tidbit from <capisuite.error> (capisuite.error-0.4.5-r99,1.40 KB, text/plain)
2005-05-01 17:17 UTC, Jeroen Roovers (RETIRED)
Details
Files in </var/spool/capisuite/users/jeroen/received> (capisuite-users-jeroen-received.out,1.33 KB, text/plain)
2005-05-01 17:31 UTC, Jeroen Roovers (RETIRED)
Details
capisuite-0.4.5.3.ebuild (capisuite-0.4.5.3.ebuild,1.65 KB, text/plain)
2005-05-01 19:09 UTC, Stefan Briesenick (RETIRED)
Details
capisuite.initd (capisuite.initd,1.28 KB, text/plain)
2005-05-01 19:11 UTC, Stefan Briesenick (RETIRED)
Details
strace output from 'nice -n -10 strace -f -o capisuite-0.4.5.3.trace capisuite -d' (capisuite-0.4.5.3.trace-2,360.85 KB, text/plain)
2005-05-02 03:52 UTC, Jeroen Roovers (RETIRED)
Details
capisuite.log (capisuite.log,53.64 KB, text/plain)
2005-05-03 13:18 UTC, Stefan Briesenick (RETIRED)
Details
capisuite.log (with AVM Fritz!Card USB v2.0) (capisuite.log.debug,42.59 KB, text/plain)
2005-05-04 12:06 UTC, Stefan Briesenick (RETIRED)
Details
patched ebuild for capisuite-0.4.5-r2 (capisuite-0.4.5-r2.ebuild,2.23 KB, text/plain)
2005-08-05 12:57 UTC, Christian Ostheimer
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Jeroen Roovers (RETIRED) gentoo-dev 2005-04-29 14:15:27 UTC
Capisuite (net-dialup/capisuite-0.4.5) appears to work properly but crashes without any kind of error message after receiving its first fax or voice call of the session. The kernel (dmesg) seems to mention it simply disappeared.

Reproducible: Always
Steps to Reproduce:
1. Install, configure and start Capisuite 0.4.5 as normal.
2. Send a fax or dial and wait for the answering machine and finish the fax or voice call as normal.
3. Check if capisuite is still running ('pgrep capisuite' ought to do it) or try to call/fax again
Actual Results:  
Capisuite stops without writing anything to its logs. See further at "Additional 
Information".

Expected Results:  
Keep running, for one thing, but also deliver the generated fax/voice file (PDF/
wav) to the appropriate user through local e-mail.

I (and at least one other user) did however notice it didn't write descriptive .
txt files for every fax or voice file in the user directory (/var/spool/
capisuite/users/<user>/received), which it does even before it mails the 
generated voice/fax file. Interestingly, when I call the answering machine and 
type in the PIN number, Capisuite hangs up and does produce useful information 
in its <capisuite.log> (though oddly not in <capisuite.error>). I will submit 
redacted log excerpts as attachments to this bug report shortly. Re. Severity: 
Capisuite doesn't appear to lose data, but prevents me from receiving (fax) 
data.
Comment 1 Stefan Schweizer (RETIRED) gentoo-dev 2005-04-29 14:19:52 UTC
As a workaround I recommend you to use capi4hylafax in the meantime. I do not knwo what the issue is caused by, do you have any idea? Also is there an upstream(as in capisuite website) bug about this?
Comment 2 Jeroen Roovers (RETIRED) gentoo-dev 2005-04-29 14:46:27 UTC
Created attachment 57621 [details]
Excerpt from </var/log/capisuite.error>.

This </var/log/capisuite.error> log excerpt show what happens when I call the
answering machine and then dial the PIN number: it fails to find
</var/spool/capisuite/users/<user>/received/voice-4.txt> while trying to play
back that particular voice message.
Comment 3 Jeroen Roovers (RETIRED) gentoo-dev 2005-04-29 14:50:48 UTC
Created attachment 57622 [details]
Excerpt from </var/log/capisuite.log>

According to isdncause, "Reason 0x301" translates to:

   Location: (unknown location 33)
      Cause: Invalid Call reference value.

After that last entry, Capisuite dies.
Comment 4 Jeroen Roovers (RETIRED) gentoo-dev 2005-04-29 14:57:35 UTC
Created attachment 57623 [details]
Excerpt from </var/log/messages>

Apparently shows that Capisuite never got round to detaching itself from the
CAPI driver.
Comment 5 Jeroen Roovers (RETIRED) gentoo-dev 2005-04-29 15:02:25 UTC
Re comment #1: This is already being discussed by two *Gentoo* users on the capisuite-users mailing list (and we both brought up the issue independently of one another) but as yet no users of other operating systems have come forward with similar experiences. The absence of the .txt files describing received voice/fax files made it rather clear the problem is in Gentoo specifically and not in Capisuite in general. I may be wrong, but by all current indications, I may as well not be.

(I may look into capi4hylafax, but I'd rather have Capisuite fixed.)
Comment 6 Stefan Briesenick (RETIRED) gentoo-dev 2005-04-30 03:39:04 UTC
Well, there was a patch for the new capi20 V3 (20050322). The API/ABI has changed a little, but the patch is straight forward.

Ok, please try to emerge the old capi4k-utils (capi4k-utils-20041006-r5) and re-emerge capisuite. Then test it again. If it works, then emerge the latest capi4k-utils-20050322-r1 and re-emerge capisuite once again. If you can now reproduce the error, then we know where to seek.

Unfortunately, capisuite is unmaintained right now. So an upstream-patch for the new capi20 V3 will not be available anytime soon, at least until there's a new maintainer. So we have to get this working somehow... :-/
Comment 7 Jeroen Roovers (RETIRED) gentoo-dev 2005-04-30 06:42:02 UTC
I have tried with capi4k-utils-20041006-r5 now, and I am seeing the exact same problem with this *stable* package. I will post more local system info shortly.
Comment 8 Jeroen Roovers (RETIRED) gentoo-dev 2005-04-30 06:46:19 UTC
Created attachment 57674 [details]
Current `emerge info' output from the system on which the problem occurs.
Comment 9 Stefan Briesenick (RETIRED) gentoo-dev 2005-04-30 08:10:16 UTC
which ISDN card do you use and which driver?
Comment 10 Stefan Briesenick (RETIRED) gentoo-dev 2005-04-30 08:13:06 UTC
furthermore: what's the output of 'capiinfo'
Comment 11 Jeroen Roovers (RETIRED) gentoo-dev 2005-04-30 08:19:28 UTC
Created attachment 57680 [details]
Output of 'capiinfo'
Comment 12 Jeroen Roovers (RETIRED) gentoo-dev 2005-04-30 08:21:08 UTC
The controller is an AVM B1 ISA, properly configured.
Comment 13 Jeroen Roovers (RETIRED) gentoo-dev 2005-04-30 08:24:56 UTC
'capiinit status' says:

1 b1isa      running  b1isa-150        B1 3.09-10 0x150 4 r255

'capiinit show' says:

driver  firmware        proto   io      irq     mem     cardnr  options
b1isa   b1.t4           DSS1    0x150   4       -       -       P2P
Comment 14 Stefan Briesenick (RETIRED) gentoo-dev 2005-04-30 09:44:46 UTC
B1 is ok. T.30 Fax support is available. ;)

But:

> b1isa b1.t4 DSS1 0x150 4 - - P2P

P2P? Leased-Line (Point-to-Point)? Is this correct?

I have a B1 PCI V3, so I will test it ASAP (gimme some time, I have to setup anything first). But I don't have a leased-line...
Comment 15 Jeroen Roovers (RETIRED) gentoo-dev 2005-04-30 10:33:54 UTC
Yes, indeed the problem is with Capisuite and NOT with the hardware. I could install the other B1 ISA I borrowed for testing, but I am pretty sure all the kernel / driver output points to the fact that Capisuite inexplicably quits. The controller, on the other hand, just keeps running and (for instance) keeps reporting incoming and outgoing calls occurring on the local S0 bus.

The features you saw are options. Using P2P is optional, and so is the leased line functionality.
Comment 16 Stefan Briesenick (RETIRED) gentoo-dev 2005-04-30 13:04:48 UTC
I know what P2P means. But I wonder, that you need that option at all. ;)

I live in Germany and P2P is very uncommon, at least for regular BRI installations at home. You need a leased-line to use this. But I trust you, that this option is OK for your installation in Holland. But I can't use it here, it just won't work. ;)

Tommorrow is sunday and with my ISDN XXL tariff, I can test it tomorrow for free. No matter how much calls I have to do. :-D So I will give you feedback tomorrow.

But another question: did it worked already in the past? if, with which version of capisuite and capi4k-utils?
Comment 17 Jeroen Roovers (RETIRED) gentoo-dev 2005-04-30 13:26:06 UTC
The optional P2P functionality is in the proprietary firmware that runs on the controller, provided by AVM. It's the file <b1.t4> that comes in the (current) Gentoo package net-dialup/isdn-firmware-2004.4.5-r1. AFAIK there is no other firmware available for the AVM B1 ISA. I have downloaded ftp://ftp.avm.de/cardware/b1/linux/suse.81/b1-suse8.1-03.10.02.tar.gz and I will give the firmware file in there a try now.

Which reminds me -- unloading the capi service (</etc/init.d/capi>) gives very ugly results: capiinit crashes and it's generally a mess. Should I open another bug for that or is this to be considered cosmetic?
Comment 18 Jeroen Roovers (RETIRED) gentoo-dev 2005-04-30 13:40:35 UTC
I get the same problem with Capisuite using firmware:

  Manufacturer Version: 3.100-02  (49.2)

which incidentally also has the P2P option. BTW, AFAIK P2P is just another way of writing PPP, which is very much something you'd want to have if you dial in to the 'Net using an ISDN controller.
Comment 19 Stefan Briesenick (RETIRED) gentoo-dev 2005-04-30 14:03:11 UTC
No, you're totally wrong. P2P has *nothing* to do with PPP and is also not a special "feature" of the b1.t4 firmware. It's a different protocol variant spoken on the D-Channel. If you don't have a leased-line, you *have* *to* disable it.

On a regular BRI ISDN-line you can have Point-to-Multipoint (default, regular dialup to any other phone line) *or* Point-to-Point (P2P, two fixed end-points), but not both.

For the other problem with capiinit: I can not reproduce it here. All my AVM cards (not just B1, but also C2, Fritz!Card PCI, Fritz!Card USB V2.0 and BlueFRITZ!) are working properly and capiinit doesn't segfaults, even on amd64 (for supported card on this platform). The old capi4k-utils-20041006-r5 had a problem with capiinfo, which segfaulted if you had more than one controller. But this issue is fixed with capi4k-utils-20050322-r1.
Comment 20 Jeroen Roovers (RETIRED) gentoo-dev 2005-04-30 15:23:52 UTC
I still don't get what the firmware has to do with it. AFAICT I am using the latest version (Can I get some feedback on this?) and I have not set any special features myself, so I am at a loss as to how this ended up in </etc/capi.conf> (where I found it now that you mentioned it). Apparently it's a default for just the b1isa:

-------------------
### AVM B1 (you also have to install the firmware)
b1isa   b1.t4   DSS1  0x150 4 - - P2P
-------------------

I will remove that feature and then check if Capisuite still has problems.
Comment 21 Jeroen Roovers (RETIRED) gentoo-dev 2005-04-30 15:31:33 UTC
Removing "P2P" from the b1isa line in </etc/capi.conf> did not solve the problem.
Comment 22 Stefan Briesenick (RETIRED) gentoo-dev 2005-04-30 16:28:48 UTC
I test capisuite in a few hours (after sleep).

But: what is the "ugly" output of capiinit you talked about? capiinit should not segfault at all, no matter if you use the old or the new version. I've never seen that neither on x86 nor on amd64.

Which platform do you use? And what are your CFLAGS?
Comment 23 Stefan Briesenick (RETIRED) gentoo-dev 2005-04-30 16:42:18 UTC
btw: the firmware b1.t4 is the *whole* CAPI-implementation for the B1. The kernel-driver 'b1pci' or 'b1isa' just routes the CAPI-Mesages to the B1-card. The B1 is an active controller with its own CPU. This is totally different compared to passive cards, where the kernel-driver implements the CAPI-stuff.

btw^2: the entries in /etc/capi.conf are an *example*. You always have to setup it correctly. The P2P option is available for most AVM cards, even the passive ones. You are the first I've met, who were fooled by this. ;) So I will add a hint to /etc/capi.conf, that P2P should only used on leased-lines. And I'm quite sure, that 99,9% of the users don't have an ISDN leased-line (which you have to order from your Telco).
Comment 24 Jeroen Roovers (RETIRED) gentoo-dev 2005-04-30 17:22:37 UTC
Re #22: The 4th attachment I posted contains my emerge info, which should tell you all about the platform and CFLAGS. The suspicious bits I see are -funroll-loops in CFLAGS and USE="nptl nptlonly" (the latter ones may have an effect on Capisuite itself).

The ugly output is not just a very good segfault that seemingly occurs in either a module (capidrv is being unloaded) or in capiinit, but it also shows that the service unload order is wrong. For instance, Gentoo tries to unload capi before it unloads isdnlog. Or maybe the isdn service hasn't done its job properly. I am attaching another excerpt from </var/log/messages> with part of the ugly output, quickly generated by stopping the capi service while dependent services are also running, using the command '/etc/init.d/capi stop'. AFAIK, it should stop dependent services on its own.

Re #23, btw1: Er, I know all that. I think I have establish that the firmware is not at fault here, and that is the end of that matter.

Re #23, btw1: IMHO sane defaults should be used as (commented out) examples. If the sane default is not to switch on the P2P option, then the P2P option has no place in a config file with (commented out) defaults. Whoever needs such an extra option to be switched on can find all the necessary information on the 'Net or acquire this information from the hardware vendor.
Comment 25 Jeroen Roovers (RETIRED) gentoo-dev 2005-04-30 17:24:00 UTC
Created attachment 57697 [details]
Excerpt from </var/log/messages> showing what happens when the 'capi' service is normally stopped when dependencies are running
Comment 26 Jeroen Roovers (RETIRED) gentoo-dev 2005-05-01 03:47:24 UTC
OK, with a little sleep behind me, I now see it very clearly: Gentoo stops the services in this order:

capisuite
CAPI (/etc/init.d/capi)
...
isdnlog
isdn

Both pairs of services are dependent among themselves, but since isdn is dependent upon capi, it should be stopped / unloaded first.

General question: I guess capisuite has capi in its dependencies and isdnlog has isdn in its dependencies. So 1) should I remove capi and isdn using rc-update and let the system figure that out by itself? 2) How do I fix any dependency problems myself?
Comment 27 Stefan Briesenick (RETIRED) gentoo-dev 2005-05-01 06:22:45 UTC
1. your CFLAGS looks sane (though I wouldn't use -funroll-loops). Also 'ntpl ntplonly' is no problem, I use that also.
2. segfault in capiinit shoudn't happen at all and I've never seen that before
3. stopping order problem is solved yet (since 2 weeks) in my upcoming isdn4k-utils (will be released ASAP), so next version in portage will stop anything in the right order. For now, you can add a 'need capi' to /etc/init.d/isdn, that should solve it immediately for you.
4. the examples in /etc/capi.conf are taken 1:1 from the example file included in the capi4k-utils packages. The installed version is just a little bit expanded by us to also have the passive cards from fritzcapi and fcdsl in. btw: capi4k-utils is written and maintained by AVM, the same vendor as of your ISDN-card. But we will add some hints and explainations in capi.conf, so the issue should be solved then.
5. The firmware should be ok, since I used it also (until I switched to Fritz!Card USB v2.0 on my server becaue I needed the PCI-slot otherwise)
6. capisuite test report follows...
Comment 28 Stefan Briesenick (RETIRED) gentoo-dev 2005-05-01 06:45:35 UTC
ok, now my capisuite test report. All tests are done with a Fritz!Card USB V2.0, using the fritzcapi driver 'fcusb2' and the firmware 'fus2base.frm'. This driver is AVM propritary closed-source, but offers the same functionality as the AVM B1 (T.30 Fax G3, etc.). If needed, I can repeat the tests with an AVM B1 PCI V3.0, an AVM C2 and an AVM Fritz!Card PCI. But I think my tests are absolutely significant, so I'm sure the results would be 100% the same.

I installed latest (means ~x86) capi4k-utils in portage, latest capisuite, latest fritzcapi, latest hylafax and latest capi4hylafax.

All packages are setup correctly. capi4hylafax/hylafax were working properly already, so I can be sure that all drivers and hardware-installation are correctly working.

1. capisuite voicebox: works perfectly, I got an email with a WAV file, which could be played w/o any problems.

2. capisuite fax: First I sent a fax via my Windows-PC. No problems at all, I got the fax via email as a PDF which could be viewed with i.e. KPDF.

3. capisuite fax: Now I sent a fax via 'c2faxsend' from the capi4hylafax package to capisuite. Same result as in 2.

4. capisuite fax: I sent a fax via 'capisuitefax' to capisuite. Same Result as in 2.

5. capi4hylafax: I sent a fax via 'capisuitefax' to hylafax. Fax was received properly.

6. capi4hylafax: I sent a fax via 'c2faxsend' to hylafax. Fax was received properly.

So all I can say is:

1. capisuite voicebox works
2. capisuite fax receiving works
3. capisuite fax sending works
4. capi4hylafax fax receiving works
5. capi4hylafax fax sending works
6. capi4hylafax and capisuite are working smoothly together, even on the same machine.
7. I have no segfaults at all

That proves that all packages in portage are perfect and don't have any problems if installed and configured properly.

You should do the following:
1. revdep-rebuild
2. emerge --update --deep --newuse world
3. emerge again isdn-firmware, capi4k-utils, capisuite, isdn4k-utils
4. setup all packages *correctly*

There's nothing we can do else for you. Beside the corrections mentioned above in comment #27 of course.
Comment 29 Jeroen Roovers (RETIRED) gentoo-dev 2005-05-01 07:13:31 UTC
So you have proven that it *can* work. That's wonderful, but it does not solve my problem. I am currently running revdep-rebuild and it found four broken dependencies that are irrelevant to Capisuite:

  broken /usr/bin/c2faxrecv (requires libcapi20.so.2)
  broken /usr/bin/c2faxsend (requires libcapi20.so.2)
  broken /usr/X11R6/bin/c2faxrecv (requires libcapi20.so.2)
  broken /usr/X11R6/bin/c2faxsend (requires libcapi20.so.2)

These belong to capi4hylafax, which is installed but which I haven't used up to this point. They don't belong to Capisuite, and are not used by Capisuite.

I'll let revdep-rebuild remerge capi4hylafax for now, but I don't think that will help the Capisuite problem.

What I still think might be going wrong is that a binary in Capisuite fails to use some system function that your system has but my system does not have. Capisuite doesn't show any Python-related errors, so it must be somewhere within a Capisuite binary.
Comment 30 Jeroen Roovers (RETIRED) gentoo-dev 2005-05-01 07:47:14 UTC
Btw, I don't really understand the sudden "we" (being you) as opposed to myself (JeR). I think we are both working on this problem with one or more packages in Gentoo Linux. Solving my particular problem (which at least one other Gentoo user experiences as well) would be just a very lucky side effect for me. You (singular) seem to be giving up, which I frankly cannot begin to understand. I don't need this fixed for my own purposes, as running a fax/answering server isn't even something I really need. I'm just having fun. Are you?

And in fact there is a lot you could do, like telling me what kernel, glibc, gcc, boost, python, sfftobmp, ... versions *you* use. In order to compare a working Capisuite with a non-working Capisuite properly, it would be beneficial for me to know more about the relevant environment Capisuite *does* work properly in.

There may be telling differences, and it would at least allow me to recreate the relevant parts of your system to see if that solves my problem and in the process sheds light on the requirements for Capisuite to work, which would help develop Capisuite and the capisuite packages in Gentoo Linux.

Re configuration: I have gone over and over all relevant configuration files and I haven't found anything that might indicate a problem. In fact everything works, even recording a new answering machine response message </var/spool/capisuite/users/jeroen/announcement-tmp.la>, up to the point of actually putting it in place. Also we already know Capisuite doesn't write .txt files for otherwise properly received fax and voice messages, and that it doesn't write the appropriate PDF and WAV files either. There are lots of clues there and they occured on two distinct Gentoo Linux systems in distinct locations (NL and Germany) using distinct CAPI-capable ISDN controllers.

FYI, I here reproduce Bernd Wurst's message to the capisuite-users mailing list:

-----------------------------------------------------------
Hallo.

Ich nutze Capisuite schon l
Comment 31 Jeroen Roovers (RETIRED) gentoo-dev 2005-05-01 07:47:14 UTC
Btw, I don't really understand the sudden "we" (being you) as opposed to myself (JeR). I think we are both working on this problem with one or more packages in Gentoo Linux. Solving my particular problem (which at least one other Gentoo user experiences as well) would be just a very lucky side effect for me. You (singular) seem to be giving up, which I frankly cannot begin to understand. I don't need this fixed for my own purposes, as running a fax/answering server isn't even something I really need. I'm just having fun. Are you?

And in fact there is a lot you could do, like telling me what kernel, glibc, gcc, boost, python, sfftobmp, ... versions *you* use. In order to compare a working Capisuite with a non-working Capisuite properly, it would be beneficial for me to know more about the relevant environment Capisuite *does* work properly in.

There may be telling differences, and it would at least allow me to recreate the relevant parts of your system to see if that solves my problem and in the process sheds light on the requirements for Capisuite to work, which would help develop Capisuite and the capisuite packages in Gentoo Linux.

Re configuration: I have gone over and over all relevant configuration files and I haven't found anything that might indicate a problem. In fact everything works, even recording a new answering machine response message </var/spool/capisuite/users/jeroen/announcement-tmp.la>, up to the point of actually putting it in place. Also we already know Capisuite doesn't write .txt files for otherwise properly received fax and voice messages, and that it doesn't write the appropriate PDF and WAV files either. There are lots of clues there and they occured on two distinct Gentoo Linux systems in distinct locations (NL and Germany) using distinct CAPI-capable ISDN controllers.

FYI, I here reproduce Bernd Wurst's message to the capisuite-users mailing list:

-----------------------------------------------------------
Hallo.

Ich nutze Capisuite schon länger und hatte schon manchmal Probleme mit 
dem FritzCard-Binärtreiber, aber so wie jetz twar es noch nie. ;-)

Also, seit etwa einer Woche kann mein Capisuite kein Fax mehr annehmen. 
Wenn ein Fax reinkommt, wird das ordnungsgemäß angenommen und als SFF 
gespeichert. Beim Empfänger wird die Übertragung als "Ok" eingestuft.
Die SFF-Datei kann danach problemlos nach TIFF und PDF konvertiert 
werden.

Danach ist der Capisuite-Prozess aber weg, in der Logfile kein weiterer 
Kommentar.
Die .txt-Datei mit den Infos wird *nicht* erstellt, daher glaube ich, 
dass der Fehler noch vor dem Konvertieren auftritt.

Was ich zu dem Zeitpunkt getan habe, seit das Fax nicht mehr geht, war, 
dass ich vom capisuite 0.4.4 auf 0.4.5 geupdated habe. Ein Downgrade 
hat aber nichts geholfen.

Zum Test habe ich bereits die FritzCard USB durch eine FritzCard PCI 
ersetzt, das hat aber nichts geändert (bis auf das Problem, dass dann 
der PPPd nicht mehr per DSL einwählen wollte) (!).

Kernel habe ich auch geändert und neu kompiliert (2.6.11 => 2.6.11.7), 
kein Erfolg, Capi-Treiber-Module habe ich alle neu erstellt, ebenfalls 
nichts geändert.

Jetzt bin ich mit meinem Latein am Ende. Anrufbeantworter funktioniert 
einwandfrei.

Hat jemand ne Idee, wo ich da weiter suchen kann? 
Im Anhang ein Ausschnitt der Log-Datei mit exzessiv-Logging. Danach ist 
sofort Ende, ohne weitere Meldungen. In der capisuite.error wird nichts 
geloggt ausser "Capisuite started".

cu, Bernd
-----------------------------------------------------------
Comment 32 Jeroen Roovers (RETIRED) gentoo-dev 2005-05-01 07:48:49 UTC
Created attachment 57743 [details]
Bernd Wurst's capisuite.log excerpt as sent to the capisuite-users mailing list
Comment 33 Stefan Schweizer (RETIRED) gentoo-dev 2005-05-01 08:12:59 UTC
Bernd Wurst: Have you solved the problem already?

I suggest you to try commenting out the patches in capisuite, to see if they are the culprits .. I suspect capisuite-fax-compatibility.patch of making problems..
Comment 34 Bernd Wurst 2005-05-01 08:17:49 UTC
I can leave a comment for myself if this helps solving this issue. ;-)

Ok, for short: I have two gentoo linux boxes acting as home-servers, both have ISDN connectivity and one of them works and one doesn't. Both systems are up-to-date. The one that shows the mentioned problem has a FritzCard USB (v1) and I also tried a FC-PCI without success. 

I'm sorry to say that the one box I have physical access to is the one that works, the other one is only controllable via ssh, so experimenting with the (very unstable!) AVM capi crap is very risky.

My current workaround for this problem is, that I run capisuite in an endless loop via DJB's daemontools and send me a message with tail /var/log/capisuite.log every time it crashes. Faxes are saved to SFF correctly, so I can convert this manually if the last log entries shows an incoming fax. :-(
Comment 35 Bernd Wurst 2005-05-01 08:46:17 UTC
Stefan Schweizer: No, I did not solve the issue yet. :(

> I suggest you to try commenting out the patches in capisuite, to see if they are 
> the culprits .. I suspect capisuite-fax-compatibility.patch of making problems..

Tried that, no success. I tried commenting out a single one (3 tries) and I tried commenting out all 3 patches. No success, the very same behaviour.
Comment 36 Stefan Briesenick (RETIRED) gentoo-dev 2005-05-01 13:54:31 UTC
ok, folks. Lets try to analyse the problem. Since I used ebuilds already in portage w/o any modifications for my successful tests, it's not clever to disable any patches. I proved, that all ebuilds and packages are working properly. And I don't see a general Gentoo problem, it looks like a special problem in some particular machines. So we should try to get every single part working, before we patch anything.

AVM B1 is an active card, so the driver is nothing more than a router for the CAPI messages from userland via kernelcapi to the card. The CAPI itself is fully implemented in the 'b1.t4' firmware and running on the controller board.

Crappy drivers are really NOT the problem at all, because the driver is working on *many* installations w/o any problem. Maybe a 'crappy' firmware, but this can be easily solved, if you try a different one:

ftp://ftp.in-berlin.de/pub/capi4linux/firmware/b1/

First of all, capiinit should not segfault. That's not Ok. If CAPI is not running properly, you will have problems with any CAPI based application.

Running /etc/init.d/capi stop and then start *should* work w/o any segfaults. If it segfaults, then you should check your BIOS, Hardware and Kernel first. Perhaps you have some kind of ressource problem.

But since you use an ISA card, your kernel should be configured properly for ISA and PNP and all that stuff. It's also a good idea to select *all* ISDN/CAPI stuff and use modules instead of static, at least for testing.

My kernel is 'gentoo-sources' 2.6.11-gentoo-r6

Following Options should be enabled:

CONFIG_ISDN_CAPI=m
CONFIG_ISDN_DRV_AVMB1_VERBOSE_REASON=y
CONFIG_ISDN_CAPI_MIDDLEWARE=y
CONFIG_ISDN_CAPI_CAPI20=m
CONFIG_ISDN_CAPI_CAPIFS_BOOL=y
CONFIG_ISDN_CAPI_CAPIFS=m
CONFIG_ISDN_CAPI_CAPIDRV=m

where CAPIDRV is optional. But if you use it, you should enable:

CONFIG_ISDN=m
CONFIG_ISDN_I4L=m
CONFIG_ISDN_PPP=y
CONFIG_ISDN_PPP_VJ=y
CONFIG_ISDN_MPP=y
CONFIG_IPPP_FILTER=y
CONFIG_ISDN_PPP_BSDCOMP=m
CONFIG_ISDN_AUDIO=y
CONFIG_ISDN_TTY_FAX=y

and of course the AVM B1 stuff:

CONFIG_CAPI_AVM=y                <- B1 generic
CONFIG_ISDN_DRV_AVMB1_B1PCI=m    <- B1 PCI
CONFIG_ISDN_DRV_AVMB1_B1PCIV4=y  <- B1 PCI V4.0

in /etc/conf.d/capi you can disable the loading of 'capidrv', which is not needed, if you only want to use CAPI based applications. 'capidrv' is the bridge to the old I4L subsystem.

I only have a AVM B1 PCI V3.0, but friend of mine is using an B1 ISA card and capi4hylafax works perfectly on his system. So I don't think, that we have a general problem.

Once again: before you complain about not running software, it's essential that your HW is working properly. Segfaults should give you an unambiguous sign, that there are indeed problems. Check your BIOS, your Kernel.

/etc/init.d/capi start/stop should tell you via /var/log/messages and 'dmesg' if your card was initialized properly. There shouldn't be any Oops and Segfaults. cat /proc/capi/controller should tell you 'running'.

next step: capiinfo. Does it shows correct informations?

then: check /dev/capi20. Does it exist? What are the permissions? You can setup correct permissions in /etc/udev/rules.d/50-udev.rules if your're using UDEV (which is recommended!).

# capi devices
KERNEL="capi",  NAME="capi20", SYMLINK="isdn/capi20", GROUP="dialout"
KERNEL="capi*", NAME="capi/%n", GROUP="dialout"

I added 'GROUP' to the defaults, because hylafax needs it (Furthermore I had to add 'uucp' to the 'dialout' group for this).

Now you should check basic functionality of your card. I would try a PPP dialup for this purpose. So emerge net-dialup/ppp and setup a simple CAPI connection in /etc/ppp/peers (select any cheap ISDN dialup provider in your country):

[/etc/ppp/peers/capitest]
sync
noauth
-chap
defaultroute
plugin userpass.so
plugin capiplugin.so
#controller 1
protocol hdlc
#numberprefix 0
user <username_here>
number <phonenumber_here>
password <password_here>
/dev/null

Now test it with 'pon capitest' and check with 'ifconfig' and in /var/log/messages if it works. 'poff capitest' hangs up the line.

if this is working, then we can go further and check other CAPI services and applications. So I stop here for the time beeing and wait for your input. If you solved this, then I try to help you with capisuite and/or capi4hylafax. but I still don't believe that it is gentoo/capisuite problem at this point.
Comment 37 Stefan Briesenick (RETIRED) gentoo-dev 2005-05-01 14:48:20 UTC
I've run another test on my AMD64. With my AVM C2. This is also an active controller with its own firmware. The only difference to the B1 is, that it has two S0 ports (=2x2 B-channels). I'm using latest capi4k-utils in portage.

capisuite hasn't the ~amd64 keyword right now, but I managed to compile it w/o any problems on AMD64 (just adding the ~amd64 keyword to boost, sfftobmp and capisuite ebuild). There's a BugZilla for this already. But since it is not fully tested, I'm expecting problems here or there.

Ok, I tested voicebox and fax receiveing. Both is working. Fax sending via 'capisuitefax' gives me a problem with permissions (traceback). But only on commandline, the capisuite server is still running. I have to check this in detail, but it's proven again, that capisuite should work.
Comment 38 Jeroen Roovers (RETIRED) gentoo-dev 2005-05-01 14:50:48 UTC
Thanks for your information. I apparently use the exact same kernel you do.

As a preliminary note regarding unloading drivers, I found this interesting comment from Karsten Keil at <http://lists.suse.com/archive/suse-isdn/2005-Feb/0063.html> :

> >> Nein, das Entladen von Modulen ist mit den 2.6 kernel Versionen sehr 
> >> racy und problematisch geworden. 
> >> Ein workaround waer es beim runterfahren nicht zu tun, es schadet nicht, 
> >> da der Rechner eh rebootet wird. 
> >> Dazu in /etc/init.d/isdn direkt hinter stop) ein exit einbauen.

A couple more things:

1) I can successfully *send* faxes without Capisuite crashing like it does when receiving faxes / voice messages. Works like a charm. (I really don't want to test Internet connections unless I really have to, and currently I don't see what PPP connections should add to the mix except a whole bunch of extra variables.) 

2) I have set CAPI_UNLOAD_CARDS="no" in </etc/conf.d/capi> and this way, I prevent the segfault. modprobe complains about capidrv and b1isa being busy/used, but at least I don't see any oops anymore. IIRC SuSE does that with some ISDN controllers too.
Comment 39 Jeroen Roovers (RETIRED) gentoo-dev 2005-05-01 15:14:10 UTC
3) My kernel configuration mirrors yours exactly (including the bits about ISA and PNP), except I have 

  CONFIG_ISDN_DRV_AVMB1_B1ISA=m

where you have 

  CONFIG_ISDN_DRV_AVMB1_B1PCI=m
  CONFIG_ISDN_DRV_AVMB1_B1PCIV4=y

4) Re hardware/ BIOS: The entirely unchanged hardware worked flawlessly using whatever Capisuite version was distributed with SuSE Linux 9.2, which ran on this machine for years (well, in different versions of course) without flaws.
Comment 40 Stefan Briesenick (RETIRED) gentoo-dev 2005-05-01 15:15:20 UTC
you can fix the shutdown order, if you add 'need capi' to depend() in /etc/init.d/isdn (don't forget to run 'depscan.sh' after).

this is fixed in an upcoming isdn4k-utils ebuild since 3 weeks now. I still have some work on it, so I don't release it yet. But you can fix it as described above.

Unloading modules is indeed tricky, but /etc/init.d/capi solved it mostly (means 98%). And I'd never had any problems with B1 or C2. But I had unloading problems with some AVM USB devices. The mentioned SuSE advice is for the Fritz!Card PCMCIA, where the PCMCIA stack is involved additionally. The CAPI_UNLOAD_CARDS was introduced to make it possible to restart capi w/o un/re-plugging USB cards. But if this solves your problem, then it's ok to use it. But it *should* also work w/o, at least with your B1.

Oh well, 'etc-update' is mandantory if you re-emerged capi4k-utils, because some init-scripts etc. change a lot. I just tell you this, because it's often forgotten.

For the PPP advice: it's cheap, it's simple, it's easy to test. It doesn't need any special CAPI features like DTMF or T.30 Fax. Just HDLC. So even mISDN works with it. And it's very easy to setup. I wanted to be sure, that your card is working properly, before we look for other application bugs.

How do you send faxes? With which program? There're only 3 I know about for CAPI: capifax (capi4k-utils), c2sendfax (capi4hylafax) and of course capisuitefax.

And now to capisuite. First thing to test is the voicebox.

edit: /etc/capisuite/answering_machine.conf

go to the end and add:

[<your_unix_username>]
voice_numbers="<your_msn>"
voice_action="SaveOnly"
voice_delay="10"
record_length="60"
voice_email=""
pin="1234"

run "/etc/init.d/capisuite start"

Open another shell as root and type:
tail -f /var/log/capisuite.log

Now try to call your MSN. Wait some seconds and you should hear a voice. If this is working, then it just works. Watch the output of the tail command.

Next step is fax, but I wait for your answer first.
Comment 41 Jeroen Roovers (RETIRED) gentoo-dev 2005-05-01 15:24:45 UTC
I used capisuitefax to send a fax tonight; it worked well and Capisuite did not crash.

I don't know why you want me to perform a test that I have been routinely running for a couple of days now after every remerge or change to the configuration. Even with SaveOnly instead of MailAndSave (to prevent mail problems) no descriptive .txt files are produced in the <received> directory, and no .wav file is produced. The .la files play OK using 'play'.

I think the problem has been described very well now. Everything works, except Capisuite crashes right after the voice/fax connection is finished. The output files (sff and la) are not corrupt, but the .txt files are never written and the la and sff files are not converted to WAV/PDF. After restarting Capisuite, everything works until reception of a fax / voice message completes.
Comment 42 Stefan Briesenick (RETIRED) gentoo-dev 2005-05-01 15:39:53 UTC
can you strace the capisuited?

My problem is, that I can not reproduce it here. And I've tested it on two different machines with two different cards and even on two different platforms. So it is almost impossible, that the capisuite ebuild has a problem or any other gentoo involved part. At least not with my minimal configuration. Furthermore, there wasn't any bugreport before...

But Stefan Schweizer found a Debian-Patch for capisuite-0.4.5. We can test, if this patch helps with your configuration. But then, it's an upstream bug.

I try to include that patch:
http://ftp.debian.org/debian/pool/main/c/capisuite/capisuite_0.4.5-3.diff.gz

I'll be back, when it's done.
Comment 43 Jeroen Roovers (RETIRED) gentoo-dev 2005-05-01 15:44:25 UTC
I have tested a case I hadn't thought of before:

Test: Call the answering machine and hang up before the announcement is finished playing.
Result: CapiSuite writes 

-----------------------------------------
Mon May  2 00:26:56 2005 Capi 0x81aa6b0: **
Mon May  2 00:26:56 2005 Capi 0x81aa6b0: *
Mon May  2 00:26:56 2005 Capi 0x81aa6b0: <INFO_IND: Controller/PLCI 0x101, InfoN
umber 1e (ignoring)
Mon May  2 00:26:56 2005 Capi 0x81aa6b0: >INFO_RESP ApplId 0x2, MsgNr 0x2b, Addr
ess 0x101
Mon May  2 00:26:56 2005 Capi 0x81aa6b0: info: 0
Mon May  2 00:26:56 2005 Capi 0x81aa6b0: **
Mon May  2 00:26:56 2005 Capi 0x81aa6b0: *
Mon May  2 00:26:56 2005 Capi 0x81aa6b0: <DISCONNECT_B3_IND NCCI 0x10101 Reason
0x3301
Mon May  2 00:26:56 2005 Connection 0x8222b38: stop_file_transmission initiated
Mon May  2 00:26:56 2005 Connection 0x8222b38: stop_file_transmission finished
Mon May  2 00:26:56 2005 Connection 0x8222b38: stop_file_reception finished
Mon May  2 00:26:56 2005 Capi 0x81aa6b0: >DISCONNECT_B3_RESP ApplId 0x2 MsgNum 0
x2c NCCI 0x10101
Mon May  2 00:26:56 2005 Capi 0x81aa6b0: info: 0
Mon May  2 00:26:56 2005 Capi 0x81aa6b0: **
Mon May  2 00:26:56 2005 Connection 0x8222b38: stop_file_transmission finished
Mon May  2 00:26:56 2005 Connection 0x8222b38: start_file_transmission /usr/shar
e/capisuite/5.la
-----------------------------------------

to the log (apparently <5.la> was the last sound it produced.

Earlier I tested recording a new announcement through the phone and it produced an undamaged </var/spool/capisuite/users/jeroen/announcement-tmp.la> which I can play with 'play'. In that case, Capisuite crashed as well.
Comment 44 Stefan Briesenick (RETIRED) gentoo-dev 2005-05-01 15:54:33 UTC
Created attachment 57776 [details]
capisuite-0.4.5.ebuild

added: debian patch
removed: other patches, but not the CAPI V3 patch
Comment 45 Stefan Briesenick (RETIRED) gentoo-dev 2005-05-01 15:56:51 UTC
please test this ebuild. I disabled the gentoo and fax-compatibility patch for the time beeing. I don't know who added them, but I think it's better to use only the debian patch, which is quite huge.
Comment 46 Jeroen Roovers (RETIRED) gentoo-dev 2005-05-01 15:58:42 UTC
Created attachment 57777 [details]
Output from 'strace -f -o capisuite.trace capisuite -d'

Again, I called the answering machine, spoke a short voice message ("This is
number 22") and hung up.
Comment 47 Jeroen Roovers (RETIRED) gentoo-dev 2005-05-01 16:01:04 UTC
Oh and the output from strace in the terminal window accompanying the output produced in the <capisuite.trace> attachment was:

PANIC: handle_group_exit: 20563 leader 20561
PANIC: handle_group_exit: 20562 leader 20561
Comment 48 Stefan Briesenick (RETIRED) gentoo-dev 2005-05-01 16:06:47 UTC
please test the attached ebuild. It seems, that capisuite has *many* bugs. At least debian made a *huge* patch. I don't know why this isn't fixed upstream yet.
Comment 49 Jeroen Roovers (RETIRED) gentoo-dev 2005-05-01 16:13:36 UTC
I am merging the test ebuild now. I guess the patches hasn't gone upstream very far because Capisuite is more or less unmaintained currently, or at least without a maintainer.
Comment 50 Stefan Briesenick (RETIRED) gentoo-dev 2005-05-01 16:19:13 UTC
if this patch works, then I would use the patch version as the ebuild version, so we can bump it easily when Debian releases another patch.
Comment 51 Jeroen Roovers (RETIRED) gentoo-dev 2005-05-01 16:35:00 UTC
I don't know what the patch is supposed to fix, but the new build gives me the exact same problem. I not only tested voice this time, but also sent a fax from a neighbouring machine. Same result: the content gets saved properly but then capisuite crashes. Here's the last output before the crash:

-----------------------------------------------
Mon May  2 01:29:13 2005 Capi 0x81aa6b0: <DATA_B3_IND: NCCI 0x10101, DataLength
1190, DataHandle 0xc, Flags 0x0
Mon May  2 01:29:13 2005 Capi 0x81aa6b0: >DATA_B3_RESP, ApplId 0x2, msgNum 0x2ae
, NCCI 0x10101, DataHandle 0xc
Mon May  2 01:29:13 2005 Capi 0x81aa6b0: info: 0
Mon May  2 01:29:13 2005 Capi 0x81aa6b0: **
Mon May  2 01:29:16 2005 Capi 0x81aa6b0: *
Mon May  2 01:29:16 2005 Capi 0x81aa6b0: <DISCONNECT_B3_IND NCCI 0x10101 Reason
0x0
Mon May  2 01:29:16 2005 Connection 0x82222e8: fax finished with rate 7200, hiRe
s, ID: Fax                 , 1 pages
Mon May  2 01:29:16 2005 Connection 0x82222e8: stop_file_transmission initiated
Mon May  2 01:29:16 2005 Connection 0x82222e8: stop_file_transmission finished
Mon May  2 01:29:16 2005 Connection 0x82222e8: stop_file_reception finished
Mon May  2 01:29:16 2005 Capi 0x81aa6b0: >DISCONNECT_B3_RESP ApplId 0x2 MsgNum 0
x2af NCCI 0x10101
Mon May  2 01:29:16 2005 Capi 0x81aa6b0: info: 0
Mon May  2 01:29:16 2005 Capi 0x81aa6b0: **
-----------------------------------------------
Comment 52 Stefan Briesenick (RETIRED) gentoo-dev 2005-05-01 16:40:55 UTC
what does crashing means? The daemon is still running? Or not? 
Comment 53 Jeroen Roovers (RETIRED) gentoo-dev 2005-05-01 16:48:48 UTC
Created attachment 57780 [details]
Another strace, for the '-r99' ebuild
Comment 54 Jeroen Roovers (RETIRED) gentoo-dev 2005-05-01 16:52:14 UTC
It means it's gone from memory, no process left, no daemon running where there previously was, a late process, an ex-daemon. Dead. To be zapped and started as a services again. :)
Comment 55 Stefan Briesenick (RETIRED) gentoo-dev 2005-05-01 16:57:47 UTC
ok, lets analyse it again.

1. CAPI is working and capi4k-utils is also ok
2. capi4k-utils-20050322-r1 has CAPI 2.0 V3
3. capisuite-0.4.5 is compiled/installed straight forward
4. we apply latest debian patches and my CAPI V3 patch. So we should have the same binaries as Debian.
5. capisuite uses 'sox' and 'sfftobmp' for audio/fax converting to wav/pdf.

sox is called after voice-recording, sfftobmp is called after fax-receiving.

voice-recording seems to work, but *after* this, it "crashes". IMHO 'sox' is called then.

conclusion:

1. are you using capi4k-utils-20050322-r1 and is the CAPI V3 patch applied to capisuite? Check the output. The old version of capi4k-utils should prevent the patch, otherwise it has to be applied.

2. is 'sox' and 'sfftobmp' working properly?

I'm using this:
media-sound/sox-12.17.7-r1  +alsa -debug +encode +mad +oggvorbis
media-gfx/sfftobmp-3.0
Comment 56 Stefan Briesenick (RETIRED) gentoo-dev 2005-05-01 17:07:23 UTC
another possibility is, that something is wrong with your python installation. Perhaps it "crashes" with a traceback.

I did this for testing:

1. /etc/init.d/capisuite stop
2. /usr/sbin/capisuite

I got these message while making a voice-call:

sys:1: DeprecationWarning: Non-ASCII character '\xfc' in file /usr/lib/capisuite/incoming.py on line 421, but no encoding declared; see http://www.python.org/peps/pep-0263.html for details

sox: Do not support inversed A-law with 16-bit data.  Forcing to Signed.
Comment 57 Jeroen Roovers (RETIRED) gentoo-dev 2005-05-01 17:12:04 UTC
net-dialup/capi4k-utils-20050322-r1 -- working properly (I think)
net-dialup/capisuite-0.4.5-r99
media-gfx/sfftobmp-3.0 -- working properly
media-sound/sox-12.17.5-r1 -- working properly, same USE flags you use
Comment 58 Jeroen Roovers (RETIRED) gentoo-dev 2005-05-01 17:14:03 UTC
Interesting. Running capisuite like that and speaking to the answering machine a bit gives me this output:

-------------------------------------------------------
sys:1: DeprecationWarning: Non-ASCII character '\xfc' in file /usr/lib/capisuite/incoming.py on line 421, but no encoding declared; see http://www.python.org/peps/pep-0263.html for details
Aborted
-------------------------------------------------------

Not very informative...
Comment 59 Jeroen Roovers (RETIRED) gentoo-dev 2005-05-01 17:17:18 UTC
Created attachment 57781 [details]
Finally a slightly more interesting tidbit from <capisuite.error>
Comment 60 Jeroen Roovers (RETIRED) gentoo-dev 2005-05-01 17:24:05 UTC
Btw, sox reported that warning when I tried it on a .la file. That I get "Aborted" instead of what sox writes to stderr confirms (again) that sox never gets around to starting the .la file conversion or (rather more likely) that capisuite never calls sox.

I still don't rule out the possibility that it's one of the python scripts that goes wrong and (Python) throws some exception that capisuite doesn't handle.

I appear to be using dev-lang/python-2.3.5 (which according to http://bugs.gentoo.org/show_bug.cgi?id=91024 has at least one flaw).
Comment 61 Stefan Briesenick (RETIRED) gentoo-dev 2005-05-01 17:26:21 UTC
re.match("voice-([0-9]+)\.la",s) returns None in your case. And then .group() can't work. Dirty, dirty code.

But this log is from 0:35h. It's quite old?
Comment 62 Stefan Briesenick (RETIRED) gentoo-dev 2005-05-01 17:29:40 UTC
my python:

dev-lang/python-2.3.5  +X +berkdb -bootstrap -build -debug -doc +gdbm +ipv6 +ncurses +readline +ssl +tcltk -ucs2

perhaps you should re-emerge it, just for the case that there was an error while you emerged it and that is now fixed.
Comment 63 Jeroen Roovers (RETIRED) gentoo-dev 2005-05-01 17:31:42 UTC
Created attachment 57782 [details]
Files in </var/spool/capisuite/users/jeroen/received>

But I do have voice*.la files there.
Comment 64 Jeroen Roovers (RETIRED) gentoo-dev 2005-05-01 17:34:07 UTC
There is a fix for #91024 in Portage, and I am currently syncing (or actually regenerating the metadata db). I hope the fix has made it to whatever mirror I just synced with. And maybe it has a solution too.
Comment 65 Stefan Briesenick (RETIRED) gentoo-dev 2005-05-01 17:39:07 UTC
nonetheless, I facelift the current ebuild and will provide a better init-script. The current one is crap. ;)
Comment 66 Stefan Briesenick (RETIRED) gentoo-dev 2005-05-01 19:09:31 UTC
Created attachment 57788 [details]
capisuite-0.4.5.3.ebuild

updated ebuild, reactivate all patches since they're needed.
Now with new versioning.
Comment 67 Stefan Briesenick (RETIRED) gentoo-dev 2005-05-01 19:11:17 UTC
Created attachment 57789 [details]
capisuite.initd

updated and renamed init-script. Put it into $FILESDIR.
new name, so old ebuild can install old init-script.
Comment 68 Jeroen Roovers (RETIRED) gentoo-dev 2005-05-02 02:28:37 UTC
I'll test it.
Comment 69 Bernd Wurst 2005-05-02 02:41:44 UTC
No success for me. I used the attached 0.4.5.3 ebuild and initd-File. :-(

My strace-Log seems to be quite similar to the one attached here, after receiving a fax file (I tested with fax) and closing the data file, all processes receive a SIGABRT and crash.

capisuite's C++-source seems not to contain any signal-emiting code, so this seems to come from the python stuff. I'll look at this later...
Comment 70 Jeroen Roovers (RETIRED) gentoo-dev 2005-05-02 03:50:19 UTC
Same result here with the .3 ebuild. I have glanced through the documentation and it looks like it's possible to compile a debug build. The current ebuilds don't seem to output useful messages at all. I still think it's a Python problem, but the capisuite binary simply doesn't report (enough of) them.

I have tested 

   nice -n -10 strace -f -o capisuite-0.4.5.3.trace capisuite -d

too, just to see if some kind of critical timing error occurs, but it gives me the same results: </usr/sbin/capisuite> crashes and the strace output is rather inconclusive.
Comment 71 Jeroen Roovers (RETIRED) gentoo-dev 2005-05-02 03:52:10 UTC
Created attachment 57808 [details]
strace output from 'nice -n -10 strace -f -o capisuite-0.4.5.3.trace capisuite -d'
Comment 72 Stefan Briesenick (RETIRED) gentoo-dev 2005-05-02 04:28:02 UTC
perhaps the python herd can help a little. I've done all *I* can do to solve this problem. At this point we need python geeks ;)

If there is any patch or fix I can put into the capisuite ebuild, I will do it. But since I can not reproduce the problem here on my machines, it's almost impossible for me to help other than that.
Comment 73 Stefan Briesenick (RETIRED) gentoo-dev 2005-05-02 04:46:19 UTC
Hmmm...

14127 select(7, [6], NULL, NULL, NULL <unfinished ...>
14128 <... nanosleep resumed> NULL)     = 0
14128 nanosleep({0, 100000000},  <unfinished ...>
14131 <... nanosleep resumed> NULL)     = 0
14131 futex(0xb7fb2c54, FUTEX_WAKE, 2147483647) = 0
14131 rt_sigprocmask(SIG_UNBLOCK, [ABRT], NULL, 8) = 0
14131 tgkill(14126, 14131, SIGABRT)     = 0
14131 --- SIGABRT (Aborted) @ 0 (0) ---
14127 <... select resumed> )            = ? ERESTARTNOHAND (To be restarted)
14128 <... nanosleep resumed> 0)        = ? ERESTART_RESTARTBLOCK (To be restarted)
14127 +++ killed by SIGABRT +++
14128 +++ killed by SIGABRT +++

tgkill? thread-group kill. Who is sendig tgkill with SIGABORT? This syscall is not included anywhere neither in the capisuite-code nor in capi4k-utils. Even in python 2.3.5 there isn't that call.

man tgkill
[..]
tkill and tgkill are Linux specific and should not be used in programs that are intended to be portable. tkill is supported since Linux 2.4.19 / 2.5.4. tgkill was added in Linux 2.5.75.
Comment 74 Jeroen Roovers (RETIRED) gentoo-dev 2005-05-02 04:57:37 UTC
tgkill() appears to be called by rt_sigprocmask().

Something in the kernel, perhaps? I will build a kernel with all the (spin)lock checking features disabled and see if that solves it.
Comment 75 Jeroen Roovers (RETIRED) gentoo-dev 2005-05-02 05:04:26 UTC
Specifically, I didn't appear to have any of the spinlock debugging hacks enabled, but I did set

# CONFIG_PREEMPT_BKL is not set
Comment 76 Jeroen Roovers (RETIRED) gentoo-dev 2005-05-02 05:31:04 UTC
I don't think it will help, though. The process that issues the rt_sigprocmask and tgkill is 14131, and the first thing that this process writes to the log (judging from the combined capisuite.log and the second trace output is 

Mon May  2 12:30:40 2005 Pythonscript /usr/lib/capisuite/incoming.py,callIncomin
g,0x81f3210: PythonScript created.

So it calls the callIncoming function in incoming.py and in the end wants to abort the entire enterprise when the phone is hung up on the other end. What happens near the end is important.

callIncoming calls voiceIncoming or faxIncoming, and both use

[from line 231 in </usr/lib/capisuite/incoming.py>]

  except capisuite.CallGoneError: # catch this here to get the cause info in the mail                                                                                 (cause,causeB3)=capisuite.disconnect(call)
    capisuite.log("connection lost with cause 0x%x,0x%x" % (cause,causeB3),1,call)

"to get the cause info in the mail". Maybe disabling this will solve the problem entirely, but I am no Python wizard either.
Comment 77 Jeroen Roovers (RETIRED) gentoo-dev 2005-05-02 05:42:18 UTC
Two more comments:

1) While compiling the kernel, the following message is shown:

drivers/isdn/capi/capidrv.c:2108:10: warning: #warning FIXME: maybe a race condition the card should be removed here from global list /kkeil

I have no idea what that means. :)

2) I have just run another test. I called the answering machine and entered a voice message, and then I did not hang up, but I waited the 5 seconds in order to have capisuite disconnect by itself. That worked, capisuite kept running, and I even got the wav file in the mail. I don't know the innards of sending faxes, but I assume from this experiences that the sending fax machines disconnects when it is done, and that this makes capisuite choke for the very same reason it doesn't handle callers hanging up on it "unexpectedly".

This again seems to point to capisuite.CallGoneError: either capisuite receives a disconnect cause it doesn't expect, or in a format it doesn't understand. I'd rather have capisuite not telling me what the disconnect reason was than crashing because it does want to tell me so dearly.
Comment 78 Bernd Wurst 2005-05-02 06:14:37 UTC
Ok, I did a little bit of python debugging and I think the problem is not inside the python code.

I placed some checkpoints in the python code, one message between every siginificant command and the last command executed from within python is 
  capisuite.fax_receive(call,filename)

My print statement after this one is not executed.
The module capisuite is the C one, but I am still looking for some hint how this is implemented at all, I did not yet find out how they implemented this binary module...
Comment 79 Stefan Briesenick (RETIRED) gentoo-dev 2005-05-02 06:18:43 UTC
This is a session recorded from my capisuite:

Mon May  2 09:32:05 2005 Connection 0x801e6b18: Connection object created for incoming call PLCI 102 from XXXXXXXXXX to XXXXXX CIP 0x10
Mon May  2 09:32:05 2005 Connection 0x80208f80: Connection object created for incoming call PLCI 101 from XXXXXXXXXX to XXXXXX CIP 0x10
Mon May  2 09:32:06 2005 Connection 0x801e6b18: call from XXXXXXXXXX to XXXXXX for stefan connecting with voice
Mon May  2 09:32:06 2005 Connection 0x80208f80: call from XXXXXXXXXX to XXXXXX for stefan connecting with voice
Mon May  2 09:32:16 2005 Connection 0x801e6b18: accepting with service 0
Mon May  2 09:32:16 2005 Connection 0x80208f80: accepting with service 0
Mon May  2 09:32:16 2005 Connection 0x80208f80: connection lost with cause 0x349a,0x0
Mon May  2 09:32:16 2005 Connection 0x80208f80: Connection object deleted
Mon May  2 09:32:23 2005 Connection 0x801e6b18: disconnect initiated
Mon May  2 09:32:23 2005 Connection 0x801e6b18: connection lost with cause 0x3490,0x0
Mon May  2 09:32:23 2005 Connection 0x801e6b18: Connection object deleted
Comment 80 Stefan Briesenick (RETIRED) gentoo-dev 2005-05-02 06:29:18 UTC
@Bernd (sorry, the B...Wurst lets me read your name always as 'Bratwurst' ;-)): Please test the 2004 capi4k-utils + re-emerging the capisuite-0.4.5.3 ebuild. The capiv3 patch shouldn't be applied then. I want to be sure, that there isn't a problem with my capiv3 patch and CAPI V3 at all.

But here it works and using CAPI V3 is prefered, because it fixes some ugly bugs. The main difference between V2 and V3 is, that some functions have one or two parameters added, which can be NULL if not needed. So the patch is straight forward and very simple (just adding NULLs).
Comment 81 Stefan Briesenick (RETIRED) gentoo-dev 2005-05-02 06:34:27 UTC
@Comment #76: capidrv is irrelevant, it's the brigde driver to the OLD I4l world. You can disable it, if you don't need neither old ipppX- and AT-Commandset-support nor isdnlog.
Comment 82 Jeroen Roovers (RETIRED) gentoo-dev 2005-05-02 06:35:24 UTC
Another test: When I call the answering machine, enter my PIN and press 1, capisuite tells me the number of waiting messages (26! :-), and then disconnects, but keeps running. Nothing noteworthy appears in capisuite.log or capisuite.error, apart from 

Mon May  2 15:31:08 2005 Pythonscript 0x81f3210: Traceback: IOError: [Errno 2] N
o such file or directory: '/var/spool/capisuite/users/jeroen/received/voice-0.tx
t'

which is to be expected because those files are never written.

I guess that still means the problem is somewhere with the capisuite.* interface to the Python scripts.
Comment 83 Bernd Wurst 2005-05-02 06:39:52 UTC
> @Bernd (sorry, the B...Wurst lets me read your name always as 'Bratwurst' 

Omg, you're so funny. :-/


> Please test the 2004 capi4k-utils + re-emerging the capisuite-0.4.5.3 ebuild. 

# emerge -pv capi4k-utils
[ebuild   R   ] net-dialup/capi4k-utils-20041006-r5  0 kB

I think I use the 2004-capi4k-utils. :)

> The capiv3 patch shouldn't be applied then. I want to be sure, that there 
> isn't a problem with my capiv3 patch and CAPI V3 at all.

I already tested to leave patches out, that was with those capi4k-utils, so I think this cannot be the point.

But I'm a littel further. As mentioned above, the python code calls a C-coded module before it crashes. The function called seems to be this one:


static PyObject*
capisuite_fax_receive(PyObject *, PyObject *args)
{
        Connection *conn;
        char *filename;
        PyThreadState *_save;

        if (!PyArg_ParseTuple(args,"O&s:fax_receive",convertConnRef,&conn,&filename))
                return NULL;

        try {
                Py_UNBLOCK_THREADS
                FaxReceive active(conn,filename);
                active.mainLoop();
                Py_BLOCK_THREADS
        }
        catch (CapiWrongState e) {
                Py_BLOCK_THREADS
                PyErr_SetString(CallGoneError,"Call was finished from partner.");
                return NULL;
        }
        catch (CapiExternalError e) {
                Py_BLOCK_THREADS
                PyErr_SetString(BackendError,(e.message()).c_str());
                return NULL;
        }

        Py_XINCREF(Py_None);
        return (Py_None);
}


You wrote about those thread-kill-functions, This code here uses threads!
Perhaps there's something wrong with Python's thread management here?

I use following flags:
# emerge -pv glibc python
[ebuild   R   ] sys-libs/glibc-2.3.4.20041102-r1  -build -debug -erandom -hardened (-multilib) +nls -nomalloccheck +nptl -nptlonly -pic +userlocales 0 kB
[ebuild   R   ] dev-lang/python-2.3.5  -X -berkdb -bootstrap -build -debug -doc -gdbm +ipv6 +ncurses +readline +ssl -tcltk -ucs2 0 kB

And the server that does not have this problem has these flags:
# emerge -pv glibc python
[ebuild   R   ] sys-libs/glibc-2.3.4.20041102-r1  -build -debug -erandom -hardened (-multilib) +nls -nomalloccheck -nptl -nptlonly +pic -userlocales 0 kB
[ebuild   R   ] dev-lang/python-2.4-r3  -X +berkdb -bootstrap -build -debug -doc +gdbm +ipv6 +ncurses +readline +ssl -tcltk -ucs2 0 kB

@JeR: Do you have NPTL in your USE-Flags?
I think it is not really possible to turn NPTL off in a running system, isn't it?
Comment 84 Jeroen Roovers (RETIRED) gentoo-dev 2005-05-02 06:59:13 UTC
I have:

[ebuild   R   ] sys-libs/glibc-2.3.4.20041102-r1  -build -debug -erandom -hardened (-multilib) +nls -nomalloccheck +nptl +nptlonly +pic +userlocales 0 kB
[ebuild   R   ] dev-lang/python-2.3.5  +X +berkdb -bootstrap -build -debug -doc +gdbm +ipv6 +ncurses +readline +ssl -tcltk -ucs2 0 kB


To sum up all the differences in glibc on all systems:

Doesn't work (JeR):
+nptl +pic +userlocales

Doesn't work (Bernd):
+nptl -pic +userlocales

Does work (Bernd):
-nptl +pic -userlocales

That's three variables, not one. :-\
Comment 85 Jeroen Roovers (RETIRED) gentoo-dev 2005-05-02 07:24:52 UTC
Stefan Briesenick, what are your USE flags for glibc? (I think we can count out python or the Capisuite python scripts as the direct cause of the problem and instead focus on the capisuite binary.)
Comment 86 Jeroen Roovers (RETIRED) gentoo-dev 2005-05-02 07:33:32 UTC
I would think Capisuite requires linuxthreads but I am a bit reluctant to rebuild the entire toolchain on an AMD K6-2 @ 400 MHz just to test this theory. Bernd, do you have a faster machine that's available for testing this and that has the problem? Testing this by rebuilding glibc, etc, would probably cost about a day (at least 18 hours for twice rebuilding the tc alone).
Comment 87 Bernd Wurst 2005-05-02 07:42:58 UTC
@JeR: Partly. The non-working machine is a P3-800, but I don't have physical access to it, so rebuilding system core would be kind of dangerous.

At weekend, I am there for a few days, if this isn't solved then, I can try.

Cause the woking machine is in my flat, I can try turning on NPTL there and do the test the other way. Dangerous but this box (and it's fax functionality) is not needed, it's just a testing machine and my internet router. :)

emerge glibc runs. :)
Comment 88 Jeroen Roovers (RETIRED) gentoo-dev 2005-05-02 07:55:00 UTC
@ #86: Thanks. Hopefully we'll know soon. Do you think emerging only glibc and only once will be enough? That would be only 5 hours merge time for me...
Comment 89 Stefan Briesenick (RETIRED) gentoo-dev 2005-05-02 08:11:25 UTC
on my server where I tested it first:

sys-libs/glibc-2.3.5  -build -debug +erandom +hardened (-multilib) +nls +nomalloccheck +nptl +nptlonly +pic +userlocales
Comment 90 Bernd Wurst 2005-05-02 10:22:00 UTC
I recompiled glibc with NPTL & NPTLONLY Flags set but no changem capisuite works like a charme on that box. 
But I thought that it's not really possible to switch a system over to nptl by just re-merging glibc...

However, executing /lib/libc.so.6 shows NPTL as supported feature.

Any further suggestions?
Comment 91 Jeroen Roovers (RETIRED) gentoo-dev 2005-05-03 04:39:54 UTC
Bernd Wurst / Stefan Briesenick: Could you please post your log_level="3" output to <capisuite.log> from a working Capisuite? I am particularly interest in connections ending with this sequence:

-------------------------------------
Capi ... DISCONNECT_B3_IND ...
[ perhaps something like this here: ]
[ ... fax finished with rate 14400, lowRes, ID: + xxxxxxxx, 1 pages ... ]
... stop_file_transmission initiated ...
... stop_file_transmission finished ...
... stop_file_reception finished ...
Capi ... DISCONNECT_B3_RESP ...
[ perhaps something like this here: ]
[ Capi ... info: 0 ]
[ Capi ... ** ]
-------------------------------------

Based on the assumption that Capisuite is choking on some CAPI message it doesn't expect, this could be important (at least for my point of view, with no working Capisuite to judge from what it ought to look like).
Comment 92 Stefan Briesenick (RETIRED) gentoo-dev 2005-05-03 12:32:04 UTC
I wasn't at home today. But I will test it with log_level="3" now.
Comment 93 Stefan Briesenick (RETIRED) gentoo-dev 2005-05-03 13:18:12 UTC
Created attachment 57958 [details]
capisuite.log

complete session voice call. recorded with loglevel 3.
Comment 94 Stefan Briesenick (RETIRED) gentoo-dev 2005-05-03 13:27:24 UTC
ooops ;) both controllers were connected to the S0, so the log looks a little bit strange. I'm not sure which controller got the call. If needed, I can repeat it with only one controller.
Comment 95 Jeroen Roovers (RETIRED) gentoo-dev 2005-05-03 14:02:39 UTC
Interesting. It looks like my capisuite gets only as far as

-----------------------------------------------
11:27:54 2005 Capi 0x81ac6b0: <DISCONNECT_B3_IND NCCI 0x10101 Reason 0x3301
11:27:54 2005 Connection 0x821e180: stop_file_transmission initiated
11:27:54 2005 Connection 0x821e180: stop_file_transmission finished
11:27:54 2005 Connection 0x821e180: stop_file_reception finished
11:27:54 2005 Capi 0x81ac6b0: >DISCONNECT_B3_RESP ApplId 0x2 MsgNum 0x277 NCCI 0x10101
11:27:54 2005 Capi 0x81ac6b0: info: 0
11:27:54 2005 Capi 0x81ac6b0: **
-----------------------------------------------

while yours seems to continue further from that point with

-----------------------------------------------
22:11:17 2005 Connection 0x801eb840: disconnect initiated
22:11:17 2005 Capi 0x801728c8: >DISCONNECT_REQ ApplId 0x4 MsgNum 0x2e PLCI 0x101
22:11:17 2005 Capi 0x801728c8: info: 0
22:11:17 2005 Capi 0x801728c8: *
22:11:17 2005 Capi 0x801728c8: <DISCONNECT_CONF PLCI 0x101 Info 0x0
22:11:17 2005 Capi 0x801728c8: **
22:11:17 2005 Capi 0x801728c8: *
22:11:17 2005 Capi 0x801728c8: <DISCONNECT_IND PLCI 0x101 Reason 0x3490
22:11:17 2005 Capi 0x801728c8: >DISCONNECT_RESP ApplId 0x4 MsgNum 0xdd PLCI 0x101
22:11:17 2005 Capi 0x801728c8: info: 0
22:11:17 2005 Capi 0x801728c8: **
22:11:17 2005 Connection 0x801eb840: connection lost with cause 0x3490,0x3301
22:11:17 2005 CapiSuite 0xbfffeea0: mail sent successful
22:11:17 2005 Connection 0x801eb840: Python: deleting connection object
22:11:17 2005 Connection 0x801eb840: stop_file_transmission initiated
22:11:17 2005 Connection 0x801eb840: stop_file_transmission finished
22:11:17 2005 Connection 0x801eb840: stop_file_reception finished
22:11:17 2005 Connection 0x801eb840: Connection object deleted
22:11:17 2005 Pythonscript /usr/lib/capisuite/incoming.py,callIncoming,0x801913c0: IncomingScript deleted
22:11:17 2005 Pythonscript /usr/lib/capisuite/incoming.py,callIncoming,0x801913c0: PythonScript deleted.
22:11:28 2005 Pythonscript /usr/lib/capisuite/idle.py,idle,0x801a16e8: executing idlescript...
22:11:28 2005 Pythonscript /usr/lib/capisuite/idle.py,idle,0x801a16e8: idlescript finished...
-----------------------------------------------

Is it possible to get a -debug USE flag working easily for capisuite? Judging from the documentation it seems like capisuite has such options and code built in.
Comment 96 Stefan Briesenick (RETIRED) gentoo-dev 2005-05-03 14:32:22 UTC
just add the debug option to the 'econf' in src_compile(). Should be enough.
Comment 97 Stefan Briesenick (RETIRED) gentoo-dev 2005-05-04 12:06:09 UTC
Created attachment 58052 [details]
capisuite.log (with AVM Fritz!Card USB v2.0)
Comment 98 Jeroen Roovers (RETIRED) gentoo-dev 2005-06-24 02:34:36 UTC
Just for a laugh I tried out (CAPI4)Hylafax and it works flawlessly (though I do 
miss the answering machine and haven't found a replacement for it yet).
Comment 99 Christian Ostheimer 2005-08-05 12:51:36 UTC
On my system x86, gcc 3.3.6, kernel 2.6.12 capisuite always terminated if
capisuite was called by another party at the moment when the other party
disconnected the call. - This matches the descriptions above.

Chrooting into a SUSE 9.3 system did not show this behaviour; 
thus, hardware and kernel modules are ok.

Finally I compiled capisuite manually and it worked without terminating.

Solution, at least in my case: 
emerging capisuite-0.4.5-r2 in my setup used gcc-flag
-fomit-frame-pointer which caused the crash; 

so two changes in the ebuild solved my problem:

adding flag-o-matic to inherit ...
calling strip-flags in function src_compile()

Christian

my modified ebuild will be attached below
Comment 100 Christian Ostheimer 2005-08-05 12:57:32 UTC
Created attachment 65193 [details]
patched ebuild for capisuite-0.4.5-r2

this ebuild solves the bug on my system (see comment #98)
Christian
Comment 101 Stefan Briesenick (RETIRED) gentoo-dev 2005-08-05 13:06:35 UTC
'strip-flags' removes all flags. Isn't it enough to remove just 
-fomit-frame-pointer from CFLAGS? 
 
I don't like the idea to strip all flags just to be on the safe side. Please 
test it with: 
 
"filter-flags -fomit-frame-pointer" instead of "strip-flags". 
 
and tell us, if it helps. thanks! 
 
Comment 102 Jeroen Roovers (RETIRED) gentoo-dev 2005-08-05 14:17:46 UTC
(In reply to comment #98)

> emerging capisuite-0.4.5-r2 in my setup used gcc-flag
> -fomit-frame-pointer which caused the crash; 

I think I removed -fomit-frame-pointer a long time ago, before a complete 
rebuild of the system. I might be OK if -fomit-frame-pointer was to blame, so 
I'll try and remerge and see if it helps.

In the mean time, could you please post your emerge info?
Comment 103 Jeroen Roovers (RETIRED) gentoo-dev 2005-08-05 14:54:04 UTC
Eureka. It works!??! Capisuite now stays up and running, even after receiving 
and sending a couple of voicemails and faxes (even in rapid succession).

Now, as for my former CFLAGS:

   CFLAGS="-O2 -march=k6-2 -fomit-frame-pointer -pipe -funroll-loops"

I changed these to

   CFLAGS="-Os -march=i586 -pipe"

quite a while ago, without taking much more notice of this Capisuite bug, so I'm 
afraid I can't tell if this change is what solved the problem. It could have 
been some library dependency instead.

So it may not be such a wild idea to keep these as sane as possible. Besides the 
argument of sanity, Capisuite is not a time-critical application in and of 
itself AFAIK (even though the capi drivers and utils are, especially if you use 
a passive CAPI-capable ISDN controller). Last but not least, better CFLAGS won't 
make faxes and particularly voicemails come in any faster.

Ergo, using strip-flags or stripping quite heavily may not be such a bad idea at 
all.
Comment 104 Christian Ostheimer 2005-08-05 16:15:28 UTC
(In reply to comment #100)
> 'strip-flags' removes all flags. Isn't it enough to remove just 
> -fomit-frame-pointer from CFLAGS? 
I did test both, so in my case filtering -fomit-frame-pointer is ok as well
Christian
Comment 105 Stefan Briesenick (RETIRED) gentoo-dev 2005-08-06 20:17:20 UTC
ok, this seems to be one of the nasty apps with some dirty code. ;-) 
though I'm not a friend of strip-flags, in this case I will add it. 
 
I commit the fixed ebuild tomorrow (want to do some other checks and maybe some 
ebuild cleanups first). 
 
Comment 106 Stefan Briesenick (RETIRED) gentoo-dev 2005-08-07 04:43:25 UTC
capisuite-0.4.5-r3 committed with 'strip-flags'. Please test! 
 
Comment 107 Christian Ostheimer 2005-08-07 14:29:04 UTC
(In reply to comment #104)
> ok, this seems to be one of the nasty apps with some dirty code. ;-)  
No, except c++ in general is considered as dirty. - It has to do 
with c++ exception handling and seems to be a well known
bug since at least gcc 3.1  (http://gcc.gnu.org/ml/gcc-bugs/2002-05/msg00852.html) 

****

capisuite-0.4.5-r3.ebuild runs correctly and produces the working binary.
I think this bug can be closed. - Thanks for quickly providing a new ebuild.
Comment 108 Jeroen Roovers (RETIRED) gentoo-dev 2005-08-07 14:46:50 UTC
> capisuite-0.4.5-r3.ebuild runs correctly and produces the working binary.
> I think this bug can be closed. - Thanks for quickly providing a new ebuild.

The new capisuite-0.4.5-r3.ebuild runs well here too, as (ultimately) expected. 
I am back to capisuite and stopped using hylafax and ivam2. :) Thanks, 
*everyone*! :-)
Comment 109 Stefan Briesenick (RETIRED) gentoo-dev 2005-08-07 15:49:43 UTC
@comment #106: huh, this is a terrible bug! This affects *many* programs, since 
-fomit-frame-pointer is more or less frequently used by so many users 
(including me). 
 
does this mean *all* C++ apps should use "filter-flags -fomit-frame-pointer" to 
be on the safe side?