emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Emacs-diffs] Changes to emacs/lib-src/emacsclient.c


From: Richard M. Stallman
Subject: [Emacs-diffs] Changes to emacs/lib-src/emacsclient.c
Date: Thu, 11 Sep 2003 20:48:03 -0400

Index: emacs/lib-src/emacsclient.c
diff -c emacs/lib-src/emacsclient.c:1.60 emacs/lib-src/emacsclient.c:1.61
*** emacs/lib-src/emacsclient.c:1.60    Mon Sep  1 11:45:03 2003
--- emacs/lib-src/emacsclient.c Thu Sep 11 20:48:03 2003
***************
*** 67,72 ****
--- 67,75 ----
     is not running.  --alternate-editor.   */
  const char * alternate_editor = NULL;
  
+ /* If non-NULL, thefilename of the UNIX socket */
+ char *socket_name = NULL;
+ 
  void print_help_and_exit ();
  
  struct option longopts[] =
***************
*** 76,81 ****
--- 79,85 ----
    { "help",   no_argument,       NULL, 'H' },
    { "version",        no_argument,       NULL, 'V' },
    { "alternate-editor", required_argument, NULL, 'a' },
+   { "socket-name",    required_argument, NULL, 's' },
    { "display",        required_argument, NULL, 'd' },
    { 0, 0, 0, 0 }
  };
***************
*** 91,97 ****
    while (1)
      {
        int opt = getopt_long (argc, argv,
!                            "VHnea:d:", longopts, 0);
  
        if (opt == EOF)
        break;
--- 95,101 ----
    while (1)
      {
        int opt = getopt_long (argc, argv,
!                            "VHnea:s:d:", longopts, 0);
  
        if (opt == EOF)
        break;
***************
*** 109,114 ****
--- 113,122 ----
          alternate_editor = optarg;
          break;
  
+       case 's':
+         socket_name = optarg;
+         break;
+ 
        case 'd':
          display = optarg;
          break;
***************
*** 152,157 ****
--- 160,167 ----
  -n, --no-wait           Don't wait for the server to return\n\
  -e, --eval              Evaluate the FILE arguments as ELisp expressions\n\
  -d, --display=DISPLAY   Visit the file in the given display\n\
+ -s, --socket-name=FILENAME\n\
+                         Set the filename of the UNIX socket for 
communication\n\
  -a, --alternate-editor=EDITOR\n\
                          Editor to fallback to if the server is not running\n\
  \n\
***************
*** 347,353 ****
    {
      int sock_status = 0;
  
!     sprintf (server.sun_path, "/tmp/emacs%d-%s/server", (int) geteuid (), 
system_name);
  
      /* See if the socket exists, and if it's owned by us. */
      sock_status = socket_status (server.sun_path);
--- 357,374 ----
    {
      int sock_status = 0;
  
!     if (! socket_name)
!       {
!       socket_name = alloca (system_name_length + 100);
!       sprintf (socket_name, "/tmp/emacs%d-%s/server",
!                (int) geteuid (), system_name);
!       }
! 
!     if (strlen (socket_name) < sizeof (server.sun_path))
!       strcpy (server.sun_path, socket_name);
!     else
!       fprintf (stderr, "%s: socket-name %s too long",
!              argv[0], socket_name);
  
      /* See if the socket exists, and if it's owned by us. */
      sock_status = socket_status (server.sun_path);




reply via email to

[Prev in Thread] Current Thread [Next in Thread]