libwebsockets
Lightweight C library for HTML5 websockets
Loading...
Searching...
No Matches
lws-whois.h
Go to the documentation of this file.
1/*
2 * libwebsockets - small server side websockets and web server implementation
3 *
4 * Copyright (C) 2010 - 2026 Andy Green <andy@warmcat.com>
5 *
6 * Permission is hereby granted, free of charge, to any person obtaining a copy
7 * of this software and associated documentation files (the "Software"), to
8 * deal in the Software without restriction, including without limitation the
9 * rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
10 * sell copies of the Software, and to permit persons to whom the Software is
11 * furnished to do so, subject to the following conditions:
12 *
13 * The above copyright notice and this permission notice shall be included in
14 * all copies or substantial portions of the Software.
15 *
16 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
17 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
18 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
19 * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
20 * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
21 * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
22 * SOFTWARE.
23 */
24
25#ifndef _LWS_WHOIS_H
26#define _LWS_WHOIS_H
27
32
33/* hard cap on the size of lws_whois_json_purify() canonical output */
34#define LWS_WHOIS_CANON_MAX 4096
35
44
45typedef void (*lws_whois_cb_t)(void *opaque, const struct lws_whois_results *res);
46
48 struct lws_context *context;
50 const char *domain;
52 const char *server;
57 void *opaque;
59};
60
69#if defined(LWS_WITH_SYS_WHOIS)
71lws_whois_query(const struct lws_whois_args *args);
72#else
73#define lws_whois_query(_a) (1)
74#endif
75
101#if defined(LWS_WITH_SYS_WHOIS)
103lws_whois_json_purify(char *out, size_t out_len, const char *in,
104 size_t in_len, int *problems);
105#else
106#define lws_whois_json_purify(_o, _ol, _i, _il, _p) ((void)(_o), -1)
107#endif
108
110
111#endif /* _LWS_WHOIS_H */
char dnssec[64]
Definition lws-whois.h:41
char nameservers[256]
Definition lws-whois.h:40
char ds_data[512]
Definition lws-whois.h:42
lws_usec_t updated_date
Definition lws-whois.h:39
lws_usec_t expiry_date
Definition lws-whois.h:38
lws_whois_cb_t cb
Definition lws-whois.h:55
const char * domain
Definition lws-whois.h:50
const char * server
Definition lws-whois.h:52
void * opaque
Definition lws-whois.h:57
lws_usec_t creation_date
Definition lws-whois.h:37
struct lws_context * context
Definition lws-whois.h:48
#define lws_whois_json_purify(_o, _ol, _i, _il, _p)
Definition lws-whois.h:106
#define lws_whois_query(_a)
Definition lws-whois.h:73
void(* lws_whois_cb_t)(void *opaque, const struct lws_whois_results *res)
Definition lws-whois.h:45
#define LWS_EXTERN
int64_t lws_usec_t
#define LWS_VISIBLE