Quellcodebibliothek Statistik Leitseite products/Sources/formale Sprachen/C/Postgres/src/include/backup/   (Postgres Database Version 18.4©)  Datei vom 11.4.2026 mit Größe 2 kB image not shown  

SSL basebackup_target.h

  Sprache: C
 

/*-------------------------------------------------------------------------
 *
 * basebackup_target.h
 *   Extensibility framework for adding base backup targets.
 *
 * Portions Copyright (c) 2010-2025, PostgreSQL Global Development Group
 *
 * src/include/backup/basebackup_target.h
 *
 *-------------------------------------------------------------------------
 */

#ifndef BASEBACKUP_TARGET_H
#define BASEBACKUP_TARGET_H

#include "backup/basebackup_sink.h"

struct BaseBackupTargetHandle;
typedef struct BaseBackupTargetHandle BaseBackupTargetHandle;

/*
 * Extensions can call this function to create new backup targets.
 *
 * 'name' is the name of the new target.
 *
 * 'check_detail' is a function that accepts a target name and target detail
 * and either throws an error (if the target detail is not valid or some other
 * problem, such as a permissions issue, is detected) or returns a pointer to
 * the data that will be needed to create a bbsink implementing that target.
 * The second argument will be NULL if the TARGET_DETAIL option to the
 * BASE_BACKUP command was not specified.
 *
 * 'get_sink' is a function that creates the bbsink. The first argument
 * is the successor sink; the sink created by this function should always
 * forward to this sink. The second argument is the pointer returned by a
 * previous call to the 'check_detail' function.
 *
 * In practice, a user will type something like "pg_basebackup --target foo:bar
 * -Xfetch". That will cause the server to look for a backup target named
 * "foo". If one is found, the check_detail callback will be invoked for the
 * string "bar", and whatever that callback returns will be passed as the
 * second argument to the get_sink callback.
 */

extern void BaseBackupAddTarget(char *name,
        void *(*check_detail) (char *, char *),
        bbsink *(*get_sink) (bbsink *, void *));

/*
 * These functions are used by the core code to access base backup targets
 * added via BaseBackupAddTarget(). The core code will pass the TARGET and
 * TARGET_DETAIL strings obtained from the user to BaseBackupGetTargetHandle,
 * which will either throw an error (if the TARGET is not recognized or the
 * check_detail hook for that TARGET doesn't like the TARGET_DETAIL) or
 * return a BaseBackupTargetHandle object that can later be passed to
 * BaseBackupGetSink.
 *
 * BaseBackupGetSink constructs a bbsink implementing the desired target
 * using the BaseBackupTargetHandle and the successor bbsink. It does this
 * by arranging to call the get_sink() callback provided by the extension
 * that implements the base backup target.
 */

extern BaseBackupTargetHandle *BaseBackupGetTargetHandle(char *target,
               char *target_detail);
extern bbsink *BaseBackupGetSink(BaseBackupTargetHandle *handle,
         bbsink *next_sink);

#endif

Messung V0.5 in Prozent
C=96 H=100 G=97

¤ Dauer der Verarbeitung: 0.12 Sekunden  (vorverarbeitet am  2026-08-06) ¤

*© Formatika GbR, Deutschland






vorgegebene Sprache:

Suchen

PVS Prover

Isabelle Prover

NIST Cobol Testsuite

Cephes Mathematical Library

Vienna Development Method

Haftungshinweis

Die Informationen auf dieser Webseite wurden nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit, noch Qualität der bereit gestellten Informationen zugesichert.

Bemerkung:

Spracherkennung für: