]>
Commit | Line | Data |
---|---|---|
e0edde6f | 1 | /* Copyright (c) 2009, 2010, 2011 Nicira, Inc. |
f85f8ebb BP |
2 | * |
3 | * Licensed under the Apache License, Version 2.0 (the "License"); | |
4 | * you may not use this file except in compliance with the License. | |
5 | * You may obtain a copy of the License at: | |
6 | * | |
7 | * http://www.apache.org/licenses/LICENSE-2.0 | |
8 | * | |
9 | * Unless required by applicable law or agreed to in writing, software | |
10 | * distributed under the License is distributed on an "AS IS" BASIS, | |
11 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. | |
12 | * See the License for the specific language governing permissions and | |
13 | * limitations under the License. | |
14 | */ | |
15 | ||
41709ccc BP |
16 | #ifndef OVSDB_LOG_H |
17 | #define OVSDB_LOG_H 1 | |
f85f8ebb BP |
18 | |
19 | #include <sys/types.h> | |
20 | #include "compiler.h" | |
21 | ||
22 | struct json; | |
41709ccc | 23 | struct ovsdb_log; |
f85f8ebb | 24 | |
7446f148 BP |
25 | /* Access mode for opening an OVSDB log. */ |
26 | enum ovsdb_log_open_mode { | |
27 | OVSDB_LOG_READ_ONLY, /* Open existing file, read-only. */ | |
28 | OVSDB_LOG_READ_WRITE, /* Open existing file, read/write. */ | |
29 | OVSDB_LOG_CREATE /* Create new file, read/write. */ | |
30 | }; | |
31 | ||
32 | struct ovsdb_error *ovsdb_log_open(const char *name, enum ovsdb_log_open_mode, | |
33 | int locking, struct ovsdb_log **) | |
cab50449 | 34 | OVS_WARN_UNUSED_RESULT; |
41709ccc | 35 | void ovsdb_log_close(struct ovsdb_log *); |
f85f8ebb | 36 | |
41709ccc | 37 | struct ovsdb_error *ovsdb_log_read(struct ovsdb_log *, struct json **) |
cab50449 | 38 | OVS_WARN_UNUSED_RESULT; |
43675e26 BP |
39 | void ovsdb_log_unread(struct ovsdb_log *); |
40 | ||
41709ccc | 41 | struct ovsdb_error *ovsdb_log_write(struct ovsdb_log *, struct json *) |
cab50449 | 42 | OVS_WARN_UNUSED_RESULT; |
41709ccc | 43 | struct ovsdb_error *ovsdb_log_commit(struct ovsdb_log *) |
cab50449 | 44 | OVS_WARN_UNUSED_RESULT; |
f85f8ebb | 45 | |
ada496b5 BP |
46 | off_t ovsdb_log_get_offset(const struct ovsdb_log *); |
47 | ||
41709ccc | 48 | #endif /* ovsdb/log.h */ |