[asterisk-dev] channel name uniqueness

Russell Bryant russell at digium.com
Mon May 18 16:18:15 CDT 2009


Paul Albrecht wrote:
> On Mon, 2009-05-18 at 15:39 -0500, Russell Bryant wrote:
>> Paul Albrecht wrote:
>>> I have a question about the channel name. Specifically, is it guaranteed
>>> to be unique? The reason I'm asking is because sip channels use the
>>> pointer to their private block in their channel name, but that only
>>> ensures uniqueness if asterisk is compiled 32 bit.
>> Channel names are not guaranteed to be unique throughout system
>> lifetime.  There will (should!) never be more than one channel with the
>> same name at the same time, though.
>>
>> The unique ID field on a channel is what uniquely identifies it from
>> others that had the same name.  The unique ID field is a monotonically
>> increasing integer, a timestamp, and optionally, a system name.
>>
> 
> Hmmm, ... what about the "ASCII unique channel name", is it unique? For
> sip channels, it's set in sip_new by calling ast_channel_alloc with
> format string "SIP/%s-%08x", where the the string is a host address and
> the number is a 32 bit pointer to the channel's private data pointer.

Right, so, that will be unique across _current_ channels.  However,
after one channel is gone, it is conceivable that another with the same
name will get created.

-- 
Russell Bryant
Digium, Inc. | Senior Software Engineer, Open Source Team Lead
445 Jan Davis Drive NW - Huntsville, AL 35806 - USA
Check us out at: www.digium.com & www.asterisk.org



More information about the asterisk-dev mailing list