proftpd/proftpd.patch

Tue, 29 Mar 2011 19:46:35 +0200

author
Michael Schloh von Bennewitz <michael@schloh.com>
date
Tue, 29 Mar 2011 19:46:35 +0200
changeset 333
4ecfc2416fd8
permissions
-rw-r--r--

Correct and introduce slightly needed logic, leading to better reliability:
Update bash(1) patch logic, correct several buildconf make location
errors, correct failed bash(1) configure invocation, enable perl(1) to
build with unpathed make(1), patch rpm(1) to correctly link with
internal libdb(3), and lastly unsuscessfully try to reorganize rpm patch
hunks.

     1 Index: mod_otp/mod_otp.c
     2 --- mod_otp/mod_otp.c.orig	2006-12-06 17:13:06 +0100
     3 +++ mod_otp/mod_otp.c	2009-01-27 08:33:56 +0100
     4 @@ -79,7 +79,7 @@
     5    CHECK_CONF(cmd, CONF_ROOT|CONF_VIRTUAL|CONF_GLOBAL);
     7    bool = get_boolean(cmd, 1);
     8 -  if ((bool == -1)
     9 +  if (bool == -1)
    10      CONF_ERROR(cmd, "expecting Boolean parameter");
    12    c = add_config_param(cmd->argv[0], 1, NULL);
    13 @@ -128,7 +128,7 @@
    14          ": error generating challenge for user '%s': %s", cmd->argv[1], str);
    16    } else
    17 -    pr_add_response_dup(R_DUP, "Challenge: [ %s ]", challenge);
    18 +    pr_response_add(R_DUP, "Challenge: [ %s ]", challenge);
    20    return DECLINED(cmd);
    21  }
    22 Index: mod_sql_odbc/mod_sql_odbc.c
    23 --- mod_sql_odbc/mod_sql_odbc.c.orig	2007-04-17 17:05:18 +0200
    24 +++ mod_sql_odbc/mod_sql_odbc.c	2009-01-27 19:16:56 +0100
    25 @@ -890,8 +890,8 @@
    27    /* Set up our timer, if necessary. */
    28    if (entry->ttl > 0) {
    29 -    entry->timer = add_timer(entry->ttl, -1, &sql_odbc_module,
    30 -      sqlodbc_timer_cb);
    31 +    entry->timer = pr_timer_add(entry->ttl, -1, &sql_odbc_module,
    32 +      sqlodbc_timer_cb, "mod_sql_odbc TTL");
    34      sql_log(DEBUG_INFO, "'%s' connection: %d second timer started",
    35        entry->name, entry->ttl);
    36 Index: mod_sql_sqlite/mod_sql_sqlite.c
    37 --- mod_sql_sqlite/mod_sql_sqlite.c.orig	2007-05-21 17:37:11 +0200
    38 +++ mod_sql_sqlite/mod_sql_sqlite.c	2009-01-27 19:15:57 +0100
    39 @@ -236,8 +236,8 @@
    41    /* Set up our timer, if necessary. */
    42    if (entry->ttl > 0) {
    43 -    entry->timer = add_timer(entry->ttl, -1, &sql_sqlite_module,
    44 -      sql_sqlite_timer_cb);
    45 +    entry->timer = pr_timer_add(entry->ttl, -1, &sql_sqlite_module,
    46 +      sql_sqlite_timer_cb, "mod_sql_sqlite TTL");
    48      sql_log(DEBUG_INFO, "'%s' connection: %d second timer started",
    49        entry->name, entry->ttl);
    50 Index: mod_time/mod_time.c
    51 --- mod_time/mod_time.c.orig	2004-05-12 20:57:06 +0200
    52 +++ mod_time/mod_time.c	2009-01-27 08:33:56 +0100
    53 @@ -146,7 +146,7 @@
    54    /* If we don't have a password file, we create an empty array and punt.
    55     */
    56    if (!pw) {
    57 -    if (!name || !(pw = (struct passwd *) auth_getpwnam(p, name))) {
    58 +    if (!name || !(pw = (struct passwd *) pr_auth_getpwnam(p, name))) {
    59        *gids = make_array(p, 2, sizeof(gid_t));
    60        *groups = make_array(p, 2, sizeof(char *));
    61        return;
    62 @@ -172,7 +172,7 @@
    63    /* Now populate the names of the groups.
    64     */
    65    for (i = 0; i < total; i++) {
    66 -    if ((gr = (struct group *) auth_getgrgid(p, ((gid_t *) xgids->elts)[i])))
    67 +    if ((gr = (struct group *) pr_auth_getgrgid(p, ((gid_t *) xgids->elts)[i])))
    68        *((char **) push_array(xgroups)) = pstrdup(p, gr->gr_name);
    69    }
    71 @@ -188,7 +188,7 @@
    72    /* Nothing there...punt.
    73     */
    74    if (!pw) {
    75 -    if (!name || !(pw = (struct passwd *) auth_getpwnam(p, name))) {
    76 +    if (!name || !(pw = (struct passwd *) pr_auth_getpwnam(p, name))) {
    77        *gids = xgids;
    78        *groups = xgroups;
    79        return;
    80 @@ -197,16 +197,16 @@
    82    /* Populate the first group name.
    83     */
    84 -  if ((gr = auth_getgrgid(p, pw->pw_gid)) != NULL)
    85 +  if ((gr = pr_auth_getgrgid(p, pw->pw_gid)) != NULL)
    86      *((char **) push_array(xgroups)) = pstrdup(p, gr->gr_name);
    88 -  auth_setgrent(p);
    89 +  pr_auth_setgrent(p);
    91    /* This is where things get slow, expensive, and ugly.
    92     * Loop through everything, checking to make sure we haven't already added
    93     * it.  This is why we have getgroups() and company.
    94     */
    95 -  while ((gr = auth_getgrent(p)) != NULL && gr->gr_mem)
    96 +  while ((gr = pr_auth_getgrent(p)) != NULL && gr->gr_mem)
    97      for (gr_mem = gr->gr_mem; *gr_mem; gr_mem++) {
    98        if (strcmp(*gr_mem, pw->pw_name) == 0) {
    99          *((int *) push_array(xgids)) = (int) gr->gr_gid;
   100 @@ -634,7 +634,7 @@
   101    if (!session.user) {
   102      /* Populate the pw struct, check for a NULL return value. */
   104 -    if ((pw = auth_getpwnam(cmd->tmp_pool, user)) == NULL)
   105 +    if ((pw = pr_auth_getpwnam(cmd->tmp_pool, user)) == NULL)
   106        return NULL;
   108      time_user = pstrdup(session.pool, pw->pw_name);
   109 @@ -1603,7 +1603,7 @@
   110         "%R", (session.c && session.c->remote_name ?  session.c->remote_name : "(unknown)"),
   111         "%L", main_server->ServerFQDN,
   112         "%U", user,
   113 -       "%u", session.ident_user,
   114 +       "%u", session.user,
   115         "%M", mesg_max,
   116         "%N", mesg_cur,
   117         "%E", main_server->ServerAdmin,

mercurial