X-Git-Url: https://git.saurik.com/apple/xnu.git/blobdiff_plain/55e303ae13a4cf49d70f2294092726f2fffb9ef2..b0d623f7f2ae71ed96e60569f61f9a9a27016e80:/osfmk/kdp/kdp_core.h diff --git a/osfmk/kdp/kdp_core.h b/osfmk/kdp/kdp_core.h index f56992958..d2b59ebfb 100644 --- a/osfmk/kdp/kdp_core.h +++ b/osfmk/kdp/kdp_core.h @@ -1,5 +1,37 @@ +/* + * Copyright (c) 2003 Apple Computer, Inc. All rights reserved. + * + * @APPLE_OSREFERENCE_LICENSE_HEADER_START@ + * + * This file contains Original Code and/or Modifications of Original Code + * as defined in and that are subject to the Apple Public Source License + * Version 2.0 (the 'License'). You may not use this file except in + * compliance with the License. The rights granted to you under the License + * may not be used to create, or enable the creation or redistribution of, + * unlawful or unlicensed copies of an Apple operating system, or to + * circumvent, violate, or enable the circumvention or violation of, any + * terms of an Apple operating system software license agreement. + * + * Please obtain a copy of the License at + * http://www.opensource.apple.com/apsl/ and read it before using this file. + * + * The Original Code and all software distributed under the License are + * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER + * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES, + * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT. + * Please see the License for the specific language governing rights and + * limitations under the License. + * + * @APPLE_OSREFERENCE_LICENSE_HEADER_END@ + */ + +/* HISTORY + * 8 Aug. 2003 - Created (Derek Kumar) + */ + /* Various protocol definitions - * for the core transfer protocol, which is a variant of TFTP + * for the core transfer protocol, which is a variant of TFTP */ /* @@ -12,6 +44,12 @@ #define KDP_ERROR 5 /* error code */ #define KDP_SEEK 6 /* Seek to specified offset */ #define KDP_EOF 7 /* signal end of file */ + +#if defined(__LP64__) +#define KDP_FEATURE_MASK_STRING "features" +enum {KDP_FEATURE_LARGE_CRASHDUMPS = 1}; +extern uint32_t kdp_crashdump_feature_mask; +#endif struct corehdr { short th_opcode; /* packet type */ union { @@ -47,4 +85,8 @@ void abort_panic_transfer (void); struct corehdr *create_panic_header(unsigned int request, const char *corename, unsigned length, unsigned block); -int kdp_send_panic_pkt (unsigned int request, char *corename, unsigned int length, void *panic_data); +int kdp_send_crashdump_pkt(unsigned int request, char *corename, + uint64_t length, void *panic_data); + +int kdp_send_crashdump_data(unsigned int request, char *corename, + uint64_t length, caddr_t txstart);