History log of /libevent-2.1.12/include/event2/rpc_struct.h (Results 1 – 11 of 11)
Revision (<<< Hide revision tags) (Show revision tags >>>) Date Author Comments
Revision tags: release-2.2.1-alpha, release-2.1.12-stable, release-2.1.11-stable, release-2.1.10-stable, release-2.1.9-beta, release-2.0.23-beta
# e2732c90 06-May-2018 Azat Khuzhin <[email protected]>

Make rpc headers self-compilable

Fixes: #633
(cherry picked from commit c57f5c34903b02c6e7378865f71a2b83a5befb96)


Revision tags: release-2.1.8-stable, release-2.1.7-rc, release-2.1.6-beta, release-2.0.22-stable, release-1.4.15-stable, release-2.1.5-beta, release-2.1.4-alpha, release-2.1.3-alpha, release-2.1.2-alpha, release-2.0.21-stable, release-2.0.20-stable, release-2.0.19-stable, release-2.1.1-alpha, release-2.0.18-stable
# 3f8c7cd0 29-Feb-2012 Nick Mathewson <[email protected]>

Convert include-guard macro convention to avoid reserved identifiers

Previously we used include-guards with names like _EVENT2_EVENT_H_.
But C reserves macros beginning with an underscore for use by

Convert include-guard macro convention to avoid reserved identifiers

Previously we used include-guards with names like _EVENT2_EVENT_H_.
But C reserves macros beginning with an underscore for use by the
system. This patch converts all include guards for files like
include/event2/<fname.h> to be of form EVENT2_<FNAME_H>_INCLUDED_,
and all Libevent 1.x headers in include/<fname.h> to be of the form
EVENT1_<FNAME_H>_INCLUDED_, and all internal libevent headers with
names like <fname.h> to the form <FNAME_H>_INCLUDED_.

FNAME_H is here derived from fname.h by replacing every
non-macro-usable character in fname.h with an underscore, and
putting every remaining character in uppercase.

This is an automatic conversion. The script that produced was made by
running the following script over all header files:

=====
#!/usr/bin/perl -w

# Run this on every .h file except config.h, sys/queue.h, WIN32/event2/event-config.h

use strict;

my %macros = ();
my %skipped = ();
FILE: for my $fn (@ARGV) {
my $f = $fn;
if ($fn !~ /^\.\//) {
$f = "./$fn";
}
if ($f eq './config.h' or
$f =~ m#/tree.h$# or
$f =~ m#/queue.h# or
$f =~ m#/event-config.h# or
$f =~ m#/evconfig-private.h#) {
$skipped{$fn} = 1;
next FILE;
}
$skipped{$fn} = 0;
open(F, $fn);
while (<F>) {
if (/^#ifndef ([A-Za-z0-9_]+)/) {
$macros{$fn} = $1;
next FILE;
}
}
}

print "#!/usr/bin/perl -w -i -p\n\n";
for my $fn (@ARGV) {
if (! exists $macros{$fn}) {
print "# No macro known for $fn!\n" if (!$skipped{$fn});
} else {
if ($macros{$fn} !~ /_H_?$/) {
print "# Weird macro for $fn...\n";
}
my $goodmacro = uc $fn;
$goodmacro =~ s#^\./##;
$goodmacro =~ s#INCLUDE/EVENT2#EVENT2#;
$goodmacro =~ s#INCLUDE/#EVENT1_#;
$goodmacro =~ s#TEST/##;

$goodmacro =~ s#[\/\-\.]#_#g;

print "s/(?<![A-Za-z0-9_])$macros{$fn}(?![A-Za-z0-9_])/${goodmacro}_INCLUDED_/g;\n"
}
}
=== And then running the script below that it generated over all
=== the .h files again
#!/usr/bin/perl -w -i -p

