X-Git-Url: https://git.octo.it/?p=rrdtool.git;a=blobdiff_plain;f=src%2Frrd_open.c;h=5f3723f30cef086d44c6bab4a3c434b1d74e6507;hp=5afc5636cab388bb63391e15ee1a0f6cd145af25;hb=9d7aa8ddae065b774fe4eb1df76a3242b9db2d53;hpb=ce30e9e1379022835687aa08b7712e27372e05ec diff --git a/src/rrd_open.c b/src/rrd_open.c index 5afc563..5f3723f 100644 --- a/src/rrd_open.c +++ b/src/rrd_open.c @@ -1,24 +1,26 @@ /***************************************************************************** - * RRDtool 1.4.1 Copyright by Tobi Oetiker, 1997-2009 + * RRDtool 1.4.3 Copyright by Tobi Oetiker, 1997-2010 ***************************************************************************** * rrd_open.c Open an RRD File ***************************************************************************** * $Id$ *****************************************************************************/ +#include "rrd_tool.h" +#include "unused.h" + #ifdef WIN32 #include #include #include #endif + #ifdef HAVE_BROKEN_MS_ASYNC #include #include #endif -#include "rrd_tool.h" -#include "unused.h" #define MEMBLK 8192 #ifdef WIN32 @@ -156,7 +158,9 @@ rrd_file_t *rrd_open( if (rdwr & RRD_READONLY) { flags |= O_RDONLY; #ifdef HAVE_MMAP +# if !defined(AIX) rrd_simple_file->mm_flags = MAP_PRIVATE; +# endif # ifdef MAP_NORESERVE rrd_simple_file->mm_flags |= MAP_NORESERVE; /* readonly, so no swap backing needed */ # endif @@ -172,6 +176,9 @@ rrd_file_t *rrd_open( if (rdwr & RRD_CREAT) { flags |= (O_CREAT | O_TRUNC); } + if (rdwr & RRD_EXCL) { + flags |= O_EXCL; + } } if (rdwr & RRD_READAHEAD) { #ifdef MAP_POPULATE @@ -683,7 +690,7 @@ ssize_t rrd_write( /* this is a leftover from the old days, it serves no purpose and is therefore turned into a no-op */ void rrd_flush( - rrd_file_t *rrd_file __attribute__((unused))) + rrd_file_t UNUSED(*rrd_file)) { } @@ -745,10 +752,10 @@ void rrd_freemem( * aligning RRAs within stripes, or other performance enhancements */ void rrd_notify_row( - rrd_file_t *rrd_file __attribute__((unused)), - int rra_idx __attribute__((unused)), - unsigned long rra_row __attribute__((unused)), - time_t rra_time __attribute__((unused))) + rrd_file_t UNUSED(*rrd_file), + int UNUSED(rra_idx), + unsigned long UNUSED(rra_row), + time_t UNUSED(rra_time)) { } @@ -760,8 +767,8 @@ void rrd_notify_row( * don't change to a new disk block at the same time */ unsigned long rrd_select_initial_row( - rrd_file_t *rrd_file __attribute__((unused)), - int rra_idx __attribute__((unused)), + rrd_file_t UNUSED(*rrd_file), + int UNUSED(rra_idx), rra_def_t *rra ) {