blob: 327ec949d8ed57bd83a4bb9d73ef9b0316fc6b7d [file] [log] [blame]
rjw6c1fd8f2022-11-30 14:33:01 +08001/*****************************************************************************
2* Copyright Statement:
3* --------------------
4* This software is protected by Copyright and the information contained
5* herein is confidential. The software may not be copied and the information
6* contained herein may not be used or disclosed except with the written
7* permission of MediaTek Inc. (C) 2012
8*
9* BY OPENING THIS FILE, BUYER HEREBY UNEQUIVOCALLY ACKNOWLEDGES AND AGREES
10* THAT THE SOFTWARE/FIRMWARE AND ITS DOCUMENTATIONS ("MEDIATEK SOFTWARE")
11* RECEIVED FROM MEDIATEK AND/OR ITS REPRESENTATIVES ARE PROVIDED TO BUYER ON
12* AN "AS-IS" BASIS ONLY. MEDIATEK EXPRESSLY DISCLAIMS ANY AND ALL WARRANTIES,
13* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED WARRANTIES OF
14* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE OR NONINFRINGEMENT.
15* NEITHER DOES MEDIATEK PROVIDE ANY WARRANTY WHATSOEVER WITH RESPECT TO THE
16* SOFTWARE OF ANY THIRD PARTY WHICH MAY BE USED BY, INCORPORATED IN, OR
17* SUPPLIED WITH THE MEDIATEK SOFTWARE, AND BUYER AGREES TO LOOK ONLY TO SUCH
18* THIRD PARTY FOR ANY WARRANTY CLAIM RELATING THERETO. MEDIATEK SHALL ALSO
19* NOT BE RESPONSIBLE FOR ANY MEDIATEK SOFTWARE RELEASES MADE TO BUYER'S
20* SPECIFICATION OR TO CONFORM TO A PARTICULAR STANDARD OR OPEN FORUM.
21*
22* BUYER'S SOLE AND EXCLUSIVE REMEDY AND MEDIATEK'S ENTIRE AND CUMULATIVE
23* LIABILITY WITH RESPECT TO THE MEDIATEK SOFTWARE RELEASED HEREUNDER WILL BE,
24* AT MEDIATEK'S OPTION, TO REVISE OR REPLACE THE MEDIATEK SOFTWARE AT ISSUE,
25* OR REFUND ANY SOFTWARE LICENSE FEES OR SERVICE CHARGE PAID BY BUYER TO
26* MEDIATEK FOR SUCH MEDIATEK SOFTWARE AT ISSUE.
27*
28* THE TRANSACTION CONTEMPLATED HEREUNDER SHALL BE CONSTRUED IN ACCORDANCE
29* WITH THE LAWS OF THE STATE OF CALIFORNIA, USA, EXCLUDING ITS CONFLICT OF
30* LAWS PRINCIPLES. ANY DISPUTES, CONTROVERSIES OR CLAIMS ARISING THEREOF AND
31* RELATED THERETO SHALL BE SETTLED BY ARBITRATION IN SAN FRANCISCO, CA, UNDER
32* THE RULES OF THE INTERNATIONAL CHAMBER OF COMMERCE (ICC).
33*
34*****************************************************************************/
35
36/*******************************************************************************
37 * Filename:
38 * ---------
39 * dns_struct.h
40 *
41 * Project:
42 * --------
43 * UMOLYE
44 *
45 * Description:
46 * ------------
47 * Defines ILM structures for Modem DNS services.
48 *
49 * Author:
50 * -------
51 *
52 *
53 * ==========================================================================
54 *
55 ****************************************************************************/
56#ifndef __DNS_STRUCT_H__
57#define __DNS_STRUCT_H__
58
59#include "kal_public_defs.h"
60#include "kal_public_api.h"
61#include "kal_general_types.h"
62#include "dns_common_defs.h"
63
64/*******************************************************************************
65 * DNS API *
66 *******************************************************************************/
67
68
69typedef struct {
70 LOCAL_PARA_HDR
71 kal_uint32 transaction_id;
72 kal_uint32 interface_id;
73 kal_char name[DNS_MAX_NAME_LENGTH];
74 kal_int16 family;
75 kal_int16 flags;
76 kal_uint32 query_timeout_value;
77 kal_uint8 dns_server_priority;
rjw04b9c952023-03-28 14:35:43 +080078 kal_uint8 bypass_cache;
rjw6c1fd8f2022-11-30 14:33:01 +080079 kal_uint32 default_ttl;
80} dns_get_host_by_name_req_struct;
81
82
83typedef struct {
84 LOCAL_PARA_HDR
85 kal_uint32 transaction_id;
86 kal_int32 status;
87 kal_char name[DNS_MAX_NAME_LENGTH];
88 kal_int16 family;
89 kal_uint16 ipv4_addr_count;
90 kal_uint8 ipv4_addr_list[DNS_MAX_ADDR_BUF_NUM][DNS_MAX_IP4_ADDR_LEN];
91 kal_uint16 ipv6_addr_count;
92 kal_uint8 ipv6_addr_list[DNS_MAX_ADDR_BUF_NUM][DNS_MAX_IP6_ADDR_LEN];
93} dns_get_host_by_name_cnf_struct;
94
95typedef struct {
96 LOCAL_PARA_HDR
97 kal_uint32 transaction_id;
98 kal_uint32 interface_id;
99 kal_char name[DNS_MAX_NAME_LENGTH];
100 kal_uint32 query_timeout_value;
101} dns_get_host_by_naptr_req_struct;
102
103typedef struct {
104 kal_uint16 order;
105 kal_uint16 preference;
106 kal_char flags[DNS_MAX_NAPTR_FLAGS_LEN];
107 kal_char service[DNS_MAX_NAPTR_SRV_LEN];
108 kal_char regexp[DNS_MAX_NAPTR_REGEXP_LEN];
109 kal_char replacement[DNS_MAX_NAME_LENGTH];
110} dns_naptr_struct;
111
112typedef struct {
113 LOCAL_PARA_HDR
114 kal_uint32 transaction_id;
115 kal_int32 status;
116 kal_uint16 num_entry;
117 dns_naptr_struct entry[DNS_MAX_NAPTR_ENTRY];
118} dns_get_host_by_naptr_cnf_struct;
119
120typedef struct {
121 LOCAL_PARA_HDR
122 kal_uint32 transaction_id;
123 kal_uint32 interface_id;
124 kal_char name[DNS_MAX_NAME_LENGTH];
125 kal_uint32 query_timeout_value;
126} dns_get_host_by_srv_req_struct;
127
128typedef struct {
129 kal_uint16 priority;
130 kal_uint16 weight;
131 kal_uint16 port;
132 kal_char target[DNS_MAX_NAME_LENGTH];
133} dns_srv_struct;
134
135typedef struct {
136 LOCAL_PARA_HDR
137 kal_uint32 transaction_id;
138 kal_int32 status;
139 kal_uint16 num_entry;
140 dns_srv_struct entry[DNS_MAX_SRV_ENTRY];
141} dns_get_host_by_srv_cnf_struct;
142
143#endif /*__DNS_STRUCT_H__ */