summaryrefslogtreecommitdiff
path: root/libpthread
diff options
context:
space:
mode:
authorWaldemar Brodkorb <wbx@openadk.org>2017-03-20 18:10:36 +0100
committerWaldemar Brodkorb <wbx@openadk.org>2017-03-20 18:10:36 +0100
commita1a8064169aeda79e3266a2db9cce25e361a86dc (patch)
tree526902649b5dfb9e1e9f6c632349df475a6bb597 /libpthread
parent2d8ea0524b016d29cf28615449b22b96dd5067b2 (diff)
remove RPC implementation
The included RPC implementation is ipv4 only. Other C library projects have either deprecated the internal RPC implementation (GNU C Library) or never implemented such functionality (musl C Library). The latest rpcbind release (0.2.4) checks for libtirpc and does not allow to be build with uClibc-ng RPC without patching. The common use case for RPC nowadays is to use rpcbind together with nfs-utils to provide NFS server or client support to a system. The included RPC implementation does create issues with duplicate symbol failures when statically compiling with RPC enabled.
Diffstat (limited to 'libpthread')
-rw-r--r--libpthread/linuxthreads/cancel.c10
-rw-r--r--libpthread/linuxthreads/specific.c30
2 files changed, 0 insertions, 40 deletions
diff --git a/libpthread/linuxthreads/cancel.c b/libpthread/linuxthreads/cancel.c
index 392d1d586..ed0543866 100644
--- a/libpthread/linuxthreads/cancel.c
+++ b/libpthread/linuxthreads/cancel.c
@@ -19,10 +19,6 @@
#include "internals.h"
#include "spinlock.h"
#include "restart.h"
-#ifdef __UCLIBC_HAS_RPC__
-#include <rpc/rpc.h>
-extern void __rpc_thread_destroy(void);
-#endif
#include <bits/stackinfo.h>
#include <stdio.h>
@@ -202,12 +198,6 @@ void __pthread_perform_cleanup(char *currentframe)
#endif
c->__routine(c->__arg);
}
-
-#ifdef __UCLIBC_HAS_RPC__
- /* And the TSD which needs special help. */
- if (THREAD_GETMEM(self, p_libc_specific[_LIBC_TSD_KEY_RPC_VARS]) != NULL)
- __rpc_thread_destroy ();
-#endif
}
#ifndef __PIC__
diff --git a/libpthread/linuxthreads/specific.c b/libpthread/linuxthreads/specific.c
index c4bcfbf8c..d0be8a9f0 100644
--- a/libpthread/linuxthreads/specific.c
+++ b/libpthread/linuxthreads/specific.c
@@ -166,33 +166,3 @@ void __pthread_destroy_specifics(void)
}
__pthread_unlock(THREAD_GETMEM(self, p_lock));
}
-
-#if !defined __UCLIBC_HAS_TLS__ && defined __UCLIBC_HAS_RPC__
-
-/* Thread-specific data for libc. */
-
-int
-__pthread_internal_tsd_set (int key, const void * pointer)
-{
- pthread_descr self = thread_self();
-
- THREAD_SETMEM_NC(self, p_libc_specific[key], (void *) pointer);
- return 0;
-}
-
-void *
-__pthread_internal_tsd_get (int key)
-{
- pthread_descr self = thread_self();
-
- return THREAD_GETMEM_NC(self, p_libc_specific[key]);
-}
-
-void ** __attribute__ ((__const__))
-__pthread_internal_tsd_address (int key)
-{
- pthread_descr self = thread_self();
- return &self->p_libc_specific[key];
-}
-
-#endif