s/(?<![A-Za-z0-9_])_BUFFEREVENT_INTERNAL_H_(?![A-Za-z0-9_])/BUFFEREVENT_INTERNAL_H_INCLUDED_/g;
s/(?<![A-Za-z0-9_])_CHANGELIST_H_(?![A-Za-z0-9_])/CHANGELIST_INTERNAL_H_INCLUDED_/g;
s/(?<![A-Za-z0-9_])_DEFER_INTERNAL_H_(?![A-Za-z0-9_])/DEFER_INTERNAL_H_INCLUDED_/g;
s/(?<![A-Za-z0-9_])_EVBUFFER_INTERNAL_H_(?![A-Za-z0-9_])/EVBUFFER_INTERNAL_H_INCLUDED_/g;
s/(?<![A-Za-z0-9_])_EVENT_INTERNAL_H_(?![A-Za-z0-9_])/EVENT_INTERNAL_H_INCLUDED_/g;
s/(?<![A-Za-z0-9_])_EVMAP_H_(?![A-Za-z0-9_])/EVMAP_INTERNAL_H_INCLUDED_/g;
s/(?<![A-Za-z0-9_])_EVRPC_INTERNAL_H_(?![A-Za-z0-9_])/EVRPC_INTERNAL_H_INCLUDED_/g;
s/(?<![A-Za-z0-9_])_EVSIGNAL_H_(?![A-Za-z0-9_])/EVSIGNAL_INTERNAL_H_INCLUDED_/g;
s/(?<![A-Za-z0-9_])_EVTHREAD_INTERNAL_H_(?![A-Za-z0-9_])/EVTHREAD_INTERNAL_H_INCLUDED_/g;
s/(?<![A-Za-z0-9_])_EVENT_HT_H(?![A-Za-z0-9_])/HT_INTERNAL_H_INCLUDED_/g;
s/(?<![A-Za-z0-9_])_HTTP_INTERNAL_H_(?![A-Za-z0-9_])/HTTP_INTERNAL_H_INCLUDED_/g;
s/(?<![A-Za-z0-9_])_EVDNS_H_(?![A-Za-z0-9_])/EVENT1_EVDNS_H_INCLUDED_/g;
s/(?<![A-Za-z0-9_])_EVENT_H_(?![A-Za-z0-9_])/EVENT1_EVENT_H_INCLUDED_/g;
s/(?<![A-Za-z0-9_])_EVENT2_BUFFER_H_(?![A-Za-z0-9_])/EVENT2_BUFFER_H_INCLUDED_/g;
s/(?<![A-Za-z0-9_])_EVENT2_BUFFER_COMPAT_H_(?![A-Za-z0-9_])/EVENT2_BUFFER_COMPAT_H_INCLUDED_/g;
s/(?<![A-Za-z0-9_])_EVENT2_BUFFEREVENT_H_(?![A-Za-z0-9_])/EVENT2_BUFFEREVENT_H_INCLUDED_/g;
s/(?<![A-Za-z0-9_])_EVENT2_BUFFEREVENT_COMPAT_H_(?![A-Za-z0-9_])/EVENT2_BUFFEREVENT_COMPAT_H_INCLUDED_/g;
s/(?<![A-Za-z0-9_])_EVENT2_BUFFEREVENT_SSL_H_(?![A-Za-z0-9_])/EVENT2_BUFFEREVENT_SSL_H_INCLUDED_/g;
s/(?<![A-Za-z0-9_])_EVENT2_BUFFEREVENT_STRUCT_H_(?![A-Za-z0-9_])/EVENT2_BUFFEREVENT_STRUCT_H_INCLUDED_/g;
s/(?<![A-Za-z0-9_])_EVENT2_DNS_H_(?![A-Za-z0-9_])/EVENT2_DNS_H_INCLUDED_/g;
s/(?<![A-Za-z0-9_])_EVENT2_DNS_COMPAT_H_(?![A-Za-z0-9_])/EVENT2_DNS_COMPAT_H_INCLUDED_/g;
s/(?<![A-Za-z0-9_])_EVENT2_DNS_STRUCT_H_(?![A-Za-z0-9_])/EVENT2_DNS_STRUCT_H_INCLUDED_/g;
s/(?<![A-Za-z0-9_])_EVENT2_EVENT_H_(?![A-Za-z0-9_])/EVENT2_EVENT_H_INCLUDED_/g;
s/(?<![A-Za-z0-9_])_EVENT2_EVENT_COMPAT_H_(?![A-Za-z0-9_])/EVENT2_EVENT_COMPAT_H_INCLUDED_/g;
s/(?<![A-Za-z0-9_])_EVENT2_EVENT_STRUCT_H_(?![A-Za-z0-9_])/EVENT2_EVENT_STRUCT_H_INCLUDED_/g;
s/(?<![A-Za-z0-9_])_EVENT2_HTTP_H_(?![A-Za-z0-9_])/EVENT2_HTTP_H_INCLUDED_/g;
s/(?<![A-Za-z0-9_])_EVENT2_HTTP_COMPAT_H_(?![A-Za-z0-9_])/EVENT2_HTTP_COMPAT_H_INCLUDED_/g;
s/(?<![A-Za-z0-9_])_EVENT2_HTTP_STRUCT_H_(?![A-Za-z0-9_])/EVENT2_HTTP_STRUCT_H_INCLUDED_/g;
s/(?<![A-Za-z0-9_])_EVENT2_EVENT_KEYVALQ_STRUCT_H_(?![A-Za-z0-9_])/EVENT2_KEYVALQ_STRUCT_H_INCLUDED_/g;
s/(?<![A-Za-z0-9_])_EVENT2_LISTENER_H_(?![A-Za-z0-9_])/EVENT2_LISTENER_H_INCLUDED_/g;
s/(?<![A-Za-z0-9_])_EVENT2_RPC_H_(?![A-Za-z0-9_])/EVENT2_RPC_H_INCLUDED_/g;
s/(?<![A-Za-z0-9_])_EVENT2_RPC_COMPAT_H_(?![A-Za-z0-9_])/EVENT2_RPC_COMPAT_H_INCLUDED_/g;
s/(?<![A-Za-z0-9_])_EVENT2_RPC_STRUCT_H_(?![A-Za-z0-9_])/EVENT2_RPC_STRUCT_H_INCLUDED_/g;
s/(?<![A-Za-z0-9_])_EVENT2_TAG_H_(?![A-Za-z0-9_])/EVENT2_TAG_H_INCLUDED_/g;
s/(?<![A-Za-z0-9_])_EVENT2_TAG_COMPAT_H_(?![A-Za-z0-9_])/EVENT2_TAG_COMPAT_H_INCLUDED_/g;
s/(?<![A-Za-z0-9_])_EVENT2_THREAD_H_(?![A-Za-z0-9_])/EVENT2_THREAD_H_INCLUDED_/g;
s/(?<![A-Za-z0-9_])_EVENT2_UTIL_H_(?![A-Za-z0-9_])/EVENT2_UTIL_H_INCLUDED_/g;
s/(?<![A-Za-z0-9_])_EVHTTP_H_(?![A-Za-z0-9_])/EVENT1_EVHTTP_H_INCLUDED_/g;
s/(?<![A-Za-z0-9_])_EVRPC_H_(?![A-Za-z0-9_])/EVENT1_EVRPC_H_INCLUDED_/g;
s/(?<![A-Za-z0-9_])_EVUTIL_H_(?![A-Za-z0-9_])/EVENT1_EVUTIL_H_INCLUDED_/g;
s/(?<![A-Za-z0-9_])_EVENT_IOCP_INTERNAL_H(?![A-Za-z0-9_])/IOCP_INTERNAL_H_INCLUDED_/g;
s/(?<![A-Za-z0-9_])_EVENT_IPV6_INTERNAL_H(?![A-Za-z0-9_])/IPV6_INTERNAL_H_INCLUDED_/g;
s/(?<![A-Za-z0-9_])_LOG_H_(?![A-Za-z0-9_])/LOG_INTERNAL_H_INCLUDED_/g;
s/(?<![A-Za-z0-9_])_MIN_HEAP_H_(?![A-Za-z0-9_])/MINHEAP_INTERNAL_H_INCLUDED_/g;
s/(?<![A-Za-z0-9_])_EVENT_MM_INTERNAL_H(?![A-Za-z0-9_])/MM_INTERNAL_H_INCLUDED_/g;
s/(?<![A-Za-z0-9_])_RATELIM_INTERNAL_H_(?![A-Za-z0-9_])/RATELIM_INTERNAL_H_INCLUDED_/g;
s/(?<![A-Za-z0-9_])_STRLCPY_INTERNAL_H_(?![A-Za-z0-9_])/STRLCPY_INTERNAL_H_INCLUDED_/g;
s/(?<![A-Za-z0-9_])_REGRESS_H_(?![A-Za-z0-9_])/REGRESS_H_INCLUDED_/g;
s/(?<![A-Za-z0-9_])_TESTUTILS_H(?![A-Za-z0-9_])/REGRESS_TESTUTILS_H_INCLUDED_/g;
# Weird macro for test/tinytest.h...
s/(?<![A-Za-z0-9_])TINYTEST_H_INCLUDED_(?![A-Za-z0-9_])/TINYTEST_H_INCLUDED_/g;
# No macro known for test/tinytest_local.h!
# Weird macro for test/tinytest_macros.h...
s/(?<![A-Za-z0-9_])TINYTEST_MACROS_H_INCLUDED_(?![A-Za-z0-9_])/TINYTEST_MACROS_H_INCLUDED_/g;
s/(?<![A-Za-z0-9_])_EVENT_UTIL_INTERNAL_H(?![A-Za-z0-9_])/UTIL_INTERNAL_H_INCLUDED_/g;

