diff options
author | Martin Mares <mj@ucw.cz> | 2004-05-31 20:47:19 +0200 |
---|---|---|
committer | Martin Mares <mj@ucw.cz> | 2004-05-31 20:47:19 +0200 |
commit | 2cc37815ae1f194c5a0c51e5761377caea9cc164 (patch) | |
tree | 9e623bfb0bf52219d1aac31b0fca08e4422efbef /lib/resource.c | |
parent | 0077aab4f9041e4d05d2d6916edfb0e15738cb37 (diff) | |
download | bird-2cc37815ae1f194c5a0c51e5761377caea9cc164.tar bird-2cc37815ae1f194c5a0c51e5761377caea9cc164.zip |
Added rmove() (by Andreas, tweaked by me).
Diffstat (limited to 'lib/resource.c')
-rw-r--r-- | lib/resource.c | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/lib/resource.c b/lib/resource.c index a51e3ca..2a1ad62 100644 --- a/lib/resource.c +++ b/lib/resource.c @@ -107,6 +107,26 @@ pool_lookup(resource *P, unsigned long a) } /** + * rmove - move a resource + * @res: resource + * @p: pool to move the resource to + * + * rmove() moves a resource from one pool to another. + */ + +void rmove(void *res, pool *p) +{ + resource *r = res; + + if (r) + { + if (r->n.next) + rem_node(&r->n); + add_tail(&p->inside, &r->n); + } +} + +/** * rfree - free a resource * @res: resource * |