root/tools/usb/usbip/libsrc/sysfs_utils.c
// SPDX-License-Identifier: GPL-2.0
#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>
#include <errno.h>

#include "sysfs_utils.h"
#include "usbip_common.h"

int write_sysfs_attribute(const char *attr_path, const char *new_value,
                          size_t len)
{
        int fd;
        int length;

        fd = open(attr_path, O_WRONLY);
        if (fd < 0) {
                dbg("error opening attribute %s", attr_path);
                return -1;
        }

        length = write(fd, new_value, len);
        if (length < 0) {
                dbg("error writing to attribute %s", attr_path);
                close(fd);
                return -1;
        }

        close(fd);

        return 0;
}