17dc7b794926815b45e47c0ae4c955206e34bc175mark@chromium.org// Copyright (c) 2015 Google Inc. 27dc7b794926815b45e47c0ae4c955206e34bc175mark@chromium.org// All rights reserved. 37dc7b794926815b45e47c0ae4c955206e34bc175mark@chromium.org// 47dc7b794926815b45e47c0ae4c955206e34bc175mark@chromium.org// Redistribution and use in source and binary forms, with or without 57dc7b794926815b45e47c0ae4c955206e34bc175mark@chromium.org// modification, are permitted provided that the following conditions are 67dc7b794926815b45e47c0ae4c955206e34bc175mark@chromium.org// met: 77dc7b794926815b45e47c0ae4c955206e34bc175mark@chromium.org// 87dc7b794926815b45e47c0ae4c955206e34bc175mark@chromium.org// * Redistributions of source code must retain the above copyright 97dc7b794926815b45e47c0ae4c955206e34bc175mark@chromium.org// notice, this list of conditions and the following disclaimer. 107dc7b794926815b45e47c0ae4c955206e34bc175mark@chromium.org// * Redistributions in binary form must reproduce the above 117dc7b794926815b45e47c0ae4c955206e34bc175mark@chromium.org// copyright notice, this list of conditions and the following disclaimer 127dc7b794926815b45e47c0ae4c955206e34bc175mark@chromium.org// in the documentation and/or other materials provided with the 137dc7b794926815b45e47c0ae4c955206e34bc175mark@chromium.org// distribution. 147dc7b794926815b45e47c0ae4c955206e34bc175mark@chromium.org// * Neither the name of Google Inc. nor the names of its 157dc7b794926815b45e47c0ae4c955206e34bc175mark@chromium.org// contributors may be used to endorse or promote products derived from 167dc7b794926815b45e47c0ae4c955206e34bc175mark@chromium.org// this software without specific prior written permission. 177dc7b794926815b45e47c0ae4c955206e34bc175mark@chromium.org// 187dc7b794926815b45e47c0ae4c955206e34bc175mark@chromium.org// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 197dc7b794926815b45e47c0ae4c955206e34bc175mark@chromium.org// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 207dc7b794926815b45e47c0ae4c955206e34bc175mark@chromium.org// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 217dc7b794926815b45e47c0ae4c955206e34bc175mark@chromium.org// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 227dc7b794926815b45e47c0ae4c955206e34bc175mark@chromium.org// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 237dc7b794926815b45e47c0ae4c955206e34bc175mark@chromium.org// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 247dc7b794926815b45e47c0ae4c955206e34bc175mark@chromium.org// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 257dc7b794926815b45e47c0ae4c955206e34bc175mark@chromium.org// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 267dc7b794926815b45e47c0ae4c955206e34bc175mark@chromium.org// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 277dc7b794926815b45e47c0ae4c955206e34bc175mark@chromium.org// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 287dc7b794926815b45e47c0ae4c955206e34bc175mark@chromium.org// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 297dc7b794926815b45e47c0ae4c955206e34bc175mark@chromium.org 307dc7b794926815b45e47c0ae4c955206e34bc175mark@chromium.org// ntstatus_reason_win.h: Windows NTSTATUS code to string. 317dc7b794926815b45e47c0ae4c955206e34bc175mark@chromium.org// 327dc7b794926815b45e47c0ae4c955206e34bc175mark@chromium.org// Provides a means to convert NTSTATUS codes to strings. 337dc7b794926815b45e47c0ae4c955206e34bc175mark@chromium.org// 347dc7b794926815b45e47c0ae4c955206e34bc175mark@chromium.org// Author: Ben Wagner 357dc7b794926815b45e47c0ae4c955206e34bc175mark@chromium.org 367dc7b794926815b45e47c0ae4c955206e34bc175mark@chromium.org#ifndef GOOGLE_BREAKPAD_PROCESSOR_SYMBOLIC_CONSTANTS_WIN_H_ 377dc7b794926815b45e47c0ae4c955206e34bc175mark@chromium.org#define GOOGLE_BREAKPAD_PROCESSOR_SYMBOLIC_CONSTANTS_WIN_H_ 387dc7b794926815b45e47c0ae4c955206e34bc175mark@chromium.org 397dc7b794926815b45e47c0ae4c955206e34bc175mark@chromium.org#include <string> 407dc7b794926815b45e47c0ae4c955206e34bc175mark@chromium.org 417dc7b794926815b45e47c0ae4c955206e34bc175mark@chromium.org#include "google_breakpad/common/breakpad_types.h" 427dc7b794926815b45e47c0ae4c955206e34bc175mark@chromium.org 437dc7b794926815b45e47c0ae4c955206e34bc175mark@chromium.orgnamespace google_breakpad { 447dc7b794926815b45e47c0ae4c955206e34bc175mark@chromium.org 457dc7b794926815b45e47c0ae4c955206e34bc175mark@chromium.org/* Converts a NTSTATUS code to a reason string. */ 467dc7b794926815b45e47c0ae4c955206e34bc175mark@chromium.orgstd::string NTStatusToString(uint32_t ntstatus); 477dc7b794926815b45e47c0ae4c955206e34bc175mark@chromium.org 487dc7b794926815b45e47c0ae4c955206e34bc175mark@chromium.org} // namespace google_breakpad 497dc7b794926815b45e47c0ae4c955206e34bc175mark@chromium.org 507dc7b794926815b45e47c0ae4c955206e34bc175mark@chromium.org#endif // GOOGLE_BREAKPAD_PROCESSOR_SYMBOLIC_CONSTANTS_WIN_H_ 51