summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDiego Elio Pettenò <flameeyes@gentoo.org>2006-01-12 09:11:00 +0000
committerDiego Elio Pettenò <flameeyes@gentoo.org>2006-01-12 09:11:00 +0000
commitdce95ff571afc055033158abd626541844ee8f79 (patch)
tree9b084b9697e1825452592f2ec7828c96fc0fcf8b /sys-libs/pam/files
parentunmask wmaker, i fixed the deps. (diff)
downloadgentoo-2-dce95ff571afc055033158abd626541844ee8f79.tar.gz
gentoo-2-dce95ff571afc055033158abd626541844ee8f79.tar.bz2
gentoo-2-dce95ff571afc055033158abd626541844ee8f79.zip
Add patch to fix building on ppc64 with GCC4, by replacing __u8 and __u32 with standard types uint8_t and uint32_t. Closes bug #107430.
(Portage version: 2529-svn)
Diffstat (limited to 'sys-libs/pam/files')
-rw-r--r--sys-libs/pam/files/pam-0.78-inttypes.patch118
1 files changed, 118 insertions, 0 deletions
diff --git a/sys-libs/pam/files/pam-0.78-inttypes.patch b/sys-libs/pam/files/pam-0.78-inttypes.patch
new file mode 100644
index 000000000000..9b4221351f1f
--- /dev/null
+++ b/sys-libs/pam/files/pam-0.78-inttypes.patch
@@ -0,0 +1,118 @@
+Index: Linux-PAM-0.78/libpamc/include/security/pam_client.h
+===================================================================
+--- Linux-PAM-0.78.orig/libpamc/include/security/pam_client.h
++++ Linux-PAM-0.78/libpamc/include/security/pam_client.h
+@@ -16,19 +16,13 @@ extern "C" {
+ #include <unistd.h>
+ #include <string.h>
+ #include <stdio.h>
++#include <stdint.h>
+
+ /* opaque agent handling structure */
+
+ typedef struct pamc_handle_s *pamc_handle_t;
+
+-/* binary prompt structure pointer */
+-#ifndef __u32
+-# define __u32 unsigned int
+-#endif
+-#ifndef __u8
+-# define __u8 unsigned char
+-#endif
+-typedef struct { __u32 length; __u8 control; } *pamc_bp_t;
++typedef struct { uint32_t length; uint8_t control; } *pamc_bp_t;
+
+ /*
+ * functions provided by libpamc
+@@ -91,10 +85,10 @@ char **pamc_list_agents(pamc_handle_t pc
+ # define PAM_BP_FREE free
+ #endif /* PAM_BP_FREE */
+
+-#define __PAM_BP_WOCTET(x,y) (*((y) + (__u8 *)(x)))
+-#define __PAM_BP_ROCTET(x,y) (*((y) + (const __u8 *)(x)))
++#define __PAM_BP_WOCTET(x,y) (*((y) + (uint8_t *)(x)))
++#define __PAM_BP_ROCTET(x,y) (*((y) + (const uint8_t *)(x)))
+
+-#define PAM_BP_MIN_SIZE (sizeof(__u32) + sizeof(__u8))
++#define PAM_BP_MIN_SIZE (sizeof(uint32_t) + sizeof(uint8_t))
+ #define PAM_BP_MAX_LENGTH 0x20000 /* an advisory limit */
+ #define PAM_BP_WCONTROL(x) (__PAM_BP_WOCTET(x,4))
+ #define PAM_BP_RCONTROL(x) (__PAM_BP_ROCTET(x,4))
+@@ -103,8 +97,8 @@ char **pamc_list_agents(pamc_handle_t pc
+ (__PAM_BP_ROCTET(x,2)<< 8)+ \
+ (__PAM_BP_ROCTET(x,3) ))
+ #define PAM_BP_LENGTH(x) (PAM_BP_SIZE(x) - PAM_BP_MIN_SIZE)
+-#define PAM_BP_WDATA(x) (PAM_BP_MIN_SIZE + (__u8 *) (x))
+-#define PAM_BP_RDATA(x) (PAM_BP_MIN_SIZE + (const __u8 *) (x))
++#define PAM_BP_WDATA(x) (PAM_BP_MIN_SIZE + (uint8_t *) (x))
++#define PAM_BP_RDATA(x) (PAM_BP_MIN_SIZE + (const uint8_t *) (x))
+
+ /* Note, this macro always '\0' terminates renewed packets */
+
+@@ -112,13 +106,13 @@ char **pamc_list_agents(pamc_handle_t pc
+ do { \
+ if (old_p) { \
+ if (*(old_p)) { \
+- __u32 __size; \
++ uint32_t __size; \
+ __size = PAM_BP_SIZE(*(old_p)); \
+ memset(*(old_p), 0, __size); \
+ PAM_BP_FREE(*(old_p)); \
+ } \
+ if (cntrl) { \
+- __u32 __size; \
++ uint32_t __size; \
+ \
+ __size = PAM_BP_MIN_SIZE + data_length; \
+ if ((*(old_p) = PAM_BP_CALLOC(1, 1+__size))) { \
+@@ -141,7 +135,7 @@ do {
+ #define PAM_BP_FILL(prmpt, offset, length, data) \
+ do { \
+ size_t bp_length; \
+- __u8 *prompt = (__u8 *) (prmpt); \
++ uint8_t *prompt = (uint8_t *) (prmpt); \
+ bp_length = PAM_BP_LENGTH(prompt); \
+ if (bp_length < ((length)+(offset))) { \
+ PAM_BP_ASSERT("attempt to write over end of prompt"); \
+@@ -152,7 +146,7 @@ do {
+ #define PAM_BP_EXTRACT(prmpt, offset, length, data) \
+ do { \
+ size_t __bp_length; \
+- const __u8 *__prompt = (const __u8 *) (prmpt); \
++ const uint8_t *__prompt = (const uint8_t *) (prmpt); \
+ __bp_length = PAM_BP_LENGTH(__prompt); \
+ if (((offset) < 0) || (__bp_length < ((length)+(offset))) \
+ || ((length) < 0)) { \
+Index: Linux-PAM-0.78/libpamc/pamc_converse.c
+===================================================================
+--- Linux-PAM-0.78.orig/libpamc/pamc_converse.c
++++ Linux-PAM-0.78/libpamc/pamc_converse.c
+@@ -34,8 +34,8 @@ static int __pamc_select_agent(pamc_hand
+
+ int pamc_converse(pamc_handle_t pch, pamc_bp_t *prompt_p)
+ {
+- __u32 size, offset=0;
+- __u8 control, raw[PAM_BP_MIN_SIZE];
++ uint32_t size, offset=0;
++ uint8_t control, raw[PAM_BP_MIN_SIZE];
+
+ D(("called"));
+
+@@ -109,7 +109,7 @@ int pamc_converse(pamc_handle_t pch, pam
+ /* pump all of the prompt into the agent */
+ do {
+ int rval = write(pch->current->writer,
+- offset + (const __u8 *) (*prompt_p),
++ offset + (const uint8_t *) (*prompt_p),
+ size - offset);
+ if (rval == -1) {
+ switch (errno) {
+@@ -171,7 +171,7 @@ int pamc_converse(pamc_handle_t pch, pam
+ value from the previous loop */
+
+ while (offset < size) {
+- int rval = read(pch->current->reader, offset + (__u8 *) *prompt_p,
++ int rval = read(pch->current->reader, offset + (uint8_t *) *prompt_p,
+ size-offset);
+
+ if (rval == -1) {