[asterisk-commits] russell: branch 1.4 r81448 - in /branches/1.4: channels/ include/asterisk/ main/
SVN commits to the Asterisk project
asterisk-commits at lists.digium.com
Tue Sep 4 13:37:44 CDT 2007
Author: russell
Date: Tue Sep 4 13:37:44 2007
New Revision: 81448
URL: http://svn.digium.com/view/asterisk?view=rev&rev=81448
Log:
Remove the typedefs on ao2_container and ao2_iterator. This is simply because
we don't typedef objects anywhere else in Asterisk, so we might as well make
this follow the same convention.
Modified:
branches/1.4/channels/chan_iax2.c
branches/1.4/include/asterisk/astobj2.h
branches/1.4/main/astobj2.c
Modified: branches/1.4/channels/chan_iax2.c
URL: http://svn.digium.com/view/asterisk/branches/1.4/channels/chan_iax2.c?view=diff&rev=81448&r1=81447&r2=81448
==============================================================================
--- branches/1.4/channels/chan_iax2.c (original)
+++ branches/1.4/channels/chan_iax2.c Tue Sep 4 13:37:44 2007
@@ -645,10 +645,10 @@
#define MAX_PEER_BUCKETS 1
/* #define MAX_PEER_BUCKETS 563 */
#endif
-static ao2_container *peers;
+static struct ao2_container *peers;
#define MAX_USER_BUCKETS MAX_PEER_BUCKETS
-static ao2_container *users;
+static struct ao2_container *users;
static struct ast_firmware_list {
struct iax_firmware *wares;
@@ -1152,7 +1152,7 @@
{
struct iax2_peer *peer = NULL;
int res = 0;
- ao2_iterator i;
+ struct ao2_iterator i;
i = ao2_iterator_init(peers, 0);
while ((peer = ao2_iterator_next(&i))) {
@@ -2283,7 +2283,7 @@
struct iax2_peer *peer;
char *res = NULL;
int wordlen = strlen(word);
- ao2_iterator i;
+ struct ao2_iterator i;
/* 0 - iax2; 1 - show; 2 - peer; 3 - <peername> */
if (pos != 3)
@@ -3489,7 +3489,7 @@
{
struct iax2_peer *peer;
int res = 0;
- ao2_iterator i;
+ struct ao2_iterator i;
i = ao2_iterator_init(peers, 0);
while ((peer = ao2_iterator_next(&i))) {
@@ -4218,7 +4218,7 @@
struct iax2_user *user = NULL;
char auth[90];
char *pstr = "";
- ao2_iterator i;
+ struct ao2_iterator i;
switch (argc) {
case 5:
@@ -4276,7 +4276,7 @@
int online_peers = 0;
int offline_peers = 0;
int unmonitored_peers = 0;
- ao2_iterator i;
+ struct ao2_iterator i;
#define FORMAT2 "%-15.15s %-15.15s %s %-15.15s %-8s %s %-10s%s"
#define FORMAT "%-15.15s %-15.15s %s %-15.15s %-5d%s %s %-10s%s"
@@ -4841,7 +4841,7 @@
int bestscore = 0;
int gotcapability = 0;
struct ast_variable *v = NULL, *tmpvar = NULL;
- ao2_iterator i;
+ struct ao2_iterator i;
if (!iaxs[callno])
return res;
@@ -5432,7 +5432,7 @@
/* Normal password authentication */
res = authenticate(p->challenge, override, okey, authmethods, &ied, sin, &p->ecx, &p->dcx);
} else {
- ao2_iterator i = ao2_iterator_init(peers, 0);
+ struct ao2_iterator i = ao2_iterator_init(peers, 0);
while ((peer = ao2_iterator_next(&i))) {
if ((ast_strlen_zero(p->peer) || !strcmp(p->peer, peer->name))
/* No peer specified at our end, or this is the peer */
@@ -9418,7 +9418,7 @@
static void prune_users(void)
{
struct iax2_user *user;
- ao2_iterator i;
+ struct ao2_iterator i;
i = ao2_iterator_init(users, 0);
while ((user = ao2_iterator_next(&i))) {
@@ -9432,7 +9432,7 @@
static void prune_peers(void)
{
struct iax2_peer *peer;
- ao2_iterator i;
+ struct ao2_iterator i;
i = ao2_iterator_init(peers, 0);
while ((peer = ao2_iterator_next(&i))) {
Modified: branches/1.4/include/asterisk/astobj2.h
URL: http://svn.digium.com/view/asterisk/branches/1.4/include/asterisk/astobj2.h?view=diff&rev=81448&r1=81447&r2=81448
==============================================================================
--- branches/1.4/include/asterisk/astobj2.h (original)
+++ branches/1.4/include/asterisk/astobj2.h Tue Sep 4 13:37:44 2007
@@ -87,7 +87,7 @@
<b>Sample Usage:</b>
\code
- ao2_container *c;
+ struct ao2_container *c;
c = ao2_container_alloc(MAX_BUCKETS, my_hash_fn, my_cmp_fn);
@@ -239,8 +239,8 @@
iterate on a container
this is done with the following sequence
- ao2_container *c = ... // our container
- ao2_iterator i;
+ struct ao2_container *c = ... // our container
+ struct ao2_iterator i;
void *o;
i = ao2_iterator_init(c, flags);
@@ -320,14 +320,7 @@
/*!
* Here start declarations of containers.
*/
-
-/*!
- * This structure contains the total number of buckets
- * and variable size array of object pointers.
- * It is opaque, defined in astobj2.c, so we only need
- * a type declaration.
- */
-typedef struct __ao2_container ao2_container;
+struct ao2_container;
/*!
* Allocate and initialize a container
@@ -343,13 +336,13 @@
*
* destructor is set implicitly.
*/
-ao2_container *ao2_container_alloc(const uint n_buckets,
+struct ao2_container *ao2_container_alloc(const uint n_buckets,
ao2_hash_fn hash_fn, ao2_callback_fn cmp_fn);
/*!
* Returns the number of elements in a container.
*/
-int ao2_container_count(ao2_container *c);
+int ao2_container_count(struct ao2_container *c);
/*
* Here we have functions to manage objects.
@@ -375,8 +368,8 @@
* matching behavior doesn't change.
*/
#define ao2_link(c, o) __ao2_link(c, o, 0)
-void *__ao2_link(ao2_container *c, void *newobj, int iax2_hack);
-void *ao2_unlink(ao2_container *c, void *newobj);
+void *__ao2_link(struct ao2_container *c, void *newobj, int iax2_hack);
+void *ao2_unlink(struct ao2_container *c, void *newobj);
/*! \struct Used as return value if the flag OBJ_MULTIPLE is set */
struct ao2_list {
@@ -432,8 +425,8 @@
* be used to free the additional reference possibly created by this function.
*/
/* XXX order of arguments to find */
-void *ao2_find(ao2_container *c, void *arg, enum search_flags flags);
-void *ao2_callback(ao2_container *c,
+void *ao2_find(struct ao2_container *c, void *arg, enum search_flags flags);
+void *ao2_callback(struct ao2_container *c,
enum search_flags flags,
ao2_callback_fn cb_fn, void *arg);
@@ -472,8 +465,8 @@
*
* \code
*
- * ao2_container *c = ... // the container we want to iterate on
- * ao2_iterator i;
+ * struct ao2_container *c = ... // the container we want to iterate on
+ * struct ao2_iterator i;
* struct my_obj *o;
*
* i = ao2_iterator_init(c, flags);
@@ -510,9 +503,9 @@
* A freshly-initialized iterator has bucket=0, version = 0.
*/
-struct __ao2_iterator {
+struct ao2_iterator {
/*! the container */
- ao2_container *c;
+ struct ao2_container *c;
/*! operation flags */
int flags;
#define F_AO2I_DONTLOCK 1 /*!< don't lock when iterating */
@@ -524,11 +517,10 @@
void *obj;
/*! container version when the object was created */
uint version;
-};
-typedef struct __ao2_iterator ao2_iterator;
-
-ao2_iterator ao2_iterator_init(ao2_container *c, int flags);
-
-void *ao2_iterator_next(ao2_iterator *a);
+};
+
+struct ao2_iterator ao2_iterator_init(struct ao2_container *c, int flags);
+
+void *ao2_iterator_next(struct ao2_iterator *a);
#endif /* _ASTERISK_ASTOBJ2_H */
Modified: branches/1.4/main/astobj2.c
URL: http://svn.digium.com/view/asterisk/branches/1.4/main/astobj2.c?view=diff&rev=81448&r1=81447&r2=81448
==============================================================================
--- branches/1.4/main/astobj2.c (original)
+++ branches/1.4/main/astobj2.c Tue Sep 4 13:37:44 2007
@@ -243,7 +243,7 @@
* This will be more efficient as we can do the freelist management while
* we hold the lock (that we need anyways).
*/
-struct __ao2_container {
+struct ao2_container {
ao2_hash_fn hash_fn;
ao2_callback_fn cmp_fn;
int n_buckets;
@@ -272,15 +272,15 @@
/*
* A container is just an object, after all!
*/
-ao2_container *
+struct ao2_container *
ao2_container_alloc(const uint n_buckets, ao2_hash_fn hash_fn,
ao2_callback_fn cmp_fn)
{
/* XXX maybe consistency check on arguments ? */
/* compute the container size */
- size_t container_size = sizeof(ao2_container) + n_buckets * sizeof(struct bucket);
-
- ao2_container *c = ao2_alloc(container_size, container_destruct);
+ size_t container_size = sizeof(struct ao2_container) + n_buckets * sizeof(struct bucket);
+
+ struct ao2_container *c = ao2_alloc(container_size, container_destruct);
if (!c)
return NULL;
@@ -297,7 +297,7 @@
/*!
* return the number of elements in the container
*/
-int ao2_container_count(ao2_container *c)
+int ao2_container_count(struct ao2_container *c)
{
return c->elements;
}
@@ -316,7 +316,7 @@
/*
* link an object to a container
*/
-void *__ao2_link(ao2_container *c, void *user_data, int iax2_hack)
+void *__ao2_link(struct ao2_container *c, void *user_data, int iax2_hack)
{
int i;
/* create a new list entry */
@@ -361,7 +361,7 @@
* Unlink an object from the container
* and destroy the associated * ao2_bucket_list structure.
*/
-void *ao2_unlink(ao2_container *c, void *user_data)
+void *ao2_unlink(struct ao2_container *c, void *user_data)
{
if (INTERNAL_OBJ(user_data) == NULL) /* safety check on the argument */
return NULL;
@@ -384,7 +384,7 @@
* \return Is a pointer to an object or to a list of object if OBJ_MULTIPLE is
* specified.
*/
-void *ao2_callback(ao2_container *c,
+void *ao2_callback(struct ao2_container *c,
const enum search_flags flags,
ao2_callback_fn cb_fn, void *arg)
{
@@ -488,7 +488,7 @@
/*!
* the find function just invokes the default callback with some reasonable flags.
*/
-void *ao2_find(ao2_container *c, void *arg, enum search_flags flags)
+void *ao2_find(struct ao2_container *c, void *arg, enum search_flags flags)
{
return ao2_callback(c, flags, c->cmp_fn, arg);
}
@@ -496,9 +496,9 @@
/*!
* initialize an iterator so we start from the first object
*/
-ao2_iterator ao2_iterator_init(ao2_container *c, int flags)
-{
- ao2_iterator a = {
+struct ao2_iterator ao2_iterator_init(struct ao2_container *c, int flags)
+{
+ struct ao2_iterator a = {
.c = c,
.flags = flags
};
@@ -509,7 +509,7 @@
/*
* move to the next element in the container.
*/
-void * ao2_iterator_next(ao2_iterator *a)
+void * ao2_iterator_next(struct ao2_iterator *a)
{
int lim;
struct bucket_list *p = NULL;
@@ -574,7 +574,7 @@
static void container_destruct(void *_c)
{
- ao2_container *c = _c;
+ struct ao2_container *c = _c;
ao2_callback(c, OBJ_UNLINK, cd_cb, NULL);
ast_atomic_fetchadd_int(&ao2.total_containers, -1);
@@ -607,7 +607,7 @@
*/
static int handle_astobj2_test(int fd, int argc, char *argv[])
{
- ao2_container *c1;
+ struct ao2_container *c1;
int i, lim;
char *obj;
static int prof_id = -1;
@@ -645,7 +645,7 @@
ast_cli(fd, "testing iterators, remove every second object\n");
{
- ao2_iterator ai;
+ struct ao2_iterator ai;
int x = 0;
ai = ao2_iterator_init(c1, 0);
More information about the asterisk-commits
mailing list