blob: 32bdad3ea358dcc37b9f8d2568ef30fd8b833126 [file] [log] [blame]
// Copyright 2019 The Fuchsia Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#include "usb-virtual-bus-helper.h"
#include <lib/fdio/watcher.h>
#include <fbl/function.h>
#include <fbl/string.h>
namespace usb_virtual_bus_helper {
zx_status_t WaitForAnyFile(int dirfd, int event, const char* name, void* cookie) {
if (event != WATCH_EVENT_ADD_FILE) {
return ZX_OK;
}
if (*name) {
*reinterpret_cast<fbl::String*>(cookie) = fbl::String(name);
return ZX_ERR_STOP;
} else {
return ZX_OK;
}
}
zx_status_t WaitForFile(int dirfd, int event, const char* fn, void* name) {
if (event != WATCH_EVENT_ADD_FILE) {
return ZX_OK;
}
return strcmp(static_cast<const char*>(name), fn) ? ZX_OK : ZX_ERR_STOP;
}
} // namespace usb_virtual_bus_helper