Quellcodebibliothek Statistik Leitseite products/Sources/formale Sprachen/C/Postfix/   (Postfix Mailserver Version 3.11©)  Datei vom 10.1.2019 mit Größe 7 kB image not shown  

Quelle  quote_flags.c   Sprache: unbekannt

 
/*++
/* NAME
/* quote_flags 3
/* SUMMARY
/* quote rfc 821/822 local part
/* SYNOPSIS
/* #include <quote_flags.h>
/*
/* int quote_flags_from_string(const char *string)
/*
/* const char *quote_flags_to_string(VSTRING *res_buf, int mask)
/* DESCRIPTION
/* quote_flags_from_string() converts symbolic flag names into
/* the corresponding internal bitmask. This logs a warning and
/* returns zero if an unknown symbolic name is specified.
/*
/* quote_flags_to_string() converts from internal bitmask to
/* the corresponding symbolic names. This logs a warning and
/* returns a null pointer if an unknown bitmask is specified.
/*
/* Arguments:
/* .IP string
/* Symbolic representation of a quote_flags bitmask, for
/* example: \fB8bitclean | bare_localpart\fR. The conversion
/* is case-insensitive.
/* .IP res_buf
/* Storage for the quote_flags_to_string() result, which has
/* the same form as the string argument. If a null pointer is
/* specified, quote_flags_to_string() uses storage that is
/* overwritten with each call.
/* .IP mask
/* Binary representation of quote_flags.
/* DIAGNOSTICS
/* Fatal error: out of memory; or unknown bitmask name or value.
/* LICENSE
/* .ad
/* .fi
/* The Secure Mailer license must be distributed with this software.
/* AUTHOR(S)
/* Wietse Venema
/* Google, Inc.
/* 111 8th Avenue
/* New York, NY 10011, USA
/*--*/


 /*
  * System library.
  */

#include <sys_defs.h>

 /*
  * Utility library.
  */

#include <name_mask.h>

 /*
  * Global library.
  */

#include <quote_flags.h>

static const NAME_MASK quote_flags_table[] = {
    "8bitclean", QUOTE_FLAG_8BITCLEAN,
    "expose_at", QUOTE_FLAG_EXPOSE_AT,
    "append", QUOTE_FLAG_APPEND,
    "bare_localpart", QUOTE_FLAG_BARE_LOCALPART,
    0,
};

/* quote_flags_from_string - symbolic quote flags to internal form */

int     quote_flags_from_string(const char *quote_flags_string)
{
    return (name_mask_delim_opt("quote_flags_from_string", quote_flags_table,
    quote_flags_string, "|",
    NAME_MASK_WARN | NAME_MASK_ANY_CASE));
}

/* quote_flags_to_string - internal form to symbolic quote flags */

const char *quote_flags_to_string(VSTRING *res_buf, int quote_flags_mask)
{
    static VSTRING *my_buf;

    if (res_buf == 0 && (res_buf = my_buf) == 0)
 res_buf = my_buf = vstring_alloc(20);
    return (str_name_mask_opt(res_buf, "quote_flags_to_string",
         quote_flags_table, quote_flags_mask,
         NAME_MASK_WARN | NAME_MASK_PIPE));
}

Messung V0.5 in Prozent
C=75 H=95 G=85

[zur Elbe Produktseite wechseln0.11QuellennavigatorsAnalyse erneut starten2026-08-08]