mirror of
https://git.postgresql.org/git/postgresql.git
synced 2026-02-06 12:37:26 +08:00
Move code shared between libpq and backend from backend/libpq/ to common/.
When building libpq, ip.c and md5.c were symlinked or copied from src/backend/libpq into src/interfaces/libpq, but now that we have a directory specifically for routines that are shared between the server and client binaries, src/common/, move them there. Some routines in ip.c were only used in the backend. Keep those in src/backend/libpq, but rename to ifaddr.c to avoid confusion with the file that's now in common. Fix the comment in src/common/Makefile to reflect how libpq actually links those files. There are two more files that libpq symlinks directly from src/backend: encnames.c and wchar.c. I don't feel compelled to move those right now, though. Patch by Michael Paquier, with some changes by me. Discussion: <69938195-9c76-8523-0af8-eb718ea5b36e@iki.fi>
This commit is contained in:
@ -3,12 +3,11 @@
|
||||
* ip.h
|
||||
* Definitions for IPv6-aware network access.
|
||||
*
|
||||
* These definitions are used by both frontend and backend code. Be careful
|
||||
* what you include here!
|
||||
* These definitions are used by both frontend and backend code.
|
||||
*
|
||||
* Copyright (c) 2003-2016, PostgreSQL Global Development Group
|
||||
*
|
||||
* src/include/libpq/ip.h
|
||||
* src/include/common/ip.h
|
||||
*
|
||||
*-------------------------------------------------------------------------
|
||||
*/
|
||||
@ -25,10 +24,6 @@
|
||||
#define IS_AF_UNIX(fam) (0)
|
||||
#endif
|
||||
|
||||
typedef void (*PgIfAddrCallback) (struct sockaddr * addr,
|
||||
struct sockaddr * netmask,
|
||||
void *cb_data);
|
||||
|
||||
extern int pg_getaddrinfo_all(const char *hostname, const char *servname,
|
||||
const struct addrinfo * hintp,
|
||||
struct addrinfo ** result);
|
||||
@ -39,13 +34,4 @@ extern int pg_getnameinfo_all(const struct sockaddr_storage * addr, int salen,
|
||||
char *service, int servicelen,
|
||||
int flags);
|
||||
|
||||
extern int pg_range_sockaddr(const struct sockaddr_storage * addr,
|
||||
const struct sockaddr_storage * netaddr,
|
||||
const struct sockaddr_storage * netmask);
|
||||
|
||||
extern int pg_sockaddr_cidr_mask(struct sockaddr_storage * mask,
|
||||
char *numbits, int family);
|
||||
|
||||
extern int pg_foreach_ifaddr(PgIfAddrCallback callback, void *cb_data);
|
||||
|
||||
#endif /* IP_H */
|
||||
@ -9,7 +9,7 @@
|
||||
* Portions Copyright (c) 1996-2016, PostgreSQL Global Development Group
|
||||
* Portions Copyright (c) 1994, Regents of the University of California
|
||||
*
|
||||
* src/include/libpq/md5.h
|
||||
* src/include/common/md5.h
|
||||
*
|
||||
*-------------------------------------------------------------------------
|
||||
*/
|
||||
30
src/include/libpq/ifaddr.h
Normal file
30
src/include/libpq/ifaddr.h
Normal file
@ -0,0 +1,30 @@
|
||||
/*-------------------------------------------------------------------------
|
||||
*
|
||||
* ifaddr.h
|
||||
* IP netmask calculations, and enumerating network interfaces.
|
||||
*
|
||||
* Copyright (c) 2003-2016, PostgreSQL Global Development Group
|
||||
*
|
||||
* src/include/libpq/ifaddr.h
|
||||
*
|
||||
*-------------------------------------------------------------------------
|
||||
*/
|
||||
#ifndef IFADDR_H
|
||||
#define IFADDR_H
|
||||
|
||||
#include "libpq/pqcomm.h" /* pgrminclude ignore */
|
||||
|
||||
typedef void (*PgIfAddrCallback) (struct sockaddr * addr,
|
||||
struct sockaddr * netmask,
|
||||
void *cb_data);
|
||||
|
||||
extern int pg_range_sockaddr(const struct sockaddr_storage * addr,
|
||||
const struct sockaddr_storage * netaddr,
|
||||
const struct sockaddr_storage * netmask);
|
||||
|
||||
extern int pg_sockaddr_cidr_mask(struct sockaddr_storage * mask,
|
||||
char *numbits, int family);
|
||||
|
||||
extern int pg_foreach_ifaddr(PgIfAddrCallback callback, void *cb_data);
|
||||
|
||||
#endif /* IFADDR_H */
|
||||
Reference in New Issue
Block a user