[asterisk-bugs] [Asterisk 0013546]: Partial writes on Manager API

Asterisk Bug Tracker noreply at bugs.digium.com
Wed Oct 1 18:10:48 CDT 2008


A NOTE has been added to this issue. 
====================================================================== 
http://bugs.digium.com/view.php?id=13546 
====================================================================== 
Reported By:                srt
Assigned To:                
====================================================================== 
Project:                    Asterisk
Issue ID:                   13546
Category:                   Core/ManagerInterface
Reproducibility:            random
Severity:                   minor
Priority:                   normal
Status:                     acknowledged
Asterisk Version:           1.4.21.2 
SVN Branch (only for SVN checkouts, not tarball releases): N/A 
SVN Revision (number only!):  
Disclaimer on File?:        N/A 
Request Review:              
====================================================================== 
Date Submitted:             2008-09-23 08:35 CDT
Last Modified:              2008-10-01 18:10 CDT
====================================================================== 
Summary:                    Partial writes on Manager API
Description: 
Sometimes writing manager events with ast_carefulwrite in manager.c only
results in a partial write i.e. not all data is written to the socket.
There is no check for this and no code to send the missing data. As a
workaround increasing the writetimeout in manager.conf mitigates this
issue.
See
http://jira.reucon.org/browse/AJ-174?focusedCommentId=10522#action_10522
for details.
====================================================================== 

---------------------------------------------------------------------- 
 (0093056) Corydon76 (administrator) - 2008-10-01 18:10
 http://bugs.digium.com/view.php?id=13546#c93056 
---------------------------------------------------------------------- 
Looking over the related issue, I have a few comments.

1) ast_carefulwrite() already does error-correction, albeit with a
timeout.  Multiple levels of error detection is rather silly.

2) I agree with increasing the timeout.  It seems to be the only way to go
here.  Perhaps this should be a per-peer setting, which can be increased,
if a particular peer is having trouble keeping up.  Then again, if a peer
is having trouble keeping up, then you should look into why (probably
network issues). 

Issue History 
Date Modified    Username       Field                    Change               
====================================================================== 
2008-10-01 18:10 Corydon76      Note Added: 0093056                          
======================================================================




More information about the asterisk-bugs mailing list