annotate extensions/dbg_interactive/dbg_interactive.c @ 662:2e94ef0515d7 1.1.0-rc1

Updated copyright information
author Sebastien Decugis <sdecugis@nict.go.jp>
date Fri, 14 Jan 2011 16:27:21 +0900
parents f198d16fa7f4
children 4a9f08d6b6ba
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
609
2d15fd8ef5ba Very very early python interactive extension, using SWIG
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff changeset
1 /*********************************************************************************************************
2d15fd8ef5ba Very very early python interactive extension, using SWIG
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff changeset
2 * Software License Agreement (BSD License) *
2d15fd8ef5ba Very very early python interactive extension, using SWIG
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff changeset
3 * Author: Sebastien Decugis <sdecugis@nict.go.jp> *
2d15fd8ef5ba Very very early python interactive extension, using SWIG
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff changeset
4 * *
662
2e94ef0515d7 Updated copyright information
Sebastien Decugis <sdecugis@nict.go.jp>
parents: 658
diff changeset
5 * Copyright (c) 2011, WIDE Project and NICT *
609
2d15fd8ef5ba Very very early python interactive extension, using SWIG
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff changeset
6 * All rights reserved. *
2d15fd8ef5ba Very very early python interactive extension, using SWIG
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff changeset
7 * *
2d15fd8ef5ba Very very early python interactive extension, using SWIG
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff changeset
8 * Redistribution and use of this software in source and binary forms, with or without modification, are *
2d15fd8ef5ba Very very early python interactive extension, using SWIG
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff changeset
9 * permitted provided that the following conditions are met: *
2d15fd8ef5ba Very very early python interactive extension, using SWIG
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff changeset
10 * *
2d15fd8ef5ba Very very early python interactive extension, using SWIG
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff changeset
11 * * Redistributions of source code must retain the above *
2d15fd8ef5ba Very very early python interactive extension, using SWIG
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff changeset
12 * copyright notice, this list of conditions and the *
2d15fd8ef5ba Very very early python interactive extension, using SWIG
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff changeset
13 * following disclaimer. *
2d15fd8ef5ba Very very early python interactive extension, using SWIG
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff changeset
14 * *
2d15fd8ef5ba Very very early python interactive extension, using SWIG
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff changeset
15 * * Redistributions in binary form must reproduce the above *
2d15fd8ef5ba Very very early python interactive extension, using SWIG
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff changeset
16 * copyright notice, this list of conditions and the *
2d15fd8ef5ba Very very early python interactive extension, using SWIG
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff changeset
17 * following disclaimer in the documentation and/or other *
2d15fd8ef5ba Very very early python interactive extension, using SWIG
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff changeset
18 * materials provided with the distribution. *
2d15fd8ef5ba Very very early python interactive extension, using SWIG
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff changeset
19 * *
2d15fd8ef5ba Very very early python interactive extension, using SWIG
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff changeset
20 * * Neither the name of the WIDE Project or NICT nor the *
2d15fd8ef5ba Very very early python interactive extension, using SWIG
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff changeset
21 * names of its contributors may be used to endorse or *
2d15fd8ef5ba Very very early python interactive extension, using SWIG
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff changeset
22 * promote products derived from this software without *
2d15fd8ef5ba Very very early python interactive extension, using SWIG
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff changeset
23 * specific prior written permission of WIDE Project and *
2d15fd8ef5ba Very very early python interactive extension, using SWIG
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff changeset
24 * NICT. *
2d15fd8ef5ba Very very early python interactive extension, using SWIG
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff changeset
25 * *
2d15fd8ef5ba Very very early python interactive extension, using SWIG
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff changeset
26 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED *
2d15fd8ef5ba Very very early python interactive extension, using SWIG
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff changeset
27 * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A *
2d15fd8ef5ba Very very early python interactive extension, using SWIG
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff changeset
28 * PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR *
2d15fd8ef5ba Very very early python interactive extension, using SWIG
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff changeset
29 * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT *
2d15fd8ef5ba Very very early python interactive extension, using SWIG
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff changeset
30 * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS *
2d15fd8ef5ba Very very early python interactive extension, using SWIG
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff changeset
31 * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR *
2d15fd8ef5ba Very very early python interactive extension, using SWIG
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff changeset
32 * TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF *
2d15fd8ef5ba Very very early python interactive extension, using SWIG
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff changeset
33 * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. *
2d15fd8ef5ba Very very early python interactive extension, using SWIG
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff changeset
34 *********************************************************************************************************/
2d15fd8ef5ba Very very early python interactive extension, using SWIG
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff changeset
35
2d15fd8ef5ba Very very early python interactive extension, using SWIG
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff changeset
36 #include <Python.h>
2d15fd8ef5ba Very very early python interactive extension, using SWIG
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff changeset
37 #include <freeDiameter/extension.h>
2d15fd8ef5ba Very very early python interactive extension, using SWIG
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff changeset
38
2d15fd8ef5ba Very very early python interactive extension, using SWIG
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff changeset
39 /* wrapper generated by SWIG */
624
a5682d003ed9 Finally got the proxy aka shadow class to work
Sebastien Decugis <sdecugis@nict.go.jp>
parents: 621
diff changeset
40 #if PY_VERSION_HEX >= 0x03000000
a5682d003ed9 Finally got the proxy aka shadow class to work
Sebastien Decugis <sdecugis@nict.go.jp>
parents: 621
diff changeset
41 extern void PyInit__fDpy(void);
a5682d003ed9 Finally got the proxy aka shadow class to work
Sebastien Decugis <sdecugis@nict.go.jp>
parents: 621
diff changeset
42 #define WRAPPER_INIT PyInit__fDpy()
a5682d003ed9 Finally got the proxy aka shadow class to work
Sebastien Decugis <sdecugis@nict.go.jp>
parents: 621
diff changeset
43 #else /* PY_VERSION_HEX */
a5682d003ed9 Finally got the proxy aka shadow class to work
Sebastien Decugis <sdecugis@nict.go.jp>
parents: 621
diff changeset
44 extern void init_fDpy(void);
a5682d003ed9 Finally got the proxy aka shadow class to work
Sebastien Decugis <sdecugis@nict.go.jp>
parents: 621
diff changeset
45 #define WRAPPER_INIT init_fDpy()
a5682d003ed9 Finally got the proxy aka shadow class to work
Sebastien Decugis <sdecugis@nict.go.jp>
parents: 621
diff changeset
46 #endif /* PY_VERSION_HEX */
a5682d003ed9 Finally got the proxy aka shadow class to work
Sebastien Decugis <sdecugis@nict.go.jp>
parents: 621
diff changeset
47
a5682d003ed9 Finally got the proxy aka shadow class to work
Sebastien Decugis <sdecugis@nict.go.jp>
parents: 621
diff changeset
48 /* The string created in the shadow proxy C string file */
a5682d003ed9 Finally got the proxy aka shadow class to work
Sebastien Decugis <sdecugis@nict.go.jp>
parents: 621
diff changeset
49 extern unsigned char fDpy_py[];
a5682d003ed9 Finally got the proxy aka shadow class to work
Sebastien Decugis <sdecugis@nict.go.jp>
parents: 621
diff changeset
50 extern unsigned int fDpy_py_len;
609
2d15fd8ef5ba Very very early python interactive extension, using SWIG
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff changeset
51
2d15fd8ef5ba Very very early python interactive extension, using SWIG
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff changeset
52 /* Run an interactive interpreter in a separate thread */
2d15fd8ef5ba Very very early python interactive extension, using SWIG
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff changeset
53 static pthread_t pyinterp = (pthread_t)NULL;
2d15fd8ef5ba Very very early python interactive extension, using SWIG
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff changeset
54 static void * myinterp (void * arg)
2d15fd8ef5ba Very very early python interactive extension, using SWIG
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff changeset
55 {
618
1dbc4c5397d6 Attempting to improve python wrapper usability (work in progress)
Sebastien Decugis <sdecugis@nict.go.jp>
parents: 609
diff changeset
56 char * dum[3] = { "<dbg_interactive>", arg, NULL };
609
2d15fd8ef5ba Very very early python interactive extension, using SWIG
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff changeset
57 TRACE_ENTRY("%p", arg);
2d15fd8ef5ba Very very early python interactive extension, using SWIG
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff changeset
58
625
2cd2cf7abe2a Improvements to usability, still work ongoing
Sebastien Decugis <sdecugis@nict.go.jp>
parents: 624
diff changeset
59 fd_log_threadname ( "fDpy" );
2cd2cf7abe2a Improvements to usability, still work ongoing
Sebastien Decugis <sdecugis@nict.go.jp>
parents: 624
diff changeset
60
658
f198d16fa7f4 Initial commit for 1.1.0:
Sebastien Decugis <sdecugis@nict.go.jp>
parents: 639
diff changeset
61 CHECK_FCT_DO(fd_core_waitstartcomplete(), goto end);
618
1dbc4c5397d6 Attempting to improve python wrapper usability (work in progress)
Sebastien Decugis <sdecugis@nict.go.jp>
parents: 609
diff changeset
62
625
2cd2cf7abe2a Improvements to usability, still work ongoing
Sebastien Decugis <sdecugis@nict.go.jp>
parents: 624
diff changeset
63 fd_log_debug("\nStarting interactive python interpreter [experimental].\n");
2cd2cf7abe2a Improvements to usability, still work ongoing
Sebastien Decugis <sdecugis@nict.go.jp>
parents: 624
diff changeset
64 if (!arg)
2cd2cf7abe2a Improvements to usability, still work ongoing
Sebastien Decugis <sdecugis@nict.go.jp>
parents: 624
diff changeset
65 fd_log_debug("Example syntax:\n >>> print cvar.fd_g_config.cnf_diamid\n '%s'\n", fd_g_config->cnf_diamid);
618
1dbc4c5397d6 Attempting to improve python wrapper usability (work in progress)
Sebastien Decugis <sdecugis@nict.go.jp>
parents: 609
diff changeset
66 Py_Main(arg ? 2 : 1, dum);
609
2d15fd8ef5ba Very very early python interactive extension, using SWIG
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff changeset
67
625
2cd2cf7abe2a Improvements to usability, still work ongoing
Sebastien Decugis <sdecugis@nict.go.jp>
parents: 624
diff changeset
68 end:
639
95a784729cac Added new opaque pointer to fd_sess_handler_create and fd_disp_register for usability. Bumped API version number.
Sebastien Decugis <sdecugis@nict.go.jp>
parents: 625
diff changeset
69 /* Upon exit, issue the order of terminating to fD, if the interpreter was started without a file */
95a784729cac Added new opaque pointer to fd_sess_handler_create and fd_disp_register for usability. Bumped API version number.
Sebastien Decugis <sdecugis@nict.go.jp>
parents: 625
diff changeset
70 if (!arg) {
95a784729cac Added new opaque pointer to fd_sess_handler_create and fd_disp_register for usability. Bumped API version number.
Sebastien Decugis <sdecugis@nict.go.jp>
parents: 625
diff changeset
71 CHECK_FCT_DO(fd_event_send(fd_g_config->cnf_main_ev, FDEV_TERMINATE, 0, NULL), );
95a784729cac Added new opaque pointer to fd_sess_handler_create and fd_disp_register for usability. Bumped API version number.
Sebastien Decugis <sdecugis@nict.go.jp>
parents: 625
diff changeset
72 }
609
2d15fd8ef5ba Very very early python interactive extension, using SWIG
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff changeset
73
2d15fd8ef5ba Very very early python interactive extension, using SWIG
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff changeset
74 return NULL;
2d15fd8ef5ba Very very early python interactive extension, using SWIG
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff changeset
75 }
2d15fd8ef5ba Very very early python interactive extension, using SWIG
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff changeset
76
2d15fd8ef5ba Very very early python interactive extension, using SWIG
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff changeset
77 /* Register the callbacks to the daemon */
2d15fd8ef5ba Very very early python interactive extension, using SWIG
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff changeset
78 static int di_main(char * conffile)
2d15fd8ef5ba Very very early python interactive extension, using SWIG
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff changeset
79 {
624
a5682d003ed9 Finally got the proxy aka shadow class to work
Sebastien Decugis <sdecugis@nict.go.jp>
parents: 621
diff changeset
80 char * shadow_hlp = NULL;
a5682d003ed9 Finally got the proxy aka shadow class to work
Sebastien Decugis <sdecugis@nict.go.jp>
parents: 621
diff changeset
81 int mustfree = 0;
609
2d15fd8ef5ba Very very early python interactive extension, using SWIG
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff changeset
82 TRACE_ENTRY("%p", conffile);
2d15fd8ef5ba Very very early python interactive extension, using SWIG
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff changeset
83
2d15fd8ef5ba Very very early python interactive extension, using SWIG
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff changeset
84 Py_Initialize();
621
04dbea46c7a2 Cleanup many SWIG definitions from main .h files
Sebastien Decugis <sdecugis@nict.go.jp>
parents: 618
diff changeset
85
624
a5682d003ed9 Finally got the proxy aka shadow class to work
Sebastien Decugis <sdecugis@nict.go.jp>
parents: 621
diff changeset
86 WRAPPER_INIT;
609
2d15fd8ef5ba Very very early python interactive extension, using SWIG
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff changeset
87
624
a5682d003ed9 Finally got the proxy aka shadow class to work
Sebastien Decugis <sdecugis@nict.go.jp>
parents: 621
diff changeset
88 /* Small hack to avoid duplicating the string, we replace the last char by a \0.
a5682d003ed9 Finally got the proxy aka shadow class to work
Sebastien Decugis <sdecugis@nict.go.jp>
parents: 621
diff changeset
89 It works if the python file is terminated with several \n */
a5682d003ed9 Finally got the proxy aka shadow class to work
Sebastien Decugis <sdecugis@nict.go.jp>
parents: 621
diff changeset
90 if ( (fDpy_py[fDpy_py_len - 2] == '\n')
a5682d003ed9 Finally got the proxy aka shadow class to work
Sebastien Decugis <sdecugis@nict.go.jp>
parents: 621
diff changeset
91 && (fDpy_py[fDpy_py_len - 1] == '\n')) {
a5682d003ed9 Finally got the proxy aka shadow class to work
Sebastien Decugis <sdecugis@nict.go.jp>
parents: 621
diff changeset
92 fDpy_py[fDpy_py_len - 1] = '\0';
a5682d003ed9 Finally got the proxy aka shadow class to work
Sebastien Decugis <sdecugis@nict.go.jp>
parents: 621
diff changeset
93 shadow_hlp = (char *)&fDpy_py[0];
a5682d003ed9 Finally got the proxy aka shadow class to work
Sebastien Decugis <sdecugis@nict.go.jp>
parents: 621
diff changeset
94 } else {
a5682d003ed9 Finally got the proxy aka shadow class to work
Sebastien Decugis <sdecugis@nict.go.jp>
parents: 621
diff changeset
95 CHECK_MALLOC(shadow_hlp = malloc(fDpy_py_len + 1));
a5682d003ed9 Finally got the proxy aka shadow class to work
Sebastien Decugis <sdecugis@nict.go.jp>
parents: 621
diff changeset
96 memcpy(shadow_hlp, fDpy_py, fDpy_py_len);
a5682d003ed9 Finally got the proxy aka shadow class to work
Sebastien Decugis <sdecugis@nict.go.jp>
parents: 621
diff changeset
97 shadow_hlp[fDpy_py_len] = '\0';
a5682d003ed9 Finally got the proxy aka shadow class to work
Sebastien Decugis <sdecugis@nict.go.jp>
parents: 621
diff changeset
98 mustfree=1;
a5682d003ed9 Finally got the proxy aka shadow class to work
Sebastien Decugis <sdecugis@nict.go.jp>
parents: 621
diff changeset
99 }
a5682d003ed9 Finally got the proxy aka shadow class to work
Sebastien Decugis <sdecugis@nict.go.jp>
parents: 621
diff changeset
100
a5682d003ed9 Finally got the proxy aka shadow class to work
Sebastien Decugis <sdecugis@nict.go.jp>
parents: 621
diff changeset
101 PyRun_SimpleString("__file__ = \"\"\n");
a5682d003ed9 Finally got the proxy aka shadow class to work
Sebastien Decugis <sdecugis@nict.go.jp>
parents: 621
diff changeset
102 PyRun_SimpleString(shadow_hlp);
a5682d003ed9 Finally got the proxy aka shadow class to work
Sebastien Decugis <sdecugis@nict.go.jp>
parents: 621
diff changeset
103
a5682d003ed9 Finally got the proxy aka shadow class to work
Sebastien Decugis <sdecugis@nict.go.jp>
parents: 621
diff changeset
104 if (mustfree)
a5682d003ed9 Finally got the proxy aka shadow class to work
Sebastien Decugis <sdecugis@nict.go.jp>
parents: 621
diff changeset
105 free(shadow_hlp);
a5682d003ed9 Finally got the proxy aka shadow class to work
Sebastien Decugis <sdecugis@nict.go.jp>
parents: 621
diff changeset
106
609
2d15fd8ef5ba Very very early python interactive extension, using SWIG
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff changeset
107 CHECK_POSIX( pthread_create(&pyinterp, NULL, myinterp, conffile) );
2d15fd8ef5ba Very very early python interactive extension, using SWIG
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff changeset
108
2d15fd8ef5ba Very very early python interactive extension, using SWIG
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff changeset
109 return 0;
2d15fd8ef5ba Very very early python interactive extension, using SWIG
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff changeset
110 }
2d15fd8ef5ba Very very early python interactive extension, using SWIG
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff changeset
111
2d15fd8ef5ba Very very early python interactive extension, using SWIG
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff changeset
112 /* Terminate the extension */
2d15fd8ef5ba Very very early python interactive extension, using SWIG
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff changeset
113 void fd_ext_fini(void)
2d15fd8ef5ba Very very early python interactive extension, using SWIG
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff changeset
114 {
2d15fd8ef5ba Very very early python interactive extension, using SWIG
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff changeset
115 TRACE_ENTRY();
2d15fd8ef5ba Very very early python interactive extension, using SWIG
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff changeset
116
2d15fd8ef5ba Very very early python interactive extension, using SWIG
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff changeset
117 CHECK_FCT_DO(fd_thr_term(&pyinterp), );
2d15fd8ef5ba Very very early python interactive extension, using SWIG
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff changeset
118
2d15fd8ef5ba Very very early python interactive extension, using SWIG
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff changeset
119 /* Cleanup the python interpreter */
2d15fd8ef5ba Very very early python interactive extension, using SWIG
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff changeset
120 Py_Finalize();
2d15fd8ef5ba Very very early python interactive extension, using SWIG
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff changeset
121
2d15fd8ef5ba Very very early python interactive extension, using SWIG
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff changeset
122 return ;
2d15fd8ef5ba Very very early python interactive extension, using SWIG
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff changeset
123 }
2d15fd8ef5ba Very very early python interactive extension, using SWIG
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff changeset
124
2d15fd8ef5ba Very very early python interactive extension, using SWIG
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff changeset
125 /* Define the entry point function */
2d15fd8ef5ba Very very early python interactive extension, using SWIG
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
diff changeset
126 EXTENSION_ENTRY("dbg_interactive", di_main);
"Welcome to our mercurial repository"