[Asterisk-cvs] asterisk/include/asterisk manager.h,1.17,1.18
markster
markster
Wed Sep 28 19:13:37 CDT 2005
Update of /usr/cvsroot/asterisk/include/asterisk
In directory mongoose.digium.com:/tmp/cvs-serv7993/include/asterisk
Modified Files:
manager.h
Log Message:
Remove possibility of manager deadlocks from manager actions
Index: manager.h
===================================================================
RCS file: /usr/cvsroot/asterisk/include/asterisk/manager.h,v
retrieving revision 1.17
retrieving revision 1.18
diff -u -d -r1.17 -r1.18
--- manager.h 30 Aug 2005 18:32:09 -0000 1.17
+++ manager.h 28 Sep 2005 23:10:14 -0000 1.18
@@ -66,16 +66,22 @@
#define MAX_HEADERS 80
#define MAX_LEN 256
+struct eventqent {
+ struct eventqent *next;
+ char eventdata[0];
+};
+
struct mansession {
/*! Execution thread */
pthread_t t;
- /*! Thread lock */
- ast_mutex_t lock;
+ /*! Thread lock -- don't use in action callbacks, it's already taken care of */
+ ast_mutex_t __lock;
/*! socket address */
struct sockaddr_in sin;
/*! TCP socket */
int fd;
- int blocking;
+ /*! Whether or not we're busy doing an action */
+ int busy;
/*! Logged in username */
char username[80];
/*! Authentication challenge */
@@ -90,6 +96,8 @@
char inbuf[MAX_LEN];
int inlen;
int send_events;
+ /* Queued events that we've not had the ability to send yet */
+ struct eventqent *eventq;
struct mansession *next;
};
More information about the svn-commits
mailing list