msn-proxy-devel Mailing List for msn-proxy: the msn connection control
Brought to you by:
loos-br
You can subscribe to this list here.
| 2008 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
(1) |
Oct
|
Nov
|
Dec
(10) |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2009 |
Jan
(45) |
Feb
(19) |
Mar
(21) |
Apr
(17) |
May
(43) |
Jun
(11) |
Jul
(3) |
Aug
(17) |
Sep
(17) |
Oct
(1) |
Nov
(4) |
Dec
(7) |
| 2010 |
Jan
(1) |
Feb
|
Mar
|
Apr
(1) |
May
|
Jun
|
Jul
(2) |
Aug
|
Sep
(1) |
Oct
|
Nov
(3) |
Dec
(4) |
| 2011 |
Jan
(1) |
Feb
(3) |
Mar
(9) |
Apr
(1) |
May
|
Jun
(1) |
Jul
|
Aug
|
Sep
|
Oct
|
Nov
(1) |
Dec
|
| 2012 |
Jan
|
Feb
|
Mar
|
Apr
|
May
(8) |
Jun
(19) |
Jul
(1) |
Aug
(1) |
Sep
|
Oct
|
Nov
|
Dec
|
|
From: <lo...@us...> - 2012-08-23 19:32:28
|
Revision: 189
http://msn-proxy.svn.sourceforge.net/msn-proxy/?rev=189&view=rev
Author: loos-br
Date: 2012-08-23 19:32:22 +0000 (Thu, 23 Aug 2012)
Log Message:
-----------
Add more debug as i wasn't able to find what is causing the failure.
Modified Paths:
--------------
trunk/msn-proxy/protocol.c
Modified: trunk/msn-proxy/protocol.c
===================================================================
--- trunk/msn-proxy/protocol.c 2012-07-03 13:06:33 UTC (rev 188)
+++ trunk/msn-proxy/protocol.c 2012-08-23 19:32:22 UTC (rev 189)
@@ -1396,7 +1396,10 @@
else
end = str->len;
- if (str_copy(out, str->s + start, end - start) == 0) DIE_NOMEM();
+ if ((end - start) > 0 && str_copy(out, str->s + start, end - start) == 0) {
+ log->debug("%S: in: [%s][%d]\n", __func__, str, str->len);
+ DIE_NOMEM();
+ }
}
#define ISVALID(m) (m >= 33 && m <= 125)
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <lo...@us...> - 2012-07-03 13:06:43
|
Revision: 188
http://msn-proxy.svn.sourceforge.net/msn-proxy/?rev=188&view=rev
Author: loos-br
Date: 2012-07-03 13:06:33 +0000 (Tue, 03 Jul 2012)
Log Message:
-----------
simplify this code a little bit.
Modified Paths:
--------------
trunk/msn-proxy/protocol.c
Modified: trunk/msn-proxy/protocol.c
===================================================================
--- trunk/msn-proxy/protocol.c 2012-06-29 20:52:15 UTC (rev 187)
+++ trunk/msn-proxy/protocol.c 2012-07-03 13:06:33 UTC (rev 188)
@@ -1379,23 +1379,24 @@
void
msn_tok_epdata(string *str, string *out) {
- unsigned int start= 0;
- unsigned int end = 0;
+ unsigned int start = 0;
+ unsigned int end;
if (str == NULL || str->len == 0) return;
str->p = (unsigned char *)strchr((char *)str->s, ':');
if (str->p) {
- str->p++;
- start = str->p - str->s;
+ str->p++;
+ start = str->p - str->s;
}
str->p = (unsigned char *)strchr((char *)str->s, ';');
- if (str->p) {
- end = str->len - (str->p - str->s);
- }
+ if (str->p)
+ end = str->p - str->s;
+ else
+ end = str->len;
- if (str_copy(out, str->s + start, (str->len - start - end)) == 0) DIE_NOMEM();
+ if (str_copy(out, str->s + start, end - start) == 0) DIE_NOMEM();
}
#define ISVALID(m) (m >= 33 && m <= 125)
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <lo...@us...> - 2012-06-29 20:52:22
|
Revision: 187
http://msn-proxy.svn.sourceforge.net/msn-proxy/?rev=187&view=rev
Author: loos-br
Date: 2012-06-29 20:52:15 +0000 (Fri, 29 Jun 2012)
Log Message:
-----------
fix a compile warning.
Modified Paths:
--------------
trunk/msn-proxy/p2p.c
Modified: trunk/msn-proxy/p2p.c
===================================================================
--- trunk/msn-proxy/p2p.c 2012-06-29 13:37:33 UTC (rev 186)
+++ trunk/msn-proxy/p2p.c 2012-06-29 20:52:15 UTC (rev 187)
@@ -148,7 +148,7 @@
if (p2p->flags & P2P_FILE) {
p = RB_FIND(p2p_tree_, &p2p_head_, p2p);
if (p) {
- if (! p->flags & P2P_FILE ||
+ if (! (p->flags & P2P_FILE) ||
p->totalsize != p2p->totalsize) {
io_printf(1, "===> fail to update packet information\n");
return(RFAIL);
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <lo...@us...> - 2012-06-29 13:37:44
|
Revision: 186
http://msn-proxy.svn.sourceforge.net/msn-proxy/?rev=186&view=rev
Author: loos-br
Date: 2012-06-29 13:37:33 +0000 (Fri, 29 Jun 2012)
Log Message:
-----------
add the "make install" option again.
Modified Paths:
--------------
trunk/db-modules/mysql/CMakeLists.txt
trunk/msn-proxy/CMakeLists.txt
Modified: trunk/db-modules/mysql/CMakeLists.txt
===================================================================
--- trunk/db-modules/mysql/CMakeLists.txt 2012-06-29 13:35:43 UTC (rev 185)
+++ trunk/db-modules/mysql/CMakeLists.txt 2012-06-29 13:37:33 UTC (rev 186)
@@ -6,6 +6,11 @@
SET(CMAKE_C_FLAGS "-g -Wall -O2 -pipe -fno-builtin-log")
SET(MYSQL_SRCS mysql.c sql.c)
+SET(CMAKE_SHARED_MODULE_PREFIX "")
add_library (mysql MODULE ${MYSQL_SRCS})
target_link_libraries (mysql ${LIBS})
+
+install (TARGETS mysql LIBRARY DESTINATION lib/msn-proxy)
+install (FILES conf DESTINATION etc/msn-proxy/mysql PERMISSIONS OWNER_READ)
+install (DIRECTORY tables DESTINATION etc/msn-proxy/mysql)
Modified: trunk/msn-proxy/CMakeLists.txt
===================================================================
--- trunk/msn-proxy/CMakeLists.txt 2012-06-29 13:35:43 UTC (rev 185)
+++ trunk/msn-proxy/CMakeLists.txt 2012-06-29 13:37:33 UTC (rev 186)
@@ -4,6 +4,7 @@
set(LIBS ${LIBS} ${DL_LIBS})
SET(CMAKE_C_FLAGS "-g -Wall -O2 -pipe -fno-builtin-log")
+SET(CMAKE_C_LINK_FLAGS "${CMAKE_C_LINK_FLAGS} -rdynamic")
SET(MSN-PROXY_SRCS
base64.c
@@ -36,3 +37,6 @@
add_executable (msn-proxy ${MSN-PROXY_SRCS})
target_link_libraries (msn-proxy ${LIBS})
+
+install (TARGETS msn-proxy DESTINATION bin)
+install (FILES msn-proxy.conf DESTINATION etc/msn-proxy)
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <lo...@us...> - 2012-06-29 13:35:53
|
Revision: 185
http://msn-proxy.svn.sourceforge.net/msn-proxy/?rev=185&view=rev
Author: loos-br
Date: 2012-06-29 13:35:43 +0000 (Fri, 29 Jun 2012)
Log Message:
-----------
update the MySQL module version. fix the configuration file path.
Modified Paths:
--------------
trunk/db-modules/mysql/mysql.c
Modified: trunk/db-modules/mysql/mysql.c
===================================================================
--- trunk/db-modules/mysql/mysql.c 2012-06-29 12:41:46 UTC (rev 184)
+++ trunk/db-modules/mysql/mysql.c 2012-06-29 13:35:43 UTC (rev 185)
@@ -17,7 +17,7 @@
static const char rcsid[] = "$Id: mysql.c 137 2009-09-01 11:23:43Z loos-br $";
#define MODULE_NAME "mysql"
-#define MODULE_VERSION 2
+#define MODULE_VERSION 3
#include <sys/types.h>
#include <sys/stat.h>
@@ -40,7 +40,7 @@
#define print_bar(a) (a[strlen(a) - 1] == '/') ? "" : "/"
#ifndef MYSQLCONFDIR
-#define MYSQLCONFDIR "/usr/local/etc/msn-proxy"
+#define MYSQLCONFDIR "/usr/local/etc/msn-proxy/mysql"
#endif
/* global - mysql private data */
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <lo...@us...> - 2012-06-29 12:41:57
|
Revision: 184
http://msn-proxy.svn.sourceforge.net/msn-proxy/?rev=184&view=rev
Author: loos-br
Date: 2012-06-29 12:41:46 +0000 (Fri, 29 Jun 2012)
Log Message:
-----------
update the module version to reflect this new version (even if the API has not changed).
Modified Paths:
--------------
trunk/msn-proxy/db.h
Modified: trunk/msn-proxy/db.h
===================================================================
--- trunk/msn-proxy/db.h 2012-06-29 12:38:43 UTC (rev 183)
+++ trunk/msn-proxy/db.h 2012-06-29 12:41:46 UTC (rev 184)
@@ -23,7 +23,7 @@
#include "string.h"
-#define MINMOD_VERSION 2
+#define MINMOD_VERSION 3
struct mod_ {
/* cmds or functions */
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <lo...@us...> - 2012-06-29 12:38:54
|
Revision: 183
http://msn-proxy.svn.sourceforge.net/msn-proxy/?rev=183&view=rev
Author: loos-br
Date: 2012-06-29 12:38:43 +0000 (Fri, 29 Jun 2012)
Log Message:
-----------
update the mysql module as well to use the new MACRO for ENOMEM.
Modified Paths:
--------------
trunk/db-modules/mysql/mysql.c
trunk/db-modules/mysql/sql.c
Modified: trunk/db-modules/mysql/mysql.c
===================================================================
--- trunk/db-modules/mysql/mysql.c 2012-06-29 12:19:57 UTC (rev 182)
+++ trunk/db-modules/mysql/mysql.c 2012-06-29 12:38:43 UTC (rev 183)
@@ -157,7 +157,7 @@
if (table->sql.len == 0 || table->name.len == 0) continue;
sql.len = fmt_printf(NULL, (char *)table->sql.s, table->name.s);
- if (str_ready(&sql, sql.len + 1) == 0) die_nomem();
+ if (str_ready(&sql, sql.len + 1) == 0) DIE_NOMEM();
sql.len = fmt_printf(sql.s, (char *)table->sql.s, table->name.s);
if (db_query2(mysql, &sql) != ROK &&
mysql_errno(&mysql->mysql) != 0) {
@@ -223,22 +223,22 @@
if (!mysql->host.s) {
if (str_copys(&mysql->host, (unsigned char *)DEFAULT_MYSQL_HOST) == 0)
- die_nomem();
+ DIE_NOMEM();
}
if (!mysql->user.s) {
if (str_copys(&mysql->user, (unsigned char *)DEFAULT_MYSQL_USER) == 0)
- die_nomem();
+ DIE_NOMEM();
}
if (!mysql->pass.s) {
if (str_copys(&mysql->pass, (unsigned char *)DEFAULT_MYSQL_PASS) == 0)
- die_nomem();
+ DIE_NOMEM();
}
if (!mysql->db.s) {
if (str_copys(&mysql->db, (unsigned char *)DEFAULT_MYSQL_DB) == 0)
- die_nomem();
+ DIE_NOMEM();
}
if (mysql->port == 0)
@@ -329,15 +329,15 @@
return(RFAIL);
*table_ = (struct table__ *)malloc(sizeof(struct table__));
- if (*table_ == NULL) die_nomem();
+ if (*table_ == NULL) DIE_NOMEM();
table = *table_;
str_zero(&table->name);
str_zero(&table->sql);
table->size = size;
table->exist = 0;
- if (str_ready(&table->sql, table->size + 1) == 0) die_nomem();
- if (str_copy(&table->name, (unsigned char *)file, filelen) == 0) die_nomem();
+ if (str_ready(&table->sql, table->size + 1) == 0) DIE_NOMEM();
+ if (str_copy(&table->name, (unsigned char *)file, filelen) == 0) DIE_NOMEM();
/* open file and read read */
fd = open((char *)table->name.s, O_RDONLY);
@@ -495,7 +495,7 @@
label = "o host";
goto field_fail;
}
- if (str_copys(&mysql->host, (unsigned char *)key) == 0) die_nomem();
+ if (str_copys(&mysql->host, (unsigned char *)key) == 0) DIE_NOMEM();
/* port */
if (db_get_conf_key(&key, &p) == RFAIL) {
@@ -509,21 +509,21 @@
label = "the user";
goto field_fail;
}
- if (str_copys(&mysql->user, (unsigned char *)key) == 0) die_nomem();
+ if (str_copys(&mysql->user, (unsigned char *)key) == 0) DIE_NOMEM();
/* pass */
if (db_get_conf_key(&key, &p) == RFAIL) {
label = "the password";
goto field_fail;
}
- if (str_copys(&mysql->pass, (unsigned char *)key) == 0) die_nomem();
+ if (str_copys(&mysql->pass, (unsigned char *)key) == 0) DIE_NOMEM();
/* db */
if (db_get_conf_key(&key, &p) == RFAIL) {
label = "the database";
goto field_fail;
}
- if (str_copys(&mysql->db, (unsigned char *)key) == 0) die_nomem();
+ if (str_copys(&mysql->db, (unsigned char *)key) == 0) DIE_NOMEM();
if (db_read_tables(mysql, configdir) == RFAIL)
goto fail;
@@ -567,7 +567,7 @@
log->debug("debug: module " MODULE_NAME " loading...\n");
if (str_copys(&mod->modName, (unsigned char *)MODULE_NAME) == 0)
- die_nomem();
+ DIE_NOMEM();
mod->modVersion = MODULE_VERSION;
Modified: trunk/db-modules/mysql/sql.c
===================================================================
--- trunk/db-modules/mysql/sql.c 2012-06-29 12:19:57 UTC (rev 182)
+++ trunk/db-modules/mysql/sql.c 2012-06-29 12:38:43 UTC (rev 183)
@@ -34,11 +34,11 @@
str_zero(&buf);
if (len != sql->len)
- if (str_cats(sql, (unsigned char *)", ") == 0) die_nomem();
+ if (str_cats(sql, (unsigned char *)", ") == 0) DIE_NOMEM();
buf.len = fmt_printf(NULL, "`%S` = '%q'", key, value);
- if (str_ready(&buf, buf.len + 1) == 0) die_nomem();
+ if (str_ready(&buf, buf.len + 1) == 0) DIE_NOMEM();
buf.len = fmt_printf(buf.s, "`%S` = '%q'", key, value);
- if (str_cat(sql, buf.s, buf.len) == 0) die_nomem();
+ if (str_cat(sql, buf.s, buf.len) == 0) DIE_NOMEM();
str_free(&buf);
}
@@ -48,11 +48,11 @@
str_zero(&buf);
if (len != sql->len)
- if (str_cats(sql, (unsigned char *)", ") == 0) die_nomem();
+ if (str_cats(sql, (unsigned char *)", ") == 0) DIE_NOMEM();
buf.len = fmt_printf(NULL, "`%S` = '%d'", key, value);
- if (str_ready(&buf, buf.len + 1) == 0) die_nomem();
+ if (str_ready(&buf, buf.len + 1) == 0) DIE_NOMEM();
buf.len = fmt_printf(buf.s, "`%S` = '%d'", key, value);
- if (str_cat(sql, buf.s, buf.len) == 0) die_nomem();
+ if (str_cat(sql, buf.s, buf.len) == 0) DIE_NOMEM();
str_free(&buf);
}
@@ -62,11 +62,11 @@
str_zero(&buf);
if (len != sql->len)
- if (str_cats(sql, (unsigned char *)", ") == 0) die_nomem();
+ if (str_cats(sql, (unsigned char *)", ") == 0) DIE_NOMEM();
buf.len = fmt_printf(NULL, "`%S` = '%l'", key, value);
- if (str_ready(&buf, buf.len + 1) == 0) die_nomem();
+ if (str_ready(&buf, buf.len + 1) == 0) DIE_NOMEM();
buf.len = fmt_printf(buf.s, "`%S` = '%l'", key, value);
- if (str_cat(sql, buf.s, buf.len) == 0) die_nomem();
+ if (str_cat(sql, buf.s, buf.len) == 0) DIE_NOMEM();
str_free(&buf);
}
@@ -78,7 +78,7 @@
/* remove stale sb sessions */
sql.len = fmt_printf(NULL, "DELETE FROM sb");
- if (str_ready(&sql, sql.len + 1) == 0) die_nomem();
+ if (str_ready(&sql, sql.len + 1) == 0) DIE_NOMEM();
sql.len = fmt_printf(sql.s, "DELETE FROM sb");
if (db_query2(&mysql, &sql) == RFAIL)
@@ -88,7 +88,7 @@
sql.len = fmt_printf(NULL, "UPDATE contacts SET contact_status = 'OFF', "
"contact_deny = contact_deny & ~%d",
CONTACT_BLOCKED);
- if (str_ready(&sql, sql.len + 1) == 0) die_nomem();
+ if (str_ready(&sql, sql.len + 1) == 0) DIE_NOMEM();
sql.len = fmt_printf(sql.s, "UPDATE contacts SET contact_status = 'OFF', "
"contact_deny = contact_deny & ~%d",
CONTACT_BLOCKED);
@@ -101,7 +101,7 @@
/* logoff everyone */
sql.len = fmt_printf(NULL, "UPDATE users SET status = 'OFF'");
if (str_ready(&sql, sql.len + 1) == 0)
- die_nomem();
+ DIE_NOMEM();
sql.len = fmt_printf(sql.s, "UPDATE users SET status = 'OFF'");
if (db_query2(&mysql, &sql) == RFAIL)
@@ -128,7 +128,7 @@
"contact_deny = contact_deny & ~%d WHERE email = '%q'";
sql.len = fmt_printf(NULL, fmt, CONTACT_BLOCKED, email->s);
if(str_ready(&sql, sql.len + 1) == 0)
- die_nomem();
+ DIE_NOMEM();
sql.len = fmt_printf(sql.s, fmt, CONTACT_BLOCKED, email->s);
if (db_query2(&mysql, &sql) == RFAIL) {
@@ -140,7 +140,7 @@
fmt = "UPDATE users SET status = 'OFF' WHERE email = '%q'";
sql.len = fmt_printf(NULL, fmt, email->s);
if(str_ready(&sql, sql.len + 1) == 0)
- die_nomem();
+ DIE_NOMEM();
sql.len = fmt_printf(sql.s, fmt, email->s);
if (db_query2(&mysql, &sql) == RFAIL) {
@@ -164,7 +164,7 @@
"WHERE email = '%q'";
sql.len = fmt_printf(NULL, fmt, user->host.s, user->email.s);
if(str_ready(&sql, sql.len + 1) == 0)
- die_nomem();
+ DIE_NOMEM();
sql.len = fmt_printf(sql.s, fmt, user->host.s, user->email.s);
if (db_query2(&mysql, &sql) == RFAIL) {
@@ -192,7 +192,7 @@
sql.len = fmt_printf(NULL, fmt, user->email.s,
user->email.s, user->host.s);
if (str_ready(&sql, sql.len + 1) == 0)
- die_nomem();
+ DIE_NOMEM();
sql.len = fmt_printf(sql.s, fmt, user->email.s,
user->email.s, user->host.s);
@@ -217,7 +217,7 @@
str_zero(&sql);
sql.len = fmt_printf(NULL, fmt, user->status.s, user->email.s);
if (str_ready(&sql, sql.len + 1) == 0)
- die_nomem();
+ DIE_NOMEM();
sql.len = fmt_printf(sql.s, fmt, user->status.s, user->email.s);
if (db_query2(&mysql, &sql) == RFAIL) {
@@ -258,7 +258,7 @@
str_zero(&sql);
sql.len = fmt_printf(NULL, fmt, user->email.s);
if(str_ready(&sql, sql.len + 1) == 0)
- die_nomem();
+ DIE_NOMEM();
sql.len = fmt_printf(sql.s, fmt, user->email.s);
if (db_query2(&mysql, &sql) == RFAIL) {
@@ -278,7 +278,7 @@
str_zero(&sql);
sql.len = fmt_printf(NULL, fmt, id);
if(str_ready(&sql, sql.len + 1) == 0)
- die_nomem();
+ DIE_NOMEM();
sql.len = fmt_printf(sql.s, fmt, id);
if (db_query2(&mysql, &sql) == RFAIL) {
@@ -304,7 +304,7 @@
to->s ? to->s : (unsigned char *)"",
dn->s ? dn->s : (unsigned char *)"",
msg->s ? msg->s : (unsigned char *)"");
- if (str_ready(&sql, sql.len + 1) == 0) die_nomem();
+ if (str_ready(&sql, sql.len + 1) == 0) DIE_NOMEM();
sql.len = fmt_printf(sql.s, fmt, sb_id,
email->s ? email->s : (unsigned char *)"",
to->s ? to->s : (unsigned char *)"",
@@ -331,7 +331,7 @@
str_zero(&sql);
sql.len = fmt_printf(NULL, fmt);
- if (str_ready(&sql, sql.len + 1) == 0) die_nomem();
+ if (str_ready(&sql, sql.len + 1) == 0) DIE_NOMEM();
sql.a = fmt_printf(sql.s, fmt);
res = db_query(&mysql, &sql);
@@ -370,7 +370,7 @@
/* listen_host */
if (row[4]) {
if (str_copys(&defaults->proxy_ip, (unsigned char *)row[4]) == 0)
- die_nomem();
+ DIE_NOMEM();
}
res = db_free(res);
@@ -391,7 +391,7 @@
str_zero(&sql);
sql.len = fmt_printf(NULL, fmt, email->s);
if (str_ready(&sql, sql.len + 1) == 0)
- die_nomem();
+ DIE_NOMEM();
sql.len = fmt_printf(sql.s, fmt, email->s);
res = db_query(&mysql, &sql);
@@ -425,7 +425,7 @@
str_zero(&sql);
sql.len = fmt_printf(NULL, fmt, user->email.s);
if (str_ready(&sql, sql.len + 1) == 0)
- die_nomem();
+ DIE_NOMEM();
sql.len = fmt_printf(sql.s, fmt, user->email.s);
res = db_query(&mysql, &sql);
@@ -520,7 +520,7 @@
str_zero(&sql);
sql.len = fmt_printf(NULL, fmt, email->s);
- if (str_ready(&sql, sql.len + 1) == 0) die_nomem();
+ if (str_ready(&sql, sql.len + 1) == 0) DIE_NOMEM();
sql.len = fmt_printf(sql.s, fmt, email->s);
if (db_query2(&mysql, &sql) == RFAIL) {
@@ -540,7 +540,7 @@
str_zero(&sql);
sql.len = fmt_printf(NULL, fmt, email->s);
- if (str_ready(&sql, sql.len + 1) == 0) die_nomem();
+ if (str_ready(&sql, sql.len + 1) == 0) DIE_NOMEM();
sql.len = fmt_printf(sql.s, fmt, email->s);
if (db_query2(&mysql, &sql) == RFAIL) {
@@ -560,7 +560,7 @@
str_zero(&sql);
sql.len = fmt_printf(NULL, fmt, email->s);
- if (str_ready(&sql, sql.len + 1) == 0) die_nomem();
+ if (str_ready(&sql, sql.len + 1) == 0) DIE_NOMEM();
sql.len = fmt_printf(sql.s, fmt, email->s);
if (db_query2(&mysql, &sql) == RFAIL) {
@@ -589,7 +589,7 @@
contact->dn.len > 0 ? contact->dn.s : (unsigned char *)"",
contact->group.len > 0 ? contact->group.s : (unsigned char *)"",
contact->capab, contact->excapab, contact->deny);
- if (str_ready(&sql, sql.len + 1) == 0) die_nomem();
+ if (str_ready(&sql, sql.len + 1) == 0) DIE_NOMEM();
sql.len = fmt_printf(sql.s, fmt, email->s,
contact->uid.len > 0 ? contact->uid.s : (unsigned char *)"",
contact->c.s, contact->lists,
@@ -625,7 +625,7 @@
str_zero(&buf);
str_zero(&sql);
if (str_copys(&sql, (unsigned char *)"UPDATE contacts SET ") == 0)
- die_nomem();
+ DIE_NOMEM();
len = sql.len;
if ((contact->dn.len > 0 && contact->save->dn.len > 0 &&
@@ -637,7 +637,7 @@
if (str_copy(&contact->dn, contact->save->dn.s,
contact->save->dn.len) == 0)
- die_nomem();
+ DIE_NOMEM();
sql_data(&sql, len, "contact_dn", (char *)contact->dn.s);
}
}
@@ -647,7 +647,7 @@
if (str_copy(&contact->info, contact->save->info.s,
contact->save->info.len) == 0)
- die_nomem();
+ DIE_NOMEM();
sql_data(&sql, len, "contact_info", (char *)contact->info.s);
}
if ((contact->status.len > 0 && contact->save->status.len > 0 &&
@@ -656,7 +656,7 @@
if (str_copy(&contact->status, contact->save->status.s,
contact->save->status.len) == 0)
- die_nomem();
+ DIE_NOMEM();
sql_data(&sql, len, "contact_status", (char *)contact->status.s);
}
if ((contact->o.len > 0 && contact->save->o.len > 0 &&
@@ -665,7 +665,7 @@
if (str_copy(&contact->o, contact->save->o.s,
contact->save->o.len) == 0)
- die_nomem();
+ DIE_NOMEM();
sql_data(&sql, len, "contact_obj", (char *)contact->o.s);
}
if (contact->deny != contact->save->deny) {
@@ -705,12 +705,12 @@
"`email` = '%q' AND "
"`contact_email` = '%q'", user->email.s,
contact->c.s);
- if (str_ready(&buf, buf.len + 1) == 0) die_nomem();
+ if (str_ready(&buf, buf.len + 1) == 0) DIE_NOMEM();
buf.len = fmt_printf(buf.s, " WHERE "
"`email` = '%q' AND "
"`contact_email` = '%q'", user->email.s,
contact->c.s);
- if (buf.len > 0 && str_cat(&sql, buf.s, buf.len) == 0) die_nomem();
+ if (buf.len > 0 && str_cat(&sql, buf.s, buf.len) == 0) DIE_NOMEM();
str_free(&buf);
}
@@ -800,7 +800,7 @@
str_zero(&sql);
sql.len = fmt_printf(NULL, fmt, email->s, name->s);
- if (str_ready(&sql, sql.len + 1) == 0) die_nomem();
+ if (str_ready(&sql, sql.len + 1) == 0) DIE_NOMEM();
sql.len = fmt_printf(sql.s, fmt, email->s, name->s);
res = db_query(&mysql, &sql);
@@ -844,7 +844,7 @@
str_zero(&sql);
sql.len = fmt_printf(NULL, fmt, name->s, id->s, email->s, name->s);
- if (str_ready(&sql, sql.len + 1) == 0) die_nomem();
+ if (str_ready(&sql, sql.len + 1) == 0) DIE_NOMEM();
sql.len = fmt_printf(sql.s, fmt, name->s, id->s, email->s, name->s);
if (db_query2(&mysql, &sql) == RFAIL) {
@@ -864,7 +864,7 @@
str_zero(&sql);
sql.len = fmt_printf(NULL, fmt, email->s, name->s, id->s);
- if (str_ready(&sql, sql.len + 1) == 0) die_nomem();
+ if (str_ready(&sql, sql.len + 1) == 0) DIE_NOMEM();
sql.len = fmt_printf(sql.s, fmt, email->s, name->s, id->s);
if (db_query2(&mysql, &sql) == RFAIL) {
@@ -913,7 +913,7 @@
str_zero(&sql);
sql.len = fmt_printf(NULL, fmt, user->email.s, contact->c.s);
- if (str_ready(&sql, sql.len + 1) == 0) die_nomem();
+ if (str_ready(&sql, sql.len + 1) == 0) DIE_NOMEM();
sql.len = fmt_printf(sql.s, fmt, user->email.s, contact->c.s);
res = db_query(&mysql, &sql);
@@ -930,15 +930,15 @@
}
if (row[0] && strlen(row[0]) > 0) /* contact_email */
- if (str_copys(&contact->c, (unsigned char *)row[0]) == 0) die_nomem();
+ if (str_copys(&contact->c, (unsigned char *)row[0]) == 0) DIE_NOMEM();
if (row[1] && strlen(row[1]) > 0) /* contact_dn */
- if (str_copys(&contact->dn, (unsigned char *)row[1]) == 0) die_nomem();
+ if (str_copys(&contact->dn, (unsigned char *)row[1]) == 0) DIE_NOMEM();
if (row[2] && strlen(row[2]) > 0) /* contact_uid */
- if (str_copys(&contact->uid, (unsigned char *)row[2]) == 0) die_nomem();
+ if (str_copys(&contact->uid, (unsigned char *)row[2]) == 0) DIE_NOMEM();
if (row[3] && strlen(row[3]) > 0) /* contact_status */
- if (str_copys(&contact->status, (unsigned char *)row[3]) == 0) die_nomem();
+ if (str_copys(&contact->status, (unsigned char *)row[3]) == 0) DIE_NOMEM();
if (row[4] && strlen(row[4]) > 0) /* contact_info */
- if (str_copys(&contact->info, (unsigned char *)row[4]) == 0) die_nomem();
+ if (str_copys(&contact->info, (unsigned char *)row[4]) == 0) DIE_NOMEM();
contact->capab = row[5] ? atoll(row[5]) : 0; /* capab */
contact->excapab = row[6] ? atoll(row[6]) : 0; /* excapab */
@@ -967,7 +967,7 @@
str_zero(&sql);
sql.len = fmt_printf(NULL, fmt, user->email.s);
- if (str_ready(&sql, sql.len + 1) == 0) die_nomem();
+ if (str_ready(&sql, sql.len + 1) == 0) DIE_NOMEM();
sql.len = fmt_printf(sql.s, fmt, user->email.s);
res = db_query(&mysql, &sql);
@@ -984,18 +984,18 @@
if (row[0] == NULL || strlen(row[0]) == 0)
continue;
- if (str_copys(&c, (unsigned char *)row[0]) == 0) die_nomem();
+ if (str_copys(&c, (unsigned char *)row[0]) == 0) DIE_NOMEM();
contact = contact_add(user, &c);
str_free(&c);
if (row[1] && strlen(row[1]) > 0) /* contact_dn */
- if (str_copys(&contact->dn, (unsigned char *)row[1]) == 0) die_nomem();
+ if (str_copys(&contact->dn, (unsigned char *)row[1]) == 0) DIE_NOMEM();
if (row[2] && strlen(row[2]) > 0) /* contact_uid */
- if (str_copys(&contact->uid, (unsigned char *)row[2]) == 0) die_nomem();
+ if (str_copys(&contact->uid, (unsigned char *)row[2]) == 0) DIE_NOMEM();
if (row[3] && strlen(row[3]) > 0) /* contact_status */
- if (str_copys(&contact->status, (unsigned char *)row[3]) == 0) die_nomem();
+ if (str_copys(&contact->status, (unsigned char *)row[3]) == 0) DIE_NOMEM();
if (row[4] && strlen(row[4]) > 0) /* contact_info */
- if (str_copys(&contact->info, (unsigned char *)row[4]) == 0) die_nomem();
+ if (str_copys(&contact->info, (unsigned char *)row[4]) == 0) DIE_NOMEM();
contact->capab = row[5] ? atoll(row[5]) : 0; /* capab */
contact->excapab = row[6] ? atoll(row[6]) : 0; /* excapab */
@@ -1019,7 +1019,7 @@
str_zero(&sql);
sql.len = fmt_printf(NULL, fmt, email->s, contact->s);
- if (str_ready(&sql, sql.len + 1) == 0) die_nomem();
+ if (str_ready(&sql, sql.len + 1) == 0) DIE_NOMEM();
sql.len = fmt_printf(sql.s, fmt, email->s, contact->s);
if (db_query2(&mysql, &sql) == RFAIL) {
@@ -1043,7 +1043,7 @@
str_zero(&sql);
sql.len = fmt_printf(NULL, fmt);
- if (str_ready(&sql, sql.len + 1) == 0) die_nomem();
+ if (str_ready(&sql, sql.len + 1) == 0) DIE_NOMEM();
sql.len = fmt_printf(sql.s, fmt);
res = db_query(&mysql, &sql);
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <lo...@us...> - 2012-06-29 12:20:08
|
Revision: 182
http://msn-proxy.svn.sourceforge.net/msn-proxy/?rev=182&view=rev
Author: loos-br
Date: 2012-06-29 12:19:57 +0000 (Fri, 29 Jun 2012)
Log Message:
-----------
add more debug information on failed memory allocations. kind of incorrect implementation in general, but probably helpful for the case i want to fix.
Modified Paths:
--------------
trunk/msn-proxy/client.c
trunk/msn-proxy/command.c
trunk/msn-proxy/configure.c
trunk/msn-proxy/contacts.c
trunk/msn-proxy/ctl.c
trunk/msn-proxy/db.c
trunk/msn-proxy/msg.c
trunk/msn-proxy/msn-proxy.c
trunk/msn-proxy/msn-proxy.h
trunk/msn-proxy/msnp21.c
trunk/msn-proxy/net-io.c
trunk/msn-proxy/ns.c
trunk/msn-proxy/protocol.c
trunk/msn-proxy/sb.c
trunk/msn-proxy/server.c
trunk/msn-proxy/user.c
Modified: trunk/msn-proxy/client.c
===================================================================
--- trunk/msn-proxy/client.c 2012-06-03 19:11:41 UTC (rev 181)
+++ trunk/msn-proxy/client.c 2012-06-29 12:19:57 UTC (rev 182)
@@ -50,7 +50,7 @@
struct client_ *client;
client = (struct client_ *)malloc(sizeof(*client));
- if (client == NULL) die_nomem();
+ if (client == NULL) DIE_NOMEM();
memset(client, 0, sizeof(*client));
client->read.ev_fd = -1;
client->write.ev_fd = -1;
@@ -73,7 +73,7 @@
struct client_ *client;
client = (struct client_ *)malloc(sizeof(*client));
- if (client == NULL) die_nomem();
+ if (client == NULL) DIE_NOMEM();
memset(client, 0, sizeof(*client));
client->fd = -1;
Modified: trunk/msn-proxy/command.c
===================================================================
--- trunk/msn-proxy/command.c 2012-06-03 19:11:41 UTC (rev 181)
+++ trunk/msn-proxy/command.c 2012-06-29 12:19:57 UTC (rev 182)
@@ -33,7 +33,7 @@
/* alloc a new command storage */
rtrn = (command *)malloc(sizeof(command));
if (rtrn == (command *)0)
- die_nomem();
+ DIE_NOMEM();
/* zero everything */
memset(rtrn, 0, sizeof(command));
@@ -123,13 +123,13 @@
/* alloc string */
arg = str_alloc();
if (arg == (string *)0)
- die_nomem();
+ DIE_NOMEM();
/* increase args size and realloc */
cmd->args_len++;
cmd->args = args_alloc(cmd->args, cmd->args_len);
if (cmd->args == (string **)0)
- die_nomem();
+ DIE_NOMEM();
cmd->args[cmd->args_len - 1] = arg;
cmd->args[cmd->args_len] = (string *)0;
@@ -230,7 +230,7 @@
}
if (str_cat(&cmd->cmd, buf->p, 1) == 0)
- die_nomem();
+ DIE_NOMEM();
break;
@@ -248,7 +248,7 @@
cmds->arg = command_add_arg(cmd);
if (str_cat(cmds->arg, buf->p, 1) == 0)
- die_nomem();
+ DIE_NOMEM();
break;
}
@@ -281,7 +281,7 @@
return(ROK);
if (str_ready(&cmd->payload, cmds->payload_size + 1) == 0)
- die_nomem();
+ DIE_NOMEM();
cmds->state &= ~RECVMASK;
cmds->state |= PAYLOAD;
@@ -299,7 +299,7 @@
len = buf->len;
if (str_cat(&cmd->payload, buf->p, len) == 0)
- die_nomem();
+ DIE_NOMEM();
cmds->payload_size -= len;
buf->len -= len;
@@ -446,33 +446,33 @@
/* put command on buffer */
str_zero(&buf);
if (str_copy(&buf, cmd->cmd.s, cmd->cmd.len) == 0)
- die_nomem();
+ DIE_NOMEM();
/* send args */
while (arg && *arg) {
if (str_cat(&buf, (unsigned char *)" ", 1) == 0)
- die_nomem();
+ DIE_NOMEM();
if (str_cat(&buf, (*arg)->s, (*arg)->len) == 0)
- die_nomem();
+ DIE_NOMEM();
++arg;
}
/* end of line */
if (str_cat(&buf, (unsigned char *)"\r\n", 2) == 0)
- die_nomem();
+ DIE_NOMEM();
if (cmd->payload.len > 0 &&
str_cat(&buf, cmd->payload.s, cmd->payload.len) == 0) {
- die_nomem();
+ DIE_NOMEM();
}
log->protocol("[%s] send to %S ==> %s", email, to, &buf);
log->protocol("\n");
if (buf.len > 0 && str_cat(obuf, buf.s, buf.len) == 0)
- die_nomem();
+ DIE_NOMEM();
str_free(&buf);
}
@@ -494,7 +494,7 @@
commands_init(commands *cmds) {
/* alloc buffer */
if (str_ready(&cmds->buf, CMD_BUF) == 0)
- die_nomem();
+ DIE_NOMEM();
/* zero everything */
memset(cmds->buf.s, 0, cmds->buf.a);
Modified: trunk/msn-proxy/configure.c
===================================================================
--- trunk/msn-proxy/configure.c 2012-06-03 19:11:41 UTC (rev 181)
+++ trunk/msn-proxy/configure.c 2012-06-29 12:19:57 UTC (rev 182)
@@ -65,7 +65,7 @@
/* set the default config file path */
if (strlen(DEFAULT_CONFIG_FILE) > 0 &&
str_copys(&config->file, (unsigned char *)DEFAULT_CONFIG_FILE) == 0)
- die_nomem();
+ DIE_NOMEM();
/* setup the configuration parameters */
config->confkey = confKeys;
@@ -109,7 +109,7 @@
/* alloc buf */
if (str_ready(&buf, MAX_BUF) == 0)
- die_nomem();
+ DIE_NOMEM();
tmp.a = buf.a;
@@ -196,7 +196,7 @@
void
set_string(const unsigned char *val, string *conf) {
if (!val || strlen((char *)val) == 0 || !conf) return;
- if (str_copys(conf, val) == 0) die_nomem();
+ if (str_copys(conf, val) == 0) DIE_NOMEM();
}
void
Modified: trunk/msn-proxy/contacts.c
===================================================================
--- trunk/msn-proxy/contacts.c 2012-06-03 19:11:41 UTC (rev 181)
+++ trunk/msn-proxy/contacts.c 2012-06-29 12:19:57 UTC (rev 182)
@@ -133,11 +133,11 @@
struct contact_ *tmp;
contact = (struct contact_ *)malloc(sizeof(struct contact_));
- if (contact == NULL) die_nomem();
+ if (contact == NULL) DIE_NOMEM();
memset(contact, 0, sizeof (struct contact_));
if (c->len > 0 && str_copy(&contact->c, c->s, c->len) == 0)
- die_nomem();
+ DIE_NOMEM();
contact->updated = NONE;
tmp = RB_INSERT(contacts, &user->contacts, contact);
@@ -170,9 +170,9 @@
if (contact == NULL) {
contact = (struct contact_ *)malloc(sizeof(struct contact_));
- if (contact == NULL) die_nomem();
+ if (contact == NULL) DIE_NOMEM();
memset(contact, 0, sizeof (struct contact_));
- if (str_copy(&contact->c, c->s, c->len) == 0) die_nomem();
+ if (str_copy(&contact->c, c->s, c->len) == 0) DIE_NOMEM();
RB_INSERT(contacts, &user->contacts, contact);
contact->chat = NO;
contact->updated = NEW;
@@ -181,9 +181,9 @@
return (contact);
} else {
save = (struct contact_ *)malloc(sizeof(struct contact_));
- if (save == NULL) die_nomem();
+ if (save == NULL) DIE_NOMEM();
memset(save, 0, sizeof (struct contact_));
- if (str_copy(&save->c, contact->c.s, contact->c.len) == 0) die_nomem();
+ if (str_copy(&save->c, contact->c.s, contact->c.len) == 0) DIE_NOMEM();
save->deny = contact->deny;
save->chat = NO;
save->updated = NEW;
@@ -199,7 +199,7 @@
struct contact_ f;
memset(&f, 0, sizeof (struct contact_));
- if (c->len > 0 && str_copy(&f.c, c->s, c->len) == 0) die_nomem();
+ if (c->len > 0 && str_copy(&f.c, c->s, c->len) == 0) DIE_NOMEM();
contact = RB_FIND(contacts, &user->contacts, &f);
str_free(&f.c);
@@ -275,7 +275,7 @@
/* get contact e-mail */
str_zero(&c);
c.len = fmt_printf(NULL, "%s@%s", &name, &domain);
- if (str_ready(&c, c.len + 1) == 0) die_nomem();
+ if (str_ready(&c, c.len + 1) == 0) DIE_NOMEM();
c.len = fmt_printf(c.s, "%s@%s", &name, &domain);
if (c.len == 0) { str_free(&c); continue; }
@@ -299,13 +299,13 @@
contact->lists = lists | RL;
if (str_copy(&contact->dn, contact->c.s, contact->c.len) == 0)
- die_nomem();
+ DIE_NOMEM();
if (str_copys(&contact->status, (unsigned char *)"OFF") == 0)
- die_nomem();
+ DIE_NOMEM();
if (str_copys(&contact->group, (unsigned char *)"0") == 0)
- die_nomem();
+ DIE_NOMEM();
if (str_copys(&contact->uid, (unsigned char *)"0") == 0)
- die_nomem();
+ DIE_NOMEM();
}
}
xml_free(&xml_tag_head);
@@ -415,11 +415,11 @@
}
if (c.dn.len > 0 && str_copy(&save->dn, c.dn.s, c.dn.len) == 0)
- die_nomem();
+ DIE_NOMEM();
if (c.uid.len > 0 && str_copy(&save->uid, c.uid.s, c.uid.len) == 0)
- die_nomem();
+ DIE_NOMEM();
if (c.group.len > 0 && str_copy(&save->group, c.group.s, c.group.len) == 0)
- die_nomem();
+ DIE_NOMEM();
if (c.lists > 0)
save->lists = c.lists;
@@ -479,9 +479,9 @@
}
if (c.dn.len > 0 && str_copy(&save->dn, c.dn.s, c.dn.len) == 0)
- die_nomem();
+ DIE_NOMEM();
if (c.group.len > 0 && str_copy(&save->group, c.group.s, c.group.len) == 0)
- die_nomem();
+ DIE_NOMEM();
if (c.lists > 0)
save->lists = c.lists;
@@ -566,9 +566,9 @@
msn_tok_epdata(c, &save->c);
o = get_arg(cmd, 6);
if (o && o->len > 0 && str_copy(&save->o, o->s, o->len) == 0)
- die_nomem();
+ DIE_NOMEM();
if (s->len > 0 && str_copy(&save->status, s->s, s->len) == 0)
- die_nomem();
+ DIE_NOMEM();
save->capab = (get_arg(cmd, 5) == NULL) ? 0 : atoll((char *)cmd->args[5]->s);
/* check for blocked contacts */
@@ -580,7 +580,7 @@
switch (user->version) {
case MSNP15:
case MSNP18:
- if (str_copys(o, (unsigned char *)"0") == 0) die_nomem();
+ if (str_copys(o, (unsigned char *)"0") == 0) DIE_NOMEM();
break;
default:
str_free(o);
@@ -621,7 +621,7 @@
}
memset(&find, 0, sizeof (struct contact_));
- if (str_copy(&find.c, c->s, c->len) == 0) die_nomem();
+ if (str_copy(&find.c, c->s, c->len) == 0) DIE_NOMEM();
contact = RB_FIND(contacts, &user->contacts, &find);
contact_free(&find);
@@ -639,12 +639,12 @@
return(ROK);
}
if (c->len > 0 && str_copy(&save->c, c->s, c->len) == 0)
- die_nomem();
+ DIE_NOMEM();
o = get_arg(cmd, 6);
if (o && o->len > 0 && str_copy(&save->o, o->s, o->len) == 0)
- die_nomem();
+ DIE_NOMEM();
if (s->len > 0 && str_copy(&save->status, s->s, s->len) == 0)
- die_nomem();
+ DIE_NOMEM();
save->capab = (get_arg(cmd, 4) == NULL) ? 0 : atoll((char *)cmd->args[4]->s);
/* check for blocked contacts */
@@ -697,7 +697,7 @@
if (save == NULL)
return(ROK);
- if (str_copys(&save->status, (unsigned char *)"OFF") == 0) die_nomem();
+ if (str_copys(&save->status, (unsigned char *)"OFF") == 0) DIE_NOMEM();
save->deny &= ~CONTACT_BLOCKED;
(void)db.sql_contact_save(user, save);
@@ -750,11 +750,11 @@
return(ROK);
}
if (contact->c.len > 0 && str_copy(&save->c, contact->c.s, contact->c.len) == 0)
- die_nomem();
+ DIE_NOMEM();
if (o->len > 0 && str_copy(&save->o, o->s, o->len) == 0)
- die_nomem();
+ DIE_NOMEM();
if (s->len > 0 && str_copy(&save->status, s->s, s->len) == 0)
- die_nomem();
+ DIE_NOMEM();
f = (get_arg(cmd, 3) == NULL) ? "" : (char *)cmd->args[3]->s;
save->capab = strtoul(f, &ep, 10);
@@ -767,7 +767,7 @@
/* SEEIMG */
if (o && (user->commands & SEEIMG)) {
- if (str_copys(o, (unsigned char *)"0") == 0) die_nomem();
+ if (str_copys(o, (unsigned char *)"0") == 0) DIE_NOMEM();
}
if (db.sql_contact_save(user, save) == RFAIL)
@@ -819,12 +819,12 @@
return(ROK);
}
if (c->len > 0 && str_copy(&save->c, c->s, c->len) == 0)
- die_nomem();
+ DIE_NOMEM();
o = get_arg(cmd, 5);
if (o && o->len > 0 && str_copy(&save->o, o->s, o->len) == 0)
- die_nomem();
+ DIE_NOMEM();
if (s->len > 0 && str_copy(&save->status, s->s, s->len) == 0)
- die_nomem();
+ DIE_NOMEM();
save->capab = (get_arg(cmd, 4) == NULL) ? 0 : atoll((char *)cmd->args[4]->s);
/* check for blocked contacts */
@@ -836,7 +836,7 @@
switch (user->version) {
case MSNP15:
case MSNP18:
- if (str_copys(o, (unsigned char *)"0") == 0) die_nomem();
+ if (str_copys(o, (unsigned char *)"0") == 0) DIE_NOMEM();
break;
default:
str_free(o);
@@ -895,12 +895,12 @@
return(ROK);
}
if (c->len > 0 && str_copy(&save->c, c->s, c->len) == 0)
- die_nomem();
+ DIE_NOMEM();
o = get_arg(cmd, 4);
if (o && o->len > 0 && str_copy(&save->o, o->s, o->len) == 0)
- die_nomem();
+ DIE_NOMEM();
if (s->len > 0 && str_copy(&save->status, s->s, s->len) == 0)
- die_nomem();
+ DIE_NOMEM();
save->capab = (get_arg(cmd, 3) == NULL) ? 0 : atoll((char *)cmd->args[3]->s);
/* check for blocked contacts */
@@ -959,16 +959,16 @@
/* alloc new arg */
arg1 = str_alloc();
if (arg1 == (string *)0)
- die_nomem();
+ DIE_NOMEM();
arg2 = str_alloc();
if (arg2 == (string *)0)
- die_nomem();
+ DIE_NOMEM();
/* rewrite arg */
if (str_copys(arg1, (unsigned char *)"0") == 0 ||
str_copys(arg2, (unsigned char *)"0") == 0)
- die_nomem();
+ DIE_NOMEM();
/* set pointer arg */
cmd->args[1] = arg1;
@@ -1008,11 +1008,11 @@
/* alloc new arg */
arg1 = str_alloc();
if (arg1 == (string *)0)
- die_nomem();
+ DIE_NOMEM();
/* rewrite arg */
if (str_copys(arg1, (unsigned char *)"0") == 0)
- die_nomem();
+ DIE_NOMEM();
/* set pointer arg */
cmd->args[1] = arg1;
@@ -1035,11 +1035,11 @@
/* alloc new arg */
arg1 = str_alloc();
if (arg1 == (string *)0)
- die_nomem();
+ DIE_NOMEM();
arg1->len = fmt_printf(NULL, "%d", user->msnp8_syn_bug);
if (str_ready(arg1, arg1->len + 1) == 0)
- die_nomem();
+ DIE_NOMEM();
arg1->len = fmt_printf(arg1->s, "%d", user->msnp8_syn_bug);
/* set pointer arg */
@@ -1138,7 +1138,7 @@
/* find contact in db if exist */
memset(&cfind, 0, sizeof(struct contact_));
- if (str_copy(&cfind.c, c->data.s, c->data.len) == 0) die_nomem();
+ if (str_copy(&cfind.c, c->data.s, c->data.len) == 0) DIE_NOMEM();
contact = RB_FIND(contacts, &user->contacts, &cfind);
contact_free(&cfind);
Modified: trunk/msn-proxy/ctl.c
===================================================================
--- trunk/msn-proxy/ctl.c 2012-06-03 19:11:41 UTC (rev 181)
+++ trunk/msn-proxy/ctl.c 2012-06-29 12:19:57 UTC (rev 182)
@@ -81,7 +81,7 @@
/* alloc new ctl */
ctl = (struct ctl_ *)malloc(sizeof(struct ctl_));
- if (ctl == NULL) die_nomem();
+ if (ctl == NULL) DIE_NOMEM();
memset(ctl, 0, sizeof(struct ctl_));
/* misc set */
@@ -162,7 +162,7 @@
str_free(&ctl->buf);
ctl->end = 0;
}
- if (*p && str_cat(&ctl->buf, p, 1) == 0) die_nomem();
+ if (*p && str_cat(&ctl->buf, p, 1) == 0) DIE_NOMEM();
len--; p++;
}
Modified: trunk/msn-proxy/db.c
===================================================================
--- trunk/msn-proxy/db.c 2012-06-03 19:11:41 UTC (rev 181)
+++ trunk/msn-proxy/db.c 2012-06-29 12:19:57 UTC (rev 182)
@@ -93,7 +93,7 @@
}
if (db_mod->len > 0 && str_copy(&db.modPath, db_mod->s, db_mod->len) == 0)
- die_nomem();
+ DIE_NOMEM();
log->debug("loading db module.....: [%s]\n", &db.modPath);
db.data = dlopen((char *)db.modPath.s, RTLD_LAZY);
Modified: trunk/msn-proxy/msg.c
===================================================================
--- trunk/msn-proxy/msg.c 2012-06-03 19:11:41 UTC (rev 181)
+++ trunk/msn-proxy/msg.c 2012-06-29 12:19:57 UTC (rev 182)
@@ -39,7 +39,7 @@
return(ROK);
memset(&f, 0, sizeof(f));
- if (str_copy(&f.c, c->s, c->len) == 0) die_nomem();
+ if (str_copy(&f.c, c->s, c->len) == 0) DIE_NOMEM();
contact = RB_FIND(contacts, &user->contacts, &f);
contact_free(&f);
@@ -78,7 +78,7 @@
if (tmp->header.len > 0 &&
strcasecmp((char *)tmp->header.s, header) == 0) {
if (str_copy(value, tmp->value.s, tmp->value.len) == 0)
- die_nomem();
+ DIE_NOMEM();
return(ROK);
}
}
@@ -152,7 +152,7 @@
header = (header_ *)malloc(sizeof(header_));
if (!header)
- die_nomem();
+ DIE_NOMEM();
header->next = (header_ *)0;
str_zero(&header->header);
@@ -223,10 +223,10 @@
if (state == HEADER) {
if (str_cat(&header->header, msg->body.s, 1) == 0)
- die_nomem();
+ DIE_NOMEM();
} else if (state == VALUE) {
if (str_cat(&header->value, msg->body.s, 1) == 0)
- die_nomem();
+ DIE_NOMEM();
}
msg->body.len -= 1;
msg->body.s += 1;
@@ -479,7 +479,7 @@
strncmp((char *)mimev->value.s, "1.0", mimev->value.len) == 0) {
if (str_copy(&user->dn, nick->value.s, nick->value.len) == 0)
- die_nomem();
+ DIE_NOMEM();
/* update the sql database */
if (db.sql_update_user_dn(user) == RFAIL)
Modified: trunk/msn-proxy/msn-proxy.c
===================================================================
--- trunk/msn-proxy/msn-proxy.c 2012-06-03 19:11:41 UTC (rev 181)
+++ trunk/msn-proxy/msn-proxy.c 2012-06-29 12:19:57 UTC (rev 182)
@@ -100,7 +100,18 @@
}
}
-void die_nomem(void) { perror("malloc"); cleanup(); exit(51); }
+void
+die_nomem(const char *func, int line) {
+
+ /*
+ * The following function isn't safe to used here, since it tries to
+ * allocate more memory... not really useful in the case we are really
+ * running out of memory! beware!
+ */
+ io_printf(2, "%S: line %d: malloc: %S\n", func, line, strerror(errno));
+ cleanup();
+ exit(51);
+}
void die_bug(void) { io_printf(1, "oops bug here ! call my doctor !\n"); exit(2); }
void die(char *msg) { if (msg) { io_printf(1, "%S\n", msg); } cleanup(); exit(1); }
@@ -238,7 +249,7 @@
/* path to config */
if (strlen(optarg) > 0 &&
str_copys(&config.file, (unsigned char *)optarg) == 0)
- die_nomem();
+ DIE_NOMEM();
break;
case 'd':
Modified: trunk/msn-proxy/msn-proxy.h
===================================================================
--- trunk/msn-proxy/msn-proxy.h 2012-06-03 19:11:41 UTC (rev 181)
+++ trunk/msn-proxy/msn-proxy.h 2012-06-29 12:19:57 UTC (rev 182)
@@ -79,6 +79,8 @@
#define P2P_ACK 0x00000002
#define P2P_FILE 0x00002000
+#define DIE_NOMEM() die_nomem(__func__, __LINE__)
+
#ifndef MSNPROXY_VERSION
#define MSNPROXY_VERSION "0.8.1-beta"
#endif
@@ -102,7 +104,7 @@
#include "configure.h"
#include "syslog.h"
-void die_nomem(void);
+void die_nomem(const char *, int);
void die_err(char *msg);
void die_bug(void);
void die_suc(char *msg);
Modified: trunk/msn-proxy/msnp21.c
===================================================================
--- trunk/msn-proxy/msnp21.c 2012-06-03 19:11:41 UTC (rev 181)
+++ trunk/msn-proxy/msnp21.c 2012-06-29 12:19:57 UTC (rev 182)
@@ -224,7 +224,7 @@
#if 0
/* SEEIMG */
if (o && (user->commands & SEEIMG)) {
- if (str_copys(o, (unsigned char *)"0") == 0) die_nomem();
+ if (str_copys(o, (unsigned char *)"0") == 0) DIE_NOMEM();
}
#endif
@@ -352,7 +352,7 @@
/* get contact e-mail */
str_zero(&c);
c.len = fmt_printf(NULL, "%s@%s", &name, &domain);
- if (str_ready(&c, c.len + 1) == 0) die_nomem();
+ if (str_ready(&c, c.len + 1) == 0) DIE_NOMEM();
c.len = fmt_printf(c.s, "%s@%s", &name, &domain);
if (c.len == 0) { str_free(&c); continue; }
@@ -376,13 +376,13 @@
contact->lists = lists | RL;
if (str_copy(&contact->dn, contact->c.s, contact->c.len) == 0)
- die_nomem();
+ DIE_NOMEM();
if (str_copys(&contact->status, (unsigned char *)"OFF") == 0)
- die_nomem();
+ DIE_NOMEM();
if (str_copys(&contact->group, (unsigned char *)"0") == 0)
- die_nomem();
+ DIE_NOMEM();
if (str_copys(&contact->uid, (unsigned char *)"0") == 0)
- die_nomem();
+ DIE_NOMEM();
}
}
Modified: trunk/msn-proxy/net-io.c
===================================================================
--- trunk/msn-proxy/net-io.c 2012-06-03 19:11:41 UTC (rev 181)
+++ trunk/msn-proxy/net-io.c 2012-06-29 12:19:57 UTC (rev 182)
@@ -210,7 +210,7 @@
/* alloc new string */
port = str_alloc();
- if (port == NULL) die_nomem();
+ if (port == NULL) DIE_NOMEM();
/* find unused port in range */
for (count = 0; count < 10; count++) {
@@ -227,7 +227,7 @@
/* fmt port */
port->len = fmt_printf(NULL, "%d", random_port);
if (str_ready(port, port->len + 1) == 0)
- die_nomem();
+ DIE_NOMEM();
port->len = fmt_printf(port->s, "%d", random_port);
*listenfd = net_listen((char *)host->s, (char *)port->s, 1);
@@ -247,7 +247,7 @@
/* fmt return [IP:PORT] */
port->len = fmt_printf(NULL, "%s:%d", host, random_port);
- if (str_ready(port, port->len + 1) == 0) die_nomem();
+ if (str_ready(port, port->len + 1) == 0) DIE_NOMEM();
port->len = fmt_printf(port->s, "%s:%d", host, random_port);
return(port);
@@ -267,7 +267,7 @@
if ((strlen(host) > 0 && str_copys(str_host, (unsigned char *)host) == 0) ||
(strlen(port) > 0 && str_copys(str_port, (unsigned char *)port) == 0)) {
- die_nomem();
+ DIE_NOMEM();
}
return(ROK);
Modified: trunk/msn-proxy/ns.c
===================================================================
--- trunk/msn-proxy/ns.c 2012-06-03 19:11:41 UTC (rev 181)
+++ trunk/msn-proxy/ns.c 2012-06-29 12:19:57 UTC (rev 182)
@@ -311,7 +311,7 @@
string *port;
proxy = (struct client_ *)malloc(sizeof(*proxy));
- if (proxy == NULL) die_nomem();
+ if (proxy == NULL) DIE_NOMEM();
memset(proxy, 0, sizeof(*proxy));
proxy->fd = -1;
@@ -334,7 +334,7 @@
/* copy the host address */
if (port->len > 0 && str_copy(&proxy->host, port->s, port->len) == 0)
- die_nomem();
+ DIE_NOMEM();
/* event set */
event_set(&proxy->listen, proxy->fd, EV_READ, ns_proxy_client, user);
@@ -359,7 +359,7 @@
return(RFAIL);
proxy = (struct client_ *)malloc(sizeof(*proxy));
- if (proxy == NULL) die_nomem();
+ if (proxy == NULL) DIE_NOMEM();
memset(proxy, 0, sizeof(*proxy));
proxy->fd = -1;
@@ -382,7 +382,7 @@
/* copy the host address */
if (port->len > 0 && str_copy(&proxy->host, port->s, port->len) == 0)
- die_nomem();
+ DIE_NOMEM();
/* event set */
event_set(&proxy->listen, proxy->fd, EV_READ, ns_proxy_client, user);
@@ -487,7 +487,7 @@
/* copy the host address */
if (proxy->host.len > 0 &&
str_copy(&user->ns.client->host, proxy->host.s, proxy->host.len) == 0) {
- die_nomem();
+ DIE_NOMEM();
}
/* did we have any data to push to the client ? */
Modified: trunk/msn-proxy/protocol.c
===================================================================
--- trunk/msn-proxy/protocol.c 2012-06-03 19:11:41 UTC (rev 181)
+++ trunk/msn-proxy/protocol.c 2012-06-29 12:19:57 UTC (rev 182)
@@ -828,7 +828,7 @@
return(ROK);
if (str_copy(&user->email, email->s, email->len) == 0)
- die_nomem();
+ DIE_NOMEM();
/* update database */
if (db.sql_users_update(user) == RFAIL)
@@ -932,7 +932,7 @@
return(RFAIL);
if (str_copys(&user->status, (unsigned char *)"HDN") == 0)
- die_nomem();
+ DIE_NOMEM();
/* update sql */
if (db.sql_set_status(user) == RFAIL) {
@@ -1068,16 +1068,16 @@
/* fake command */
cmd = command_alloc();
- if (str_copy(&cmd->cmd, (unsigned char *)"MSG", 3) == 0) die_nomem();
+ if (str_copy(&cmd->cmd, (unsigned char *)"MSG", 3) == 0) DIE_NOMEM();
arg = command_add_arg(cmd);
if (warnemail.len > 0 && str_copy(arg, warnemail.s, warnemail.len) == 0)
- die_nomem();
+ DIE_NOMEM();
str_free(&warnemail);
arg = command_add_arg(cmd);
if (warndn.len > 0 && str_copy(arg, warndn.s, warndn.len) == 0)
- die_nomem();
+ DIE_NOMEM();
str_free(&warndn);
/* format msg payload */
@@ -1086,7 +1086,7 @@
"Content-Type: text/plain; charset=UTF-8\r\n"
"X-MMS-IM-Format: FN=%s; EF=; CO=%s; CS=0; PF=0\r\n\r\n%s",
&msgfont, &msgcolor, &warnmsg);
- if (str_ready(&cmd->payload, cmd->payload.len + 1) == 0) die_nomem();
+ if (str_ready(&cmd->payload, cmd->payload.len + 1) == 0) DIE_NOMEM();
cmd->payload.len = fmt_printf(cmd->payload.s,
"MIME-Version: 1.0\r\n"
"Content-Type: text/plain; charset=UTF-8\r\n"
@@ -1099,7 +1099,7 @@
/* add payload size */
arg = command_add_arg(cmd);
arg->len = fmt_printf(NULL, "%d", cmd->payload.len);
- if (str_ready(arg, arg->len + 1) == 0) die_nomem();
+ if (str_ready(arg, arg->len + 1) == 0) DIE_NOMEM();
arg->len = fmt_printf(arg->s, "%d", cmd->payload.len);
/* don't insert in database */
@@ -1137,17 +1137,17 @@
/* fake command */
cmd = command_alloc();
if (str_copy(&cmd->cmd, (unsigned char *)"MSG", 3) == 0) {
- die_nomem();
+ DIE_NOMEM();
}
arg = command_add_arg(cmd);
if (str_copy(arg, (unsigned char *)"99999", 6) == 0) {
- die_nomem();
+ DIE_NOMEM();
}
arg = command_add_arg(cmd);
if (str_copy(arg, (unsigned char *)"N", 1) == 0) {
- die_nomem();
+ DIE_NOMEM();
}
/* format msg payload */
@@ -1156,7 +1156,7 @@
"Content-Type: text/plain; charset=UTF-8\r\n"
"X-MMS-IM-Format: FN=%s; EF=; CO=%s; CS=0; PF=0\r\n\r\n%s: %s",
&msgfont, &msgcolor, &warnemail, &warnmsg);
- if (str_ready(&cmd->payload, cmd->payload.len + 1) == 0) die_nomem();
+ if (str_ready(&cmd->payload, cmd->payload.len + 1) == 0) DIE_NOMEM();
cmd->payload.len = fmt_printf(cmd->payload.s,
"MIME-Version: 1.0\r\n"
"Content-Type: text/plain; charset=UTF-8\r\n"
@@ -1171,7 +1171,7 @@
/* add payload size */
arg = command_add_arg(cmd);
arg->len = fmt_printf(NULL, "%d", cmd->payload.len);
- if (str_ready(arg, arg->len + 1) == 0) die_nomem();
+ if (str_ready(arg, arg->len + 1) == 0) DIE_NOMEM();
arg->len = fmt_printf(arg->s, "%d", cmd->payload.len);
/* don't insert in database */
@@ -1198,7 +1198,7 @@
/* fake command */
cmd = command_alloc();
cmd->ignore = 1;
- if (str_copy(&cmd->cmd, (unsigned char *)"FLN", 3) == 0) die_nomem();
+ if (str_copy(&cmd->cmd, (unsigned char *)"FLN", 3) == 0) DIE_NOMEM();
arg = command_add_arg(cmd);
if (user->version == MSNP18) {
@@ -1206,13 +1206,13 @@
(str_copys(arg, (unsigned char *)"1:") == 0 ||
str_cat(arg, contact->c.s, contact->c.len) == 0)) {
- die_nomem();
+ DIE_NOMEM();
}
} else {
if (contact->c.len > 0 &&
str_copy(arg, contact->c.s, contact->c.len) == 0) {
- die_nomem();
+ DIE_NOMEM();
}
}
@@ -1222,10 +1222,10 @@
case MSNP15:
case MSNP18:
arg = command_add_arg(cmd);
- if (str_copys(arg, (unsigned char *)"1") == 0) die_nomem();
+ if (str_copys(arg, (unsigned char *)"1") == 0) DIE_NOMEM();
arg = command_add_arg(cmd);
- if (str_copys(arg, (unsigned char *)"0") == 0) die_nomem();
+ if (str_copys(arg, (unsigned char *)"0") == 0) DIE_NOMEM();
break;
}
@@ -1251,13 +1251,13 @@
/* fake command */
cmd = command_alloc();
cmd->ignore = 1;
- if (str_copy(&cmd->cmd, (unsigned char *)"NLN", 3) == 0) die_nomem();
+ if (str_copy(&cmd->cmd, (unsigned char *)"NLN", 3) == 0) DIE_NOMEM();
/* status */
arg = command_add_arg(cmd);
if (contact->status.len > 0 &&
str_copy(arg, contact->status.s, contact->status.len) == 0)
- die_nomem();
+ DIE_NOMEM();
/* contact email */
arg = command_add_arg(cmd);
@@ -1266,13 +1266,13 @@
(str_copys(arg, (unsigned char *)"1:") == 0 ||
str_cat(arg, contact->c.s, contact->c.len) == 0)) {
- die_nomem();
+ DIE_NOMEM();
}
} else {
if (contact->c.len > 0 &&
str_copy(arg, contact->c.s, contact->c.len) == 0) {
- die_nomem();
+ DIE_NOMEM();
}
}
@@ -1280,7 +1280,7 @@
if (user->version == MSNP13 || user->version == MSNP15) {
arg = command_add_arg(cmd);
- if (str_copys(arg, (unsigned char *)"1") == 0) die_nomem();
+ if (str_copys(arg, (unsigned char *)"1") == 0) DIE_NOMEM();
}
/* display name */
@@ -1290,7 +1290,7 @@
str_zero(&dn);
(void)msn_encode(&contact->dn, &dn);
if (dn.len > 0 && str_copy(arg, dn.s, dn.len) == 0)
- die_nomem();
+ DIE_NOMEM();
}
str_free(&dn);
@@ -1298,11 +1298,11 @@
arg = command_add_arg(cmd);
if (user->version == MSNP18) {
arg->len = fmt_printf(NULL, "%l:%l", contact->capab, contact->excapab);
- if (str_ready(arg, arg->len + 1) == 0) die_nomem();
+ if (str_ready(arg, arg->len + 1) == 0) DIE_NOMEM();
arg->len = fmt_printf(arg->s, "%l:%l", contact->capab, contact->excapab);
} else {
arg->len = fmt_printf(NULL, "%l", contact->capab);
- if (str_ready(arg, arg->len + 1) == 0) die_nomem();
+ if (str_ready(arg, arg->len + 1) == 0) DIE_NOMEM();
arg->len = fmt_printf(arg->s, "%l", contact->capab);
}
@@ -1310,10 +1310,10 @@
arg = command_add_arg(cmd);
if (contact->o.len > 0) {
if (str_copy(arg, contact->o.s, contact->o.len) == 0)
- die_nomem();
+ DIE_NOMEM();
} else {
if (str_copys(arg, (unsigned char *)"0") == 0)
- die_nomem();
+ DIE_NOMEM();
}
/* add command to queue */
@@ -1325,7 +1325,7 @@
/* fake command */
cmd = command_alloc();
cmd->ignore = 1;
- if (str_copys(&cmd->cmd, (unsigned char *)"UBX") == 0) die_nomem();
+ if (str_copys(&cmd->cmd, (unsigned char *)"UBX") == 0) DIE_NOMEM();
/* user */
arg = command_add_arg(cmd);
@@ -1333,11 +1333,11 @@
(str_copys(arg, (unsigned char *)"1:") == 0 ||
str_cat(arg, contact->c.s, contact->c.len) == 0)) {
- die_nomem();
+ DIE_NOMEM();
}
arg = command_add_arg(cmd);
- if (str_copys(arg, (unsigned char *)"0") == 0) die_nomem();
+ if (str_copys(arg, (unsigned char *)"0") == 0) DIE_NOMEM();
/* add command to queue */
commands_add_command(&user->ns.server->commands, cmd);
@@ -1368,7 +1368,7 @@
/* add the fake out command */
cmd = command_alloc();
if (str_copy(&cmd->cmd, (unsigned char *)"OUT", 3) == 0)
- die_nomem();
+ DIE_NOMEM();
/* add command to queue */
commands_add_command(&user->ns.client->commands, cmd);
@@ -1395,7 +1395,7 @@
end = str->len - (str->p - str->s);
}
- if (str_copy(out, str->s + start, (str->len - start - end)) == 0) die_nomem();
+ if (str_copy(out, str->s + start, (str->len - start - end)) == 0) DIE_NOMEM();
}
#define ISVALID(m) (m >= 33 && m <= 125)
Modified: trunk/msn-proxy/sb.c
===================================================================
--- trunk/msn-proxy/sb.c 2012-06-03 19:11:41 UTC (rev 181)
+++ trunk/msn-proxy/sb.c 2012-06-29 12:19:57 UTC (rev 182)
@@ -86,7 +86,7 @@
struct sb_ *sb;
sb = (struct sb_ *)malloc(sizeof(struct sb_));
- if (sb == NULL) die_nomem();
+ if (sb == NULL) DIE_NOMEM();
memset(sb, 0, sizeof(struct sb_));
sb->user = user;
@@ -118,11 +118,11 @@
struct sb_user_ *tmp;
sb_user = (struct sb_user_ *)malloc(sizeof(struct sb_user_));
- if (sb_user == NULL) die_nomem();
+ if (sb_user == NULL) DIE_NOMEM();
memset(sb_user, 0, sizeof(struct sb_user_));
if (email->len > 0 && str_copy(&sb_user->email, email->s, email->len) == 0)
- die_nomem();
+ DIE_NOMEM();
/* insert/very the rb list */
tmp = RB_INSERT(sb_users_, &sb->sb_users, sb_user);
@@ -161,17 +161,17 @@
if (type == SERVER && email && email->len > 0 &&
strcmp((char *)sb_user->email.s, (char *)email->s) == 0) {
if (to_start && str_cats(to, (unsigned char *)", ") == 0)
- die_nomem();
+ DIE_NOMEM();
if (user->dn.len > 0 &&
str_cat(to, user->dn.s, user->dn.len) == 0)
- die_nomem();
+ DIE_NOMEM();
if (str_cats(to, (unsigned char *)" (") == 0)
- die_nomem();
+ DIE_NOMEM();
if (user->email.len > 0 &&
str_cat(to, user->email.s, user->email.len) == 0)
- die_nomem();
+ DIE_NOMEM();
if (str_cats(to, (unsigned char *)")") == 0)
- die_nomem();
+ DIE_NOMEM();
if (!to_start) to_start = 1;
@@ -179,7 +179,7 @@
memset(&f, 0, sizeof(f));
if (str_copy(&f.c, sb_user->email.s, sb_user->email.len) == 0)
- die_nomem();
+ DIE_NOMEM();
contact = RB_FIND(contacts, &user->contacts, &f);
contact_free(&f);
@@ -200,17 +200,17 @@
}
if (to_start && str_cats(to, (unsigned char *)", ") == 0)
- die_nomem();
+ DIE_NOMEM();
if (contact && contact->dn.len > 0 &&
str_cat(to, contact->dn.s, contact->dn.len) == 0)
- die_nomem();
+ DIE_NOMEM();
if (str_cats(to, (unsigned char *)" (") == 0)
- die_nomem();
+ DIE_NOMEM();
if (sb_user->email.len > 0 &&
str_cat(to, sb_user->email.s, sb_user->email.len) == 0)
- die_nomem();
+ DIE_NOMEM();
if (str_cats(to, (unsigned char *)")") == 0)
- die_nomem();
+ DIE_NOMEM();
if (!to_start) to_start = 1;
}
@@ -581,7 +581,7 @@
/* save the proxy address */
if (port->len > 0 && str_copy(&client->host, port->s, port->len) == 0)
- die_nomem();
+ DIE_NOMEM();
/* event set */
event_set(&client->listen, client->fd, EV_READ, sb_connect, sb);
Modified: trunk/msn-proxy/server.c
===================================================================
--- trunk/msn-proxy/server.c 2012-06-03 19:11:41 UTC (rev 181)
+++ trunk/msn-proxy/server.c 2012-06-29 12:19:57 UTC (rev 182)
@@ -101,7 +101,7 @@
/* alloc */
server = (struct server_ *)malloc(sizeof(*server));
- if (server == NULL) die_nomem();
+ if (server == NULL) DIE_NOMEM();
/* zero everything */
memset(server, 0, sizeof(*server));
@@ -139,7 +139,7 @@
return(server);
server = server_alloc();
- if (server == NULL) die_nomem();
+ if (server == NULL) DIE_NOMEM();
/* XXX */
str_zero(&tmp);
Modified: trunk/msn-proxy/user.c
===================================================================
--- trunk/msn-proxy/user.c 2012-06-03 19:11:41 UTC (rev 181)
+++ trunk/msn-proxy/user.c 2012-06-29 12:19:57 UTC (rev 182)
@@ -77,7 +77,7 @@
/* save user status */
if (str_copy(&user->status, status->s, status->len) == 0)
- die_nomem();
+ DIE_NOMEM();
//user->flags = arg[2];
@@ -98,7 +98,7 @@
switch (user->version) {
case MSNP15:
case MSNP18:
- if (str_copys(o, (unsigned char *)"0") == 0) die_nomem();
+ if (str_copys(o, (unsigned char *)"0") == 0) DIE_NOMEM();
break;
default:
str_free(o);
@@ -195,7 +195,7 @@
/* alloc new user */
user = (struct user_ *)malloc(sizeof(struct user_));
- if (user == NULL) die_nomem();
+ if (user == NULL) DIE_NOMEM();
/* zero everything */
memset(user, 0, sizeof(struct user_));
@@ -206,7 +206,7 @@
user->state = PRE_AUTH;
RB_INIT(&user->contacts);
LIST_INIT(&user->sbs);
- if (str_copys(&user->status, (unsigned char *)"OFF") == 0) die_nomem();
+ if (str_copys(&user->status, (unsigned char *)"OFF") == 0) DIE_NOMEM();
/* get the user ip address */
if (resolve_client(&user->host, &user->port, sa, sa_len) == RFAIL) {
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <lo...@us...> - 2012-06-03 19:11:47
|
Revision: 181
http://msn-proxy.svn.sourceforge.net/msn-proxy/?rev=181&view=rev
Author: loos-br
Date: 2012-06-03 19:11:41 +0000 (Sun, 03 Jun 2012)
Log Message:
-----------
add the missing cmake find mysql module.
Added Paths:
-----------
trunk/cmake/FindMySQL.cmake
Added: trunk/cmake/FindMySQL.cmake
===================================================================
--- trunk/cmake/FindMySQL.cmake (rev 0)
+++ trunk/cmake/FindMySQL.cmake 2012-06-03 19:11:41 UTC (rev 181)
@@ -0,0 +1,47 @@
+# - Find mysqlclient
+# Find the native MySQL includes and library
+#
+# MYSQL_INCLUDE_DIR - where to find mysql.h, etc.
+# MYSQL_LIBS - List of libraries when using MySQL.
+# MYSQL_FOUND - True if MySQL found.
+
+IF (MYSQL_INCLUDE_DIR)
+ # Already in cache, be silent
+ SET(MYSQL_FIND_QUIETLY TRUE)
+ENDIF (MYSQL_INCLUDE_DIR)
+
+FIND_PATH(MYSQL_INCLUDE_DIR mysql.h
+ /usr/local/include/mysql
+ /usr/include/mysql
+)
+
+SET(MYSQL_NAMES mysqlclient mysqlclient_r)
+FIND_LIBRARY(MYSQL_LIBRARY
+ NAMES ${MYSQL_NAMES}
+ PATHS /usr/lib /usr/local/lib
+ PATH_SUFFIXES mysql
+)
+
+IF (MYSQL_INCLUDE_DIR AND MYSQL_LIBRARY)
+ SET(MYSQL_FOUND TRUE)
+ SET( MYSQL_LIBS ${MYSQL_LIBRARY} )
+ELSE (MYSQL_INCLUDE_DIR AND MYSQL_LIBRARY)
+ SET(MYSQL_FOUND FALSE)
+ SET( MYSQL_LIBS )
+ENDIF (MYSQL_INCLUDE_DIR AND MYSQL_LIBRARY)
+
+IF (MYSQL_FOUND)
+ IF (NOT MYSQL_FIND_QUIETLY)
+ MESSAGE(STATUS "Found MySQL: ${MYSQL_LIBRARY}")
+ ENDIF (NOT MYSQL_FIND_QUIETLY)
+ELSE (MYSQL_FOUND)
+ IF (MYSQL_FIND_REQUIRED)
+ MESSAGE(STATUS "Looked for MySQL libraries named ${MYSQL_NAMES}.")
+ MESSAGE(FATAL_ERROR "Could NOT find MySQL library")
+ ENDIF (MYSQL_FIND_REQUIRED)
+ENDIF (MYSQL_FOUND)
+
+MARK_AS_ADVANCED(
+ MYSQL_LIBS
+ MYSQL_INCLUDE_DIR
+ )
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <lo...@us...> - 2012-06-03 19:05:20
|
Revision: 180
http://msn-proxy.svn.sourceforge.net/msn-proxy/?rev=180&view=rev
Author: loos-br
Date: 2012-06-03 19:05:14 +0000 (Sun, 03 Jun 2012)
Log Message:
-----------
adding cmake files for MySQL building (not ready yet - still missing the installation options).
Modified Paths:
--------------
trunk/CMakeLists.txt
trunk/db-modules/mysql/mysql.c
trunk/msn-proxy/CMakeLists.txt
Added Paths:
-----------
trunk/db-modules/CMakeLists.txt
trunk/db-modules/mysql/CMakeLists.txt
Modified: trunk/CMakeLists.txt
===================================================================
--- trunk/CMakeLists.txt 2012-06-03 18:51:16 UTC (rev 179)
+++ trunk/CMakeLists.txt 2012-06-03 19:05:14 UTC (rev 180)
@@ -3,5 +3,18 @@
set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} "${CMAKE_SOURCE_DIR}/cmake")
+set(LIBS "")
+
+option (USE_MYSQL
+ "Compile the MySQL backend database module" ON)
+option (USE_POSTGRES
+ "Compile the postgreSQL backend database module" OFF)
+
+# libevent
+find_package(LibEvent REQUIRED)
+include_directories(${LibEvent_INCLUDE_DIR})
+set(LIBS ${LIBS} ${LibEvent_LIBS})
+
add_subdirectory (msn-proxy)
+add_subdirectory (db-modules)
Added: trunk/db-modules/CMakeLists.txt
===================================================================
--- trunk/db-modules/CMakeLists.txt (rev 0)
+++ trunk/db-modules/CMakeLists.txt 2012-06-03 19:05:14 UTC (rev 180)
@@ -0,0 +1,8 @@
+
+if (USE_MYSQL)
+ add_subdirectory (mysql)
+endif (USE_MYSQL)
+
+if (USE_POSTGRES)
+ add_subdirectory (pgsql)
+endif (USE_POSTGRES)
Added: trunk/db-modules/mysql/CMakeLists.txt
===================================================================
--- trunk/db-modules/mysql/CMakeLists.txt (rev 0)
+++ trunk/db-modules/mysql/CMakeLists.txt 2012-06-03 19:05:14 UTC (rev 180)
@@ -0,0 +1,11 @@
+
+find_package(MySQL REQUIRED)
+include_directories(${MYSQL_INCLUDE_DIR})
+set(LIBS ${LIBS} ${MYSQL_LIBS})
+
+SET(CMAKE_C_FLAGS "-g -Wall -O2 -pipe -fno-builtin-log")
+
+SET(MYSQL_SRCS mysql.c sql.c)
+
+add_library (mysql MODULE ${MYSQL_SRCS})
+target_link_libraries (mysql ${LIBS})
Modified: trunk/db-modules/mysql/mysql.c
===================================================================
--- trunk/db-modules/mysql/mysql.c 2012-06-03 18:51:16 UTC (rev 179)
+++ trunk/db-modules/mysql/mysql.c 2012-06-03 19:05:14 UTC (rev 180)
@@ -29,10 +29,9 @@
#include <string.h>
#include <unistd.h>
-#include "../../../config.h"
-
#include "sql.h"
#include "mysql.h"
+
#include "../../msn-proxy/db.h"
#include "../../msn-proxy/fmt.h"
#include "../../msn-proxy/return.h"
@@ -40,6 +39,10 @@
#define print_bar(a) (a[strlen(a) - 1] == '/') ? "" : "/"
+#ifndef MYSQLCONFDIR
+#define MYSQLCONFDIR "/usr/local/etc/msn-proxy"
+#endif
+
/* global - mysql private data */
struct mysql_ mysql;
Modified: trunk/msn-proxy/CMakeLists.txt
===================================================================
--- trunk/msn-proxy/CMakeLists.txt 2012-06-03 18:51:16 UTC (rev 179)
+++ trunk/msn-proxy/CMakeLists.txt 2012-06-03 19:05:14 UTC (rev 180)
@@ -3,10 +3,6 @@
include_directories(${DL_INCLUDE_DIR})
set(LIBS ${LIBS} ${DL_LIBS})
-find_package(LibEvent REQUIRED)
-include_directories(${LibEvent_INCLUDE_DIR})
-set(LIBS ${LIBS} ${LibEvent_LIBS})
-
SET(CMAKE_C_FLAGS "-g -Wall -O2 -pipe -fno-builtin-log")
SET(MSN-PROXY_SRCS
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <lo...@us...> - 2012-06-03 18:51:23
|
Revision: 179
http://msn-proxy.svn.sourceforge.net/msn-proxy/?rev=179&view=rev
Author: loos-br
Date: 2012-06-03 18:51:16 +0000 (Sun, 03 Jun 2012)
Log Message:
-----------
remove auto-tools files.
Removed Paths:
-------------
trunk/db-modules/mysql/Makefile.am
trunk/db-modules/mysql/Makefile.in
Deleted: trunk/db-modules/mysql/Makefile.am
===================================================================
--- trunk/db-modules/mysql/Makefile.am 2012-06-03 17:42:02 UTC (rev 178)
+++ trunk/db-modules/mysql/Makefile.am 2012-06-03 18:51:16 UTC (rev 179)
@@ -1,46 +0,0 @@
-if BUILD_MYSQL
-
-moduledir = $(libdir)/@PACKAGE_NAME@/
-
-confdir = \
- @sysconfdir@/@PACKAGE_NAME@/mysql/
-
-mysql_la_LDFLAGS = -module -avoid-version
-
-module_LTLIBRARIES = \
- mysql.la
-
-mysql_la_LIBADD = \
- $(MYSQL_LIBS)
-
-mysql_la_CPPFLAGS = \
- $(MYSQL_CFLAGS) \
- -DMYSQLCONFDIR='"$(confdir)"'
-
-conf_DATA = \
- conf
-
-tabledir = \
- $(confdir)/tables/
-
-table_DATA = \
- tables/contact_groups \
- tables/contacts \
- tables/defaults \
- tables/log \
- tables/sb \
- tables/users
-
-EXTRA_DIST = \
- $(conf_DATA) \
- $(table_DATA)
-
-mysql_la_SOURCES = \
- mysql.c \
- sql.c
-
-noinst_HEADERS = \
- mysql.h \
- sql.h
-
-endif
\ No newline at end of file
Deleted: trunk/db-modules/mysql/Makefile.in
===================================================================
--- trunk/db-modules/mysql/Makefile.in 2012-06-03 17:42:02 UTC (rev 178)
+++ trunk/db-modules/mysql/Makefile.in 2012-06-03 18:51:16 UTC (rev 179)
@@ -1,640 +0,0 @@
-# Makefile.in generated by automake 1.11.1 from Makefile.am.
-# @configure_input@
-
-# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation,
-# Inc.
-# This Makefile.in is free software; the Free Software Foundation
-# gives unlimited permission to copy and/or distribute it,
-# with or without modifications, as long as this notice is preserved.
-
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
-# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
-# PARTICULAR PURPOSE.
-
-@SET_MAKE@
-
-
-
-VPATH = @srcdir@
-pkgdatadir = $(datadir)/@PACKAGE@
-pkgincludedir = $(includedir)/@PACKAGE@
-pkglibdir = $(libdir)/@PACKAGE@
-pkglibexecdir = $(libexecdir)/@PACKAGE@
-am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
-install_sh_DATA = $(install_sh) -c -m 644
-install_sh_PROGRAM = $(install_sh) -c
-install_sh_SCRIPT = $(install_sh) -c
-INSTALL_HEADER = $(INSTALL_DATA)
-transform = $(program_transform_name)
-NORMAL_INSTALL = :
-PRE_INSTALL = :
-POST_INSTALL = :
-NORMAL_UNINSTALL = :
-PRE_UNINSTALL = :
-POST_UNINSTALL = :
-build_triplet = @build@
-host_triplet = @host@
-subdir = src/db_modules/mysql
-DIST_COMMON = $(am__noinst_HEADERS_DIST) $(srcdir)/Makefile.am \
- $(srcdir)/Makefile.in
-ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-am__aclocal_m4_deps = $(top_srcdir)/m4/libtool.m4 \
- $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \
- $(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \
- $(top_srcdir)/configure.in
-am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
- $(ACLOCAL_M4)
-mkinstalldirs = $(install_sh) -d
-CONFIG_HEADER = $(top_builddir)/config.h
-CONFIG_CLEAN_FILES =
-CONFIG_CLEAN_VPATH_FILES =
-am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
-am__vpath_adj = case $$p in \
- $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
- *) f=$$p;; \
- esac;
-am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
-am__install_max = 40
-am__nobase_strip_setup = \
- srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
-am__nobase_strip = \
- for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
-am__nobase_list = $(am__nobase_strip_setup); \
- for p in $$list; do echo "$$p $$p"; done | \
- sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
- $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
- if (++n[$$2] == $(am__install_max)) \
- { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
- END { for (dir in files) print dir, files[dir] }'
-am__base_list = \
- sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
- sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
-am__installdirs = "$(DESTDIR)$(moduledir)" "$(DESTDIR)$(confdir)" \
- "$(DESTDIR)$(tabledir)"
-LTLIBRARIES = $(module_LTLIBRARIES)
-am__DEPENDENCIES_1 =
-@BUILD_MYSQL_TRUE@mysql_la_DEPENDENCIES = $(am__DEPENDENCIES_1)
-am__mysql_la_SOURCES_DIST = mysql.c sql.c
-@BUILD_MYSQL_TRUE@am_mysql_la_OBJECTS = mysql_la-mysql.lo \
-@BUILD_MYSQL_TRUE@ mysql_la-sql.lo
-mysql_la_OBJECTS = $(am_mysql_la_OBJECTS)
-mysql_la_LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \
- --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(mysql_la_LDFLAGS) \
- $(LDFLAGS) -o $@
-@BUILD_MYSQL_TRUE@am_mysql_la_rpath = -rpath $(moduledir)
-DEFAULT_INCLUDES =
-depcomp = $(SHELL) $(top_srcdir)/depcomp
-am__depfiles_maybe = depfiles
-am__mv = mv -f
-COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
- $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
-LTCOMPILE = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \
- --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \
- $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
-CCLD = $(CC)
-LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \
- --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) \
- $(LDFLAGS) -o $@
-SOURCES = $(mysql_la_SOURCES)
-DIST_SOURCES = $(am__mysql_la_SOURCES_DIST)
-DATA = $(conf_DATA) $(table_DATA)
-am__noinst_HEADERS_DIST = mysql.h sql.h
-HEADERS = $(noinst_HEADERS)
-ETAGS = etags
-CTAGS = ctags
-DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
-ACLOCAL = @ACLOCAL@
-AMTAR = @AMTAR@
-AR = @AR@
-AUTOCONF = @AUTOCONF@
-AUTOHEADER = @AUTOHEADER@
-AUTOMAKE = @AUTOMAKE@
-AWK = @AWK@
-CC = @CC@
-CCDEPMODE = @CCDEPMODE@
-CFLAGS = @CFLAGS@
-CPP = @CPP@
-CPPFLAGS = @CPPFLAGS@
-CXX = @CXX@
-CXXCPP = @CXXCPP@
-CXXDEPMODE = @CXXDEPMODE@
-CXXFLAGS = @CXXFLAGS@
-CYGPATH_W = @CYGPATH_W@
-DEFS = @DEFS@
-DEPDIR = @DEPDIR@
-DLLTOOL = @DLLTOOL@
-DSYMUTIL = @DSYMUTIL@
-DUMPBIN = @DUMPBIN@
-ECHO_C = @ECHO_C@
-ECHO_N = @ECHO_N@
-ECHO_T = @ECHO_T@
-EGREP = @EGREP@
-EXEEXT = @EXEEXT@
-FGREP = @FGREP@
-GREP = @GREP@
-INSTALL = @INSTALL@
-INSTALL_DATA = @INSTALL_DATA@
-INSTALL_PROGRAM = @INSTALL_PROGRAM@
-INSTALL_SCRIPT = @INSTALL_SCRIPT@
-INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
-LD = @LD@
-LDFLAGS = @LDFLAGS@
-LIBOBJS = @LIBOBJS@
-LIBS = @LIBS@
-LIBTOOL = @LIBTOOL@
-LIBTOOL_DEPS = @LIBTOOL_DEPS@
-LIPO = @LIPO@
-LN_S = @LN_S@
-LTLIBOBJS = @LTLIBOBJS@
-MAINT = @MAINT@
-MAKEINFO = @MAKEINFO@
-MANIFEST_TOOL = @MANIFEST_TOOL@
-MKDIR_P = @MKDIR_P@
-MSNPROXY_LIBS = @MSNPROXY_LIBS@
-MYSQL_CFLAGS = @MYSQL_CFLAGS@
-MYSQL_LIBS = @MYSQL_LIBS@
-NM = @NM@
-NMEDIT = @NMEDIT@
-OBJDUMP = @OBJDUMP@
-OBJEXT = @OBJEXT@
-OTOOL = @OTOOL@
-OTOOL64 = @OTOOL64@
-PACKAGE = @PACKAGE@
-PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
-PACKAGE_NAME = @PACKAGE_NAME@
-PACKAGE_STRING = @PACKAGE_STRING@
-PACKAGE_TARNAME = @PACKAGE_TARNAME@
-PACKAGE_URL = @PACKAGE_URL@
-PACKAGE_VERSION = @PACKAGE_VERSION@
-PATH_SEPARATOR = @PATH_SEPARATOR@
-PGSQL_CFLAGS = @PGSQL_CFLAGS@
-PGSQL_LIBS = @PGSQL_LIBS@
-RANLIB = @RANLIB@
-SED = @SED@
-SET_MAKE = @SET_MAKE@
-SHELL = @SHELL@
-STRIP = @STRIP@
-VERSION = @VERSION@
-abs_builddir = @abs_builddir@
-abs_srcdir = @abs_srcdir@
-abs_top_builddir = @abs_top_builddir@
-abs_top_srcdir = @abs_top_srcdir@
-ac_ct_AR = @ac_ct_AR@
-ac_ct_CC = @ac_ct_CC@
-ac_ct_CXX = @ac_ct_CXX@
-ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
-am__include = @am__include@
-am__leading_dot = @am__leading_dot@
-am__quote = @am__quote@
-am__tar = @am__tar@
-am__untar = @am__untar@
-bindir = @bindir@
-build = @build@
-build_alias = @build_alias@
-build_cpu = @build_cpu@
-build_os = @build_os@
-build_vendor = @build_vendor@
-builddir = @builddir@
-datadir = @datadir@
-datarootdir = @datarootdir@
-docdir = @docdir@
-dvidir = @dvidir@
-exec_prefix = @exec_prefix@
-host = @host@
-host_alias = @host_alias@
-host_cpu = @host_cpu@
-host_os = @host_os@
-host_vendor = @host_vendor@
-htmldir = @htmldir@
-includedir = @includedir@
-infodir = @infodir@
-install_sh = @install_sh@
-libdir = @libdir@
-libexecdir = @libexecdir@
-localedir = @localedir@
-localstatedir = @localstatedir@
-mandir = @mandir@
-mkdir_p = @mkdir_p@
-oldincludedir = @oldincludedir@
-pdfdir = @pdfdir@
-prefix = @prefix@
-program_transform_name = @program_transform_name@
-psdir = @psdir@
-sbindir = @sbindir@
-sharedstatedir = @sharedstatedir@
-srcdir = @srcdir@
-sysconfdir = @sysconfdir@
-target_alias = @target_alias@
-top_build_prefix = @top_build_prefix@
-top_builddir = @top_builddir@
-top_srcdir = @top_srcdir@
-@BUILD_MYSQL_TRUE@moduledir = $(libdir)/@PACKAGE_NAME@/
-@BUILD_MYSQL_TRUE@confdir = \
-@BUILD_MYSQL_TRUE@ @sysconfdir@/@PACKAGE_NAME@/mysql/
-
-@BUILD_MYSQL_TRUE@mysql_la_LDFLAGS = -module -avoid-version
-@BUILD_MYSQL_TRUE@module_LTLIBRARIES = \
-@BUILD_MYSQL_TRUE@ mysql.la
-
-@BUILD_MYSQL_TRUE@mysql_la_LIBADD = \
-@BUILD_MYSQL_TRUE@ $(MYSQL_LIBS)
-
-@BUILD_MYSQL_TRUE@mysql_la_CPPFLAGS = \
-@BUILD_MYSQL_TRUE@ $(MYSQL_CFLAGS) \
-@BUILD_MYSQL_TRUE@ -DMYSQLCONFDIR='"$(confdir)"'
-
-@BUILD_MYSQL_TRUE@conf_DATA = \
-@BUILD_MYSQL_TRUE@ conf
-
-@BUILD_MYSQL_TRUE@tabledir = \
-@BUILD_MYSQL_TRUE@ $(confdir)/tables/
-
-@BUILD_MYSQL_TRUE@table_DATA = \
-@BUILD_MYSQL_TRUE@ tables/contact_groups \
-@BUILD_MYSQL_TRUE@ tables/contacts \
-@BUILD_MYSQL_TRUE@ tables/defaults \
-@BUILD_MYSQL_TRUE@ tables/log \
-@BUILD_MYSQL_TRUE@ tables/sb \
-@BUILD_MYSQL_TRUE@ tables/users
-
-@BUILD_MYSQL_TRUE@EXTRA_DIST = \
-@BUILD_MYSQL_TRUE@ $(conf_DATA) \
-@BUILD_MYSQL_TRUE@ $(table_DATA)
-
-@BUILD_MYSQL_TRUE@mysql_la_SOURCES = \
-@BUILD_MYSQL_TRUE@ mysql.c \
-@BUILD_MYSQL_TRUE@ sql.c
-
-@BUILD_MYSQL_TRUE@noinst_HEADERS = \
-@BUILD_MYSQL_TRUE@ mysql.h \
-@BUILD_MYSQL_TRUE@ sql.h
-
-all: all-am
-
-.SUFFIXES:
-.SUFFIXES: .c .lo .o .obj
-$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps)
- @for dep in $?; do \
- case '$(am__configure_deps)' in \
- *$$dep*) \
- ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
- && { if test -f $@; then exit 0; else break; fi; }; \
- exit 1;; \
- esac; \
- done; \
- echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign src/db_modules/mysql/Makefile'; \
- $(am__cd) $(top_srcdir) && \
- $(AUTOMAKE) --foreign src/db_modules/mysql/Makefile
-.PRECIOUS: Makefile
-Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
- @case '$?' in \
- *config.status*) \
- cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
- *) \
- echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
- cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
- esac;
-
-$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
- cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
-
-$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
- cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
-$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
- cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
-$(am__aclocal_m4_deps):
-install-moduleLTLIBRARIES: $(module_LTLIBRARIES)
- @$(NORMAL_INSTALL)
- test -z "$(moduledir)" || $(MKDIR_P) "$(DESTDIR)$(moduledir)"
- @list='$(module_LTLIBRARIES)'; test -n "$(moduledir)" || list=; \
- list2=; for p in $$list; do \
- if test -f $$p; then \
- list2="$$list2 $$p"; \
- else :; fi; \
- done; \
- test -z "$$list2" || { \
- echo " $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL) $(INSTALL_STRIP_FLAG) $$list2 '$(DESTDIR)$(moduledir)'"; \
- $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL) $(INSTALL_STRIP_FLAG) $$list2 "$(DESTDIR)$(moduledir)"; \
- }
-
-uninstall-moduleLTLIBRARIES:
- @$(NORMAL_UNINSTALL)
- @list='$(module_LTLIBRARIES)'; test -n "$(moduledir)" || list=; \
- for p in $$list; do \
- $(am__strip_dir) \
- echo " $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=uninstall rm -f '$(DESTDIR)$(moduledir)/$$f'"; \
- $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=uninstall rm -f "$(DESTDIR)$(moduledir)/$$f"; \
- done
-
-clean-moduleLTLIBRARIES:
- -test -z "$(module_LTLIBRARIES)" || rm -f $(module_LTLIBRARIES)
- @list='$(module_LTLIBRARIES)'; for p in $$list; do \
- dir="`echo $$p | sed -e 's|/[^/]*$$||'`"; \
- test "$$dir" != "$$p" || dir=.; \
- echo "rm -f \"$${dir}/so_locations\""; \
- rm -f "$${dir}/so_locations"; \
- done
-mysql.la: $(mysql_la_OBJECTS) $(mysql_la_DEPENDENCIES)
- $(mysql_la_LINK) $(am_mysql_la_rpath) $(mysql_la_OBJECTS) $(mysql_la_LIBADD) $(LIBS)
-
-mostlyclean-compile:
- -rm -f *.$(OBJEXT)
-
-distclean-compile:
- -rm -f *.tab.c
-
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/mysql_la-mysql.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/mysql_la-sql.Plo@am__quote@
-
-.c.o:
-@am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
-@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
-@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
-@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@ $(COMPILE) -c $<
-
-.c.obj:
-@am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'`
-@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
-@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
-@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@ $(COMPILE) -c `$(CYGPATH_W) '$<'`
-
-.c.lo:
-@am__fastdepCC_TRUE@ $(LTCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
-@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Plo
-@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@
-@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@ $(LTCOMPILE) -c -o $@ $<
-
-mysql_la-mysql.lo: mysql.c
-@am__fastdepCC_TRUE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mysql_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT mysql_la-mysql.lo -MD -MP -MF $(DEPDIR)/mysql_la-mysql.Tpo -c -o mysql_la-mysql.lo `test -f 'mysql.c' || echo '$(srcdir)/'`mysql.c
-@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/mysql_la-mysql.Tpo $(DEPDIR)/mysql_la-mysql.Plo
-@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='mysql.c' object='mysql_la-mysql.lo' libtool=yes @AMDEPBACKSLASH@
-@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mysql_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o mysql_la-mysql.lo `test -f 'mysql.c' || echo '$(srcdir)/'`mysql.c
-
-mysql_la-sql.lo: sql.c
-@am__fastdepCC_TRUE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mysql_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT mysql_la-sql.lo -MD -MP -MF $(DEPDIR)/mysql_la-sql.Tpo -c -o mysql_la-sql.lo `test -f 'sql.c' || echo '$(srcdir)/'`sql.c
-@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/mysql_la-sql.Tpo $(DEPDIR)/mysql_la-sql.Plo
-@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='sql.c' object='mysql_la-sql.lo' libtool=yes @AMDEPBACKSLASH@
-@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(mysql_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o mysql_la-sql.lo `test -f 'sql.c' || echo '$(srcdir)/'`sql.c
-
-mostlyclean-libtool:
- -rm -f *.lo
-
-clean-libtool:
- -rm -rf .libs _libs
-install-confDATA: $(conf_DATA)
- @$(NORMAL_INSTALL)
- test -z "$(confdir)" || $(MKDIR_P) "$(DESTDIR)$(confdir)"
- @list='$(conf_DATA)'; test -n "$(confdir)" || list=; \
- for p in $$list; do \
- if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
- echo "$$d$$p"; \
- done | $(am__base_list) | \
- while read files; do \
- echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(confdir)'"; \
- $(INSTALL_DATA) $$files "$(DESTDIR)$(confdir)" || exit $$?; \
- done
-
-uninstall-confDATA:
- @$(NORMAL_UNINSTALL)
- @list='$(conf_DATA)'; test -n "$(confdir)" || list=; \
- files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
- test -n "$$files" || exit 0; \
- echo " ( cd '$(DESTDIR)$(confdir)' && rm -f" $$files ")"; \
- cd "$(DESTDIR)$(confdir)" && rm -f $$files
-install-tableDATA: $(table_DATA)
- @$(NORMAL_INSTALL)
- test -z "$(tabledir)" || $(MKDIR_P) "$(DESTDIR)$(tabledir)"
- @list='$(table_DATA)'; test -n "$(tabledir)" || list=; \
- for p in $$list; do \
- if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
- echo "$$d$$p"; \
- done | $(am__base_list) | \
- while read files; do \
- echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(tabledir)'"; \
- $(INSTALL_DATA) $$files "$(DESTDIR)$(tabledir)" || exit $$?; \
- done
-
-uninstall-tableDATA:
- @$(NORMAL_UNINSTALL)
- @list='$(table_DATA)'; test -n "$(tabledir)" || list=; \
- files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
- test -n "$$files" || exit 0; \
- echo " ( cd '$(DESTDIR)$(tabledir)' && rm -f" $$files ")"; \
- cd "$(DESTDIR)$(tabledir)" && rm -f $$files
-
-ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
- list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
- unique=`for i in $$list; do \
- if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
- done | \
- $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
- END { if (nonempty) { for (i in files) print i; }; }'`; \
- mkid -fID $$unique
-tags: TAGS
-
-TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
- $(TAGS_FILES) $(LISP)
- set x; \
- here=`pwd`; \
- list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
- unique=`for i in $$list; do \
- if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
- done | \
- $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
- END { if (nonempty) { for (i in files) print i; }; }'`; \
- shift; \
- if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
- test -n "$$unique" || unique=$$empty_fix; \
- if test $$# -gt 0; then \
- $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
- "$$@" $$unique; \
- else \
- $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
- $$unique; \
- fi; \
- fi
-ctags: CTAGS
-CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
- $(TAGS_FILES) $(LISP)
- list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
- unique=`for i in $$list; do \
- if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
- done | \
- $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
- END { if (nonempty) { for (i in files) print i; }; }'`; \
- test -z "$(CTAGS_ARGS)$$unique" \
- || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
- $$unique
-
-GTAGS:
- here=`$(am__cd) $(top_builddir) && pwd` \
- && $(am__cd) $(top_srcdir) \
- && gtags -i $(GTAGS_ARGS) "$$here"
-
-distclean-tags:
- -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
-
-distdir: $(DISTFILES)
- @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
- topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
- list='$(DISTFILES)'; \
- dist_files=`for file in $$list; do echo $$file; done | \
- sed -e "s|^$$srcdirstrip/||;t" \
- -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
- case $$dist_files in \
- */*) $(MKDIR_P) `echo "$$dist_files" | \
- sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
- sort -u` ;; \
- esac; \
- for file in $$dist_files; do \
- if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
- if test -d $$d/$$file; then \
- dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
- if test -d "$(distdir)/$$file"; then \
- find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
- fi; \
- if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
- cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
- find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
- fi; \
- cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
- else \
- test -f "$(distdir)/$$file" \
- || cp -p $$d/$$file "$(distdir)/$$file" \
- || exit 1; \
- fi; \
- done
-check-am: all-am
-check: check-am
-all-am: Makefile $(LTLIBRARIES) $(DATA) $(HEADERS)
-installdirs:
- for dir in "$(DESTDIR)$(moduledir)" "$(DESTDIR)$(confdir)" "$(DESTDIR)$(tabledir)"; do \
- test -z "$$dir" || $(MKDIR_P) "$$dir"; \
- done
-install: install-am
-install-exec: install-exec-am
-install-data: install-data-am
-uninstall: uninstall-am
-
-install-am: all-am
- @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
-
-installcheck: installcheck-am
-install-strip:
- $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
- install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
- `test -z '$(STRIP)' || \
- echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
-mostlyclean-generic:
-
-clean-generic:
-
-distclean-generic:
- -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
- -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
-
-maintainer-clean-generic:
- @echo "This command is intended for maintainers to use"
- @echo "it deletes files that may require special tools to rebuild."
-clean: clean-am
-
-clean-am: clean-generic clean-libtool clean-moduleLTLIBRARIES \
- mostlyclean-am
-
-distclean: distclean-am
- -rm -rf ./$(DEPDIR)
- -rm -f Makefile
-distclean-am: clean-am distclean-compile distclean-generic \
- distclean-tags
-
-dvi: dvi-am
-
-dvi-am:
-
-html: html-am
-
-html-am:
-
-info: info-am
-
-info-am:
-
-install-data-am: install-confDATA install-moduleLTLIBRARIES \
- install-tableDATA
-
-install-dvi: install-dvi-am
-
-install-dvi-am:
-
-install-exec-am:
-
-install-html: install-html-am
-
-install-html-am:
-
-install-info: install-info-am
-
-install-info-am:
-
-install-man:
-
-install-pdf: install-pdf-am
-
-install-pdf-am:
-
-install-ps: install-ps-am
-
-install-ps-am:
-
-installcheck-am:
-
-maintainer-clean: maintainer-clean-am
- -rm -rf ./$(DEPDIR)
- -rm -f Makefile
-maintainer-clean-am: distclean-am maintainer-clean-generic
-
-mostlyclean: mostlyclean-am
-
-mostlyclean-am: mostlyclean-compile mostlyclean-generic \
- mostlyclean-libtool
-
-pdf: pdf-am
-
-pdf-am:
-
-ps: ps-am
-
-ps-am:
-
-uninstall-am: uninstall-confDATA uninstall-moduleLTLIBRARIES \
- uninstall-tableDATA
-
-.MAKE: install-am install-strip
-
-.PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \
- clean-libtool clean-moduleLTLIBRARIES ctags distclean \
- distclean-compile distclean-generic distclean-libtool \
- distclean-tags distdir dvi dvi-am html html-am info info-am \
- install install-am install-confDATA install-data \
- install-data-am install-dvi install-dvi-am install-exec \
- install-exec-am install-html install-html-am install-info \
- install-info-am install-man install-moduleLTLIBRARIES \
- install-pdf install-pdf-am install-ps install-ps-am \
- install-strip install-tableDATA installcheck installcheck-am \
- installdirs maintainer-clean maintainer-clean-generic \
- mostlyclean mostlyclean-compile mostlyclean-generic \
- mostlyclean-libtool pdf pdf-am ps ps-am tags uninstall \
- uninstall-am uninstall-confDATA uninstall-moduleLTLIBRARIES \
- uninstall-tableDATA
-
-
-# Tell versions [3.59,3.63) of GNU make to not export all variables.
-# Otherwise a system limit (for SysV at least) may be exceeded.
-.NOEXPORT:
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <lo...@us...> - 2012-06-03 17:42:10
|
Revision: 178
http://msn-proxy.svn.sourceforge.net/msn-proxy/?rev=178&view=rev
Author: loos-br
Date: 2012-06-03 17:42:02 +0000 (Sun, 03 Jun 2012)
Log Message:
-----------
another couple of missing files.
Removed Paths:
-------------
trunk/msn-proxy/Makefile.am
trunk/msn-proxy/Makefile.in
Deleted: trunk/msn-proxy/Makefile.am
===================================================================
--- trunk/msn-proxy/Makefile.am 2012-06-03 17:40:45 UTC (rev 177)
+++ trunk/msn-proxy/Makefile.am 2012-06-03 17:42:02 UTC (rev 178)
@@ -1,83 +0,0 @@
-bin_PROGRAMS = msn-proxy
-
-msn_proxy_LDADD = $(MSNPROXY_LIBS)
-
-msn_proxy_LDFLAGS = -export-dynamic
-
-confdir = \
- @sysconfdir@/@PACKAGE_NAME@/
-
-conf_DATA = \
- msn-proxy.conf
-
-EXTRA_DIST = \
- $(conf_DATA)
-
-msn_proxy_SOURCES = \
- base64.c \
- check-cmd.c \
- client.c \
- command.c \
- configure.c \
- contacts.c \
- ctl.c \
- db.c \
- event.c \
- fmt.c \
- io.c \
- msg.c \
- msn-proxy.c \
- net-io.c \
- ns.c \
- p2p.c \
- protocol.c \
- sb.c \
- server.c \
- sig.c \
- string.c \
- syslog.c \
- user.c \
- xml.c
-
-noinst_HEADERS = \
- array_cmd.h \
- base64.h \
- check-cmd.h \
- check-cmd-types.h \
- client.h \
- client-types.h \
- command.h \
- command-types.h \
- configure.h \
- contacts.h \
- contacts-types.h \
- ctl.h \
- db.h \
- event.h \
- fmt.h \
- io.h \
- msg.h \
- msnp12.h \
- msnp18.h \
- msnp8.h \
- msn-proxy.h \
- net-io.h \
- ns.h \
- ns-types.h \
- obj-types.h \
- p2p.h \
- protocol.h \
- queue.h \
- return.h \
- sb.h \
- sb-types.h \
- server.h \
- server-types.h \
- sig.h \
- string.h \
- syslog.h \
- tree.h \
- user.h \
- user-types.h \
- xml.h \
- xml-types.h
Deleted: trunk/msn-proxy/Makefile.in
===================================================================
--- trunk/msn-proxy/Makefile.in 2012-06-03 17:40:45 UTC (rev 177)
+++ trunk/msn-proxy/Makefile.in 2012-06-03 17:42:02 UTC (rev 178)
@@ -1,678 +0,0 @@
-# Makefile.in generated by automake 1.11.1 from Makefile.am.
-# @configure_input@
-
-# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation,
-# Inc.
-# This Makefile.in is free software; the Free Software Foundation
-# gives unlimited permission to copy and/or distribute it,
-# with or without modifications, as long as this notice is preserved.
-
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
-# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
-# PARTICULAR PURPOSE.
-
-@SET_MAKE@
-
-
-
-VPATH = @srcdir@
-pkgdatadir = $(datadir)/@PACKAGE@
-pkgincludedir = $(includedir)/@PACKAGE@
-pkglibdir = $(libdir)/@PACKAGE@
-pkglibexecdir = $(libexecdir)/@PACKAGE@
-am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
-install_sh_DATA = $(install_sh) -c -m 644
-install_sh_PROGRAM = $(install_sh) -c
-install_sh_SCRIPT = $(install_sh) -c
-INSTALL_HEADER = $(INSTALL_DATA)
-transform = $(program_transform_name)
-NORMAL_INSTALL = :
-PRE_INSTALL = :
-POST_INSTALL = :
-NORMAL_UNINSTALL = :
-PRE_UNINSTALL = :
-POST_UNINSTALL = :
-build_triplet = @build@
-host_triplet = @host@
-bin_PROGRAMS = msn-proxy$(EXEEXT)
-subdir = src/msn-proxy
-DIST_COMMON = $(noinst_HEADERS) $(srcdir)/Makefile.am \
- $(srcdir)/Makefile.in
-ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-am__aclocal_m4_deps = $(top_srcdir)/m4/libtool.m4 \
- $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \
- $(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \
- $(top_srcdir)/configure.in
-am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
- $(ACLOCAL_M4)
-mkinstalldirs = $(install_sh) -d
-CONFIG_HEADER = $(top_builddir)/config.h
-CONFIG_CLEAN_FILES =
-CONFIG_CLEAN_VPATH_FILES =
-am__installdirs = "$(DESTDIR)$(bindir)" "$(DESTDIR)$(confdir)"
-PROGRAMS = $(bin_PROGRAMS)
-am_msn_proxy_OBJECTS = base64.$(OBJEXT) check-cmd.$(OBJEXT) \
- client.$(OBJEXT) command.$(OBJEXT) configure.$(OBJEXT) \
- contacts.$(OBJEXT) ctl.$(OBJEXT) db.$(OBJEXT) event.$(OBJEXT) \
- fmt.$(OBJEXT) io.$(OBJEXT) msg.$(OBJEXT) msn-proxy.$(OBJEXT) \
- net-io.$(OBJEXT) ns.$(OBJEXT) p2p.$(OBJEXT) protocol.$(OBJEXT) \
- sb.$(OBJEXT) server.$(OBJEXT) sig.$(OBJEXT) string.$(OBJEXT) \
- syslog.$(OBJEXT) user.$(OBJEXT) xml.$(OBJEXT)
-msn_proxy_OBJECTS = $(am_msn_proxy_OBJECTS)
-am__DEPENDENCIES_1 =
-msn_proxy_DEPENDENCIES = $(am__DEPENDENCIES_1)
-msn_proxy_LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) \
- $(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \
- $(msn_proxy_LDFLAGS) $(LDFLAGS) -o $@
-DEFAULT_INCLUDES =
-depcomp = $(SHELL) $(top_srcdir)/depcomp
-am__depfiles_maybe = depfiles
-am__mv = mv -f
-COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
- $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
-LTCOMPILE = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \
- --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \
- $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
-CCLD = $(CC)
-LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \
- --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) \
- $(LDFLAGS) -o $@
-SOURCES = $(msn_proxy_SOURCES)
-DIST_SOURCES = $(msn_proxy_SOURCES)
-am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
-am__vpath_adj = case $$p in \
- $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
- *) f=$$p;; \
- esac;
-am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
-am__install_max = 40
-am__nobase_strip_setup = \
- srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
-am__nobase_strip = \
- for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
-am__nobase_list = $(am__nobase_strip_setup); \
- for p in $$list; do echo "$$p $$p"; done | \
- sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
- $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
- if (++n[$$2] == $(am__install_max)) \
- { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
- END { for (dir in files) print dir, files[dir] }'
-am__base_list = \
- sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
- sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
-DATA = $(conf_DATA)
-HEADERS = $(noinst_HEADERS)
-ETAGS = etags
-CTAGS = ctags
-DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
-ACLOCAL = @ACLOCAL@
-AMTAR = @AMTAR@
-AR = @AR@
-AUTOCONF = @AUTOCONF@
-AUTOHEADER = @AUTOHEADER@
-AUTOMAKE = @AUTOMAKE@
-AWK = @AWK@
-CC = @CC@
-CCDEPMODE = @CCDEPMODE@
-CFLAGS = @CFLAGS@
-CPP = @CPP@
-CPPFLAGS = @CPPFLAGS@
-CXX = @CXX@
-CXXCPP = @CXXCPP@
-CXXDEPMODE = @CXXDEPMODE@
-CXXFLAGS = @CXXFLAGS@
-CYGPATH_W = @CYGPATH_W@
-DEFS = @DEFS@
-DEPDIR = @DEPDIR@
-DLLTOOL = @DLLTOOL@
-DSYMUTIL = @DSYMUTIL@
-DUMPBIN = @DUMPBIN@
-ECHO_C = @ECHO_C@
-ECHO_N = @ECHO_N@
-ECHO_T = @ECHO_T@
-EGREP = @EGREP@
-EXEEXT = @EXEEXT@
-FGREP = @FGREP@
-GREP = @GREP@
-INSTALL = @INSTALL@
-INSTALL_DATA = @INSTALL_DATA@
-INSTALL_PROGRAM = @INSTALL_PROGRAM@
-INSTALL_SCRIPT = @INSTALL_SCRIPT@
-INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
-LD = @LD@
-LDFLAGS = @LDFLAGS@
-LIBOBJS = @LIBOBJS@
-LIBS = @LIBS@
-LIBTOOL = @LIBTOOL@
-LIBTOOL_DEPS = @LIBTOOL_DEPS@
-LIPO = @LIPO@
-LN_S = @LN_S@
-LTLIBOBJS = @LTLIBOBJS@
-MAINT = @MAINT@
-MAKEINFO = @MAKEINFO@
-MANIFEST_TOOL = @MANIFEST_TOOL@
-MKDIR_P = @MKDIR_P@
-MSNPROXY_LIBS = @MSNPROXY_LIBS@
-MYSQL_CFLAGS = @MYSQL_CFLAGS@
-MYSQL_LIBS = @MYSQL_LIBS@
-NM = @NM@
-NMEDIT = @NMEDIT@
-OBJDUMP = @OBJDUMP@
-OBJEXT = @OBJEXT@
-OTOOL = @OTOOL@
-OTOOL64 = @OTOOL64@
-PACKAGE = @PACKAGE@
-PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
-PACKAGE_NAME = @PACKAGE_NAME@
-PACKAGE_STRING = @PACKAGE_STRING@
-PACKAGE_TARNAME = @PACKAGE_TARNAME@
-PACKAGE_URL = @PACKAGE_URL@
-PACKAGE_VERSION = @PACKAGE_VERSION@
-PATH_SEPARATOR = @PATH_SEPARATOR@
-PGSQL_CFLAGS = @PGSQL_CFLAGS@
-PGSQL_LIBS = @PGSQL_LIBS@
-RANLIB = @RANLIB@
-SED = @SED@
-SET_MAKE = @SET_MAKE@
-SHELL = @SHELL@
-STRIP = @STRIP@
-VERSION = @VERSION@
-abs_builddir = @abs_builddir@
-abs_srcdir = @abs_srcdir@
-abs_top_builddir = @abs_top_builddir@
-abs_top_srcdir = @abs_top_srcdir@
-ac_ct_AR = @ac_ct_AR@
-ac_ct_CC = @ac_ct_CC@
-ac_ct_CXX = @ac_ct_CXX@
-ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
-am__include = @am__include@
-am__leading_dot = @am__leading_dot@
-am__quote = @am__quote@
-am__tar = @am__tar@
-am__untar = @am__untar@
-bindir = @bindir@
-build = @build@
-build_alias = @build_alias@
-build_cpu = @build_cpu@
-build_os = @build_os@
-build_vendor = @build_vendor@
-builddir = @builddir@
-datadir = @datadir@
-datarootdir = @datarootdir@
-docdir = @docdir@
-dvidir = @dvidir@
-exec_prefix = @exec_prefix@
-host = @host@
-host_alias = @host_alias@
-host_cpu = @host_cpu@
-host_os = @host_os@
-host_vendor = @host_vendor@
-htmldir = @htmldir@
-includedir = @includedir@
-infodir = @infodir@
-install_sh = @install_sh@
-libdir = @libdir@
-libexecdir = @libexecdir@
-localedir = @localedir@
-localstatedir = @localstatedir@
-mandir = @mandir@
-mkdir_p = @mkdir_p@
-oldincludedir = @oldincludedir@
-pdfdir = @pdfdir@
-prefix = @prefix@
-program_transform_name = @program_transform_name@
-psdir = @psdir@
-sbindir = @sbindir@
-sharedstatedir = @sharedstatedir@
-srcdir = @srcdir@
-sysconfdir = @sysconfdir@
-target_alias = @target_alias@
-top_build_prefix = @top_build_prefix@
-top_builddir = @top_builddir@
-top_srcdir = @top_srcdir@
-msn_proxy_LDADD = $(MSNPROXY_LIBS)
-msn_proxy_LDFLAGS = -export-dynamic
-confdir = \
- @sysconfdir@/@PACKAGE_NAME@/
-
-conf_DATA = \
- msn-proxy.conf
-
-EXTRA_DIST = \
- $(conf_DATA)
-
-msn_proxy_SOURCES = \
- base64.c \
- check-cmd.c \
- client.c \
- command.c \
- configure.c \
- contacts.c \
- ctl.c \
- db.c \
- event.c \
- fmt.c \
- io.c \
- msg.c \
- msn-proxy.c \
- net-io.c \
- ns.c \
- p2p.c \
- protocol.c \
- sb.c \
- server.c \
- sig.c \
- string.c \
- syslog.c \
- user.c \
- xml.c
-
-noinst_HEADERS = \
- array_cmd.h \
- base64.h \
- check-cmd.h \
- check-cmd-types.h \
- client.h \
- client-types.h \
- command.h \
- command-types.h \
- configure.h \
- contacts.h \
- contacts-types.h \
- ctl.h \
- db.h \
- event.h \
- fmt.h \
- io.h \
- msg.h \
- msnp12.h \
- msnp18.h \
- msnp8.h \
- msn-proxy.h \
- net-io.h \
- ns.h \
- ns-types.h \
- obj-types.h \
- p2p.h \
- protocol.h \
- queue.h \
- return.h \
- sb.h \
- sb-types.h \
- server.h \
- server-types.h \
- sig.h \
- string.h \
- syslog.h \
- tree.h \
- user.h \
- user-types.h \
- xml.h \
- xml-types.h
-
-all: all-am
-
-.SUFFIXES:
-.SUFFIXES: .c .lo .o .obj
-$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps)
- @for dep in $?; do \
- case '$(am__configure_deps)' in \
- *$$dep*) \
- ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
- && { if test -f $@; then exit 0; else break; fi; }; \
- exit 1;; \
- esac; \
- done; \
- echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign src/msn-proxy/Makefile'; \
- $(am__cd) $(top_srcdir) && \
- $(AUTOMAKE) --foreign src/msn-proxy/Makefile
-.PRECIOUS: Makefile
-Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
- @case '$?' in \
- *config.status*) \
- cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
- *) \
- echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
- cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
- esac;
-
-$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
- cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
-
-$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
- cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
-$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
- cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
-$(am__aclocal_m4_deps):
-install-binPROGRAMS: $(bin_PROGRAMS)
- @$(NORMAL_INSTALL)
- test -z "$(bindir)" || $(MKDIR_P) "$(DESTDIR)$(bindir)"
- @list='$(bin_PROGRAMS)'; test -n "$(bindir)" || list=; \
- for p in $$list; do echo "$$p $$p"; done | \
- sed 's/$(EXEEXT)$$//' | \
- while read p p1; do if test -f $$p || test -f $$p1; \
- then echo "$$p"; echo "$$p"; else :; fi; \
- done | \
- sed -e 'p;s,.*/,,;n;h' -e 's|.*|.|' \
- -e 'p;x;s,.*/,,;s/$(EXEEXT)$$//;$(transform);s/$$/$(EXEEXT)/' | \
- sed 'N;N;N;s,\n, ,g' | \
- $(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1 } \
- { d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \
- if ($$2 == $$4) files[d] = files[d] " " $$1; \
- else { print "f", $$3 "/" $$4, $$1; } } \
- END { for (d in files) print "f", d, files[d] }' | \
- while read type dir files; do \
- if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \
- test -z "$$files" || { \
- echo " $(INSTALL_PROGRAM_ENV) $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL_PROGRAM) $$files '$(DESTDIR)$(bindir)$$dir'"; \
- $(INSTALL_PROGRAM_ENV) $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL_PROGRAM) $$files "$(DESTDIR)$(bindir)$$dir" || exit $$?; \
- } \
- ; done
-
-uninstall-binPROGRAMS:
- @$(NORMAL_UNINSTALL)
- @list='$(bin_PROGRAMS)'; test -n "$(bindir)" || list=; \
- files=`for p in $$list; do echo "$$p"; done | \
- sed -e 'h;s,^.*/,,;s/$(EXEEXT)$$//;$(transform)' \
- -e 's/$$/$(EXEEXT)/' `; \
- test -n "$$list" || exit 0; \
- echo " ( cd '$(DESTDIR)$(bindir)' && rm -f" $$files ")"; \
- cd "$(DESTDIR)$(bindir)" && rm -f $$files
-
-clean-binPROGRAMS:
- @list='$(bin_PROGRAMS)'; test -n "$$list" || exit 0; \
- echo " rm -f" $$list; \
- rm -f $$list || exit $$?; \
- test -n "$(EXEEXT)" || exit 0; \
- list=`for p in $$list; do echo "$$p"; done | sed 's/$(EXEEXT)$$//'`; \
- echo " rm -f" $$list; \
- rm -f $$list
-msn-proxy$(EXEEXT): $(msn_proxy_OBJECTS) $(msn_proxy_DEPENDENCIES)
- @rm -f msn-proxy$(EXEEXT)
- $(msn_proxy_LINK) $(msn_proxy_OBJECTS) $(msn_proxy_LDADD) $(LIBS)
-
-mostlyclean-compile:
- -rm -f *.$(OBJEXT)
-
-distclean-compile:
- -rm -f *.tab.c
-
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/base64.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/check-cmd.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/client.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/command.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/configure.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/contacts.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ctl.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/db.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/event.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fmt.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/io.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/msg.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/msn-proxy.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/net-io.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ns.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/p2p.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/protocol.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/sb.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/server.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/sig.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/string.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/syslog.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/user.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/xml.Po@am__quote@
-
-.c.o:
-@am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
-@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
-@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
-@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@ $(COMPILE) -c $<
-
-.c.obj:
-@am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'`
-@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
-@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
-@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@ $(COMPILE) -c `$(CYGPATH_W) '$<'`
-
-.c.lo:
-@am__fastdepCC_TRUE@ $(LTCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
-@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Plo
-@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@
-@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@ $(LTCOMPILE) -c -o $@ $<
-
-mostlyclean-libtool:
- -rm -f *.lo
-
-clean-libtool:
- -rm -rf .libs _libs
-install-confDATA: $(conf_DATA)
- @$(NORMAL_INSTALL)
- test -z "$(confdir)" || $(MKDIR_P) "$(DESTDIR)$(confdir)"
- @list='$(conf_DATA)'; test -n "$(confdir)" || list=; \
- for p in $$list; do \
- if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
- echo "$$d$$p"; \
- done | $(am__base_list) | \
- while read files; do \
- echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(confdir)'"; \
- $(INSTALL_DATA) $$files "$(DESTDIR)$(confdir)" || exit $$?; \
- done
-
-uninstall-confDATA:
- @$(NORMAL_UNINSTALL)
- @list='$(conf_DATA)'; test -n "$(confdir)" || list=; \
- files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
- test -n "$$files" || exit 0; \
- echo " ( cd '$(DESTDIR)$(confdir)' && rm -f" $$files ")"; \
- cd "$(DESTDIR)$(confdir)" && rm -f $$files
-
-ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
- list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
- unique=`for i in $$list; do \
- if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
- done | \
- $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
- END { if (nonempty) { for (i in files) print i; }; }'`; \
- mkid -fID $$unique
-tags: TAGS
-
-TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
- $(TAGS_FILES) $(LISP)
- set x; \
- here=`pwd`; \
- list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
- unique=`for i in $$list; do \
- if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
- done | \
- $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
- END { if (nonempty) { for (i in files) print i; }; }'`; \
- shift; \
- if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
- test -n "$$unique" || unique=$$empty_fix; \
- if test $$# -gt 0; then \
- $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
- "$$@" $$unique; \
- else \
- $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
- $$unique; \
- fi; \
- fi
-ctags: CTAGS
-CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
- $(TAGS_FILES) $(LISP)
- list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
- unique=`for i in $$list; do \
- if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
- done | \
- $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
- END { if (nonempty) { for (i in files) print i; }; }'`; \
- test -z "$(CTAGS_ARGS)$$unique" \
- || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
- $$unique
-
-GTAGS:
- here=`$(am__cd) $(top_builddir) && pwd` \
- && $(am__cd) $(top_srcdir) \
- && gtags -i $(GTAGS_ARGS) "$$here"
-
-distclean-tags:
- -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
-
-distdir: $(DISTFILES)
- @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
- topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
- list='$(DISTFILES)'; \
- dist_files=`for file in $$list; do echo $$file; done | \
- sed -e "s|^$$srcdirstrip/||;t" \
- -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
- case $$dist_files in \
- */*) $(MKDIR_P) `echo "$$dist_files" | \
- sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
- sort -u` ;; \
- esac; \
- for file in $$dist_files; do \
- if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
- if test -d $$d/$$file; then \
- dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
- if test -d "$(distdir)/$$file"; then \
- find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
- fi; \
- if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
- cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
- find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
- fi; \
- cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
- else \
- test -f "$(distdir)/$$file" \
- || cp -p $$d/$$file "$(distdir)/$$file" \
- || exit 1; \
- fi; \
- done
-check-am: all-am
-check: check-am
-all-am: Makefile $(PROGRAMS) $(DATA) $(HEADERS)
-installdirs:
- for dir in "$(DESTDIR)$(bindir)" "$(DESTDIR)$(confdir)"; do \
- test -z "$$dir" || $(MKDIR_P) "$$dir"; \
- done
-install: install-am
-install-exec: install-exec-am
-install-data: install-data-am
-uninstall: uninstall-am
-
-install-am: all-am
- @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
-
-installcheck: installcheck-am
-install-strip:
- $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
- install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
- `test -z '$(STRIP)' || \
- echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
-mostlyclean-generic:
-
-clean-generic:
-
-distclean-generic:
- -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
- -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
-
-maintainer-clean-generic:
- @echo "This command is intended for maintainers to use"
- @echo "it deletes files that may require special tools to rebuild."
-clean: clean-am
-
-clean-am: clean-binPROGRAMS clean-generic clean-libtool mostlyclean-am
-
-distclean: distclean-am
- -rm -rf ./$(DEPDIR)
- -rm -f Makefile
-distclean-am: clean-am distclean-compile distclean-generic \
- distclean-tags
-
-dvi: dvi-am
-
-dvi-am:
-
-html: html-am
-
-html-am:
-
-info: info-am
-
-info-am:
-
-install-data-am: install-confDATA
-
-install-dvi: install-dvi-am
-
-install-dvi-am:
-
-install-exec-am: install-binPROGRAMS
-
-install-html: install-html-am
-
-install-html-am:
-
-install-info: install-info-am
-
-install-info-am:
-
-install-man:
-
-install-pdf: install-pdf-am
-
-install-pdf-am:
-
-install-ps: install-ps-am
-
-install-ps-am:
-
-installcheck-am:
-
-maintainer-clean: maintainer-clean-am
- -rm -rf ./$(DEPDIR)
- -rm -f Makefile
-maintainer-clean-am: distclean-am maintainer-clean-generic
-
-mostlyclean: mostlyclean-am
-
-mostlyclean-am: mostlyclean-compile mostlyclean-generic \
- mostlyclean-libtool
-
-pdf: pdf-am
-
-pdf-am:
-
-ps: ps-am
-
-ps-am:
-
-uninstall-am: uninstall-binPROGRAMS uninstall-confDATA
-
-.MAKE: install-am install-strip
-
-.PHONY: CTAGS GTAGS all all-am check check-am clean clean-binPROGRAMS \
- clean-generic clean-libtool ctags distclean distclean-compile \
- distclean-generic distclean-libtool distclean-tags distdir dvi \
- dvi-am html html-am info info-am install install-am \
- install-binPROGRAMS install-confDATA install-data \
- install-data-am install-dvi install-dvi-am install-exec \
- install-exec-am install-html install-html-am install-info \
- install-info-am install-man install-pdf install-pdf-am \
- install-ps install-ps-am install-strip installcheck \
- installcheck-am installdirs maintainer-clean \
- maintainer-clean-generic mostlyclean mostlyclean-compile \
- mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \
- tags uninstall uninstall-am uninstall-binPROGRAMS \
- uninstall-confDATA
-
-
-# Tell versions [3.59,3.63) of GNU make to not export all variables.
-# Otherwise a system limit (for SysV at least) may be exceeded.
-.NOEXPORT:
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <lo...@us...> - 2012-06-03 17:40:52
|
Revision: 177
http://msn-proxy.svn.sourceforge.net/msn-proxy/?rev=177&view=rev
Author: loos-br
Date: 2012-06-03 17:40:45 +0000 (Sun, 03 Jun 2012)
Log Message:
-----------
removing a couple of missing files.
Removed Paths:
-------------
trunk/config.sub
trunk/depcomp
Deleted: trunk/config.sub
===================================================================
--- trunk/config.sub 2012-06-03 17:38:56 UTC (rev 176)
+++ trunk/config.sub 2012-06-03 17:40:45 UTC (rev 177)
@@ -1,1658 +0,0 @@
-#! /bin/sh
-# Configuration validation subroutine script.
-# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
-# 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008
-# Free Software Foundation, Inc.
-
-timestamp='2008-01-16'
-
-# This file is (in principle) common to ALL GNU software.
-# The presence of a machine in this file suggests that SOME GNU software
-# can handle that machine. It does not imply ALL GNU software can.
-#
-# This file is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA
-# 02110-1301, USA.
-#
-# As a special exception to the GNU General Public License, if you
-# distribute this file as part of a program that contains a
-# configuration script generated by Autoconf, you may include it under
-# the same distribution terms that you use for the rest of that program.
-
-
-# Please send patches to <con...@gn...>. Submit a context
-# diff and a properly formatted ChangeLog entry.
-#
-# Configuration subroutine to validate and canonicalize a configuration type.
-# Supply the specified configuration type as an argument.
-# If it is invalid, we print an error message on stderr and exit with code 1.
-# Otherwise, we print the canonical config type on stdout and succeed.
-
-# This file is supposed to be the same for all GNU packages
-# and recognize all the CPU types, system types and aliases
-# that are meaningful with *any* GNU software.
-# Each package is responsible for reporting which valid configurations
-# it does not support. The user should be able to distinguish
-# a failure to support a valid configuration from a meaningless
-# configuration.
-
-# The goal of this file is to map all the various variations of a given
-# machine specification into a single specification in the form:
-# CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM
-# or in some cases, the newer four-part form:
-# CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM
-# It is wrong to echo any other type of specification.
-
-me=`echo "$0" | sed -e 's,.*/,,'`
-
-usage="\
-Usage: $0 [OPTION] CPU-MFR-OPSYS
- $0 [OPTION] ALIAS
-
-Canonicalize a configuration name.
-
-Operation modes:
- -h, --help print this help, then exit
- -t, --time-stamp print date of last modification, then exit
- -v, --version print version number, then exit
-
-Report bugs and patches to <con...@gn...>."
-
-version="\
-GNU config.sub ($timestamp)
-
-Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001,
-2002, 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc.
-
-This is free software; see the source for copying conditions. There is NO
-warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
-
-help="
-Try \`$me --help' for more information."
-
-# Parse command line
-while test $# -gt 0 ; do
- case $1 in
- --time-stamp | --time* | -t )
- echo "$timestamp" ; exit ;;
- --version | -v )
- echo "$version" ; exit ;;
- --help | --h* | -h )
- echo "$usage"; exit ;;
- -- ) # Stop option processing
- shift; break ;;
- - ) # Use stdin as input.
- break ;;
- -* )
- echo "$me: invalid option $1$help"
- exit 1 ;;
-
- *local*)
- # First pass through any local machine types.
- echo $1
- exit ;;
-
- * )
- break ;;
- esac
-done
-
-case $# in
- 0) echo "$me: missing argument$help" >&2
- exit 1;;
- 1) ;;
- *) echo "$me: too many arguments$help" >&2
- exit 1;;
-esac
-
-# Separate what the user gave into CPU-COMPANY and OS or KERNEL-OS (if any).
-# Here we must recognize all the valid KERNEL-OS combinations.
-maybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'`
-case $maybe_os in
- nto-qnx* | linux-gnu* | linux-dietlibc | linux-newlib* | linux-uclibc* | \
- uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | knetbsd*-gnu* | netbsd*-gnu* | \
- storm-chaos* | os2-emx* | rtmk-nova*)
- os=-$maybe_os
- basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`
- ;;
- *)
- basic_machine=`echo $1 | sed 's/-[^-]*$//'`
- if [ $basic_machine != $1 ]
- then os=`echo $1 | sed 's/.*-/-/'`
- else os=; fi
- ;;
-esac
-
-### Let's recognize common machines as not being operating systems so
-### that things like config.sub decstation-3100 work. We also
-### recognize some manufacturers as not being operating systems, so we
-### can provide default operating systems below.
-case $os in
- -sun*os*)
- # Prevent following clause from handling this invalid input.
- ;;
- -dec* | -mips* | -sequent* | -encore* | -pc532* | -sgi* | -sony* | \
- -att* | -7300* | -3300* | -delta* | -motorola* | -sun[234]* | \
- -unicom* | -ibm* | -next | -hp | -isi* | -apollo | -altos* | \
- -convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\
- -c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \
- -harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \
- -apple | -axis | -knuth | -cray)
- os=
- basic_machine=$1
- ;;
- -sim | -cisco | -oki | -wec | -winbond)
- os=
- basic_machine=$1
- ;;
- -scout)
- ;;
- -wrs)
- os=-vxworks
- basic_machine=$1
- ;;
- -chorusos*)
- os=-chorusos
- basic_machine=$1
- ;;
- -chorusrdb)
- os=-chorusrdb
- basic_machine=$1
- ;;
- -hiux*)
- os=-hiuxwe2
- ;;
- -sco6)
- os=-sco5v6
- basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
- ;;
- -sco5)
- os=-sco3.2v5
- basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
- ;;
- -sco4)
- os=-sco3.2v4
- basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
- ;;
- -sco3.2.[4-9]*)
- os=`echo $os | sed -e 's/sco3.2./sco3.2v/'`
- basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
- ;;
- -sco3.2v[4-9]*)
- # Don't forget version if it is 3.2v4 or newer.
- basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
- ;;
- -sco5v6*)
- # Don't forget version if it is 3.2v4 or newer.
- basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
- ;;
- -sco*)
- os=-sco3.2v2
- basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
- ;;
- -udk*)
- basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
- ;;
- -isc)
- os=-isc2.2
- basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
- ;;
- -clix*)
- basic_machine=clipper-intergraph
- ;;
- -isc*)
- basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
- ;;
- -lynx*)
- os=-lynxos
- ;;
- -ptx*)
- basic_machine=`echo $1 | sed -e 's/86-.*/86-sequent/'`
- ;;
- -windowsnt*)
- os=`echo $os | sed -e 's/windowsnt/winnt/'`
- ;;
- -psos*)
- os=-psos
- ;;
- -mint | -mint[0-9]*)
- basic_machine=m68k-atari
- os=-mint
- ;;
-esac
-
-# Decode aliases for certain CPU-COMPANY combinations.
-case $basic_machine in
- # Recognize the basic CPU types without company name.
- # Some are omitted here because they have special meanings below.
- 1750a | 580 \
- | a29k \
- | alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \
- | alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \
- | am33_2.0 \
- | arc | arm | arm[bl]e | arme[lb] | armv[2345] | armv[345][lb] | avr | avr32 \
- | bfin \
- | c4x | clipper \
- | d10v | d30v | dlx | dsp16xx \
- | fido | fr30 | frv \
- | h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \
- | i370 | i860 | i960 | ia64 \
- | ip2k | iq2000 \
- | m32c | m32r | m32rle | m68000 | m68k | m88k \
- | maxq | mb | microblaze | mcore | mep \
- | mips | mipsbe | mipseb | mipsel | mipsle \
- | mips16 \
- | mips64 | mips64el \
- | mips64vr | mips64vrel \
- | mips64orion | mips64orionel \
- | mips64vr4100 | mips64vr4100el \
- | mips64vr4300 | mips64vr4300el \
- | mips64vr5000 | mips64vr5000el \
- | mips64vr5900 | mips64vr5900el \
- | mipsisa32 | mipsisa32el \
- | mipsisa32r2 | mipsisa32r2el \
- | mipsisa64 | mipsisa64el \
- | mipsisa64r2 | mipsisa64r2el \
- | mipsisa64sb1 | mipsisa64sb1el \
- | mipsisa64sr71k | mipsisa64sr71kel \
- | mipstx39 | mipstx39el \
- | mn10200 | mn10300 \
- | mt \
- | msp430 \
- | nios | nios2 \
- | ns16k | ns32k \
- | or32 \
- | pdp10 | pdp11 | pj | pjl \
- | powerpc | powerpc64 | powerpc64le | powerpcle | ppcbe \
- | pyramid \
- | score \
- | sh | sh[1234] | sh[24]a | sh[23]e | sh[34]eb | sheb | shbe | shle | sh[1234]le | sh3ele \
- | sh64 | sh64le \
- | sparc | sparc64 | sparc64b | sparc64v | sparc86x | sparclet | sparclite \
- | sparcv8 | sparcv9 | sparcv9b | sparcv9v \
- | spu | strongarm \
- | tahoe | thumb | tic4x | tic80 | tron \
- | v850 | v850e \
- | we32k \
- | x86 | xc16x | xscale | xscalee[bl] | xstormy16 | xtensa \
- | z8k)
- basic_machine=$basic_machine-unknown
- ;;
- m6811 | m68hc11 | m6812 | m68hc12)
- # Motorola 68HC11/12.
- basic_machine=$basic_machine-unknown
- os=-none
- ;;
- m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | v70 | w65 | z8k)
- ;;
- ms1)
- basic_machine=mt-unknown
- ;;
-
- # We use `pc' rather than `unknown'
- # because (1) that's what they normally are, and
- # (2) the word "unknown" tends to confuse beginning users.
- i*86 | x86_64)
- basic_machine=$basic_machine-pc
- ;;
- # Object if more than one company name word.
- *-*-*)
- echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2
- exit 1
- ;;
- # Recognize the basic CPU types with company name.
- 580-* \
- | a29k-* \
- | alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \
- | alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \
- | alphapca5[67]-* | alpha64pca5[67]-* | arc-* \
- | arm-* | armbe-* | armle-* | armeb-* | armv*-* \
- | avr-* | avr32-* \
- | bfin-* | bs2000-* \
- | c[123]* | c30-* | [cjt]90-* | c4x-* | c54x-* | c55x-* | c6x-* \
- | clipper-* | craynv-* | cydra-* \
- | d10v-* | d30v-* | dlx-* \
- | elxsi-* \
- | f30[01]-* | f700-* | fido-* | fr30-* | frv-* | fx80-* \
- | h8300-* | h8500-* \
- | hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \
- | i*86-* | i860-* | i960-* | ia64-* \
- | ip2k-* | iq2000-* \
- | m32c-* | m32r-* | m32rle-* \
- | m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \
- | m88110-* | m88k-* | maxq-* | mcore-* \
- | mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \
- | mips16-* \
- | mips64-* | mips64el-* \
- | mips64vr-* | mips64vrel-* \
- | mips64orion-* | mips64orionel-* \
- | mips64vr4100-* | mips64vr4100el-* \
- | mips64vr4300-* | mips64vr4300el-* \
- | mips64vr5000-* | mips64vr5000el-* \
- | mips64vr5900-* | mips64vr5900el-* \
- | mipsisa32-* | mipsisa32el-* \
- | mipsisa32r2-* | mipsisa32r2el-* \
- | mipsisa64-* | mipsisa64el-* \
- | mipsisa64r2-* | mipsisa64r2el-* \
- | mipsisa64sb1-* | mipsisa64sb1el-* \
- | mipsisa64sr71k-* | mipsisa64sr71kel-* \
- | mipstx39-* | mipstx39el-* \
- | mmix-* \
- | mt-* \
- | msp430-* \
- | nios-* | nios2-* \
- | none-* | np1-* | ns16k-* | ns32k-* \
- | orion-* \
- | pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \
- | powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* | ppcbe-* \
- | pyramid-* \
- | romp-* | rs6000-* \
- | sh-* | sh[1234]-* | sh[24]a-* | sh[23]e-* | sh[34]eb-* | sheb-* | shbe-* \
- | shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \
- | sparc-* | sparc64-* | sparc64b-* | sparc64v-* | sparc86x-* | sparclet-* \
- | sparclite-* \
- | sparcv8-* | sparcv9-* | sparcv9b-* | sparcv9v-* | strongarm-* | sv1-* | sx?-* \
- | tahoe-* | thumb-* \
- | tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* \
- | tron-* \
- | v850-* | v850e-* | vax-* \
- | we32k-* \
- | x86-* | x86_64-* | xc16x-* | xps100-* | xscale-* | xscalee[bl]-* \
- | xstormy16-* | xtensa*-* \
- | ymp-* \
- | z8k-*)
- ;;
- # Recognize the basic CPU types without company name, with glob match.
- xtensa*)
- basic_machine=$basic_machine-unknown
- ;;
- # Recognize the various machine names and aliases which stand
- # for a CPU type and a company and sometimes even an OS.
- 386bsd)
- basic_machine=i386-unknown
- os=-bsd
- ;;
- 3b1 | 7300 | 7300-att | att-7300 | pc7300 | safari | unixpc)
- basic_machine=m68000-att
- ;;
- 3b*)
- basic_machine=we32k-att
- ;;
- a29khif)
- basic_machine=a29k-amd
- os=-udi
- ;;
- abacus)
- basic_machine=abacus-unknown
- ;;
- adobe68k)
- basic_machine=m68010-adobe
- os=-scout
- ;;
- alliant | fx80)
- basic_machine=fx80-alliant
- ;;
- altos | altos3068)
- basic_machine=m68k-altos
- ;;
- am29k)
- basic_machine=a29k-none
- os=-bsd
- ;;
- amd64)
- basic_machine=x86_64-pc
- ;;
- amd64-*)
- basic_machine=x86_64-`echo $basic_machine | sed 's/^[^-]*-//'`
- ;;
- amdahl)
- basic_machine=580-amdahl
- os=-sysv
- ;;
- amiga | amiga-*)
- basic_machine=m68k-unknown
- ;;
- amigaos | amigados)
- basic_machine=m68k-unknown
- os=-amigaos
- ;;
- amigaunix | amix)
- basic_machine=m68k-unknown
- os=-sysv4
- ;;
- apollo68)
- basic_machine=m68k-apollo
- os=-sysv
- ;;
- apollo68bsd)
- basic_machine=m68k-apollo
- os=-bsd
- ;;
- aux)
- basic_machine=m68k-apple
- os=-aux
- ;;
- balance)
- basic_machine=ns32k-sequent
- os=-dynix
- ;;
- blackfin)
- basic_machine=bfin-unknown
- os=-linux
- ;;
- blackfin-*)
- basic_machine=bfin-`echo $basic_machine | sed 's/^[^-]*-//'`
- os=-linux
- ;;
- c90)
- basic_machine=c90-cray
- os=-unicos
- ;;
- convex-c1)
- basic_machine=c1-convex
- os=-bsd
- ;;
- convex-c2)
- basic_machine=c2-convex
- os=-bsd
- ;;
- convex-c32)
- basic_machine=c32-convex
- os=-bsd
- ;;
- convex-c34)
- basic_machine=c34-convex
- os=-bsd
- ;;
- convex-c38)
- basic_machine=c38-convex
- os=-bsd
- ;;
- cray | j90)
- basic_machine=j90-cray
- os=-unicos
- ;;
- craynv)
- basic_machine=craynv-cray
- os=-unicosmp
- ;;
- cr16)
- basic_machine=cr16-unknown
- os=-elf
- ;;
- crds | unos)
- basic_machine=m68k-crds
- ;;
- crisv32 | crisv32-* | etraxfs*)
- basic_machine=crisv32-axis
- ;;
- cris | cris-* | etrax*)
- basic_machine=cris-axis
- ;;
- crx)
- basic_machine=crx-unknown
- os=-elf
- ;;
- da30 | da30-*)
- basic_machine=m68k-da30
- ;;
- decstation | decstation-3100 | pmax | pmax-* | pmin | dec3100 | decstatn)
- basic_machine=mips-dec
- ;;
- decsystem10* | dec10*)
- basic_machine=pdp10-dec
- os=-tops10
- ;;
- decsystem20* | dec20*)
- basic_machine=pdp10-dec
- os=-tops20
- ;;
- delta | 3300 | motorola-3300 | motorola-delta \
- | 3300-motorola | delta-motorola)
- basic_machine=m68k-motorola
- ;;
- delta88)
- basic_machine=m88k-motorola
- os=-sysv3
- ;;
- djgpp)
- basic_machine=i586-pc
- os=-msdosdjgpp
- ;;
- dpx20 | dpx20-*)
- basic_machine=rs6000-bull
- os=-bosx
- ;;
- dpx2* | dpx2*-bull)
- basic_machine=m68k-bull
- os=-sysv3
- ;;
- ebmon29k)
- basic_machine=a29k-amd
- os=-ebmon
- ;;
- elxsi)
- basic_machine=elxsi-elxsi
- os=-bsd
- ;;
- encore | umax | mmax)
- basic_machine=ns32k-encore
- ;;
- es1800 | OSE68k | ose68k | ose | OSE)
- basic_machine=m68k-ericsson
- os=-ose
- ;;
- fx2800)
- basic_machine=i860-alliant
- ;;
- genix)
- basic_machine=ns32k-ns
- ;;
- gmicro)
- basic_machine=tron-gmicro
- os=-sysv
- ;;
- go32)
- basic_machine=i386-pc
- os=-go32
- ;;
- h3050r* | hiux*)
- basic_machine=hppa1.1-hitachi
- os=-hiuxwe2
- ;;
- h8300hms)
- basic_machine=h8300-hitachi
- os=-hms
- ;;
- h8300xray)
- basic_machine=h8300-hitachi
- os=-xray
- ;;
- h8500hms)
- basic_machine=h8500-hitachi
- os=-hms
- ;;
- harris)
- basic_machine=m88k-harris
- os=-sysv3
- ;;
- hp300-*)
- basic_machine=m68k-hp
- ;;
- hp300bsd)
- basic_machine=m68k-hp
- os=-bsd
- ;;
- hp300hpux)
- basic_machine=m68k-hp
- os=-hpux
- ;;
- hp3k9[0-9][0-9] | hp9[0-9][0-9])
- basic_machine=hppa1.0-hp
- ;;
- hp9k2[0-9][0-9] | hp9k31[0-9])
- basic_machine=m68000-hp
- ;;
- hp9k3[2-9][0-9])
- basic_machine=m68k-hp
- ;;
- hp9k6[0-9][0-9] | hp6[0-9][0-9])
- basic_machine=hppa1.0-hp
- ;;
- hp9k7[0-79][0-9] | hp7[0-79][0-9])
- basic_machine=hppa1.1-hp
- ;;
- hp9k78[0-9] | hp78[0-9])
- # FIXME: really hppa2.0-hp
- basic_machine=hppa1.1-hp
- ;;
- hp9k8[67]1 | hp8[67]1 | hp9k80[24] | hp80[24] | hp9k8[78]9 | hp8[78]9 | hp9k893 | hp893)
- # FIXME: really hppa2.0-hp
- basic_machine=hppa1.1-hp
- ;;
- hp9k8[0-9][13679] | hp8[0-9][13679])
- basic_machine=hppa1.1-hp
- ;;
- hp9k8[0-9][0-9] | hp8[0-9][0-9])
- basic_machine=hppa1.0-hp
- ;;
- hppa-next)
- os=-nextstep3
- ;;
- hppaosf)
- basic_machine=hppa1.1-hp
- os=-osf
- ;;
- hppro)
- basic_machine=hppa1.1-hp
- os=-proelf
- ;;
- i370-ibm* | ibm*)
- basic_machine=i370-ibm
- ;;
-# I'm not sure what "Sysv32" means. Should this be sysv3.2?
- i*86v32)
- basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
- os=-sysv32
- ;;
- i*86v4*)
- basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
- os=-sysv4
- ;;
- i*86v)
- basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
- os=-sysv
- ;;
- i*86sol2)
- basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
- os=-solaris2
- ;;
- i386mach)
- basic_machine=i386-mach
- os=-mach
- ;;
- i386-vsta | vsta)
- basic_machine=i386-unknown
- os=-vsta
- ;;
- iris | iris4d)
- basic_machine=mips-sgi
- case $os in
- -irix*)
- ;;
- *)
- os=-irix4
- ;;
- esac
- ;;
- isi68 | isi)
- basic_machine=m68k-isi
- os=-sysv
- ;;
- m68knommu)
- basic_machine=m68k-unknown
- os=-linux
- ;;
- m68knommu-*)
- basic_machine=m68k-`echo $basic_machine | sed 's/^[^-]*-//'`
- os=-linux
- ;;
- m88k-omron*)
- basic_machine=m88k-omron
- ;;
- magnum | m3230)
- basic_machine=mips-mips
- os=-sysv
- ;;
- merlin)
- basic_machine=ns32k-utek
- os=-sysv
- ;;
- mingw32)
- basic_machine=i386-pc
- os=-mingw32
- ;;
- mingw32ce)
- basic_machine=arm-unknown
- os=-mingw32ce
- ;;
- miniframe)
- basic_machine=m68000-convergent
- ;;
- *mint | -mint[0-9]* | *MiNT | *MiNT[0-9]*)
- basic_machine=m68k-atari
- os=-mint
- ;;
- mips3*-*)
- basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`
- ;;
- mips3*)
- basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`-unknown
- ;;
- monitor)
- basic_machine=m68k-rom68k
- os=-coff
- ;;
- morphos)
- basic_machine=powerpc-unknown
- os=-morphos
- ;;
- msdos)
- basic_machine=i386-pc
- os=-msdos
- ;;
- ms1-*)
- basic_machine=`echo $basic_machine | sed -e 's/ms1-/mt-/'`
- ;;
- mvs)
- basic_machine=i370-ibm
- os=-mvs
- ;;
- ncr3000)
- basic_machine=i486-ncr
- os=-sysv4
- ;;
- netbsd386)
- basic_machine=i386-unknown
- os=-netbsd
- ;;
- netwinder)
- basic_machine=armv4l-rebel
- os=-linux
- ;;
- news | news700 | news800 | news900)
- basic_machine=m68k-sony
- os=-newsos
- ;;
- news1000)
- basic_machine=m68030-sony
- os=-newsos
- ;;
- news-3600 | risc-news)
- basic_machine=mips-sony
- os=-newsos
- ;;
- necv70)
- basic_machine=v70-nec
- os=-sysv
- ;;
- next | m*-next )
- basic_machine=m68k-next
- case $os in
- -nextstep* )
- ;;
- -ns2*)
- os=-nextstep2
- ;;
- *)
- os=-nextstep3
- ;;
- esac
- ;;
- nh3000)
- basic_machine=m68k-harris
- os=-cxux
- ;;
- nh[45]000)
- basic_machine=m88k-harris
- os=-cxux
- ;;
- nindy960)
- basic_machine=i960-intel
- os=-nindy
- ;;
- mon960)
- basic_machine=i960-intel
- os=-mon960
- ;;
- nonstopux)
- basic_machine=mips-compaq
- os=-nonstopux
- ;;
- np1)
- basic_machine=np1-gould
- ;;
- nsr-tandem)
- basic_machine=nsr-tandem
- ;;
- op50n-* | op60c-*)
- basic_machine=hppa1.1-oki
- os=-proelf
- ;;
- openrisc | openrisc-*)
- basic_machine=or32-unknown
- ;;
- os400)
- basic_machine=powerpc-ibm
- os=-os400
- ;;
- OSE68000 | ose68000)
- basic_machine=m68000-ericsson
- os=-ose
- ;;
- os68k)
- basic_machine=m68k-none
- os=-os68k
- ;;
- pa-hitachi)
- basic_machine=hppa1.1-hitachi
- os=-hiuxwe2
- ;;
- paragon)
- basic_machine=i860-intel
- os=-osf
- ;;
- parisc)
- basic_machine=hppa-unknown
- os=-linux
- ;;
- parisc-*)
- basic_machine=hppa-`echo $basic_machine | sed 's/^[^-]*-//'`
- os=-linux
- ;;
- pbd)
- basic_machine=sparc-tti
- ;;
- pbb)
- basic_machine=m68k-tti
- ;;
- pc532 | pc532-*)
- basic_machine=ns32k-pc532
- ;;
- pc98)
- basic_machine=i386-pc
- ;;
- pc98-*)
- basic_machine=i386-`echo $basic_machine | sed 's/^[^-]*-//'`
- ;;
- pentium | p5 | k5 | k6 | nexgen | viac3)
- basic_machine=i586-pc
- ;;
- pentiumpro | p6 | 6x86 | athlon | athlon_*)
- basic_machine=i686-pc
- ;;
- pentiumii | pentium2 | pentiumiii | pentium3)
- basic_machine=i686-pc
- ;;
- pentium4)
- basic_machine=i786-pc
- ;;
- pentium-* | p5-* | k5-* | k6-* | nexgen-* | viac3-*)
- basic_machine=i586-`echo $basic_machine | sed 's/^[^-]*-//'`
- ;;
- pentiumpro-* | p6-* | 6x86-* | athlon-*)
- basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'`
- ;;
- pentiumii-* | pentium2-* | pentiumiii-* | pentium3-*)
- basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'`
- ;;
- pentium4-*)
- basic_machine=i786-`echo $basic_machine | sed 's/^[^-]*-//'`
- ;;
- pn)
- basic_machine=pn-gould
- ;;
- power) basic_machine=power-ibm
- ;;
- ppc) basic_machine=powerpc-unknown
- ;;
- ppc-*) basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'`
- ;;
- ppcle | powerpclittle | ppc-le | powerpc-little)
- basic_machine=powerpcle-unknown
- ;;
- ppcle-* | powerpclittle-*)
- basic_machine=powerpcle-`echo $basic_machine | sed 's/^[^-]*-//'`
- ;;
- ppc64) basic_machine=powerpc64-unknown
- ;;
- ppc64-*) basic_machine=powerpc64-`echo $basic_machine | sed 's/^[^-]*-//'`
- ;;
- ppc64le | powerpc64little | ppc64-le | powerpc64-little)
- basic_machine=powerpc64le-unknown
- ;;
- ppc64le-* | powerpc64little-*)
- basic_machine=powerpc64le-`echo $basic_machine | sed 's/^[^-]*-//'`
- ;;
- ps2)
- basic_machine=i386-ibm
- ;;
- pw32)
- basic_machine=i586-unknown
- os=-pw32
- ;;
- rdos)
- basic_machine=i386-pc
- os=-rdos
- ;;
- rom68k)
- basic_machine=m68k-rom68k
- os=-coff
- ;;
- rm[46]00)
- basic_machine=mips-siemens
- ;;
- rtpc | rtpc-*)
- basic_machine=romp-ibm
- ;;
- s390 | s390-*)
- basic_machine=s390-ibm
- ;;
- s390x | s390x-*)
- basic_machine=s390x-ibm
- ;;
- sa29200)
- basic_machine=a29k-amd
- os=-udi
- ;;
- sb1)
- basic_machine=mipsisa64sb1-unknown
- ;;
- sb1el)
- basic_machine=mipsisa64sb1el-unknown
- ;;
- sde)
- basic_machine=mipsisa32-sde
- os=-elf
- ;;
- sei)
- basic_machine=mips-sei
- os=-seiux
- ;;
- sequent)
- basic_machine=i386-sequent
- ;;
- sh)
- basic_machine=sh-hitachi
- os=-hms
- ;;
- sh5el)
- basic_machine=sh5le-unknown
- ;;
- sh64)
- basic_machine=sh64-unknown
- ;;
- sparclite-wrs | simso-wrs)
- basic_machine=sparclite-wrs
- os=-vxworks
- ;;
- sps7)
- basic_machine=m68k-bull
- os=-sysv2
- ;;
- spur)
- basic_machine=spur-unknown
- ;;
- st2000)
- basic_machine=m68k-tandem
- ;;
- stratus)
- basic_machine=i860-stratus
- os=-sysv4
- ;;
- sun2)
- basic_machine=m68000-sun
- ;;
- sun2os3)
- basic_machine=m68000-sun
- os=-sunos3
- ;;
- sun2os4)
- basic_machine=m68000-sun
- os=-sunos4
- ;;
- sun3os3)
- basic_machine=m68k-sun
- os=-sunos3
- ;;
- sun3os4)
- basic_machine=m68k-sun
- os=-sunos4
- ;;
- sun4os3)
- basic_machine=sparc-sun
- os=-sunos3
- ;;
- sun4os4)
- basic_machine=sparc-sun
- os=-sunos4
- ;;
- sun4sol2)
- basic_machine=sparc-sun
- os=-solaris2
- ;;
- sun3 | sun3-*)
- basic_machine=m68k-sun
- ;;
- sun4)
- basic_machine=sparc-sun
- ;;
- sun386 | sun386i | roadrunner)
- basic_machine=i386-sun
- ;;
- sv1)
- basic_machine=sv1-cray
- os=-unicos
- ;;
- symmetry)
- basic_machine=i386-sequent
- os=-dynix
- ;;
- t3e)
- basic_machine=alphaev5-cray
- os=-unicos
- ;;
- t90)
- basic_machine=t90-cray
- os=-unicos
- ;;
- tic54x | c54x*)
- basic_machine=tic54x-unknown
- os=-coff
- ;;
- tic55x | c55x*)
- basic_machine=tic55x-unknown
- os=-coff
- ;;
- tic6x | c6x*)
- basic_machine=tic6x-unknown
- os=-coff
- ;;
- tile*)
- basic_machine=tile-unknown
- os=-linux-gnu
- ;;
- tx39)
- basic_machine=mipstx39-unknown
- ;;
- tx39el)
- basic_machine=mipstx39el-unknown
- ;;
- toad1)
- basic_machine=pdp10-xkl
- os=-tops20
- ;;
- tower | tower-32)
- basic_machine=m68k-ncr
- ;;
- tpf)
- basic_machine=s390x-ibm
- os=-tpf
- ;;
- udi29k)
- basic_machine=a29k-amd
- os=-udi
- ;;
- ultra3)
- basic_machine=a29k-nyu
- os=-sym1
- ;;
- v810 | necv810)
- basic_machine=v810-nec
- os=-none
- ;;
- vaxv)
- basic_machine=vax-dec
- os=-sysv
- ;;
- vms)
- basic_machine=vax-dec
- os=-vms
- ;;
- vpp*|vx|vx-*)
- basic_machine=f301-fujitsu
- ;;
- vxworks960)
- basic_machine=i960-wrs
- os=-vxworks
- ;;
- vxworks68)
- basic_machine=m68k-wrs
- os=-vxworks
- ;;
- vxworks29k)
- basic_machine=a29k-wrs
- os=-vxworks
- ;;
- w65*)
- basic_machine=w65-wdc
- os=-none
- ;;
- w89k-*)
- basic_machine=hppa1.1-winbond
- os=-proelf
- ;;
- xbox)
- basic_machine=i686-pc
- os=-mingw32
- ;;
- xps | xps100)
- basic_machine=xps100-honeywell
- ;;
- ymp)
- basic_machine=ymp-cray
- os=-unicos
- ;;
- z8k-*-coff)
- basic_machine=z8k-unknown
- os=-sim
- ;;
- none)
- basic_machine=none-none
- os=-none
- ;;
-
-# Here we handle the default manufacturer of certain CPU types. It is in
-# some cases the only manufacturer, in others, it is the most popular.
- w89k)
- basic_machine=hppa1.1-winbond
- ;;
- op50n)
- basic_machine=hppa1.1-oki
- ;;
- op60c)
- basic_machine=hppa1.1-oki
- ;;
- romp)
- basic_machine=romp-ibm
- ;;
- mmix)
- basic_machine=mmix-knuth
- ;;
- rs6000)
- basic_machine=rs6000-ibm
- ;;
- vax)
- basic_machine=vax-dec
- ;;
- pdp10)
- # there are many clones, so DEC is not a safe bet
- basic_machine=pdp10-unknown
- ;;
- pdp11)
- basic_machine=pdp11-dec
- ;;
- we32k)
- basic_machine=we32k-att
- ;;
- sh[1234] | sh[24]a | sh[34]eb | sh[1234]le | sh[23]ele)
- basic_machine=sh-unknown
- ;;
- sparc | sparcv8 | sparcv9 | sparcv9b | sparcv9v)
- basic_machine=sparc-sun
- ;;
- cydra)
- basic_machine=cydra-cydrome
- ;;
- orion)
- basic_machine=orion-highlevel
- ;;
- orion105)
- basic_machine=clipper-highlevel
- ;;
- mac | mpw | mac-mpw)
- basic_machine=m68k-apple
- ;;
- pmac | pmac-mpw)
- basic_machine=powerpc-apple
- ;;
- *-unknown)
- # Make sure to match an already-canonicalized machine name.
- ;;
- *)
- echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2
- exit 1
- ;;
-esac
-
-# Here we canonicalize certain aliases for manufacturers.
-case $basic_machine in
- *-digital*)
- basic_machine=`echo $basic_machine | sed 's/digital.*/dec/'`
- ;;
- *-commodore*)
- basic_machine=`echo $basic_machine | sed 's/commodore.*/cbm/'`
- ;;
- *)
- ;;
-esac
-
-# Decode manufacturer-specific aliases for certain operating systems.
-
-if [ x"$os" != x"" ]
-then
-case $os in
- # First match some system type aliases
- # that might get confused with valid system types.
- # -solaris* is a basic system type, with this one exception.
- -solaris1 | -solaris1.*)
- os=`echo $os | sed -e 's|solaris1|sunos4|'`
- ;;
- -solaris)
- os=-solaris2
- ;;
- -svr4*)
- os=-sysv4
- ;;
- -unixware*)
- os=-sysv4.2uw
- ;;
- -gnu/linux*)
- os=`echo $os | sed -e 's|gnu/linux|linux-gnu|'`
- ;;
- # First accept the basic system types.
- # The portable systems comes first.
- # Each alternative MUST END IN A *, to match a version number.
- # -sysv* is not here because it comes later, after sysvr4.
- -gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \
- | -*vms* | -sco* | -esix* | -isc* | -aix* | -sunos | -sunos[34]*\
- | -hpux* | -unos* | -osf* | -luna* | -dgux* | -solaris* | -sym* \
- | -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \
- | -aos* \
- | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \
- | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \
- | -hiux* | -386bsd* | -knetbsd* | -mirbsd* | -netbsd* \
- | -openbsd* | -solidbsd* \
- | -ekkobsd* | -kfreebsd* | -freebsd* | -riscix* | -lynxos* \
- | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \
- | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \
- | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \
- | -chorusos* | -chorusrdb* \
- | -cygwin* | -pe* | -psos* | -moss* | -proelf* | -rtems* \
- | -mingw32* | -linux-gnu* | -linux-newlib* | -linux-uclibc* \
- | -uxpv* | -beos* | -mpeix* | -udk* \
- | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \
- | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \
- | -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \
- | -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \
- | -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \
- | -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly* \
- | -skyos* | -haiku* | -rdos* | -toppers* | -drops*)
- # Remember, each alternative MUST END IN *, to match a version number.
- ;;
- -qnx*)
- case $basic_machine in
- x86-* | i*86-*)
- ;;
- *)
- os=-nto$os
- ;;
- esac
- ;;
- -nto-qnx*)
- ;;
- -nto*)
- os=`echo $os | sed -e 's|nto|nto-qnx|'`
- ;;
- -sim | -es1800* | -hms* | -xray | -os68k* | -none* | -v88r* \
- | -windows* | -osx | -abug | -netware* | -os9* | -beos* | -haiku* \
- | -macos* | -mpw* | -magic* | -mmixware* | -mon960* | -lnews*)
- ;;
- -mac*)
- os=`echo $os | sed -e 's|mac|macos|'`
- ;;
- -linux-dietlibc)
- os=-linux-dietlibc
- ;;
- -linux*)
- os=`echo $os | sed -e 's|linux|linux-gnu|'`
- ;;
- -sunos5*)
- os=`echo $os | sed -e 's|sunos5|solaris2|'`
- ;;
- -sunos6*)
- os=`echo $os | sed -e 's|sunos6|solaris3|'`
- ;;
- -opened*)
- os=-openedition
- ;;
- -os400*)
- os=-os400
- ;;
- -wince*)
- os=-wince
- ;;
- -osfrose*)
- os=-osfrose
- ;;
- -osf*)
- os=-osf
- ;;
- -utek*)
- os=-bsd
- ;;
- -dynix*)
- os=-bsd
- ;;
- -acis*)
- os=-aos
- ;;
- -atheos*)
- os=-atheos
- ;;
- -syllable*)
- os=-syllable
- ;;
- -386bsd)
- os=-bsd
- ;;
- -ctix* | -uts*)
- os=-sysv
- ;;
- -nova*)
- os=-rtmk-nova
- ;;
- -ns2 )
- os=-nextstep2
- ;;
- -nsk*)
- os=-nsk
- ;;
- # Preserve the version number of sinix5.
- -sinix5.*)
- os=`echo $os | sed -e 's|sinix|sysv|'`
- ;;
- -sinix*)
- os=-sysv4
- ;;
- -tpf*)
- os=-tpf
- ;;
- -triton*)
- os=-sysv3
- ;;
- -oss*)
- os=-sysv3
- ;;
- -svr4)
- os=-sysv4
- ;;
- -svr3)
- os=-sysv3
- ;;
- -sysvr4)
- os=-sysv4
- ;;
- # This must come after -sysvr4.
- -sysv*)
- ;;
- -ose*)
- os=-ose
- ;;
- -es1800*)
- os=-ose
- ;;
- -xenix)
- os=-xenix
- ;;
- -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*)
- os=-mint
- ;;
- -aros*)
- os=-aros
- ;;
- -kaos*)
- os=-kaos
- ;;
- -zvmoe)
- os=-zvmoe
- ;;
- -none)
- ;;
- *)
- # Get rid of the `-' at the beginning of $os.
- os=`echo $os | sed 's/[^-]*-//'`
- echo Invalid configuration \`$1\': system \`$os\' not recognized 1>&2
- exit 1
- ;;
-esac
-else
-
-# Here we handle the default operating systems that come with various machines.
-# The value should be what the vendor currently ships out the door with their
-# machine or put another way, the most popular os provided with the machine.
-
-# Note that if you're going to try to match "-MANUFACTURER" here (say,
-# "-sun"), then you have to tell the case statement up towards the top
-# that MANUFACTURER isn't an operating system. Otherwise, code above
-# will signal an error saying that MANUFACTURER isn't an operating
-# system, and we'll never get to this point.
-
-case $basic_machine in
- score-*)
- os=-elf
- ;;
- spu-*)
- os=-elf
- ;;
- *-acorn)
- os=-riscix1.2
- ;;
- arm*-rebel)
- os=-linux
- ;;
- arm*-semi)
- os=-aout
- ;;
- c4x-* | tic4x-*)
- os=-coff
- ;;
- # This must come before the *-dec entry.
- pdp10-*)
- os=-tops20
- ;;
- pdp11-*)
- os=-none
- ;;
- *-dec | vax-*)
- os=-ultrix4.2
- ;;
- m68*-apollo)
- os=-domain
- ;;
- i386-sun)
- os=-sunos4.0.2
- ;;
- m68000-sun)
- os=-sunos3
- # This also exists in the configure program, but was not the
- # default.
- # os=-sunos4
- ;;
- m68*-cisco)
- os=-aout
- ;;
- mep-*)
- os=-elf
- ;;
- mips*-cisco)
- os=-elf
- ;;
- mips*-*)
- os=-elf
- ;;
- or32-*)
- os=-coff
- ;;
- *-tti) # must be before sparc entry or we get the wrong os.
- os=-sysv3
- ;;
- sparc-* | *-sun)
- os=-sunos4.1.1
- ;;
- *-be)
- os=-beos
- ;;
- *-haiku)
- os=-haiku
- ;;
- *-ibm)
- os=-aix
- ;;
- *-knuth)
- os=-mmixware
- ;;
- *-wec)
- os=-proelf
- ;;
- *-winbond)
- os=-proelf
- ;;
- *-oki)
- os=-proelf
- ;;
- *-hp)
- os=-hpux
- ;;
- *-hitachi)
- os=-hiux
- ;;
- i860-* | *-att | *-ncr | *-altos | *-motorola | *-convergent)
- os=-sysv
- ;;
- *-cbm)
- os=-amigaos
- ;;
- *-dg)
- os=-dgux
- ;;
- *-dolphin)
- os=-sysv3
- ;;
- m68k-ccur)
- os=-rtu
- ;;
- m88k-omron*)
- os=-luna
- ;;
- *-next )
- os=-nextstep
- ;;
- *-sequent)
- os=-ptx
- ;;
- *-crds)
- os=-unos
- ;;
- *-ns)
- os=-genix
- ;;
- i370-*)
- os=-mvs
- ;;
- *-next)
- os=-nextstep3
- ;;
- *-gould)
- os=-sysv
- ;;
- *-highlevel)
- os=-bsd
- ;;
- *-encore)
- os=-bsd
- ;;
- *-sgi)
- os=-irix
- ;;
- *-siemens)
- os=-sysv4
- ;;
- *-masscomp)
- os=-rtu
- ;;
- f30[01]-fujitsu | f700-fujitsu)
- os=-uxpv
- ;;
- *-rom68k)
- os=-coff
- ;;
- *-*bug)
- os=-coff
- ;;
- *-apple)
- os=-macos
- ;;
- *-atari*)
- os=-mint
- ;;
- *)
- os=-none
- ;;
-esac
-fi
-
-# Here we handle the case where we know the os, and the CPU type, but not the
-# manufacturer. We pick the logical manufacturer.
-vendor=unknown
-case $basic_machine in
- *-unknown)
- case $os in
- -riscix*)
- vendor=acorn
- ;;
- -sunos*)
- vendor=sun
- ;;
- -aix*)
- vendor=ibm
- ;;
- -beos*)
- vendor=be
- ;;
- -hpux*)
- vendor=hp
- ;;
- -mpeix*)
- vendor=hp
- ;;
- -hiux*)
- vendor=hitachi
- ;;
- -unos*)
- vendor=crds
- ;;
- -dgux*)
- vendor=dg
- ;;
- -luna*)
- vendor=omron
- ;;
- -genix*)
- vendor=ns
- ;;
- -mvs* | -opened*)
- vendor=ibm
- ;;
- -os400*)
- vendor=ibm
- ;;
- -ptx*)
- vendor=sequent
- ;;
- -tpf*)
- vendor=ibm
- ;;
- -vxsim* | -vxworks* | -windiss*)
- vendor=wrs
- ;;
- -aux*)
- vendor=apple
- ;;
- -hms*)
- vendor=hitachi
- ;;
- -mpw* | -macos*)
- vendor=apple
- ;;
- -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*)
- vendor=atari
- ;;
- -vos*)
- vendor=stratus
- ;;
- esac
- basic_machine=`echo $basic_machine | sed "s/unknown/$vendor/"`
- ;;
-esac
-
-echo $basic_machine$os
-exit
-
-# Local variables:
-# eval: (add-hook 'write-file-hooks 'time-stamp)
-# time-stamp-start: "timestamp='"
-# time-stamp-format: "%:y-%02m-%02d"
-# time-stamp-end: "'"
-# End:
Deleted: trunk/depcomp
===================================================================
--- trunk/depcomp 2012-06-03 17:38:56 UTC (rev 176)
+++ trunk/depcomp 2012-06-03 17:40:45 UTC (rev 177)
@@ -1,589 +0,0 @@
-#! /bin/sh
-# depcomp - compile a program generating dependencies as side-effects
-
-scriptversion=2007-03-29.01
-
-# Copyright (C) 1999, 2000, 2003, 2004, 2005, 2006, 2007 Free Software
-# Foundation, Inc.
-
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2, or (at your option)
-# any later version.
-
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-# 02110-1301, USA.
-
-# As a special exception to the GNU General Public License, if you
-# distribute this file as part of a program that contains a
-# configuration script generated by Autoconf, you may include it under
-# the same distribution terms that you use for the rest of that program.
-
-# Originally written by Alexandre Oliva <ol...@dc...>.
-
-case $1 in
- '')
- echo "$0: No command. Try \`$0 --help' for more information." 1>&2
- exit 1;
- ;;
- -h | --h*)
- cat <<\EOF
-Usage: depcomp [--help] [--version] PROGRAM [ARGS]
-
-Run PROGRAMS ARGS to compile a file, generating dependencies
-as side-effects.
-
-Environment variables:
- depmode Dependency tracking mode.
- source Source file read by `PROGRAMS ARGS'.
- object Object file output by `PROGRAMS ARGS'.
- DEPDIR directory where to store dependencies.
- depfile Dependency file to output.
- tmpdepfile Temporary file to use when outputing dependencies.
- libtool Whether libtool is used (yes/no).
-
-Report bugs to <bug...@gn...>.
-EOF
- exit $?
- ;;
- -v | --v*)
- echo "depcomp $scriptversion"
- exit $?
- ;;
-esac
-
-if test -z "$depmode" || test -z "$source" || test -z "$object"; then
- echo "depcomp: Variables source, object and depmode must be set" 1>&2
- exit 1
-fi
-
-# Dependencies for sub/bar.o or sub/bar.obj go into sub/.deps/bar.Po.
-depfile=${depfile-`echo "$object" |
- sed 's|[^\\/]*$|'${DEPDIR-.deps}'/&|;s|\.\([^.]*\)$|.P\1|;s|Pobj$|Po|'`}
-tmpdepfile=${tmpdepfile-`echo "$depfile" | sed 's/\.\([^.]*\)$/.T\1/'`}
-
-rm -f "$tmpdepfile"
-
-# Some modes work just like other modes, but use different flags. We
-# parameterize here, but still list the modes in the big case below,
-# to make depend.m4 easier to write. Note that we *cannot* use a case
-# here, because this file can only contain one case statement.
-if test "$depmode" = hp; then
- # HP compiler uses -M and no extra arg.
- gccflag=-M
- depmode=gcc
-fi
-
-if test "$depmode" = dashXmstdout; then
- # This is just like dashmstdout with a different argument.
- dashmflag=-xM
- depmode=dashmstdout
-fi
-
-case "$depmode" in
-gcc3)
-## gcc 3 implements dependency tracking that does exactly what
-## we want. Yay! Note: for some reason libtool 1.4 doesn't like
-## it if -MD -MP comes after the -MF stuff. Hmm.
-## Unfortunately, FreeBSD c89 acceptance of flags depends upon
-## the command line argument order; so add the flags where they
-## appear in depend2.am. Note that the slowdown incurred here
-## affects only configure: in makefiles, %FASTDEP% shortcuts this.
- for arg
- do
- case $arg in
- -c) set fnord "$@" -MT "$object" -MD -MP -MF "$tmpdepfile" "$arg" ;;
- *) set fnord "$@" "$arg" ;;
- esac
- shift # fnord
- shift # $arg
- done
- "$@"
- stat=$?
- if test $stat -eq 0; then :
- else
- rm -f "$tmpdepfile"
- exit $stat
- fi
- mv "$tmpdepfile" "$depfile"
- ;;
-
-gcc)
-## There are various ways to get dependency output from gcc. Here's
-## why we pick this rather obscure method:
-## - Don't want to use -MD because we'd like the dependencies to end
-## up in a subdir. Having to rename by hand is ugly.
-## (We might end up doing this anyway to support other compilers.)
-## - The DEPENDENCIES_OUTPUT environment variable makes gcc act like
-## -MM, not -M (despite what the docs say).
-## - Using -M directly means running the compiler twice (even worse
-## than renaming).
- if test -z "$gccflag"; then
- gccflag=-MD,
- fi
- "$@" -Wp,"$gccflag$tmpdepfile"
- stat=$?
- if test $stat -eq 0; then :
- else
- rm -f "$tmpdepfile"
- exit $stat
- fi
- rm -f "$depfile"
- echo "$object : \\" > "$depfile"
- alpha=ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz
-## The second -e expression handles DOS-style file names with drive letters.
- sed -e 's/^[^:]*: / /' \
- -e 's/^['$alpha']:\/[^:]*: / /' < "$tmpdepfile" >> "$depfile"
-## This next piece of magic avoids the `deleted header file' problem.
-## The problem is that when a header file which appears in a .P file
-## is deleted, the dependency causes make to die (because there is
-## typically no way to rebuild the header). We avoid this by adding
-## dummy dependencies for each header file. Too bad gcc doesn't do
-## this for us directly.
- tr ' ' '
-' < "$tmpdepfile" |
-## Some versions of gcc put a space before the `:'. On the theory
-## that the space means something, we add a space to the output as
-## well.
-## Some versions of the HPUX 10.20 sed can't process this invocation
-## correctly. Breaking it into two sed invocations is a workaround.
- sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' | sed -e 's/$/ :/' >> "$depfile"
- rm -f "$tmpdepfile"
- ;;
-
-hp)
- # This case exists only to let depend.m4 do its work. It works by
- # looking at the text of this script. This case will never be run,
- # since it is checked for above.
- exit 1
- ;;
-
-sgi)
- if test "$libtool" = yes; then
- "$@" "-Wp,-MDupdate,$tmpdepfile"
- else
- "$@" -MDupdate "$tmpdepfile"
- fi
- stat=$?
- if test $stat -eq 0; then :
- else
- rm -f "$tmpdepfile"
- exit $stat
- fi
- rm -f "$depfile"
-
- if test -f "$tmpdepfile"; then # yes, the sourcefile depend on other files
- echo "$object : \\" > "$depfile"
-
- # Clip off the initial element (the dependent). Don't try to be
- # clever and replace this with sed code, as IRIX sed won't handle
- # lines with more than a fixed number of characters (4096 in
- # IRIX 6.2 sed, 8192 in IRIX 6.5). We also remove comment lines;
- # the IRIX cc adds comments like `#:fec' to the end of the
- # dependency line.
- tr ' ' '
-' < "$tmpdepfile" \
- | sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' | \
- tr '
-' ' ' >> $depfile
- echo >> $depfile
-
- # The second pass generates a dummy entry for each header file.
- tr ' ' '
-' < "$tmpdepfile" \
- | sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' -e 's/$/:/' \
- >> $depfile
- else
- # The sourcefile does not contain any dependencies, so just
- # store a dummy comment line, to avoid errors with the Makefile
- # "include basename.Plo" scheme.
- echo "#dummy" > "$depfile"
- fi
- rm -f "$tmpdepfile"
- ;;
-
-aix)
- # The C for AIX Compiler uses -M and outputs the dependencies
- # in a .u file. In older versions, this file always lives in the
- # current directory. Also, the AIX compiler puts `$object:' at the
- # start of each line; $object doesn't have directory information.
- # Version 6 uses the directory in both cases.
- dir=`echo "$object" | sed -e 's|/[^/]*$|/|'`
- test "x$dir" = "x$object" && dir=
- base=`echo "$object" | sed -e 's|^.*/||' -e 's/\.o$//' -e 's/\.lo$//'`
- if test "$libtool" = yes; then
- tmpdepfile1=$dir$base.u
- tmpdepfile2=$base.u
- tmpdepfile3=$dir.libs/$base.u
- "$@" -Wc,-M
- else
- tmpdepfile1=$dir$base.u
- tmpdepfile2=$dir$base.u
- tmpdepfile3=$dir$base.u
- "$@" -M
- fi
- stat=$?
-
- if test $stat -eq 0; then :
- else
- rm -f "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3"
- exit $stat
- fi
-
- for tmpdepfile in "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3"
- do
- test -f "$tmpdepfile" && break
- done
- if test -f "$tmpdepfile"; then
- # Each line is of the form `foo.o: dependent.h'.
- # Do two passes, one to just change these to
- # `$object: dependent.h' and one to simply `dependent.h:'.
- sed -e "s,^.*\.[a-z]*:,$object:," < "$tmpdepfile" > "$depfile"
- # That's a tab and a space in the [].
- sed -e 's,^.*\.[a-z]*:[ ]*,,' -e 's,$,:,' < "$tmpdepfile" >> "$depfile"
- else
- # The sourcefile does not contain any dependencies, so just
- # store a dummy comment line, to avoid errors with the Makefile
- # "include basename.Plo" scheme.
- echo "#dummy" > "$depfile"
- fi
- rm -f "$tmpdepfile"
- ;;
-
-icc)
- # Intel's C compiler understands `-MD -MF file'. However on
- # icc -MD -MF foo.d -c -o sub/foo.o sub/foo.c
- # ICC 7.0 will fill foo.d with something like
- # foo.o: sub/foo.c
- # foo.o: sub/foo.h
- # which is wrong. We want:
- # sub/foo.o: sub/foo.c
- # sub/foo.o: sub/foo.h
- # sub/foo.c:
- # sub/foo.h:
- # ICC 7.1 will output
- # foo.o: sub/foo.c sub/foo.h
- # and will wrap long lines using \ :
- # foo.o: sub/foo.c ... \
- # sub/foo.h ... \
- # ...
-
- "$@" -MD -MF "$tmpdepfile"
- stat=$?
- if test $stat -eq 0; then :
- else
- rm -f "$tmpdepfile"
- exit $stat
- fi
- rm -f "$depfile"
- # Each line is of the form `foo.o: dependent.h',
- # or `foo.o: dep1.h dep2.h \', or ` dep3.h dep4.h \'.
- # Do two passes, one to just change these to
- # `$object: dependent.h' and one to simply `dependent.h:'.
- sed "s,^[^:]*:,$object :," < "$tmpdepfile" > "$depfile"
- # Some versions of the HPUX 10.20 sed can't process this invocation
- # correctly. Breaking it into two sed invocations is a workaround.
- sed 's,^[^:]*: \(.*\)$,\1,;s/^\\$//;/^$/d;/:$/d' < "$tmpdepfile" |
- sed -e 's/$/ :/' >> "$depfile"
- rm -f "$tmpdepfile"
- ;;
-
-hp2)
- # The "hp" stanza above does not work with aCC (C++) and HP's ia64
- # compilers, which have integrated preprocessors. The correct option
- # to use with these is +Maked; it writes dependencies to a file named
- # 'foo.d', which lands next to the object file, wherever that
- # happens to be.
- # Much of this is similar to the tru64 case; see comments there.
- dir=`echo "$object" | sed -e 's|/[^/]*$|/|'`
- test "x$dir" = "x$object" && dir=
- base=`echo "$object" | sed -e 's|^.*/||' -e 's/\.o$//' -e 's/\.lo$//'`
- if test "$libtool" = yes; then
- tmpdepfile1=$dir$base.d
- tmpdepfile2=$dir.libs/$base.d
- "$@" -Wc,+Maked
- else
- tmpdepfile1=$dir$base.d
- tmpdepfile2=$dir$base.d
- "$@" +Maked
- fi
- stat=$?
- if test $stat -eq 0; then :
- else
- rm -f "$tmpdepfile1" "$tmpdepfile2"
- exit $stat
- fi
-
- for tmpdepfile in "$tmpdepfile1" "$tmpdepfile2"
- do
- test -f "$tmpdepfile" && break
- done
- if test -f "$tmpdepfile"; then
- sed -e "s,^.*\.[a-z]*:,$object:," "$tmpdepfile" > "$depfile"
- # Add `dependent.h:' lines.
- sed -ne '2,${; s/^ *//; s/ \\*$//; s/$/:/; p;}' "$tmpdepfile" >> "$depfile"
- else
- echo "#dummy" > "$depfile"
- fi
- rm -f "$tmpdepfile" "$tmpdepfile2"
- ;;
-
-tru64)
- # The Tru64 compiler uses -MD to generate dependencies as a side
- # effect. `cc -MD -o foo.o ...' puts the dependencies into `foo.o.d'.
- # At least on Alpha/Redhat 6.1, Compaq CCC V6.2-504 seems to put
- # dependencies in `foo.d' instead, so we check for that too.
- # Subdirectories are respected.
- dir=`echo "$object" | sed -e 's|/[^/]*$|/|'`
- test "x$dir" = "x$object" && dir=
- base=`echo "$object" | sed -e 's|^.*/||' -e 's/\.o$//' -e 's/\.lo$//'`
-
- if test "$libtool" = yes; then
- # With Tru64 cc, shared objects can also be used to make a
- # static library. This mechanism is used in libtool 1.4 series to
- # handle both shared and static libraries in a single compilation.
- # With libtool 1.4, dependencies were output in $dir.libs/$base.lo.d.
- #
- # With libtool 1.5 this exception was removed, and libtool now
- # generates 2 separate objects for the 2 libraries. These two
- # compilations output dependencies in $dir.libs/$base.o.d and
- # in $dir$base.o.d. We have to check for both files, because
- # one of the two compilations can be disabled. We should prefer
- # $dir$base.o.d over $dir.libs/$base.o.d because the latter is
- # automatically cleaned when .libs/ is deleted, while ignoring
- # the former would cause a distcleancheck panic.
- tmpdepfile1=$dir.libs/$base.lo.d # libtool 1.4
- tmpdepfile2=$dir$base.o.d # libtool 1.5
- tmpdepfile3=$dir.libs/$base.o.d # libtool 1.5
- tmpdepfile4=$dir.libs/$base.d # Compaq CCC V6.2-504
- "$@" -Wc,-MD
- else
- tmpdepfile1=$dir$base.o.d
- tmpdepfile2=$dir$base.d
- tmpdepfile3=$dir$base.d
- tmpdepfile4=$dir$base.d
- "$@" -MD
- fi
-
- stat=$?
- if test $stat -eq 0; then :
- else
- rm -f "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3" "$tmpdepfile4"
- exit $stat
- fi
-
- for tmpdepfile in "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3" "$tmpdepfile4"
- do
- test -f "$tmpdepfile" && break
- done
- if test -f "$tmpdepfile"; then
- sed -e "s,^.*\.[a-z]*:,$object:," < "$tmpdepfile" > "$depfile"
- # That's a tab and a space in the [].
- sed -e 's,^.*\.[a-z]*:[ ]*,,' -e 's,$,:,' < "$tmpdepfile" >> "$depfile"
- else
- echo "#dummy" > "$depfile"
- fi
- rm -f "$tmpdepfile"
- ;;
-
-#nosideeffect)
- # This comment above is used by automake to tell side-effect
- # dependency tracking mechanisms from slower ones.
-
-dashmstdout)
- # Important note: in order to support this mode, a compiler *must*
- # always write the preprocessed file to stdout, regardless of -o.
- "$@" || exit $?
-
- # Remove the call to Libtool.
- if test "$libtool" = yes; then
- while test $1 != '--mode=compile'; do
- shift
- done
- shift
- fi
-
- # Remove `-o $object'.
- IFS=" "
- for arg
- do
- case $arg in
- -o)
- shift
- ;;
- $object)
- shift
- ;;
- *)
- set fnord "$@" "$arg"
- shift # fnord
- shift # $arg
- ;;
- esac
- done
-
- test -z "$dashmflag" && dashmflag=-M
- # Require at least two characters before searching for `:'
- # in the target name. This is to cope with DOS-style filenames:
- # a dependency such as `c:/foo/bar' could be seen as target `c' otherwise.
- "$@" $dashmflag |
- sed 's:^[ ]*[^: ][^:][^:]*\:[ ]*:'"$object"'\: :' > "$tmpdepfile"
- rm -f "$depfile"
- cat < "$tmpdepfile" > "$depfile"
- tr ' ' '
-' < "$tmpdepfile" | \
-## Some versions of the HPUX 10.20 sed can't process this invocation
-## correctly. Breaking it into two sed invocations is a workaround.
- sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' | sed -e 's/$/ :/' >> "$depfile"
- rm -f "$tmpdepfile"
- ;;
-
-dashXmstdout)
- # This case only exists to satisfy depend.m4. It is never actually
- # run, as this mode is specially recognized in the preamble.
- exit 1
- ;;
-
-makedepend)
- "$@" || exit $?
- # Remove any Libtool call
- if test "$libtool" = yes; then
- while test $1 != '--mode=compile'; do
- shift
- done
- shift
- fi
- # X makedepend
- shift
- cleared=no
- for arg in "$@"; do
- case $cleared in
- no)
- set ""; shift
- cleared=yes ;;
- esac
- case "$arg" in
- -D*|-I*)
- set fnord "$@" "$arg"; shift ;;
- # Strip any option that makedepend may not understand. Remove
- # the object too, otherwise makedepend will parse it as a source file.
- -*|$object)
- ;;
- *)
- set fnord "$@" "$arg"; shift ;;
- esac
- done
- obj_suffix="`echo $object | sed 's/^.*\././'`"
- touch "$tmpdepfile"
- ${MAKEDEPEND-makedepend} -o"$obj_suffix" -f"$tmpdepfile" "$@"
- rm -f "$depfile"
- cat < "$tmpdepfile" > "$depfile"
- sed '1,2d' "$tmpdepfile" | tr ' ' '
-' | \
-## Some versions of the HPUX 10.20 sed can't process this invocation
-## correctly. Breaking it into two sed invocations is a workaround.
- sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' | sed -e 's/$/ :/' >> "$depfile"
- rm -f "$tmpdepfile" "$tmpdepfile".bak
- ;;
-
-cpp)
- # Important note: in order to support this mode, a compiler *must*
- # always write the preprocessed file to stdout.
- "$@" || exit $?
-
- # Remove the call to Libtool.
- if test "$libtool" = yes; then
- while test $1 != '--mode=compile'; do
- shift
- done
- shift
- fi
-
- # Remove `-o $object'.
- IFS=" "
- for arg
- do
- case $arg in
- -o)
- shift
- ;;
- $object)
- shift
- ;;
- *)
- set fnord "$@" "$arg"
- shift # fnord
- shift # $arg
- ;;
- esac
- done
-
- "$@" -E |
- sed -n -e '/^# [0-9][0-9]* "\([^"]*\)".*/ s:: \1 \\:p' \
- -e '/^#line [0-9][0-9]* "\([^"]*\)".*/ s:: \1 \\:p' |
- sed '$ s: \\$::' > "$tmpdepfile"
- rm -f "$depfile"
- echo "$object : \\" > "$depfile"
- cat < "$tmpdepfile" >> "$depfile"
- sed < "$tmpdepfile" '/^$/d;s/^ //;s/ \\$//;s/$/ :/' >> "$depfile"
- rm -f "$tmpdepfile"
- ;;
-
-msvisualcpp)
- # Important note: in order to support this mode, a compiler *must*
- # always write the preprocessed file to stdout, regardless of -o,
- # because we must use -o when running libtool.
- "$@" || exit $?
- IFS=" "
- for arg
- do
- case "$arg" in
- "-Gm"|"/Gm"|"-Gi"|"/Gi"|"-ZI"|"/ZI")
- set fnord "$@"
- shift
- shift
- ;;
- *)
- set fnord "$@" "$arg"
- shift
- shift
- ;;
- esac
- done
- "$@" -E |
- sed -n '/^#line [0-9][0-9]* "\([^"]*\)"/ s::echo "`cygpath -u \\"\1\\"`":p' | sort | uniq > "$tmpdepfile"
- rm -f "$depfile"
- echo "$object : \\" > "$depfile"
- . "$tmpdepfile" | sed 's% %\\ %g' | sed -n '/^\(.*\)$/ s:: \1 \\:p' >> "$depfile"
- echo " " >> "$depfile"
- . "$tmpdepfile" | sed 's% %\\ %g' | sed -n '/^\(.*\)$/ s::\1\::p' >> "$depfile"
- rm -f "$tmpdepfile"
- ;;
-
-none)
- exec "$@"
- ;;
-
-*)
- echo "Unknown depmode $depmode" 1>&2
- exit 1
- ;;
-esac
-
-exit 0
-
-# Local Variables:
-# mode: shell-script
-# sh-indentation: 2
-# eval: (add-hook 'write-file-hooks 'time-stamp)
-# time-stamp-start: "scriptversion="
-# time-stamp-format: "%:y-%02m-%02d.%02H"
-# time-stamp-end: "$"
-# End:
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <lo...@us...> - 2012-06-03 17:39:05
|
Revision: 176
http://msn-proxy.svn.sourceforge.net/msn-proxy/?rev=176&view=rev
Author: loos-br
Date: 2012-06-03 17:38:56 +0000 (Sun, 03 Jun 2012)
Log Message:
-----------
removing auto-fools files...
Removed Paths:
-------------
trunk/Makefile.am
trunk/Makefile.in
trunk/NEWS
trunk/aclocal.m4
trunk/config.guess
trunk/config.h.in
trunk/configure
trunk/configure.in
trunk/install-sh
trunk/ltmain.sh
trunk/missing
Deleted: trunk/Makefile.am
===================================================================
--- trunk/Makefile.am 2012-06-03 16:40:25 UTC (rev 175)
+++ trunk/Makefile.am 2012-06-03 17:38:56 UTC (rev 176)
@@ -1,6 +0,0 @@
-LIBTOOL_DEPS = @LIBTOOL_DEPS@
-libtool: $(LIBTOOL_DEPS)
- $(SHELL) ./config.status libtool
-ACLOCAL_AMFLAGS=-I m4
-SUBDIRS = \
- src
Deleted: trunk/Makefile.in
===================================================================
--- trunk/Makefile.in 2012-06-03 16:40:25 UTC (rev 175)
+++ trunk/Makefile.in 2012-06-03 17:38:56 UTC (rev 176)
@@ -1,735 +0,0 @@
-# Makefile.in generated by automake 1.11.1 from Makefile.am.
-# @configure_input@
-
-# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation,
-# Inc.
-# This Makefile.in is free software; the Free Software Foundation
-# gives unlimited permission to copy and/or distribute it,
-# with or without modifications, as long as this notice is preserved.
-
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
-# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
-# PARTICULAR PURPOSE.
-
-@SET_MAKE@
-VPATH = @srcdir@
-pkgdatadir = $(datadir)/@PACKAGE@
-pkgincludedir = $(includedir)/@PACKAGE@
-pkglibdir = $(libdir)/@PACKAGE@
-pkglibexecdir = $(libexecdir)/@PACKAGE@
-am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
-install_sh_DATA = $(install_sh) -c -m 644
-install_sh_PROGRAM = $(install_sh) -c
-install_sh_SCRIPT = $(install_sh) -c
-INSTALL_HEADER = $(INSTALL_DATA)
-transform = $(program_transform_name)
-NORMAL_INSTALL = :
-PRE_INSTALL = :
-POST_INSTALL = :
-NORMAL_UNINSTALL = :
-PRE_UNINSTALL = :
-POST_UNINSTALL = :
-build_triplet = @build@
-host_triplet = @host@
-subdir = .
-DIST_COMMON = README $(am__configure_deps) $(srcdir)/Makefile.am \
- $(srcdir)/Makefile.in $(srcdir)/config.h.in \
- $(top_srcdir)/configure AUTHORS COPYING ChangeLog INSTALL NEWS \
- config.guess config.sub depcomp install-sh ltmain.sh missing
-ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-am__aclocal_m4_deps = $(top_srcdir)/m4/libtool.m4 \
- $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \
- $(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \
- $(top_srcdir)/configure.in
-am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
- $(ACLOCAL_M4)
-am__CONFIG_DISTCLEAN_FILES = config.status config.cache config.log \
- configure.lineno config.status.lineno
-mkinstalldirs = $(install_sh) -d
-CONFIG_HEADER = config.h
-CONFIG_CLEAN_FILES =
-CONFIG_CLEAN_VPATH_FILES =
-SOURCES =
-DIST_SOURCES =
-RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \
- html-recursive info-recursive install-data-recursive \
- install-dvi-recursive install-exec-recursive \
- install-html-recursive install-info-recursive \
- install-pdf-recursive install-ps-recursive install-recursive \
- installcheck-recursive installdirs-recursive pdf-recursive \
- ps-recursive uninstall-recursive
-RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive \
- distclean-recursive maintainer-clean-recursive
-AM_RECURSIVE_TARGETS = $(RECURSIVE_TARGETS:-recursive=) \
- $(RECURSIVE_CLEAN_TARGETS:-recursive=) tags TAGS ctags CTAGS \
- distdir dist dist-all distcheck
-ETAGS = etags
-CTAGS = ctags
-DIST_SUBDIRS = $(SUBDIRS)
-DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
-distdir = $(PACKAGE)-$(VERSION)
-top_distdir = $(distdir)
-am__remove_distdir = \
- { test ! -d "$(distdir)" \
- || { find "$(distdir)" -type d ! -perm -200 -exec chmod u+w {} ';' \
- && rm -fr "$(distdir)"; }; }
-am__relativize = \
- dir0=`pwd`; \
- sed_first='s,^\([^/]*\)/.*$$,\1,'; \
- sed_rest='s,^[^/]*/*,,'; \
- sed_last='s,^.*/\([^/]*\)$$,\1,'; \
- sed_butlast='s,/*[^/]*$$,,'; \
- while test -n "$$dir1"; do \
- first=`echo "$$dir1" | sed -e "$$sed_first"`; \
- if test "$$first" != "."; then \
- if test "$$first" = ".."; then \
- dir2=`echo "$$dir0" | sed -e "$$sed_last"`/"$$dir2"; \
- dir0=`echo "$$dir0" | sed -e "$$sed_butlast"`; \
- else \
- first2=`echo "$$dir2" | sed -e "$$sed_first"`; \
- if test "$$first2" = "$$first"; then \
- dir2=`echo "$$dir2" | sed -e "$$sed_rest"`; \
- else \
- dir2="../$$dir2"; \
- fi; \
- dir0="$$dir0"/"$$first"; \
- fi; \
- fi; \
- dir1=`echo "$$dir1" | sed -e "$$sed_rest"`; \
- done; \
- reldir="$$dir2"
-DIST_ARCHIVES = $(distdir).tar.gz
-GZIP_ENV = --best
-distuninstallcheck_listfiles = find . -type f -print
-distcleancheck_listfiles = find . -type f -print
-ACLOCAL = @ACLOCAL@
-AMTAR = @AMTAR@
-AR = @AR@
-AUTOCONF = @AUTOCONF@
-AUTOHEADER = @AUTOHEADER@
-AUTOMAKE = @AUTOMAKE@
-AWK = @AWK@
-CC = @CC@
-CCDEPMODE = @CCDEPMODE@
-CFLAGS = @CFLAGS@
-CPP = @CPP@
-CPPFLAGS = @CPPFLAGS@
-CXX = @CXX@
-CXXCPP = @CXXCPP@
-CXXDEPMODE = @CXXDEPMODE@
-CXXFLAGS = @CXXFLAGS@
-CYGPATH_W = @CYGPATH_W@
-DEFS = @DEFS@
-DEPDIR = @DEPDIR@
-DLLTOOL = @DLLTOOL@
-DSYMUTIL = @DSYMUTIL@
-DUMPBIN = @DUMPBIN@
-ECHO_C = @ECHO_C@
-ECHO_N = @ECHO_N@
-ECHO_T = @ECHO_T@
-EGREP = @EGREP@
-EXEEXT = @EXEEXT@
-FGREP = @FGREP@
-GREP = @GREP@
-INSTALL = @INSTALL@
-INSTALL_DATA = @INSTALL_DATA@
-INSTALL_PROGRAM = @INSTALL_PROGRAM@
-INSTALL_SCRIPT = @INSTALL_SCRIPT@
-INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
-LD = @LD@
-LDFLAGS = @LDFLAGS@
-LIBOBJS = @LIBOBJS@
-LIBS = @LIBS@
-LIBTOOL = @LIBTOOL@
-LIBTOOL_DEPS = @LIBTOOL_DEPS@
-LIPO = @LIPO@
-LN_S = @LN_S@
-LTLIBOBJS = @LTLIBOBJS@
-MAINT = @MAINT@
-MAKEINFO = @MAKEINFO@
-MANIFEST_TOOL = @MANIFEST_TOOL@
-MKDIR_P = @MKDIR_P@
-MSNPROXY_LIBS = @MSNPROXY_LIBS@
-MYSQL_CFLAGS = @MYSQL_CFLAGS@
-MYSQL_LIBS = @MYSQL_LIBS@
-NM = @NM@
-NMEDIT = @NMEDIT@
-OBJDUMP = @OBJDUMP@
-OBJEXT = @OBJEXT@
-OTOOL = @OTOOL@
-OTOOL64 = @OTOOL64@
-PACKAGE = @PACKAGE@
-PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
-PACKAGE_NAME = @PACKAGE_NAME@
-PACKAGE_STRING = @PACKAGE_STRING@
-PACKAGE_TARNAME = @PACKAGE_TARNAME@
-PACKAGE_URL = @PACKAGE_URL@
-PACKAGE_VERSION = @PACKAGE_VERSION@
-PATH_SEPARATOR = @PATH_SEPARATOR@
-PGSQL_CFLAGS = @PGSQL_CFLAGS@
-PGSQL_LIBS = @PGSQL_LIBS@
-RANLIB = @RANLIB@
-SED = @SED@
-SET_MAKE = @SET_MAKE@
-SHELL = @SHELL@
-STRIP = @STRIP@
-VERSION = @VERSION@
-abs_builddir = @abs_builddir@
-abs_srcdir = @abs_srcdir@
-abs_top_builddir = @abs_top_builddir@
-abs_top_srcdir = @abs_top_srcdir@
-ac_ct_AR = @ac_ct_AR@
-ac_ct_CC = @ac_ct_CC@
-ac_ct_CXX = @ac_ct_CXX@
-ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
-am__include = @am__include@
-am__leading_dot = @am__leading_dot@
-am__quote = @am__quote@
-am__tar = @am__tar@
-am__untar = @am__untar@
-bindir = @bindir@
-build = @build@
-build_alias = @build_alias@
-build_cpu = @build_cpu@
-build_os = @build_os@
-build_vendor = @build_vendor@
-builddir = @builddir@
-datadir = @datadir@
-datarootdir = @datarootdir@
-docdir = @docdir@
-dvidir = @dvidir@
-exec_prefix = @exec_prefix@
-host = @host@
-host_alias = @host_alias@
-host_cpu = @host_cpu@
-host_os = @host_os@
-host_vendor = @host_vendor@
-htmldir = @htmldir@
-includedir = @includedir@
-infodir = @infodir@
-install_sh = @install_sh@
-libdir = @libdir@
-libexecdir = @libexecdir@
-localedir = @localedir@
-localstatedir = @localstatedir@
-mandir = @mandir@
-mkdir_p = @mkdir_p@
-oldincludedir = @oldincludedir@
-pdfdir = @pdfdir@
-prefix = @prefix@
-program_transform_name = @program_transform_name@
-psdir = @psdir@
-sbindir = @sbindir@
-sharedstatedir = @sharedstatedir@
-srcdir = @srcdir@
-sysconfdir = @sysconfdir@
-target_alias = @target_alias@
-top_build_prefix = @top_build_prefix@
-top_builddir = @top_builddir@
-top_srcdir = @top_srcdir@
-ACLOCAL_AMFLAGS = -I m4
-SUBDIRS = \
- src
-
-all: config.h
- $(MAKE) $(AM_MAKEFLAGS) all-recursive
-
-.SUFFIXES:
-am--refresh:
- @:
-$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps)
- @for dep in $?; do \
- case '$(am__configure_deps)' in \
- *$$dep*) \
- echo ' cd $(srcdir) && $(AUTOMAKE) --foreign'; \
- $(am__cd) $(srcdir) && $(AUTOMAKE) --foreign \
- && exit 0; \
- exit 1;; \
- esac; \
- done; \
- echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign Makefile'; \
- $(am__cd) $(top_srcdir) && \
- $(AUTOMAKE) --foreign Makefile
-.PRECIOUS: Makefile
-Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
- @case '$?' in \
- *config.status*) \
- echo ' $(SHELL) ./config.status'; \
- $(SHELL) ./config.status;; \
- *) \
- echo ' cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__depfiles_maybe)'; \
- cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__depfiles_maybe);; \
- esac;
-
-$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
- $(SHELL) ./config.status --recheck
-
-$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
- $(am__cd) $(srcdir) && $(AUTOCONF)
-$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
- $(am__cd) $(srcdir) && $(ACLOCAL) $(ACLOCAL_AMFLAGS)
-$(am__aclocal_m4_deps):
-
-config.h: stamp-h1
- @if test ! -f $@; then \
- rm -f stamp-h1; \
- $(MAKE) $(AM_MAKEFLAGS) stamp-h1; \
- else :; fi
-
-stamp-h1: $(srcdir)/config.h.in $(top_builddir)/config.status
- @rm -f stamp-h1
- cd $(top_builddir) && $(SHELL) ./config.status config.h
-$(srcdir)/config.h.in: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
- ($(am__cd) $(top_srcdir) && $(AUTOHEADER))
- rm -f stamp-h1
- touch $@
-
-distclean-hdr:
- -rm -f config.h stamp-h1
-
-mostlyclean-libtool:
- -rm -f *.lo
-
-clean-libtool:
- -rm -rf .libs _libs
-
-distclean-libtool:
- -rm -f libtool config.lt
-
-# This directory's subdirectories are mostly independent; you can cd
-# into them and run `make' without going through this Makefile.
-# To change the values of `make' variables: instead of editing Makefiles,
-# (1) if the variable is set in `config.status', edit `config.status'
-# (which will cause the Makefiles to be regenerated when you run `make');
-# (2) otherwise, pass the desired values on the `make' command line.
-$(RECURSIVE_TARGETS):
- @fail= failcom='exit 1'; \
- for f in x $$MAKEFLAGS; do \
- case $$f in \
- *=* | --[!k]*);; \
- *k*) failcom='fail=yes';; \
- esac; \
- done; \
- dot_seen=no; \
- target=`echo $@ | sed s/-recursive//`; \
- list='$(SUBDIRS)'; for subdir in $$list; do \
- echo "Making $$target in $$subdir"; \
- if test "$$subdir" = "."; then \
- dot_seen=yes; \
- local_target="$$target-am"; \
- else \
- local_target="$$target"; \
- fi; \
- ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
- || eval $$failcom; \
- done; \
- if test "$$dot_seen" = "no"; then \
- $(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \
- fi; test -z "$$fail"
-
-$(RECURSIVE_CLEAN_TARGETS):
- @fail= failcom='exit 1'; \
- for f in x $$MAKEFLAGS; do \
- case $$f in \
- *=* | --[!k]*);; \
- *k*) failcom='fail=yes';; \
- esac; \
- done; \
- dot_seen=no; \
- case "$@" in \
- distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \
- *) list='$(SUBDIRS)' ;; \
- esac; \
- rev=''; for subdir in $$list; do \
- if test "$$subdir" = "."; then :; else \
- rev="$$subdir $$rev"; \
- fi; \
- done; \
- rev="$$rev ."; \
- target=`echo $@ | sed s/-recursive//`; \
- for subdir in $$rev; do \
- echo "Making $$target in $$subdir"; \
- if test "$$subdir" = "."; then \
- local_target="$$target-am"; \
- else \
- local_target="$$target"; \
- fi; \
- ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
- || eval $$failcom; \
- done && test -z "$$fail"
-tags-recursive:
- list='$(SUBDIRS)'; for subdir in $$list; do \
- test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \
- done
-ctags-recursive:
- list='$(SUBDIRS)'; for subdir in $$list; do \
- test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \
- done
-
-ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
- list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
- unique=`for i in $$list; do \
- if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
- done | \
- $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
- END { if (nonempty) { for (i in files) print i; }; }'`; \
- mkid -fID $$unique
-tags: TAGS
-
-TAGS: tags-recursive $(HEADERS) $(SOURCES) config.h.in $(TAGS_DEPENDENCIES) \
- $(TAGS_FILES) $(LISP)
- set x; \
- here=`pwd`; \
- if ($(ETAGS) --etags-include --version) >/dev/null 2>&1; then \
- include_option=--etags-include; \
- empty_fix=.; \
- else \
- include_option=--include; \
- empty_fix=; \
- fi; \
- list='$(SUBDIRS)'; for subdir in $$list; do \
- if test "$$subdir" = .; then :; else \
- test ! -f $$subdir/TAGS || \
- set "$$@" "$$include_option=$$here/$$subdir/TAGS"; \
- fi; \
- done; \
- list='$(SOURCES) $(HEADERS) config.h.in $(LISP) $(TAGS_FILES)'; \
- unique=`for i in $$list; do \
- if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
- done | \
- $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
- END { if (nonempty) { for (i in files) print i; }; }'`; \
- shift; \
- if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
- test -n "$$unique" || unique=$$empty_fix; \
- if test $$# -gt 0; then \
- $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
- "$$@" $$unique; \
- else \
- $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
- $$unique; \
- fi; \
- fi
-ctags: CTAGS
-CTAGS: ctags-recursive $(HEADERS) $(SOURCES) config.h.in $(TAGS_DEPENDENCIES) \
- $(TAGS_FILES) $(LISP)
- list='$(SOURCES) $(HEADERS) config.h.in $(LISP) $(TAGS_FILES)'; \
- unique=`for i in $$list; do \
- if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
- done | \
- $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
- END { if (nonempty) { for (i in files) print i; }; }'`; \
- test -z "$(CTAGS_ARGS)$$unique" \
- || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
- $$unique
-
-GTAGS:
- here=`$(am__cd) $(top_builddir) && pwd` \
- && $(am__cd) $(top_srcdir) \
- && gtags -i $(GTAGS_ARGS) "$$here"
-
-distclean-tags:
- -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
-
-distdir: $(DISTFILES)
- $(am__remove_distdir)
- test -d "$(distdir)" || mkdir "$(distdir)"
- @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
- topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
- list='$(DISTFILES)'; \
- dist_files=`for file in $$list; do echo $$file; done | \
- sed -e "s|^$$srcdirstrip/||;t" \
- -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
- case $$dist_files in \
- */*) $(MKDIR_P) `echo "$$dist_files" | \
- sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
- sort -u` ;; \
- esac; \
- for file in $$dist_files; do \
- if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
- if test -d $$d/$$file; then \
- dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
- if test -d "$(distdir)/$$file"; then \
- find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
- fi; \
- if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
- cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
- find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
- fi; \
- cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
- else \
- test -f "$(distdir)/$$file" \
- || cp -p $$d/$$file "$(distdir)/$$file" \
- || exit 1; \
- fi; \
- done
- @list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
- if test "$$subdir" = .; then :; else \
- test -d "$(distdir)/$$subdir" \
- || $(MKDIR_P) "$(distdir)/$$subdir" \
- || exit 1; \
- fi; \
- done
- @list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
- if test "$$subdir" = .; then :; else \
- dir1=$$subdir; dir2="$(distdir)/$$subdir"; \
- $(am__relativize); \
- new_distdir=$$reldir; \
- dir1=$$subdir; dir2="$(top_distdir)"; \
- $(am__relativize); \
- new_top_distdir=$$reldir; \
- echo " (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) top_distdir="$$new_top_distdir" distdir="$$new_distdir" \\"; \
- echo " am__remove_distdir=: am__skip_length_check=: am__skip_mode_fix=: distdir)"; \
- ($(am__cd) $$subdir && \
- $(MAKE) $(AM_MAKEFLAGS) \
- top_distdir="$$new_top_distdir" \
- distdir="$$new_distdir" \
- am__remove_distdir=: \
- am__skip_length_check=: \
- am__skip_mode_fix=: \
- distdir) \
- || exit 1; \
- fi; \
- done
- -test -n "$(am__skip_mode_fix)" \
- || find "$(distdir)" -type d ! -perm -755 \
- -exec chmod u+rwx,go+rx {} \; -o \
- ! -type d ! -perm -444 -links 1 -exec chmod a+r {} \; -o \
- ! -type d ! -perm -400 -exec chmod a+r {} \; -o \
- ! -type d ! -perm -444 -exec $(install_sh) -c -m a+r {} {} \; \
- || chmod -R a+r "$(distdir)"
-dist-gzip: distdir
- tardir=$(distdir) && $(am__tar) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz
- $(am__remove_distdir)
-
-dist-bzip2: distdir
- tardir=$(distdir) && $(am__tar) | bzip2 -9 -c >$(distdir).tar.bz2
- $(am__remove_distdir)
-
-dist-lzma: distdir
- tardir=$(distdir) && $(am__tar) | lzma -9 -c >$(distdir).tar.lzma
- $(am__remove_distdir)
-
-dist-xz: distdir
- tardir=$(distdir) && $(am__tar) | xz -c >$(distdir).tar.xz
- $(am__remove_distdir)
-
-dist-tarZ: distdir
- tardir=$(distdir) && $(am__tar) | compress -c >$(distdir).tar.Z
- $(am__remove_distdir)
-
-dist-shar: distdir
- shar $(distdir) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).shar.gz
- $(am__remove_distdir)
-
-dist-zip: distdir
- -rm -f $(distdir).zip
- zip -rq $(distdir).zip $(distdir)
- $(am__remove_distdir)
-
-dist dist-all: distdir
- tardir=$(distdir) && $(am__tar) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz
- $(am__remove_distdir)
-
-# This target untars the dist file and tries a VPATH configuration. Then
-# it guarantees that the distribution is self-contained by making another
-# tarfile.
-distcheck: dist
- case '$(DIST_ARCHIVES)' in \
- *.tar.gz*) \
- GZIP=$(GZIP_ENV) gzip -dc $(distdir).tar.gz | $(am__untar) ;;\
- *.tar.bz2*) \
- bzip2 -dc $(distdir).tar.bz2 | $(am__untar) ;;\
- *.tar.lzma*) \
- lzma -dc $(distdir).tar.lzma | $(am__untar) ;;\
- *.tar.xz*) \
- xz -dc $(distdir).tar.xz | $(am__untar) ;;\
- *.tar.Z*) \
- uncompress -c $(distdir).tar.Z | $(am__untar) ;;\
- *.shar.gz*) \
- GZIP=$(GZIP_ENV) gzip -dc $(distdir).shar.gz | unshar ;;\
- *.zip*) \
- unzip $(distdir).zip ;;\
- esac
- chmod -R a-w $(distdir); chmod a+w $(distdir)
- mkdir $(distdir)/_build
- mkdir $(distdir)/_inst
- chmod a-w $(distdir)
- test -d $(distdir)/_build || exit 0; \
- dc_install_base=`$(am__cd) $(distdir)/_inst && pwd | sed -e 's,^[^:\\/]:[\\/],/,'` \
- && dc_destdir="$${TMPDIR-/tmp}/am-dc-$$$$/" \
- && am__cwd=`pwd` \
- && $(am__cd) $(distdir)/_build \
- && ../configure --srcdir=.. --prefix="$$dc_install_base" \
- $(DISTCHECK_CONFIGURE_FLAGS) \
- && $(MAKE) $(AM_MAKEFLAGS) \
- && $(MAKE) $(AM_MAKEFLAGS) dvi \
- && $(MAKE) $(AM_MAKEFLAGS) check \
- && $(MAKE) $(AM_MAKEFLAGS) install \
- && $(MAKE) $(AM_MAKEFLAGS) installcheck \
- && $(MAKE) $(AM_MAKEFLAGS) uninstall \
- && $(MAKE) $(AM_MAKEFLAGS) distuninstallcheck_dir="$$dc_install_base" \
- distuninstallcheck \
- && chmod -R a-w "$$dc_install_base" \
- && ({ \
- (cd ../.. && umask 077 && mkdir "$$dc_destdir") \
- && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" install \
- && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" uninstall \
- && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" \
- distuninstallcheck_dir="$$dc_destdir" distuninstallcheck; \
- } || { rm -rf "$$dc_destdir"; exit 1; }) \
- && rm -rf "$$dc_destdir" \
- && $(MAKE) $(AM_MAKEFLAGS) dist \
- && rm -rf $(DIST_ARCHIVES) \
- && $(MAKE) $(AM_MAKEFLAGS) distcleancheck \
- && cd "$$am__cwd" \
- || exit 1
- $(am__remove_distdir)
- @(echo "$(distdir) archives ready for distribution: "; \
- list='$(DIST_ARCHIVES)'; for i in $$list; do echo $$i; done) | \
- sed -e 1h -e 1s/./=/g -e 1p -e 1x -e '$$p' -e '$$x'
-distuninstallcheck:
- @$(am__cd) '$(distuninstallcheck_dir)' \
- && test `$(distuninstallcheck_listfiles) | wc -l` -le 1 \
- || { echo "ERROR: files left after uninstall:" ; \
- if test -n "$(DESTDIR)"; then \
- echo " (check DESTDIR support)"; \
- fi ; \
- $(distuninstallcheck_listfiles) ; \
- exit 1; } >&2
-distcleancheck: distclean
- @if test '$(srcdir)' = . ; then \
- echo "ERROR: distcleancheck can only run from a VPATH build" ; \
- exit 1 ; \
- fi
- @test `$(distcleancheck_listfiles) | wc -l` -eq 0 \
- || { echo "ERROR: files left in build directory after distclean:" ; \
- $(distcleancheck_listfiles) ; \
- exit 1; } >&2
-check-am: all-am
-check: check-recursive
-all-am: Makefile config.h
-installdirs: installdirs-recursive
-installdirs-am:
-install: install-recursive
-install-exec: install-exec-recursive
-install-data: install-data-recursive
-uninstall: uninstall-recursive
-
-install-am: all-am
- @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
-
-installcheck: installcheck-recursive
-install-strip:
- $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
- install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
- `test -z '$(STRIP)' || \
- echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
-mostlyclean-generic:
-
-clean-generic:
-
-distclean-generic:
- -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
- -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
-
-maintainer-clean-generic:
- @echo "This command is intended for maintainers to use"
- @echo "it deletes files that may require special tools to rebuild."
-clean: clean-recursive
-
-clean-am: clean-generic clean-libtool mostlyclean-am
-
-distclean: distclean-recursive
- -rm -f $(am__CONFIG_DISTCLEAN_FILES)
- -rm -f Makefile
-distclean-am: clean-am distclean-generic distclean-hdr \
- distclean-libtool distclean-tags
-
-dvi: dvi-recursive
-
-dvi-am:
-
-html: html-recursive
-
-html-am:
-
-info: info-recursive
-
-info-am:
-
-install-data-am:
-
-install-dvi: install-dvi-recursive
-
-install-dvi-am:
-
-install-exec-am:
-
-install-html: install-html-recursive
-
-install-html-am:
-
-install-info: install-info-recursive
-
-install-info-am:
-
-install-man:
-
-install-pdf: install-pdf-recursive
-
-install-pdf-am:
-
-install-ps: install-ps-recursive
-
-install-ps-am:
-
-installcheck-am:
-
-maintainer-clean: maintainer-clean-recursive
- -rm -f $(am__CONFIG_DISTCLEAN_FILES)
- -rm -rf $(top_srcdir)/autom4te.cache
- -rm -f Makefile
-maintainer-clean-am: distclean-am maintainer-clean-generic
-
-mostlyclean: mostlyclean-recursive
-
-mostlyclean-am: mostlyclean-generic mostlyclean-libtool
-
-pdf: pdf-recursive
-
-pdf-am:
-
-ps: ps-recursive
-
-ps-am:
-
-uninstall-am:
-
-.MAKE: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) all \
- ctags-recursive install-am install-strip tags-recursive
-
-.PHONY: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) CTAGS GTAGS \
- all all-am am--refresh check check-am clean clean-generic \
- clean-libtool ctags ctags-recursive dist dist-all dist-bzip2 \
- dist-gzip dist-lzma dist-shar dist-tarZ dist-xz dist-zip \
- distcheck distclean distclean-generic distclean-hdr \
- distclean-libtool distclean-tags distcleancheck distdir \
- distuninstallcheck dvi dvi-am html html-am info info-am \
- install install-am install-data install-data-am install-dvi \
- install-dvi-am install-exec install-exec-am install-html \
- install-html-am install-info install-info-am install-man \
- install-pdf install-pdf-am install-ps install-ps-am \
- install-strip installcheck installcheck-am installdirs \
- installdirs-am maintainer-clean maintainer-clean-generic \
- mostlyclean mostlyclean-generic mostlyclean-libtool pdf pdf-am \
- ps ps-am tags tags-recursive uninstall uninstall-am
-
-libtool: $(LIBTOOL_DEPS)
- $(SHELL) ./config.status libtool
-
-# Tell versions [3.59,3.63) of GNU make to not export all variables.
-# Otherwise a system limit (for SysV at least) may be exceeded.
-.NOEXPORT:
Deleted: trunk/NEWS
===================================================================
Deleted: trunk/aclocal.m4
===================================================================
--- trunk/aclocal.m4 2012-06-03 16:40:25 UTC (rev 175)
+++ trunk/aclocal.m4 2012-06-03 17:38:56 UTC (rev 176)
@@ -1,996 +0,0 @@
-# generated automatically by aclocal 1.11.1 -*- Autoconf -*-
-
-# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004,
-# 2005, 2006, 2007, 2008, 2009 Free Software Foundation, Inc.
-# This file is free software; the Free Software Foundation
-# gives unlimited permission to copy and/or distribute it,
-# with or without modifications, as long as this notice is preserved.
-
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
-# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
-# PARTICULAR PURPOSE.
-
-m4_ifndef([AC_AUTOCONF_VERSION],
- [m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl
-m4_if(m4_defn([AC_AUTOCONF_VERSION]), [2.68],,
-[m4_warning([this file was generated for autoconf 2.68.
-You have another version of autoconf. It may work, but is not guaranteed to.
-If you have problems, you may need to regenerate the build system entirely.
-To do so, use the procedure documented by the package, typically `autoreconf'.])])
-
-# Copyright (C) 2002, 2003, 2005, 2006, 2007, 2008 Free Software Foundation, Inc.
-#
-# This file is free software; the Free Software Foundation
-# gives unlimited permission to copy and/or distribute it,
-# with or without modifications, as long as this notice is preserved.
-
-# AM_AUTOMAKE_VERSION(VERSION)
-# ----------------------------
-# Automake X.Y traces this macro to ensure aclocal.m4 has been
-# generated from the m4 files accompanying Automake X.Y.
-# (This private macro should not be called outside this file.)
-AC_DEFUN([AM_AUTOMAKE_VERSION],
-[am__api_version='1.11'
-dnl Some users find AM_AUTOMAKE_VERSION and mistake it for a way to
-dnl require some minimum version. Point them to the right macro.
-m4_if([$1], [1.11.1], [],
- [AC_FATAL([Do not call $0, use AM_INIT_AUTOMAKE([$1]).])])dnl
-])
-
-# _AM_AUTOCONF_VERSION(VERSION)
-# -----------------------------
-# aclocal traces this macro to find the Autoconf version.
-# This is a private macro too. Using m4_define simplifies
-# the logic in aclocal, which can simply ignore this definition.
-m4_define([_AM_AUTOCONF_VERSION], [])
-
-# AM_SET_CURRENT_AUTOMAKE_VERSION
-# -------------------------------
-# Call AM_AUTOMAKE_VERSION and AM_AUTOMAKE_VERSION so they can be traced.
-# This function is AC_REQUIREd by AM_INIT_AUTOMAKE.
-AC_DEFUN([AM_SET_CURRENT_AUTOMAKE_VERSION],
-[AM_AUTOMAKE_VERSION([1.11.1])dnl
-m4_ifndef([AC_AUTOCONF_VERSION],
- [m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl
-_AM_AUTOCONF_VERSION(m4_defn([AC_AUTOCONF_VERSION]))])
-
-# AM_AUX_DIR_EXPAND -*- Autoconf -*-
-
-# Copyright (C) 2001, 2003, 2005 Free Software Foundation, Inc.
-#
-# This file is free software; the Free Software Foundation
-# gives unlimited permission to copy and/or distribute it,
-# with or without modifications, as long as this notice is preserved.
-
-# For projects using AC_CONFIG_AUX_DIR([foo]), Autoconf sets
-# $ac_aux_dir to `$srcdir/foo'. In other projects, it is set to
-# `$srcdir', `$srcdir/..', or `$srcdir/../..'.
-#
-# Of course, Automake must honor this variable whenever it calls a
-# tool from the auxiliary directory. The problem is that $srcdir (and
-# therefore $ac_aux_dir as well) can be either absolute or relative,
-# depending on how configure is run. This is pretty annoying, since
-# it makes $ac_aux_dir quite unusable in subdirectories: in the top
-# source directory, any form will work fine, but in subdirectories a
-# relative path needs to be adjusted first.
-#
-# $ac_aux_dir/missing
-# fails when called from a subdirectory if $ac_aux_dir is relative
-# $top_srcdir/$ac_aux_dir/missing
-# fails if $ac_aux_dir is absolute,
-# fails when called from a subdirectory in a VPATH build with
-# a relative $ac_aux_dir
-#
-# The reason of the latter failure is that $top_srcdir and $ac_aux_dir
-# are both prefixed by $srcdir. In an in-source build this is usually
-# harmless because $srcdir is `.', but things will broke when you
-# start a VPATH build or use an absolute $srcdir.
-#
-# So we could use something similar to $top_srcdir/$ac_aux_dir/missing,
-# iff we strip the leading $srcdir from $ac_aux_dir. That would be:
-# am_aux_dir='\$(top_srcdir)/'`expr "$ac_aux_dir" : "$srcdir//*\(.*\)"`
-# and then we would define $MISSING as
-# MISSING="\${SHELL} $am_aux_dir/missing"
-# This will work as long as MISSING is not called from configure, because
-# unfortunately $(top_srcdir) has no meaning in configure.
-# However there are other variables, like CC, which are often used in
-# configure, and could therefore not use this "fixed" $ac_aux_dir.
-#
-# Another solution, used here, is to always expand $ac_aux_dir to an
-# absolute PATH. The drawback is that using absolute paths prevent a
-# configured tree to be moved without reconfiguration.
-
-AC_DEFUN([AM_AUX_DIR_EXPAND],
-[dnl Rely on autoconf to set up CDPATH properly.
-AC_PREREQ([2.50])dnl
-# expand $ac_aux_dir to an absolute path
-am_aux_dir=`cd $ac_aux_dir && pwd`
-])
-
-# AM_CONDITIONAL -*- Autoconf -*-
-
-# Copyright (C) 1997, 2000, 2001, 2003, 2004, 2005, 2006, 2008
-# Free Software Foundation, Inc.
-#
-# This file is free software; the Free Software Foundation
-# gives unlimited permission to copy and/or distribute it,
-# with or without modifications, as long as this notice is preserved.
-
-# serial 9
-
-# AM_CONDITIONAL(NAME, SHELL-CONDITION)
-# -------------------------------------
-# Define a conditional.
-AC_DEFUN([AM_CONDITIONAL],
-[AC_PREREQ(2.52)dnl
- ifelse([$1], [TRUE], [AC_FATAL([$0: invalid condition: $1])],
- [$1], [FALSE], [AC_FATAL([$0: invalid condition: $1])])dnl
-AC_SUBST([$1_TRUE])dnl
-AC_SUBST([$1_FALSE])dnl
-_AM_SUBST_NOTMAKE([$1_TRUE])dnl
-_AM_SUBST_NOTMAKE([$1_FALSE])dnl
-m4_define([_AM_COND_VALUE_$1], [$2])dnl
-if $2; then
- $1_TRUE=
- $1_FALSE='#'
-else
- $1_TRUE='#'
- $1_FALSE=
-fi
-AC_CONFIG_COMMANDS_PRE(
-[if test -z "${$1_TRUE}" && test -z "${$1_FALSE}"; then
- AC_MSG_ERROR([[conditional "$1" was never defined.
-Usually this means the macro was only invoked conditionally.]])
-fi])])
-
-# Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2009
-# Free Software Foundation, Inc.
-#
-# This file is free software; the Free Software Foundation
-# gives unlimited permission to copy and/or distribute it,
-# with or without modifications, as long as this notice is preserved.
-
-# serial 10
-
-# There are a few dirty hacks below to avoid letting `AC_PROG_CC' be
-# written in clear, in which case automake, when reading aclocal.m4,
-# will think it sees a *use*, and therefore will trigger all it's
-# C support machinery. Also note that it means that autoscan, seeing
-# CC etc. in the Makefile, will ask for an AC_PROG_CC use...
-
-
-# _AM_DEPENDENCIES(NAME)
-# ----------------------
-# See how the compiler implements dependency checking.
-# NAME is "CC", "CXX", "GCJ", or "OBJC".
-# We try a few techniques and use that to set a single cache variable.
-#
-# We don't AC_REQUIRE the corresponding AC_PROG_CC since the latter was
-# modified to invoke _AM_DEPENDENCIES(CC); we would have a circular
-# dependency, and given that the user is not expected to run this macro,
-# just rely on AC_PROG_CC.
-AC_DEFUN([_AM_DEPENDENCIES],
-[AC_REQUIRE([AM_SET_DEPDIR])dnl
-AC_REQUIRE([AM_OUTPUT_DEPENDENCY_COMMANDS])dnl
-AC_REQUIRE([AM_MAKE_INCLUDE])dnl
-AC_REQUIRE([AM_DEP_TRACK])dnl
-
-ifelse([$1], CC, [depcc="$CC" am_compiler_list=],
- [$1], CXX, [depcc="$CXX" am_compiler_list=],
- [$1], OBJC, [depcc="$OBJC" am_compiler_list='gcc3 gcc'],
- [$1], UPC, [depcc="$UPC" am_compiler_list=],
- [$1], GCJ, [depcc="$GCJ" am_compiler_list='gcc3 gcc'],
- [depcc="$$1" am_compiler_list=])
-
-AC_CACHE_CHECK([dependency style of $depcc],
- [am_cv_$1_dependencies_compiler_type],
-[if test -z "$AMDEP_TRUE" && test -f "$am_depcomp"; then
- # We make a subdir and do the tests there. Otherwise we can end up
- # making bogus files that we don't know about and never remove. For
- # instance it was reported that on HP-UX the gcc test will end up
- # making a dummy file named `D' -- because `-MD' means `put the output
- # in D'.
- mkdir conftest.dir
- # Copy depcomp to subdir because otherwise we won't find it if we're
- # using a relative directory.
- cp "$am_depcomp" conftest.dir
- cd conftest.dir
- # We will build objects and dependencies in a subdirectory because
- # it helps to detect inapplicable dependency modes. For instance
- # both Tru64's cc and ICC support -MD to output dependencies as a
- # side effect of compilation, but ICC will put the dependencies in
- # the current directory while Tru64 will put them in the object
- # directory.
- mkdir sub
-
- am_cv_$1_dependencies_compiler_type=none
- if test "$am_compiler_list" = ""; then
- am_compiler_list=`sed -n ['s/^#*\([a-zA-Z0-9]*\))$/\1/p'] < ./depcomp`
- fi
- am__universal=false
- m4_case([$1], [CC],
- [case " $depcc " in #(
- *\ -arch\ *\ -arch\ *) am__universal=true ;;
- esac],
- [CXX],
- [case " $depcc " in #(
- *\ -arch\ *\ -arch\ *) am__universal=true ;;
- esac])
-
- for depmode in $am_compiler_list; do
- # Setup a source with many dependencies, because some compilers
- # like to wrap large dependency lists on column 80 (with \), and
- # we should not choose a depcomp mode which is confused by this.
- #
- # We need to recreate these files for each test, as the compiler may
- # overwrite some of them when testing with obscure command lines.
- # This happens at least with the AIX C compiler.
- : > sub/conftest.c
- for i in 1 2 3 4 5 6; do
- echo '#include "conftst'$i'.h"' >> sub/conftest.c
- # Using `: > sub/conftst$i.h' creates only sub/conftst1.h with
- # Solaris 8's {/usr,}/bin/sh.
- touch sub/conftst$i.h
- done
- echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf
-
- # We check with `-c' and `-o' for the sake of the "dashmstdout"
- # mode. It turns out that the SunPro C++ compiler does not properly
- # handle `-M -o', and we need to detect this. Also, some Intel
- # versions had trouble with output in subdirs
- am__obj=sub/conftest.${OBJEXT-o}
- am__minus_obj="-o $am__obj"
- case $depmode in
- gcc)
- # This depmode causes a compiler race in universal mode.
- test "$am__universal" = false || continue
- ;;
- nosideeffect)
- # after this tag, mechanisms are not by side-effect, so they'll
- # only be used when explicitly requested
- if test "x$enable_dependency_tracking" = xyes; then
- continue
- else
- break
- fi
- ;;
- msvisualcpp | msvcmsys)
- # This compiler won't grok `-c -o', but also, the minuso test has
- # not run yet. These depmodes are late enough in the game, and
- # so weak that their functioning should not be impacted.
- am__obj=conftest.${OBJEXT-o}
- am__minus_obj=
- ;;
- none) break ;;
- esac
- if depmode=$depmode \
- source=sub/conftest.c object=$am__obj \
- depfile=sub/conftest.Po tmpdepfile=sub/conftest.TPo \
- $SHELL ./depcomp $depcc -c $am__minus_obj sub/conftest.c \
- >/dev/null 2>conftest.err &&
- grep sub/conftst1.h sub/conftest.Po > /dev/null 2>&1 &&
- grep sub/conftst6.h sub/conftest.Po > /dev/null 2>&1 &&
- grep $am__obj sub/conftest.Po > /dev/null 2>&1 &&
- ${MAKE-make} -s -f confmf > /dev/null 2>&1; then
- # icc doesn't choke on unknown options, it will just issue warnings
- # or remarks (even with -Werror). So we grep stderr for any message
- # that says an option was ignored or not supported.
- # When given -MP, icc 7.0 and 7.1 complain thusly:
- # icc: Command line warning: ignoring option '-M'; no argument required
- # The diagnosis changed in icc 8.0:
- # icc: Command line remark: option '-MP' not supported
- if (grep 'ignoring option' conftest.err ||
- grep 'not supported' conftest.err) >/dev/null 2>&1; then :; else
- am_cv_$1_dependencies_compiler_type=$depmode
- break
- fi
- fi
- done
-
- cd ..
- rm -rf conftest.dir
-else
- am_cv_$1_dependencies_compiler_type=none
-fi
-])
-AC_SUBST([$1DEPMODE], [depmode=$am_cv_$1_dependencies_compiler_type])
-AM_CONDITIONAL([am__fastdep$1], [
- test "x$enable_dependency_tracking" != xno \
- && test "$am_cv_$1_dependencies_compiler_type" = gcc3])
-])
-
-
-# AM_SET_DEPDIR
-# -------------
-# Choose a directory name for dependency files.
-# This macro is AC_REQUIREd in _AM_DEPENDENCIES
-AC_DEFUN([AM_SET_DEPDIR],
-[AC_REQUIRE([AM_SET_LEADING_DOT])dnl
-AC_SUBST([DEPDIR], ["${am__leading_dot}deps"])dnl
-])
-
-
-# AM_DEP_TRACK
-# ------------
-AC_DEFUN([AM_DEP_TRACK],
-[AC_ARG_ENABLE(dependency-tracking,
-[ --disable-dependency-tracking speeds up one-time build
- --enable-dependency-tracking do not reject slow dependency extractors])
-if test "x$enable_dependency_tracking" != xno; then
- am_depcomp="$ac_aux_dir/depcomp"
- AMDEPBACKSLASH='\'
-fi
-AM_CONDITIONAL([AMDEP], [test "x$enable_dependency_tracking" != xno])
-AC_SUBST([AMDEPBACKSLASH])dnl
-_AM_SUBST_NOTMAKE([AMDEPBACKSLASH])dnl
-])
-
-# Generate code to set up dependency tracking. -*- Autoconf -*-
-
-# Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2008
-# Free Software Foundation, Inc.
-#
-# This file is free software; the Free Software Foundation
-# gives unlimited permission to copy and/or distribute it,
-# with or without modifications, as long as this notice is preserved.
-
-#serial 5
-
-# _AM_OUTPUT_DEPENDENCY_COMMANDS
-# ------------------------------
-AC_DEFUN([_AM_OUTPUT_DEPENDENCY_COMMANDS],
-[{
- # Autoconf 2.62 quotes --file arguments for eval, but not when files
- # are listed without --file. Let's play safe and only enable the eval
- # if we detect the quoting.
- case $CONFIG_FILES in
- *\'*) eval set x "$CONFIG_FILES" ;;
- *) set x $CONFIG_FILES ;;
- esac
- shift
- for mf
- do
- # Strip MF so we end up with the name of the file.
- mf=`echo "$mf" | sed -e 's/:.*$//'`
- # Check whether this is an Automake generated Makefile or not.
- # We used to match only the files named `Makefile.in', but
- # some people rename them; so instead we look at the file content.
- # Grep'ing the first line is not enough: some people post-process
- # each Makefile.in and add a new line on top of each file to say so.
- # Grep'ing the whole file is not good either: AIX grep has a line
- # limit of 2048, but all sed's we know have understand at least 4000.
- if sed -n 's,^#.*generated by automake.*,X,p' "$mf" | grep X >/dev/null 2>&1; then
- dirpart=`AS_DIRNAME("$mf")`
- else
- continue
- fi
- # Extract the definition of DEPDIR, am__include, and am__quote
- # from the Makefile without running `make'.
- DEPDIR=`sed -n 's/^DEPDIR = //p' < "$mf"`
- test -z "$DEPDIR" && continue
- am__include=`sed -n 's/^am__include = //p' < "$mf"`
- test -z "am__include" && continue
- am__quote=`sed -n 's/^am__quote = //p' < "$mf"`
- # When using ansi2knr, U may be empty or an underscore; expand it
- U=`sed -n 's/^U = //p' < "$mf"`
- # Find all dependency output files, they are included files with
- # $(DEPDIR) in their names. We invoke sed twice because it is the
- # simplest approach to changing $(DEPDIR) to its actual value in the
- # expansion.
- for file in `sed -n "
- s/^$am__include $am__quote\(.*(DEPDIR).*\)$am__quote"'$/\1/p' <"$mf" | \
- sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g' -e 's/\$U/'"$U"'/g'`; do
- # Make sure the directory exists.
- test -f "$dirpart/$file" && continue
- fdir=`AS_DIRNAME(["$file"])`
- AS_MKDIR_P([$dirpart/$fdir])
- # echo "creating $dirpart/$file"
- echo '# dummy' > "$dirpart/$file"
- done
- done
-}
-])# _AM_OUTPUT_DEPENDENCY_COMMANDS
-
-
-# AM_OUTPUT_DEPENDENCY_COMMANDS
-# -----------------------------
-# This macro should only be invoked once -- use via AC_REQUIRE.
-#
-# This code is only required when automatic dependency tracking
-# is enabled. FIXME. This creates each `.P' file that we will
-# need in order to bootstrap the dependency handling code.
-AC_DEFUN([AM_OUTPUT_DEPENDENCY_COMMANDS],
-[AC_CONFIG_COMMANDS([depfiles],
- [test x"$AMDEP_TRUE" != x"" || _AM_OUTPUT_DEPENDENCY_COMMANDS],
- [AMDEP_TRUE="$AMDEP_TRUE" ac_aux_dir="$ac_aux_dir"])
-])
-
-# Do all the work for Automake. -*- Autoconf -*-
-
-# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004,
-# 2005, 2006, 2008, 2009 Free Software Foundation, Inc.
-#
-# This file is free software; the Free Software Foundation
-# gives unlimited permission to copy and/or distribute it,
-# with or without modifications, as long as this notice is preserved.
-
-# serial 16
-
-# This macro actually does too much. Some checks are only needed if
-# your package does certain things. But this isn't really a big deal.
-
-# AM_INIT_AUTOMAKE(PACKAGE, VERSION, [NO-DEFINE])
-# AM_INIT_AUTOMAKE([OPTIONS])
-# -----------------------------------------------
-# The call with PACKAGE and VERSION arguments is the old style
-# call (pre autoconf-2.50), which is being phased out. PACKAGE
-# and VERSION should now be passed to AC_INIT and removed from
-# the call to AM_INIT_AUTOMAKE.
-# We support both call styles for the transition. After
-# the next Automake release, Autoconf can make the AC_INIT
-# arguments mandatory, and then we can depend on a new Autoconf
-# release and drop the old call support.
-AC_DEFUN([AM_INIT_AUTOMAKE],
-[AC_PREREQ([2.62])dnl
-dnl Autoconf wants to disallow AM_ names. We explicitly allow
-dnl the ones we care about.
-m4_pattern_allow([^AM_[A-Z]+FLAGS$])dnl
-AC_REQUIRE([AM_SET_CURRENT_AUTOMAKE_VERSION])dnl
-AC_REQUIRE([AC_PROG_INSTALL])dnl
-if test "`cd $srcdir && pwd`" != "`pwd`"; then
- # Use -I$(srcdir) only when $(srcdir) != ., so that make's output
- # is not polluted with repeated "-I."
- AC_SUBST([am__isrc], [' -I$(srcdir)'])_AM_SUBST_NOTMAKE([am__isrc])dnl
- # test to see if srcdir already configured
- if test -f $srcdir/config.status; then
- AC_MSG_ERROR([source directory already configured; run "make distclean" there first])
- fi
-fi
-
-# test whether we have cygpath
-if test -z "$CYGPATH_W"; then
- if (cygpath --version) >/dev/null 2>/dev/null; then
- CYGPATH_W='cygpath -w'
- else
- CYGPATH_W=echo
- fi
-fi
-AC_SUBST([CYGPATH_W])
-
-# Define the identity of the package.
-dnl Distinguish between old-style and new-style calls.
-m4_ifval([$2],
-[m4_ifval([$3], [_AM_SET_OPTION([no-define])])dnl
- AC_SUBST([PACKAGE], [$1])dnl
- AC_SUBST([VERSION], [$2])],
-[_AM_SET_OPTIONS([$1])dnl
-dnl Diagnose old-style AC_INIT with new-style AM_AUTOMAKE_INIT.
-m4_if(m4_ifdef([AC_PACKAGE_NAME], 1)m4_ifdef([AC_PACKAGE_VERSION], 1), 11,,
- [m4_fatal([AC_INIT should be called with package and version arguments])])dnl
- AC_SUBST([PACKAGE], ['AC_PACKAGE_TARNAME'])dnl
- AC_SUBST([VERSION], ['AC_PACKAGE_VERSION'])])dnl
-
-_AM_IF_OPTION([no-define],,
-[AC_DEFINE_UNQUOTED(PACKAGE, "$PACKAGE", [Name of package])
- AC_DEFINE_UNQUOTED(VERSION, "$VERSION", [Version number of package])])dnl
-
-# Some tools Automake needs.
-AC_REQUIRE([AM_SANITY_CHECK])dnl
-AC_REQUIRE([AC_ARG_PROGRAM])dnl
-AM_MISSING_PROG(ACLOCAL, aclocal-${am__api_version})
-AM_MISSING_PROG(AUTOCONF, autoconf)
-AM_MISSING_PROG(AUTOMAKE, automake-${am__api_version})
-AM_MISSING_PROG(AUTOHEADER, autoheader)
-AM_MISSING_PROG(MAKEINFO, makeinfo)
-AC_REQUIRE([AM_PROG_INSTALL_SH])dnl
-AC_REQUIRE([AM_PROG_INSTALL_STRIP])dnl
-AC_REQUIRE([AM_PROG_MKDIR_P])dnl
-# We need awk for the "check" target. The system "awk" is bad on
-# some platforms.
-AC_REQUIRE([AC_PROG_AWK])dnl
-AC_REQUIRE([AC_PROG_MAKE_SET])dnl
-AC_REQUIRE([AM_SET_LEADING_DOT])dnl
-_AM_IF_OPTION([tar-ustar], [_AM_PROG_TAR([ustar])],
- [_AM_IF_OPTION([tar-pax], [_AM_PROG_TAR([pax])],
- [_AM_PROG_TAR([v7])])])
-_AM_IF_OPTION([no-dependencies],,
-[AC_PROVIDE_IFELSE([AC_PROG_CC],
- [_AM_DEPENDENCIES(CC)],
- [define([AC_PROG_CC],
- defn([AC_PROG_CC])[_AM_DEPENDENCIES(CC)])])dnl
-AC_PROVIDE_IFELSE([AC_PROG_CXX],
- [_AM_DEPENDENCIES(CXX)],
- [define([AC_PROG_CXX],
- defn([AC_PROG_CXX])[_AM_DEPENDENCIES(CXX)])])dnl
-AC_PROVIDE_IFELSE([AC_PROG_OBJC],
- [_AM_DEPENDENCIES(OBJC)],
- [define([AC_PROG_OBJC],
- defn([AC_PROG_OBJC])[_AM_DEPENDENCIES(OBJC)])])dnl
-])
-_AM_IF_OPTION([silent-rules], [AC_REQUIRE([AM_SILENT_RULES])])dnl
-dnl The `parallel-tests' driver may need to know about EXEEXT, so add the
-dnl `am__EXEEXT' conditional if _AM_COMPILER_EXEEXT was seen. This macro
-dnl is hooked onto _AC_COMPILER_EXEEXT early, see below.
-AC_CONFIG_COMMANDS_PRE(dnl
-[m4_provide_if([_AM_COMPILER_EXEEXT],
- [AM_CONDITIONAL([am__EXEEXT], [test -n "$EXEEXT"])])])dnl
-])
-
-dnl Hook into `_AC_COMPILER_EXEEXT' early to learn its expansion. Do not
-dnl add the conditional right here, as _AC_COMPILER_EXEEXT may be further
-dnl mangled by Autoconf and run in a shell conditional statement.
-m4_define([_AC_COMPILER_EXEEXT],
-m4_defn([_AC_COMPILER_EXEEXT])[m4_provide([_AM_COMPILER_EXEEXT])])
-
-
-# When config.status generates a header, we must update the stamp-h file.
-# This file resides in the same directory as the config header
-# that is generated. The stamp files are numbered to have different names.
-
-# Autoconf calls _AC_AM_CONFIG_HEADER_HOOK (when defined) in the
-# loop where config.status creates the headers, so we can generate
-# our stamp files there.
-AC_DEFUN([_AC_AM_CONFIG_HEADER_HOOK],
-[# Compute $1's index in $config_headers.
-_am_arg=$1
-_am_stamp_count=1
-for _am_header in $config_headers :; do
- case $_am_header in
- $_am_arg | $_am_arg:* )
- break ;;
- * )
- _am_stamp_count=`expr $_am_stamp_count + 1` ;;
- esac
-done
-echo "timestamp for $_am_arg" >`AS_DIRNAME(["$_am_arg"])`/stamp-h[]$_am_stamp_count])
-
-# Copyright (C) 2001, 2003, 2005, 2008 Free Software Foundation, Inc.
-#
-# This file is free software; the Free Software Foundation
-# gives unlimited permission to copy and/or distribute it,
-# with or without modifications, as long as this notice is preserved.
-
-# AM_PROG_INSTALL_SH
-# ------------------
-# Define $install_sh.
-AC_DEFUN([AM_PROG_INSTALL_SH],
-[AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl
-if test x"${install_sh}" != xset; then
- case $am_aux_dir in
- *\ * | *\ *)
- install_sh="\${SHELL} '$am_aux_dir/install-sh'" ;;
- *)
- install_sh="\${SHELL} $am_aux_dir/install-sh"
- esac
-fi
-AC_SUBST(install_sh)])
-
-# Copyright (C) 2003, 2005 Free Software Foundation, Inc.
-#
-# This file is free software; the Free Software Foundation
-# gives unlimited permission to copy and/or distribute it,
-# with or without modifications, as long as this notice is preserved.
-
-# serial 2
-
-# Check whether the underlying file-system supports filenames
-# with a leading dot. For instance MS-DOS doesn't.
-AC_DEFUN([AM_SET_LEADING_DOT],
-[rm -rf .tst 2>/dev/null
-mkdir .tst 2>/dev/null
-if test -d .tst; then
- am__leading_dot=.
-else
- am__leading_dot=_
-fi
-rmdir .tst 2>/dev/null
-AC_SUBST([am__leading_dot])])
-
-# Add --enable-maintainer-mode option to configure. -*- Autoconf -*-
-# From Jim Meyering
-
-# Copyright (C) 1996, 1998, 2000, 2001, 2002, 2003, 2004, 2005, 2008
-# Free Software Foundation, Inc.
-#
-# This file is free software; the Free Software Foundation
-# gives unlimited permission to copy and/or distribute it,
-# with or without modifications, as long as this notice is preserved.
-
-# serial 5
-
-# AM_MAINTAINER_MODE([DEFAULT-MODE])
-# ----------------------------------
-# Control maintainer-specific portions of Makefiles.
-# Default is to disable them, unless `enable' is passed literally.
-# For symmetry, `disable' may be passed as well. Anyway, the user
-# can override the default with the --enable/--disable switch.
-AC_DEFUN([AM_MAINTAINER_MODE],
-[m4_case(m4_default([$1], [disable]),
- [enable], [m4_define([am_maintainer_other], [disable])],
- [disable], [m4_define([am_maintainer_other], [enable])],
- [m4_define([am_maintainer_other], [enable])
- m4_warn([syntax], [unexpected argument to AM@&t@_MAINTAINER_MODE: $1])])
-AC_MSG_CHECKING([whether to am_maintainer_other maintainer-specific portions of Makefiles])
- dnl maintainer-mode's default is 'disable' unless 'enable' is passed
- AC_ARG_ENABLE([maintainer-mode],
-[ --][am_maintainer_other][-maintainer-mode am_maintainer_other make rules and dependencies not useful
- (and sometimes confusing) to the casual installer],
- [USE_MAINTAINER_MODE=$enableval],
- [USE_MAINTAINER_MODE=]m4_if(am_maintainer_other, [enable], [no], [yes]))
- AC_MSG_RESULT([$USE_MAINTAINER_MODE])
- AM_CONDITIONAL([MAINTAINER_MODE], [test $USE_MAINTAINER_MODE = yes])
- MAINT=$MAINTAINER_MODE_TRUE
- AC_SUBST([MAINT])dnl
-]
-)
-
-AU_DEFUN([jm_MAINTAINER_MODE], [AM_MAINTAINER_MODE])
-
-# Check to see how 'make' treats includes. -*- Autoconf -*-
-
-# Copyright (C) 2001, 2002, 2003, 2005, 2009 Free Software Foundation, Inc.
-#
-# This file is free software; the Free Software Foundation
-# gives unlimited permission to copy and/or distribute it,
-# with or without modifications, as long as this notice is preserved.
-
-# serial 4
-
-# AM_MAKE_INCLUDE()
-# -----------------
-# Check to see how make treats includes.
-AC_DEFUN([AM_MAKE_INCLUDE],
-[am_make=${MAKE-make}
-cat > confinc << 'END'
-am__doit:
- @echo this is the am__doit target
-.PHONY: am__doit
-END
-# If we don't find an include directive, just comment out the code.
-AC_MSG_CHECKING([for style of include used by $am_make])
-am__include="#"
-am__quote=
-_am_result=none
-# First try GNU make style include.
-echo "include confinc" > confmf
-# Ignore all kinds of additional output from `make'.
-case `$am_make -s -f confmf 2> /dev/null` in #(
-*the\ am__doit\ target*)
- am__include=include
- am__quote=
- _am_result=GNU
- ;;
-esac
-# Now try BSD make style include.
-if test "$am__include" = "#"; then
- echo '.include "confinc"' > confmf
- case `$am_make -s -f confmf 2> /dev/null` in #(
- *the\ am__doit\ target*)
- am__include=.include
- am__quote="\""
- _am_result=BSD
- ;;
- esac
-fi
-AC_SUBST([am__include])
-AC_SUBST([am__quote])
-AC_MSG_RESULT([$_am_result])
-rm -f confinc confmf
-])
-
-# Fake the existence of programs that GNU maintainers use. -*- Autoconf -*-
-
-# Copyright (C) 1997, 1999, 2000, 2001, 2003, 2004, 2005, 2008
-# Free Software Foundation, Inc.
-#
-# This file is free software; the Free Software Foundation
-# gives unlimited permission to copy and/or distribute it,
-# with or without modifications, as long as this notice is preserved.
-
-# serial 6
-
-# AM_MISSING_PROG(NAME, PROGRAM)
-# ------------------------------
-AC_DEFUN([AM_MISSING_PROG],
-[AC_REQUIRE([AM_MISSING_HAS_RUN])
-$1=${$1-"${am_missing_run}$2"}
-AC_SUBST($1)])
-
-
-# AM_MISSING_HAS_RUN
-# ------------------
-# Define MISSING if not defined so far and test if it supports --run.
-# If it does, set am_missing_run to use it, otherwise, to nothing.
-AC_DEFUN([AM_MISSING_HAS_RUN],
-[AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl
-AC_REQUIRE_AUX_FILE([missing])dnl
-if test x"${MISSING+set}" != xset; then
- case $am_aux_dir in
- *\ * | *\ *)
- MISSING="\${SHELL} \"$am_aux_dir/missing\"" ;;
- *)
- MISSING="\${SHELL} $am_aux_dir/missing" ;;
- esac
-fi
-# Use eval to expand $SHELL
-if eval "$MISSING --run true"; then
- am_missing_run="$MISSING --run "
-else
- am_missing_run=
- AC_MSG_WARN([`missing' script is too old or missing])
-fi
-])
-
-# Copyright (C) 2003, 2004, 2005, 2006 Free Software Foundation, Inc.
-#
-# This file is free software; the Free Software Foundation
-# gives unlimited permission to copy and/or distribute it,
-# with or without modifications, as long as this notice is preserved.
-
-# AM_PROG_MKDIR_P
-# ---------------
-# Check for `mkdir -p'.
-AC_DEFUN([AM_PROG_MKDIR_P],
-[AC_PREREQ([2.60])dnl
-AC_REQUIRE([AC_PROG_MKDIR_P])dnl
-dnl Automake 1.8 to 1.9.6 used to define mkdir_p. We now use MKDIR_P,
-dnl while keeping a definition of mkdir_p for backward compatibility.
-dnl @MKDIR_P@ is magic: AC_OUTPUT adjusts its value for each Makefile.
-dnl However we cannot define mkdir_p as $(MKDIR_P) for the sake of
-dnl Makefile.ins that do not define MKDIR_P, so we do our own
-dnl adjustment using top_builddir (which is defined more often than
-dnl MKDIR_P).
-AC_SUBST([mkdir_p], ["$MKDIR_P"])dnl
-case $mkdir_p in
- [[\\/$]]* | ?:[[\\/]]*) ;;
- */*) mkdir_p="\$(top_builddir)/$mkdir_p" ;;
-esac
-])
-
-# Helper functions for option handling. -*- Autoconf -*-
-
-# Copyright (C) 2001, 2002, 2003, 2005, 2008 Free Software Foundation, Inc.
-#
-# This file is free software; the Free Software Foundation
-# gives unlimited permission to copy and/or distribute it,
-# with or without modifications, as long as this notice is preserved.
-
-# serial 4
-
-# _AM_MANGLE_OPTION(NAME)
-# -----------------------
-AC_DEFUN([_AM_MANGLE_OPTION],
-[[_AM_OPTION_]m4_bpatsubst($1, [[^a-zA-Z0-9_]], [_])])
-
-# _AM_SET_OPTION(NAME)
-# ------------------------------
-# Set option NAME. Presently that only means defining a flag for this option.
-AC_DEFUN([_AM_SET_OPTION],
-[m4_define(_AM_MANGLE_OPTION([$1]), 1)])
-
-# _AM_SET_OPTIONS(OPTIONS)
-# ----------------------------------
-# OPTIONS is a space-separated list of Automake options.
-AC_DEFUN([_AM_SET_OPTIONS],
-[m4_foreach_w([_AM_Option], [$1], [_AM_SET_OPTION(_AM_Option)])])
-
-# _AM_IF_OPTION(OPTION, IF-SET, [IF-NOT-SET])
-# -------------------------------------------
-# Execute IF-SET if OPTION is set, IF-NOT-SET otherwise.
-AC_DEFUN([_AM_IF_OPTION],
-[m4_ifset(_AM_MANGLE_OPTION([$1]), [$2], [$3])])
-
-# Check to make sure that the build environment is sane. -*- Autoconf -*-
-
-# Copyright (C) 1996, 1997, 2000, 2001, 2003, 2005, 2008
-# Free Software Foundation, Inc.
-#
-# This file is free software; the Free Software Foundation
-# gives unlimited permission to copy and/or distribute it,
-# with or without modifications, as long as this notice is preserved.
-
-# serial 5
-
-# AM_SANITY_CHECK
-# ---------------
-AC_DEFUN([AM_SANITY_CHECK],
-[AC_MSG_CHECKING([whether build environment is sane])
-# Just in case
-sleep 1
-echo timestamp > conftest.file
-# Reject unsafe characters in $srcdir or the absolute working directory
-# name. Accept space and tab only in the latter.
-am_lf='
-'
-case `pwd` in
- *[[\\\"\#\$\&\'\`$am_lf]]*)
- AC_MSG_ERROR([unsafe absolute working directory name]);;
-esac
-case $srcdir in
- *[[\\\"\#\$\&\'\`$am_lf\ \ ]]*)
- AC_MSG_ERROR([unsafe srcdir value: `$srcdir']);;
-esac
-
-# Do `set' in a subshell so we don't clobber the current shell's
-# arguments. Must try -L first in case configure is actually a
-# symlink; some systems play weird games with the mod time of symlinks
-# (eg FreeBSD returns the mod time of the symlink's containing
-# directory).
-if (
- set X `ls -Lt "$srcdir/configure" conftest.file 2> /dev/null`
- if test "$[*]" = "X"; then
- # -L didn't work.
- set X `ls -t "$srcdir/configure" conftest.file`
- fi
- rm -f conftest.file
- if test "$[*]" != "X $srcdir/configure conftest.file" \
- && test "$[*]" != "X conftest.file $srcdir/configure"; then
-
- # If neither matched, then we have a broken ls. This can happen
- # if, for instance, CONFIG_SHELL is bash and it inherits a
- # broken ls alias from the environment. This has actually
- # happened. Such a system could not be considered "sane".
- AC_MSG_ERROR([ls -t appears to fail. Make sure there is not a broken
-alias in your environment])
- fi
-
- test "$[2]" = conftest.file
- )
-then
- # Ok.
- :
-else
- AC_MSG_ERROR([newly created file is older than distributed files!
-Check your system clock])
-fi
-AC_MSG_RESULT(yes)])
-
-# Copyright (C) 2001, 2003, 2005 Free Software Foundation, Inc.
-#
-# This file is free software; the Free Software Foundation
-# gives unlimited permission to copy and/or distribute it,
-# with or without modifications, as long as this notice is preserved.
-
-# AM_PROG_INSTALL_STRIP
-# ---------------------
-# One issue with vendor `install' (even GNU) is that you can't
-# specify the program used to strip binaries. This is especially
-# annoying in cross-compiling environments, where the build's strip
-# is unlikely to handle the host's binaries.
-# Fortunately install-sh will honor a STRIPPROG variable, so we
-# always use install-sh in `make install-strip', and initialize
-# STRIPPROG with the value of the STRIP variable (set by the user).
-AC_DEFUN([AM_PROG_INSTALL_STRIP],
-[AC_REQUIRE([AM_PROG_INSTALL_SH])dnl
-# Installed binaries are usually stripped using `strip' when the user
-# run `make install-strip'. However `strip' might not be the right
-# tool to use in cross-compilation environments, therefore Automake
-# will honor the `STRIP' environment variable to overrule this program.
-dnl Don't test for $cross_compiling = yes, because it might be `maybe'.
-if test "$cross_compiling" != no; then
- AC_CHECK_TOOL([STRIP], [strip], :)
-fi
-INSTALL_STRIP_PROGRAM="\$(install_sh) -c -s"
-AC_SUBST([INSTALL_STRIP_PROGRAM])])
-
-# Copyright (C) 2006, 2008 Free Software Foundation, Inc.
-#
-# This file is free software; the Free Software Foundation
-# gives unlimited permission to copy and/or distribute it,
-# with or without modifications, as long as this notice is preserved.
-
-# serial 2
-
-# _AM_SUBST_NOTMAKE(VARIABLE)
-# ---------------------------
-# Prevent Automake from outputting VARIABLE = @VARIABLE@ in Makefile.in.
-# This macro is traced by Automake.
-AC_DEFUN([_AM_SUBST_NOTMAKE])
-
-# AM_SUBST_NOTMAKE(VARIABLE)
-# ---------------------------
-# Public sister of _AM_SUBST_NOTMAKE.
-AC_DEFUN([AM_SUBST_NOTMAKE], [_AM_SUBST_NOTMAKE($@)])
-
-# Check how to create a tarball. -*- Autoconf -*-
-
-# Copyright (C) 2004, 2005 Free Software Foundation, Inc.
-#
-# This file is free software; the Free Software Foundation
-# gives unlimited permission to copy and/or distribute it,
-# with or without modifications, as long as this notice is preserved.
-
-# serial 2
-
-# _AM_PROG_TAR(FORMAT)
-# --------------------
-# Check how to create a tarball in format FORMAT.
-# FORMAT should be one of `v7', `ustar', or `pax'.
-#
-# Substitute a variable $(am__tar) that is a command
-# writing to stdout a FORMAT-tarball containing the directory
-# $tardir.
-# tardir=directory && $(am__tar) > result.tar
-#
-# Substitute a variable $(am__untar) that extract such
-# a tarball read from stdin.
-# $(am__untar) < result.tar
-AC_DEFUN([_AM_PROG_TAR],
-[# Always define AMTAR for backward compatibility.
-AM_MISSING_PROG([AMTAR], [tar])
-m4_if([$1], [v7],
- [am__tar='${AMTAR} chof - "$$tardir"'; am__untar='${AMTAR} xf -'],
- [m4_case([$1], [ustar],, [pax],,
- [m4_fatal([Unknown tar format])])
-AC_MSG_CHECKING([how to create a $1 tar archive])
-# Loop over all known methods to create a tar archive until one works.
-_am_tools='gnutar m4_if([$1], [ustar], [plaintar]) pax cpio none'
-_am_tools=${am_cv_prog_tar_$1-$_am_tools}
-# Do not fold the above two line into one, because Tru64 sh and
-# Solaris sh will not grok spaces in the rhs of `-'.
-for _am_tool in $_am_tools
-do
- case $_am_tool in
- gnutar)
- for _am_tar in tar gnutar...
[truncated message content] |
|
From: <lo...@us...> - 2012-06-03 16:40:31
|
Revision: 175
http://msn-proxy.svn.sourceforge.net/msn-proxy/?rev=175&view=rev
Author: loos-br
Date: 2012-06-03 16:40:25 +0000 (Sun, 03 Jun 2012)
Log Message:
-----------
remove the 'src' subdir.
Removed Paths:
-------------
trunk/src/
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <lo...@us...> - 2012-06-03 16:29:49
|
Revision: 174
http://msn-proxy.svn.sourceforge.net/msn-proxy/?rev=174&view=rev
Author: loos-br
Date: 2012-06-03 16:29:43 +0000 (Sun, 03 Jun 2012)
Log Message:
-----------
move src/db_modules to db-modules
Added Paths:
-----------
trunk/db-modules/
Removed Paths:
-------------
trunk/src/db_modules/
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <lo...@us...> - 2012-06-03 16:24:36
|
Revision: 173
http://msn-proxy.svn.sourceforge.net/msn-proxy/?rev=173&view=rev
Author: loos-br
Date: 2012-06-03 16:24:30 +0000 (Sun, 03 Jun 2012)
Log Message:
-----------
adding a missing header.
Modified Paths:
--------------
trunk/msn-proxy/event.c
Modified: trunk/msn-proxy/event.c
===================================================================
--- trunk/msn-proxy/event.c 2012-06-03 16:20:58 UTC (rev 172)
+++ trunk/msn-proxy/event.c 2012-06-03 16:24:30 UTC (rev 173)
@@ -16,6 +16,7 @@
static const char rcsid[] = "$Id: event.c 137 2009-09-01 11:23:43Z loos-br $";
+#include <time.h>
#include <string.h>
#include "event.h"
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <lo...@us...> - 2012-06-03 16:21:04
|
Revision: 172
http://msn-proxy.svn.sourceforge.net/msn-proxy/?rev=172&view=rev
Author: loos-br
Date: 2012-06-03 16:20:58 +0000 (Sun, 03 Jun 2012)
Log Message:
-----------
adding basic CMakeLists.txt files.
Added Paths:
-----------
trunk/CMakeLists.txt
trunk/msn-proxy/CMakeLists.txt
Added: trunk/CMakeLists.txt
===================================================================
--- trunk/CMakeLists.txt (rev 0)
+++ trunk/CMakeLists.txt 2012-06-03 16:20:58 UTC (rev 172)
@@ -0,0 +1,7 @@
+cmake_minimum_required (VERSION 2.6)
+project (msn-proxy)
+
+set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} "${CMAKE_SOURCE_DIR}/cmake")
+
+add_subdirectory (msn-proxy)
+
Added: trunk/msn-proxy/CMakeLists.txt
===================================================================
--- trunk/msn-proxy/CMakeLists.txt (rev 0)
+++ trunk/msn-proxy/CMakeLists.txt 2012-06-03 16:20:58 UTC (rev 172)
@@ -0,0 +1,42 @@
+
+find_package(DL)
+include_directories(${DL_INCLUDE_DIR})
+set(LIBS ${LIBS} ${DL_LIBS})
+
+find_package(LibEvent REQUIRED)
+include_directories(${LibEvent_INCLUDE_DIR})
+set(LIBS ${LIBS} ${LibEvent_LIBS})
+
+SET(CMAKE_C_FLAGS "-g -Wall -O2 -pipe -fno-builtin-log")
+
+SET(MSN-PROXY_SRCS
+base64.c
+check-cmd.c
+client.c
+command.c
+configure.c
+contacts.c
+ctl.c
+data.c
+db.c
+event.c
+fmt.c
+io.c
+msg.c
+msn-proxy.c
+msnp21.c
+net-io.c
+ns.c
+p2p.c
+protocol.c
+sb.c
+server.c
+sig.c
+string.c
+syslog.c
+user.c
+xml.c
+)
+
+add_executable (msn-proxy ${MSN-PROXY_SRCS})
+target_link_libraries (msn-proxy ${LIBS})
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <lo...@us...> - 2012-06-03 16:17:31
|
Revision: 171
http://msn-proxy.svn.sourceforge.net/msn-proxy/?rev=171&view=rev
Author: loos-br
Date: 2012-06-03 16:17:25 +0000 (Sun, 03 Jun 2012)
Log Message:
-----------
adding cmake modules.
Added Paths:
-----------
trunk/cmake/
trunk/cmake/FindDL.cmake
trunk/cmake/FindLibEvent.cmake
Added: trunk/cmake/FindDL.cmake
===================================================================
--- trunk/cmake/FindDL.cmake (rev 0)
+++ trunk/cmake/FindDL.cmake 2012-06-03 16:17:25 UTC (rev 171)
@@ -0,0 +1,18 @@
+# - find where dlopen and friends are located.
+# DL_FOUND - system has dynamic linking interface available
+# DL_INCLUDE_DIR - where dlfcn.h is located.
+# DL_LIBS - libraries needed to use dlopen
+
+include(CheckFunctionExists)
+
+find_path(DL_INCLUDE_DIR NAMES dlfcn.h)
+find_library(DL_LIBS NAMES dl)
+if(DL_LIBS)
+ set(DL_FOUND)
+ message(STATUS "Found libdl: ${DL_LIBS}")
+else(DL_LIBS)
+ check_function_exists(dlopen DL_FOUND)
+ # If dlopen can be found without linking in dl then dlopen is part
+ # of libc, so don't need to link extra libs.
+ set(DL_LIBS "")
+endif(DL_LIBS)
Added: trunk/cmake/FindLibEvent.cmake
===================================================================
--- trunk/cmake/FindLibEvent.cmake (rev 0)
+++ trunk/cmake/FindLibEvent.cmake 2012-06-03 16:17:25 UTC (rev 171)
@@ -0,0 +1,33 @@
+# - Find LibEvent (a cross platform RPC lib/tool)
+# This module defines
+# LibEvent_INCLUDE_DIR, where to find LibEvent headers
+# LibEvent_LIBS, LibEvent libraries
+# LibEvent_FOUND, If false, do not try to use ant
+
+find_path(LibEvent_INCLUDE_DIR event.h PATHS
+ /usr/local/include
+ /opt/local/include
+ )
+
+set(LibEvent_LIB_PATHS /usr/local/lib /opt/local/lib)
+find_library(LibEvent_LIB NAMES event PATHS ${LibEvent_LIB_PATHS})
+
+if (LibEvent_LIB AND LibEvent_INCLUDE_DIR)
+ set(LibEvent_FOUND TRUE)
+ set(LibEvent_LIBS ${LibEvent_LIB})
+else ()
+ set(LibEvent_FOUND FALSE)
+endif ()
+
+if (LibEvent_FOUND)
+ if (NOT LibEvent_FIND_QUIETLY)
+ message(STATUS "Found libevent: ${LibEvent_LIBS}")
+ endif ()
+else ()
+ message(STATUS "libevent NOT found.")
+endif ()
+
+mark_as_advanced(
+ LibEvent_LIB
+ LibEvent_INCLUDE_DIR
+ )
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <lo...@us...> - 2012-06-03 16:11:53
|
Revision: 170
http://msn-proxy.svn.sourceforge.net/msn-proxy/?rev=170&view=rev
Author: loos-br
Date: 2012-06-03 16:11:44 +0000 (Sun, 03 Jun 2012)
Log Message:
-----------
move src/msn-proxy to msn-proxy.
update the MSNP21 support.
Modified Paths:
--------------
trunk/msn-proxy/contacts.c
trunk/msn-proxy/msnp18.h
trunk/msn-proxy/msnp21.h
Added Paths:
-----------
trunk/msn-proxy/
trunk/msn-proxy/msg.c
trunk/msn-proxy/msg.h
trunk/msn-proxy/msnp21.c
trunk/msn-proxy/protocol.c
Removed Paths:
-------------
trunk/msn-proxy/msg.c
trunk/msn-proxy/msg.h
trunk/msn-proxy/protocol.c
trunk/src/msn-proxy/
Modified: trunk/msn-proxy/contacts.c
===================================================================
--- trunk/src/msn-proxy/contacts.c 2012-05-16 12:21:22 UTC (rev 166)
+++ trunk/msn-proxy/contacts.c 2012-06-03 16:11:44 UTC (rev 170)
@@ -204,7 +204,7 @@
contact = RB_FIND(contacts, &user->contacts, &f);
str_free(&f.c);
- return contact;
+ return (contact);
}
int
@@ -225,7 +225,6 @@
if (xml_parse(&xml_tag_head, &cmd->payload) == RFAIL)
return(RFAIL);
-xml_printf(&xml_tag_head);
tag = SLIST_FIRST(&xml_tag_head);
if (tag->name.len == 0 || strcmp((char *)tag->name.s, "ml") != 0) {
xml_free(&xml_tag_head);
Deleted: trunk/msn-proxy/msg.c
===================================================================
--- trunk/src/msn-proxy/msg.c 2012-05-16 12:21:22 UTC (rev 166)
+++ trunk/msn-proxy/msg.c 2012-06-03 16:11:44 UTC (rev 170)
@@ -1,440 +0,0 @@
-/*
- * Copyright (c) 2004-2011, Luiz Otavio O Souza <lo...@gm...>
- *
- * Permission to use, copy, modify, and distribute this software for any
- * purpose with or without fee is hereby granted, provided that the above
- * copyright notice and this permission notice appear in all copies.
- *
- * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
- * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
- * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
- * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
- * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
- * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
- * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
- */
-
-static const char rcsid[] = "$Id: msg.c 137 2009-09-01 11:23:43Z loos-br $";
-
-#include <string.h>
-
-#include "db.h"
-#include "sb.h"
-#include "msg.h"
-#include "return.h"
-#include "contacts.h"
-#include "protocol.h"
-#include "msn-proxy.h"
-#include "array_cmd.h"
-
-/* if the contact is blocked not send the message */
-int
-msn_msg_decode_umm(struct user_ *user, command *cmd) {
- struct contact_ *contact;
- struct contact_ f;
- string *c;
-
- if ((c = get_arg(cmd, 1)) == NULL)
- return(ROK);
-
- memset(&f, 0, sizeof(f));
- if (str_copy(&f.c, c->s, c->len) == 0) die_nomem();
-
- contact = RB_FIND(contacts, &user->contacts, &f);
- contact_free(&f);
-
- if (contact && (contact->deny & CONTACT_DENY)) {
- log->debug("debug: user %s can not send messages to %s (blocked).\n", &user->email, &contact->c);
- return (RETURN);
- }
-
- return(ROK);
-}
-
-void
-msg_zero(msg_ *msg) {
- str_zero(&msg->body);
- msg->header_len = 0;
- msg->header_last = (header_ *)0;
- msg->header = (header_ *)0;
-}
-
-void
-msg_add_header(msg_ *msg, header_ *header) {
- msg->header_len++;
- if (msg->header_last)
- msg->header_last->next = header;
- else
- msg->header = header;
- msg->header_last = header;
-}
-
-int
-msg_header_find(msg_ *msg, const char *header, string *value) {
- header_ *tmp;
-
- for (tmp = msg->header; tmp; tmp = tmp->next) {
- if (tmp->header.len > 0 &&
- strcasecmp((char *)tmp->header.s, header) == 0) {
- if (str_copy(value, tmp->value.s, tmp->value.len) == 0)
- die_nomem();
- return(ROK);
- }
- }
- return(ROK);
-}
-
-int
-msn_msg_type(msg_ *msg) {
- string content_type;
- int type = UNKNOWN;
-
- str_zero(&content_type);
-
- if (msg_header_find(msg, "content-type", &content_type) == RFAIL)
- return(RFAIL);
-
- if (content_type.len == 0)
- return(ROK);
-
- if (strcasecmp((char *)content_type.s, "text/x-msmsgscontrol") == 0)
- type = TYPE_MSGSCONTROL;
- else if (strcasecmp((char *)content_type.s, "application/x-msnmsgrp2p") == 0)
- type = TYPE_P2P;
- else if (strcasecmp((char *)content_type.s, "text/plain; charset=UTF-8") == 0)
- type = TYPE_TEXTUTF8;
- else if (strcasecmp((char *)content_type.s, "text/x-clientcaps") == 0)
- type = TYPE_CLIENTCAPS;
- else if (strcasecmp((char *)content_type.s, "text/x-msnmsgr-datacast") == 0)
- type = TYPE_DATACAST;
- else if (strcasecmp((char *)content_type.s, "text/x-mms-animemoticon") == 0)
- type = TYPE_EMOTICON;
- else if (strcasecmp((char *)content_type.s, "text/x-mms-emoticon") == 0)
- type = TYPE_EMOTICON;
- else if (strcasecmp((char *)content_type.s, "text/x-msmsgsinvite; charset=UTF-8") == 0)
- type = TYPE_FILETRANSF;
- else if (strcasecmp((char *)content_type.s, "text/x-keepalive") == 0)
- type = TYPE_KEEPALIVE;
-
- str_free(&content_type);
- return(type);
-}
-
-void
-msg_free(msg_ *msg) {
- header_ *tmp;
-
- while (msg->header_len > 0) {
-
- /* save pointer */
- tmp = msg->header;
-
- /* skip root pointer */
- msg->header = msg->header->next;
-
- /* update last */
- if (msg->header == (header_ *)0)
- msg->header_last = msg->header;
-
- /* release memory */
- str_free(&tmp->header);
- str_free(&tmp->value);
- free(tmp);
-
- msg->header_len--;
- }
-}
-
-header_ *
-header_alloc(void) {
- header_ *header;
-
- header = (header_ *)malloc(sizeof(header_));
- if (!header)
- die_nomem();
-
- header->next = (header_ *)0;
- str_zero(&header->header);
- str_zero(&header->value);
- return(header);
-}
-
-int
-msn_msg_header_decode(msg_ *msg, string *payload) {
- header_ *header = (header_ *)0;
- int state;
-
- state = HEADER;
- msg->body.len = payload->len;
- msg->body.s = payload->s;
- while (msg->body.len > 0) {
-
- /* ignore '\r' */
- if (*msg->body.s == '\r') {
- msg->body.len -= 1;
- msg->body.s += 1;
- continue;
- }
-
- /* start of value */
- if (*msg->body.s == ':' && state == HEADER) {
- state = START_VALUE;
- msg->body.len -= 1;
- msg->body.s += 1;
- continue;
- }
-
- if (*msg->body.s == '\n' && state == HEADER) {
- msg->body.len--;
- msg->body.s++;
- state = BODY;
- break;
- }
-
- if (*msg->body.s == '\n' && state == VALUE) {
-
- /* check for header */
- if (header == (header_ *)0)
- return(RFAIL);
-
- /* save header */
- msg_add_header(msg, header);
- header = (header_ *)0;
- state = HEADER;
-
- msg->body.len -= 1;
- msg->body.s += 1;
- continue;
- }
-
- if (state == START_VALUE) {
- if (*msg->body.s == ' ' || *msg->body.s == '\t') {
- msg->body.len -= 1;
- msg->body.s += 1;
- continue;
- } else
- state = VALUE;
- }
-
- /* alloc new header */
- if (header == (header_ *)0)
- header = header_alloc();
-
- if (state == HEADER) {
- if (str_cat(&header->header, msg->body.s, 1) == 0)
- die_nomem();
- } else if (state == VALUE) {
- if (str_cat(&header->value, msg->body.s, 1) == 0)
- die_nomem();
- }
- msg->body.len -= 1;
- msg->body.s += 1;
- }
-
- if (state != BODY)
- return(RFAIL);
-
- return(ROK);
-}
-
-int
-msn_msg_decode(struct sb_ *sb, command *cmd, int type) {
- struct user_ *user = sb->user;
- msg_ msg;
-
- /* zero message info */
- msg_zero(&msg);
-
- if (msn_msg_header_decode(&msg, &cmd->payload) == RFAIL)
- goto error;
-
- /* check message type */
- switch (msn_msg_type(&msg)) {
-
- case TYPE_TEXTUTF8:
-
- if(cmd->ignore) {
- return(ROK);
- }
-
- if ((user->commands & CHAT)) {
- msg_free(&msg);
- return(ROK);
- }
-
- if (user->commands & SAVE_MSG) {
- msg_free(&msg);
- return(ROK);
- }
-
- /* XXX - check for the same session id on the proxy */
-// if (sb->ctl == YES) {
-// msg_free(&msg);
-// return(ROK);
-// }
-
- if ((user->commands & LOGWARNING) && sb->warned == NO) {
- msn_warning_msg_client(sb);
- msn_warning_msg_server(sb);
- sb->warned = YES;
- }
-
- switch (msg_decode_utf8(sb, cmd, &msg, type)) {
-
- case RFAIL:
- goto error;
-
- case RETURN:
- msg_free(&msg);
- return (RETURN);
- }
-
- msg_free(&msg);
- return(ROK);
-
- case TYPE_CLIENTCAPS:
-
- msg_free(&msg);
- return(ROK);
-
- case TYPE_P2P:
-
-// msg_read_p2p_header(sb, &msg);
- /*
- p2p = p2p_msg(sb, &msg);
- switch(p2p->type) {
- case INVITE_BUDY:
- case INVITE:
- case ACCEPT:
- case DECLINE:
- case ACK:
- */
- msg_free(&msg);
- if ((user->commands & P2P))
- return(RFAIL);
- return(ROK);
-
- case TYPE_MSGSCONTROL:
- msg_free(&msg);
- return(ROK);
-
- case TYPE_DATACAST:
- msg_free(&msg);
- if ((user->commands & DATACAST)) {
- log->debug("debug: user %s can not use datacasts.\n", &user->email);
- return(RFAIL);
- }
- return(ROK);
-
- case TYPE_EMOTICON:
- msg_free(&msg);
- if ((user->commands & EMOTICON)) {
- log->debug("debug: user %s can not use emoticons.\n", &user->email);
- return(RFAIL);
- }
- return(ROK);
-
- case TYPE_FILETRANSF:
- msg_free(&msg);
- if ((user->commands & FILETRANSF))
- return(RFAIL);
- return(ROK);
-
- case RFAIL:
- goto error;
-
- case UNKNOWN:
- log->debug("debug: unknown message type\n");
- /* fallthrough */
- default:
- msg_free(&msg);
- return(ROK);
- }
-
-error:
- msg_free(&msg);
- return(RFAIL);
-}
-
-int
-msg_decode_utf8(struct sb_ *sb, command *cmd, msg_ *msg, int type) {
- struct user_ *user = sb->user;
- string dn;
- string to;
- string tmp;
- string *dn_;
- string *email;
-
- str_zero(&tmp);
- str_zero(&dn);
- str_zero(&to);
-
- if (cmd->args_len < 1)
- return(ROK);
- if (msg->body.len == 0)
- return(ROK);
-
- if (msn_decode(&msg->body, &tmp) == -1)
- return(RFAIL);
-
- email = cmd->args[0];
- if (sb_get_msg_to(sb, email, &to, type) == -1) {
- str_free(&tmp);
- return(RETURN); /* return if contact denied */
- }
-
- switch (type) {
-
- case SERVER:
-
- dn_ = cmd->args[1];
- if (cmd->args_len < 2) {
- str_free(&to);
- return(RFAIL);
- }
-
- if (msn_decode(dn_, &dn) == -1) {
- str_free(&tmp);
- str_free(&to);
- return(RFAIL);
- }
-
- if (db.sql_log_msg(sb->id, email, &dn, &to, &tmp) == RFAIL) {
- str_free(&tmp);
- str_free(&dn);
- str_free(&to);
- return(RFAIL);
- }
- break;
-
- case CLIENT:
-
- if (db.sql_log_msg(sb->id, &user->email, &user->dn, &to, &tmp) == RFAIL) {
- str_free(&tmp);
- str_free(&to);
- return(RFAIL);
- }
- break;
- }
-
- str_free(&tmp);
- str_free(&dn);
- str_free(&to);
-
- return(ROK);
-}
-
-int
-msn_sb_server_msg(struct sb_ *sb, command *cmd) {
- return(msn_msg_decode(sb, cmd, SERVER));
-}
-
-int
-msn_sb_client_msg(struct sb_ *sb, command *cmd) {
- return(msn_msg_decode(sb, cmd, CLIENT));
-}
-
-int msn_ns_client_uum (struct user_ *user, command *cmd) {
- return(msn_msg_decode_umm(user, cmd));
-}
-
Copied: trunk/msn-proxy/msg.c (from rev 168, trunk/src/msn-proxy/msg.c)
===================================================================
--- trunk/msn-proxy/msg.c (rev 0)
+++ trunk/msn-proxy/msg.c 2012-06-03 16:11:44 UTC (rev 170)
@@ -0,0 +1,493 @@
+/*
+ * Copyright (c) 2004-2011, Luiz Otavio O Souza <lo...@gm...>
+ *
+ * Permission to use, copy, modify, and distribute this software for any
+ * purpose with or without fee is hereby granted, provided that the above
+ * copyright notice and this permission notice appear in all copies.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
+ * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
+ * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
+ * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
+ * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
+ * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
+ * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
+ */
+
+static const char rcsid[] = "$Id: msg.c 137 2009-09-01 11:23:43Z loos-br $";
+
+#include <string.h>
+
+#include "db.h"
+#include "sb.h"
+#include "msg.h"
+#include "data.h"
+#include "return.h"
+#include "contacts.h"
+#include "protocol.h"
+#include "msn-proxy.h"
+#include "array_cmd.h"
+
+/* if the contact is blocked not send the message */
+int
+msn_msg_decode_umm(struct user_ *user, command *cmd) {
+ struct contact_ *contact;
+ struct contact_ f;
+ string *c;
+
+ if ((c = get_arg(cmd, 1)) == NULL)
+ return(ROK);
+
+ memset(&f, 0, sizeof(f));
+ if (str_copy(&f.c, c->s, c->len) == 0) die_nomem();
+
+ contact = RB_FIND(contacts, &user->contacts, &f);
+ contact_free(&f);
+
+ if (contact && (contact->deny & CONTACT_DENY)) {
+ log->debug("debug: user %s can not send messages to %s (blocked).\n", &user->email, &contact->c);
+ return (RETURN);
+ }
+
+ return(ROK);
+}
+
+void
+msg_zero(msg_ *msg) {
+ str_zero(&msg->body);
+ msg->header_len = 0;
+ msg->header_last = (header_ *)0;
+ msg->header = (header_ *)0;
+}
+
+void
+msg_add_header(msg_ *msg, header_ *header) {
+ msg->header_len++;
+ if (msg->header_last)
+ msg->header_last->next = header;
+ else
+ msg->header = header;
+ msg->header_last = header;
+}
+
+int
+msg_header_find(msg_ *msg, const char *header, string *value) {
+ header_ *tmp;
+
+ for (tmp = msg->header; tmp; tmp = tmp->next) {
+ if (tmp->header.len > 0 &&
+ strcasecmp((char *)tmp->header.s, header) == 0) {
+ if (str_copy(value, tmp->value.s, tmp->value.len) == 0)
+ die_nomem();
+ return(ROK);
+ }
+ }
+ return(ROK);
+}
+
+int
+msn_msg_type(msg_ *msg) {
+ string content_type;
+ int type = UNKNOWN;
+
+ str_zero(&content_type);
+
+ if (msg_header_find(msg, "content-type", &content_type) == RFAIL)
+ return(RFAIL);
+
+ if (content_type.len == 0)
+ return(ROK);
+
+ if (strcasecmp((char *)content_type.s, "text/x-msmsgscontrol") == 0)
+ type = TYPE_MSGSCONTROL;
+ else if (strcasecmp((char *)content_type.s, "application/x-msnmsgrp2p") == 0)
+ type = TYPE_P2P;
+ else if (strcasecmp((char *)content_type.s, "text/plain; charset=UTF-8") == 0)
+ type = TYPE_TEXTUTF8;
+ else if (strcasecmp((char *)content_type.s, "text/x-clientcaps") == 0)
+ type = TYPE_CLIENTCAPS;
+ else if (strcasecmp((char *)content_type.s, "text/x-msnmsgr-datacast") == 0)
+ type = TYPE_DATACAST;
+ else if (strcasecmp((char *)content_type.s, "text/x-mms-animemoticon") == 0)
+ type = TYPE_EMOTICON;
+ else if (strcasecmp((char *)content_type.s, "text/x-mms-emoticon") == 0)
+ type = TYPE_EMOTICON;
+ else if (strcasecmp((char *)content_type.s, "text/x-msmsgsinvite; charset=UTF-8") == 0)
+ type = TYPE_FILETRANSF;
+ else if (strcasecmp((char *)content_type.s, "text/x-keepalive") == 0)
+ type = TYPE_KEEPALIVE;
+
+ str_free(&content_type);
+ return(type);
+}
+
+void
+msg_free(msg_ *msg) {
+ header_ *tmp;
+
+ while (msg->header_len > 0) {
+
+ /* save pointer */
+ tmp = msg->header;
+
+ /* skip root pointer */
+ msg->header = msg->header->next;
+
+ /* update last */
+ if (msg->header == (header_ *)0)
+ msg->header_last = msg->header;
+
+ /* release memory */
+ str_free(&tmp->header);
+ str_free(&tmp->value);
+ free(tmp);
+
+ msg->header_len--;
+ }
+}
+
+header_ *
+header_alloc(void) {
+ header_ *header;
+
+ header = (header_ *)malloc(sizeof(header_));
+ if (!header)
+ die_nomem();
+
+ header->next = (header_ *)0;
+ str_zero(&header->header);
+ str_zero(&header->value);
+ return(header);
+}
+
+int
+msn_msg_header_decode(msg_ *msg, string *payload) {
+ header_ *header = (header_ *)0;
+ int state;
+
+ state = HEADER;
+ msg->body.len = payload->len;
+ msg->body.s = payload->s;
+ while (msg->body.len > 0) {
+
+ /* ignore '\r' */
+ if (*msg->body.s == '\r') {
+ msg->body.len -= 1;
+ msg->body.s += 1;
+ continue;
+ }
+
+ /* start of value */
+ if (*msg->body.s == ':' && state == HEADER) {
+ state = START_VALUE;
+ msg->body.len -= 1;
+ msg->body.s += 1;
+ continue;
+ }
+
+ if (*msg->body.s == '\n' && state == HEADER) {
+ msg->body.len--;
+ msg->body.s++;
+ state = BODY;
+ break;
+ }
+
+ if (*msg->body.s == '\n' && state == VALUE) {
+
+ /* check for header */
+ if (header == (header_ *)0)
+ return(RFAIL);
+
+ /* save header */
+ msg_add_header(msg, header);
+ header = (header_ *)0;
+ state = HEADER;
+
+ msg->body.len -= 1;
+ msg->body.s += 1;
+ continue;
+ }
+
+ if (state == START_VALUE) {
+ if (*msg->body.s == ' ' || *msg->body.s == '\t') {
+ msg->body.len -= 1;
+ msg->body.s += 1;
+ continue;
+ } else
+ state = VALUE;
+ }
+
+ /* alloc new header */
+ if (header == (header_ *)0)
+ header = header_alloc();
+
+ if (state == HEADER) {
+ if (str_cat(&header->header, msg->body.s, 1) == 0)
+ die_nomem();
+ } else if (state == VALUE) {
+ if (str_cat(&header->value, msg->body.s, 1) == 0)
+ die_nomem();
+ }
+ msg->body.len -= 1;
+ msg->body.s += 1;
+ }
+
+ if (state != BODY)
+ return(RFAIL);
+
+ return(ROK);
+}
+
+int
+msn_msg_decode(struct sb_ *sb, command *cmd, int type) {
+ struct user_ *user = sb->user;
+ msg_ msg;
+
+ /* zero message info */
+ msg_zero(&msg);
+
+ if (msn_msg_header_decode(&msg, &cmd->payload) == RFAIL)
+ goto error;
+
+ /* check message type */
+ switch (msn_msg_type(&msg)) {
+
+ case TYPE_TEXTUTF8:
+
+ if(cmd->ignore) {
+ return(ROK);
+ }
+
+ if ((user->commands & CHAT)) {
+ msg_free(&msg);
+ return(ROK);
+ }
+
+ if (user->commands & SAVE_MSG) {
+ msg_free(&msg);
+ return(ROK);
+ }
+
+ /* XXX - check for the same session id on the proxy */
+// if (sb->ctl == YES) {
+// msg_free(&msg);
+// return(ROK);
+// }
+
+ if ((user->commands & LOGWARNING) && sb->warned == NO) {
+ msn_warning_msg_client(sb);
+ msn_warning_msg_server(sb);
+ sb->warned = YES;
+ }
+
+ switch (msg_decode_utf8(sb, cmd, &msg, type)) {
+
+ case RFAIL:
+ goto error;
+
+ case RETURN:
+ msg_free(&msg);
+ return (RETURN);
+ }
+
+ msg_free(&msg);
+ return(ROK);
+
+ case TYPE_CLIENTCAPS:
+
+ msg_free(&msg);
+ return(ROK);
+
+ case TYPE_P2P:
+
+// msg_read_p2p_header(sb, &msg);
+ /*
+ p2p = p2p_msg(sb, &msg);
+ switch(p2p->type) {
+ case INVITE_BUDY:
+ case INVITE:
+ case ACCEPT:
+ case DECLINE:
+ case ACK:
+ */
+ msg_free(&msg);
+ if ((user->commands & P2P))
+ return(RFAIL);
+ return(ROK);
+
+ case TYPE_MSGSCONTROL:
+ msg_free(&msg);
+ return(ROK);
+
+ case TYPE_DATACAST:
+ msg_free(&msg);
+ if ((user->commands & DATACAST)) {
+ log->debug("debug: user %s can not use datacasts.\n", &user->email);
+ return(RFAIL);
+ }
+ return(ROK);
+
+ case TYPE_EMOTICON:
+ msg_free(&msg);
+ if ((user->commands & EMOTICON)) {
+ log->debug("debug: user %s can not use emoticons.\n", &user->email);
+ return(RFAIL);
+ }
+ return(ROK);
+
+ case TYPE_FILETRANSF:
+ msg_free(&msg);
+ if ((user->commands & FILETRANSF))
+ return(RFAIL);
+ return(ROK);
+
+ case RFAIL:
+ goto error;
+
+ case UNKNOWN:
+ log->debug("debug: unknown message type\n");
+ /* fallthrough */
+ default:
+ msg_free(&msg);
+ return(ROK);
+ }
+
+error:
+ msg_free(&msg);
+ return(RFAIL);
+}
+
+int
+msg_decode_utf8(struct sb_ *sb, command *cmd, msg_ *msg, int type) {
+ struct user_ *user = sb->user;
+ string dn;
+ string to;
+ string tmp;
+ string *dn_;
+ string *email;
+
+ str_zero(&tmp);
+ str_zero(&dn);
+ str_zero(&to);
+
+ if (cmd->args_len < 1)
+ return(ROK);
+ if (msg->body.len == 0)
+ return(ROK);
+
+ if (msn_decode(&msg->body, &tmp) == -1)
+ return(RFAIL);
+
+ email = cmd->args[0];
+ if (sb_get_msg_to(sb, email, &to, type) == -1) {
+ str_free(&tmp);
+ return(RETURN); /* return if contact denied */
+ }
+
+ switch (type) {
+
+ case SERVER:
+
+ dn_ = cmd->args[1];
+ if (cmd->args_len < 2) {
+ str_free(&to);
+ return(RFAIL);
+ }
+
+ if (msn_decode(dn_, &dn) == -1) {
+ str_free(&tmp);
+ str_free(&to);
+ return(RFAIL);
+ }
+
+ if (db.sql_log_msg(sb->id, email, &dn, &to, &tmp) == RFAIL) {
+ str_free(&tmp);
+ str_free(&dn);
+ str_free(&to);
+ return(RFAIL);
+ }
+ break;
+
+ case CLIENT:
+
+ if (db.sql_log_msg(sb->id, &user->email, &user->dn, &to, &tmp) == RFAIL) {
+ str_free(&tmp);
+ str_free(&to);
+ return(RFAIL);
+ }
+ break;
+ }
+
+ str_free(&tmp);
+ str_free(&dn);
+ str_free(&to);
+
+ return(ROK);
+}
+
+int
+msn_sb_server_msg(struct sb_ *sb, command *cmd) {
+ return (msn_msg_decode(sb, cmd, SERVER));
+}
+
+int
+msn_sb_client_msg(struct sb_ *sb, command *cmd) {
+ return (msn_msg_decode(sb, cmd, CLIENT));
+}
+
+int
+msn_ns_client_uum(struct user_ *user, command *cmd) {
+ return (msn_msg_decode_umm(user, cmd));
+}
+
+int
+msn_msg(struct user_ *user, command *cmd) {
+ struct data_header h1;
+ struct data_value_ *nick;
+ struct data_value_ *ctype;
+ struct data_value_ *mimev;
+ string *tmp1;
+ string *tmp2;
+
+ if (cmd->args_len < 3 || cmd->payload.len == 0)
+ return (ROK);
+
+ tmp1 = cmd->args[0];
+ tmp2 = cmd->args[1];
+
+ if (tmp1 == NULL || tmp1->len == 0 || tmp2 == NULL || tmp2->len == 0 ||
+ strcmp((char *)tmp1->s, "Hotmail") != 0 ||
+ strcmp((char *)tmp2->s, "Hotmail") != 0) {
+ return (ROK);
+ }
+
+ data_header_init(&h1);
+ if (msn_header_decode(&cmd->payload, &h1) != ROK) {
+ data_header_debug(&h1);
+ data_header_free(&h1);
+ return (ROK);
+ }
+
+ nick = data_value_find(&h1.values_head, "Nickname");
+ ctype = data_value_find(&h1.values_head, "Content-Type");
+ mimev = data_value_find(&h1.values_head, "MIME-Version");
+ if (nick != NULL && nick->value.len > 0 &&
+ ctype != NULL && ctype->value.len > 0 &&
+ mimev != NULL && mimev->value.len > 0 &&
+ strncmp((char *)ctype->value.s, "text/x-msmsgsprofile; charset=UTF-8",
+ ctype->value.len) == 0 &&
+ strncmp((char *)mimev->value.s, "1.0", mimev->value.len) == 0) {
+
+ if (str_copy(&user->dn, nick->value.s, nick->value.len) == 0)
+ die_nomem();
+
+ /* update the sql database */
+ if (db.sql_update_user_dn(user) == RFAIL)
+ log->debug("%S: error: cannot update the user DN.\n", __func__);
+ }
+
+ data_header_free(&h1);
+
+ return (ROK);
+}
+
Deleted: trunk/msn-proxy/msg.h
===================================================================
--- trunk/src/msn-proxy/msg.h 2012-05-16 12:21:22 UTC (rev 166)
+++ trunk/msn-proxy/msg.h 2012-06-03 16:11:44 UTC (rev 170)
@@ -1,55 +0,0 @@
-/*
- * Copyright (c) 2004-2011, Luiz Otavio O Souza <lo...@gm...>
- *
- * Permission to use, copy, modify, and distribute this software for any
- * purpose with or without fee is hereby granted, provided that the above
- * copyright notice and this permission notice appear in all copies.
- *
- * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
- * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
- * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
- * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
- * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
- * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
- * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
- */
-
-/*
- * $Id: msg.h 137 2009-09-01 11:23:43Z loos-br $
- */
-
-#ifndef MSG_H
-#define MSG_H
-
-#include "sb.h"
-#include "command.h"
-
-typedef struct header__ {
- string header;
- string value;
- struct header__ *next;
-} header_;
-
-typedef struct {
-
- header_ *header;
- header_ *header_last;
- int header_len;
-
- string body;
-} msg_;
-
-void msg_zero(msg_ *msg);
-void msg_add_header(msg_ *msg, header_ *header);
-int msg_header_find(msg_ *msg, const char *header, string *value);
-int msn_msg_type(msg_ *msg);
-void msg_free(msg_ *msg);
-header_ *header_alloc(void);
-int msn_msg_header_decode(msg_ *msg, string *payload);
-int msn_msg_decode(struct sb_ *sb, command *cmd, int type);
-int msg_decode_utf8(struct sb_ *sb, command *cmd, msg_ *msg, int type);
-int msn_sb_server_msg(struct sb_ *sb, command *cmd);
-int msn_sb_client_msg(struct sb_ *sb, command *cmd);
-int msn_ns_client_uum (struct user_ *user, command *cmd);
-
-#endif
Copied: trunk/msn-proxy/msg.h (from rev 168, trunk/src/msn-proxy/msg.h)
===================================================================
--- trunk/msn-proxy/msg.h (rev 0)
+++ trunk/msn-proxy/msg.h 2012-06-03 16:11:44 UTC (rev 170)
@@ -0,0 +1,56 @@
+/*
+ * Copyright (c) 2004-2011, Luiz Otavio O Souza <lo...@gm...>
+ *
+ * Permission to use, copy, modify, and distribute this software for any
+ * purpose with or without fee is hereby granted, provided that the above
+ * copyright notice and this permission notice appear in all copies.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
+ * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
+ * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
+ * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
+ * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
+ * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
+ * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
+ */
+
+/*
+ * $Id: msg.h 137 2009-09-01 11:23:43Z loos-br $
+ */
+
+#ifndef MSG_H
+#define MSG_H
+
+#include "sb.h"
+#include "command.h"
+
+typedef struct header__ {
+ string header;
+ string value;
+ struct header__ *next;
+} header_;
+
+typedef struct {
+
+ header_ *header;
+ header_ *header_last;
+ int header_len;
+
+ string body;
+} msg_;
+
+void msg_zero(msg_ *msg);
+void msg_add_header(msg_ *msg, header_ *header);
+int msg_header_find(msg_ *msg, const char *header, string *value);
+int msn_msg_type(msg_ *msg);
+void msg_free(msg_ *msg);
+header_ *header_alloc(void);
+int msn_msg_header_decode(msg_ *msg, string *payload);
+int msn_msg_decode(struct sb_ *sb, command *cmd, int type);
+int msg_decode_utf8(struct sb_ *sb, command *cmd, msg_ *msg, int type);
+int msn_sb_server_msg(struct sb_ *sb, command *cmd);
+int msn_sb_client_msg(struct sb_ *sb, command *cmd);
+int msn_ns_client_uum(struct user_ *user, command *cmd);
+int msn_msg(struct user_ *, command *);
+
+#endif
Modified: trunk/msn-proxy/msnp18.h
===================================================================
--- trunk/src/msn-proxy/msnp18.h 2012-05-16 12:21:22 UTC (rev 166)
+++ trunk/msn-proxy/msnp18.h 2012-06-03 16:11:44 UTC (rev 170)
@@ -35,6 +35,7 @@
{ "ADL", msnp18_adl_sync },
{ "FLN", msn_contact_logoff },
{ "ILN", msnp13_contact_initial_state },
+ { "MSG", msn_msg },
{ "NLN", msn_contact_change },
{ "PRP", msnp12_update_dn },
{ "RNG", rng_sb_proxy },
Added: trunk/msn-proxy/msnp21.c
===================================================================
--- trunk/msn-proxy/msnp21.c (rev 0)
+++ trunk/msn-proxy/msnp21.c 2012-06-03 16:11:44 UTC (rev 170)
@@ -0,0 +1,711 @@
+/*
+ * Copyright (c) 2012, Luiz Otavio O Souza <lo...@gm...>
+ *
+ * Permission to use, copy, modify, and distribute this software for any
+ * purpose with or without fee is hereby granted, provided that the above
+ * copyright notice and this permission notice appear in all copies.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
+ * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
+ * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
+ * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
+ * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
+ * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
+ * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
+ */
+
+static const char rcsid[] = "$Id: contacts.c 137 2009-09-01 11:23:43Z loos-br $";
+
+#include <errno.h>
+#include <string.h>
+
+#include "db.h"
+#include "fmt.h"
+#include "data.h"
+#include "user.h"
+#include "return.h"
+#include "contacts.h"
+#include "protocol.h"
+#include "msn-proxy.h"
+#include "array_cmd.h"
+
+int msnp21_nfy_decode(struct user_ *, command *, int);
+int msnp21_decode_nfy_xml(struct xml_tags *, struct contact_ *, string *,
+ string *, string *);
+void msnp21_decode_contact_cap(struct xml_tags *, struct contact_ *);
+void msnp21_decode_contact_status(struct xml_tags *, string *);
+void msnp21_decode_contact_pe(struct xml_tags *, string *, string *);
+
+
+int
+msnp21_update_status(struct user_ *user, command *cmd) {
+
+ return (msnp21_nfy_decode(user, cmd, 1));
+}
+
+int
+msnp21_notify(struct user_ *user, command *cmd) {
+
+ return (msnp21_nfy_decode(user, cmd, 0));
+}
+
+int
+msnp21_nfy_decode(struct user_ *user, command *cmd, int pub) {
+ struct data_header h1;
+ struct data_header h2;
+ struct data_header h3;
+ struct data_value_ *tmp;
+ struct data_value_ *uri;
+ struct data_value_ *from;
+ struct data_value_ *ctype;
+ struct data_value_ *clength;
+ struct xml_tags xml_head;
+ struct contact_ *contact;
+ struct contact_ *save;
+ string *ut;
+ string find;
+
+ if (cmd->args_len < 2 || cmd->payload.len == 0)
+ return(ROK);
+
+ data_header_init(&h1);
+ if (msn_header_decode(&cmd->payload, &h1) != ROK) {
+ data_header_debug(&h1);
+ data_header_free(&h1);
+ return (ROK);
+ }
+
+ tmp = data_value_find(&h1.values_head, "Routing");
+ if (tmp == NULL || tmp->value.len == 0 ||
+ strncmp((char *)tmp->value.s, "1.0", tmp->value.len) != 0) {
+
+ log->debug("debug: unknown route type/version\n");
+ data_header_debug(&h1);
+ data_header_free(&h1);
+ return (ROK);
+ }
+
+ tmp = data_value_find(&h1.values_head, "To");
+ if (tmp == NULL) {
+ log->debug("debug: no 'to' in notify ?!?\n");
+ data_header_debug(&h1);
+ data_header_free(&h1);
+ return (ROK);
+ }
+
+ ut = user_type(user);
+ if (ut && ut->len > 0 &&
+ strncmp((char *)ut->s, (char *)tmp->value.s, ut->len) != 0) {
+
+ log->debug("debug: not for us ?!?\n");
+ data_header_debug(&h1);
+ data_header_free(&h1);
+ str_free(ut);
+ free(ut);
+ return (ROK);
+ }
+ str_free(ut);
+ free(ut);
+
+ from = data_value_find(&h1.values_head, "From");
+ if (from == NULL) {
+ log->debug("debug: no 'from' in notify ?!?\n");
+ data_header_debug(&h1);
+ data_header_free(&h1);
+ return (ROK);
+ }
+
+ data_header_init(&h2);
+ if (msn_header_decode(&h1.data, &h2) != ROK) {
+ data_header_debug(&h1);
+ data_header_debug(&h2);
+ data_header_free(&h2);
+ data_header_free(&h1);
+ return (ROK);
+ }
+
+ tmp = data_value_find(&h2.values_head, "Reliability");
+ if (tmp == NULL || tmp->value.len == 0 ||
+ strncmp((char *)tmp->value.s, "1.0", tmp->value.len) != 0) {
+
+ log->debug("debug: unknown reliability type/version\n");
+ data_header_debug(&h1);
+ data_header_debug(&h2);
+ data_header_free(&h2);
+ data_header_free(&h1);
+ return (ROK);
+ }
+
+ data_header_init(&h3);
+ if (msn_header_decode(&h2.data, &h3) != ROK) {
+ data_header_debug(&h1);
+ data_header_debug(&h2);
+ data_header_debug(&h3);
+ data_header_free(&h3);
+ data_header_free(&h2);
+ data_header_free(&h1);
+ return (ROK);
+ }
+
+ if (pub)
+ tmp = data_value_find(&h3.values_head, "Publication");
+ else
+ tmp = data_value_find(&h3.values_head, "Notification");
+ if (tmp == NULL || tmp->value.len == 0 ||
+ strncmp((char *)tmp->value.s, "1.0", tmp->value.len) != 0) {
+
+ log->debug("debug: unknown %S type/version\n",
+ pub ? "publication" : "notification");
+ goto out;
+ }
+
+ save = NULL;
+ uri = data_value_find(&h3.values_head, "Uri");
+ ctype = data_value_find(&h3.values_head, "Content-Type");
+ clength = data_value_find(&h3.values_head, "Content-Length");
+ if (uri != NULL && uri->value.len > 0 &&
+ ctype != NULL && ctype->value.len > 0 &&
+ clength != NULL && clength->value.len > 0 &&
+ strncmp((char *)uri->value.s, "/user", uri->value.len) == 0 &&
+ strncmp((char *)ctype->value.s, "application/user+xml", ctype->value.len) == 0 &&
+ atoi((char *)clength->value.s) == h3.data.len) {
+
+ memset(&xml_head, 0, sizeof(xml_head));
+ if (xml_parse(&xml_head, &h3.data) == -1) {
+ log->debug("%S: xml_parse() fail.\n", __func__);
+ goto out;
+ }
+
+ if (pub) {
+
+ msnp21_decode_nfy_xml(&xml_head, NULL, &user->dn, &user->o,
+ &user->status);
+
+ /* update sql */
+ if (db.sql_set_status(user) == RFAIL ||
+ db.sql_update_user_dn(user) == RFAIL) {
+ log->debug("debug: cannot save user status or dn\n");
+ goto out1;
+ }
+
+ } else {
+
+ str_zero(&find);
+ msn_tok_epdata(&from->value, &find);
+ contact = contact_find(user, &find);
+ str_free(&find);
+
+ if (contact == NULL)
+ goto out1;
+
+ save = contact_update(user, &contact->c);
+ if (save == NULL)
+ goto out1;
+
+ msnp21_decode_nfy_xml(&xml_head, save, &save->dn, &save->o,
+ &save->status);
+ } /* !pub */
+
+ /* free the xml data */
+ xml_free(&xml_head);
+ }
+
+ data_header_free(&h3);
+ data_header_free(&h2);
+ data_header_free(&h1);
+
+ if (save == NULL || pub)
+ return (OK);
+
+ /* check for blocked contacts */
+ if (save->deny & CONTACT_DENY)
+ save->deny |= CONTACT_BLOCKED;
+
+#if 0
+ /* SEEIMG */
+ if (o && (user->commands & SEEIMG)) {
+ if (str_copys(o, (unsigned char *)"0") == 0) die_nomem();
+ }
+#endif
+
+ if (db.sql_contact_save(user, save) == RFAIL)
+ return (ROK);
+
+ /* check for blocked contacts */
+ if (save->deny & CONTACT_BLOCKED)
+ return (RETURN);
+
+ return (ROK);
+
+out1:
+ xml_free(&xml_head);
+out:
+ data_header_debug(&h1);
+ data_header_debug(&h2);
+ data_header_debug(&h3);
+ data_header_free(&h3);
+ data_header_free(&h2);
+ data_header_free(&h1);
+ return (ROK);
+}
+
+int
+msnp21_save_contact(struct user_ *user, command *cmd) {
+ struct xml_tag_opt_ *tag_opt;
+ struct xml_tags xml_tag_head;
+ struct xml_tag_ *tag_domain;
+ struct xml_tag_ *tag_name;
+ struct xml_tag_ *tag_s;
+ struct xml_tag_ *tag;
+ struct contact_ *contact;
+ unsigned long lists;
+ string domain;
+ string name;
+ string c;
+ int type;
+ int im;
+
+ memset(&xml_tag_head, 0, sizeof(xml_tag_head));
+ if (xml_parse(&xml_tag_head, &cmd->payload) == RFAIL)
+ return (RFAIL);
+
+ tag = SLIST_FIRST(&xml_tag_head);
+ if (tag->name.len == 0 || strcmp((char *)tag->name.s, "ml") != 0) {
+ xml_free(&xml_tag_head);
+ return (RFAIL);
+ }
+
+ /* traverse the domains list */
+ SLIST_FOREACH(tag_domain, &tag->xml_tag_head, xml_tag__) {
+ if (tag_domain->name.len == 0 ||
+ strcmp((char *)tag_domain->name.s, "d") != 0) {
+ continue;
+ }
+
+ str_zero(&domain);
+ SLIST_FOREACH(tag_opt, &tag_domain->xml_tag_opt_head, xml_tag_opt__) {
+ if (tag_opt->name.len > 0 &&
+ strcmp((char *)tag_opt->name.s, "n") == 0) {
+ domain.len = tag_opt->value.len;
+ domain.s = tag_opt->value.s;
+ break;
+ }
+ }
+
+ /* traverse the users list */
+ SLIST_FOREACH(tag_name, &tag_domain->xml_tag_head, xml_tag__) {
+
+ if (tag_name->name.len == 0 ||
+ strcmp((char *)tag_name->name.s, "c") != 0) {
+ xml_free(&xml_tag_head);
+ return (RFAIL);
+ }
+
+ type = 1;
+ lists = 0;
+ str_zero(&name);
+ SLIST_FOREACH(tag_opt, &tag_name->xml_tag_opt_head, xml_tag_opt__) {
+ if (tag_opt->name.len > 0 &&
+ strcmp((char *)tag_opt->name.s, "n") == 0) {
+ name.len = tag_opt->value.len;
+ name.s = tag_opt->value.s;
+ } else if (tag_opt->name.len > 0 &&
+ strcmp((char *)tag_opt->name.s, "t") == 0) {
+ type = atoi((char *)tag_opt->value.s);
+ }
+ }
+
+ /* traverse the services list */
+ SLIST_FOREACH(tag_s, &tag_name->xml_tag_head, xml_tag__) {
+
+ if (tag_s->name.len == 0 ||
+ strcmp((char *)tag_s->name.s, "s") != 0) {
+ continue;
+ }
+
+ im = 0;
+ SLIST_FOREACH(tag_opt, &tag_s->xml_tag_opt_head, xml_tag_opt__) {
+ if (tag_opt->name.len > 0 &&
+ strcmp((char *)tag_opt->name.s, "n") == 0 &&
+ strcmp((char *)tag_opt->value.s, "IM") == 0) {
+ im = 1;
+ break;
+ }
+ }
+ if (im == 0)
+ continue;
+
+ /* IM service found */
+
+ lists = 0;
+ SLIST_FOREACH(tag_opt, &tag_s->xml_tag_opt_head, xml_tag_opt__) {
+ if (tag_opt->name.len > 0 &&
+ strcmp((char *)tag_opt->name.s, "l") == 0) {
+ lists = atol((char *)tag_opt->value.s);
+ break;
+ }
+ }
+ break;
+ }
+
+
+ /* get contact e-mail */
+ str_zero(&c);
+ c.len = fmt_printf(NULL, "%s@%s", &name, &domain);
+ if (str_ready(&c, c.len + 1) == 0) die_nomem();
+ c.len = fmt_printf(c.s, "%s@%s", &name, &domain);
+
+ if (c.len == 0) { str_free(&c); continue; }
+
+ /* contact == user ?? */
+ if (strcmp((char *)user->email.s, (char *)c.s) == 0) {
+ user->type = type;
+ str_free(&c);
+ continue;
+ }
+
+ contact = contact_update(user, &c);
+ str_free(&c);
+
+ if (contact == NULL) continue;
+
+ /* contact type */
+ contact->type = type;
+
+ /* decode lists */
+ contact->lists = lists | RL;
+
+ if (str_copy(&contact->dn, contact->c.s, contact->c.len) == 0)
+ die_nomem();
+ if (str_copys(&contact->status, (unsigned char *)"OFF") == 0)
+ die_nomem();
+ if (str_copys(&contact->group, (unsigned char *)"0") == 0)
+ die_nomem();
+ if (str_copys(&contact->uid, (unsigned char *)"0") == 0)
+ die_nomem();
+ }
+ }
+
+ xml_free(&xml_tag_head);
+
+ user->contact_delete = 1;
+
+ if (db.sql_contact_save_all(user) == RFAIL) {
+ log->debug("debug: cannot save contacts\n");
+ return (RFAIL);
+ }
+
+ return (ROK);
+}
+
+int
+msnp21_decode_nfy_xml(struct xml_tags *xml_tags, struct contact_ *contact,
+ string *dn, string *obj, string *status) {
+ struct xml_tag_ *tag;
+
+ tag = SLIST_FIRST(xml_tags);
+ if (tag->name.len == 0 || strcmp((char *)tag->name.s, "user") != 0)
+ return (RFAIL);
+
+ msnp21_decode_contact_pe(&tag->xml_tag_head, dn, obj);
+ msnp21_decode_contact_status(&tag->xml_tag_head, status);
+ if (contact)
+ msnp21_decode_contact_cap(&tag->xml_tag_head, contact);
+
+ return (ROK);
+}
+
+void
+msnp21_decode_contact_cap(struct xml_tags *xml_tags, struct contact_ *contact) {
+ struct xml_tag_opt_ *tag_opt;
+ struct xml_tag_ *tag_cap;
+ struct xml_tag_ *tag;
+ char *ep;
+ int hascap;
+
+ /* traverse the xml list */
+ SLIST_FOREACH(tag, xml_tags, xml_tag__) {
+
+ if (tag->name.len == 0 || strcmp((char *)tag->name.s, "sep") != 0)
+ continue;
+
+ /* traverse the opt list */
+ hascap = 0;
+ SLIST_FOREACH(tag_opt, &tag->xml_tag_opt_head, xml_tag_opt__) {
+ if (tag_opt->name.len > 0 &&
+ strcmp((char *)tag_opt->name.s, "n") == 0 &&
+ strcmp((char *)tag_opt->value.s, "IM") == 0) {
+ hascap = 1;
+ break;
+ }
+ }
+ if (hascap == 0)
+ continue;
+
+ SLIST_FOREACH(tag_cap, &tag->xml_tag_head, xml_tag__) {
+ if (tag_cap->name.len == 0 ||
+ strcmp((char *)tag_cap->name.s, "Capabilities") != 0) {
+ continue;
+ }
+
+ if (tag_cap->data.len == 0)
+ continue;
+
+ contact->capab = strtoul((char *)tag_cap->data.s, &ep, 10);
+ if (ep && *ep == ':')
+ contact->excapab = atol(++ep);
+
+ return;
+ }
+ }
+}
+
+void
+msnp21_decode_contact_status(struct xml_tags *xml_tags, string *status) {
+ struct xml_tag_opt_ *tag_opt;
+ struct xml_tag_ *tag_sta;
+ struct xml_tag_ *tag;
+ int hasstatus;
+
+ /* traverse the xml list */
+ SLIST_FOREACH(tag, xml_tags, xml_tag__) {
+
+ if (tag->name.len == 0 || strcmp((char *)tag->name.s, "s") != 0)
+ continue;
+
+ /* traverse the opt list */
+ hasstatus = 0;
+ SLIST_FOREACH(tag_opt, &tag->xml_tag_opt_head, xml_tag_opt__) {
+ if (tag_opt->name.len > 0 &&
+ strcmp((char *)tag_opt->name.s, "n") == 0 &&
+ strcmp((char *)tag_opt->value.s, "IM") == 0) {
+ hasstatus = 1;
+ break;
+ }
+ }
+ if (hasstatus == 0)
+ continue;
+
+ SLIST_FOREACH(tag_sta, &tag->xml_tag_head, xml_tag__) {
+ if (tag_sta->name.len == 0 ||
+ strcmp((char *)tag_sta->name.s, "Status") != 0) {
+ continue;
+ }
+
+ if (tag_sta->data.len > 0 && str_copy(status,
+ tag_sta->data.s, tag_sta->data.len) == 0) {
+ exit(51);
+ }
+
+ return;
+ }
+ }
+}
+
+void
+msnp21_decode_contact_pe(struct xml_tags *xml_tags, string *dn, string *obj) {
+ struct xml_tag_opt_ *tag_opt;
+ struct xml_tag_ *tag_pe;
+ struct xml_tag_ *tag;
+ int haspe;
+
+ /* traverse the xml list */
+ SLIST_FOREACH(tag, xml_tags, xml_tag__) {
+
+ if (tag->name.len == 0 || strcmp((char *)tag->name.s, "s") != 0)
+ continue;
+
+ /* traverse the opt list */
+ haspe = 0;
+ SLIST_FOREACH(tag_opt, &tag->xml_tag_opt_head, xml_tag_opt__) {
+ if (tag_opt->name.len > 0 &&
+ strcmp((char *)tag_opt->name.s, "n") == 0 &&
+ strcmp((char *)tag_opt->value.s, "PE") == 0) {
+ haspe = 1;
+ break;
+ }
+ }
+ if (haspe == 0)
+ continue;
+
+ SLIST_FOREACH(tag_pe, &tag->xml_tag_head, xml_tag__) {
+ if (tag_pe->name.len > 0 &&
+ strcmp((char *)tag_pe->name.s, "FriendlyName") == 0 &&
+ msn_decode(&tag_pe->data, dn) != 0) {
+ exit(51);
+ }
+
+ if (tag_pe->name.len > 0 &&
+ strcmp((char *)tag_pe->name.s, "UserTileLocation") == 0 &&
+ msn_decode(&tag_pe->data, obj) != 0) {
+ exit(51);
+ }
+ }
+ }
+}
+
+int
+msnp21_decode_msg(struct user_ *user, command *cmd, int type) {
+ struct data_header h1;
+ struct data_header h2;
+ struct data_header h3;
+ struct data_value_ *to;
+ struct data_value_ *tmp;
+ struct data_value_ *ctype;
+ struct data_value_ *clength;
+ struct data_value_ *from;
+ struct data_value_ *mess;
+ struct data_value_ *mtype;
+ struct contact_ *contact;
+ string *ut;
+ string find;
+
+ if (cmd->args_len < 2 || cmd->payload.len == 0)
+ return(ROK);
+
+ /* decode the first header */
+ data_header_init(&h1);
+ if (msn_header_decode(&cmd->payload, &h1) != ROK) {
+ data_header_debug(&h1);
+ data_header_free(&h1);
+ return (ROK);
+ }
+
+ to = data_value_find(&h1.values_head, "To");
+ from = data_value_find(&h1.values_head, "From");
+ if (to == NULL)
+ log->debug("debug: no 'to' in notify ?!?\n");
+ if (from == NULL)
+ log->debug("debug: no 'from' in notify ?!?\n");
+ if (to == NULL || from == NULL) {
+ data_header_debug(&h1);
+ data_header_free(&h1);
+ return (ROK);
+ }
+
+ ut = user_type(user);
+ switch (type) {
+ case CLIENT:
+ if (ut && ut->len > 0 &&
+ strncmp((char *)ut->s, (char *)from->value.s, ut->len) != 0) {
+
+ log->debug("debug: not from us ?!?\n");
+ data_header_debug(&h1);
+ data_header_free(&h1);
+ str_free(ut);
+ free(ut);
+ return (ROK);
+ }
+ break;
+ case SERVER:
+ if (ut && ut->len > 0 &&
+ strncmp((char *)ut->s, (char *)to->value.s, ut->len) != 0) {
+
+ log->debug("debug: not for us ?!?\n");
+ data_header_debug(&h1);
+ data_header_free(&h1);
+ str_free(ut);
+ free(ut);
+ return (ROK);
+ }
+ break;
+ }
+ str_free(ut);
+ free(ut);
+
+ data_header_init(&h2);
+ if (msn_header_decode(&h1.data, &h2) != ROK) {
+ data_header_debug(&h1);
+ data_header_debug(&h2);
+ data_header_free(&h2);
+ data_header_free(&h1);
+ return (ROK);
+ }
+
+ tmp = data_value_find(&h2.values_head, "Reliability");
+ if (tmp == NULL || tmp->value.len == 0 ||
+ strncmp((char *)tmp->value.s, "1.0", tmp->value.len) != 0) {
+
+ log->debug("debug: unknown reliability type/version\n");
+ data_header_debug(&h1);
+ data_header_debug(&h2);
+ data_header_free(&h2);
+ data_header_free(&h1);
+ return (ROK);
+ }
+
+ data_header_init(&h3);
+ if (msn_header_decode(&h2.data, &h3) != ROK) {
+ data_header_debug(&h1);
+ data_header_debug(&h2);
+ data_header_debug(&h3);
+ data_header_free(&h3);
+ data_header_free(&h2);
+ data_header_free(&h1);
+ return (ROK);
+ }
+
+ ctype = data_value_find(&h3.values_head, "Content-Type");
+ clength = data_value_find(&h3.values_head, "Content-Length");
+ mess = data_value_find(&h3.values_head, "Messaging");
+ mtype = data_value_find(&h3.values_head, "Message-Type");
+
+ if (ctype != NULL && ctype->value.len > 0 &&
+ clength != NULL && clength->value.len > 0 &&
+ mess != NULL && mess->value.len > 0 &&
+ mtype != NULL && mtype->value.len > 0 &&
+ strncmp((char *)ctype->value.s, "text/plain; charset=UTF-8", ctype->value.len) == 0 &&
+ strncmp((char *)mess->value.s, "2.0", mess->value.len) == 0 &&
+ strncmp((char *)mtype->value.s, "Text", mtype->value.len) == 0 &&
+ atoi((char *)clength->value.s) == h3.data.len) {
+
+ switch (type) {
+ case SERVER:
+ str_zero(&find);
+ msn_tok_epdata(&from->value, &find);
+ contact = contact_find(user, &find);
+ str_free(&find);
+ if (contact == NULL)
+ break;
+ if (db.sql_log_msg(0, &contact->c, &contact->dn, &to->value,
+ &h3.data) == RFAIL) {
+ log->debug("%S: warning: cannot save message to database: "
+ "[%s][%d]\n", __func__, &h3.data, h3.data.len);
+ }
+ break;
+ case CLIENT:
+ str_zero(&find);
+ msn_tok_epdata(&to->value, &find);
+ contact = contact_find(user, &find);
+ str_free(&find);
+ if (contact == NULL)
+ break;
+ if (db.sql_log_msg(0, &user->email, &user->dn, &contact->c,
+ &h3.data) == RFAIL) {
+ log->debug("%S: warning: cannot save message to database: "
+ "[%s][%d]\n", __func__, &h3.data, h3.data.len);
+ }
+ break;
+ }
+
+ }
+
+ data_header_free(&h3);
+ data_header_free(&h2);
+ data_header_free(&h1);
+
+ return (ROK);
+}
+
+int
+msnp21_server_msg(struct user_ *user, command *cmd) {
+
+ return (msnp21_decode_msg(user, cmd, SERVER));
+}
+
+int
+msnp21_client_msg(struct user_ *user, command *cmd) {
+
+ return (msnp21_decode_msg(user, cmd, CLIENT));
+}
+
Modified: trunk/msn-proxy/msnp21.h
===================================================================
--- trunk/src/msn-proxy/msnp21.h 2012-05-16 12:21:22 UTC (rev 166)
+++ trunk/msn-proxy/msnp21.h 2012-06-03 16:11:44 UTC (rev 170)
@@ -20,6 +20,13 @@
#include "check-cmd.h"
+int msnp21_notify(struct user_ *, command *);
+int msnp21_update_status(struct user_ *, command *);
+int msnp21_save_contact(struct user_ *, command *);
+int msnp21_server_msg(struct user_ *, command *);
+int msnp21_client_msg(struct user_ *, command *);
+
+
CMD SERVER_MSNP21_PRE_CMDS[] = {
{ "USR", server_msnp12_pre_usr },
{ "XFR", xfr_proxy },
@@ -35,9 +42,11 @@
{ "ADL", msnp18_adl_sync },
{ "FLN", msn_contact_logoff },
{ "ILN", msnp13_contact_initial_state },
- { "NLN", msn_contact_change },
+ { "MSG", msn_msg },
+ { "NFY", msnp21_notify },
{ "PRP", msnp12_update_dn },
{ "RNG", rng_sb_proxy },
+ { "SDG", msnp21_server_msg },
{ "UBX", msn_ubx },
{ "URL", msn_url },
{ "XFR", xfr_proxy },
@@ -54,33 +63,27 @@
};
CMD CLIENT_MSNP21_CMDS[] = {
- { "ADL", msnp13_save_contact },
- { "CHG", msn_update_status },
+ { "ADL", msnp21_save_contact },
+ { "PUT", msnp21_update_status },
+ { "SDG", msnp21_client_msg },
{ "URL", msn_url },
{ "UUM", msn_ns_client_uum },
{ NULL, NULL }
};
SBCMD SERVER_MSNP21_SB_CMDS[] = {
- { "IRO", msn_sb_iro },
- { "JOI", msn_sb_joi },
- { "MSG", msn_sb_server_msg },
{ NULL, NULL }
};
SBCMD SERVER_MSNP21_SB_POST_CMDS[] = {
- { "BYE", msn_sb_post_bye },
{ NULL, NULL }
};
SBCMD CLIENT_MSNP21_SB_CMDS[] = {
- { "CAL", msn_sb_cal },
- { "MSG", msn_sb_client_msg },
{ NULL, NULL }
};
SBCMD CLIENT_MSNP21_SB_POST_CMDS[] = {
- { "OUT", msn_sb_post_out },
{ NULL, NULL }
};
Deleted: trunk/msn-proxy/protocol.c
===================================================================
--- trunk/src/msn-proxy/protocol.c 2012-05-16 12:21:22 UTC (rev 166)
+++ trunk/msn-proxy/protocol.c 2012-06-03 16:11:44 UTC (rev 170)
@@ -1,1463 +0,0 @@
-/*
- * Copyright (c) 2004-2011, Luiz Otavio O Souza <lo...@gm...>
- *
- * Permission to use, copy, modify, and distribute this software for any
- * purpose with or without fee is hereby granted, provided that the above
- * copyright notice and this permission notice appear in all copies.
- *
- * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
- * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
- * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
- * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
- * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
- * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
- * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
- */
-
-static const char rcsid[] = "$Id: protocol.c 137 2009-09-01 11:23:43Z loos-br $";
-
-#include <ctype.h>
-#include <string.h>
-
-#include "db.h"
-#include "ns.h"
-#include "sb.h"
-#include "fmt.h"
-#include "msg.h"
-#include "xml.h"
-#include "base64.h"
-#include "return.h"
-#include "contacts.h"
-#include "protocol.h"
-#include "array_cmd.h"
-#include "msn-proxy.h"
-
-#include "msnp8.h"
-#include "msnp12.h"
-#include "msnp18.h"
-#include "msnp21.h"
-
-int
-msn_encode(string *in, string *out) {
- unsigned char byte;
- string buf;
-
- /* check args */
- if (in == NULL || out == NULL)
- return(-1);
-
- /* set everything */
- str_reset(out);
- str_zero(&buf);
- buf.s = in->s;
- buf.len = in->len;
-
- while(buf.len > 0) {
- if (*buf.s >= 127) {
- /* utf8 encode */
-
- /* first utf8 byte */
- byte = 0xc0;
- byte |= (*buf.s >> 6) & 0x03;
- if (str_cat(out, &byte, 1) == 0) exit(51);
-
- /* second and last - yes this is a bogus utf8 encode - utf8 byte */
- byte = 0x80;
- byte |= *buf.s & 0x3f;
- if (str_cat(out, &byte, 1) == 0) exit(51);
-
- } else if (*buf.s <= 32) {
- /* url encode */
- if (str_cat(out, (unsigned char *)"%", 1) == 0) exit(51);
-
- /* first byte */
- byte = *buf.s >> 4;
- byte = (byte > 9) ? ('a' + byte - 10) : ('0' + byte);
- if (str_cat(out, &byte, 1) == 0) exit(51);
-
- /* last byte */
- byte = *buf.s & 0x0f;
- byte = (byte > 9) ? ('a' + byte - 10) : ('0' + byte);
- if (str_cat(out, &byte, 1) == 0) exit(51);
-
- } else if (*buf.s == '%') {
- /* escape '%' */
- if (str_cat(out, (unsigned char *)"%%", 2) == 0) exit(51);
- } else if (*buf.s == '&') {
- /* escape '&' */
- if (str_cat(out, (unsigned char *)"&", 6) == 0) exit(51);
- } else if (*buf.s == '\'') {
- /* escape '\'' */
- if (str_cat(out, (unsigned char *)"'", 6) == 0) exit(51);
- } else {
- /* no encode needed */
- if (str_cat(out, buf.s, 1) == 0) exit(51);
- }
- buf.len--;
- buf.s++;
- }
- return(0);
-}
-
-int
-msn_encode_obj(string *in, string *out) {
- unsigned char byte;
- string buf;
-
- /* check args */
- if (in == NULL || out == NULL)
- return(-1);
-
- /* set everything */
- str_reset(out);
- str_zero(&buf);
- buf.s = in->s;
- buf.len = in->len;
-
- while(buf.len > 0) {
- if ((*buf.s >= 'a' && *buf.s <= 'z') ||
- (*buf.s >= 'A' && *buf.s <= 'Z') ||
- (*buf.s >= '0' && *buf.s <= '9') ||
- *buf.s == '.' || *buf.s == '_') {
-
- /* no encode needed */
- if (str_cat(out, buf.s, 1) == 0) exit(51);
-
- } else if (*buf.s == '%') {
-
- /* escape '%' */
- if (str_cat(out, (unsigned char *)"%%", 2) == 0) exit(51);
- } else {
-
- /* url encode */
- if (str_cat(out, (unsigned char *)"%", 1) == 0) exit(51);
-
- /* first byte */
- byte = *buf.s >> 4;
- byte = (byte > 9) ? ('A' + byte - 10) : ('0' + byte);
- if (str_cat(out, &byte, 1) == 0) exit(51);
-
- /* last byte */
- byte = *buf.s & 0x0f;
- byte = (byte > 9) ? ('A' + byte - 10) : ('0' + byte);
- if (str_cat(out, &byte, 1) == 0) exit(51);
- }
- buf.len--;
- buf.s++;
- }
- return(0);
-}
-
-int
-msn_encode_payload(string *in, string *out) {
- unsigned char byte;
- string buf;
-
- /* check args */
- if (in == NULL || out == NULL)
- return(-1);
-
- /* set everything */
- str_reset(out);
- str_zero(&buf);
- buf.s = in->s;
- buf.len = in->len;
-
- while(buf.len > 0) {
- if (*buf.s >= 127) {
- /* utf8 encode */
-
- /* first utf8 byte */
- byte = 0xc0;
- byte |= (*buf.s >> 6) & 0x03;
- if (str_cat(out, &byte, 1) == 0) exit(51);
-
- /* second and last - yes this is a bogus utf8 encode - utf8 byte */
- byte = 0x80;
- byte |= *buf.s & 0x3f;
- if (str_cat(out, &byte, 1) == 0) exit(51);
-
- } else {
- /* no encode needed */
- if (str_cat(out, buf.s, 1) == 0) exit(51);
- }
- buf.len--;
- buf.s++;
- }
- return(0);
-}
-
-int
-msn_decode(string *in, string *out) {
- string buf;
- unsigned char c;
-
- /* check args */
- if (in == NULL || out == NULL)
- return(-1);
-
- /* set everything */
- str_reset(out);
- str_zero(&buf);
- buf.s = in->s;
- buf.len = in->len;
-
- while(buf.len > 0) {
-
- /* UTF8 encoded char */
- if ((*buf.s & 0xe0) == 0xc0) {
-
- /* check for next byte */
- if (buf.len <= 1)
- goto error;
-
- c = (*buf.s & 0x1f) << 6;
-
- buf.len--;
- buf.s++;
-
- c |= (*buf.s & 0x3f);
-
- if (str_cat(out, &c, 1) == 0) exit(51);
-
- buf.len--;
- buf.s++;
- continue;
- }
-
- /* URL-like encoded char */
- if (*buf.s == '%' && buf.len >= 3 &&
- ((*(buf.s + 1) >= '0' && *(buf.s + 1) <= '9') ||
- (*(buf.s + 1) >= 'a' && *(buf.s + 1) <= 'f') ||
- (*(buf.s + 1) >= 'A' && *(buf.s + 1) <= 'F')) &&
- ((*(buf.s + 2) >= '0' && *(buf.s + 2) <= '9') ||
- (*(buf.s + 2) >= 'a' && *(buf.s + 2) <= 'f') ||
- (*(buf.s + 2) >= 'A' && *(buf.s + 2) <= 'F'))) {
-
- buf.len--;
- buf.s++;
-
- if (*buf.s >= '0' && *buf.s <= '9')
- c = (*buf.s - '0') << 4;
- else if (*buf.s >= 'a' && *buf.s <= 'f')
- c = ((*buf.s - 'a') + 10) << 4;
- else if (*buf.s >= 'A' && *buf.s <= 'F')
- c = ((*buf.s - 'A') + 10) << 4;
-
- buf.len--;
- buf.s++;
-
- if (*buf.s >= '0' && *buf.s <= '9')
- c |= (*buf.s - '0');
- else if (*buf.s >= 'a' && *buf.s <= 'f')
- c |= (*buf.s - 'a') + 10;
- else if (*buf.s >= 'A' && *buf.s <= 'F')
- c |= (*buf.s - 'A') + 10;
-
- if (str_cat(out, &c, 1) == 0) exit(51);
-
- buf.len--;
- buf.s++;
- continue;
- }
-
- /* html entities */
- if (*buf.s == '&') {
- if (buf.len > 6 && strncmp((char *)buf.s, "'", 6) == 0) {
- if (str_cat(out, (unsigned char *)"'", 1) == 0) exit(51);
- buf.len -= 6;
- buf.s += 6;
- continue;
- }
- if (buf.len > 6 && strncmp((char *)buf.s, """, 6) == 0) {
- if (str_cat(out, (unsigned char *)"\"", 1) == 0) exit(51);
- buf.len -= 6;
- buf.s += 6;
- continue;
- }
- if (buf.len > 5 && strncmp((char *)buf.s, "&", 5) == 0) {
- if (str_cat(out, (unsigned char *)"&", 1) == 0) exit(51);
- buf.len -= 5;
- buf.s += 5;
- continue;
- }
- if (buf.len > 4 && strncmp((char *)buf.s, ">", 4) == 0) {
- if (str_cat(out, (unsigned char *)">", 1) == 0) exit(51);
- buf.len -= 4;
- buf.s += 4;
- continue;
- }
- if (buf.len > 4 && strncmp((char *)buf.s, "<", 4) == 0) {
- if (str_cat(out, (unsigned char *)"<", 1) == 0) exit(51);
- buf.len -= 4;
- buf.s += 4;
- continue;
- }
- if (buf.len > 5 && *(buf.s + 1) == '#' &&
- (*(buf.s + 2) == 'x' || *(buf.s + 2) == 'X') &&
- ((*(buf.s + 3) >= '0' && *(buf.s + 3) <= '9') ||
- (*(buf.s + 3) >= 'a' && *(buf.s + 3) <= 'f') ||
- (*(buf.s + 3) >= 'A' && *(buf.s + 3) <= 'F')) &&
- ((*(buf.s + 4) >= '0' && *(buf.s + 4) <= '9') ||
- (*(buf.s + 4) >= 'a' && *(buf.s + 4) <= 'f') ||
- (*(buf.s + 4) >= 'A' && *(buf.s + 4) <= 'F')) &&
- *(buf.s + 5) == ';') {
-
- buf.len -= 3;
- buf.s += 3;
-
- if (*buf.s >= '0' && *buf.s <= '9')
- c = (*buf.s - '0') << 4;
- else if (*buf.s >= 'a' && *buf.s <= 'f')
- c = ((*buf.s - 'a') + 10) << 4;
- else if (*buf.s >= 'A' && *buf.s <= 'F')
- c = ((*buf.s - 'A') + 10) << 4;
-
- buf.len--;
- buf.s++;
-
- if (*buf.s >= '0' && *buf.s <= '9')
- c |= (*buf.s - '0');
- else if (*buf.s >= 'a' && *buf.s <= 'f')
- c |= (*buf.s - 'a') + 10;
- else if (*buf.s >= 'A' && *buf.s <= 'F')
- c |= (*buf.s - 'A') + 10;
-
- if (str_cat(out, &c, 1) == 0) exit(51);
-
- buf.len -= 2;
- buf.s += 2;
- continue;
- }
- }
-
- if (str_cat(out, buf.s, 1) == 0) exit(51);
-
- buf.len--;
- buf.s++;
- }
- return(0);
-
-error:
- str_free(out);
- return(-1);
-}
-
-int
-msn_decode_friendly(string *in, string *out) {
- string buf;
- string b;
- int lastnull;
-
- str_zero(&buf);
- if (b64decode(in, &buf) == -1) {
- str_free(&buf);
- return(-1);
- }
-
- lastnull = 0;
- b.s = buf.s;
- b.len = buf.len;
- while (b.len > 0) {
- if (*b.s == 0) {
- if (++lastnull > 2) break;
- } else {
- lastnull = 0;
- if (str_cat(out, b.s, 1) == 0) exit(51);
- }
- b.s++;
- b.len--;
- }
- str_free(&buf);
- return(0);
-}
-
-int
-msn_decode_obj(struct msn_obj_ *obj) {
- struct xml_tag_opt_ *contenttype;
- struct xml_tag_opt_ *location;
- struct xml_tag_opt_ *friendly;
- struct xml_tag_opt_ *creator;
- struct xml_tag_opt_ *sha1d;
- struct xml_tag_opt_ *size;
- struct xml_tag_opt_ *type;
- struct xml_tags xml_head;
- struct xml_tag_ *msnobj;
- string buf;
- int err;
-
- /* nothing to decode */
- if (obj->raw.len == 0) return(0);
-
- str_zero(&buf);
- if (msn_decode(&obj->raw, &buf) == -1) {
- str_free(&buf);
- return(-1);
- }
-
- /* decode the xml msobj */
- memset(&xml_head, 0, sizeof(xml_head));
- if (xml_parse(&xml_head, &buf) == -1) {
- str_free(&buf);
- return(-1);
- }
- str_free(&buf);
-
- err = 0;
- msnobj = xml_find(&xml_head, "msnobj");
- if (msnobj == NULL) {
- xml_free(&xml_head);
- return(-1);
- }
-
- contenttype = xml_opt_find(msnobj, "contenttype");
- if (contenttype != NULL && contenttype->value.len > 0 &&
- (obj->contenttype.len == 0 || (obj->contenttype.len > 0 &&
- strcmp((char *)obj->contenttype.s, (char *)contenttype->value.s) != 0))) {
- if (str_copy(&obj->contenttype, contenttype->value.s,
- contenttype->value.len) == 0) {
- exit(51);
- }
- }
-
- sha1d = xml_opt_find(msnobj, "SHA1D");
- if (sha1d != NULL && sha1d->value.len > 0 &&
- (obj->sha1d.len == 0 || (obj->sha1d.len > 0 &&
- strcmp((char *)obj->sha1d.s, (char *)sha1d->value.s) != 0))) {
- if (str_copy(&obj->sha1d, sha1d->value.s, sha1d->value.len) == 0)
- exit(51);
- }
-
- creator = xml_opt_find(msnobj, "Creator");
- if (creator != NULL && creator->value.len > 0 &&
- (obj->creator.len == 0 || (obj->creator.len > 0 &&
- strcmp((char *)obj->creator.s, (char *)creator->value.s) != 0))) {
- if (str_copy(&obj->creator, creator->value.s, creator->value.len) == 0)
- exit(51);
- }
-
- location = xml_opt_find(msnobj, "Location");
- if (location != NULL && location->value.len > 0 &&
- (obj->location.len == 0 || (obj->location.len > 0 &&
- strcmp((char *)obj->location.s, (char *)location->value.s) != 0))) {
- msn_decode(&location->value, &obj->location);
- }
-
- friendly = xml_opt_find(msnobj, "Friendly");
- if (friendly != NULL && friendly->value.len > 0) {
- str_zero(&buf);
- msn_decode_friendly(&friendly->value, &buf);
- if (buf.len > 0 && (obj->friendly.len == 0 ||
- (obj->friendly.len > 0 &&
- strcmp((char *)obj->friendly.s, (char *)buf.s) != 0))) {
- if (str_copy(&obj->friendly, buf.s, buf.len) == 0)
- exit(51);
- }
- str_free(&buf);
- }
-
- size = xml_opt_find(msnobj, "Size");
- if (size != NULL && size->value.len > 0 &&
- (size_t)atoi((char *)size->value.s) != obj->size) {
- obj->size = (size_t)atoi((char *)size->...
[truncated message content] |
|
From: <lo...@us...> - 2012-06-03 16:04:55
|
Revision: 169
http://msn-proxy.svn.sourceforge.net/msn-proxy/?rev=169&view=rev
Author: loos-br
Date: 2012-06-03 16:04:49 +0000 (Sun, 03 Jun 2012)
Log Message:
-----------
update contact type.
Modified Paths:
--------------
trunk/src/db_modules/mysql/sql.c
Modified: trunk/src/db_modules/mysql/sql.c
===================================================================
--- trunk/src/db_modules/mysql/sql.c 2012-05-18 12:43:12 UTC (rev 168)
+++ trunk/src/db_modules/mysql/sql.c 2012-06-03 16:04:49 UTC (rev 169)
@@ -695,7 +695,11 @@
sql_data(&sql, len, "contact_chat", "YES");
}
+ if (contact->save->type != contact->type) {
+ contact->type = contact->save->type;
+ }
+
if (len != sql.len) {
buf.len = fmt_printf(NULL, " WHERE "
"`email` = '%q' AND "
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <lo...@us...> - 2012-05-18 12:43:23
|
Revision: 168
http://msn-proxy.svn.sourceforge.net/msn-proxy/?rev=168&view=rev
Author: loos-br
Date: 2012-05-18 12:43:12 +0000 (Fri, 18 May 2012)
Log Message:
-----------
Add a new routine to decode some information from Hotmail profile messages.
Some style fixes.
Modified Paths:
--------------
trunk/src/msn-proxy/msg.c
trunk/src/msn-proxy/msg.h
Modified: trunk/src/msn-proxy/msg.c
===================================================================
--- trunk/src/msn-proxy/msg.c 2012-05-18 12:39:45 UTC (rev 167)
+++ trunk/src/msn-proxy/msg.c 2012-05-18 12:43:12 UTC (rev 168)
@@ -21,6 +21,7 @@
#include "db.h"
#include "sb.h"
#include "msg.h"
+#include "data.h"
#include "return.h"
#include "contacts.h"
#include "protocol.h"
@@ -426,15 +427,67 @@
int
msn_sb_server_msg(struct sb_ *sb, command *cmd) {
- return(msn_msg_decode(sb, cmd, SERVER));
+ return (msn_msg_decode(sb, cmd, SERVER));
}
int
msn_sb_client_msg(struct sb_ *sb, command *cmd) {
- return(msn_msg_decode(sb, cmd, CLIENT));
+ return (msn_msg_decode(sb, cmd, CLIENT));
}
-int msn_ns_client_uum (struct user_ *user, command *cmd) {
- return(msn_msg_decode_umm(user, cmd));
+int
+msn_ns_client_uum(struct user_ *user, command *cmd) {
+ return (msn_msg_decode_umm(user, cmd));
}
+int
+msn_msg(struct user_ *user, command *cmd) {
+ struct data_header h1;
+ struct data_value_ *nick;
+ struct data_value_ *ctype;
+ struct data_value_ *mimev;
+ string *tmp1;
+ string *tmp2;
+
+ if (cmd->args_len < 3 || cmd->payload.len == 0)
+ return (ROK);
+
+ tmp1 = cmd->args[0];
+ tmp2 = cmd->args[1];
+
+ if (tmp1 == NULL || tmp1->len == 0 || tmp2 == NULL || tmp2->len == 0 ||
+ strcmp((char *)tmp1->s, "Hotmail") != 0 ||
+ strcmp((char *)tmp2->s, "Hotmail") != 0) {
+ return (ROK);
+ }
+
+ data_header_init(&h1);
+ if (msn_header_decode(&cmd->payload, &h1) != ROK) {
+ data_header_debug(&h1);
+ data_header_free(&h1);
+ return (ROK);
+ }
+
+ nick = data_value_find(&h1.values_head, "Nickname");
+ ctype = data_value_find(&h1.values_head, "Content-Type");
+ mimev = data_value_find(&h1.values_head, "MIME-Version");
+ if (nick != NULL && nick->value.len > 0 &&
+ ctype != NULL && ctype->value.len > 0 &&
+ mimev != NULL && mimev->value.len > 0 &&
+ strncmp((char *)ctype->value.s, "text/x-msmsgsprofile; charset=UTF-8",
+ ctype->value.len) == 0 &&
+ strncmp((char *)mimev->value.s, "1.0", mimev->value.len) == 0) {
+
+ if (str_copy(&user->dn, nick->value.s, nick->value.len) == 0)
+ die_nomem();
+
+ /* update the sql database */
+ if (db.sql_update_user_dn(user) == RFAIL)
+ log->debug("%S: error: cannot update the user DN.\n", __func__);
+ }
+
+ data_header_free(&h1);
+
+ return (ROK);
+}
+
Modified: trunk/src/msn-proxy/msg.h
===================================================================
--- trunk/src/msn-proxy/msg.h 2012-05-18 12:39:45 UTC (rev 167)
+++ trunk/src/msn-proxy/msg.h 2012-05-18 12:43:12 UTC (rev 168)
@@ -50,6 +50,7 @@
int msg_decode_utf8(struct sb_ *sb, command *cmd, msg_ *msg, int type);
int msn_sb_server_msg(struct sb_ *sb, command *cmd);
int msn_sb_client_msg(struct sb_ *sb, command *cmd);
-int msn_ns_client_uum (struct user_ *user, command *cmd);
+int msn_ns_client_uum(struct user_ *user, command *cmd);
+int msn_msg(struct user_ *, command *);
#endif
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <lo...@us...> - 2012-05-18 12:39:55
|
Revision: 167
http://msn-proxy.svn.sourceforge.net/msn-proxy/?rev=167&view=rev
Author: loos-br
Date: 2012-05-18 12:39:45 +0000 (Fri, 18 May 2012)
Log Message:
-----------
Fix a problem with latin ascii.
The default user status is now 'hidden' on MSNP21.
Modified Paths:
--------------
trunk/src/msn-proxy/protocol.c
Modified: trunk/src/msn-proxy/protocol.c
===================================================================
--- trunk/src/msn-proxy/protocol.c 2012-05-16 12:21:22 UTC (rev 166)
+++ trunk/src/msn-proxy/protocol.c 2012-05-18 12:39:45 UTC (rev 167)
@@ -931,6 +931,15 @@
if (msn_decode(dn, &user->dn) == -1)
return(RFAIL);
+ if (str_copys(&user->status, (unsigned char *)"HDN") == 0)
+ die_nomem();
+
+ /* update sql */
+ if (db.sql_set_status(user) == RFAIL) {
+ log->debug("debug: cannot save status\n");
+ return(RFAIL);
+ }
+
return(ROK);
/* TWN S - hash for authentication */
@@ -1421,7 +1430,7 @@
/* Find the key value */
str_zero(&val);
val.s = buf.s;
- while (buf.len > 0 && *buf.s && (ISVALID(*buf.s) || *buf.s == ' ')) {
+ while (buf.len > 0 && *buf.s && *buf.s != '\r' && *buf.s != '\n') {
++buf.s;
--buf.len;
++val.len;
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <lo...@us...> - 2012-05-16 12:21:28
|
Revision: 166
http://msn-proxy.svn.sourceforge.net/msn-proxy/?rev=166&view=rev
Author: loos-br
Date: 2012-05-16 12:21:22 +0000 (Wed, 16 May 2012)
Log Message:
-----------
add a new routine to decode http like headers.
Modified Paths:
--------------
trunk/src/msn-proxy/protocol.c
trunk/src/msn-proxy/protocol.h
Modified: trunk/src/msn-proxy/protocol.c
===================================================================
--- trunk/src/msn-proxy/protocol.c 2012-05-16 12:18:03 UTC (rev 165)
+++ trunk/src/msn-proxy/protocol.c 2012-05-16 12:21:22 UTC (rev 166)
@@ -16,6 +16,7 @@
static const char rcsid[] = "$Id: protocol.c 137 2009-09-01 11:23:43Z loos-br $";
+#include <ctype.h>
#include <string.h>
#include "db.h"
@@ -1387,3 +1388,76 @@
if (str_copy(out, str->s + start, (str->len - start - end)) == 0) die_nomem();
}
+
+#define ISVALID(m) (m >= 33 && m <= 125)
+
+int
+msn_header_decode(string *str, struct data_header *header) {
+ struct data_value_ *data;
+ string buf;
+ string key;
+ string val;
+ int lastnl;
+
+ str_zero(&buf);
+ buf.s = str->s;
+ buf.len = str->len;
+ while (buf.len > 0) {
+
+ /* Find the key name */
+ str_zero(&key);
+ key.s = buf.s;
+ while (buf.len > 0 && *buf.s && *buf.s != ':' && ISVALID(*buf.s)) {
+ ++buf.s;
+ --buf.len;
+ ++key.len;
+ }
+
+ while (buf.len > 0 && *buf.s && (*buf.s == ':' || isspace(*buf.s))) {
+ ++buf.s;
+ --buf.len;
+ }
+
+ /* Find the key value */
+ str_zero(&val);
+ val.s = buf.s;
+ while (buf.len > 0 && *buf.s && (ISVALID(*buf.s) || *buf.s == ' ')) {
+ ++buf.s;
+ --buf.len;
+ ++val.len;
+ }
+
+ lastnl = 0;
+ while (buf.len > 0 && *buf.s && (*buf.s == '\n' || *buf.s == '\r')) {
+ ++buf.s;
+ --buf.len;
+ ++lastnl;
+ }
+
+ if (key.len == 0 || val.len == 0)
+ return (RFAIL);
+
+ data = (struct data_value_ *)malloc(sizeof(*data));
+ if (data == NULL)
+ exit(51);
+
+ memset(data, 0, sizeof(*data));
+ if (key.len > 0 && str_copy(&data->name, key.s, key.len) == 0)
+ exit(51);
+ if (val.len > 0 && str_copy(&data->value, val.s, val.len) == 0)
+ exit(51);
+
+ SLIST_INSERT_HEAD(&header->values_head, data, data_value__);
+
+ header->data.s = buf.s;
+ header->data.len = buf.len;
+
+ /* end of header ? */
+ if (lastnl >= 4)
+ break;
+ }
+
+ return (ROK);
+}
+
+#undef ISVALID
Modified: trunk/src/msn-proxy/protocol.h
===================================================================
--- trunk/src/msn-proxy/protocol.h 2012-05-16 12:18:03 UTC (rev 165)
+++ trunk/src/msn-proxy/protocol.h 2012-05-16 12:21:22 UTC (rev 166)
@@ -24,6 +24,7 @@
#include "user.h"
#include "command.h"
#include "obj-types.h"
+#include "data-types.h"
#define MOBILE 0x00000001
#define IE8 0x00000002
@@ -98,5 +99,7 @@
int msn_sb_id(struct sb_ *sb, command *cmd);
int send_out(struct user_ *user);
void msn_tok_epdata(string *str, string *out);
+int msn_header_decode(string *, struct data_header *);
+
#endif
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <lo...@us...> - 2012-05-16 12:18:12
|
Revision: 165
http://msn-proxy.svn.sourceforge.net/msn-proxy/?rev=165&view=rev
Author: loos-br
Date: 2012-05-16 12:18:03 +0000 (Wed, 16 May 2012)
Log Message:
-----------
add a missing command for MSNP21.
Modified Paths:
--------------
trunk/src/msn-proxy/command.c
Modified: trunk/src/msn-proxy/command.c
===================================================================
--- trunk/src/msn-proxy/command.c 2012-05-16 12:16:05 UTC (rev 164)
+++ trunk/src/msn-proxy/command.c 2012-05-16 12:18:03 UTC (rev 165)
@@ -69,6 +69,7 @@
strcasecmp((char *)cmd->cmd.s, "509") != 0 &&
strcasecmp((char *)cmd->cmd.s, "511") != 0 &&
strcasecmp((char *)cmd->cmd.s, "ADL") != 0 &&
+ strcasecmp((char *)cmd->cmd.s, "DEL") != 0 &&
strcasecmp((char *)cmd->cmd.s, "FQY") != 0 &&
strcasecmp((char *)cmd->cmd.s, "GCF") != 0 &&
strcasecmp((char *)cmd->cmd.s, "MSG") != 0 &&
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|