git://git.onelab.eu
/
sliver-openvswitch.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
fix showmacs target
[sliver-openvswitch.git]
/
lib
/
ofpbuf.c
diff --git
a/lib/ofpbuf.c
b/lib/ofpbuf.c
index
a7d4c73
..
c960a7e
100644
(file)
--- a/
lib/ofpbuf.c
+++ b/
lib/ofpbuf.c
@@
-1,5
+1,5
@@
/*
/*
- * Copyright (c) 2008, 2009, 2010, 2011, 2012 Nicira, Inc.
+ * Copyright (c) 2008, 2009, 2010, 2011, 2012
, 2013
Nicira, Inc.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@
-16,7
+16,6
@@
#include <config.h>
#include "ofpbuf.h"
#include <config.h>
#include "ofpbuf.h"
-#include <assert.h>
#include <stdlib.h>
#include <string.h>
#include "dynamic-string.h"
#include <stdlib.h>
#include <string.h>
#include "dynamic-string.h"
@@
-30,7
+29,7
@@
ofpbuf_use__(struct ofpbuf *b, void *base, size_t allocated,
b->allocated = allocated;
b->source = source;
b->size = 0;
b->allocated = allocated;
b->source = source;
b->size = 0;
- b->l2 = b->l3 = b->l4 = b->l7 = NULL;
+ b->l2 = b->l
2_5 = b->l
3 = b->l4 = b->l7 = NULL;
list_poison(&b->list_node);
b->private_p = NULL;
}
list_poison(&b->list_node);
b->private_p = NULL;
}
@@
-53,7
+52,7
@@
ofpbuf_use(struct ofpbuf *b, void *base, size_t allocated)
*
* 'base' should be appropriately aligned. Using an array of uint32_t or
* uint64_t for the buffer is a reasonable way to ensure appropriate alignment
*
* 'base' should be appropriately aligned. Using an array of uint32_t or
* uint64_t for the buffer is a reasonable way to ensure appropriate alignment
- * for 32- or 64-bit data.
OFPBUF_STACK_BUFFER is a convenient way to do so.
+ * for 32- or 64-bit data.
*
* An ofpbuf operation that requires reallocating data will assert-fail if this
* function was used to initialize it. Thus, one need not call ofpbuf_uninit()
*
* An ofpbuf operation that requires reallocating data will assert-fail if this
* function was used to initialize it. Thus, one need not call ofpbuf_uninit()
@@
-73,7
+72,7
@@
ofpbuf_use_stack(struct ofpbuf *b, void *base, size_t allocated)
*
* 'base' should be appropriately aligned. Using an array of uint32_t or
* uint64_t for the buffer is a reasonable way to ensure appropriate alignment
*
* 'base' should be appropriately aligned. Using an array of uint32_t or
* uint64_t for the buffer is a reasonable way to ensure appropriate alignment
- * for 32- or 64-bit data.
OFPBUF_STACK_BUFFER is a convenient way to do so.
+ * for 32- or 64-bit data.
*
* An ofpbuf operation that requires reallocating data will copy the provided
* buffer into a malloc()'d buffer. Thus, it is wise to call ofpbuf_uninit()
*
* An ofpbuf operation that requires reallocating data will copy the provided
* buffer into a malloc()'d buffer. Thus, it is wise to call ofpbuf_uninit()
@@
-177,6
+176,9
@@
ofpbuf_clone_with_headroom(const struct ofpbuf *buffer, size_t headroom)
if (buffer->l2) {
new_buffer->l2 = (char *) buffer->l2 + data_delta;
}
if (buffer->l2) {
new_buffer->l2 = (char *) buffer->l2 + data_delta;
}
+ if (buffer->l2_5) {
+ new_buffer->l2_5 = (char *) buffer->l2_5 + data_delta;
+ }
if (buffer->l3) {
new_buffer->l3 = (char *) buffer->l3 + data_delta;
}
if (buffer->l3) {
new_buffer->l3 = (char *) buffer->l3 + data_delta;
}
@@
-296,6
+298,9
@@
ofpbuf_resize__(struct ofpbuf *b, size_t new_headroom, size_t new_tailroom)
if (b->l2) {
b->l2 = (char *) b->l2 + data_delta;
}
if (b->l2) {
b->l2 = (char *) b->l2 + data_delta;
}
+ if (b->l2_5) {
+ b->l2_5 = (char *) b->l2_5 + data_delta;
+ }
if (b->l3) {
b->l3 = (char *) b->l3 + data_delta;
}
if (b->l3) {
b->l3 = (char *) b->l3 + data_delta;
}
@@
-421,7
+426,7
@@
ofpbuf_put_hex(struct ofpbuf *b, const char *s, size_t *n)
void
ofpbuf_reserve(struct ofpbuf *b, size_t size)
{
void
ofpbuf_reserve(struct ofpbuf *b, size_t size)
{
- assert(!b->size);
+
ovs_
assert(!b->size);
ofpbuf_prealloc_tailroom(b, size);
b->data = (char*)b->data + size;
}
ofpbuf_prealloc_tailroom(b, size);
b->data = (char*)b->data + size;
}
@@
-473,7
+478,7
@@
ofpbuf_at(const struct ofpbuf *b, size_t offset, size_t size)
void *
ofpbuf_at_assert(const struct ofpbuf *b, size_t offset, size_t size)
{
void *
ofpbuf_at_assert(const struct ofpbuf *b, size_t offset, size_t size)
{
- assert(offset + size <= b->size);
+
ovs_
assert(offset + size <= b->size);
return ((char *) b->data) + offset;
}
return ((char *) b->data) + offset;
}
@@
-506,7
+511,7
@@
void *
ofpbuf_pull(struct ofpbuf *b, size_t size)
{
void *data = b->data;
ofpbuf_pull(struct ofpbuf *b, size_t size)
{
void *data = b->data;
- assert(b->size >= size);
+
ovs_
assert(b->size >= size);
b->data = (char*)b->data + size;
b->size -= size;
return data;
b->data = (char*)b->data + size;
b->size -= size;
return data;