show more ...


Revision tags: release-2.0.17-stable
# e49e2891 10-Feb-2012 Nick Mathewson <[email protected]>

Update copyright notices to 2012


Revision tags: release-2.0.16-stable
# 3c824bd3 24-Oct-2011 Nick Mathewson <[email protected]>

Update copyright dates to 2011.


Revision tags: release-2.0.15-stable, release-2.0.14-stable, release-2.0.13-stable
# 2888facc 05-Jul-2011 Nick Mathewson <[email protected]>

Revise the event/evbuffer/bufferevent doxygen for clarity and accuracy


Revision tags: release-2.0.12-stable, release-2.0.11-stable, release-2.0.10-stable, release-2.0.9-rc, release-2.0.8-rc, release-2.0.7-rc, release-2.0.6-rc, release-1.4.14b-stable, release-1.4.14-stable, release-2.0.5-beta
# 755fbf16 14-Apr-2010 Shuo Chen <[email protected]>

Add void* arguments to request_new and reply_new evrpc hooks

This makes evprc setup more extensible, and helps with Shuo Chen's
work on implementing Google protocol buffers rpc on top of Libevent 2

Add void* arguments to request_new and reply_new evrpc hooks

This makes evprc setup more extensible, and helps with Shuo Chen's
work on implementing Google protocol buffers rpc on top of Libevent 2
evrpc.

This patch breaks binary compatibility with previous versions of
Libevent, since it changes struct evrpc and the signature of
evrpc_register_generic(). Since all compliant code should be calling
evrpc_register_generic via EVRPC_REGISTER, it shouldn't break source
compatibility.

(Code by Shuo Chen; commit message by Nick)

show more ...


# 17efc1cd 04-Mar-2010 Nick Mathewson <[email protected]>

Update all our copyright notices to say "2010"


Revision tags: release-2.0.4-alpha, release-2.0.3-alpha, release-1.4.13-stable, release-2.0.2-alpha@1379, release-1.4.12-stable
# 5d71b25b 17-Jul-2009 Nick Mathewson <[email protected]>

Remove all trailing whitespace from end-of-line.

svn:r1350


Revision tags: release-1.4.11-stable
# a146af1d 25-Apr-2009 Niels Provos <[email protected]>

move more code directly into evrpc.c; provide backwards compatible vararg macros

svn:r1244


# b228ff91 25-Apr-2009 Niels Provos <[email protected]>

remove vararg macros for accessing evrpc structs

svn:r1243


# bbf79707 25-Apr-2009 Niels Provos <[email protected]>

refactor evrpc.h header filer

svn:r1241