[asterisk-dev] manager.c

Luigi Rizzo rizzo at icir.org
Mon Oct 16 05:11:26 MST 2006


Hi,
i have a bit of a problem figuring out various things related to
data structures in manager.c

I will list below some of the detailed issues i have, but
overall my feeling is that the code here is not complete yet...
If someone know what the plan was, can he contact me even off list
to explain how things were meant to be ?
In the meantime, some questions are below:

+ the busy field struct mansession appears to be useless.
  It is only checked once, in function action_waitevent()

        if (s->busy == 1)
                s->busy = 2;

  but it does not change the flow of execution in any other way.
  What was it meant to protect ?
  Related to this, i cannot figure out what the comment to
  astman_send_error() means.

+ what is the purpose of the __lock field in struct mansession ?
  Obviously it cannot protect agains the entire struct going aways,
  but what other fields is it expected to protect ?
  eventq ? outputstr ? something else ?

+ why master_eventq needs to be non-empty, and how it is used overall ?

	cheers
	luigi


More information about the asterisk-dev mailing list