[asterisk-bugs] [JIRA] (ASTERISK-23418) ast_read() on chan '...' called with no recorded file descriptor.

Joshua Colp (JIRA) noreply at issues.asterisk.org
Mon Dec 18 10:44:08 CST 2017


     [ https://issues.asterisk.org/jira/browse/ASTERISK-23418?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Joshua Colp updated ASTERISK-23418:
-----------------------------------

    Affects Version/s: 13.18.4

> ast_read() on chan '...' called with no recorded file descriptor.
> -----------------------------------------------------------------
>
>                 Key: ASTERISK-23418
>                 URL: https://issues.asterisk.org/jira/browse/ASTERISK-23418
>             Project: Asterisk
>          Issue Type: Bug
>      Security Level: None
>          Components: Channels/General
>    Affects Versions: SVN, 1.8.26.0, 13.18.4
>            Reporter: Walter Doekes
>            Severity: Minor
>
> Error:
> {noformat}
> #ifdef AST_DEVMODE
>                 /*
>                  * The ast_waitfor() code records which of the channel's file
>                  * descriptors reported that data is available.  In theory,
>                  * ast_read() should only be called after ast_waitfor() reports
>                  * that a channel has data available for reading.  However,
>                  * there still may be some edge cases throughout the code where
>                  * ast_read() is called improperly.  This can potentially cause
>                  * problems, so if this is a developer build, make a lot of
>                  * noise if this happens so that it can be addressed.
>                  *
>                  * One of the potential problems is blocking on a dead channel.
>                  */
>                 if (chan->fdno == -1) {
>                         ast_log(LOG_ERROR,
>                                 "ast_read() on chan '%s' called with no recorded file descriptor.\n",
>                                 chan->name);
>                 }
> #endif
> {noformat}
> Dialplan:
> {noformat}
> [default]
> exten => channel_read,1,NoOp
>  same => n,Dial(Local/channel_read_2 at default)
> exten => channel_read_2,1,NoOp
>  same => n,Hangup()
> {noformat}
> Execute:
> {noformat}
> *CLI> core show version
> Asterisk SVN-branch-1.8-r409436 built by walter @ walter-desktop on a x86_64 running Linux on 2014-02-20 13:40:09 UTC
> *CLI> channel originate Local/channel_read at default application Wait 1
> {noformat}
> Output:
> {noformat}
>     -- Executing [channel_read at default:1] NoOp("Local/channel_read at default-00000000;2", "") in new stack
>     -- Executing [channel_read at default:2] Dial("Local/channel_read at default-00000000;2", "Local/channel_read_2 at default") in new stack
> [Mar  5 16:23:35] ERROR[20861]: channel.c:3870 __ast_read: ast_read() on chan 'Local/channel_read at default-00000000;1' called with no recorded file descriptor.
>     -- Called Local/channel_read_2 at default
> [Mar  5 16:23:35] ERROR[20861]: channel.c:3870 __ast_read: ast_read() on chan 'Local/channel_read at default-00000000;1' called with no recorded file descriptor.
>     -- Executing [channel_read_2 at default:1] NoOp("Local/channel_read_2 at default-00000001;2", "") in new stack
>     -- Executing [channel_read_2 at default:2] Hangup("Local/channel_read_2 at default-00000001;2", "") in new stack
> [Mar  5 16:23:35] ERROR[20861]: channel.c:3870 __ast_read: ast_read() on chan 'Local/channel_read at default-00000000;1' called with no recorded file descriptor.
> [Mar  5 16:23:35] ERROR[20861]: channel.c:3870 __ast_read: ast_read() on chan 'Local/channel_read at default-00000000;1' called with no recorded file descriptor.
>   == Spawn extension (default, channel_read_2, 2) exited non-zero on 'Local/channel_read_2 at default-00000001;2'
> [Mar  5 16:23:35] ERROR[20861]: channel.c:3870 __ast_read: ast_read() on chan 'Local/channel_read at default-00000000;1' called with no recorded file descriptor.
>     -- No one is available to answer at this time (1:0/0/0)
> [Mar  5 16:23:35] ERROR[20861]: channel.c:3870 __ast_read: ast_read() on chan 'Local/channel_read at default-00000000;1' called with no recorded file descriptor.
>     -- Auto fallthrough, channel 'Local/channel_read at default-00000000;2' status is 'NOANSWER'
> [Mar  5 16:23:35] ERROR[20861]: channel.c:3870 __ast_read: ast_read() on chan 'Local/channel_read at default-00000000;1' called with no recorded file descriptor.
> {noformat}



--
This message was sent by Atlassian JIRA
(v6.2#6252)



More information about the asterisk-bugs mailing list