google-protobuf 3.2.0-x86-linux → 3.2.0.1-x86-linux

Sign up to get free protection for your applications and to get access to all the features.

Potentially problematic release.


This version of google-protobuf might be problematic. Click here for more details.

checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 0cc0bb6a8565671d21ece06111e67b946fc5654a
4
- data.tar.gz: ef9708bad40f0b2f0fc8e18d39f26608aa43ef6e
3
+ metadata.gz: 26b43b556fe74bd830eb9f87b35722a443eeb635
4
+ data.tar.gz: 241c9188cf49ec6ba541d2ddde53b4e809de5b11
5
5
  SHA512:
6
- metadata.gz: 166119228c8683d2b09a68ae614e9a535662bf7c81a0e2e92b59c1e364a10b6ef31b5845f27a0b8d8c8bdcdadddb97662af484e8a3401652bd30573529c6cf96
7
- data.tar.gz: c7349bd2a8e90420ea093ca0b9977c928c3dbb53e121437b2901978649ceecf3de6c933b6c296b6b1c9055c721d4040cb19f03e6533fd3e973c28371efe38505
6
+ metadata.gz: e1310067d1850dffbcb5fc7667949d1affc312d874e8defbeb414b5e2126a094235201c5924df86f5de4b58fb1eda880d5280a73e6e1de0ab788180e2ca41761
7
+ data.tar.gz: 8ce9f6daca93874481d3f22b6c074ee93803b1eb96066e8a2c37269589b6a561129d61869b2eedd23d6a0393962281018012e2ce0392298b3ff8a0e00fe393ba
@@ -4,7 +4,14 @@ require 'mkmf'
4
4
 
5
5
  $CFLAGS += " -std=c99 -O3 -DNDEBUG"
6
6
 
7
+
8
+ if RUBY_PLATFORM =~ /linux/
9
+ # Instruct the linker to point memcpy calls at our __wrap_memcpy wrapper.
10
+ $LDFLAGS += " -Wl,-wrap,memcpy"
11
+ end
12
+
7
13
  $objs = ["protobuf.o", "defs.o", "storage.o", "message.o",
8
- "repeated_field.o", "map.o", "encode_decode.o", "upb.o"]
14
+ "repeated_field.o", "map.o", "encode_decode.o", "upb.o",
15
+ "wrap_memcpy.o"]
9
16
 
10
17
  create_makefile("google/protobuf_c")
@@ -0,0 +1,51 @@
1
+ // Protocol Buffers - Google's data interchange format
2
+ // Copyright 2017 Google Inc. All rights reserved.
3
+ // https://developers.google.com/protocol-buffers/
4
+ //
5
+ // Redistribution and use in source and binary forms, with or without
6
+ // modification, are permitted provided that the following conditions are
7
+ // met:
8
+ //
9
+ // * Redistributions of source code must retain the above copyright
10
+ // notice, this list of conditions and the following disclaimer.
11
+ // * Redistributions in binary form must reproduce the above
12
+ // copyright notice, this list of conditions and the following disclaimer
13
+ // in the documentation and/or other materials provided with the
14
+ // distribution.
15
+ // * Neither the name of Google Inc. nor the names of its
16
+ // contributors may be used to endorse or promote products derived from
17
+ // this software without specific prior written permission.
18
+ //
19
+ // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
20
+ // "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
21
+ // LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
22
+ // A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
23
+ // OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
24
+ // SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
25
+ // LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
26
+ // DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
27
+ // THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
28
+ // (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
29
+ // OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
30
+
31
+ #include <string.h>
32
+
33
+ // On x86-64 Linux, we link against the 2.2.5 version of memcpy so that we
34
+ // avoid depending on the 2.14 version of the symbol. This way, distributions
35
+ // that are using pre-2.14 versions of glibc can successfully use the gem we
36
+ // distribute (https://github.com/google/protobuf/issues/2783).
37
+ //
38
+ // This wrapper is enabled by passing the linker flags -Wl,-wrap,memcpy in
39
+ // extconf.rb.
40
+ #ifdef __linux__
41
+ #ifdef __x86_64__
42
+ __asm__(".symver memcpy,memcpy@GLIBC_2.2.5");
43
+ void *__wrap_memcpy(void *dest, const void *src, size_t n) {
44
+ return memcpy(dest, src, n);
45
+ }
46
+ #else
47
+ void *__wrap_memcpy(void *dest, const void *src, size_t n) {
48
+ return memmove(dest, src, n);
49
+ }
50
+ #endif
51
+ #endif
Binary file
Binary file
Binary file
Binary file
Binary file
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: google-protobuf
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.2.0
4
+ version: 3.2.0.1
5
5
  platform: x86-linux
6
6
  authors:
7
7
  - Protobuf Authors
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2017-02-13 00:00:00.000000000 Z
11
+ date: 2017-03-10 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rake-compiler-dock
@@ -89,6 +89,7 @@ files:
89
89
  - ext/google/protobuf_c/storage.c
90
90
  - ext/google/protobuf_c/upb.c
91
91
  - ext/google/protobuf_c/upb.h
92
+ - ext/google/protobuf_c/wrap_memcpy.c
92
93
  - lib/google/2.0/protobuf_c.so
93
94
  - lib/google/2.1/protobuf_c.so
94
95
  - lib/google/2.2/protobuf_c.so