diff options
author | kpfleming <kpfleming@f38db490-d61c-443f-a65b-d21fe96a405b> | 2007-01-05 22:16:33 +0000 |
---|---|---|
committer | kpfleming <kpfleming@f38db490-d61c-443f-a65b-d21fe96a405b> | 2007-01-05 22:16:33 +0000 |
commit | a6d4c512c85a5c5a908521066fe4a7ba772e4aec (patch) | |
tree | ccaced165563a62abe8a3613e25cb0f1abc7295c /include | |
parent | 5d863dcd8db84fab3df37c0f32fb459fd1b94948 (diff) |
reduce stack consumption for AMI and AMI/HTTP requests by nearly 20K in most cases
git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@49676 f38db490-d61c-443f-a65b-d21fe96a405b
Diffstat (limited to 'include')
-rw-r--r-- | include/asterisk/jabber.h | 4 | ||||
-rw-r--r-- | include/asterisk/manager.h | 27 |
2 files changed, 13 insertions, 18 deletions
diff --git a/include/asterisk/jabber.h b/include/asterisk/jabber.h index 95d18a9a3..8d7662f97 100644 --- a/include/asterisk/jabber.h +++ b/include/asterisk/jabber.h @@ -120,14 +120,14 @@ struct aji_client_container{ ASTOBJ_CONTAINER_COMPONENTS(struct aji_client); }; -int ast_aji_send(struct aji_client *client, char *address, char *message); +int ast_aji_send(struct aji_client *client, const char *address, const char *message); int ast_aji_disconnect(struct aji_client *client); int ast_aji_check_roster(void); void ast_aji_increment_mid(char *mid); int ast_aji_create_chat(struct aji_client *client,char *room, char *server, char *topic); int ast_aji_invite_chat(struct aji_client *client, char *user, char *room, char *message); int ast_aji_join_chat(struct aji_client *client,char *room); -struct aji_client *ast_aji_get_client(char *name); +struct aji_client *ast_aji_get_client(const char *name); struct aji_client_container *ast_aji_get_clients(void); #endif diff --git a/include/asterisk/manager.h b/include/asterisk/manager.h index 96326f07c..cbbe1fb90 100644 --- a/include/asterisk/manager.h +++ b/include/asterisk/manager.h @@ -58,13 +58,12 @@ /* Export manager structures */ #define AST_MAX_MANHEADERS 80 -#define AST_MAX_MANHEADER_LEN 256 struct mansession; struct message { - int hdrcount; - char headers[AST_MAX_MANHEADERS][AST_MAX_MANHEADER_LEN]; + unsigned int hdrcount; + const char *headers[AST_MAX_MANHEADERS]; }; struct manager_action { @@ -77,7 +76,7 @@ struct manager_action { /*! Permission required for action. EVENT_FLAG_* */ int authority; /*! Function to be called */ - int (*func)(struct mansession *s, struct message *m); + int (*func)(struct mansession *s, const struct message *m); /*! For easy linking */ struct manager_action *next; }; @@ -97,7 +96,7 @@ struct manager_action { int ast_manager_register2( const char *action, int authority, - int (*func)(struct mansession *s, struct message *m), + int (*func)(struct mansession *s, const struct message *m), const char *synopsis, const char *description); @@ -111,27 +110,23 @@ int ast_manager_unregister( char *action ); \param event Event name \param contents Contents of event */ -int manager_event(int category, const char *event, const char *contents, ...) - __attribute__ ((format (printf, 3,4))); +int __attribute__ ((format (printf, 3,4))) manager_event(int category, const char *event, const char *contents, ...); /*! Get header from mananger transaction */ -char *astman_get_header(struct message *m, char *var); +const char *astman_get_header(const struct message *m, char *var); /*! Get a linked list of the Variable: headers */ -struct ast_variable *astman_get_variables(struct message *m); +struct ast_variable *astman_get_variables(const struct message *m); /*! Send error in manager transaction */ -void astman_send_error(struct mansession *s, struct message *m, char *error); -void astman_send_response(struct mansession *s, struct message *m, char *resp, char *msg); -void astman_send_ack(struct mansession *s, struct message *m, char *msg); - -void astman_append(struct mansession *s, const char *fmt, ...) - __attribute__ ((format (printf, 2, 3))); +void astman_send_error(struct mansession *s, const struct message *m, char *error); +void astman_send_response(struct mansession *s, const struct message *m, char *resp, char *msg); +void astman_send_ack(struct mansession *s, const struct message *m, char *msg); +void __attribute__ ((format (printf, 2, 3))) astman_append(struct mansession *s, const char *fmt, ...); /*! Called by Asterisk initialization */ int init_manager(void); -/*! Called by Asterisk initialization */ int reload_manager(void); #endif /* _ASTERISK_MANAGER_H */ |