graham.gower [Sun, 15 Nov 2009 07:14:26 +0000 (07:14 +0000)]
Fix leak in error path.
git-svn-id: http://opkg.googlecode.com/svn/trunk@302
e8e0d7a0-c8d9-11dd-a880-
a1081c7ac358
graham.gower [Sun, 15 Nov 2009 04:23:56 +0000 (04:23 +0000)]
Write out status files for the correct pkg->dest, instead of the default.
git-svn-id: http://opkg.googlecode.com/svn/trunk@301
e8e0d7a0-c8d9-11dd-a880-
a1081c7ac358
graham.gower [Fri, 13 Nov 2009 05:57:45 +0000 (05:57 +0000)]
Fix the case where -o is used, but no conf file is passed.
git-svn-id: http://opkg.googlecode.com/svn/trunk@300
e8e0d7a0-c8d9-11dd-a880-
a1081c7ac358
graham.gower [Fri, 13 Nov 2009 05:57:34 +0000 (05:57 +0000)]
Remove unused variable.
git-svn-id: http://opkg.googlecode.com/svn/trunk@299
e8e0d7a0-c8d9-11dd-a880-
a1081c7ac358
graham.gower [Fri, 13 Nov 2009 03:30:49 +0000 (03:30 +0000)]
Remove local variable which was masking a static one.
git-svn-id: http://opkg.googlecode.com/svn/trunk@298
e8e0d7a0-c8d9-11dd-a880-
a1081c7ac358
graham.gower [Fri, 13 Nov 2009 03:30:39 +0000 (03:30 +0000)]
Free the lock, close the file descriptor.
git-svn-id: http://opkg.googlecode.com/svn/trunk@297
e8e0d7a0-c8d9-11dd-a880-
a1081c7ac358
graham.gower [Fri, 13 Nov 2009 02:57:43 +0000 (02:57 +0000)]
Remove status_file_tmp_name. This code does not improve robustness.
git-svn-id: http://opkg.googlecode.com/svn/trunk@296
e8e0d7a0-c8d9-11dd-a880-
a1081c7ac358
graham.gower [Fri, 13 Nov 2009 01:23:20 +0000 (01:23 +0000)]
Make opkg_conf_parse_file() return -1 for error, as expected where it is called.
git-svn-id: http://opkg.googlecode.com/svn/trunk@295
e8e0d7a0-c8d9-11dd-a880-
a1081c7ac358
graham.gower [Fri, 13 Nov 2009 01:07:11 +0000 (01:07 +0000)]
Some cleanup of opkg_conf_init/opkg_conf_deinit.
git-svn-id: http://opkg.googlecode.com/svn/trunk@294
e8e0d7a0-c8d9-11dd-a880-
a1081c7ac358
graham.gower [Fri, 13 Nov 2009 01:07:00 +0000 (01:07 +0000)]
Compare verbosity to a message_level_t.
git-svn-id: http://opkg.googlecode.com/svn/trunk@293
e8e0d7a0-c8d9-11dd-a880-
a1081c7ac358
graham.gower [Thu, 12 Nov 2009 22:28:03 +0000 (22:28 +0000)]
Fix copy/pasto in error message.
git-svn-id: http://opkg.googlecode.com/svn/trunk@292
e8e0d7a0-c8d9-11dd-a880-
a1081c7ac358
graham.gower [Thu, 12 Nov 2009 09:43:23 +0000 (09:43 +0000)]
Of course, that should be !isatty().
git-svn-id: http://opkg.googlecode.com/svn/trunk@291
e8e0d7a0-c8d9-11dd-a880-
a1081c7ac358
graham.gower [Thu, 12 Nov 2009 06:38:44 +0000 (06:38 +0000)]
Don't prompt for user input from stdin if it's not a tty.
Based off a patch by Chris Larson <clarson@mvista.com> for OpenEmbedded.
git-svn-id: http://opkg.googlecode.com/svn/trunk@290
e8e0d7a0-c8d9-11dd-a880-
a1081c7ac358
graham.gower [Thu, 12 Nov 2009 06:26:26 +0000 (06:26 +0000)]
Cleanup the rest of pkg_parse.c. Give some functions more appropriate names too.
git-svn-id: http://opkg.googlecode.com/svn/trunk@289
e8e0d7a0-c8d9-11dd-a880-
a1081c7ac358
graham.gower [Thu, 12 Nov 2009 06:26:11 +0000 (06:26 +0000)]
Don't clobber errno, so that we can provide a useful error message.
git-svn-id: http://opkg.googlecode.com/svn/trunk@288
e8e0d7a0-c8d9-11dd-a880-
a1081c7ac358
graham.gower [Thu, 12 Nov 2009 05:02:46 +0000 (05:02 +0000)]
Fix parsing of Conffiles lines in status files.
Also, add a leading space when writing out the status file such that the
parser can recognise these lines as conf file lines.
git-svn-id: http://opkg.googlecode.com/svn/trunk@287
e8e0d7a0-c8d9-11dd-a880-
a1081c7ac358
graham.gower [Thu, 12 Nov 2009 05:02:35 +0000 (05:02 +0000)]
Cleanup version string handling.
git-svn-id: http://opkg.googlecode.com/svn/trunk@286
e8e0d7a0-c8d9-11dd-a880-
a1081c7ac358
graham.gower [Thu, 12 Nov 2009 05:02:24 +0000 (05:02 +0000)]
Fix leak when downgrading a package.
git-svn-id: http://opkg.googlecode.com/svn/trunk@285
e8e0d7a0-c8d9-11dd-a880-
a1081c7ac358
graham.gower [Wed, 11 Nov 2009 03:43:50 +0000 (03:43 +0000)]
Remove a debugging fprintf I accidentally left in.
git-svn-id: http://opkg.googlecode.com/svn/trunk@284
e8e0d7a0-c8d9-11dd-a880-
a1081c7ac358
graham.gower [Wed, 11 Nov 2009 03:18:23 +0000 (03:18 +0000)]
Cleanup parsing of packages.
This diff is loosely based on a patch by Jo-Philipp Wich <google@wwsnet.net>
posted in the bugtracker (Issue #24). Peak memory consumption while parsing
package lists is dramatically reduced.
Thanks to Camille Moncelier for fixing problems after reallocing for long lines.
git-svn-id: http://opkg.googlecode.com/svn/trunk@283
e8e0d7a0-c8d9-11dd-a880-
a1081c7ac358
graham.gower [Wed, 11 Nov 2009 02:23:57 +0000 (02:23 +0000)]
Dead code removal.
git-svn-id: http://opkg.googlecode.com/svn/trunk@282
e8e0d7a0-c8d9-11dd-a880-
a1081c7ac358
graham.gower [Wed, 11 Nov 2009 02:10:49 +0000 (02:10 +0000)]
Don't try to rerun control scripts, problems caused by circular dependencies.
Symptoms of this problem are seeing the following when installing a package:
opkg: (null): Bad address
opkg: (null): Bad address
git-svn-id: http://opkg.googlecode.com/svn/trunk@281
e8e0d7a0-c8d9-11dd-a880-
a1081c7ac358
graham.gower [Wed, 11 Nov 2009 00:46:56 +0000 (00:46 +0000)]
More cleanup in error paths to plug leaks found while installing dbus.
git-svn-id: http://opkg.googlecode.com/svn/trunk@280
e8e0d7a0-c8d9-11dd-a880-
a1081c7ac358
pixdamix [Tue, 10 Nov 2009 16:29:08 +0000 (16:29 +0000)]
Update name in copyrights + minor changes
git-svn-id: http://opkg.googlecode.com/svn/trunk@279
e8e0d7a0-c8d9-11dd-a880-
a1081c7ac358
graham.gower [Tue, 10 Nov 2009 06:07:09 +0000 (06:07 +0000)]
Cleanup trim_alloc().
git-svn-id: http://opkg.googlecode.com/svn/trunk@278
e8e0d7a0-c8d9-11dd-a880-
a1081c7ac358
graham.gower [Tue, 10 Nov 2009 05:00:59 +0000 (05:00 +0000)]
Remove opkg_internal_use_only and fix associated assumptions RE pkg->provides.
It appears that the opkg_internal_use_only provides string was introduced to
bandaid over problems with assuming that the pkg->provides, pkg->provides_str
and pkg->provides_count are all the same length. As each pkg provides itself,
the pkg->provides array was one longer than the str and count fields. Most of
the uses of pkg->provides did not take this into account.
This behaviour has been changed. pkg->provides is now pkg->provides_count long
and it is pkg->provides_str which is shorter by one.
Associated dead code has also been removed.
git-svn-id: http://opkg.googlecode.com/svn/trunk@277
e8e0d7a0-c8d9-11dd-a880-
a1081c7ac358
graham.gower [Tue, 10 Nov 2009 05:00:45 +0000 (05:00 +0000)]
Remove the assumption that pkg fields have been allocated and need free()ing.
git-svn-id: http://opkg.googlecode.com/svn/trunk@276
e8e0d7a0-c8d9-11dd-a880-
a1081c7ac358
graham.gower [Tue, 10 Nov 2009 05:00:35 +0000 (05:00 +0000)]
Ensure that the hash_table messages show useful information.
git-svn-id: http://opkg.googlecode.com/svn/trunk@275
e8e0d7a0-c8d9-11dd-a880-
a1081c7ac358
graham.gower [Tue, 10 Nov 2009 05:00:25 +0000 (05:00 +0000)]
Use xsystem() to be consistent. Some minor cleanup too.
git-svn-id: http://opkg.googlecode.com/svn/trunk@274
e8e0d7a0-c8d9-11dd-a880-
a1081c7ac358
graham.gower [Fri, 6 Nov 2009 06:17:44 +0000 (06:17 +0000)]
Put update temp directory in with the others. Also, don't confuse returning
error codes with number of download failures.
git-svn-id: http://opkg.googlecode.com/svn/trunk@273
e8e0d7a0-c8d9-11dd-a880-
a1081c7ac358
graham.gower [Fri, 6 Nov 2009 05:57:57 +0000 (05:57 +0000)]
Use mkdtemp() to create a unique directory instead of a goto loop.
git-svn-id: http://opkg.googlecode.com/svn/trunk@272
e8e0d7a0-c8d9-11dd-a880-
a1081c7ac358
graham.gower [Fri, 6 Nov 2009 04:49:01 +0000 (04:49 +0000)]
More dead code removal.
git-svn-id: http://opkg.googlecode.com/svn/trunk@271
e8e0d7a0-c8d9-11dd-a880-
a1081c7ac358
graham.gower [Fri, 6 Nov 2009 04:34:49 +0000 (04:34 +0000)]
Remove if (0 && ...) ... statements.
git-svn-id: http://opkg.googlecode.com/svn/trunk@270
e8e0d7a0-c8d9-11dd-a880-
a1081c7ac358
graham.gower [Fri, 6 Nov 2009 04:28:03 +0000 (04:28 +0000)]
Remove more unused code.
git-svn-id: http://opkg.googlecode.com/svn/trunk@269
e8e0d7a0-c8d9-11dd-a880-
a1081c7ac358
graham.gower [Fri, 6 Nov 2009 04:27:48 +0000 (04:27 +0000)]
Remove unused function.
git-svn-id: http://opkg.googlecode.com/svn/trunk@268
e8e0d7a0-c8d9-11dd-a880-
a1081c7ac358
graham.gower [Fri, 6 Nov 2009 04:27:37 +0000 (04:27 +0000)]
Remove dead code. We would segfault before following this code path.
git-svn-id: http://opkg.googlecode.com/svn/trunk@267
e8e0d7a0-c8d9-11dd-a880-
a1081c7ac358
graham.gower [Fri, 6 Nov 2009 00:50:12 +0000 (00:50 +0000)]
Remove some bogus error checking and return void instead of int.
git-svn-id: http://opkg.googlecode.com/svn/trunk@266
e8e0d7a0-c8d9-11dd-a880-
a1081c7ac358
graham.gower [Fri, 6 Nov 2009 00:48:36 +0000 (00:48 +0000)]
Specify --enable-pathfinder instead of --with-pathfinder.
git-svn-id: http://opkg.googlecode.com/svn/trunk@265
e8e0d7a0-c8d9-11dd-a880-
a1081c7ac358
graham.gower [Fri, 6 Nov 2009 00:41:31 +0000 (00:41 +0000)]
I hate autotools.
If the first call to PKG_CHECK_MODULES() may not occur, then the macro does
something really really stupid: it sets PKG_CONFIG="". Thus subsequent calls
will fail and tell you that pkg-config cannot be found or is too old.
git-svn-id: http://opkg.googlecode.com/svn/trunk@264
e8e0d7a0-c8d9-11dd-a880-
a1081c7ac358
pixdamix [Thu, 5 Nov 2009 16:07:47 +0000 (16:07 +0000)]
Some refactoring of pathfinder support
git-svn-id: http://opkg.googlecode.com/svn/trunk@263
e8e0d7a0-c8d9-11dd-a880-
a1081c7ac358
pixdamix [Thu, 5 Nov 2009 08:46:43 +0000 (08:46 +0000)]
Removed a bunch of if(0) and dead code
Applied this semantic patch:
@@
statement S;
@@
- if(0) S
@@
@@
- remove_obsolete_maintainer_scripts(...) {
- ...
-}
@@
@@
- remove_obsolete_maintainer_scripts(...);
@@
identifier i;
@@
-if(i){
-}
git-svn-id: http://opkg.googlecode.com/svn/trunk@262
e8e0d7a0-c8d9-11dd-a880-
a1081c7ac358
pixdamix [Thu, 5 Nov 2009 08:46:33 +0000 (08:46 +0000)]
Add pathfinder support for certificate validation
From http://code.google.com/p/pathfinder-pki/
PathFinder is designed to provide a mechanism for any program to
perform RFC3280-compliant path validation of X509 certificates,
even when some of the intermediate certificates are not present
on the local machine. By design, Pathfinder automatically
downloads any such certificates from the Internet as needed using
the AIA and CRL distribution point extensions of the certificates
it is processing. It has the ability to do revocation status
checking either using CRL or OCSP, or both. And, given the recent
vulnerabilities that have rendered the MD5 algorithm highly
suspect, it allows the administrator to choose to not validate
certificates using that algorithm anywhere in the trust path.
git-svn-id: http://opkg.googlecode.com/svn/trunk@261
e8e0d7a0-c8d9-11dd-a880-
a1081c7ac358
graham.gower [Thu, 5 Nov 2009 04:52:10 +0000 (04:52 +0000)]
These functions cannot fail, so return void.
git-svn-id: http://opkg.googlecode.com/svn/trunk@260
e8e0d7a0-c8d9-11dd-a880-
a1081c7ac358
graham.gower [Thu, 5 Nov 2009 04:20:09 +0000 (04:20 +0000)]
s/malloc/xmalloc/ s/calloc/xcalloc/ s/realloc/realloc/
And redundant error checking removed from the places where allocation failures
were actually checked.
git-svn-id: http://opkg.googlecode.com/svn/trunk@259
e8e0d7a0-c8d9-11dd-a880-
a1081c7ac358
graham.gower [Thu, 5 Nov 2009 03:09:44 +0000 (03:09 +0000)]
Don't set PATH="/dev/null". Shuffle things around while here.
git-svn-id: http://opkg.googlecode.com/svn/trunk@258
e8e0d7a0-c8d9-11dd-a880-
a1081c7ac358
graham.gower [Thu, 5 Nov 2009 02:38:40 +0000 (02:38 +0000)]
Remove code path which cannot be executed.
git-svn-id: http://opkg.googlecode.com/svn/trunk@257
e8e0d7a0-c8d9-11dd-a880-
a1081c7ac358
graham.gower [Wed, 4 Nov 2009 03:15:09 +0000 (03:15 +0000)]
s/strndup/xstrndup/ - check memory allocations for failure.
git-svn-id: http://opkg.googlecode.com/svn/trunk@256
e8e0d7a0-c8d9-11dd-a880-
a1081c7ac358
graham.gower [Wed, 4 Nov 2009 03:14:59 +0000 (03:14 +0000)]
s/strdup/xstrdup/ - check memory allocations for failure.
git-svn-id: http://opkg.googlecode.com/svn/trunk@255
e8e0d7a0-c8d9-11dd-a880-
a1081c7ac358
graham.gower [Wed, 4 Nov 2009 03:14:39 +0000 (03:14 +0000)]
Remove some strdup abuse.
git-svn-id: http://opkg.googlecode.com/svn/trunk@254
e8e0d7a0-c8d9-11dd-a880-
a1081c7ac358
graham.gower [Wed, 4 Nov 2009 02:13:22 +0000 (02:13 +0000)]
Remove str_dup_safe() in favour of xstrdup() from libbb.
git-svn-id: http://opkg.googlecode.com/svn/trunk@253
e8e0d7a0-c8d9-11dd-a880-
a1081c7ac358
graham.gower [Wed, 4 Nov 2009 01:22:05 +0000 (01:22 +0000)]
Remove unused opkg_set_current_state bits.
git-svn-id: http://opkg.googlecode.com/svn/trunk@252
e8e0d7a0-c8d9-11dd-a880-
a1081c7ac358
pixdamix [Tue, 3 Nov 2009 09:27:03 +0000 (09:27 +0000)]
Make `curl' an instance variable and ssl support
This patch adds several new options
- option ssl_ca_path /path/to/dir
Tells curl to use the specified certificate directory to verify the
peer. The certificates must be in PEM format, and the directory
must have been processed using the c_rehash utility supplied with
openssl.
- option ssl_ca_file
Tells curl to use the specified certificate file to verify the
peer. The file may contain multiple CA certificates
- option ssl_key_type
Tells curl the Private key file type. Specify which type your
ssl_key provided private key is. PEM (default), DER and ENG
(see option ssl_engine) are recognized types.
- option ssl_cert_type
Tells curl what certificate type the provided certificate is in.
PEM (default), DER and ENG (see option ssl_engine) are recognized
types.
- option ssl_key & option ssl_cert
Tells curl to use the specified certificate file and private key
when getting a file with HTTPS
- option ssl_key_passwd
Passphrase for the private key
- option ssl_engine
Select the OpenSSL crypto engine to use for cipher operations.
- option ssl_dont_verify_peer
This option explicitly allows curl to perform "insecure" SSL
connections and transfers. All SSL connections are attempted to be
made secure by using the CA certificate. This makes all connections
considered "insecure" fail unless ssl_dont_verify_peer is used.
git-svn-id: http://opkg.googlecode.com/svn/trunk@251
e8e0d7a0-c8d9-11dd-a880-
a1081c7ac358
graham.gower [Tue, 3 Nov 2009 06:26:31 +0000 (06:26 +0000)]
The list-installed command does not exist.
git-svn-id: http://opkg.googlecode.com/svn/trunk@250
e8e0d7a0-c8d9-11dd-a880-
a1081c7ac358
graham.gower [Tue, 3 Nov 2009 06:19:56 +0000 (06:19 +0000)]
Remove response_callback bits. Forgot to commit this before.
git-svn-id: http://opkg.googlecode.com/svn/trunk@249
e8e0d7a0-c8d9-11dd-a880-
a1081c7ac358
graham.gower [Tue, 3 Nov 2009 05:56:49 +0000 (05:56 +0000)]
Remove some code duplication, check for realloc failure.
git-svn-id: http://opkg.googlecode.com/svn/trunk@248
e8e0d7a0-c8d9-11dd-a880-
a1081c7ac358
graham.gower [Tue, 3 Nov 2009 05:56:39 +0000 (05:56 +0000)]
Clean up pkg_vec_insert.
- Check for realloc failure.
- Don't cast an lvalue.
- Remove unused counter.
git-svn-id: http://opkg.googlecode.com/svn/trunk@247
e8e0d7a0-c8d9-11dd-a880-
a1081c7ac358
graham.gower [Tue, 3 Nov 2009 03:58:20 +0000 (03:58 +0000)]
Remove prototype for deleted function.
git-svn-id: http://opkg.googlecode.com/svn/trunk@246
e8e0d7a0-c8d9-11dd-a880-
a1081c7ac358
graham.gower [Tue, 3 Nov 2009 03:51:34 +0000 (03:51 +0000)]
Stop my eyes from bleeding.
Testing shows that the info and status commands give the same output as before.
If you find a case where they differ, please let me know.
git-svn-id: http://opkg.googlecode.com/svn/trunk@245
e8e0d7a0-c8d9-11dd-a880-
a1081c7ac358
graham.gower [Tue, 3 Nov 2009 01:38:51 +0000 (01:38 +0000)]
Remove unused callbacks, a legacy of the now removed ipkg API.
git-svn-id: http://opkg.googlecode.com/svn/trunk@244
e8e0d7a0-c8d9-11dd-a880-
a1081c7ac358
graham.gower [Tue, 3 Nov 2009 01:38:39 +0000 (01:38 +0000)]
Stop using opkg_cb_message.
git-svn-id: http://opkg.googlecode.com/svn/trunk@243
e8e0d7a0-c8d9-11dd-a880-
a1081c7ac358
graham.gower [Tue, 3 Nov 2009 01:38:28 +0000 (01:38 +0000)]
Clean up some _cmd functions, in particular remove use of print callbacks.
git-svn-id: http://opkg.googlecode.com/svn/trunk@242
e8e0d7a0-c8d9-11dd-a880-
a1081c7ac358
graham.gower [Tue, 3 Nov 2009 00:53:11 +0000 (00:53 +0000)]
Remove unused code: if pkg was NULL, we would already have segfaulted.
git-svn-id: http://opkg.googlecode.com/svn/trunk@241
e8e0d7a0-c8d9-11dd-a880-
a1081c7ac358
pixdamix [Mon, 2 Nov 2009 15:47:29 +0000 (15:47 +0000)]
opkg: fix nullpointer dereference
Applied 011-fix_nullpointer_deref.patch from OpenWRT
git-svn-id: http://opkg.googlecode.com/svn/trunk@240
e8e0d7a0-c8d9-11dd-a880-
a1081c7ac358
pixdamix [Mon, 2 Nov 2009 15:47:16 +0000 (15:47 +0000)]
opkg: fix the -force_space option
- 006-fix_force_space.patch from OpenWRT
git-svn-id: http://opkg.googlecode.com/svn/trunk@239
e8e0d7a0-c8d9-11dd-a880-
a1081c7ac358
graham.gower [Mon, 2 Nov 2009 03:39:12 +0000 (03:39 +0000)]
Cleanup error_list stuff a bit more.
- Remove reverse_error_list.
- Push messages on to the tail of the list.
- Move the print function in with the other error list functions.
- Indentation and variable name cleanups.
git-svn-id: http://opkg.googlecode.com/svn/trunk@238
e8e0d7a0-c8d9-11dd-a880-
a1081c7ac358
graham.gower [Mon, 2 Nov 2009 02:49:25 +0000 (02:49 +0000)]
Free memory if we fail to remove a package due to it having dependents.
git-svn-id: http://opkg.googlecode.com/svn/trunk@237
e8e0d7a0-c8d9-11dd-a880-
a1081c7ac358
graham.gower [Mon, 2 Nov 2009 02:34:29 +0000 (02:34 +0000)]
Avoid reading past the end of the array.
git-svn-id: http://opkg.googlecode.com/svn/trunk@236
e8e0d7a0-c8d9-11dd-a880-
a1081c7ac358
graham.gower [Mon, 2 Nov 2009 01:35:59 +0000 (01:35 +0000)]
pkg_init_from_file() already does this strdup(), so stop another leak.
git-svn-id: http://opkg.googlecode.com/svn/trunk@235
e8e0d7a0-c8d9-11dd-a880-
a1081c7ac358
graham.gower [Mon, 2 Nov 2009 01:35:48 +0000 (01:35 +0000)]
Free memory used when parsing a control file.
git-svn-id: http://opkg.googlecode.com/svn/trunk@234
e8e0d7a0-c8d9-11dd-a880-
a1081c7ac358
graham.gower [Mon, 2 Nov 2009 01:15:14 +0000 (01:15 +0000)]
Fix memory leaks.
git-svn-id: http://opkg.googlecode.com/svn/trunk@233
e8e0d7a0-c8d9-11dd-a880-
a1081c7ac358
graham.gower [Mon, 2 Nov 2009 00:23:05 +0000 (00:23 +0000)]
free() temporary string.
git-svn-id: http://opkg.googlecode.com/svn/trunk@232
e8e0d7a0-c8d9-11dd-a880-
a1081c7ac358
pixdamix [Fri, 30 Oct 2009 17:04:06 +0000 (17:04 +0000)]
Missing free in sha256 hash verification
git-svn-id: http://opkg.googlecode.com/svn/trunk@231
e8e0d7a0-c8d9-11dd-a880-
a1081c7ac358
pixdamix [Fri, 30 Oct 2009 15:07:59 +0000 (15:07 +0000)]
Add missing free (again)
git-svn-id: http://opkg.googlecode.com/svn/trunk@230
e8e0d7a0-c8d9-11dd-a880-
a1081c7ac358
graham.gower [Fri, 30 Oct 2009 06:37:09 +0000 (06:37 +0000)]
Fix some memory leaks.
git-svn-id: http://opkg.googlecode.com/svn/trunk@229
e8e0d7a0-c8d9-11dd-a880-
a1081c7ac358
graham.gower [Fri, 30 Oct 2009 06:35:22 +0000 (06:35 +0000)]
The compiler almost certainly knows better.
git-svn-id: http://opkg.googlecode.com/svn/trunk@228
e8e0d7a0-c8d9-11dd-a880-
a1081c7ac358
pixdamix [Thu, 29 Oct 2009 09:07:11 +0000 (09:07 +0000)]
Fix problems in error list
push_error_list() should allocate the sizeof(struct) not sizeof(pointer
to struct).
And add some memory deallocation in error paths found while looking at
this.
git-svn-id: http://opkg.googlecode.com/svn/trunk@227
e8e0d7a0-c8d9-11dd-a880-
a1081c7ac358
pixdamix [Wed, 28 Oct 2009 21:00:56 +0000 (21:00 +0000)]
Removed a unused variable warning
When compiled without openssl nor gpg signature verification
opkg build fail due to 3 unused variable and -Werror
git-svn-id: http://opkg.googlecode.com/svn/trunk@226
e8e0d7a0-c8d9-11dd-a880-
a1081c7ac358
pixdamix [Wed, 28 Oct 2009 10:05:48 +0000 (10:05 +0000)]
Add error messages in case of signature error
git-svn-id: http://opkg.googlecode.com/svn/trunk@225
e8e0d7a0-c8d9-11dd-a880-
a1081c7ac358
pixdamix [Wed, 28 Oct 2009 09:10:59 +0000 (09:10 +0000)]
Fix implicit declaration of strndup
s/strndup/xstrndup/
Thanks to Graham Gower <graham.gower@gmail.com>
git-svn-id: http://opkg.googlecode.com/svn/trunk@224
e8e0d7a0-c8d9-11dd-a880-
a1081c7ac358
ticktock35 [Wed, 28 Oct 2009 07:27:13 +0000 (07:27 +0000)]
Adding sha256.[ch]
Sorry forgot adding them.
Thanks for Graham Gower <graham.gower@gmail.com>
git-svn-id: http://opkg.googlecode.com/svn/trunk@223
e8e0d7a0-c8d9-11dd-a880-
a1081c7ac358
pixdamix [Tue, 27 Oct 2009 21:15:50 +0000 (21:15 +0000)]
Improve the poor man's fseek in unarchive.c
Modified seek_sub_file since the fgetc in the for loop
was very slow when installing huge packages.
A test on my machine showed a 4x gain when installing
a large package (23Mib)
git-svn-id: http://opkg.googlecode.com/svn/trunk@222
e8e0d7a0-c8d9-11dd-a880-
a1081c7ac358
ticktock35 [Tue, 27 Oct 2009 12:45:24 +0000 (12:45 +0000)]
Opkg support for smime (pkcs7) packages list signing
Thanks to Camille Moncelier <moncelier@devlife.org>
http://groups.google.com/group/opkg-devel/browse_thread/thread/
6071ce290d5ceb77?utoken=qjR-TC0AAADKDldt5ZXsDDLs9sWCpWZI1zgeariQUwksg5ob1tmaFTCAL7MTcQRO6S85GfHgQ_k
As promised :) here is a patch allowing opkg to authenticate
a package list using smime and openssl instead of gpgme
Example:
Sign a package list:
openssl smime -sign -in /path/to/repo/Packages \
-signer /root/server.pem -binary \
-outform PEM -out /path/to/repo/Packages.sig
Configuration in /etc/opkg/opkg.conf
option check_signature 1
option signature_ca_file /etc/serverCA.pem
option signature_ca_path /path/to/certs/dir
opkg update
Downloading http://repo:8000/Packages
Updated list of available packages in /usr/lib/opkg/lists/angstrom
Downloading http://repo:8000/Packages.sig
Signature check passed
Package list corruption or MIM:
Downloading http://repo:8000/Packages
Updated list of available packages in /usr/lib/opkg/lists/angstrom
Downloading http://repo:8000/Packages.sig
Signature check failed
Collected errors:
* Verification failure
Camille Moncelier
http://devlife.org/
git-svn-id: http://opkg.googlecode.com/svn/trunk@221
e8e0d7a0-c8d9-11dd-a880-
a1081c7ac358
ticktock35 [Tue, 27 Oct 2009 12:45:12 +0000 (12:45 +0000)]
Add sha256 ckecksums to okpg
Thanks to Camille Moncelier <moncelier@devlife.org>
http://groups.google.com/group/opkg-devel/browse_thread/thread/
78a2eb328da0ef73?utoken=pV1Kli0AAADKDldt5ZXsDDLs9sWCpWZI0mClVcTs45ANzZ7C9NH-1YGBxa5Bow63PTuzFmQCb1c
Here is a patch which adds sha256 checksum checking to Opkg.
More Opkg patches will follow shortly (x509 and smime signature support,
libcurl client/server authentication)
I hope these patch will be useful and finds their ways into okpg
Camille Moncelier
http://devlife.org/
git-svn-id: http://opkg.googlecode.com/svn/trunk@220
e8e0d7a0-c8d9-11dd-a880-
a1081c7ac358
ticktock35 [Tue, 6 Oct 2009 03:57:46 +0000 (03:57 +0000)]
Improve install candidate selection
Florian Boor <florian.boor@kernelconcepts.de>
Hello,
I have noticed that opkg does not resolve package selection properly if
the same
package is available in more than one compatible architecture.
Failing having installable candidates available is not necessary in this
case:
Either the packages are from feeds with different priorities - in this
case we
can select by priority - or the priorities are the same and it does not
matter
which one gets installed.
Another problem is that in some situations the package lists seem to
contain
duplicates for no obvious reason. (e.g. one package available from two
feeds
makes four entries in the package lists.)
The patch implements a workaround for this by filtering out duplicates
when the
candidate lists are created and makes opkg select an install candidate
per feed
priority.
I have tested the changes with OpenEmbedded and it does not seem to
cause any
obvious problems.
Could I get some opinions about the solution? :)
Greetings
Florian
-----------
Thanks to Florian
git-svn-id: http://opkg.googlecode.com/svn/trunk@219
e8e0d7a0-c8d9-11dd-a880-
a1081c7ac358
ticktock35 [Tue, 22 Sep 2009 16:07:19 +0000 (16:07 +0000)]
Fix Segmentation fault while data in Package.gz is not good
While setting up a personal opkg feed, I encountered a crash in opgk
when trying to install the package from the repository. Instead of an
error message from opkg, it just gave me "Segmentation fault" and
exited.
Thanks to EdorFaus <edorfaus@gmail.com>
http://groups.google.com/group/opkg-devel/browse_thread/thread/
9620711475fa98d2
git-svn-id: http://opkg.googlecode.com/svn/trunk@218
e8e0d7a0-c8d9-11dd-a880-
a1081c7ac358
ticktock35 [Mon, 21 Sep 2009 10:11:52 +0000 (10:11 +0000)]
Fix opkg doesn't handle long link/path names in tar files well
1. provide opkg with a tar file that has a link name that is 100
characters
or
2. provide opkg with a tar file that has a 'path_prefix' of 155
characters.
Thanks to pblack88@gmail.com
http://code.google.com/p/opkg/issues/detail?id=21
git-svn-id: http://opkg.googlecode.com/svn/trunk@217
e8e0d7a0-c8d9-11dd-a880-
a1081c7ac358
ticktock35 [Fri, 18 Sep 2009 02:35:00 +0000 (02:35 +0000)]
Adding error message for the lock file.
pkg just says "Could not obtain administrative lock" and provides no
further info when it encounters problems with the lock file. The
attached
patch makes these errors a bit easier to diagnose.
Thanks to cconroy
http://code.google.com/p/opkg/issues/detail?id=22
git-svn-id: http://opkg.googlecode.com/svn/trunk@216
e8e0d7a0-c8d9-11dd-a880-
a1081c7ac358
ticktock35 [Sat, 4 Jul 2009 03:22:11 +0000 (03:22 +0000)]
Fix issue on "Segmentation fault on package removal"
Thanks to http://code.google.com/u/kosmaty/
Find the issue and fix it.
http://code.google.com/p/opkg/issues/detail?id=13
git-svn-id: http://opkg.googlecode.com/svn/trunk@215
e8e0d7a0-c8d9-11dd-a880-
a1081c7ac358
ticktock35 [Fri, 26 Jun 2009 06:25:36 +0000 (06:25 +0000)]
Thanks to claudyus84 and Gilles
http://www.crisos.org/flyspray/index.php?do=details&task_id=10
Fix issue:
http://code.google.com/p/opkg/issues/detail?id=4#c5
git-svn-id: http://opkg.googlecode.com/svn/trunk@214
e8e0d7a0-c8d9-11dd-a880-
a1081c7ac358
ticktock35 [Sun, 14 Jun 2009 05:43:35 +0000 (05:43 +0000)]
adds a configure option so "/etc/opkg" can be
changed when opkg is configured and built.
fix issue due to an error of opkg_conf.c
Thanks to jlc <jlcster@gmail.com>
http://groups.google.com/group/opkg-devel/browse_thread/thread/
5c6e55832a7168aa
git-svn-id: http://opkg.googlecode.com/svn/trunk@213
e8e0d7a0-c8d9-11dd-a880-
a1081c7ac358
ticktock35 [Fri, 17 Apr 2009 07:59:05 +0000 (07:59 +0000)]
adding new flag flag_maintainer
This flag is used for maintainer can use the latest conffile.
this flag need to be set manually.
git-svn-id: http://opkg.googlecode.com/svn/trunk@212
e8e0d7a0-c8d9-11dd-a880-
a1081c7ac358
ticktock35 [Fri, 3 Apr 2009 08:22:03 +0000 (08:22 +0000)]
using pkg->dest->root_dir
git-svn-id: http://opkg.googlecode.com/svn/trunk@211
e8e0d7a0-c8d9-11dd-a880-
a1081c7ac358
ticktock35 [Fri, 3 Apr 2009 08:21:44 +0000 (08:21 +0000)]
Try to avoid long unsigned int overflow.
When free size is more than 4G, long unsigned int may enounter overflow
git-svn-id: http://opkg.googlecode.com/svn/trunk@210
e8e0d7a0-c8d9-11dd-a880-
a1081c7ac358
ticktock35 [Thu, 26 Mar 2009 18:22:39 +0000 (18:22 +0000)]
Thanks to Keon's notify.
converting curl error code to readable message
git-svn-id: http://opkg.googlecode.com/svn/trunk@209
e8e0d7a0-c8d9-11dd-a880-
a1081c7ac358
ticktock35 [Thu, 26 Mar 2009 17:57:23 +0000 (17:57 +0000)]
Due to deb_extract's defect that I cannot tell if an extraction is
successfull or failed via the return value.
Therefore I cannot use it as error message.
revert some code of R206
git-svn-id: http://opkg.googlecode.com/svn/trunk@208
e8e0d7a0-c8d9-11dd-a880-
a1081c7ac358
ticktock35 [Thu, 26 Mar 2009 08:26:27 +0000 (08:26 +0000)]
reduce a memory leak of closing dir
git-svn-id: http://opkg.googlecode.com/svn/trunk@207
e8e0d7a0-c8d9-11dd-a880-
a1081c7ac358
ticktock35 [Thu, 26 Mar 2009 07:58:43 +0000 (07:58 +0000)]
reduce a big memory leak
connecting deb_extract Null pointers
git-svn-id: http://opkg.googlecode.com/svn/trunk@206
e8e0d7a0-c8d9-11dd-a880-
a1081c7ac358
ticktock35 [Thu, 26 Mar 2009 07:58:26 +0000 (07:58 +0000)]
Thanks to Antonio
Propagate gz_open() errors to caller function.
This is not enough, it is still needed to check deb_extract return value
everywhere in libopkg/pkg_extract.c
Signed-off-by: Antonio Ospite <ospite@studenti.unina.it>
git-svn-id: http://opkg.googlecode.com/svn/trunk@205
e8e0d7a0-c8d9-11dd-a880-
a1081c7ac358
ticktock35 [Mon, 9 Mar 2009 04:39:22 +0000 (04:39 +0000)]
because of the file_hash_set_file_owner may break the file list of pkgs
it should be iterated more carefully.
Dealing with
http://code.google.com/p/opkg/issues/detail?id=9
git-svn-id: http://opkg.googlecode.com/svn/trunk@204
e8e0d7a0-c8d9-11dd-a880-
a1081c7ac358
ticktock35 [Wed, 4 Mar 2009 00:59:35 +0000 (00:59 +0000)]
Thanks to Krzysztof Kotlenga <pocek@users.sf.net>:
Frans Meulenbroeks wrote:
> Anyway, appending the 0 byte is no good as tar_entry->name[100] is
> already out of bounds.
http://tiny.cc/964UD looks good enough. It's interesting that we have
to trace bugs already fixed upstream years ago.
http://lists.linuxtogo.org/pipermail/openembedded-devel/2009-March/008510.html
git-svn-id: http://opkg.googlecode.com/svn/trunk@203
e8e0d7a0-c8d9-11dd-a880-
a1081c7ac358