Skip to content
  • This project
    • Loading...
  • Sign in

John McEleney / mailutils

Go to a project
Toggle navigation
Toggle navigation pinning
  • Projects
  • Groups
  • Snippets
  • Help
  • Project
  • Activity
  • Repository
  • Pipelines
  • Graphs
  • Issues 0
  • Merge Requests 0
  • Wiki
  • Network
  • Create a new issue
  • Builds
  • Commits
  • Issue Boards
  • Files
  • Commits
  • Network
  • Compare
  • Branches
  • Tags
Switch branch/tag
  • mailutils
  • libmailutils
  • url
  • get-auth.c
  • Sergey Poznyakoff's avatar
    Rewrite URL support. · 3327a23a ...
    3327a23a
    The purpose is to make it modular and flexible.  URLs are
    parsed out as they are created.  Missing URL parts can be
    supplied via a "URL hint" at creation time (similar to
    the approach used in creating mu_address_t).  Ports
    can be specified either as numbers or as service names.
    Original port string representation can be retrieved from
    the URL, as well as its numeric value.
    
    * libmailutils/url/accessor.h: New file.
    * libmailutils/url/copy.c: New file.
    * libmailutils/url/create.c: New file.
    * libmailutils/url/decode.c: New file.
    * libmailutils/url/destroy.c: New file.
    * libmailutils/url/dup.c: New file.
    * libmailutils/url/expand.c: New file.
    * libmailutils/url/flag.c: New file.
    * libmailutils/url/get-auth.c: New file.
    * libmailutils/url/get-host.c: New file.
    * libmailutils/url/get-param.c: New file.
    * libmailutils/url/get-path.c: New file.
    * libmailutils/url/get-portstr.c: New file.
    * libmailutils/url/get-query.c: New file.
    * libmailutils/url/get-scheme.c: New file.
    * libmailutils/url/get-secret.c: New file.
    * libmailutils/url/get-user.c: New file.
    * libmailutils/url/match.c: New file.
    * libmailutils/url/port.c: New file.
    * libmailutils/url/scheme.c: New file.
    * libmailutils/url/uplevel.c: New file.
    * libmailutils/url/urlstr.c: New file.
    
    * configure.ac (AC_CONFIG_FILES): Add libmailutils/url/Makefile
    * libmailutils/Makefile.am (SUBDIRS): Add url.
    (libmailutils_la_LIBADD): Link with liburl.
    * libmailutils/base/Makefile.am (libbase_la_SOURCES): Remove url.c
    * libmailutils/base/url.c: Remove.
    
    * libmailutils/string/Makefile.am (libstring_la_SOURCES): Add xdecode.c
    * libmailutils/string/xdecode.c: New file.
    
    * include/mailutils/sys/url.h (_mu_url): Change type to short.
    <_get_port>: Change second argument to unsigned.
    <_get_portstr>: New method.
    * include/mailutils/url.h (MU_URL_SCHEME): New flag.
    (MU_URL_PARSE_HEXCODE, MU_URL_PARSE_HIDEPASS)
    (MU_URL_PARSE_PORTSRV, MU_URL_PARSE_PORTWC)
    (MU_URL_PARSE_PIPE, MU_URL_PARSE_SLASH): New flags.
    (mu_url_create_hint, mu_url_copy_hints): New prototypes.
    (mu_url_parse): Remove.
    (mu_url_get_port): Change second argument to unsigned.
    (mu_url_decode_len,mu_url_decode): Remove.
    (mu_url_decode): New proto.
    (mu_url_sget_portstr, mu_url_aget_portstr)
    (mu_url_get_portstr): New protos.
    
    * include/mailutils/util.h (mu_str_url_decode)
    (mu_str_url_decode_inline): New protos.
    * libproto/pop/mbox.c (pop_open): Port is unsigned.
    
    * libproto/imap/folder.c: Use MU_URL_SCHEME in url_may_have.
    * libproto/maildir/folder.c: Likewise.
    * libproto/mailer/prog.c: Likewise.
    * libproto/mailer/remote.c: Likewise.
    * libproto/mailer/sendmail.c: Likewise.
    * libproto/mailer/smtp.c: Likewise.
    * libproto/mbox/folder.c: Likewise.
    * libproto/mh/folder.c: Likewise.
    * libproto/nntp/folder.c: Likewise.
    * libproto/pop/folder.c: Likewise.
    
    * imap4d/imap4d.c: Remove calls to mu_url_parse.
    * libmailutils/base/registrar.c: Likewise.
    * libmailutils/base/wicket.c: Likewise.
    * libmailutils/mailbox/folder.c: Likewise.
    * libmailutils/mailbox/mailbox.c: Likewise.
    * libmailutils/mailer/mailer.c: Likewise.
    * libmailutils/tests/url-parse.c: Likewise.
    * libmailutils/tests/wicket.c: Likewise.
    * libproto/mailer/smtp_auth.c: Likewise.
    * maidag/deliver.c: Likewise.
    * mu/wicket.c: Likewise.
    
    * libmailutils/mime/mimehdr.c (mu_mimehdr_decode_param): Use
    mu_str_url_decode, instead of mu_url_decode.
    * libmailutils/stream/tcp.c (_tcp_instance)<port>: Change type
    to unsigned short. All uses updated.
    (mu_tcp_stream_create_with_source_ip)
    (mu_tcp_stream_create_with_source_host)
    (mu_tcp_stream_create): Port is unsigned.
    * include/mailutils/stream.h (mu_tcp_stream_create_with_source_ip)
    (mu_tcp_stream_create_with_source_host)
    (mu_tcp_stream_create): Port is unsigned.
    * include/mailutils/cpp/url.h (get_port): Return unsigned.
    * libmu_cpp/url.cc (get_port): Return unsigned.
    (parse): Empty function. Schedule for removal.
    * python/libmu_py/url.c (api_url_parse): Empty function.
    Schedule for removal.
    (api_url_get_port): Port is unsigned.
    
    * libmailutils/base/wicket.c (mu_wicket_file_match_url)
    (mu_wicket_file_match_url): New parameter: parse_flags.
    * mu/wicket.c (wicket_match): Use parse_flags to control
    whether or not to show the plaintext password.
    
    * doc/texinfo/url.texi: Update.
    Sergey Poznyakoff authored 2010-10-26 13:36:28 +0300
get-auth.c 45 Bytes
Raw Blame History Permalink
1 2 3
#define URL_PART auth
#include "accessor.h"