~ubuntu-branches/ubuntu/quantal/nspr/quantal-security

« back to all changes in this revision

Viewing changes to mozilla/nsprpub/pr/tests/foreign.c

  • Committer: Bazaar Package Importer
  • Author(s): Alexander Sack, Fabien Tassin, Alexander Sack
  • Date: 2009-01-11 13:50:07 UTC
  • mfrom: (1.1.8 upstream)
  • Revision ID: james.westby@ubuntu.com-20090111135007-butxlx6upwjcakod
Tags: 4.7.3-0ubuntu1
* New upstream version: 4.7.3 from NSPR_4_7_3_RTM tag

[ Fabien Tassin <fta@ubuntu.com> ]
* LP: #269188 - use /dev/urandom for better entropy on LTSP environments
* update diverged patches:
  - update debian/patches/30_pkgconfig.patch
  - update debian/patches/81_sonames.patch
  - update debian/patches/99_configure.patch

[ Alexander Sack <asac@ubuntu.com> ]
Drop debian soname patch for full upstream compatibility
* eliminate soname patch
  - delete debian/patches/81_sonames.patch
  - update debian/patches/series
* refresh configure patch to reflect dropped soname patch
  - update debian/patches/99_configure.patch
* install unversioned .so files
  - update debian/libnspr4-0d.install
* .so.0d links are not created without the soname patch. we create
  backlinks to the unversioned .so libs using debhelper; also we
  cannot dh_install the .0d versioned libs anymore and we drop
  them from .install accordingly
  - add debian/libnspr4-0d.links
  - update debian/libnspr4-0d.install
* implement link shuffeling transition (with abort cases) in
  maintainer scripts; affected libs: libnspr4.so libplc4.so libplds4.so
  - add debian/libnspr4-0d.postinst
  - add debian/libnspr4-0d.postrm
  - add debian/libnspr4-0d.preinst
  - add debian/libnspr4-0d.prerm
* drop soname version suffix from symbol files and reflect this fact by
  adjusting minimum version to this package version (4.7.3-0ubuntu1~)
  - update debian/libnspr4-0d.symbols
  - update debian/libnspr4-0d.symbols.amd64
  - update debian/libnspr4-0d.symbols.i386
  - update debian/libnspr4-0d.symbols.ia64
  - update debian/libnspr4-0d.symbols.lpia
  - update debian/libnspr4-0d.symbols.powerpc
* bump lower shlibs version constraint to 4.7.1+1.9-0ubuntu5~
  - update debian/rules
* rerun autoconf2.13 to apply dropped 81_sonames.patch to configure
  - update debian/patches/99_configure.patch
* explitly define libnspr4_0d_EXPORTED_LIBS and pass those manually
  to dpkg-gensymbols to workaround uncommon SONAME used by nspr libs
  - update debian/rules
* don't pretend to create shlibs-control file anymore; add binary
  lintian override for that
  - update debian/rules
* add #DEBHELPER# token to maintainer scripts
  - update debian/libnspr4-0d.postinst
  - update debian/libnspr4-0d.postrm
  - update debian/libnspr4-0d.preinst
  - update debian/libnspr4-0d.prerm

Show diffs side-by-side

added added

removed removed

Lines of Context:
66
66
#include <stdlib.h>
67
67
 
68
68
static enum {
69
 
    thread_nspr, thread_pthread, thread_uithread, thread_sproc, thread_win32
 
69
    thread_nspr, thread_pthread, thread_sproc, thread_win32
70
70
} thread_provider;
71
71
 
72
72
typedef void (*StartFn)(void*);
97
97
}  /* pthread_start */
98
98
#endif /* defined(_PR_PTHREADS) && !defined(_PR_DCETHREADS) */
99
99
 
100
 
#if defined(SOLARIS) && defined(_PR_GLOBAL_THREADS_ONLY)
101
 
#include <thread.h>
102
 
static void *uithread_start(void *arg)
103
 
{
104
 
    StartFn start = ((StartObject*)arg)->start;
105
 
    void *data = ((StartObject*)arg)->arg;
106
 
    PR_Free(arg);
107
 
    start(data);
108
 
    return NULL;
109
 
}  /* uithread_start */
110
 
#endif /* defined(SOLARIS) && defined(_PR_GLOBAL_THREADS_ONLY) */
111
 
 
112
100
#if defined(IRIX) && !defined(_PR_PTHREADS)
113
101
#include <sys/types.h>
114
102
#include <sys/prctl.h>
182
170
        break;
183
171
#endif /* defined(_PR_PTHREADS) && !defined(_PR_DCETHREADS) */
184
172
 
185
 
    case thread_uithread:
186
 
#if defined(SOLARIS) && defined(_PR_GLOBAL_THREADS_ONLY)
187
 
        {
188
 
            int rv;
189
 
            thread_t id;
190
 
            long flags;
191
 
            StartObject *start_object;
192
 
            start_object = PR_NEW(StartObject);
193
 
            PR_ASSERT(NULL != start_object);
194
 
            start_object->start = start;
195
 
            start_object->arg = arg;
196
 
 
197
 
            flags = THR_DETACHED;
198
 
 
199
 
            rv = thr_create(NULL, NULL, uithread_start, start_object, flags, &id);
200
 
            return (0 == rv) ? PR_SUCCESS : PR_FAILURE;
201
 
        }
202
 
#else
203
 
        PR_SetError(PR_NOT_IMPLEMENTED_ERROR, 0);
204
 
        rv = PR_FAILURE;
205
 
        break;
206
 
#endif /* defined(SOLARIS) && defined(_PR_GLOBAL_THREADS_ONLY) */
207
 
 
208
173
    case thread_sproc:
209
174
#if defined(IRIX) && !defined(_PR_PTHREADS)
210
175
        {
371
336
        thread_provider = thread_win32;
372
337
#elif defined(_PR_PTHREADS)
373
338
        thread_provider = thread_pthread;
374
 
#elif defined(SOLARIS) && defined(_PR_GLOBAL_THREADS_ONLY)
375
 
        thread_provider = thread_uithread;
376
339
#elif defined(IRIX)
377
340
        thread_provider = thread_sproc;
378
341
#else