Binary Grabber (bgrab)
Why is it here?
Ok well I found this app like 3 years ago and thought it was great.
It saves so much time
and I have yet to find anything that compaires. Over the last year it has
seemed to disapear
off the face of the earth so I decided to make it a website.
I have found two versions 1.2.3 and 1.3.6. 1.3.6 didnt compile
for me but with a few little
chages I got it to work. I don't know if I will make any other changes to
or anything other than
leave it here.
There is some config file with some regex options but I am not shure exatly
how that works
if any one has that documentation I would be happy to put it up here. Also
I dont have too much
bandwith so be nice and if you want to mirror.
What is it?
The purpose of this program is to automate the downloading of binary
attachments from UseNet Newsgroups. Given a group name, this program
will connect to a news server, read all messages in that group and
extract any binary attachments included in any of those messages
(including multipart attachments). This program does not require any
keyboard interaction and could be fairly easily scheduled to run from
These is no warranty, expressed or implied, for the suitability of
this program for any particular purpose. By using this program you
take full responsibility for any repercussions of your use of it,
including but not limited to loss of income, property, women, friends,
Staticly Linked striped i386 binary and Docs
Patched source code to 1.3.6 (this included my patches and patches
I found in an srpm both good)
My patch aplyes to clean source includes both the others
regex patch (changes include from rxposix.h -> regex.h)
no replace patch
my patch without the others
HOW TO COMPILE
To compile this program, you need to be on a system that uses the GNU
C++ Compiler (or that has some other ANSI C++ compliant compiler linked
to run as the 'gcc' executable). You also need to have either curses
Makefiles are included for Linux and Solaris systems. The attached
configure script does nothing more than try to figure out if you're
running one of these two OS'es and create a link from one of them to
Makefile if you are. The Linux makefile assumes you have ncurses
installed, the Solaris that you have curses itself.
If some of this isn't true (i.e. if you're running some other variant
of UNIX or if your curses is called something different), you're on
your own to compile.
"make install" will try to move the program binary (bgrab) to
/usr/local/bin and make it root/root/755.
HOW TO RUN
You'd probably want to create a special directory and then run this
program from within that directory. The program creates the following
A file named the same name as the group
it's reading. This is used to store the
database of message ID's of the messages
that have already been read, so that they
aren't read again.
These files store Unix-to-Unix encoded
message *parts*. That is to say, you will
only see these files if the group you're
reading contained only parts of a large
multi-part post. The reader saves the parts
that are there, but since the remaining parts
are never found, it never gets around to
completing that particular attachment and
removing the "part" files. These should
be manually removed every few days.
Additionally, of course, the reader will output any attachments it
does manage to decode into the current directory.
The program does not do any actual decoding itself, by the way, but
in fact forks off uudecode and mmencode processes. If you do not
have those utilities installed, you will not be able to decode
Unix-to-Unix encoded files or MIME encoded files, respectively.
By default, Binary Grabber tries to access "news" as its news
server. If you do not have your DNS configured so that this
actually resolves to your news server, you must set the environment
variable NNTPSERVER to your valid news server's name.
Otherwise, type "bgrab" without any command line arguments to see
the correct syntax for running the program.