[asterisk-bugs] [Asterisk 0014379]: AMI shows utils.c:1198 ast_careful_fwrite: fflush() returned error: Broken pipe
Asterisk Bug Tracker
noreply at bugs.digium.com
Wed Feb 4 14:41:57 CST 2009
A NOTE has been added to this issue.
======================================================================
http://bugs.digium.com/view.php?id=14379
======================================================================
Reported By: chris-mac
Assigned To:
======================================================================
Project: Asterisk
Issue ID: 14379
Category: Core/ManagerInterface
Reproducibility: always
Severity: minor
Priority: normal
Status: new
Asterisk Version: SVN
Regression: No
SVN Branch (only for SVN checkouts, not tarball releases): 1.6.1
SVN Revision (number only!): 172030
Request Review:
======================================================================
Date Submitted: 2009-01-31 16:50 CST
Last Modified: 2009-02-04 14:41 CST
======================================================================
Summary: AMI shows utils.c:1198 ast_careful_fwrite: fflush()
returned error: Broken pipe
Description:
When sending data to AMI socket, without reading (waiting for) response -
console shows:
ERROR[5148]: utils.c:1198 ast_careful_fwrite: fflush() returned error:
Broken pipe
How to reproduce:
0. You will need php5-cli installed
1. Download 'AMI.class.php' and 'ami-test.php' attached.
2. Edit AMI username/password in 'ami-test.php'.
3. Run ./ami-test.php
4. Watch Asterisk console
NOTE: To revert back to a 'normal' behaviour, change line 72 of
'AMI.class.php' to: 'public $sync = true;'
======================================================================
----------------------------------------------------------------------
(0099441) putnopvut (administrator) - 2009-02-04 14:41
http://bugs.digium.com/view.php?id=14379#c99441
----------------------------------------------------------------------
I think one sensible way to handle this would be to downgrade the error
message to a warning or notice message and make it more informative than
just the strerror() interpretation of EPIPE. Something like "The remote end
closed its connection" seems less like a real problem and makes more
sense.
It also would make sense for us to close the AMI connection ourselves if
we receive an EPIPE when trying to write to a socket. That way, you'd only
get the message a single time instead of potentially seeing it all over the
screen.
Issue History
Date Modified Username Field Change
======================================================================
2009-02-04 14:41 putnopvut Note Added: 0099441
======================================================================
More information about the asterisk-bugs
mailing list