X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=blobdiff_plain;f=src%2Flibudev%2Flibudev-queue-private.c;h=d5a2b503dd39c189cd7f792780c6262aa576de4b;hb=a163b64c4b08e8a4ad39a9a295acf3d1634024a3;hp=f653e6db4c8468fd48155801e87c4d006af66feb;hpb=6ada823a9a0979ea145fd70add1007c21caa45c0;p=elogind.git diff --git a/src/libudev/libudev-queue-private.c b/src/libudev/libudev-queue-private.c index f653e6db4..d5a2b503d 100644 --- a/src/libudev/libudev-queue-private.c +++ b/src/libudev/libudev-queue-private.c @@ -1,14 +1,22 @@ -/* - * libudev - interface to udev device information - * - * Copyright (C) 2008 Kay Sievers - * Copyright (C) 2009 Alan Jenkins - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 2.1 of the License, or (at your option) any later version. - */ +/*** + This file is part of systemd. + + Copyright 2008-2012 Kay Sievers + Copyright 2009 Alan Jenkins + + systemd is free software; you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published by + the Free Software Foundation; either version 2.1 of the License, or + (at your option) any later version. + + systemd is distributed in the hope that it will be useful, but + WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with systemd; If not, see . +***/ /* * DISCLAIMER - The file format mentioned here is private to udev/libudev, @@ -71,7 +79,7 @@ struct udev_queue_export *udev_queue_export_new(struct udev *udev) if (udev == NULL) return NULL; - udev_queue_export = calloc(1, sizeof(struct udev_queue_export)); + udev_queue_export = new0(struct udev_queue_export, 1); if (udev_queue_export == NULL) return NULL; udev_queue_export->udev = udev; @@ -151,10 +159,10 @@ static struct queue_devpaths *build_index(struct udev_queue_export *udev_queue_e /* allocate the table */ range = udev_queue_export->seqnum_min - udev_queue_export->seqnum_max; if (range - 1 > INT_MAX) { - err(udev_queue_export->udev, "queue file overflow\n"); + udev_err(udev_queue_export->udev, "queue file overflow\n"); return NULL; } - devpaths = calloc(1, sizeof(struct queue_devpaths) + (range + 1) * sizeof(long)); + devpaths = malloc0(sizeof(struct queue_devpaths) + (range + 1) * sizeof(long)); if (devpaths == NULL) return NULL; devpaths->devpaths_size = range + 1; @@ -188,7 +196,7 @@ static struct queue_devpaths *build_index(struct udev_queue_export *udev_queue_e return devpaths; read_error: - err(udev_queue_export->udev, "queue file corrupted\n"); + udev_err(udev_queue_export->udev, "queue file corrupted\n"); free(devpaths); return NULL; } @@ -212,7 +220,7 @@ static int rebuild_queue_file(struct udev_queue_export *udev_queue_export) } /* create new queue file */ - new_queue_file = fopen("/run/udev/queue.tmp", "w+"); + new_queue_file = fopen("/run/udev/queue.tmp", "w+e"); if (new_queue_file == NULL) goto error; seqnum = udev_queue_export->seqnum_max; @@ -256,7 +264,7 @@ static int rebuild_queue_file(struct udev_queue_export *udev_queue_export) return 0; error: - err(udev_queue_export->udev, "failed to create queue file: %m\n"); + udev_err(udev_queue_export->udev, "failed to create queue file: %m\n"); udev_queue_export_cleanup(udev_queue_export); if (udev_queue_export->queue_file != NULL) { @@ -303,7 +311,7 @@ static int write_queue_record(struct udev_queue_export *udev_queue_export, write_error: /* if we failed half way through writing a record to a file, we should not try to write any further records to it. */ - err(udev_queue_export->udev, "error writing to queue file: %m\n"); + udev_err(udev_queue_export->udev, "error writing to queue file: %m\n"); fclose(udev_queue_export->queue_file); udev_queue_export->queue_file = NULL;