Result:
found more than 1151 distributions - search limited to the first 2001 files matching your query ( run in 2.519 )


Net-LDAP-Gateway

 view release on metacpan or  search on metacpan

Gateway.xs  view on Meta::CPAN

    RETVAL

SV *
ldap_peek_message(buffer)
    SV *buffer
PPCODE:
{
    int n = 0;
    STRLEN bytes, request_len, src_len;
    const char *start, *src, *max;
    sv_utf8_downgrade(buffer, 0);

Gateway.xs  view on Meta::CPAN

    XSRETURN(n);
}

void
ldap_shift_message(SV *buffer)
PPCODE:
{
    STRLEN src_len, message_len;
    const char *start = SvPV(buffer, src_len);
    const char *src = start;
    const char *max = start + src_len;

Gateway.xs  view on Meta::CPAN

ldap_pack_message_ref(msgid, op, data, controls = 0)
    U32 msgid
    U32 op
    HV *data
    SV *controls
PPCODE:
{
    SV *dest = new_message_sv();
    start_ldap_message(dest, msgid);
    ldap_pack_message_ref(dest, op, data, controls);
    end_ldap_message(dest);

Gateway.xs  view on Meta::CPAN

    ldap_pack_compare_response_ref = LDAP_OP_COMPARE_RESPONSE
    ldap_pack_abandon_request_ref = LDAP_OP_ABANDON_REQUEST
    ldap_pack_extended_request_ref = LDAP_OP_EXTENDED_REQUEST
    ldap_pack_extended_response_ref = LDAP_OP_EXTENDED_RESPONSE
    ldap_pack_intermediate_response_ref = LDAP_OP_INTERMEDIATE_RESPONSE
PPCODE:
{
    SV *dest = new_message_sv();
    start_ldap_message(dest, msgid);
    ldap_pack_message_ref(dest, ix, data, controls);
    end_ldap_message(dest);

Gateway.xs  view on Meta::CPAN

    U32 version
    SV *dn
    U32 method
    SV *arg1
    SV *arg2
PPCODE:
{
    SV *dest = new_message_sv();
    if (version > 3)
	croak("bad LDAP protocol version %u", (unsigned int)version);
    start_ldap_message(dest, msgid);

Gateway.xs  view on Meta::CPAN

}

void
ldap_pack_unbind_request(msgid)
    U32 msgid
PPCODE:
{
    SV *dest = new_message_sv();
    start_ldap_message(dest, msgid);
    pack_unbind_request_args(dest);
    end_ldap_message(dest);

Gateway.xs  view on Meta::CPAN

    U32 size_limit
    U32 time_limit
    U32 types_only
    AV_opt *filter
    SV *attributes
PPCODE:
{
    SV *dest = new_message_sv();
    start_ldap_message(dest, msgid);
    pack_search_request_args(dest,
				  base_dn, scope, deref,

Gateway.xs  view on Meta::CPAN


void
ldap_pack_search_entry_response(msgid, dn, ...)
    U32 msgid
    SV *dn
PPCODE:
{
    SV *dest = new_message_sv();
    if (items & 1)
	croak("Usage: Net::LDAP::Gateway::search_entry_response("
	      "$msgid, $dn, attr => \\@values, attr => \\@values, ...)");

Gateway.xs  view on Meta::CPAN

}

void
ldap_pack_search_reference_response(msgid, ...)
    U32 msgid
PPCODE:
{
    SV *dest = new_message_sv();
    start_ldap_message(dest, msgid);
    pack_search_reference_response_args(dest, &(ST(1)), items - 1);
    end_ldap_message(dest);

Gateway.xs  view on Meta::CPAN


void
ldap_pack_modify_request(msgid, dn, ...)
    U32 msgid
    SV *dn
PPCODE:
{
    SV *dest = new_message_sv();
    start_ldap_message(dest, msgid);
    pack_modify_request_args(dest, dn, &(ST(2)), items - 2);
    end_ldap_message(dest);

Gateway.xs  view on Meta::CPAN


void
ldap_pack_add_request(msgid, dn, ...)
    U32 msgid
    SV *dn
PPCODE:
{
    SV *dest = new_message_sv();
    if (items & 1)
	croak("Usage: Net::LDAP::Gateway::add_request("
	      "$msgid, $dn, attr => \\@values, attr => \\@values, ...)");

Gateway.xs  view on Meta::CPAN


void 
ldap_pack_delete_request(msgid, dn)
    U32 msgid
    SV *dn
PPCODE:
{
    SV *dest = new_message_sv();
    start_ldap_message(dest, msgid);
    pack_delete_request_args(dest, dn);
    end_ldap_message(dest);

Gateway.xs  view on Meta::CPAN

    U32 msgid
    SV *dn
    SV *new_rdn
    I32 delete_old_rdn
    SV *new_superior
PPCODE:
{
    SV *dest = new_message_sv();
    start_ldap_message(dest, msgid);
    pack_modify_dn_request_args(dest, dn, new_rdn, delete_old_rdn, new_superior);
    end_ldap_message(dest);

Gateway.xs  view on Meta::CPAN

ldap_pack_compare_request(msgid, dn, attribute, value)
    U32 msgid
    SV *dn
    SV *attribute
    SV *value
PPCODE:
{
    SV *dest = new_message_sv();
    start_ldap_message(dest, msgid);
    pack_compare_request_args(dest, dn, attribute, value);
    end_ldap_message(dest);

Gateway.xs  view on Meta::CPAN


void
ldap_pack_abandon_request(msgid, target_msgid)
    U32 msgid
    U32 target_msgid
PPCODE:
{
    SV *dest = new_message_sv();
    start_ldap_message(dest, msgid);
    pack_abandon_request_args(dest, target_msgid);
    end_ldap_message(dest);

Gateway.xs  view on Meta::CPAN

void
_ldap_pack_extended_request(msgid, oid, value = 0)
    U32 msgid
    SV *oid
    SV *value
PPCODE:
{
    SV *dest = new_message_sv();
    start_ldap_message(dest, msgid);
    pack_extended_request_args(dest, oid, value);
    end_ldap_message(dest);

Gateway.xs  view on Meta::CPAN

    SV *matched_dn
    SV *message
    SV *referrals
    SV *name
    SV *value
PPCODE:
{
    SV *dest = new_message_sv();
    start_ldap_message(dest, msgid);
    pack_extended_response_args(dest, result, matched_dn, message,
				     referrals, name, value);

Gateway.xs  view on Meta::CPAN

void
ldap_pack_intermediate_response(msgid, oid = 0, value = 0)
    U32 msgid
    SV *oid
    SV *value
PPCODE:
{
    SV *dest = new_message_sv();
    start_ldap_message(dest, msgid);
    pack_intermediate_response_args(dest, oid, value);
    end_ldap_message(dest);

Gateway.xs  view on Meta::CPAN

    ldap_pack_modify_response = LDAP_OP_MODIFY_RESPONSE
    ldap_pack_add_response = LDAP_OP_ADD_RESPONSE
    ldap_pack_delete_response = LDAP_OP_DELETE_RESPONSE
    ldap_pack_modify_dn_response = LDAP_OP_MODIFY_DN_RESPONSE
    ldap_pack_compare_response = LDAP_OP_COMPARE_RESPONSE
PPCODE:
{
    SV *dest = new_message_sv();
    start_ldap_message(dest, msgid);
    pack_result_response_args(dest, ix, result, matched_dn, message, referrals);
    end_ldap_message(dest);

 view all matches for this distribution


Net-LDAPapi

 view release on metacpan or  search on metacpan

LDAPapi.xs  view on Meta::CPAN


void
ldap_explode_dn(dn,notypes)
    char *          dn
    int             notypes
    PPCODE:
    {
       char ** LDAPGETVAL;
       int i;

       if ((LDAPGETVAL = ldap_explode_dn(dn,notypes)) != NULL)

LDAPapi.xs  view on Meta::CPAN


void
ldap_explode_rdn(dn,notypes)
    char *          dn
    int     notypes
    PPCODE:
    {
       char ** LDAPGETVAL;
       int i;

       if ((LDAPGETVAL = ldap_explode_rdn(dn,notypes)) != NULL)

LDAPapi.xs  view on Meta::CPAN

void
ldap_get_values_len(ld,entry,target)
    LDAP *          ld
    LDAPMessage *   entry
    char *          target
    PPCODE:
    {
       struct berval ** LDAPGETVAL;
       int i;

       if ((LDAPGETVAL = ldap_get_values_len(ld,entry,target)) != NULL)

 view all matches for this distribution


Net-LDAPxs

 view release on metacpan or  search on metacpan

LDAPxs.xs  view on Meta::CPAN

		RETVAL

void
_unbind(ld)
		LDAP* ld
	PPCODE:
		ldap_unbind_ext(ld, NULL, NULL);

void
_search(ld, opt)
		LDAP *ld

LDAPxs.xs  view on Meta::CPAN

		int msgid;

		HV* search_result;
		HV* stash;
		SV* blessed_result;
	PPCODE:
		if ((svp = hv_fetch(opt, "base", 4, FALSE)) && SvPOK(*svp)) {
			base = (char *)SvPV_nolen(*svp);
		}else{
			croak("_search(base): not a string");
		}

 view all matches for this distribution


Net-LDNS

 view release on metacpan or  search on metacpan

src/LDNS.xs  view on Meta::CPAN


PROTOTYPES: ENABLE

SV *
to_idn(...)
    PPCODE:
    {
#ifdef WE_CAN_HAZ_IDN
        int i;
        for( i = 0; i<items; i++ )
        {

src/LDNS.xs  view on Meta::CPAN

        RETVAL

SV *
load_zonefile(filename)
    char *filename;
    PPCODE:
    {
		ldns_zone *zone;
		ldns_status s;
		ldns_rr *soa;
		ldns_rr_list *rrs;

src/LDNS.xs  view on Meta::CPAN


SV *
name2addr(obj,name)
    Net::LDNS obj;
    const char *name;
    PPCODE:
    {
        ldns_rr_list *addrs;
        ldns_rdf *dname;
        size_t n, i;
        I32 context;

src/LDNS.xs  view on Meta::CPAN


SV *
addr2name(obj,addr_in)
    Net::LDNS obj;
    const char *addr_in;
    PPCODE:
    {
        ldns_rr_list *names;
        ldns_rdf *addr_rdf;
        size_t n, i;
        I32 context;

src/LDNS.xs  view on Meta::CPAN

        RETVAL

SV *
packet_answer(obj)
    Net::LDNS::Packet obj;
    PPCODE:
    {
        size_t i,n;
        ldns_rr_list *rrs;
        I32 context = GIMME_V;

src/LDNS.xs  view on Meta::CPAN

    }

SV *
packet_authority(obj)
    Net::LDNS::Packet obj;
    PPCODE:
    {
        size_t i,n;
        ldns_rr_list *rrs;
        I32 context = GIMME_V;

src/LDNS.xs  view on Meta::CPAN

    }

SV *
packet_additional(obj)
    Net::LDNS::Packet obj;
    PPCODE:
    {
        size_t i,n;
        ldns_rr_list *rrs;
        I32 context = GIMME_V;

src/LDNS.xs  view on Meta::CPAN

    }

SV *
packet_question(obj)
    Net::LDNS::Packet obj;
    PPCODE:
    {
        size_t i,n;
        ldns_rr_list *rrs;
        I32 context = GIMME_V;

src/LDNS.xs  view on Meta::CPAN


SV *
rr_new_from_string(class,str)
    char *class;
    char *str;
    PPCODE:
        ldns_status s;
        ldns_rr *rr;
        char rrclass[40];
        char *rrtype;
        SV* rr_sv;

src/LDNS.xs  view on Meta::CPAN

        RETVAL

SV *
rr_nsec3_salt(obj)
    Net::LDNS::RR::NSEC3 obj;
    PPCODE:
        if(ldns_nsec3_salt_length(obj) > 0)
        {
            ldns_rdf *buf = ldns_nsec3_salt(obj);
            ST(0) = sv_2mortal(newSVpvn((char *)ldns_rdf_data(buf), ldns_rdf_size(buf)));
            ldns_rdf_deep_free(buf);

src/LDNS.xs  view on Meta::CPAN

        RETVAL

SV *
rr_nsec3param_salt(obj)
    Net::LDNS::RR::NSEC3PARAM obj;
    PPCODE:
        ldns_rdf *rdf = ldns_rr_rdf(obj,3);
        if(ldns_rdf_size(rdf) > 0)
        {
            mPUSHs(newSVpvn((char *)ldns_rdf_data(rdf), ldns_rdf_size(rdf)));
        }

 view all matches for this distribution


Net-LibAsyncNS

 view release on metacpan or  search on metacpan

lib/Net/LibAsyncNS.xs  view on Meta::CPAN

    int err;
    struct addrinfo *res;
    struct addrinfo *res_iter;
    int n_res;

  PPCODE:
    err = asyncns_getaddrinfo_done(self, q->query, &res);

    XPUSHs(gai_err_to_SV(err));

    if(err) {

lib/Net/LibAsyncNS.xs  view on Meta::CPAN

  PREINIT:
    int err;
    char host[1024];
    char serv[256];

  PPCODE:
    err = asyncns_getnameinfo_done(self, q->query, host, sizeof(host), serv, sizeof(serv));

    XPUSHs(gai_err_to_SV(err));

    if(err) {

lib/Net/LibAsyncNS.xs  view on Meta::CPAN


  INIT:
    int len;
    unsigned char *answer;

  PPCODE:
    len = asyncns_res_done(self, q->query, &answer);
    if(len < 0) {
      if(-len != EAGAIN)
        SvREFCNT_dec(q->sv);

 view all matches for this distribution


Net-LibNFS

 view release on metacpan or  search on metacpan

LibNFS.xs  view on Meta::CPAN

# ----------------------------------------------------------------------
# Static functions

void
find_local_servers ()
    PPCODE:
        struct nfs_server_list *servers = nfs_find_local_servers();

        if (!servers) {
            XSRETURN_EMPTY;
        }

LibNFS.xs  view on Meta::CPAN


        free_nfs_srvr_list(srvlist);

void
mount_getexports (SV* server_sv, SV* timeout_sv=&PL_sv_undef)
    PPCODE:
        const char* server = exs_SvPVbyte_nolen(server_sv);

        struct exportnode* nodes;

        if (SvOK(timeout_sv)) {

LibNFS.xs  view on Meta::CPAN


        SvREFCNT_dec(nfs_dh->perl_nfs);

void
read (SV* self_sv)
    PPCODE:
        _FORBID_VOID_CONTEXT;

        nlnfs_dh_s* nfs_dh = exs_structref_ptr(self_sv);

        SV* nfs_sv = nfs_dh->perl_nfs;

LibNFS.xs  view on Meta::CPAN


        SvREFCNT_dec(nfs_fh->perl_nfs);

void
close (SV* self_sv)
    PPCODE:
        nlnfs_fh_s* nfs_fh = exs_structref_ptr(self_sv);

        SV* nfs_sv = nfs_fh->perl_nfs;

        nlnfs_s* perl_nfs = exs_structref_ptr(nfs_sv);

 view all matches for this distribution


Net-LibNIDS

 view release on metacpan or  search on metacpan

const-xs.inc  view on Meta::CPAN

	/* NV		nv;	Uncomment this if you need to return NVs */
	/* const char	*pv;	Uncomment this if you need to return PVs */
    INPUT:
	SV *		sv;
        const char *	s = SvPV(sv, len);
    PPCODE:
        /* Change this to constant(aTHX_ s, len, &iv, &nv);
           if you need to return both NVs and IVs */
	type = constant(aTHX_ s, len, &iv);
      /* Return 1 or 2 items. First is error message, or undef if no error.
           Second, if present, is found value */

 view all matches for this distribution


Net-MDNS-Client

 view release on metacpan or  search on metacpan

Client.xs  view on Meta::CPAN

	INIT:
		mdnsda r;
		struct in_addr in;
		char * t;

	PPCODE:
		r = mdnsc_get_a_result(query_type, query_string);
		if ( GIMME_V == G_VOID )
			{ XSRETURN_UNDEF;}
		if (r)
			{

 view all matches for this distribution


Net-MDNS-Server

 view release on metacpan or  search on metacpan

const-xs.inc  view on Meta::CPAN

	/* NV		nv;	Uncomment this if you need to return NVs */
	/* const char	*pv;	Uncomment this if you need to return PVs */
    INPUT:
	SV *		sv;
        const char *	s = SvPV(sv, len);
    PPCODE:
	type = constant(aTHX_ s, len);
      /* Return 1 or 2 items. First is error message, or undef if no error.
           Second, if present, is found value */
        switch (type) {
        case PERL_constant_NOTFOUND:

 view all matches for this distribution


Net-MRT

 view release on metacpan or  search on metacpan

MRT.xs  view on Meta::CPAN


void
mrt_read_next(f)
PerlIO * f;
    PROTOTYPE: *
    PPCODE:
        # Definitions
        Off_t msgpos = PerlIO_tell(f); // Store message position & check for proper handle
        int sz;
        MRT_MESSAGE mh;
        char sbuff[SBUFF] = {};

MRT.xs  view on Meta::CPAN


void
mrt_get_next(f)
PerlIO * f;
    PROTOTYPE: *
    PPCODE:
        # Definitions
        Off_t msgpos = PerlIO_tell(f); // Store message position & check for proper handle
        int sz;
        MRT_MESSAGE mh;
        char sbuff[SBUFF] = {};

 view all matches for this distribution


Net-NATS-Streaming-PB

 view release on metacpan or  search on metacpan

PB.xs  view on Meta::CPAN



void
fields(svTHIS)
  SV * svTHIS
  PPCODE:
    (void)svTHIS;
    EXTEND(SP, 2);
    PUSHs(sv_2mortal(newSVpv("subject",0)));
    PUSHs(sv_2mortal(newSVpv("sequence",0)));

PB.xs  view on Meta::CPAN

subject(svTHIS)
  SV * svTHIS;
PREINIT:
    SV * sv;

  PPCODE:
    ::Net::NATS::Streaming::PB::Ack * THIS;
    if ( sv_derived_from(svTHIS, "Net::NATS::Streaming::PB::Ack") ) {
      IV tmp = SvIV((SV *)SvRV(svTHIS));
      THIS = INT2PTR(__Net__NATS__Streaming__PB__Ack *, tmp);
    } else {

PB.xs  view on Meta::CPAN

  SV * svTHIS;
PREINIT:
    SV * sv;
    ostringstream ost;

  PPCODE:
    ::Net::NATS::Streaming::PB::Ack * THIS;
    if ( sv_derived_from(svTHIS, "Net::NATS::Streaming::PB::Ack") ) {
      IV tmp = SvIV((SV *)SvRV(svTHIS));
      THIS = INT2PTR(__Net__NATS__Streaming__PB__Ack *, tmp);
    } else {

PB.xs  view on Meta::CPAN



void
fields(svTHIS)
  SV * svTHIS
  PPCODE:
    (void)svTHIS;
    EXTEND(SP, 1);
    PUSHs(sv_2mortal(newSVpv("clientID",0)));


PB.xs  view on Meta::CPAN

clientID(svTHIS)
  SV * svTHIS;
PREINIT:
    SV * sv;

  PPCODE:
    ::Net::NATS::Streaming::PB::CloseRequest * THIS;
    if ( sv_derived_from(svTHIS, "Net::NATS::Streaming::PB::CloseRequest") ) {
      IV tmp = SvIV((SV *)SvRV(svTHIS));
      THIS = INT2PTR(__Net__NATS__Streaming__PB__CloseRequest *, tmp);
    } else {

PB.xs  view on Meta::CPAN



void
fields(svTHIS)
  SV * svTHIS
  PPCODE:
    (void)svTHIS;
    EXTEND(SP, 1);
    PUSHs(sv_2mortal(newSVpv("error",0)));


PB.xs  view on Meta::CPAN

error(svTHIS)
  SV * svTHIS;
PREINIT:
    SV * sv;

  PPCODE:
    ::Net::NATS::Streaming::PB::CloseResponse * THIS;
    if ( sv_derived_from(svTHIS, "Net::NATS::Streaming::PB::CloseResponse") ) {
      IV tmp = SvIV((SV *)SvRV(svTHIS));
      THIS = INT2PTR(__Net__NATS__Streaming__PB__CloseResponse *, tmp);
    } else {

PB.xs  view on Meta::CPAN



void
fields(svTHIS)
  SV * svTHIS
  PPCODE:
    (void)svTHIS;
    EXTEND(SP, 2);
    PUSHs(sv_2mortal(newSVpv("clientID",0)));
    PUSHs(sv_2mortal(newSVpv("heartbeatInbox",0)));

PB.xs  view on Meta::CPAN

clientID(svTHIS)
  SV * svTHIS;
PREINIT:
    SV * sv;

  PPCODE:
    ::Net::NATS::Streaming::PB::ConnectRequest * THIS;
    if ( sv_derived_from(svTHIS, "Net::NATS::Streaming::PB::ConnectRequest") ) {
      IV tmp = SvIV((SV *)SvRV(svTHIS));
      THIS = INT2PTR(__Net__NATS__Streaming__PB__ConnectRequest *, tmp);
    } else {

PB.xs  view on Meta::CPAN

heartbeatInbox(svTHIS)
  SV * svTHIS;
PREINIT:
    SV * sv;

  PPCODE:
    ::Net::NATS::Streaming::PB::ConnectRequest * THIS;
    if ( sv_derived_from(svTHIS, "Net::NATS::Streaming::PB::ConnectRequest") ) {
      IV tmp = SvIV((SV *)SvRV(svTHIS));
      THIS = INT2PTR(__Net__NATS__Streaming__PB__ConnectRequest *, tmp);
    } else {

PB.xs  view on Meta::CPAN



void
fields(svTHIS)
  SV * svTHIS
  PPCODE:
    (void)svTHIS;
    EXTEND(SP, 7);
    PUSHs(sv_2mortal(newSVpv("pubPrefix",0)));
    PUSHs(sv_2mortal(newSVpv("subRequests",0)));
    PUSHs(sv_2mortal(newSVpv("unsubRequests",0)));

PB.xs  view on Meta::CPAN

pubPrefix(svTHIS)
  SV * svTHIS;
PREINIT:
    SV * sv;

  PPCODE:
    ::Net::NATS::Streaming::PB::ConnectResponse * THIS;
    if ( sv_derived_from(svTHIS, "Net::NATS::Streaming::PB::ConnectResponse") ) {
      IV tmp = SvIV((SV *)SvRV(svTHIS));
      THIS = INT2PTR(__Net__NATS__Streaming__PB__ConnectResponse *, tmp);
    } else {

PB.xs  view on Meta::CPAN

subRequests(svTHIS)
  SV * svTHIS;
PREINIT:
    SV * sv;

  PPCODE:
    ::Net::NATS::Streaming::PB::ConnectResponse * THIS;
    if ( sv_derived_from(svTHIS, "Net::NATS::Streaming::PB::ConnectResponse") ) {
      IV tmp = SvIV((SV *)SvRV(svTHIS));
      THIS = INT2PTR(__Net__NATS__Streaming__PB__ConnectResponse *, tmp);
    } else {

PB.xs  view on Meta::CPAN

unsubRequests(svTHIS)
  SV * svTHIS;
PREINIT:
    SV * sv;

  PPCODE:
    ::Net::NATS::Streaming::PB::ConnectResponse * THIS;
    if ( sv_derived_from(svTHIS, "Net::NATS::Streaming::PB::ConnectResponse") ) {
      IV tmp = SvIV((SV *)SvRV(svTHIS));
      THIS = INT2PTR(__Net__NATS__Streaming__PB__ConnectResponse *, tmp);
    } else {

PB.xs  view on Meta::CPAN

closeRequests(svTHIS)
  SV * svTHIS;
PREINIT:
    SV * sv;

  PPCODE:
    ::Net::NATS::Streaming::PB::ConnectResponse * THIS;
    if ( sv_derived_from(svTHIS, "Net::NATS::Streaming::PB::ConnectResponse") ) {
      IV tmp = SvIV((SV *)SvRV(svTHIS));
      THIS = INT2PTR(__Net__NATS__Streaming__PB__ConnectResponse *, tmp);
    } else {

PB.xs  view on Meta::CPAN

error(svTHIS)
  SV * svTHIS;
PREINIT:
    SV * sv;

  PPCODE:
    ::Net::NATS::Streaming::PB::ConnectResponse * THIS;
    if ( sv_derived_from(svTHIS, "Net::NATS::Streaming::PB::ConnectResponse") ) {
      IV tmp = SvIV((SV *)SvRV(svTHIS));
      THIS = INT2PTR(__Net__NATS__Streaming__PB__ConnectResponse *, tmp);
    } else {

PB.xs  view on Meta::CPAN

subCloseRequests(svTHIS)
  SV * svTHIS;
PREINIT:
    SV * sv;

  PPCODE:
    ::Net::NATS::Streaming::PB::ConnectResponse * THIS;
    if ( sv_derived_from(svTHIS, "Net::NATS::Streaming::PB::ConnectResponse") ) {
      IV tmp = SvIV((SV *)SvRV(svTHIS));
      THIS = INT2PTR(__Net__NATS__Streaming__PB__ConnectResponse *, tmp);
    } else {

PB.xs  view on Meta::CPAN

publicKey(svTHIS)
  SV * svTHIS;
PREINIT:
    SV * sv;

  PPCODE:
    ::Net::NATS::Streaming::PB::ConnectResponse * THIS;
    if ( sv_derived_from(svTHIS, "Net::NATS::Streaming::PB::ConnectResponse") ) {
      IV tmp = SvIV((SV *)SvRV(svTHIS));
      THIS = INT2PTR(__Net__NATS__Streaming__PB__ConnectResponse *, tmp);
    } else {

PB.xs  view on Meta::CPAN



void
fields(svTHIS)
  SV * svTHIS
  PPCODE:
    (void)svTHIS;
    EXTEND(SP, 7);
    PUSHs(sv_2mortal(newSVpv("sequence",0)));
    PUSHs(sv_2mortal(newSVpv("subject",0)));
    PUSHs(sv_2mortal(newSVpv("reply",0)));

PB.xs  view on Meta::CPAN

  SV * svTHIS;
PREINIT:
    SV * sv;
    ostringstream ost;

  PPCODE:
    ::Net::NATS::Streaming::PB::MsgProto * THIS;
    if ( sv_derived_from(svTHIS, "Net::NATS::Streaming::PB::MsgProto") ) {
      IV tmp = SvIV((SV *)SvRV(svTHIS));
      THIS = INT2PTR(__Net__NATS__Streaming__PB__MsgProto *, tmp);
    } else {

PB.xs  view on Meta::CPAN

subject(svTHIS)
  SV * svTHIS;
PREINIT:
    SV * sv;

  PPCODE:
    ::Net::NATS::Streaming::PB::MsgProto * THIS;
    if ( sv_derived_from(svTHIS, "Net::NATS::Streaming::PB::MsgProto") ) {
      IV tmp = SvIV((SV *)SvRV(svTHIS));
      THIS = INT2PTR(__Net__NATS__Streaming__PB__MsgProto *, tmp);
    } else {

PB.xs  view on Meta::CPAN

reply(svTHIS)
  SV * svTHIS;
PREINIT:
    SV * sv;

  PPCODE:
    ::Net::NATS::Streaming::PB::MsgProto * THIS;
    if ( sv_derived_from(svTHIS, "Net::NATS::Streaming::PB::MsgProto") ) {
      IV tmp = SvIV((SV *)SvRV(svTHIS));
      THIS = INT2PTR(__Net__NATS__Streaming__PB__MsgProto *, tmp);
    } else {

PB.xs  view on Meta::CPAN

data(svTHIS)
  SV * svTHIS;
PREINIT:
    SV * sv;

  PPCODE:
    ::Net::NATS::Streaming::PB::MsgProto * THIS;
    if ( sv_derived_from(svTHIS, "Net::NATS::Streaming::PB::MsgProto") ) {
      IV tmp = SvIV((SV *)SvRV(svTHIS));
      THIS = INT2PTR(__Net__NATS__Streaming__PB__MsgProto *, tmp);
    } else {

PB.xs  view on Meta::CPAN

  SV * svTHIS;
PREINIT:
    SV * sv;
    ostringstream ost;

  PPCODE:
    ::Net::NATS::Streaming::PB::MsgProto * THIS;
    if ( sv_derived_from(svTHIS, "Net::NATS::Streaming::PB::MsgProto") ) {
      IV tmp = SvIV((SV *)SvRV(svTHIS));
      THIS = INT2PTR(__Net__NATS__Streaming__PB__MsgProto *, tmp);
    } else {

PB.xs  view on Meta::CPAN

redelivered(svTHIS)
  SV * svTHIS;
PREINIT:
    SV * sv;

  PPCODE:
    ::Net::NATS::Streaming::PB::MsgProto * THIS;
    if ( sv_derived_from(svTHIS, "Net::NATS::Streaming::PB::MsgProto") ) {
      IV tmp = SvIV((SV *)SvRV(svTHIS));
      THIS = INT2PTR(__Net__NATS__Streaming__PB__MsgProto *, tmp);
    } else {

PB.xs  view on Meta::CPAN

CRC32(svTHIS)
  SV * svTHIS;
PREINIT:
    SV * sv;

  PPCODE:
    ::Net::NATS::Streaming::PB::MsgProto * THIS;
    if ( sv_derived_from(svTHIS, "Net::NATS::Streaming::PB::MsgProto") ) {
      IV tmp = SvIV((SV *)SvRV(svTHIS));
      THIS = INT2PTR(__Net__NATS__Streaming__PB__MsgProto *, tmp);
    } else {

PB.xs  view on Meta::CPAN



void
fields(svTHIS)
  SV * svTHIS
  PPCODE:
    (void)svTHIS;
    EXTEND(SP, 2);
    PUSHs(sv_2mortal(newSVpv("guid",0)));
    PUSHs(sv_2mortal(newSVpv("error",0)));

PB.xs  view on Meta::CPAN

guid(svTHIS)
  SV * svTHIS;
PREINIT:
    SV * sv;

  PPCODE:
    ::Net::NATS::Streaming::PB::PubAck * THIS;
    if ( sv_derived_from(svTHIS, "Net::NATS::Streaming::PB::PubAck") ) {
      IV tmp = SvIV((SV *)SvRV(svTHIS));
      THIS = INT2PTR(__Net__NATS__Streaming__PB__PubAck *, tmp);
    } else {

PB.xs  view on Meta::CPAN

error(svTHIS)
  SV * svTHIS;
PREINIT:
    SV * sv;

  PPCODE:
    ::Net::NATS::Streaming::PB::PubAck * THIS;
    if ( sv_derived_from(svTHIS, "Net::NATS::Streaming::PB::PubAck") ) {
      IV tmp = SvIV((SV *)SvRV(svTHIS));
      THIS = INT2PTR(__Net__NATS__Streaming__PB__PubAck *, tmp);
    } else {

PB.xs  view on Meta::CPAN



void
fields(svTHIS)
  SV * svTHIS
  PPCODE:
    (void)svTHIS;
    EXTEND(SP, 6);
    PUSHs(sv_2mortal(newSVpv("clientID",0)));
    PUSHs(sv_2mortal(newSVpv("guid",0)));
    PUSHs(sv_2mortal(newSVpv("subject",0)));

PB.xs  view on Meta::CPAN

clientID(svTHIS)
  SV * svTHIS;
PREINIT:
    SV * sv;

  PPCODE:
    ::Net::NATS::Streaming::PB::PubMsg * THIS;
    if ( sv_derived_from(svTHIS, "Net::NATS::Streaming::PB::PubMsg") ) {
      IV tmp = SvIV((SV *)SvRV(svTHIS));
      THIS = INT2PTR(__Net__NATS__Streaming__PB__PubMsg *, tmp);
    } else {

PB.xs  view on Meta::CPAN

guid(svTHIS)
  SV * svTHIS;
PREINIT:
    SV * sv;

  PPCODE:
    ::Net::NATS::Streaming::PB::PubMsg * THIS;
    if ( sv_derived_from(svTHIS, "Net::NATS::Streaming::PB::PubMsg") ) {
      IV tmp = SvIV((SV *)SvRV(svTHIS));
      THIS = INT2PTR(__Net__NATS__Streaming__PB__PubMsg *, tmp);
    } else {

PB.xs  view on Meta::CPAN

subject(svTHIS)
  SV * svTHIS;
PREINIT:
    SV * sv;

  PPCODE:
    ::Net::NATS::Streaming::PB::PubMsg * THIS;
    if ( sv_derived_from(svTHIS, "Net::NATS::Streaming::PB::PubMsg") ) {
      IV tmp = SvIV((SV *)SvRV(svTHIS));
      THIS = INT2PTR(__Net__NATS__Streaming__PB__PubMsg *, tmp);
    } else {

PB.xs  view on Meta::CPAN

reply(svTHIS)
  SV * svTHIS;
PREINIT:
    SV * sv;

  PPCODE:
    ::Net::NATS::Streaming::PB::PubMsg * THIS;
    if ( sv_derived_from(svTHIS, "Net::NATS::Streaming::PB::PubMsg") ) {
      IV tmp = SvIV((SV *)SvRV(svTHIS));
      THIS = INT2PTR(__Net__NATS__Streaming__PB__PubMsg *, tmp);
    } else {

PB.xs  view on Meta::CPAN

data(svTHIS)
  SV * svTHIS;
PREINIT:
    SV * sv;

  PPCODE:
    ::Net::NATS::Streaming::PB::PubMsg * THIS;
    if ( sv_derived_from(svTHIS, "Net::NATS::Streaming::PB::PubMsg") ) {
      IV tmp = SvIV((SV *)SvRV(svTHIS));
      THIS = INT2PTR(__Net__NATS__Streaming__PB__PubMsg *, tmp);
    } else {

PB.xs  view on Meta::CPAN

sha256(svTHIS)
  SV * svTHIS;
PREINIT:
    SV * sv;

  PPCODE:
    ::Net::NATS::Streaming::PB::PubMsg * THIS;
    if ( sv_derived_from(svTHIS, "Net::NATS::Streaming::PB::PubMsg") ) {
      IV tmp = SvIV((SV *)SvRV(svTHIS));
      THIS = INT2PTR(__Net__NATS__Streaming__PB__PubMsg *, tmp);
    } else {

PB.xs  view on Meta::CPAN



void
fields(svTHIS)
  SV * svTHIS
  PPCODE:
    (void)svTHIS;
    EXTEND(SP, 10);
    PUSHs(sv_2mortal(newSVpv("clientID",0)));
    PUSHs(sv_2mortal(newSVpv("subject",0)));
    PUSHs(sv_2mortal(newSVpv("qGroup",0)));

PB.xs  view on Meta::CPAN

clientID(svTHIS)
  SV * svTHIS;
PREINIT:
    SV * sv;

  PPCODE:
    ::Net::NATS::Streaming::PB::SubscriptionRequest * THIS;
    if ( sv_derived_from(svTHIS, "Net::NATS::Streaming::PB::SubscriptionRequest") ) {
      IV tmp = SvIV((SV *)SvRV(svTHIS));
      THIS = INT2PTR(__Net__NATS__Streaming__PB__SubscriptionRequest *, tmp);
    } else {

PB.xs  view on Meta::CPAN

subject(svTHIS)
  SV * svTHIS;
PREINIT:
    SV * sv;

  PPCODE:
    ::Net::NATS::Streaming::PB::SubscriptionRequest * THIS;
    if ( sv_derived_from(svTHIS, "Net::NATS::Streaming::PB::SubscriptionRequest") ) {
      IV tmp = SvIV((SV *)SvRV(svTHIS));
      THIS = INT2PTR(__Net__NATS__Streaming__PB__SubscriptionRequest *, tmp);
    } else {

PB.xs  view on Meta::CPAN

qGroup(svTHIS)
  SV * svTHIS;
PREINIT:
    SV * sv;

  PPCODE:
    ::Net::NATS::Streaming::PB::SubscriptionRequest * THIS;
    if ( sv_derived_from(svTHIS, "Net::NATS::Streaming::PB::SubscriptionRequest") ) {
      IV tmp = SvIV((SV *)SvRV(svTHIS));
      THIS = INT2PTR(__Net__NATS__Streaming__PB__SubscriptionRequest *, tmp);
    } else {

PB.xs  view on Meta::CPAN

inbox(svTHIS)
  SV * svTHIS;
PREINIT:
    SV * sv;

  PPCODE:
    ::Net::NATS::Streaming::PB::SubscriptionRequest * THIS;
    if ( sv_derived_from(svTHIS, "Net::NATS::Streaming::PB::SubscriptionRequest") ) {
      IV tmp = SvIV((SV *)SvRV(svTHIS));
      THIS = INT2PTR(__Net__NATS__Streaming__PB__SubscriptionRequest *, tmp);
    } else {

PB.xs  view on Meta::CPAN

maxInFlight(svTHIS)
  SV * svTHIS;
PREINIT:
    SV * sv;

  PPCODE:
    ::Net::NATS::Streaming::PB::SubscriptionRequest * THIS;
    if ( sv_derived_from(svTHIS, "Net::NATS::Streaming::PB::SubscriptionRequest") ) {
      IV tmp = SvIV((SV *)SvRV(svTHIS));
      THIS = INT2PTR(__Net__NATS__Streaming__PB__SubscriptionRequest *, tmp);
    } else {

PB.xs  view on Meta::CPAN

ackWaitInSecs(svTHIS)
  SV * svTHIS;
PREINIT:
    SV * sv;

  PPCODE:
    ::Net::NATS::Streaming::PB::SubscriptionRequest * THIS;
    if ( sv_derived_from(svTHIS, "Net::NATS::Streaming::PB::SubscriptionRequest") ) {
      IV tmp = SvIV((SV *)SvRV(svTHIS));
      THIS = INT2PTR(__Net__NATS__Streaming__PB__SubscriptionRequest *, tmp);
    } else {

PB.xs  view on Meta::CPAN

durableName(svTHIS)
  SV * svTHIS;
PREINIT:
    SV * sv;

  PPCODE:
    ::Net::NATS::Streaming::PB::SubscriptionRequest * THIS;
    if ( sv_derived_from(svTHIS, "Net::NATS::Streaming::PB::SubscriptionRequest") ) {
      IV tmp = SvIV((SV *)SvRV(svTHIS));
      THIS = INT2PTR(__Net__NATS__Streaming__PB__SubscriptionRequest *, tmp);
    } else {

PB.xs  view on Meta::CPAN

startPosition(svTHIS)
  SV * svTHIS;
PREINIT:
    SV * sv;

  PPCODE:
    ::Net::NATS::Streaming::PB::SubscriptionRequest * THIS;
    if ( sv_derived_from(svTHIS, "Net::NATS::Streaming::PB::SubscriptionRequest") ) {
      IV tmp = SvIV((SV *)SvRV(svTHIS));
      THIS = INT2PTR(__Net__NATS__Streaming__PB__SubscriptionRequest *, tmp);
    } else {

PB.xs  view on Meta::CPAN

  SV * svTHIS;
PREINIT:
    SV * sv;
    ostringstream ost;

  PPCODE:
    ::Net::NATS::Streaming::PB::SubscriptionRequest * THIS;
    if ( sv_derived_from(svTHIS, "Net::NATS::Streaming::PB::SubscriptionRequest") ) {
      IV tmp = SvIV((SV *)SvRV(svTHIS));
      THIS = INT2PTR(__Net__NATS__Streaming__PB__SubscriptionRequest *, tmp);
    } else {

PB.xs  view on Meta::CPAN

  SV * svTHIS;
PREINIT:
    SV * sv;
    ostringstream ost;

  PPCODE:
    ::Net::NATS::Streaming::PB::SubscriptionRequest * THIS;
    if ( sv_derived_from(svTHIS, "Net::NATS::Streaming::PB::SubscriptionRequest") ) {
      IV tmp = SvIV((SV *)SvRV(svTHIS));
      THIS = INT2PTR(__Net__NATS__Streaming__PB__SubscriptionRequest *, tmp);
    } else {

PB.xs  view on Meta::CPAN



void
fields(svTHIS)
  SV * svTHIS
  PPCODE:
    (void)svTHIS;
    EXTEND(SP, 2);
    PUSHs(sv_2mortal(newSVpv("ackInbox",0)));
    PUSHs(sv_2mortal(newSVpv("error",0)));

PB.xs  view on Meta::CPAN

ackInbox(svTHIS)
  SV * svTHIS;
PREINIT:
    SV * sv;

  PPCODE:
    ::Net::NATS::Streaming::PB::SubscriptionResponse * THIS;
    if ( sv_derived_from(svTHIS, "Net::NATS::Streaming::PB::SubscriptionResponse") ) {
      IV tmp = SvIV((SV *)SvRV(svTHIS));
      THIS = INT2PTR(__Net__NATS__Streaming__PB__SubscriptionResponse *, tmp);
    } else {

PB.xs  view on Meta::CPAN

error(svTHIS)
  SV * svTHIS;
PREINIT:
    SV * sv;

  PPCODE:
    ::Net::NATS::Streaming::PB::SubscriptionResponse * THIS;
    if ( sv_derived_from(svTHIS, "Net::NATS::Streaming::PB::SubscriptionResponse") ) {
      IV tmp = SvIV((SV *)SvRV(svTHIS));
      THIS = INT2PTR(__Net__NATS__Streaming__PB__SubscriptionResponse *, tmp);
    } else {

PB.xs  view on Meta::CPAN



void
fields(svTHIS)
  SV * svTHIS
  PPCODE:
    (void)svTHIS;
    EXTEND(SP, 4);
    PUSHs(sv_2mortal(newSVpv("clientID",0)));
    PUSHs(sv_2mortal(newSVpv("subject",0)));
    PUSHs(sv_2mortal(newSVpv("inbox",0)));

PB.xs  view on Meta::CPAN

clientID(svTHIS)
  SV * svTHIS;
PREINIT:
    SV * sv;

  PPCODE:
    ::Net::NATS::Streaming::PB::UnsubscribeRequest * THIS;
    if ( sv_derived_from(svTHIS, "Net::NATS::Streaming::PB::UnsubscribeRequest") ) {
      IV tmp = SvIV((SV *)SvRV(svTHIS));
      THIS = INT2PTR(__Net__NATS__Streaming__PB__UnsubscribeRequest *, tmp);
    } else {

PB.xs  view on Meta::CPAN

subject(svTHIS)
  SV * svTHIS;
PREINIT:
    SV * sv;

  PPCODE:
    ::Net::NATS::Streaming::PB::UnsubscribeRequest * THIS;
    if ( sv_derived_from(svTHIS, "Net::NATS::Streaming::PB::UnsubscribeRequest") ) {
      IV tmp = SvIV((SV *)SvRV(svTHIS));
      THIS = INT2PTR(__Net__NATS__Streaming__PB__UnsubscribeRequest *, tmp);
    } else {

PB.xs  view on Meta::CPAN

inbox(svTHIS)
  SV * svTHIS;
PREINIT:
    SV * sv;

  PPCODE:
    ::Net::NATS::Streaming::PB::UnsubscribeRequest * THIS;
    if ( sv_derived_from(svTHIS, "Net::NATS::Streaming::PB::UnsubscribeRequest") ) {
      IV tmp = SvIV((SV *)SvRV(svTHIS));
      THIS = INT2PTR(__Net__NATS__Streaming__PB__UnsubscribeRequest *, tmp);
    } else {

PB.xs  view on Meta::CPAN

durableName(svTHIS)
  SV * svTHIS;
PREINIT:
    SV * sv;

  PPCODE:
    ::Net::NATS::Streaming::PB::UnsubscribeRequest * THIS;
    if ( sv_derived_from(svTHIS, "Net::NATS::Streaming::PB::UnsubscribeRequest") ) {
      IV tmp = SvIV((SV *)SvRV(svTHIS));
      THIS = INT2PTR(__Net__NATS__Streaming__PB__UnsubscribeRequest *, tmp);
    } else {

 view all matches for this distribution


Net-NIS-Netgroup

 view release on metacpan or  search on metacpan

Netgroup.xs  view on Meta::CPAN

SV *
getdomainname()
    PREINIT:
    	int len = 512;
	char buf[512];
    PPCODE:
    	int ret = getdomainname(buf, len);
	if (ret == -1) {
		XPUSHs(&PL_sv_undef);
	} else {
		XPUSHs(sv_2mortal(newSVpv(buf, 0)));

Netgroup.xs  view on Meta::CPAN

IV *
setdomainname(name)
    const char *name
    PREINIT:
    	int len = strlen(name) + 1;
    PPCODE:
    	int ret = setdomainname(name, len);
	if (ret == -1) {
		XPUSHs(&PL_sv_undef);
	} else {
		XPUSHs(sv_2mortal(newSViv(1)));

Netgroup.xs  view on Meta::CPAN

	char *user;
	char *domain;

	int ret;

    PPCODE:
	ret = 0;

	if (!SvOK(sv_netgroup)) { netgroup = NULL; } else { netgroup = SvPV_nolen(sv_netgroup); }
	if (!SvOK(sv_host)) { host = NULL; } else { host = SvPV_nolen(sv_host); }
	if (!SvOK(sv_user)) { user = NULL; } else { user = SvPV_nolen(sv_user); }

Netgroup.xs  view on Meta::CPAN


	HV *el;
	char *buf;
	int bufsize = 256;
	int len;
    PPCODE:

	if (stringify) {
		buf = malloc(bufsize);
		if (!buf) {
			Perl_croak(aTHX_ "Could not allocate memory");

 view all matches for this distribution


Net-NIS

 view release on metacpan or  search on metacpan

NIS.xs  view on Meta::CPAN

yp_unbind(domain)
  char *	domain

void
yp_get_default_domain()
  PPCODE:
  {
    char	*domain;

    yp_status = yp_get_default_domain(&domain);

NIS.xs  view on Meta::CPAN

void
yp_match(domain, map, key)
  char *	domain
  char *	map
  SV *		key
  PPCODE:
  {
    char	*inkey;
    STRLEN	inkeylen;
    char	*outval;
    int		outvallen = 0;

NIS.xs  view on Meta::CPAN


void
yp_first(domain, map)
  char *	domain
  char *	map
  PPCODE:
  {
    char	*outkey;
    int		outkeylen;
    char	*outval;
    int		outvallen;

NIS.xs  view on Meta::CPAN

void
yp_next(domain, map, key)
  char *	domain
  char *	map
  SV *		key
  PPCODE:
  {
    char	*inkey;
    STRLEN	inkeylen;
    char	*outkey;
    int 	outkeylen;

NIS.xs  view on Meta::CPAN


void
yp_all(domain, map)
  char *	domain
  char *	map
  PPCODE:
  {
    struct ypall_callback	callback;
    struct callbackdata		data;

    data.results = newRV((SV *) newHV());

NIS.xs  view on Meta::CPAN


void
yp_order(domain, map)
  char *	domain
  char *	map
  PPCODE:
  {
    unsigned long	order;

    yp_status = yp_order(domain, map, &order);
    YP_RETURN(newSViv(order));

NIS.xs  view on Meta::CPAN


void
yp_master(domain, map)
  char *	domain
  char *	map
  PPCODE:
  {
    char	*name;

    yp_status = yp_master(domain, map, &name);
    YP_RETURN(newSVpv(name, strlen(name)));

NIS.xs  view on Meta::CPAN

  char *	domain
  PREINIT:
	int		  ret;
	struct ypmaplist *ypmap = NULL;
	AV		 *retval;
  PPCODE:
  {
    ret = yp_maplist( domain, &ypmap );

    if (ret == YPERR_SUCCESS) {
      struct ypmaplist *y, *old;

NIS.xs  view on Meta::CPAN

#else	/* Linux */

void
yp_maplist(domain)
    char *	domain
  PPCODE:
  {
    warn("Net::NIS::yp_maplist() -- not implemented on this OS");
    XSRETURN_EMPTY;
  }

 view all matches for this distribution


Net-NISplusTied

 view release on metacpan or  search on metacpan

NISplusTied.xs  view on Meta::CPAN


void
nismatch (query, table)
	char* query
	char* table
	PPCODE:

        nis_result *en, *tb;
        nis_object *noTable, *noEntry;
	int i, j;
	HV *hash; AV *array;

NISplusTied.xs  view on Meta::CPAN

void
nismodify (query, table, values)
	char* query
	char* table
	SV* values
	PPCODE:

	nis_result *en, *tb, *rc;
	nis_object *noTable, *noEntry;
	SV *i, *j;  SV** iSV;

NISplusTied.xs  view on Meta::CPAN

# /*****************************************************************/

void
nisremove (q)
	char* q
	PPCODE:

	nis_result *rc;

	rc = nis_remove_entry (q, NULL, REM_MULTIPLE || EXPAND_NAME);

 view all matches for this distribution


Net-Nmsg

 view release on metacpan or  search on metacpan

Nmsg.xs  view on Meta::CPAN

    const char *ch
    PREINIT:
    char **alias = NULL;
    int num_aliases;
    int i;
    PPCODE:
    num_aliases = nmsg_chalias_lookup(ch, &alias);
    if (num_aliases > 0) {
        for (i = 0; i < num_aliases; i++)
            mXPUSHs(newSVpv(alias[i], 0));
    }

Nmsg.xs  view on Meta::CPAN


void
find_all_devs()
    PREINIT:
    char    err[PCAP_ERRBUF_SIZE];
    PPCODE:
    pcap_if_t *devs, *d;

    if (pcap_findalldevs(&devs, err) == -1)
        croak("%s", err);

Nmsg.xs  view on Meta::CPAN

    char    now[32];
    struct  timespec ts;
    struct  tm *tm;
    time_t  t;
    char   *tstr;
    PPCODE:
    nmsg_timespec_get(&ts);
    t = (time_t) ts.tv_sec;
    tm = gmtime(&t);
    strftime(now, sizeof(now), "%Y%m%d.%H%M.%s", tm);
    nmsg_asprintf(&tstr, "%s.%09ld", now, ts.tv_nsec);

Nmsg.xs  view on Meta::CPAN

void
get_selectable_fd(THIS)
    Net::Nmsg::XS::pcap THIS
    PREINIT:
    int res;
    PPCODE:
    res = pcap_get_selectable_fd(THIS);
    if (res != -1)
        mXPUSHi(res);

int

Nmsg.xs  view on Meta::CPAN

nmsg_input_set_blocking_io(THIS, flag)
    Net::Nmsg::XS::input    THIS
    bool    flag
    PREINIT:
    nmsg_res    res;
    PPCODE:
    res = nmsg_input_set_blocking_io(THIS, flag);
    if (res == nmsg_res_success)
        mXPUSHi(flag);

void

Nmsg.xs  view on Meta::CPAN

    bool                    blocking_io
    PREINIT:
    nmsg_message_t  m;
    nmsg_res        res;
    U32             SAVE_signals;      
    PPCODE:
    res = nmsg_res_failure;
    while (res != nmsg_res_success) {
        SAVE_signals = PL_signals;
        PL_signals |= PERL_SIGNALS_UNSAFE_FLAG;
        res = nmsg_input_read(THIS, &m);

Nmsg.xs  view on Meta::CPAN

void
get_time(THIS)
    Net::Nmsg::XS::msg  THIS
    PREINIT:
    struct timespec ts;
    PPCODE:
    nmsg_message_get_time(THIS, &ts);
    mXPUSHi(ts.tv_sec);
    mXPUSHi(ts.tv_nsec);

void
get_num_fields(THIS)
    Net::Nmsg::XS::msg  THIS
    PREINIT:
    nmsg_res  res;
    size_t    len;
    PPCODE:
    res = nmsg_message_get_num_fields(THIS, &len);
    if (res == nmsg_res_success)
        mXPUSHu(len);

void

Nmsg.xs  view on Meta::CPAN

    Net::Nmsg::XS::msg  THIS
    const char         *field
    PREINIT:
    nmsg_res  res;
    size_t    len;
    PPCODE:
    res = nmsg_message_get_num_field_values(THIS, field, &len);
    if (res == nmsg_res_success)
        mXPUSHu(len);

void

Nmsg.xs  view on Meta::CPAN

    Net::Nmsg::XS::msg  THIS
    unsigned            idx
    PREINIT:
    nmsg_res  res;
    size_t    len;
    PPCODE:
    res = nmsg_message_get_num_field_values_by_idx(THIS, idx, &len);
    if (res == nmsg_res_success)
        mXPUSHu(len);

void

Nmsg.xs  view on Meta::CPAN

    PREINIT:
    nmsg_res                res;
    size_t                  len;
    void                   *data;
    nmsg_msgmod_field_type  type;
    PPCODE:
    res = nmsg_message_get_field(THIS, field, v_idx, &data, &len);
    if (res == nmsg_res_success && data != NULL) {
        res = nmsg_message_get_field_type(THIS, field, &type);
        if (res == nmsg_res_success) {
            mXPUSHs(_xs_field_to_sv(aTHX_ data, len, type));

Nmsg.xs  view on Meta::CPAN

    nmsg_res                res;
    size_t                  len;
    void                   *data;
    nmsg_msgmod_field_type  type;
    int                     i;
    PPCODE:
    res = nmsg_message_get_field_type(THIS, field, &type);
    if (res != nmsg_res_success)
        croak("nmsg_message_get_field_type failed: %s", nmsg_res_lookup(res));
    for (i = 0; ; i++) {
        res = nmsg_message_get_field(THIS, field, i, &data, &len);

Nmsg.xs  view on Meta::CPAN

    PREINIT:
    nmsg_res               res;
    nmsg_msgmod_field_type type;
    size_t                 len;
    void                  *data;
    PPCODE:
    res = nmsg_message_get_field_by_idx(THIS, f_idx, v_idx, &data, &len);
    if (res == nmsg_res_success) {
        res = nmsg_message_get_field_type_by_idx(THIS, f_idx, &type);
        if (res == nmsg_res_success && data != NULL) {
            mXPUSHs(_xs_field_to_sv(aTHX_ data, len, type));

Nmsg.xs  view on Meta::CPAN

    nmsg_res                res;
    nmsg_msgmod_field_type  type;
    size_t                  len;
    void                   *data;
    int                     i;
    PPCODE:
    res = nmsg_message_get_field_type_by_idx(THIS, f_idx, &type);
    if (res == nmsg_res_success) {
        for (i = 0; ; i++) {
            res = nmsg_message_get_field_by_idx(THIS, f_idx, i, &data, &len);
            if (res != nmsg_res_success || data == NULL)

Nmsg.xs  view on Meta::CPAN

    Net::Nmsg::XS::msg  THIS
    const char         *field
    PREINIT:
    nmsg_res    res;
    unsigned    flags;
    PPCODE:
    res = nmsg_message_get_field_flags(THIS, field, &flags);
    if (res == nmsg_res_success)
        mXPUSHu(flags);

void

Nmsg.xs  view on Meta::CPAN

    Net::Nmsg::XS::msg  THIS
    unsigned            f_idx
    PREINIT:
    nmsg_res    res;
    unsigned    flags;
    PPCODE:
    res = nmsg_message_get_field_flags_by_idx(THIS, f_idx, &flags);
    if (res == nmsg_res_success)
        mXPUSHu(flags);

void

Nmsg.xs  view on Meta::CPAN

    Net::Nmsg::XS::msg  THIS
    const char         *name
    PREINIT:
    nmsg_res    res;
    unsigned    idx;
    PPCODE:
    res = nmsg_message_get_field_idx(THIS, name, &idx);
    if (res == nmsg_res_success)
        mXPUSHu(idx);

void

Nmsg.xs  view on Meta::CPAN

    Net::Nmsg::XS::msg  THIS
    unsigned            idx
    PREINIT:
    nmsg_res    res;
    const char *name;
    PPCODE:
    res = nmsg_message_get_field_name(THIS, idx, &name);
    if (res == nmsg_res_success)
        mXPUSHs(newSVpv(name, 0));

void

Nmsg.xs  view on Meta::CPAN

    Net::Nmsg::XS::msg  THIS
    const char         *name;
    PREINIT:
    nmsg_res                res;
    nmsg_msgmod_field_type  type;
    PPCODE:
    res = nmsg_message_get_field_type(THIS, name, &type);
    if (res == nmsg_res_success)
        mXPUSHi(type);

void

Nmsg.xs  view on Meta::CPAN

    Net::Nmsg::XS::msg  THIS
    unsigned            idx
    PREINIT:
    nmsg_res                res;
    nmsg_msgmod_field_type  type;
    PPCODE:
    res = nmsg_message_get_field_type_by_idx(THIS, idx, &type);
    if (res == nmsg_res_success)
        mXPUSHi(type);

void

Nmsg.xs  view on Meta::CPAN

    const char         *field
    const char         *name
    PREINIT:
    nmsg_res    res;
    unsigned    value;
    PPCODE:
    res = nmsg_message_enum_name_to_value(THIS, field, name, &value);
    if (res == nmsg_res_success)
        mXPUSHu(value);

void

Nmsg.xs  view on Meta::CPAN

    unsigned            f_idx
    const char         *name
    PREINIT:
    nmsg_res    res;
    unsigned    value;
    PPCODE:
    res = nmsg_message_enum_name_to_value_by_idx(THIS, f_idx, name, &value);
    if (res == nmsg_res_success)
        mXPUSHu(value);

void

Nmsg.xs  view on Meta::CPAN

    const char         *field
    unsigned            value
    PREINIT:
    nmsg_res    res;
    const char *name;
    PPCODE:
    res = nmsg_message_enum_value_to_name(THIS, field, value, &name);
    if (res == nmsg_res_success)
        mXPUSHs(newSVpv(name, 0));

void

Nmsg.xs  view on Meta::CPAN

    unsigned            f_idx
    unsigned            value
    PREINIT:
    nmsg_res    res;
    const char *name;
    PPCODE:
    res = nmsg_message_enum_value_to_name_by_idx(THIS, f_idx, value, &name);
    if (res == nmsg_res_success)
        mXPUSHs(newSVpv(name, 0));

void

Nmsg.xs  view on Meta::CPAN

    Net::Nmsg::XS::msg  THIS
    long                time_sec
    int                 time_nsec
    PREINIT:
    struct timespec ts;
    PPCODE:
    ts.tv_sec = time_sec;
    ts.tv_nsec = time_nsec;
    nmsg_message_set_time(THIS, &ts);

void

Nmsg.xs  view on Meta::CPAN

    Net::Nmsg::XS::msg    THIS
    const char           *endline
    PREINIT:
    nmsg_res  res;
    char     *pres;
    PPCODE:
    pthread_mutex_lock(&presentation_lock);
    res = nmsg_message_to_pres(THIS, &pres, endline);
    if (res != nmsg_res_success)
        goto out;
    mXPUSHs(newSVpv(pres, 0));

Nmsg.xs  view on Meta::CPAN

    Net::Nmsg::XS::msg  THIS
    unsigned            f_idx
    PREINIT:
    nmsg_res                res;
    nmsg_msgmod_field_type  type;
    PPCODE:
    res = nmsg_message_get_field_type_by_idx(THIS, f_idx, &type);
    if (res == nmsg_res_success) {
        mXPUSHs(newSViv(type));

        switch (type) {

Nmsg.xs  view on Meta::CPAN

    Net::Nmsg::XS::msg  THIS
    unsigned            f_idx
    PREINIT:
    nmsg_res    res;
    unsigned    flags;
    PPCODE:
    res = nmsg_message_get_field_flags_by_idx(THIS, f_idx, &flags);
    if (res == nmsg_res_success) {
        if (flags & NMSG_FF_REPEATED)
            mXPUSHs(newSViv(NMSG_FF_REPEATED));
            mXPUSHs(newSVpvs("repeated"));

Nmsg.xs  view on Meta::CPAN

    PREINIT:
    nmsg_res                res;
    nmsg_msgmod_field_type  type;
    unsigned                v;
    const char             *name;
    PPCODE:
    res = nmsg_message_get_field_type_by_idx(THIS, f_idx, &type);
    if (res == nmsg_res_success && type == nmsg_msgmod_ft_enum) {
        for (v = 0;  ; v++) {
            res = nmsg_message_enum_value_to_name_by_idx(
                    THIS, f_idx, v, &name);

 view all matches for this distribution


Net-Oping

 view release on metacpan or  search on metacpan

Oping.xs  view on Meta::CPAN

		RETVAL

void
_ping_iterator_get_hostname (iter)
	pingobj_iter_t *iter
	PPCODE:
		char *buffer;
		size_t buffer_size;
		int status;

	do {

 view all matches for this distribution


Net-Patricia

 view release on metacpan or  search on metacpan

Patricia.xs  view on Meta::CPAN

	SV *				data
	PROTOTYPE: $$$$$
	PREINIT:
	   	prefix_t prefix;
	   	Net__PatriciaNode node;
	PPCODE:
		Fill_Prefix(prefix, family, addr, bits, tree->maxbits);
	   	node = patricia_lookup(tree, &prefix);
		if (NULL != node) {
		   /* { */
		   if (node->data) {

Patricia.xs  view on Meta::CPAN

	int				bits
	PROTOTYPE: $$$$
	PREINIT:
	   	prefix_t prefix;
	   	Net__PatriciaNode node;
	PPCODE:
		Fill_Prefix(prefix, family, addr, bits, tree->maxbits);
		node = patricia_search_best(tree, &prefix);
		if (NULL != node) {
		   XPUSHs((SV *)node->data);
		} else {

Patricia.xs  view on Meta::CPAN

	int				bits
	PROTOTYPE: $$$$
	PREINIT:
	   	prefix_t prefix;
	   	Net__PatriciaNode node;
	PPCODE:
		Fill_Prefix(prefix, family, addr, bits, tree->maxbits);
		node = patricia_search_exact(tree, &prefix);
		if (NULL != node) {
		   XPUSHs((SV *)node->data);
		} else {

Patricia.xs  view on Meta::CPAN

	int				bits
	PROTOTYPE: $$$$
	PREINIT:
	   	prefix_t prefix;
	   	Net__PatriciaNode node;
	PPCODE:
		Fill_Prefix(prefix, family, addr, bits, tree->maxbits);
	   	node = patricia_search_exact(tree, &prefix);
		if (NULL != node) {
		   XPUSHs(sv_mortalcopy((SV *)node->data));
		   deref_data(node->data);

Patricia.xs  view on Meta::CPAN

		patricia_node_t *node = NULL;
		struct frozen_header frozen_header;
		struct frozen_node *frozen_nodes, *frozen_node;
		size_t n = 0, i = 0, nd = 0;
		SV *frozen_patricia;
	PPCODE:
		if (SvTRUE(cloning))
		  XSRETURN_UNDEF;

		/* I do not know enough of patricia.c to
		 * decide whether inactive nodes can

Patricia.xs  view on Meta::CPAN

		struct frozen_node *frozen_node;
		struct _patricia_tree_t *tree;
		patricia_node_t *node = NULL, *child, **fixup;
		int n, n_calculated, i, d_index, l_index, r_index;
		STRLEN len;
	PPCODE:
		if (SvTRUE(cloning))
		    XSRETURN_UNDEF;

		tree = calloc(1, sizeof(*tree));
		frozen_patricia = (struct frozen_patricia*)SvPV(serialized, len);

 view all matches for this distribution


Net-Pcap

 view release on metacpan or  search on metacpan

Pcap.xs  view on Meta::CPAN

 
    PREINIT:
        char    *errbuf = NULL;
        Newx(errbuf, PCAP_ERRBUF_SIZE+1, char);
    
    PPCODE:
        if ( SvROK(err) && SvROK(devinfo) && (SvTYPE(SvRV(devinfo)) == SVt_PVHV) ) {
            int r;
            pcap_if_t *alldevs, *d;
            HV *hv;
            SV *err_sv = SvRV(err);

Pcap.xs  view on Meta::CPAN

    pcap_t *p

    PREINIT:
        unsigned int h;

    PPCODE:
        h = (unsigned int) pcap_getevent(p);  
        ST(0) = sv_newmortal();
        sv_setref_iv(ST(0), "Win32::Event", h);
        XSRETURN(1);

 view all matches for this distribution


Net-Prometheus-PerlCollector

 view release on metacpan or  search on metacpan

lib/Net/Prometheus/PerlCollector.xs  view on Meta::CPAN

    int detail
INIT:
    SV *arena;
    STRLEN arenas = 0, svs = 0;
    HV *svs_by_type = NULL, *svs_by_class = NULL;
PPCODE:
    if(detail)
      svs_by_type = newHV();
    if(detail > 1)
      svs_by_class = newHV();

 view all matches for this distribution


Net-Prometheus

 view release on metacpan or  search on metacpan

lib/Net/Prometheus/PerlCollector.xs  view on Meta::CPAN

    int detail
INIT:
    SV *arena;
    STRLEN arenas = 0, svs = 0;
    HV *svs_by_type = NULL, *svs_by_class = NULL;
PPCODE:
    if(detail)
      svs_by_type = newHV();
    if(detail > 1)
      svs_by_class = newHV();

 view all matches for this distribution


Net-RULI

 view release on metacpan or  search on metacpan

RULI/fallback/const-xs.inc  view on Meta::CPAN

	/* NV		nv;	Uncomment this if you need to return NVs */
	/* const char	*pv;	Uncomment this if you need to return PVs */
    INPUT:
	SV *		sv;
        const char *	s = SvPV(sv, len);
    PPCODE:
	type = constant(aTHX_ s, len);
      /* Return 1 or 2 items. First is error message, or undef if no error.
           Second, if present, is found value */
        switch (type) {
        case PERL_constant_NOTFOUND:

 view all matches for this distribution


Net-SLP

 view release on metacpan or  search on metacpan

fallback/const-xs.inc  view on Meta::CPAN

	/* NV		nv;	Uncomment this if you need to return NVs */
	/* const char	*pv;	Uncomment this if you need to return PVs */
    INPUT:
	SV *		sv;
        const char *	s = SvPV(sv, len);
    PPCODE:
        /* Change this to constant(aTHX_ s, len, &iv, &nv);
           if you need to return both NVs and IVs */
	type = constant(aTHX_ s, len, &iv);
      /* Return 1 or 2 items. First is error message, or undef if no error.
           Second, if present, is found value */

 view all matches for this distribution


Net-SNMP-XS

 view release on metacpan or  search on metacpan

XS.xs  view on Meta::CPAN


void
_buffer_append (BUFOBJ self, SV *value)
	ALIAS:
        _buffer_put = 1
	PPCODE:
{
        STRLEN vlen;
        const char *vstr = SvPVbyte (value, vlen);

        if (ix)

XS.xs  view on Meta::CPAN

        XPUSHs (&PL_sv_yes);
}

void
_buffer_get (BUFOBJ self, int count = -1)
	PPCODE:
{
	// grrr.
	if (count < 0)
          {
            hv_delete ((HV *)SvRV (self), "_index" , 6, G_DISCARD);

XS.xs  view on Meta::CPAN

void
oid_base_match (SV *base_, SV *oid_)
	PROTOTYPE: $$
        ALIAS:
        oid_context_match = 0
        PPCODE:
{
        if (!SvOK (base_) || !SvOK (oid_))
          XSRETURN_NO;

        STRLEN blen, olen;

XS.xs  view on Meta::CPAN

#if HAVE_VERSIONSORT

void
oid_lex_sort (...)
	PROTOTYPE: @
        PPCODE:
{
        // make sure SvPVX is valid
        int i;
        for (i = items; i--; )
          {

 view all matches for this distribution


Net-SSH-Perl

 view release on metacpan or  search on metacpan

lib/Net/SSH/Perl/Key/Ed25519.xs  view on Meta::CPAN

	RETVAL

void
ed25519_generate_keypair (secret)
	SV *secret
PPCODE:
	{
		STRLEN secret_l; unsigned char *secret_p;

		unsigned char public_key[32];
		unsigned char private_key[64];

 view all matches for this distribution


Net-SSH2

 view release on metacpan or  search on metacpan

SSH2.xs  view on Meta::CPAN

CODE:
    net_ss_debug_out = debug & 1;  /* allow for future flags */

void
net_ss_version(...)
PPCODE:
    EXTEND(SP, 3);
    ST(0) = sv_2mortal(newSVpv(LIBSSH2_VERSION, 0));
    if (GIMME_V != G_ARRAY)
        XSRETURN(1);
#ifdef LIBSSH2_VERSION_NUM

SSH2.xs  view on Meta::CPAN

void
net_ss_hostkey_hash(SSH2* ss, SSH2_HOSTKEY_HASH type)
PREINIT:
    const char* hash;
    static STRLEN rglen[] = { 16/*MD5*/, 20/*SHA1*/ };
PPCODE:
    if (type < 1 || type > countof(rglen)) {
        croak("%s::hostkey: unknown hostkey hash: %d",
              class, (int)type);
    }
    if ((hash = (const char*)libssh2_hostkey_hash(ss->session, type))) {

SSH2.xs  view on Meta::CPAN

net_ss_remote_hostkey(SSH2* ss)
PREINIT:
    const char *key_pv;
    size_t key_len;
    int type_int;
PPCODE:
    if ((key_pv = libssh2_session_hostkey(ss->session, &key_len, &type_int))) {
        XPUSHs(sv_2mortal(newSVpvn(key_pv, key_len)));
        if (GIMME_V != G_ARRAY)
            XSRETURN(1);
        else {

SSH2.xs  view on Meta::CPAN

    char *langtag;
    size_t exitsignal_len;
    size_t errmsg_len;
    size_t langtag_len;
    int retcount = 1;
PPCODE:
    if (!libssh2_channel_get_exit_signal(ch->channel,
                                         &exitsignal, &exitsignal_len,
                                         &errmsg, &errmsg_len,
                                         &langtag, &langtag_len)) {
        LIBSSH2_SESSION *session = ch->ss->session;

SSH2.xs  view on Meta::CPAN


void
net_ch_window_write(SSH2_CHANNEL* ch)
PREINIT:
    unsigned long window_size_initial = 0;
PPCODE:
    XPUSHs(sv_2mortal(newSVuv(libssh2_channel_window_write_ex(ch->channel,
                                                              &window_size_initial))));
    if (GIMME_V == G_ARRAY) {
        XPUSHs(sv_2mortal(newSVuv(window_size_initial)));
        XSRETURN(2);

SSH2.xs  view on Meta::CPAN

void
net_ch_window_read(SSH2_CHANNEL *ch)
PREINIT:
    unsigned long read_avail = 0;
    unsigned long window_size_initial = 0;
PPCODE:
    XPUSHs(sv_2mortal(newSVuv(libssh2_channel_window_read_ex(ch->channel,
                                                             &read_avail,
                                                             &window_size_initial))));
    if (GIMME_V == G_ARRAY) {
        XPUSHs(sv_2mortal(newSVuv(read_avail)));

SSH2.xs  view on Meta::CPAN

void
net_sf_error(SSH2_SFTP* sf)
PREINIT:
    unsigned long error;
    SV *errstr;
PPCODE:
    error = libssh2_sftp_last_error(sf->sftp);
    ST(0) = sv_2mortal(newSVuv(error));
    if (GIMME_V == G_ARRAY) {
        EXTEND(SP, 2);
        if ((error >= 0) && (error < countof(sftp_error)))

SSH2.xs  view on Meta::CPAN

PREINIT:
    const char* pv_path;
    STRLEN len_path;
    int error;
    LIBSSH2_SFTP_ATTRIBUTES attrs;
PPCODE:
    pv_path = SvPVbyte(path, len_path);
    error = libssh2_sftp_stat_ex(sf->sftp, (char*)pv_path, len_path,
                                  (follow ? LIBSSH2_SFTP_STAT : LIBSSH2_SFTP_LSTAT),
                                  &attrs);
    if (error < 0)

SSH2.xs  view on Meta::CPAN


void
net_fi_stat(SSH2_FILE* fi)
PREINIT:
    LIBSSH2_SFTP_ATTRIBUTES attrs;
PPCODE:
    if (libssh2_sftp_fstat(fi->handle, &attrs))
        XSRETURN_EMPTY;
    XSRETURN_STAT_ATTRS(NULL/*name*/);

SSH2_NERROR

SSH2.xs  view on Meta::CPAN

PREINIT:
    SV* buffer;
    char* pv_buffer;
    int count;
    LIBSSH2_SFTP_ATTRIBUTES attrs;
PPCODE:
    buffer = newSV(MAXPATHLEN + 1);
    SvPOK_on(buffer);
    pv_buffer = SvPVX(buffer);

    count = libssh2_sftp_readdir(di->handle, pv_buffer, MAXPATHLEN, &attrs);

SSH2.xs  view on Meta::CPAN

void
net_pk_fetch(SSH2_PUBLICKEY* pk)
PREINIT:
    unsigned long keys, i, j;
    libssh2_publickey_list* list = NULL;
PPCODE:
    if (!libssh2_publickey_list_fetch(pk->pkey, &keys, &list) || !list)
        XSRETURN_EMPTY;

    if (GIMME_V == G_ARRAY) {
        EXTEND(SP, keys);

 view all matches for this distribution


Net-SSLeay

 view release on metacpan or  search on metacpan

SSLeay.xs  view on Meta::CPAN

	int     max
    PREINIT:
	char *buf;
	int got;
	int succeeded = 1;
    PPCODE:
	New(0, buf, max, char);

	got = SSL_read(s, buf, max);
	if (got <= 0 && SSL_ERROR_ZERO_RETURN != SSL_get_error(s, got))
	       succeeded = 0;

SSLeay.xs  view on Meta::CPAN

	int     max
    PREINIT:
	char *buf;
	int got;
	int succeeded = 1;
    PPCODE:
	New(0, buf, max, char);

	got = SSL_peek(s, buf, max);
	if (got <= 0 && SSL_ERROR_ZERO_RETURN != SSL_get_error(s, got))
	       succeeded = 0;

SSLeay.xs  view on Meta::CPAN

	int     max
    PREINIT:
	char *buf;
	size_t readbytes;
	int succeeded;
    PPCODE:
	Newx(buf, max, char);

	succeeded = SSL_read_ex(s, buf, max, &readbytes);

	/* Return 2-item list:

SSLeay.xs  view on Meta::CPAN

	int     max
    PREINIT:
	char *buf;
	size_t readbytes;
	int succeeded;
    PPCODE:
	Newx(buf, max, char);

	succeeded = SSL_peek_ex(s, buf, max, &readbytes);

	/* Return 2-item list:

SSLeay.xs  view on Meta::CPAN

	STRLEN len;
	size_t written;
	int succeeded;
    INPUT:
	char *  buf = SvPV( ST(1), len);
    PPCODE:
	succeeded = SSL_write_ex(s, buf, len, &written);

	/* Return 2-item list:
	 *   first return value:  data gotten, or undef on error
	 *   second return value: result from SSL_read_ex()

SSLeay.xs  view on Meta::CPAN

        SSL *              s
    PREINIT:
        STACK_OF(SSL_CIPHER) *sk = NULL;
        const SSL_CIPHER *c;
        int i;
    PPCODE:
        sk = SSL_get_ciphers(s);
        if( sk == NULL ) {
            XSRETURN_EMPTY;
        }
        for (i=0; i<sk_SSL_CIPHER_num(sk); i++) {

SSLeay.xs  view on Meta::CPAN

     SSL *              s
    PREINIT:
        STACK_OF(X509) *chain = NULL;
        X509 *x;
	int i;
    PPCODE:
	chain = SSL_get_peer_cert_chain(s);
	if( chain == NULL ) {
	    XSRETURN_EMPTY;
	}
	for (i=0; i<sk_X509_num(chain); i++) {

SSLeay.xs  view on Meta::CPAN

i2d_SSL_SESSION(sess)
	SSL_SESSION * sess
    PREINIT:
	STRLEN len;
	unsigned char *pc,*pi;
    PPCODE:
	if (!(len = i2d_SSL_SESSION(sess,NULL))) croak("invalid SSL_SESSION");
	Newx(pc,len,unsigned char);
	if (!pc) croak("out of memory");
	pi = pc;
	i2d_SSL_SESSION(sess,&pi);

SSLeay.xs  view on Meta::CPAN

SSL_get_sigalgs(SSL *ssl, int idx)
    PREINIT:
        int n_sigalgs;
        int psign = NID_undef, phash = NID_undef, psignhash = NID_undef;
        unsigned char rsig = 0, rhash = 0;
    PPCODE:
        n_sigalgs = SSL_get_sigalgs(ssl, idx,
                                    &psign, &phash, &psignhash,
                                    &rsig, &rhash);

        EXTEND(SP, 6);

SSLeay.xs  view on Meta::CPAN

SSL_get_shared_sigalgs(SSL *ssl, int idx)
    PREINIT:
        int n_sigalgs;
        int psign = NID_undef, phash = NID_undef, psignhash = NID_undef;
        unsigned char rsig = 0, rhash = 0;
    PPCODE:
        n_sigalgs = SSL_get_shared_sigalgs(ssl, idx,
                                    &psign, &phash, &psignhash,
                                    &rsig, &rhash);

        EXTEND(SP, 6);

SSLeay.xs  view on Meta::CPAN

        BIGNUM *bn = NULL;
        ASN1_INTEGER *sn;
        X509_REVOKED *rev;
        ASN1_ENUMERATED *rsn = NULL;
        int rv;
    PPCODE:
        rv=0;
        rev = X509_REVOKED_new();
        if (rev) {
            if (BN_hex2bn(&bn, serial_hex)) {
                sn = BN_to_ASN1_INTEGER(bn, NULL);

SSLeay.xs  view on Meta::CPAN

    INIT:
        X509_ATTRIBUTE * att;
        int count, i;
        ASN1_STRING * s;
	ASN1_TYPE * t;
    PPCODE:
        att = X509_REQ_get_attr(req,n);
	count = X509_ATTRIBUTE_count(att);
	for (i=0; i<count; i++) {
	    t = X509_ATTRIBUTE_get0_type(att, i);
	    s = t->value.asn1_string;

SSLeay.xs  view on Meta::CPAN

    PREINIT:
        STACK_OF(X509_EXTENSION) *exts = NULL;
        X509_EXTENSION *ext, *tmpext;
        ASN1_OBJECT *obj;
        int i, idx, ret = 1;
    PPCODE:
        if (!x509 || !x509_req) XSRETURN_IV(0);
        exts = X509_REQ_get_extensions(x509_req);
        for(i = 0; i < sk_X509_EXTENSION_num(exts); i++) {
            ext = sk_X509_EXTENSION_value(exts, i);
            obj = X509_EXTENSION_get_object(ext);

SSLeay.xs  view on Meta::CPAN

	int                    i, j, count = 0;
	X509_EXTENSION         *subjAltNameExt = NULL;
	STACK_OF(GENERAL_NAME) *subjAltNameDNs = NULL;
	GENERAL_NAME           *subjAltNameDN  = NULL;
	int                    num_gnames;
	PPCODE:
	if (  (i = X509_get_ext_by_NID(cert, NID_subject_alt_name, -1)) >= 0
		&& (subjAltNameExt = X509_get_ext(cert, i))
		&& (subjAltNameDNs = (STACK_OF(GENERAL_NAME) *)X509V3_EXT_d2i(subjAltNameExt)))
	{
		num_gnames = sk_GENERAL_NAME_num(subjAltNameDNs);

SSLeay.xs  view on Meta::CPAN

        GENERAL_NAMES *gnames;
        GENERAL_NAME *gn;
        STACK_OF(DIST_POINT) *points;
        DIST_POINT *p;
        int i, j;
    PPCODE:
        points = (STACK_OF(DIST_POINT) *)X509_get_ext_d2i(cert, NID_crl_distribution_points, NULL, NULL);
        for (i = 0; i < sk_DIST_POINT_num(points); i++) {
            p = sk_DIST_POINT_value(points, i);
            if (!p->distpoint)
                continue;

SSLeay.xs  view on Meta::CPAN

P_X509_get_ocsp_uri(cert)
	X509 * cert
	PREINIT:
	AUTHORITY_INFO_ACCESS *info;
	int i;
    PPCODE:
	info = (AUTHORITY_INFO_ACCESS *)X509_get_ext_d2i(cert, NID_info_access, NULL, NULL);
	if (!info) XSRETURN_UNDEF;

	for (i = 0; i < sk_ACCESS_DESCRIPTION_num(info); i++) {
	    ACCESS_DESCRIPTION *ad = sk_ACCESS_DESCRIPTION_value(info, i);

SSLeay.xs  view on Meta::CPAN

    PREINIT:
        EXTENDED_KEY_USAGE *extusage;
        int i, nid;
        char buffer[100]; /* openssl doc: a buffer length of 80 should be more than enough to handle any OID encountered in practice */
        ASN1_OBJECT *o;
    PPCODE:
        extusage = (EXTENDED_KEY_USAGE *)X509_get_ext_d2i(cert, NID_ext_key_usage, NULL, NULL);
        for(i = 0; i < sk_ASN1_OBJECT_num(extusage); i++) {
           o = sk_ASN1_OBJECT_value(extusage,i);
           nid = OBJ_obj2nid(o);
           OBJ_obj2txt(buffer, sizeof(buffer)-1, o, 1);

SSLeay.xs  view on Meta::CPAN

void
P_X509_get_key_usage(cert)
        X509 * cert
    INIT:
        ASN1_BIT_STRING * u;
    PPCODE:
        u = (ASN1_BIT_STRING *)X509_get_ext_d2i(cert, NID_key_usage, NULL, NULL);
        if (u) {
            if (ASN1_BIT_STRING_get_bit(u,0)) XPUSHs(sv_2mortal(newSVpv("digitalSignature",0)));
            if (ASN1_BIT_STRING_get_bit(u,1)) XPUSHs(sv_2mortal(newSVpv("nonRepudiation",0)));
            if (ASN1_BIT_STRING_get_bit(u,2)) XPUSHs(sv_2mortal(newSVpv("keyEncipherment",0)));

SSLeay.xs  view on Meta::CPAN

void
P_X509_get_netscape_cert_type(cert)
        X509 * cert
    INIT:
        ASN1_BIT_STRING * u;
    PPCODE:
        u = (ASN1_BIT_STRING *)X509_get_ext_d2i(cert, NID_netscape_cert_type, NULL, NULL);
        if (u) {
            if (ASN1_BIT_STRING_get_bit(u,0)) XPUSHs(sv_2mortal(newSVpv("client",0)));
            if (ASN1_BIT_STRING_get_bit(u,1)) XPUSHs(sv_2mortal(newSVpv("server",0)));
            if (ASN1_BIT_STRING_get_bit(u,2)) XPUSHs(sv_2mortal(newSVpv("email",0)));

SSLeay.xs  view on Meta::CPAN

        ASN1_INTEGER * i
        char * str
    INIT:
        BIGNUM *bn;
        int rv = 1;
    PPCODE:
        bn = BN_new();
        if (!BN_hex2bn(&bn, str)) XSRETURN_IV(0);
        if (!BN_to_ASN1_INTEGER(bn, i)) rv = 0;
        BN_free(bn);
        XSRETURN_IV(rv);

SSLeay.xs  view on Meta::CPAN

        ASN1_INTEGER * i
        char * str
    INIT:
        BIGNUM *bn;
        int rv = 1;
    PPCODE:
        bn = BN_new();
        if (!BN_dec2bn(&bn, str)) XSRETURN_IV(0);
        if (!BN_to_ASN1_INTEGER(bn, i)) rv = 0;
        BN_free(bn);
        XSRETURN_IV(rv);

SSLeay.xs  view on Meta::CPAN

P_ASN1_INTEGER_get_hex(i)
        ASN1_INTEGER * i
    INIT:
        BIGNUM *bn;
        char *result;
    PPCODE:
        bn = BN_new();
        if (!bn) XSRETURN_UNDEF;
        ASN1_INTEGER_to_BN(i, bn);
        result = BN_bn2hex(bn);
        BN_free(bn);

SSLeay.xs  view on Meta::CPAN

P_ASN1_INTEGER_get_dec(i)
        ASN1_INTEGER * i
    INIT:
        BIGNUM *bn;
        char *result;
    PPCODE:
        bn = BN_new();
        if (!bn) XSRETURN_UNDEF;
        ASN1_INTEGER_to_BN(i, bn);
        result = BN_bn2dec(bn);
        BN_free(bn);

SSLeay.xs  view on Meta::CPAN

P_ASN1_STRING_get(s,utf8_decode=0)
        ASN1_STRING * s
        int utf8_decode
    PREINIT:
        SV * u8;
    PPCODE:
#if (OPENSSL_VERSION_NUMBER >= 0x1010000f && !defined(LIBRESSL_VERSION_NUMBER)) || (LIBRESSL_VERSION_NUMBER >= 0x2070000fL)
        u8 = newSVpv((const char*)ASN1_STRING_get0_data(s), ASN1_STRING_length(s));
#else
        u8 = newSVpv((const char*)ASN1_STRING_data(s), ASN1_STRING_length(s));
#endif

SSLeay.xs  view on Meta::CPAN

        X509 *certificate = NULL;
        STACK_OF(X509) *cachain = NULL;
        X509 *x;
        BIO *bio;
        int i, result;
    PPCODE:
        bio = BIO_new_file(file, "rb");
        if (bio) {
            OPENSSL_add_all_algorithms_noconf();
            if ((p12 = d2i_PKCS12_bio(bio, NULL))) {
                if(load_chain)

SSLeay.xs  view on Meta::CPAN

void
SSL_CIPHER_description(const SSL_CIPHER *cipher, char *unused_buf=NULL, int unused_size=0)
    PREINIT:
        char *description;
        char buf[512];
    PPCODE:
        description = SSL_CIPHER_description(cipher, buf, sizeof(buf));
        if(description == NULL) {
            XSRETURN_EMPTY;
        }
        XPUSHs(sv_2mortal(newSVpv(description, 0)));

SSLeay.xs  view on Meta::CPAN

SSL_client_hello_get1_extensions_present(SSL *s)
    PREINIT:
	int ret, *out = NULL, i;
	size_t outlen;
	AV *av;
    PPCODE:
	ret = SSL_client_hello_get1_extensions_present(s, &out, &outlen);
	if (ret != 1) XSRETURN_UNDEF;

	av = newAV();
	mXPUSHs(newRV_noinc((SV*)av));

SSLeay.xs  view on Meta::CPAN

    PREINIT:
	int ret, i;
	uint16_t *exts;
	size_t num_exts;
	AV *av;
    PPCODE:
	ret = SSL_client_hello_get_extension_order(s, NULL, &num_exts);
	if (ret != 1) XSRETURN_UNDEF;

	Newx(exts, num_exts, uint16_t);
	ret = SSL_client_hello_get_extension_order(s, exts, &num_exts);

SSLeay.xs  view on Meta::CPAN

#if (!defined(LIBRESSL_VERSION_NUMBER) && (OPENSSL_VERSION_NUMBER >= 0x1010000fL)) || (defined(LIBRESSL_VERSION_NUMBER) && (LIBRESSL_VERSION_NUMBER >= 0x3050000fL))
    const BIGNUM *n, *e, *d;
    const BIGNUM *p, *q;
    const BIGNUM *dmp1, *dmq1, *iqmp;
#endif
PPCODE:
{
#if (!defined(LIBRESSL_VERSION_NUMBER) && (OPENSSL_VERSION_NUMBER >= 0x1010000fL)) || (defined(LIBRESSL_VERSION_NUMBER) && (LIBRESSL_VERSION_NUMBER >= 0x3050000fL))
    RSA_get0_key(rsa, &n, &e, &d);
    RSA_get0_factors(rsa, &p, &q);
    RSA_get0_crt_params(rsa, &dmp1, &dmq1, &iqmp);

SSLeay.xs  view on Meta::CPAN

        const X509 *data
        const EVP_MD *type
    PREINIT:
        unsigned char md[EVP_MAX_MD_SIZE];
        unsigned int md_size;
    PPCODE:
        if (X509_pubkey_digest(data,type,md,&md_size))
            XSRETURN_PVN((char *)md, md_size);
        else
            XSRETURN_UNDEF;

SSLeay.xs  view on Meta::CPAN

        const X509 *data
        const EVP_MD *type
    PREINIT:
        unsigned char md[EVP_MAX_MD_SIZE];
        unsigned int md_size;
    PPCODE:
        if (X509_digest(data,type,md,&md_size))
            XSRETURN_PVN((char *)md, md_size);
        XSRETURN_UNDEF;

void

SSLeay.xs  view on Meta::CPAN

        const X509_CRL *data
        const EVP_MD *type
    PREINIT:
        unsigned char md[EVP_MAX_MD_SIZE];
        unsigned int md_size;
    PPCODE:
        if (X509_CRL_digest(data,type,md,&md_size))
            XSRETURN_PVN((char *)md, md_size);
        XSRETURN_UNDEF;

void

SSLeay.xs  view on Meta::CPAN

        const X509_REQ *data
        const EVP_MD *type
    PREINIT:
        unsigned char md[EVP_MAX_MD_SIZE];
        unsigned int md_size;
    PPCODE:
        if (X509_REQ_digest(data,type,md,&md_size))
            XSRETURN_PVN((char *)md, md_size);
        XSRETURN_UNDEF;

void

SSLeay.xs  view on Meta::CPAN

        const X509_NAME *data
        const EVP_MD *type
    PREINIT:
        unsigned char md[EVP_MAX_MD_SIZE];
        unsigned int md_size;
    PPCODE:
        if (X509_NAME_digest(data,type,md,&md_size))
            XSRETURN_PVN((char *)md, md_size);
        XSRETURN_UNDEF;

unsigned long

SSLeay.xs  view on Meta::CPAN

   const X509 *x
   PREINIT:
   X509_PUBKEY *pkey;
   STRLEN len;
   unsigned char *pc, *pi;
   PPCODE:
   if (!(pkey = X509_get_X509_PUBKEY(x))) croak("invalid certificate");
   if (!(len = i2d_X509_PUBKEY(pkey, NULL))) croak("invalid certificate public key");
   Newx(pc,len,unsigned char);
   if (!pc) croak("out of memory");
   pi = pc;

SSLeay.xs  view on Meta::CPAN

P_next_proto_negotiated(s)
        const SSL *s
    PREINIT:
        const unsigned char *data;
        unsigned int len;
    PPCODE:
        SSL_get0_next_proto_negotiated(s, &data, &len);
        XPUSHs(sv_2mortal(newSVpv((char *)data, len)));

void
P_next_proto_last_status(s)
        const SSL *s
    PPCODE:
        XPUSHs(sv_2mortal(newSVsv(cb_data_advanced_get((void*)s, "next_proto_select_cb!!last_status"))));

#endif

#if OPENSSL_VERSION_NUMBER >= 0x10000000L

SSLeay.xs  view on Meta::CPAN

i2d_OCSP_RESPONSE(r)
	OCSP_RESPONSE * r
	PREINIT:
	STRLEN len;
	unsigned char *pc,*pi;
    PPCODE:
	if (!(len = i2d_OCSP_RESPONSE(r,NULL))) croak("invalid OCSP response");
	Newx(pc,len,unsigned char);
	if (!pc) croak("out of memory");
	pi = pc;
	i2d_OCSP_RESPONSE(r,&pi);

SSLeay.xs  view on Meta::CPAN

i2d_OCSP_REQUEST(r)
	OCSP_REQUEST * r
	PREINIT:
	STRLEN len;
	unsigned char *pc,*pi;
    PPCODE:
	if (!(len = i2d_OCSP_REQUEST(r,NULL))) croak("invalid OCSP request");
	Newx(pc,len,unsigned char);
	if (!pc) croak("out of memory");
	pi = pc;
	i2d_OCSP_REQUEST(r,&pi);

SSLeay.xs  view on Meta::CPAN

	X509 *cert,*issuer;
	OCSP_CERTID *id;
	int i;
	STRLEN len;
	unsigned char *pi;
    PPCODE:

	if (!ssl) croak("not a SSL object");
	ctx = SSL_get_SSL_CTX(ssl);
	if (!ctx) croak("invalid SSL object - no context");
	store = SSL_CTX_get_cert_store(ctx);

SSLeay.xs  view on Meta::CPAN

	OCSP_BASICRESP *bsr;
	int i,want_array;
	time_t nextupd = 0;
	time_t gmtoff = -1;
	int getall,sksn;
    PPCODE:

	bsr = OCSP_response_get1_basic(rsp);
	if (!bsr) croak("invalid OCSP response");

	want_array = (GIMME_V == G_LIST);

SSLeay.xs  view on Meta::CPAN

P_alpn_selected(s)
        const SSL *s
    PREINIT:
        const unsigned char *data;
        unsigned int len;
    PPCODE:
        SSL_get0_alpn_selected(s, &data, &len);
        XPUSHs(sv_2mortal(newSVpv((char *)data, len)));

#endif

SSLeay.xs  view on Meta::CPAN

        char *context_arg = NULL;
        int use_context = 0;
        int ret;
    INPUT:
        char *  label = SvPV( ST(2), llen);
    PPCODE:
        Newx(out, outlen, unsigned char);

        if (context != &PL_sv_undef) {
            use_context = 1;
            context_arg = SvPV( ST(3), contextlen);

 view all matches for this distribution


Net-Silk

 view release on metacpan or  search on metacpan

Silk.xs  view on Meta::CPAN

    RETVAL

void
num(THIS, ...)
    Net::Silk::IPAddr THIS
    PPCODE:
#if SK_ENABLE_IPV6
    if (skipaddrIsV6(&THIS)) {
        uint8_t *u8 = THIS.ip_ip.ipu_ipv6;
        mXPUSHs(
            newSVu128((((((((((((((((((((((((((((((((uint128_t)u8[0]) << 8)

Silk.xs  view on Meta::CPAN

void
octets(THIS)
    Net::Silk::IPAddr THIS
    PREINIT:
    int i;
    PPCODE:
#if SK_ENABLE_IPV6
    if (skipaddrIsV6(&THIS)) {
        uint8_t v6[16];
        EXTEND(SP, 16);
        skipaddrGetV6(&THIS, v6);

Silk.xs  view on Meta::CPAN

    Net::Silk::IPAddr THIS
    PREINIT:
    char name[3];
    sk_countrycode_t code;
    int rv;
    PPCODE:
    rv = skCountrySetup(NULL, error_printf);
    if (rv != 0)
        croak("%s", error_buffer);
    code = skCountryLookupCode(&THIS);
    if (code != SK_COUNTRYCODE_INVALID)

Silk.xs  view on Meta::CPAN

next(THIS)
    Net::Silk::IPWildcard::iter_xs THIS
    PREINIT:
    skipaddr_t         raw_addr;
    skIteratorStatus_t rv;
    PPCODE:
    rv = skIPWildcardIteratorNext(THIS, &raw_addr);
    if (rv != SK_ITERATOR_NO_MORE_ENTRIES)
        mXPUSHs(newSvIPADDR(aTHX_ &raw_addr));

void

Silk.xs  view on Meta::CPAN

    Net::Silk::IPWildcard::iter_xs THIS
    PREINIT:
    skipaddr_t         raw_addr;
    uint32_t           raw_prefix;
    skIteratorStatus_t rv;
    PPCODE:
    rv = skIPWildcardIteratorNextCidr(THIS, &raw_addr, &raw_prefix);
    if (rv != SK_ITERATOR_NO_MORE_ENTRIES) {
        mXPUSHs(newSvIPADDR(aTHX_ &raw_addr));
        mXPUSHu(raw_prefix);
    }

Silk.xs  view on Meta::CPAN

#if SK_ENABLE_IPV6
    uint128_t total;
#else
    uint64_t  total;
#endif
    PPCODE:
    total = 0;
    for (i = 0; i < THIS.num_blocks; ++i) {
        bittotal = 0;
        for (j = THIS.m_min[i] >> 5; j <= THIS.m_max[i] >> 5; ++j) {
            BITS_IN_WORD32(&bitcount, THIS.m_blocks[i][j]);

Silk.xs  view on Meta::CPAN

    Net::Silk::IPSet::iter_xs THIS
    PREINIT:
    skipaddr_t  raw_addr;
    uint32_t    raw_prefix;
    int         rv;
    PPCODE:
    rv = skIPSetIteratorNext(THIS, &raw_addr, &raw_prefix);
    if (rv != SK_ITERATOR_NO_MORE_ENTRIES) {
        mXPUSHs(newSvIPADDR(aTHX_ &raw_addr));
        if (THIS->cidr_blocks)
            mXPUSHu(raw_prefix);

Silk.xs  view on Meta::CPAN

    skBagCounterType_t  counter_type
    PREINIT:
    skBagTypedKey_t     key;
    skBagTypedCounter_t counter;
    skBagErr_t          rv;
    PPCODE:
    key.type     = key_type;
    counter.type = counter_type;
    rv = skBagIteratorNextTyped(THIS, &key, &counter);
    if (rv != SKBAG_ERR_KEY_NOT_FOUND) {
        if (rv != SKBAG_OK)

Silk.xs  view on Meta::CPAN

    Net::Silk::Bag THIS
    PREINIT:
    skBagFieldType_t type;
    size_t           len; 
    char             buf[80];
    PPCODE:
    type = skBagKeyFieldName(THIS, buf, sizeof(buf));
    len  = skBagKeyFieldLength(THIS);
    mXPUSHu(type);
    mXPUSHu(len);
    if (IS_IP_KEY(type)) {

Silk.xs  view on Meta::CPAN

    PREINIT:
    uint32_t           val;
    skipaddr_t         lo;
    skipaddr_t         hi;
    skIteratorStatus_t rv;
    PPCODE:
    rv = skPrefixMapIteratorNext(THIS, &lo, &hi, &val);
    if (rv != SK_ITERATOR_NO_MORE_ENTRIES) {
        if (rv != SK_ITERATOR_OK)
            croak("error %d pmap iterator", rv);
        mXPUSHs(newSvIPADDR(aTHX_ &lo));

Silk.xs  view on Meta::CPAN

    PREINIT:
    uint32_t               val;
    skPrefixMapProtoPort_t lo;
    skPrefixMapProtoPort_t hi;
    skIteratorStatus_t     rv;
    PPCODE:
    rv = skPrefixMapIteratorNext(THIS, &lo, &hi, &val);
    if (rv != SK_ITERATOR_NO_MORE_ENTRIES) {
        if (rv != SK_ITERATOR_OK)
            croak("error %d pmap iterator", rv);
        mXPUSHs(newSvPROTOPORT(aTHX_ lo));

Silk.xs  view on Meta::CPAN

save(THIS, fname)
    Net::Silk::Pmap  THIS
    const char      *fname
    PREINIT:
    skPrefixMapErr_t rv;
    PPCODE:
    rv = skPrefixMapSave(THIS, fname);
    if (rv != SKPREFIXMAP_OK)
        croak("error %d saving prefix map to %s: %s",
              rv, fname, skPrefixMapStrerror(rv));

Silk.xs  view on Meta::CPAN

_set_content_type(THIS, type)
    Net::Silk::Pmap      THIS
    skPrefixMapContent_t type
    PREINIT:
    skPrefixMapErr_t rv;
    PPCODE:
    rv = skPrefixMapSetContentType(THIS, type);
    if (rv != SKPREFIXMAP_OK)
        croak("error %d setting pmap content type: %s",
              rv, skPrefixMapStrerror(rv));

Silk.xs  view on Meta::CPAN

_set_default_value(THIS, val)
    Net::Silk::Pmap THIS
    uint32_t        val
    PREINIT:
    skPrefixMapErr_t rv;
    PPCODE:
    rv = skPrefixMapSetDefaultVal(THIS, val);
    if (rv != SKPREFIXMAP_OK)
        croak("error %d setting default pmap value: %s",
               rv, skPrefixMapStrerror(rv));

Silk.xs  view on Meta::CPAN

    Net::Silk::Pmap THIS
    uint32_t        val
    const char     *label
    PREINIT:
    skPrefixMapErr_t rv;
    PPCODE:
    rv = skPrefixMapDictionaryInsert(THIS, val, label);
    if (rv != SKPREFIXMAP_OK)
        croak("error %d inserting pmap label: %s",
               rv, skPrefixMapStrerror(rv));

Silk.xs  view on Meta::CPAN

_label_to_val(THIS, label)
    Net::Silk::Pmap  THIS
    char *label
    PREINIT:
    uint32_t  idx;
    PPCODE:
    idx = skPrefixMapDictionaryLookup(THIS, label);
    if (idx != SKPREFIXMAP_NOT_FOUND)
        mXPUSHu(idx);

void

Silk.xs  view on Meta::CPAN

    uint32_t    max_size
    PREINIT:
    char     *buf;
    uint32_t  len;
    int       rv;
    PPCODE:
    if (val != SKPREFIXMAP_NOT_FOUND && val >= 0) {
        if (val >= skPrefixMapDictionaryGetWordCount(THIS))
            croak("invalid value index (%u out of range 0-%u)",
                  val, skPrefixMapDictionaryGetWordCount(THIS));
        // len = skPrefixMapDictionaryGetMaxWordSize(THIS) + 1;

Silk.xs  view on Meta::CPAN

    skipaddr_t             addr_hi;
    skPrefixMapProtoPort_t pp_lo;
    skPrefixMapProtoPort_t pp_hi;
    skPrefixMapContent_t   content;
    skPrefixMapErr_t       rv;
    PPCODE:
    content = skPrefixMapGetContentType(THIS);
    switch (content) {
      case SKPREFIXMAP_CONT_ADDR_V4:
        addr_lo = SvIPV4ADDR(aTHX_ sv_lo);
        addr_hi = SvIPV4ADDR(aTHX_ sv_hi);

Silk.xs  view on Meta::CPAN

    skPrefixMapProtoPort_t pp_key;
    skPrefixMapProtoPort_t pp_lo;
    skPrefixMapProtoPort_t pp_hi;
    skPrefixMapContent_t   content;
    skPrefixMapErr_t       rv;
    PPCODE:
    content = skPrefixMapGetContentType(THIS);
    switch (content) {
      case SKPREFIXMAP_CONT_ADDR_V4:
        addr_key = SvIPV4ADDR(aTHX_ sv_key);
        rv = skPrefixMapFindRange(THIS, &addr_key, &addr_lo, &addr_hi);

Silk.xs  view on Meta::CPAN

    void *key = NULL;
    uint32_t               val;
    skipaddr_t             addr;
    skPrefixMapProtoPort_t pp;
    skPrefixMapContent_t   content;
    PPCODE:
    content = skPrefixMapGetContentType(THIS);
    switch (content) {
      case SKPREFIXMAP_CONT_ADDR_V4:
        addr = SvIPV4ADDR(aTHX_ sv_key);
        key = &addr;

Silk.xs  view on Meta::CPAN

parse_high_mask(repr)
    const char *repr
    PREINIT:
    int     rv;
    uint8_t high, mask;
    PPCODE:
    rv = skStringParseTCPFlagsHighMask(&high, &mask, repr);
    if (rv == SKUTILS_ERR_SHORT) {
        mask = high;
    } else if (rv != SKUTILS_OK) {
        croak("Illegal flag/mask: %s", repr);

Silk.xs  view on Meta::CPAN

    Net::Silk::Site::iter_xs    THIS
    PREINIT:
    char path[PATH_MAX];
    int  missing;
    int  rv;
    PPCODE:
    rv = sksiteRepoIteratorNextPath(THIS, path, sizeof(path), &missing);
    if (rv != SK_ITERATOR_NO_MORE_ENTRIES) {
        mXPUSHs(newSVpvn(path, strlen(path)));
    }

Silk.xs  view on Meta::CPAN

void
sensor_ids()
    PREINIT:
    sk_sensor_iter_t sensor_iter;
    sk_sensor_id_t   id;
    PPCODE:
    sksiteSensorIterator(&sensor_iter);
    while (sksiteSensorIteratorNext(&sensor_iter, &id)) {
        mXPUSHu(id);
    }

Silk.xs  view on Meta::CPAN

sensor_classes_by_id(id)
    sk_sensor_id_t id
    PREINIT:
    sk_class_iter_t class_iter;
    sk_class_id_t   class;
    PPCODE:
    sksiteSensorClassIterator(id, &class_iter);
    while (sksiteClassIteratorNext(&class_iter, &class)) {
        mXPUSHu(class);
    }

Silk.xs  view on Meta::CPAN

void
class_ids()
    PREINIT:
    sk_class_iter_t class_iter;
    sk_class_id_t   id;
    PPCODE:
    sksiteClassIterator(&class_iter);
    while (sksiteClassIteratorNext(&class_iter, &id)) {
        mXPUSHu(id);
    }

Silk.xs  view on Meta::CPAN

class_sensors_by_id(id)
    sk_class_id_t id
    PREINIT:
    sk_sensor_iter_t sensor_iter;
    sk_sensor_id_t   sensor;
    PPCODE:
    sksiteClassSensorIterator(id, &sensor_iter);
    while (sksiteSensorIteratorNext(&sensor_iter, &sensor)) {
        mXPUSHu(sensor);
    }

Silk.xs  view on Meta::CPAN

class_flowtypes_by_id(id)
    sk_class_id_t id
    PREINIT:
    sk_flowtype_iter_t flowtype_iter;
    sk_flowtype_id_t   flowtype;
    PPCODE:
    sksiteClassFlowtypeIterator(id, &flowtype_iter);
    while (sksiteFlowtypeIteratorNext(&flowtype_iter, &flowtype)) {
        mXPUSHu(flowtype);
    }

Silk.xs  view on Meta::CPAN

class_default_flowtypes_by_id(id)
    sk_class_id_t id
    PREINIT:
    sk_flowtype_iter_t flowtype_iter;
    sk_flowtype_id_t   flowtype;
    PPCODE:
    sksiteClassDefaultFlowtypeIterator(id, &flowtype_iter);
    while (sksiteFlowtypeIteratorNext(&flowtype_iter, &flowtype)) {
        mXPUSHu(flowtype);
    }

Silk.xs  view on Meta::CPAN

void
flowtype_ids()
    PREINIT:
    sk_flowtype_iter_t flowtype_iter;
    sk_flowtype_id_t   id;
    PPCODE:
    sksiteFlowtypeIterator(&flowtype_iter);
    while (sksiteFlowtypeIteratorNext(&flowtype_iter, &id)) {
        mXPUSHu(id);
    }

Silk.xs  view on Meta::CPAN

void
to_ipv4(THIS)
    Net::Silk::RWRec    THIS
    PREINIT:
    rwRec       copy;
    PPCODE:
    copy = *THIS;
#if SK_ENABLE_IPV6
    if (rwRecIsIPv6(&copy)) {
        if (!rwRecConvertToIPv4(&copy))
            goto proceed;

Silk.xs  view on Meta::CPAN

    rwRecSetTcpState(THIS, state);

void
get_initial_tcpflags(THIS)
    Net::Silk::RWRec    THIS
    PPCODE:
    if (!(!(rwRecGetTcpState(THIS) & SK_TCPSTATE_EXPANDED)))
        mXPUSHs(newSvTCPFLAGS(aTHX_ rwRecGetInitFlags(THIS)));

void
set_initial_tcpflags(THIS, flags)

Silk.xs  view on Meta::CPAN

    rwRecSetFlags(THIS, rwRecGetRestFlags(THIS) | flags);

void
get_session_tcpflags(THIS)
    Net::Silk::RWRec    THIS
    PPCODE:
    if (!(!(rwRecGetTcpState(THIS) & SK_TCPSTATE_EXPANDED)))
        mXPUSHs(newSvTCPFLAGS(aTHX_ rwRecGetRestFlags(THIS)));

void
set_session_tcpflags(THIS, flags)

Silk.xs  view on Meta::CPAN

    PREINIT:
    sk_file_header_t     *hdr;
    sk_header_entry_t    *entry;
    sk_hentry_iterator_t  iter;
    const char           *invoc;
    PPCODE:
    hdr = skStreamGetSilkHeader(THIS);
    if (hdr != NULL) {
        skHeaderIteratorBindType(&iter, hdr, SK_HENTRY_INVOCATION_ID);
        while ((entry = skHeaderIteratorNext(&iter)) != NULL) {
            //invoc = ((sk_hentry_invocation_t*)entry)->command_line;

Silk.xs  view on Meta::CPAN

    PREINIT:
    sk_file_header_t     *hdr;
    sk_header_entry_t    *entry;
    sk_hentry_iterator_t  iter;
    const char           *annot;
    PPCODE:
    hdr = skStreamGetSilkHeader(THIS);
    if (hdr != NULL) {
        skHeaderIteratorBindType(&iter, hdr, SK_HENTRY_ANNOTATION_ID);
        while ((entry = skHeaderIteratorNext(&iter)) != NULL) {
            //annot = ((sk_hentry_annotation_t*)entry)->annotation;

Silk.xs  view on Meta::CPAN

read(THIS)
    Net::Silk::File::io_xs THIS
    PREINIT:
    int   rv;
    rwRec rec;
    PPCODE:
    rv = skStreamReadRecord(THIS, &rec);
    if (rv == 0) {
        mXPUSHs(newSvRWREC(aTHX_ &rec));
    } else if (rv != SKSTREAM_ERR_EOF) {
        _stream_croak(aTHX_ THIS, rv);

 view all matches for this distribution


Net-TCPwrappers

 view release on metacpan or  search on metacpan

fallback/const-xs.inc  view on Meta::CPAN

	/* NV		nv;	Uncomment this if you need to return NVs */
	/* const char	*pv;	Uncomment this if you need to return PVs */
    INPUT:
	SV *		sv;
        const char *	s = SvPV(sv, len);
    PPCODE:
        /* Change this to constant(aTHX_ s, len, &iv, &nv);
           if you need to return both NVs and IVs */
	type = constant(aTHX_ s, len, &iv);
      /* Return 1 or 2 items. First is error message, or undef if no error.
           Second, if present, is found value */

 view all matches for this distribution


Net-WDNS

 view release on metacpan or  search on metacpan

WDNS.xs  view on Meta::CPAN

    STRLEN      name_len;
    size_t      sz;
    wdns_res    res;
    const char *rstr;
    char        rev[WDNS_MAXLEN_NAME];
    PPCODE:
    name = (void *)SvPV(sv_name, name_len);
    res = wdns_len_uname(name, name + name_len, &sz);
    if (res != wdns_res_success) {
        rstr = wdns_res_to_str(res);
        croak("problem determining name length (err %d: %s)", (int)res, rstr);

WDNS.xs  view on Meta::CPAN

    wdns_name_t  chop;
    wdns_name_t  name;
    size_t       sz;
    wdns_res     res;
    const char  *rstr;
    PPCODE:
    name.data = (void *)SvPV(sv_name, name_len);
    name.len  = name_len;
    res = wdns_len_uname(name.data, name.data + name.len, &sz);
    if (res != wdns_res_success) {
        rstr = wdns_res_to_str(res);

WDNS.xs  view on Meta::CPAN

    PREINIT:
    const uint8_t  *src;
    STRLEN          src_len;
    char            tgt[WDNS_PRESLEN_NAME];
    STRLEN          tgt_len;
    PPCODE:
    src = (void *)SvPV(src_sv, src_len);
    tgt_len = wdns_domain_to_str(src, src_len, tgt);
    // tgt_len is number of bytes read from source, not length of result
    if (tgt_len != 0)
        mXPUSHs(newSVpv(tgt, 0));

WDNS.xs  view on Meta::CPAN

wdns_rrset_array_to_str(a, sec)
    wdns_rrset_array_t *a
    unsigned            sec
    PREINIT:
    char *str;
    PPCODE:
    str = wdns_rrset_array_to_str(a, sec);
    mXPUSHs(newSVpv(str, 0));
    Safefree(str);

void
wdns_rrset_to_str(rrset, sec)
    wdns_rrset_t *rrset
    unsigned      sec
    PREINIT:
    char *str;
    PPCODE:
    str = wdns_rrset_to_str(rrset, sec);
    mXPUSHs(newSVpv(str, 0));
    Safefree(str);

void
rr_to_str(rr, sec)
    wdns_rr_t  *rr
    unsigned    sec
    PREINIT:
    char *str;
    PPCODE:
    str = wdns_rr_to_str(rr, sec);
    mXPUSHs(newSVpv(str, 0));
    Safefree(str);

void

WDNS.xs  view on Meta::CPAN

    uint16_t  rrclass
    PREINIT:
    STRLEN  rdlen;
    char   *src_str;
    char   *tgt_str;
    PPCODE:
    src_str = SvPV(sv_rdata, rdlen);
    tgt_str = wdns_rdata_to_str(src_str, (uint16_t)rdlen, rrtype, rrclass);
    mXPUSHs(newSVpv(tgt_str, 0));
    Safefree(tgt_str);

WDNS.xs  view on Meta::CPAN

    PREINIT:
    uint8_t    *rd;
    size_t      rdlen;
    wdns_res    res;
    const char *rstr;
    PPCODE:
    res = wdns_str_to_rdata(str, rrtype, rrclass, &rd, &rdlen);
    if (res != wdns_res_success) {
        rstr = wdns_res_to_str(res);
        croak("problem converting str to rdata (err %d: %s)", (int)res, rstr);
    }

WDNS.xs  view on Meta::CPAN

    char  *src
    PREINIT:
    wdns_name_t  name;
    wdns_res     res;
    const char  *rstr;
    PPCODE:
    res = wdns_str_to_name(src, &name);
    if (res != wdns_res_success) {
        rstr = wdns_res_to_str(res);
        croak("problem converting str to name (err %d: %s)", (int)res, rstr);
    }

WDNS.xs  view on Meta::CPAN

    char  *src
    PREINIT:
    wdns_name_t  name;
    wdns_res     res;
    const char  *rstr;
    PPCODE:
    res = wdns_str_to_name_case(src, &name);
    if (res != wdns_res_success) {
        rstr = wdns_res_to_str(res);
        croak("problem converting str to name case (err %d: %s)",
              (int)res, rstr);

WDNS.xs  view on Meta::CPAN

void
message_to_str(m)
    wdns_message_t *m
    PREINIT:
    char *str;
    PPCODE:
    str = wdns_message_to_str(m);
    mXPUSHs(newSVpv(str, 0));
    Safefree(str);

void

WDNS.xs  view on Meta::CPAN

    AV                 *section;
    AV                 *rrset;
    AV                 *rdata;
    SV                 *rd;
    SV                 *rs;
    PPCODE:
    if (i >= 4)
        croak("section out of range (0-3)");
    a = &m->sections[i];
    section = newAV();
    mXPUSHs(newRV_noinc((SV *)section));

 view all matches for this distribution


Net-ZooKeeper

 view release on metacpan or  search on metacpan

ZooKeeper.xs  view on Meta::CPAN

        ZOO_CREATOR_ALL_ACL = 3
    PREINIT:
        struct ACL_vector acl;
        AV *acl_arr;
        int i;
    PPCODE:
        if (!ix && !alias) {
            alias = GvNAME(CvGV(cv));
        }

        if (ix == 1 || (alias != NULL && strEQ(alias, "ZOO_OPEN_ACL_UNSAFE"))) {

ZooKeeper.xs  view on Meta::CPAN



void
zk_set_log_level(level)
        int level
    PPCODE:
        if (level < ZOO_LOG_LEVEL_OFF || level > ZOO_LOG_LEVEL_DEBUG) {
            Perl_croak(aTHX_ "invalid log level: %d", level);
        }

        zoo_set_debug_level(level);

ZooKeeper.xs  view on Meta::CPAN



void
zk_set_deterministic_conn_order(flag)
        bool flag
    PPCODE:
        zoo_deterministic_conn_order(!!flag);

        XSRETURN_EMPTY;

void
zk_set_ignore_session_events(flag)
        bool flag
    PPCODE:
        zk_ignore_session_events = flag;

        XSRETURN_EMPTY;

void

ZooKeeper.xs  view on Meta::CPAN

        zk_t *zk;
        zk_handle_t *handle;
        HV *stash, *zk_hash, *attr_hash;
        SV *attr;
        int i;
    PPCODE:
        if (items > 2 && items % 2) {
            Perl_croak(aTHX_ "invalid number of arguments");
        }

        for (i = 2; i < items; i += 2) {

ZooKeeper.xs  view on Meta::CPAN

        Net::ZooKeeper zkh
    PREINIT:
        zk_handle_t *handle;
        HV *attr_hash;
        int ret = ZBADARGUMENTS;
    PPCODE:
        handle = _zk_check_handle_outer(aTHX_ zkh, &attr_hash,
                                        PACKAGE_NAME, PACKAGE_SIGNATURE);

        if (!handle) {
            handle = _zk_check_handle_inner(aTHX_ zkh, PACKAGE_SIGNATURE);

ZooKeeper.xs  view on Meta::CPAN



void
zk_CLONE(package)
        char *package
    PPCODE:
        XSRETURN_EMPTY;


void
zk_CLONE_SKIP(package)
        char *package
    PPCODE:
        XSRETURN_YES;


void
zk_TIEHASH(package, ...)
        char *package
    PPCODE:
        Perl_croak(aTHX_ "tying hashes of class "
                         PACKAGE_NAME " not supported");


void
zk_UNTIE(attr_hash, ref_count)
        Net::ZooKeeper attr_hash
        IV ref_count
    PPCODE:
        Perl_croak(aTHX_ "untying hashes of class "
                         PACKAGE_NAME " not supported");


void
zk_FIRSTKEY(attr_hash)
        Net::ZooKeeper attr_hash
    PREINIT:
        zk_t *zk;
    PPCODE:
        zk = _zk_get_handle_inner(aTHX_ attr_hash);

        if (!zk) {
            Perl_croak(aTHX_ "invalid handle");
        }

ZooKeeper.xs  view on Meta::CPAN

        SV *attr_key
    PREINIT:
        zk_t *zk;
        char *key;
        int i;
    PPCODE:
        zk = _zk_get_handle_inner(aTHX_ attr_hash);

        if (!zk) {
            Perl_croak(aTHX_ "invalid handle");
        }

ZooKeeper.xs  view on Meta::CPAN



void
zk_SCALAR(attr_hash)
        Net::ZooKeeper attr_hash
    PPCODE:
        XSRETURN_YES;


void
zk_FETCH(attr_hash, attr_key)

ZooKeeper.xs  view on Meta::CPAN

        SV *attr_key
    PREINIT:
        zk_t *zk;
        char *key;
        SV *val = NULL;
    PPCODE:
        zk = _zk_get_handle_inner(aTHX_ attr_hash);

        if (!zk) {
            Perl_croak(aTHX_ "invalid handle");
        }

ZooKeeper.xs  view on Meta::CPAN

        SV *attr_key
        SV *attr_val
    PREINIT:
        zk_t *zk;
        char *key;
    PPCODE:
        zk = _zk_get_handle_inner(aTHX_ attr_hash);

        if (!zk) {
            Perl_croak(aTHX_ "invalid handle");
        }

ZooKeeper.xs  view on Meta::CPAN

        SV *attr_key
    PREINIT:
        zk_t *zk;
        char *key;
        int i;
    PPCODE:
        zk = _zk_get_handle_inner(aTHX_ attr_hash);

        if (!zk) {
            Perl_croak(aTHX_ "invalid handle");
        }

ZooKeeper.xs  view on Meta::CPAN


void
zk_DELETE(attr_hash, attr_key)
        Net::ZooKeeper attr_hash
        SV *attr_key
    PPCODE:
        Perl_warn(aTHX_ "deleting elements from hashes of class "
                        PACKAGE_NAME " not supported");

        XSRETURN_EMPTY;


void
zk_CLEAR(attr_hash)
        Net::ZooKeeper attr_hash
    PPCODE:
        Perl_warn(aTHX_ "clearing hashes of class "
                        PACKAGE_NAME " not supported");

        XSRETURN_EMPTY;

ZooKeeper.xs  view on Meta::CPAN

    PREINIT:
        zk_t *zk;
        STRLEN cert_len;
        zk_watch_t *watch;
        int ret;
    PPCODE:
        zk = _zk_get_handle_outer(aTHX_ zkh);

        if (!zk) {
            Perl_croak(aTHX_ "invalid handle");
        }

ZooKeeper.xs  view on Meta::CPAN

        char *path_buf;
        int path_buf_len;
        AV *acl_arr = NULL;
        struct ACL_vector acl;
        int i, ret;
    PPCODE:
        zk = _zk_get_handle_outer(aTHX_ zkh);

        if (!zk) {
            Perl_croak(aTHX_ "invalid handle");
        }

ZooKeeper.xs  view on Meta::CPAN

        char *path
    PREINIT:
        zk_t *zk;
        int version = -1;
        int i, ret;
    PPCODE:
        zk = _zk_get_handle_outer(aTHX_ zkh);

        if (!zk) {
            Perl_croak(aTHX_ "invalid handle");
        }

ZooKeeper.xs  view on Meta::CPAN

        zk_watch_t *old_watch = NULL;
        zk_handle_t *watch_handle = NULL;
        watcher_fn watcher = NULL;
        zk_watch_t *new_watch = NULL;
        int i, ret;
    PPCODE:
        zk = _zk_get_handle_outer(aTHX_ zkh);

        if (!zk) {
            Perl_croak(aTHX_ "invalid handle");
        }

ZooKeeper.xs  view on Meta::CPAN

        zk_handle_t *watch_handle = NULL;
        watcher_fn watcher = NULL;
        zk_watch_t *new_watch = NULL;
        struct String_vector strings;
        int i, ret;
    PPCODE:
        zk = _zk_get_handle_outer(aTHX_ zkh);

        if (!zk) {
            Perl_croak(aTHX_ "invalid handle");
        }

ZooKeeper.xs  view on Meta::CPAN

        zk_handle_t *watch_handle = NULL;
        char *buf;
        watcher_fn watcher = NULL;
        zk_watch_t *new_watch = NULL;
        int i, ret;
    PPCODE:
        zk = _zk_get_handle_outer(aTHX_ zkh);

        if (!zk) {
            Perl_croak(aTHX_ "invalid handle");
        }

ZooKeeper.xs  view on Meta::CPAN

        zk_t *zk;
        int version = -1;
        zk_stat_t *stat = NULL;
        STRLEN buf_len;
        int i, ret;
    PPCODE:
        zk = _zk_get_handle_outer(aTHX_ zkh);

        if (!zk) {
            Perl_croak(aTHX_ "invalid handle");
        }

ZooKeeper.xs  view on Meta::CPAN

    PREINIT:
        zk_t *zk;
        zk_stat_t *stat = NULL;
        struct ACL_vector acl;
        int i, ret;
    PPCODE:
        zk = _zk_get_handle_outer(aTHX_ zkh);

        if (!zk) {
            Perl_croak(aTHX_ "invalid handle");
        }

ZooKeeper.xs  view on Meta::CPAN

        zk_t *zk;
        const char *err;
        int version = -1;
        struct ACL_vector acl;
        int i, ret;
    PPCODE:
        zk = _zk_get_handle_outer(aTHX_ zkh);

        if (!zk) {
            Perl_croak(aTHX_ "invalid handle");
        }

ZooKeeper.xs  view on Meta::CPAN

    PREINIT:
        zk_t *zk;
        zk_handle_t *handle;
        HV *stash, *stat_hash, *attr_hash;
        SV *attr;
    PPCODE:
        zk = _zk_get_handle_outer(aTHX_ zkh);

        if (!zk) {
            Perl_croak(aTHX_ "invalid handle");
        }

ZooKeeper.xs  view on Meta::CPAN

        zk_watch_t *watch;
        zk_handle_t *handle;
        HV *stash, *watch_hash, *attr_hash;
        SV *attr;
        int i;
    PPCODE:
        zk = _zk_get_handle_outer(aTHX_ zkh);

        if (!zk) {
            Perl_croak(aTHX_ "invalid handle");
        }

ZooKeeper.xs  view on Meta::CPAN

        Net::ZooKeeper::Stat zksh
    PREINIT:
        zk_handle_t *handle;
        HV *attr_hash;
        int ret = ZBADARGUMENTS;
    PPCODE:
        handle = _zk_check_handle_outer(aTHX_ zksh, &attr_hash,
                                        STAT_PACKAGE_NAME,
                                        STAT_PACKAGE_SIGNATURE);

        if (!handle) {

ZooKeeper.xs  view on Meta::CPAN



void
zks_CLONE(package)
        char *package
    PPCODE:
        XSRETURN_EMPTY;


void
zks_CLONE_SKIP(package)
        char *package
    PPCODE:
        XSRETURN_YES;


void
zks_TIEHASH(package, ...)
        char *package
    PPCODE:
        Perl_croak(aTHX_ "tying hashes of class "
                         STAT_PACKAGE_NAME " not supported");


void
zks_UNTIE(attr_hash, ref_count)
        Net::ZooKeeper::Stat attr_hash
        IV ref_count
    PPCODE:
        Perl_croak(aTHX_ "untying hashes of class "
                         STAT_PACKAGE_NAME " not supported");


void
zks_FIRSTKEY(attr_hash)
        Net::ZooKeeper::Stat attr_hash
    PREINIT:
        zk_stat_t *stat;
    PPCODE:
        stat = _zks_get_handle_inner(aTHX_ attr_hash);

        if (!stat) {
            Perl_croak(aTHX_ "invalid handle");
        }

ZooKeeper.xs  view on Meta::CPAN

        SV *attr_key
    PREINIT:
        zk_stat_t *stat;
        char *key;
        int i;
    PPCODE:
        stat = _zks_get_handle_inner(aTHX_ attr_hash);

        if (!stat) {
            Perl_croak(aTHX_ "invalid handle");
        }

ZooKeeper.xs  view on Meta::CPAN



void
zks_SCALAR(attr_hash)
        Net::ZooKeeper::Stat attr_hash
    PPCODE:
        XSRETURN_YES;


void
zks_FETCH(attr_hash, attr_key)

ZooKeeper.xs  view on Meta::CPAN

    PREINIT:
        zk_stat_t *stat;
        char *key;
        SV *val = NULL;
        int i;
    PPCODE:
        stat = _zks_get_handle_inner(aTHX_ attr_hash);

        if (!stat) {
            Perl_croak(aTHX_ "invalid handle");
        }

ZooKeeper.xs  view on Meta::CPAN

        SV *attr_val
    PREINIT:
        zk_stat_t *stat;
        char *key;
        int i;
    PPCODE:
        stat = _zks_get_handle_inner(aTHX_ attr_hash);

        if (!stat) {
            Perl_croak(aTHX_ "invalid handle");
        }

ZooKeeper.xs  view on Meta::CPAN

        SV *attr_key
    PREINIT:
        zk_stat_t *stat;
        char *key;
        int i;
    PPCODE:
        stat = _zks_get_handle_inner(aTHX_ attr_hash);

        if (!stat) {
            Perl_croak(aTHX_ "invalid handle");
        }

ZooKeeper.xs  view on Meta::CPAN


void
zks_DELETE(attr_hash, attr_key)
        Net::ZooKeeper::Stat attr_hash
        SV *attr_key
    PPCODE:
        Perl_warn(aTHX_ "deleting elements from hashes of class "
                        STAT_PACKAGE_NAME " not supported");

        XSRETURN_EMPTY;


void
zks_CLEAR(attr_hash)
        Net::ZooKeeper::Stat attr_hash
    PPCODE:
        Perl_warn(aTHX_ "clearing hashes of class "
                        STAT_PACKAGE_NAME " not supported");

        XSRETURN_EMPTY;

ZooKeeper.xs  view on Meta::CPAN

        Net::ZooKeeper::Watch zkwh
    PREINIT:
        zk_handle_t *handle;
        HV *attr_hash;
        int ret = ZBADARGUMENTS;
    PPCODE:
        handle = _zk_check_handle_outer(aTHX_ zkwh, &attr_hash,
                                        WATCH_PACKAGE_NAME,
                                        WATCH_PACKAGE_SIGNATURE);

        if (!handle) {

ZooKeeper.xs  view on Meta::CPAN



void
zkw_CLONE(package)
        char *package
    PPCODE:
        XSRETURN_EMPTY;


void
zkw_CLONE_SKIP(package)
        char *package
    PPCODE:
        XSRETURN_YES;


void
zkw_TIEHASH(package, ...)
        char *package
    PPCODE:
        Perl_croak(aTHX_ "tying hashes of class "
                         WATCH_PACKAGE_NAME " not supported");


void
zkw_UNTIE(attr_hash, ref_count)
        Net::ZooKeeper::Watch attr_hash
        IV ref_count
    PPCODE:
        Perl_croak(aTHX_ "untying hashes of class "
                         WATCH_PACKAGE_NAME " not supported");


void
zkw_FIRSTKEY(attr_hash)
        Net::ZooKeeper::Watch attr_hash
    PREINIT:
        zk_watch_t *watch;
    PPCODE:
        watch = _zkw_get_handle_inner(aTHX_ attr_hash);

        if (!watch) {
            Perl_croak(aTHX_ "invalid handle");
        }

ZooKeeper.xs  view on Meta::CPAN

        SV *attr_key
    PREINIT:
        zk_watch_t *watch;
        char *key;
        int i;
    PPCODE:
        watch = _zkw_get_handle_inner(aTHX_ attr_hash);

        if (!watch) {
            Perl_croak(aTHX_ "invalid handle");
        }

ZooKeeper.xs  view on Meta::CPAN



void
zkw_SCALAR(attr_hash)
        Net::ZooKeeper::Watch attr_hash
    PPCODE:
        XSRETURN_YES;


void
zkw_FETCH(attr_hash, attr_key)

ZooKeeper.xs  view on Meta::CPAN

        SV *attr_key
    PREINIT:
        zk_watch_t *watch;
        char *key;
        SV *val = NULL;
    PPCODE:
        watch = _zkw_get_handle_inner(aTHX_ attr_hash);

        if (!watch) {
            Perl_croak(aTHX_ "invalid handle");
        }

ZooKeeper.xs  view on Meta::CPAN

        SV *attr_key
        SV *attr_val
    PREINIT:
        zk_watch_t *watch;
        char *key;
    PPCODE:
        watch = _zkw_get_handle_inner(aTHX_ attr_hash);

        if (!watch) {
            Perl_croak(aTHX_ "invalid handle");
        }

ZooKeeper.xs  view on Meta::CPAN

        SV *attr_key
    PREINIT:
        zk_watch_t *watch;
        char *key;
        int i;
    PPCODE:
        watch = _zkw_get_handle_inner(aTHX_ attr_hash);

        if (!watch) {
            Perl_croak(aTHX_ "invalid handle");
        }

ZooKeeper.xs  view on Meta::CPAN


void
zkw_DELETE(attr_hash, attr_key)
        Net::ZooKeeper::Watch attr_hash
        SV *attr_key
    PPCODE:
        Perl_warn(aTHX_ "deleting elements from hashes of class "
                        WATCH_PACKAGE_NAME " not supported");

        XSRETURN_EMPTY;


void
zkw_CLEAR(attr_hash)
        Net::ZooKeeper::Watch attr_hash
    PPCODE:
        Perl_warn(aTHX_ "clearing hashes of class "
                        WATCH_PACKAGE_NAME " not supported");

        XSRETURN_EMPTY;

ZooKeeper.xs  view on Meta::CPAN

        zk_watch_t *watch;
        unsigned int timeout;
        struct timeval end_timeval;
        int i, done;
        struct timespec wait_timespec;
    PPCODE:
        watch = _zkw_get_handle_outer(aTHX_ zkwh, NULL);

        if (!watch) {
            Perl_croak(aTHX_ "invalid handle");
        }

 view all matches for this distribution


( run in 2.519 seconds using v1.01-cache-2.11-cpan-71847e10f99 )