Lines Matching full:new

196 	/* heuristic to determine old versus new style addresses */
364 /* heuristic to determine old versus new style addresses */
452 ** new -- the (preparsed) address header for the recipient.
466 recipient(new, sendq, aliaslevel, e) in recipient() argument
467 register ADDRESS *new; in recipient()
491 initialdontsend = QS_IS_DEAD(new->q_state);
492 e->e_to = new->q_paddr;
493 m = new->q_mailer;
496 new->q_flags |= QPRIMARY;
500 printaddr(sm_debug_file(), new, false);
504 if (new->q_alias == NULL)
507 e->e_origrcpt = new->q_paddr;
508 else if (e->e_origrcpt != new->q_paddr)
513 for (q = new; q->q_alias != NULL; q = q->q_alias)
517 if (new->q_finalrcpt == NULL &&
570 new->q_finalrcpt = sm_rpool_strdup_x(e->e_rpool, frbuf);
575 if (new->q_orcpt == NULL)
579 new->q_orcpt = q->q_orcpt;
619 new->q_orcpt =
628 new->q_state = QS_BADADDR;
629 new->q_status = "5.4.6";
630 if (new->q_alias != NULL)
632 new->q_alias->q_state = QS_BADADDR;
633 new->q_alias->q_status = "5.4.6";
642 usrerrenh(new->q_status,
645 return new;
653 i = strlen(new->q_user);
664 (void) sm_strlcpy(buf, new->q_user, buflen);
675 if (new->q_alias == NULL || UseMSP ||
678 new->q_state = QS_BADADDR;
679 new->q_status = "5.7.1";
680 usrerrenh(new->q_status,
683 else if (bitset(QBOGUSSHELL, new->q_alias->q_flags))
685 new->q_state = QS_BADADDR;
686 new->q_status = "5.7.1";
687 if (new->q_alias->q_ruser == NULL)
688 usrerrenh(new->q_status,
690 (long) new->q_alias->q_uid);
692 usrerrenh(new->q_status,
694 new->q_alias->q_ruser, MyHostName);
696 else if (bitset(QUNSAFEADDR, new->q_alias->q_flags))
698 new->q_state = QS_BADADDR;
699 new->q_status = "5.7.1";
700 new->q_rstatus = "550 Unsafe for mailing to programs";
701 usrerrenh(new->q_status,
703 new->q_alias->q_paddr);
731 else if (NoConnect && bitnset(M_EXPENSIVE, new->q_mailer->m_flags))
749 i = (*sortfn)(new, q);
760 if (sameaddr(q, new) &&
767 new->q_paddr);
772 if (!QS_IS_DEAD(new->q_state))
776 q->q_flags |= new->q_flags;
787 q->q_state = new->q_state;
788 q->q_flags |= new->q_flags;
790 new = q;
813 new->q_next = *pq;
815 *sendq = new; /* To be the first ADDRESS */
817 (*prev)->q_next = new;
826 new->q_next = NULL;
827 *pq = new;
830 /* added a new address: clear split flag */
841 printaddr(sm_debug_file(), new, false);
844 if (!QS_IS_OK(new->q_state))
846 if (QS_IS_UNDELIVERED(new->q_state))
853 new->q_state = QS_INCLUDED;
854 if (new->q_alias == NULL || UseMSP ||
857 new->q_state = QS_BADADDR;
858 new->q_status = "5.7.1";
859 usrerrenh(new->q_status,
866 message("including file %s", new->q_user);
867 ret = include(new->q_user, false, new,
874 shortenstring(new->q_user,
877 new->q_state = QS_QUEUEUP;
879 shortenstring(new->q_user,
885 new->q_state = QS_BADADDR;
886 new->q_status = "5.2.4";
887 usrerrenh(new->q_status,
889 shortenstring(new->q_user,
898 if (new->q_alias == NULL || UseMSP ||
901 new->q_state = QS_BADADDR;
902 new->q_status = "5.7.1";
903 usrerrenh(new->q_status,
906 else if (bitset(QBOGUSSHELL, new->q_alias->q_flags))
908 new->q_state = QS_BADADDR;
909 new->q_status = "5.7.1";
910 if (new->q_alias->q_ruser == NULL)
911 usrerrenh(new->q_status,
913 (long) new->q_alias->q_uid);
915 usrerrenh(new->q_status,
917 new->q_alias->q_ruser, MyHostName);
919 else if (bitset(QUNSAFEADDR, new->q_alias->q_flags))
921 new->q_state = QS_BADADDR;
922 new->q_status = "5.7.1";
923 new->q_rstatus = "550 Unsafe for mailing to files";
924 usrerrenh(new->q_status,
926 new->q_alias->q_paddr);
931 if (!quoted && QS_IS_OK(new->q_state) &&
933 alias(new, sendq, aliaslevel, e);
937 if (!bitset(QNOTREMOTE, new->q_flags) &&
938 QS_IS_SENDABLE(new->q_state) &&
941 if (udbexpand(new, sendq, aliaslevel, e) == EX_TEMPFAIL)
943 new->q_state = QS_QUEUEUP;
947 if (new->q_message == NULL)
948 new->q_message = "Deferred: user database error";
972 printaddr(sm_debug_file(), new, false);
976 !bitset(QNOTREMOTE, new->q_flags) &&
977 QS_IS_OK(new->q_state))
979 maplocaluser(new, sendq, aliaslevel + 1, e);
987 if (QS_IS_OK(new->q_state) &&
999 new->q_state = QS_QUEUEUP;
1000 new->q_status = "4.5.2";
1001 giveresponse(EX_TEMPFAIL, new->q_status, m, NULL,
1002 new->q_alias, (time_t) 0, e, new);
1005 new->q_state = QS_BADADDR;
1006 new->q_status = "5.1.1";
1007 new->q_rstatus = "550 5.1.1 User unknown";
1008 giveresponse(EX_NOUSER, new->q_status, m, NULL,
1009 new->q_alias, (time_t) 0, e, new);
1015 new->q_user = sm_rpool_strdup_x(e->e_rpool,
1019 new->q_state = QS_BADADDR;
1020 new->q_status = "5.4.6";
1021 usrerrenh(new->q_status,
1032 new->q_home = NULL;
1034 new->q_home = "";
1036 new->q_home = sm_rpool_strdup_x(e->e_rpool,
1040 new->q_uid = user.mbdb_uid;
1041 new->q_gid = user.mbdb_gid;
1042 new->q_flags |= QGOODUID;
1044 new->q_ruser = sm_rpool_strdup_x(e->e_rpool,
1047 new->q_fullname = sm_rpool_strdup_x(e->e_rpool,
1051 new->q_flags |= QBOGUSSHELL;
1056 new->q_state = QS_VERIFIED;
1059 forward(new, sendq, aliaslevel, e);
1062 if (!QS_IS_DEAD(new->q_state))
1066 new->q_flags |= QTHISPASS;
1070 printaddr(sm_debug_file(), new, false);
1078 if (new->q_alias == NULL && new != &e->e_from &&
1079 QS_IS_DEAD(new->q_state))
1088 new->q_state = QS_BADADDR;
1089 new->q_status = "5.4.6";
1090 usrerrenh(new->q_status,
1096 new->q_flags |= QTHISPASS;
1125 /* check to see if this actually got a new owner */
1139 new->q_flags |= QEXPANDED;
1141 bitset(QPINGONSUCCESS, new->q_flags))
1144 new->q_paddr);
1147 new->q_flags |= QRCPTOK;
1150 return new;
1583 sm_dprintf("include: new uid = %ld/%ld\n",