Provided by RHEL 7.4+
This commit is contained in:
parent
7369b9bbd0
commit
06b1f44b24
8
.gitignore
vendored
8
.gitignore
vendored
@ -1,8 +0,0 @@
|
|||||||
/http-parser.tar.gz
|
|
||||||
/ry-http-parser-v1.0-0-g32c0e11.tar.gz
|
|
||||||
/joyent-http-parser-v2.0-0-g3fb4e06.tar.gz
|
|
||||||
/joyent-http-parser-v2.0-5-g245f6f0.tar.gz
|
|
||||||
/joyent-http-parser-v2.0-7-gcd01361.tar.gz
|
|
||||||
/v2.6.0.tar.gz
|
|
||||||
/v2.7.1.tar.gz
|
|
||||||
/http-parser-2.7.1.tar.gz
|
|
1
dead.package
Normal file
1
dead.package
Normal file
@ -0,0 +1 @@
|
|||||||
|
Provided by RHEL 7.4+
|
@ -1,101 +0,0 @@
|
|||||||
From 335850f6b868d3411968cbf5a4d59fe619dee36f Mon Sep 17 00:00:00 2001
|
|
||||||
From: Nathaniel McCallum <npmccallum@redhat.com>
|
|
||||||
Date: Thu, 6 Oct 2016 02:03:36 -0400
|
|
||||||
Subject: [PATCH] parser: HTTP_STATUS_MAP(XX) and enum http_status
|
|
||||||
|
|
||||||
This patch provides an enum for the standardized HTTP status codes.
|
|
||||||
Additionally, the HTTP_STATUS_MAP(XX) can be used for other purposes as
|
|
||||||
well, such as code-to-name lookups and code-based switch statements.
|
|
||||||
|
|
||||||
PR-URL: https://github.com/nodejs/http-parser/pull/337
|
|
||||||
Reviewed-By: Fedor Indutny <fedor@indutny.com>
|
|
||||||
Reviewed-By: Brian White <mscdex@mscdex.net>
|
|
||||||
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
|
|
||||||
---
|
|
||||||
http_parser.h | 70 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
|
|
||||||
1 file changed, 70 insertions(+)
|
|
||||||
|
|
||||||
diff --git a/http_parser.h b/http_parser.h
|
|
||||||
index ea26394..45c72a0 100644
|
|
||||||
--- a/http_parser.h
|
|
||||||
+++ b/http_parser.h
|
|
||||||
@@ -90,6 +90,76 @@ typedef int (*http_data_cb) (http_parser*, const char *at, size_t length);
|
|
||||||
typedef int (*http_cb) (http_parser*);
|
|
||||||
|
|
||||||
|
|
||||||
+/* Status Codes */
|
|
||||||
+#define HTTP_STATUS_MAP(XX) \
|
|
||||||
+ XX(100, CONTINUE, Continue) \
|
|
||||||
+ XX(101, SWITCHING_PROTOCOLS, Switching Protocols) \
|
|
||||||
+ XX(102, PROCESSING, Processing) \
|
|
||||||
+ XX(200, OK, OK) \
|
|
||||||
+ XX(201, CREATED, Created) \
|
|
||||||
+ XX(202, ACCEPTED, Accepted) \
|
|
||||||
+ XX(203, NON_AUTHORITATIVE_INFORMATION, Non-Authoritative Information) \
|
|
||||||
+ XX(204, NO_CONTENT, No Content) \
|
|
||||||
+ XX(205, RESET_CONTENT, Reset Content) \
|
|
||||||
+ XX(206, PARTIAL_CONTENT, Partial Content) \
|
|
||||||
+ XX(207, MULTI_STATUS, Multi-Status) \
|
|
||||||
+ XX(208, ALREADY_REPORTED, Already Reported) \
|
|
||||||
+ XX(226, IM_USED, IM Used) \
|
|
||||||
+ XX(300, MULTIPLE_CHOICES, Multiple Choices) \
|
|
||||||
+ XX(301, MOVED_PERMANENTLY, Moved Permanently) \
|
|
||||||
+ XX(302, FOUND, Found) \
|
|
||||||
+ XX(303, SEE_OTHER, See Other) \
|
|
||||||
+ XX(304, NOT_MODIFIED, Not Modified) \
|
|
||||||
+ XX(305, USE_PROXY, Use Proxy) \
|
|
||||||
+ XX(307, TEMPORARY_REDIRECT, Temporary Redirect) \
|
|
||||||
+ XX(308, PERMANENT_REDIRECT, Permanent Redirect) \
|
|
||||||
+ XX(400, BAD_REQUEST, Bad Request) \
|
|
||||||
+ XX(401, UNAUTHORIZED, Unauthorized) \
|
|
||||||
+ XX(402, PAYMENT_REQUIRED, Payment Required) \
|
|
||||||
+ XX(403, FORBIDDEN, Forbidden) \
|
|
||||||
+ XX(404, NOT_FOUND, Not Found) \
|
|
||||||
+ XX(405, METHOD_NOT_ALLOWED, Method Not Allowed) \
|
|
||||||
+ XX(406, NOT_ACCEPTABLE, Not Acceptable) \
|
|
||||||
+ XX(407, PROXY_AUTHENTICATION_REQUIRED, Proxy Authentication Required) \
|
|
||||||
+ XX(408, REQUEST_TIMEOUT, Request Timeout) \
|
|
||||||
+ XX(409, CONFLICT, Conflict) \
|
|
||||||
+ XX(410, GONE, Gone) \
|
|
||||||
+ XX(411, LENGTH_REQUIRED, Length Required) \
|
|
||||||
+ XX(412, PRECONDITION_FAILED, Precondition Failed) \
|
|
||||||
+ XX(413, PAYLOAD_TOO_LARGE, Payload Too Large) \
|
|
||||||
+ XX(414, URI_TOO_LONG, URI Too Long) \
|
|
||||||
+ XX(415, UNSUPPORTED_MEDIA_TYPE, Unsupported Media Type) \
|
|
||||||
+ XX(416, RANGE_NOT_SATISFIABLE, Range Not Satisfiable) \
|
|
||||||
+ XX(417, EXPECTATION_FAILED, Expectation Failed) \
|
|
||||||
+ XX(421, MISDIRECTED_REQUEST, Misdirected Request) \
|
|
||||||
+ XX(422, UNPROCESSABLE_ENTITY, Unprocessable Entity) \
|
|
||||||
+ XX(423, LOCKED, Locked) \
|
|
||||||
+ XX(424, FAILED_DEPENDENCY, Failed Dependency) \
|
|
||||||
+ XX(426, UPGRADE_REQUIRED, Upgrade Required) \
|
|
||||||
+ XX(428, PRECONDITION_REQUIRED, Precondition Required) \
|
|
||||||
+ XX(429, TOO_MANY_REQUESTS, Too Many Requests) \
|
|
||||||
+ XX(431, REQUEST_HEADER_FIELDS_TOO_LARGE, Request Header Fields Too Large) \
|
|
||||||
+ XX(451, UNAVAILABLE_FOR_LEGAL_REASONS, Unavailable For Legal Reasons) \
|
|
||||||
+ XX(500, INTERNAL_SERVER_ERROR, Internal Server Error) \
|
|
||||||
+ XX(501, NOT_IMPLEMENTED, Not Implemented) \
|
|
||||||
+ XX(502, BAD_GATEWAY, Bad Gateway) \
|
|
||||||
+ XX(503, SERVICE_UNAVAILABLE, Service Unavailable) \
|
|
||||||
+ XX(504, GATEWAY_TIMEOUT, Gateway Timeout) \
|
|
||||||
+ XX(505, HTTP_VERSION_NOT_SUPPORTED, HTTP Version Not Supported) \
|
|
||||||
+ XX(506, VARIANT_ALSO_NEGOTIATES, Variant Also Negotiates) \
|
|
||||||
+ XX(507, INSUFFICIENT_STORAGE, Insufficient Storage) \
|
|
||||||
+ XX(508, LOOP_DETECTED, Loop Detected) \
|
|
||||||
+ XX(510, NOT_EXTENDED, Not Extended) \
|
|
||||||
+ XX(511, NETWORK_AUTHENTICATION_REQUIRED, Network Authentication Required) \
|
|
||||||
+
|
|
||||||
+enum http_status
|
|
||||||
+ {
|
|
||||||
+#define XX(num, name, string) HTTP_STATUS_##name = num,
|
|
||||||
+ HTTP_STATUS_MAP(XX)
|
|
||||||
+#undef XX
|
|
||||||
+ };
|
|
||||||
+
|
|
||||||
+
|
|
||||||
/* Request Methods */
|
|
||||||
#define HTTP_METHOD_MAP(XX) \
|
|
||||||
XX(0, DELETE, DELETE) \
|
|
||||||
--
|
|
||||||
2.10.2
|
|
||||||
|
|
191
http-parser.spec
191
http-parser.spec
@ -1,191 +0,0 @@
|
|||||||
# we use the upstream version from http_parser.h as the SONAME
|
|
||||||
%global somajor 2
|
|
||||||
%global sominor 7
|
|
||||||
%global sopoint 1
|
|
||||||
|
|
||||||
Name: http-parser
|
|
||||||
Version: %{somajor}.%{sominor}.%{sopoint}
|
|
||||||
Release: 7%{?dist}
|
|
||||||
Summary: HTTP request/response parser for C
|
|
||||||
|
|
||||||
License: MIT
|
|
||||||
URL: https://github.com/nodejs/http-parser
|
|
||||||
Source0: %{url}/archive/v%{version}/%{name}-%{version}.tar.gz
|
|
||||||
|
|
||||||
# https://github.com/nodejs/http-parser/commit/335850f6b868d3411968cbf5a4d59fe619dee36f
|
|
||||||
Patch0001: %{name}-0001-parser-HTTP_STATUS_MAP-XX-and-enum-http_status.patch
|
|
||||||
|
|
||||||
BuildRequires: gcc
|
|
||||||
BuildRequires: cmake
|
|
||||||
|
|
||||||
%description
|
|
||||||
This is a parser for HTTP messages written in C. It parses both requests and
|
|
||||||
responses. The parser is designed to be used in performance HTTP applications.
|
|
||||||
It does not make any syscalls nor allocations, it does not buffer data, it can
|
|
||||||
be interrupted at anytime. Depending on your architecture, it only requires
|
|
||||||
about 40 bytes of data per message stream (in a web server that is per
|
|
||||||
connection).
|
|
||||||
|
|
||||||
%package devel
|
|
||||||
Summary: Development headers and libraries for http-parser
|
|
||||||
Requires: %{name}%{?_isa} = %{?epoch:%{epoch}:}%{version}-%{release}
|
|
||||||
|
|
||||||
%description devel
|
|
||||||
Development headers and libraries for http-parser.
|
|
||||||
|
|
||||||
%prep
|
|
||||||
%autosetup -p1
|
|
||||||
# TODO: try to send upstream?
|
|
||||||
cat > CMakeLists.txt << EOF
|
|
||||||
cmake_minimum_required (VERSION 2.8.5)
|
|
||||||
project (http-parser C)
|
|
||||||
include (GNUInstallDirs)
|
|
||||||
|
|
||||||
set (SRCS http_parser.c)
|
|
||||||
set (HDRS http_parser.h)
|
|
||||||
set (TEST_SRCS test.c)
|
|
||||||
|
|
||||||
# Non-Strict version
|
|
||||||
add_library (http_parser \${SRCS})
|
|
||||||
target_compile_definitions (http_parser
|
|
||||||
PUBLIC -DHTTP_PARSER_STRICT=0)
|
|
||||||
add_executable (test-nonstrict \${TEST_SRCS})
|
|
||||||
target_link_libraries (test-nonstrict http_parser)
|
|
||||||
# Strict version
|
|
||||||
add_library (http_parser_strict \${SRCS})
|
|
||||||
target_compile_definitions (http_parser_strict
|
|
||||||
PUBLIC -DHTTP_PARSER_STRICT=1)
|
|
||||||
add_executable (test-strict \${TEST_SRCS})
|
|
||||||
target_link_libraries (test-strict http_parser_strict)
|
|
||||||
|
|
||||||
set_target_properties (http_parser http_parser_strict
|
|
||||||
PROPERTIES
|
|
||||||
SOVERSION %{somajor}
|
|
||||||
VERSION %{version})
|
|
||||||
|
|
||||||
install (TARGETS http_parser http_parser_strict
|
|
||||||
LIBRARY DESTINATION \${CMAKE_INSTALL_LIBDIR})
|
|
||||||
install (FILES \${HDRS}
|
|
||||||
DESTINATION \${CMAKE_INSTALL_INCLUDEDIR})
|
|
||||||
|
|
||||||
enable_testing ()
|
|
||||||
add_test (NAME test-nonstrict COMMAND test-nonstrict)
|
|
||||||
add_test (NAME test-strict COMMAND test-strict)
|
|
||||||
EOF
|
|
||||||
|
|
||||||
%build
|
|
||||||
mkdir %{_target_platform}
|
|
||||||
pushd %{_target_platform}
|
|
||||||
%cmake .. -DCMAKE_BUILD_TYPE=RelWithDebInfo
|
|
||||||
popd
|
|
||||||
%make_build -C %{_target_platform}
|
|
||||||
|
|
||||||
%install
|
|
||||||
%make_install -C %{_target_platform}
|
|
||||||
|
|
||||||
%check
|
|
||||||
make test -C %{_target_platform}
|
|
||||||
|
|
||||||
%post -p /sbin/ldconfig
|
|
||||||
%postun -p /sbin/ldconfig
|
|
||||||
|
|
||||||
%files
|
|
||||||
%{_libdir}/libhttp_parser.so.*
|
|
||||||
%{_libdir}/libhttp_parser_strict.so.*
|
|
||||||
%doc AUTHORS README.md
|
|
||||||
%license LICENSE-MIT
|
|
||||||
|
|
||||||
%files devel
|
|
||||||
%{_includedir}/http_parser.h
|
|
||||||
%{_libdir}/libhttp_parser.so
|
|
||||||
%{_libdir}/libhttp_parser_strict.so
|
|
||||||
|
|
||||||
%changelog
|
|
||||||
* Wed Aug 02 2017 Fedora Release Engineering <releng@fedoraproject.org> - 2.7.1-7
|
|
||||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild
|
|
||||||
|
|
||||||
* Wed Jul 26 2017 Fedora Release Engineering <releng@fedoraproject.org> - 2.7.1-6
|
|
||||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
|
|
||||||
|
|
||||||
* Fri Feb 10 2017 Fedora Release Engineering <releng@fedoraproject.org> - 2.7.1-5
|
|
||||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild
|
|
||||||
|
|
||||||
* Mon Nov 21 2016 Igor Gnatenko <i.gnatenko.brain@gmail.com> - 2.7.1-4
|
|
||||||
- Use CMake buildsystem
|
|
||||||
|
|
||||||
* Tue Oct 25 2016 Nathaniel McCallum <npmccallum@redhat.com> - 2.7.1-3
|
|
||||||
- Add (upstreamed) status code patch
|
|
||||||
|
|
||||||
* Tue Aug 16 2016 Stephen Gallagher <sgallagh@redhat.com> - 2.7.1-2
|
|
||||||
- Upgrade to version 2.7.1
|
|
||||||
|
|
||||||
* Wed Feb 03 2016 Fedora Release Engineering <releng@fedoraproject.org> - 2.6.0-2
|
|
||||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild
|
|
||||||
|
|
||||||
* Tue Dec 01 2015 Stephen Gallagher <sgallagh@redhat.com> 2.6.0-1
|
|
||||||
- Upgrade to version 2.6.0
|
|
||||||
- Change to new upstream at https://github.com/nodejs/http-parser/
|
|
||||||
|
|
||||||
* Wed Jun 17 2015 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.0-9.20121128gitcd01361
|
|
||||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild
|
|
||||||
|
|
||||||
* Sat May 02 2015 Kalev Lember <kalevlember@gmail.com> - 2.0-8.20121128gitcd01361
|
|
||||||
- Rebuilt for GCC 5 C++11 ABI change
|
|
||||||
|
|
||||||
* Sat Aug 16 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.0-7.20121128gitcd01361
|
|
||||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild
|
|
||||||
|
|
||||||
* Sat Jun 07 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.0-6.20121128gitcd01361
|
|
||||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild
|
|
||||||
|
|
||||||
* Sat Aug 03 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.0-5.20121128gitcd01361
|
|
||||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild
|
|
||||||
|
|
||||||
* Thu Feb 14 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.0-4.20121128gitcd01361
|
|
||||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild
|
|
||||||
|
|
||||||
* Sun Dec 02 2012 T.C. Hollingsworth <tchollingsworth@gmail.com> - 2.0-3.20121128gitcd01361
|
|
||||||
- latest git snapshot
|
|
||||||
- fixes buffer overflow in tests
|
|
||||||
|
|
||||||
* Tue Nov 27 2012 T.C. Hollingsworth <tchollingsworth@gmail.com> - 2.0-2.20121110git245f6f0
|
|
||||||
- latest git snapshot
|
|
||||||
- fixes tests
|
|
||||||
- use SMP make flags
|
|
||||||
- build as Release instead of Debug
|
|
||||||
- ship new strict variant
|
|
||||||
|
|
||||||
* Sat Oct 13 2012 T.C. Hollingsworth <tchollingsworth@gmail.com> - 2.0-1
|
|
||||||
- new upstream release 2.0
|
|
||||||
- migrate to GYP buildsystem
|
|
||||||
|
|
||||||
* Thu Jul 19 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.0-3
|
|
||||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild
|
|
||||||
|
|
||||||
* Fri Jan 13 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.0-2
|
|
||||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild
|
|
||||||
|
|
||||||
* Mon Aug 22 2011 T.C. Hollingsworth <tchollingsworth@gmail.com> - 1.0-1
|
|
||||||
- New upstream release 1.0
|
|
||||||
- Remove patches, no longer needed for nodejs
|
|
||||||
- Fix typo in -devel description
|
|
||||||
- use github tarball instead of checkout
|
|
||||||
|
|
||||||
* Wed Feb 09 2011 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.3-6.20100911git
|
|
||||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild
|
|
||||||
|
|
||||||
* Tue Jan 11 2011 Lubomir Rintel <lkundrak@v3.sk> - 0.3-5.20100911git
|
|
||||||
- Add support for methods used by node.js
|
|
||||||
|
|
||||||
* Thu Nov 4 2010 Dan Horák <dan[at]danny.cz> - 0.3-4.20100911git
|
|
||||||
- build with -fsigned-char
|
|
||||||
|
|
||||||
* Wed Sep 29 2010 jkeating - 0.3-3.20100911git
|
|
||||||
- Rebuilt for gcc bug 634757
|
|
||||||
|
|
||||||
* Mon Sep 20 2010 Lubomir Rintel <lkundrak@v3.sk> - 0.3-2.20100911git
|
|
||||||
- Call ldconfig (Peter Lemenkov)
|
|
||||||
|
|
||||||
* Fri Sep 17 2010 Lubomir Rintel <lkundrak@v3.sk> - 0.3-1.20100911git
|
|
||||||
- Initial packaging
|
|
||||||
|
|
Loading…
Reference in New Issue
Block a user