summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/dcchelper.c20
-rw-r--r--src/gethostbyname.c16
-rw-r--r--src/pad.c32
3 files changed, 68 insertions, 0 deletions
diff --git a/src/dcchelper.c b/src/dcchelper.c
new file mode 100644
index 0000000..bf8f28b
--- /dev/null
+++ b/src/dcchelper.c
@@ -0,0 +1,20 @@
+#include <stdio.h>
+
+int main(int argc,char *argv[]) {
+ char *wanip;
+ if(argc < 2) {
+ return printf("usage: %s [IP]\n",argv[0]);
+ }
+ if(!strncmp(argv[1],"127.",4)) {
+ wanip="127.0.0.1";
+ }
+ else if(!strncmp(argv[1],"1.",2)) {
+ wanip="1.41.41.1";
+ }
+ else if(!strncmp(argv[1],"192.168.0.",10)) {
+ wanip="192.168.0.2";
+ } else {
+ wanip="98.159.69.172";
+ }
+ return printf("%u\n",htonl(inet_addr(wanip)));
+}
diff --git a/src/gethostbyname.c b/src/gethostbyname.c
new file mode 100644
index 0000000..646bf0a
--- /dev/null
+++ b/src/gethostbyname.c
@@ -0,0 +1,16 @@
+#include <stdio.h>
+#include <netdb.h>
+
+int main(int argc,char *argv[]) {
+ int i;
+ if(argc < 2) return 1;
+ struct hostent *he=gethostbyname(argv[1]);
+ for(i=0;he->h_addr_list[i];i++) {
+ printf("%u.%u.%u.%u\n",
+ (unsigned char)he->h_addr_list[i][0],
+ (unsigned char)he->h_addr_list[i][1],
+ (unsigned char)he->h_addr_list[i][2],
+ (unsigned char)he->h_addr_list[i][3]);
+ }
+ return 0;
+}
diff --git a/src/pad.c b/src/pad.c
new file mode 100644
index 0000000..2f2ea13
--- /dev/null
+++ b/src/pad.c
@@ -0,0 +1,32 @@
+#include <stdio.h>
+#include <string.h>
+
+int main(int argc,char *argv[]) {
+ short in;
+ int i=0;
+ int width=argc>1?atoi(argv[1]):80;
+ char with=argc>2?argv[2][0]:' ';
+ char *line=argc>3?argv[3]:0;
+ if(width <= 0) width=80;
+ if(!line) {
+ while((in=fgetc(stdin)) != -1) {
+ if(in == '\n') {
+ for(;i%width || i == 0;i++) {
+ putchar(with);
+ }
+ i=-1;
+ }
+ i++;
+ putchar(in);
+ }
+ } else {
+ i=strlen(line);
+ }
+ if(i != 0 || line) {
+ if(line) fputs(line,stdout);
+ for(;i%width || i == 0;i++) {
+ putchar(with);
+ }
+ }
+ return 0;
+}