libnl-tiny: decrease the size a bit more by removing some unnecessary functions

SVN-Revision: 25525
lede-17.01
Felix Fietkau 2011-02-13 16:46:28 +00:00
parent 5d0f9914ba
commit f89919a7ee
4 changed files with 31 additions and 41 deletions

View File

@ -730,7 +730,6 @@ void nl_cache_mark_all(struct nl_cache *cache)
* @name Dumping
* @{
*/
#ifdef disabled
/**
* Dump all elements of a cache.
* @arg cache cache to dump
@ -781,7 +780,6 @@ void nl_cache_dump_filter(struct nl_cache *cache,
dump_from_ops(obj, params);
}
}
#endif
/** @} */

View File

@ -76,6 +76,7 @@ extern void nl_cache_dump_filter(struct nl_cache *,
struct nl_object *);
/* Iterators */
#ifdef disabled
extern void nl_cache_foreach(struct nl_cache *,
void (*cb)(struct nl_object *,
void *),
@ -86,6 +87,7 @@ extern void nl_cache_foreach_filter(struct nl_cache *,
nl_object *,
void *),
void *arg);
#endif
/* --- cache management --- */

View File

@ -35,23 +35,26 @@ struct nl_object
/* General */
extern struct nl_object * nl_object_alloc(struct nl_object_ops *);
extern int nl_object_alloc_name(const char *,
struct nl_object **);
extern void nl_object_free(struct nl_object *);
extern struct nl_object * nl_object_clone(struct nl_object *obj);
extern void nl_object_get(struct nl_object *);
extern void nl_object_put(struct nl_object *);
#ifdef disabled
extern int nl_object_alloc_name(const char *,
struct nl_object **);
extern void nl_object_dump(struct nl_object *,
struct nl_dump_params *);
extern int nl_object_identical(struct nl_object *,
struct nl_object *);
extern uint32_t nl_object_diff(struct nl_object *,
struct nl_object *);
extern int nl_object_match_filter(struct nl_object *,
struct nl_object *);
extern int nl_object_identical(struct nl_object *,
struct nl_object *);
extern char * nl_object_attrs2str(struct nl_object *,
uint32_t attrs, char *buf,
size_t);
#endif
/**
* Check whether this object is used by multiple users
* @arg obj object to check
@ -63,6 +66,22 @@ static inline int nl_object_shared(struct nl_object *obj)
}
static inline void nl_object_get(struct nl_object *obj)
{
obj->ce_refcnt++;
}
static inline void nl_object_put(struct nl_object *obj)
{
if (!obj)
return;
obj->ce_refcnt--;
if (obj->ce_refcnt <= 0)
nl_object_free(obj);
}
/**
* @name Marks
@ -99,6 +118,7 @@ static inline int nl_object_is_marked(struct nl_object *obj)
/** @} */
#ifdef disabled
/**
* Return list of attributes present in an object
* @arg obj an object
@ -111,7 +131,7 @@ static inline char *nl_object_attr_list(struct nl_object *obj, char *buf, size_t
{
return nl_object_attrs2str(obj, obj->ce_mask, buf, len);
}
#endif
/**
* @name Attributes

View File

@ -156,37 +156,6 @@ void nl_object_free(struct nl_object *obj)
* @{
*/
/**
* Acquire a reference on a object
* @arg obj object to acquire reference from
*/
void nl_object_get(struct nl_object *obj)
{
obj->ce_refcnt++;
NL_DBG(4, "New reference to object %p, total %d\n",
obj, obj->ce_refcnt);
}
/**
* Release a reference from an object
* @arg obj object to release reference from
*/
void nl_object_put(struct nl_object *obj)
{
if (!obj)
return;
obj->ce_refcnt--;
NL_DBG(4, "Returned object reference %p, %d remaining\n",
obj, obj->ce_refcnt);
if (obj->ce_refcnt < 0)
BUG();
if (obj->ce_refcnt <= 0)
nl_object_free(obj);
}
/** @} */
/**
@ -235,7 +204,6 @@ int nl_object_identical(struct nl_object *a, struct nl_object *b)
return !(ops->oo_compare(a, b, req_attrs, 0));
}
#endif
/**
* Compute bitmask representing difference in attribute values
@ -304,6 +272,8 @@ char *nl_object_attrs2str(struct nl_object *obj, uint32_t attrs,
}
}
#endif
/** @} */
/** @} */